@markusylisiurunen/tau 0.1.17 → 0.1.19

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.
@@ -35,7 +35,7 @@ export class SessionEngine {
35
35
  timestamp: Date.now(),
36
36
  });
37
37
  }
38
- addUserMessage(message) {
38
+ addMessage(message) {
39
39
  this.messages.push(message);
40
40
  }
41
41
  get history() {
@@ -107,7 +107,13 @@ export class SessionEngine {
107
107
  async *executeToolCalls(toolCalls, signal) {
108
108
  const enabledTools = this.persona.tools ?? this.toolRegistry.schemas;
109
109
  const enabledToolNames = new Set(enabledTools.map((t) => t.name));
110
- const dispatchContext = { persona: this.persona, config: this.config };
110
+ const dispatchContext = {
111
+ persona: this.persona,
112
+ config: this.config,
113
+ history: [...this.messages],
114
+ systemPrompt: this.systemPrompt,
115
+ toolRegistry: this.toolRegistry,
116
+ };
111
117
  // Step 1: Validate all tools and create result buffer
112
118
  const resultsByIndex = new Map();
113
119
  const validToolCalls = [];
@@ -132,9 +138,10 @@ export class SessionEngine {
132
138
  }
133
139
  validToolCalls.push({ index: i, toolCall, def });
134
140
  }
135
- // Step 2: Separate task and non-task tools
136
- const taskCalls = validToolCalls.filter((v) => v.toolCall.name === "task");
137
- const nonTaskCalls = validToolCalls.filter((v) => v.toolCall.name !== "task");
141
+ // Step 2: Separate task-like and non-task tools
142
+ const taskLikeToolNames = new Set(["task", "fork"]);
143
+ const taskCalls = validToolCalls.filter((v) => taskLikeToolNames.has(v.toolCall.name));
144
+ const nonTaskCalls = validToolCalls.filter((v) => !taskLikeToolNames.has(v.toolCall.name));
138
145
  const taskExecutions = [];
139
146
  for (const { index, toolCall, def } of taskCalls) {
140
147
  const result = await def.dispatch(toolCall, this.riskLevel, signal, dispatchContext);
@@ -264,12 +271,13 @@ export class SessionEngine {
264
271
  const errorMsg = next.settled.reason instanceof Error
265
272
  ? next.settled.reason.message
266
273
  : String(next.settled.reason);
267
- const toolError = createToolError(next.taskExec.toolCall, `Task execution failed: ${errorMsg}`);
274
+ const toolName = next.taskExec.toolCall.name;
275
+ const toolError = createToolError(next.taskExec.toolCall, `${toolName} execution failed: ${errorMsg}`);
268
276
  resultsByIndex.set(next.taskExec.index, toolError);
269
277
  yield {
270
278
  type: "notice",
271
279
  severity: "error",
272
- text: `Task '${next.taskExec.toolCall.id}' execution failed: ${errorMsg}`,
280
+ text: `${toolName} '${next.taskExec.toolCall.id}' execution failed: ${errorMsg}`,
273
281
  };
274
282
  }
275
283
  // Drain any remaining pending completions if signal was aborted
@@ -288,12 +296,13 @@ export class SessionEngine {
288
296
  const errorMsg = next.settled.reason instanceof Error
289
297
  ? next.settled.reason.message
290
298
  : String(next.settled.reason);
291
- const toolError = createToolError(next.taskExec.toolCall, `Task execution failed: ${errorMsg}`);
299
+ const toolName = next.taskExec.toolCall.name;
300
+ const toolError = createToolError(next.taskExec.toolCall, `${toolName} execution failed: ${errorMsg}`);
292
301
  resultsByIndex.set(next.taskExec.index, toolError);
293
302
  yield {
294
303
  type: "notice",
295
304
  severity: "error",
296
- text: `Task '${next.taskExec.toolCall.id}' execution failed: ${errorMsg}`,
305
+ text: `${toolName} '${next.taskExec.toolCall.id}' execution failed: ${errorMsg}`,
297
306
  };
298
307
  }
299
308
  }
@@ -1 +1 @@
1
- {"version":3,"file":"session_engine.js","sourceRoot":"","sources":["../../src/session/session_engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session_engine.js","sourceRoot":"","sources":["../../src/session/session_engine.ts"],"names":[],"mappings":"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"}
@@ -10,13 +10,16 @@ Your job: use the bash tool to inspect files, search for symbols, trace dependen
10
10
  - Do not run commands that modify files, install packages, or otherwise change system state.
11
11
  - This is a non-interactive session. You cannot ask for clarification or additional input. You must complete the task immediately with the information available.
12
12
 
13
- ### Efficiency
13
+ ### Tool use and efficiency
14
14
 
15
- - Use rg over grep, fd over find.
15
+ - **IMPORTANT:** Some tools, like grep, can be extremely slow on large codebases:
16
+ - Always use rg (ripgrep) instead of grep for searching text.
17
+ - Always use fd instead of find for locating files.
16
18
  - Use absolute paths; avoid \`cd\`.
17
19
  - Make parallel tool calls when there are no dependencies between them.
18
20
  - Prefer targeted commands: rg for searching, sed -n for extracting line ranges, git log/blame for history.
19
- - Stop exploring once you have enough information to answer; don't over-gather.
21
+ - Stop exploring once you have enough information to answer; don't over-gather, but don't under-gather either.
22
+ - Gathering just enough information to confidently answer is key to successful exploration.
20
23
 
21
24
  ### Output
22
25
 
@@ -1 +1 @@
1
- {"version":3,"file":"explore.js","sourceRoot":"","sources":["../../src/subagents/explore.ts"],"names":[],"mappings":"AAEA,MAAM,qBAAqB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;CAwB7B,CAAC,IAAI,EAAE,CAAC;AAET,MAAM,CAAC,MAAM,kBAAkB,GAA8B;IAC3D,IAAI,EAAE,SAAS;IACf,WAAW,EAAE;QACX,yEAAyE;QACzE,4FAA4F;QAC5F,8GAA8G;QAC9G,6EAA6E;QAC7E,+EAA+E;QAC/E,4DAA4D;QAC5D,0FAA0F;KAC3F,CAAC,IAAI,CAAC,GAAG,CAAC;IACX,YAAY,EAAE,qBAAqB;IACnC,YAAY,EAAE,CAAC,MAAM,CAAC;IACtB,SAAS,EAAE,WAAW;IACtB,WAAW,EAAE,EAAE;CAChB,CAAC"}
1
+ {"version":3,"file":"explore.js","sourceRoot":"","sources":["../../src/subagents/explore.ts"],"names":[],"mappings":"AAEA,MAAM,qBAAqB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2B7B,CAAC,IAAI,EAAE,CAAC;AAET,MAAM,CAAC,MAAM,kBAAkB,GAA8B;IAC3D,IAAI,EAAE,SAAS;IACf,WAAW,EAAE;QACX,yEAAyE;QACzE,4FAA4F;QAC5F,8GAA8G;QAC9G,6EAA6E;QAC7E,+EAA+E;QAC/E,4DAA4D;QAC5D,0FAA0F;KAC3F,CAAC,IAAI,CAAC,GAAG,CAAC;IACX,YAAY,EAAE,qBAAqB;IACnC,YAAY,EAAE,CAAC,MAAM,CAAC;IACtB,SAAS,EAAE,WAAW;IACtB,WAAW,EAAE,EAAE;CAChB,CAAC"}
@@ -6,17 +6,7 @@ import { createWebFetchToolDefinition } from "../tools/web_fetch.js";
6
6
  import { createWebSearchToolDefinition } from "../tools/web_search.js";
7
7
  import { createToolError, extractAssistantText } from "../utils/messages.js";
8
8
  import { parseStreamingSettings } from "../utils/streaming_settings.js";
9
- function normalizeOneLine(text) {
10
- return text.replace(/\s+/g, " ").trim();
11
- }
12
- function getToolResultFirstLine(toolResult) {
13
- const text = toolResult.content
14
- .filter((c) => c.type === "text")
15
- .map((c) => c.text)
16
- .join("\n")
17
- .trim();
18
- return normalizeOneLine(text.split("\n")[0] ?? "");
19
- }
9
+ import { extractAssistantTextForProgress, formatToolUiEventForProgress, getToolResultFirstLine, normalizeOneLine, } from "../utils/subagent_utils.js";
20
10
  function getStreamingSettings(settings) {
21
11
  const merged = { ...(settings ?? {}) };
22
12
  return parseStreamingSettings(merged);
@@ -38,33 +28,6 @@ function buildToolRegistryForAllowedTools(allowedTools, config) {
38
28
  }
39
29
  return new ToolRegistry(definitions);
40
30
  }
41
- function formatToolUiEventForProgress(uiEvent) {
42
- switch (uiEvent.type) {
43
- case "bash_started":
44
- return `bash running: ${uiEvent.command.replace(/\n/g, " ")}`;
45
- case "bash_execution":
46
- return uiEvent.exitCode !== null && uiEvent.exitCode !== 0
47
- ? `bash failed: $ ${uiEvent.command.replace(/\n/g, " ")} (exit ${uiEvent.exitCode})`
48
- : undefined;
49
- case "bash_blocked":
50
- return `bash blocked: $ ${uiEvent.command.replace(/\n/g, " ")} (${normalizeOneLine(uiEvent.reason)})`;
51
- case "web_search_started":
52
- return `web search: ${uiEvent.objective}`;
53
- case "web_search_finished":
54
- return uiEvent.status === "error" ? `web search failed: ? ${uiEvent.objective}` : undefined;
55
- case "web_fetch_started":
56
- return `web fetch: ${uiEvent.url}`;
57
- case "web_fetch_finished":
58
- return uiEvent.status === "error" ? `web fetch failed: ? ${uiEvent.url}` : undefined;
59
- default:
60
- return undefined;
61
- }
62
- }
63
- function extractAssistantTextForProgress(message) {
64
- const text = extractAssistantText(message).trim();
65
- const firstLine = text.split("\n")[0];
66
- return firstLine ? `agent: ${firstLine}` : undefined;
67
- }
68
31
  function isToolCall(block) {
69
32
  return block.type === "toolCall";
70
33
  }
@@ -1 +1 @@
1
- {"version":3,"file":"subagent_engine.js","sourceRoot":"","sources":["../../src/subagents/subagent_engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subagent_engine.js","sourceRoot":"","sources":["../../src/subagents/subagent_engine.ts"],"names":[],"mappings":"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"}
package/dist/terminal.js CHANGED
@@ -81,14 +81,14 @@ export class TauTerminal {
81
81
  * Create a terminal for Tau. If stdin is piped and we're still running in a TTY,
82
82
  * we fall back to reading input from /dev/tty so the chat remains interactive.
83
83
  */
84
- export function createAppTerminal(preferTtyInput) {
84
+ export function createAppTerminal() {
85
85
  // Normal mode: stdin is a TTY, use upstream ProcessTerminal.
86
- if (!preferTtyInput && process.stdin.isTTY) {
86
+ if (process.stdin.isTTY) {
87
87
  return new ProcessTerminal();
88
88
  }
89
89
  // If stdin is not a TTY but we're still in an interactive terminal,
90
90
  // try to read input from /dev/tty so the UI stays interactive.
91
- if (!process.stdin.isTTY && process.stdout.isTTY) {
91
+ if (process.stdout.isTTY) {
92
92
  try {
93
93
  const fd = openSync("/dev/tty", "r");
94
94
  const input = new ReadStream(fd);
@@ -103,13 +103,9 @@ export function createAppTerminal(preferTtyInput) {
103
103
  });
104
104
  }
105
105
  catch {
106
- // Fall through to process.stdin.
106
+ // Fall through
107
107
  }
108
108
  }
109
- // Fallback: use process streams directly.
110
- // In piped mode without a controlling terminal, this will behave non-interactively.
111
- return preferTtyInput
112
- ? new TauTerminal(process.stdin, process.stdout)
113
- : new ProcessTerminal();
109
+ return new ProcessTerminal();
114
110
  }
115
111
  //# sourceMappingURL=terminal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"terminal.js","sourceRoot":"","sources":["../src/terminal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminal.js","sourceRoot":"","sources":["../src/terminal.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,242 @@
1
+ import { Type } from "@sinclair/typebox";
2
+ import { z } from "zod";
3
+ import { SessionEngine } from "../session/session_engine.js";
4
+ import { createToolError, createToolResult, extractAssistantText } from "../utils/messages.js";
5
+ import { AsyncUiEventQueue, extractAssistantTextForProgress, formatToolUiEventForProgress, getToolResultFirstLine, } from "../utils/subagent_utils.js";
6
+ const FORK_DESCRIPTION = [
7
+ "Fork the current session and run autonomously until it produces a final assistant response.",
8
+ "The fork receives the full main thread history, appends the provided prompt as the next user message,",
9
+ "and returns the final assistant text output from the fork.",
10
+ "Only use this tool when the user specifically requests that the session be forked.",
11
+ ].join(" ");
12
+ const FORK_TITLE_DESCRIPTION = [
13
+ "A short human-friendly UI title shown while the fork runs.",
14
+ "Do not use title case; all lower-case is preferred except for proper nouns.",
15
+ ].join(" ");
16
+ const FORK_PROMPT_DESCRIPTION = [
17
+ "The prompt to append as the next user message in the forked session.",
18
+ "The fork will then run autonomously until completion.",
19
+ "Format this as a direct instruction to the assistant.",
20
+ "Be precise rather than loose in your phrasing.",
21
+ "Include any instructions specifying what the assistant should return in its final response.",
22
+ ].join(" ");
23
+ export const FORK_TOOL = {
24
+ name: "fork",
25
+ description: FORK_DESCRIPTION,
26
+ parameters: Type.Object({
27
+ title: Type.String({ description: FORK_TITLE_DESCRIPTION }),
28
+ prompt: Type.String({ description: FORK_PROMPT_DESCRIPTION }),
29
+ }, { additionalProperties: false }),
30
+ };
31
+ const forkArgsSchema = z.object({
32
+ title: z.string().trim().catch(""),
33
+ prompt: z.string().trim().catch(""),
34
+ });
35
+ function parseForkArgs(raw) {
36
+ const parsed = forkArgsSchema.safeParse(raw);
37
+ return parsed.success ? parsed.data : { title: "", prompt: "" };
38
+ }
39
+ function stripToolCallFromHistory(history, toolCallId) {
40
+ const copied = [...history];
41
+ for (let i = copied.length - 1; i >= 0; i--) {
42
+ const msg = copied[i];
43
+ if (!msg || msg.role !== "assistant") {
44
+ continue;
45
+ }
46
+ const assistant = msg;
47
+ const hasCall = assistant.content.some((b) => b.type === "toolCall" && b.id === toolCallId);
48
+ if (!hasCall) {
49
+ continue;
50
+ }
51
+ const nextContent = assistant.content.filter((b) => b.type !== "toolCall");
52
+ if (nextContent.length === 0) {
53
+ copied.splice(i, 1);
54
+ }
55
+ else {
56
+ copied[i] = { ...assistant, content: nextContent };
57
+ }
58
+ break;
59
+ }
60
+ return copied;
61
+ }
62
+ export function createForkToolDefinition() {
63
+ return {
64
+ schema: FORK_TOOL,
65
+ async dispatch(toolCall, riskLevel, signal, context) {
66
+ const { title, prompt } = parseForkArgs(toolCall.arguments);
67
+ const blocked = (reason, details) => {
68
+ const toolResult = createToolError(toolCall, reason);
69
+ const uiEvent = {
70
+ type: "task_blocked",
71
+ toolCallId: toolCall.id,
72
+ kind: "fork",
73
+ title: details?.title ?? (title || "(fork)"),
74
+ reason,
75
+ };
76
+ return { kind: "single", toolResult, uiEvent };
77
+ };
78
+ if (riskLevel === "none") {
79
+ return blocked("Fork tool blocked due to risk level being set to 'none'. Ask the user to enable it with /risk:read-only or /risk:read-write.");
80
+ }
81
+ if (!title || !prompt) {
82
+ const missing = [!title ? "title" : undefined, !prompt ? "prompt" : undefined].filter(Boolean);
83
+ return blocked(`Fork tool error: missing required parameter(s): ${missing.join(", ")}.`, {
84
+ title: title || "(fork)",
85
+ });
86
+ }
87
+ if (!context) {
88
+ return blocked("Fork tool error: missing session context.", { title });
89
+ }
90
+ const uiQueue = new AsyncUiEventQueue();
91
+ let costTotal = 0;
92
+ let turns = 0;
93
+ let toolCalls = 0;
94
+ const pushProgress = (eventText, nextCostTotal, nextTurns, nextToolCalls) => {
95
+ costTotal = nextCostTotal;
96
+ turns = nextTurns;
97
+ toolCalls = nextToolCalls;
98
+ uiQueue.push({
99
+ type: "task_progress",
100
+ toolCallId: toolCall.id,
101
+ kind: "fork",
102
+ name: "",
103
+ title,
104
+ event: eventText,
105
+ costTotal,
106
+ turns,
107
+ toolCalls,
108
+ });
109
+ };
110
+ const run = (async () => {
111
+ let status = "success";
112
+ let finalText = "";
113
+ try {
114
+ pushProgress("fork started", 0, 0, 0);
115
+ const runSignal = signal ?? new AbortController().signal;
116
+ const enabledTools = context.persona.tools ?? context.toolRegistry.schemas;
117
+ const forkTools = enabledTools.filter((t) => t.name !== "task" && t.name !== "fork");
118
+ const forkPersona = { ...context.persona, tools: forkTools };
119
+ const forkHistory = stripToolCallFromHistory(context.history, toolCall.id);
120
+ const forkEngine = new SessionEngine({
121
+ persona: forkPersona,
122
+ systemPrompt: context.systemPrompt,
123
+ riskLevel,
124
+ toolRegistry: context.toolRegistry,
125
+ config: context.config,
126
+ });
127
+ for (const msg of forkHistory) {
128
+ forkEngine.addMessage(msg);
129
+ }
130
+ forkEngine.addUserText([
131
+ "<system>",
132
+ [
133
+ "You are running in a forked session with access to the same tools and capabilities as the main session.",
134
+ "Execute the following instruction autonomously until you have a complete answer.",
135
+ "Your final message will be returned to the user, so ensure it is complete and self-contained,",
136
+ "describing what you did and providing any requested information.",
137
+ "Do not stop until you have a final answer ready to return.",
138
+ ].join(" "),
139
+ "</system>",
140
+ prompt,
141
+ ].join("\n"));
142
+ let lastAssistantFinal;
143
+ for await (const event of forkEngine.processTurn(runSignal)) {
144
+ if (runSignal.aborted) {
145
+ break;
146
+ }
147
+ if (event.type === "assistant_final") {
148
+ lastAssistantFinal = event.message;
149
+ turns += 1;
150
+ costTotal += event.message.usage?.cost?.total ?? 0;
151
+ toolCalls += event.message.content.filter((c) => c.type === "toolCall").length;
152
+ const agentLine = extractAssistantTextForProgress(event.message);
153
+ if (agentLine) {
154
+ pushProgress(agentLine, costTotal, turns, toolCalls);
155
+ }
156
+ }
157
+ else if (event.type === "tool_ui") {
158
+ const uiEvent = event.uiEvent;
159
+ const text = formatToolUiEventForProgress(uiEvent);
160
+ if (text) {
161
+ pushProgress(text, costTotal, turns, toolCalls);
162
+ }
163
+ }
164
+ else if (event.type === "tool_result") {
165
+ if (event.message.isError) {
166
+ const firstLine = getToolResultFirstLine(event.message);
167
+ const issue = firstLine
168
+ ? `${event.message.toolName}: ${firstLine}`
169
+ : `${event.message.toolName}: tool returned an error`;
170
+ pushProgress(`tool error: ${issue}`, costTotal, turns, toolCalls);
171
+ }
172
+ }
173
+ else if (event.type === "notice") {
174
+ if (event.severity === "error") {
175
+ pushProgress(`tool error: ${event.text}`, costTotal, turns, toolCalls);
176
+ }
177
+ }
178
+ }
179
+ if (runSignal.aborted) {
180
+ status = "aborted";
181
+ finalText = "Fork aborted.";
182
+ }
183
+ else if (!lastAssistantFinal) {
184
+ throw new Error("fork did not produce a final response");
185
+ }
186
+ else if (lastAssistantFinal.stopReason === "toolUse") {
187
+ throw new Error("fork stopped without producing a final non-tool response");
188
+ }
189
+ else {
190
+ const text = extractAssistantText(lastAssistantFinal).trim();
191
+ if (!text) {
192
+ throw new Error(`fork produced an empty response (stopReason: ${lastAssistantFinal.stopReason ?? "unknown"})`);
193
+ }
194
+ finalText = text;
195
+ }
196
+ }
197
+ catch (err) {
198
+ if (signal?.aborted) {
199
+ status = "aborted";
200
+ finalText = "Fork aborted.";
201
+ }
202
+ else {
203
+ status = "error";
204
+ finalText = `Fork failed: ${err instanceof Error ? err.message : String(err)}`;
205
+ }
206
+ }
207
+ finally {
208
+ uiQueue.close();
209
+ }
210
+ const toolResult = status === "success"
211
+ ? createToolResult(toolCall, finalText, false)
212
+ : createToolResult(toolCall, finalText, true);
213
+ const uiEvent = {
214
+ type: "task_finished",
215
+ toolCallId: toolCall.id,
216
+ kind: "fork",
217
+ name: "",
218
+ title,
219
+ costTotal,
220
+ turns,
221
+ toolCalls,
222
+ status,
223
+ finalOutput: finalText,
224
+ };
225
+ return { kind: "single", toolResult, uiEvent };
226
+ })();
227
+ return {
228
+ kind: "phased",
229
+ startedUiEvent: {
230
+ type: "task_started",
231
+ toolCallId: toolCall.id,
232
+ kind: "fork",
233
+ name: "",
234
+ title,
235
+ },
236
+ uiEvents: uiQueue,
237
+ run,
238
+ };
239
+ },
240
+ };
241
+ }
242
+ //# sourceMappingURL=fork.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fork.js","sourceRoot":"","sources":["../../src/tools/fork.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"AAmIA,MAAM,OAAO,YAAY;IACN,MAAM,GAAG,IAAI,GAAG,EAA0B,CAAC;IAE5D,YAAY,WAA6B;QACvC,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;YAC9B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,IAAI,OAAO;QACT,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACxD,CAAC;IAED,GAAG,CAAC,QAAgB;QAClB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC;CACF"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"AA0IA,MAAM,OAAO,YAAY;IACN,MAAM,GAAG,IAAI,GAAG,EAA0B,CAAC;IAE5D,YAAY,WAA6B;QACvC,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;YAC9B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,IAAI,OAAO;QACT,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACxD,CAAC;IAED,GAAG,CAAC,QAAgB;QAClB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC;CACF"}