@ai-support-agent/cli 0.1.29 → 0.1.30-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6,6 +6,15 @@
6
6
  import type { Page } from 'playwright';
7
7
  import { BrowserActionLog } from './browser-action-log';
8
8
  import { DeviceEmulation } from './device-presets';
9
+ /**
10
+ * Payload passed to Playwright's `FileChooser.setFiles`: an array of absolute
11
+ * file paths on the agent host. These are either:
12
+ * - Agent FS paths chosen directly by the user (`filePaths`), or
13
+ * - Temporary files written from base64 content uploaded by the web client
14
+ * (`files`); the caller is responsible for deleting those temp files once
15
+ * `setFiles` has resolved/rejected.
16
+ */
17
+ export type FileChooserPayload = string[];
9
18
  export declare class BrowserSession {
10
19
  private browser;
11
20
  private context;
@@ -13,12 +22,19 @@ export declare class BrowserSession {
13
22
  private idleTimer;
14
23
  private readonly idleTimeoutMs;
15
24
  private liveViewInterval;
25
+ private _debouncedCapture;
26
+ private _debounceTimer;
27
+ private _liveViewOnFrame;
16
28
  private _currentDeviceId;
17
29
  private closed;
18
30
  private readonly onClosed?;
19
31
  private pendingFileChooser;
20
- /** ファイルチューザーが開いたときに呼ばれるコールバック。accept(paths) でファイルを設定する */
21
- onFileChooser: ((accept: (paths: string[]) => void) => void) | null;
32
+ /**
33
+ * ファイルチューザーが開いたときに呼ばれるコールバック。
34
+ * accept(files) でファイル内容を設定する。accept は `setFiles` の結果を
35
+ * 反映した Promise を返すため、呼び出し側で失敗を検知できる。
36
+ */
37
+ onFileChooser: ((accept: (files: FileChooserPayload) => Promise<void>) => void) | null;
22
38
  /**
23
39
  * Get the currently active device emulation ID, or null if none.
24
40
  */
@@ -47,6 +63,13 @@ export declare class BrowserSession {
47
63
  * Close the browser and clean up resources.
48
64
  */
49
65
  close(): Promise<void>;
66
+ /**
67
+ * Attach context-level listeners. Registers a 'page' handler so file inputs
68
+ * that open in a popup / new tab still surface the filechooser event.
69
+ * Called both when the initial context is created and whenever the context is
70
+ * recreated (e.g. by setDeviceEmulation), to avoid losing the listener.
71
+ */
72
+ private attachContextListeners;
50
73
  private attachPageListeners;
51
74
  /**
52
75
  * Set device emulation by recreating the browser context with the new userAgent.
@@ -87,6 +110,21 @@ export declare class BrowserSession {
87
110
  * Scroll the page.
88
111
  */
89
112
  executeMouseWheel(deltaX: number, deltaY: number): Promise<void>;
113
+ /**
114
+ * Move the mouse to the given coordinates without pressing any button.
115
+ * Used for drag-to-select text on the live view canvas.
116
+ */
117
+ executeMouseMove(x: number, y: number): Promise<void>;
118
+ /**
119
+ * Move to (x, y) and press a mouse button without releasing it.
120
+ * Pair with executeMouseMove / executeMouseUp to perform drag-selection.
121
+ */
122
+ executeMouseDown(x: number, y: number, button?: string): Promise<void>;
123
+ /**
124
+ * Move to (x, y) and release a mouse button.
125
+ * Completes a drag-selection started by executeMouseDown.
126
+ */
127
+ executeMouseUp(x: number, y: number, button?: string): Promise<void>;
90
128
  /**
91
129
  * Type text into the focused element.
92
130
  */
@@ -1 +1 @@
1
- {"version":3,"file":"browser-session.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/browser/browser-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browser-session.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/browser/browser-session.ts"],"names":[],"mappings":"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"}
@@ -38,11 +38,18 @@ class BrowserSession {
38
38
  idleTimer = null;
39
39
  idleTimeoutMs;
40
40
  liveViewInterval = null;
41
+ _debouncedCapture = null;
42
+ _debounceTimer = null;
43
+ _liveViewOnFrame = null;
41
44
  _currentDeviceId = null;
42
45
  closed = false;
43
46
  onClosed;
44
47
  pendingFileChooser = null;
45
- /** ファイルチューザーが開いたときに呼ばれるコールバック。accept(paths) でファイルを設定する */
48
+ /**
49
+ * ファイルチューザーが開いたときに呼ばれるコールバック。
50
+ * accept(files) でファイル内容を設定する。accept は `setFiles` の結果を
51
+ * 反映した Promise を返すため、呼び出し側で失敗を検知できる。
52
+ */
46
53
  onFileChooser = null;
47
54
  /**
48
55
  * Get the currently active device emulation ID, or null if none.
@@ -74,6 +81,7 @@ class BrowserSession {
74
81
  });
75
82
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
76
83
  this.context = await this.browser.newContext();
84
+ this.attachContextListeners(this.context);
77
85
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
78
86
  this.page = await this.context.newPage();
79
87
  this.attachPageListeners(this.page);
@@ -92,7 +100,7 @@ class BrowserSession {
92
100
  await client.send('Emulation.setFocusEmulationEnabled', { enabled: true });
93
101
  }
94
102
  catch (error) {
95
- logger_1.logger.debug(`[browser] Focus emulation not enabled: ${String(error)}`);
103
+ logger_1.logger.warn(`[browser] Focus emulation not enabled: ${String(error)}`);
96
104
  }
97
105
  }
98
106
  /**
@@ -126,15 +134,27 @@ class BrowserSession {
126
134
  }
127
135
  this.onClosed?.();
128
136
  }
137
+ /**
138
+ * Attach context-level listeners. Registers a 'page' handler so file inputs
139
+ * that open in a popup / new tab still surface the filechooser event.
140
+ * Called both when the initial context is created and whenever the context is
141
+ * recreated (e.g. by setDeviceEmulation), to avoid losing the listener.
142
+ */
143
+ attachContextListeners(context) {
144
+ context.on('page', (p) => this.attachPageListeners(p));
145
+ }
129
146
  attachPageListeners(page) {
130
147
  page.on('filechooser', (fc) => {
131
148
  this.pendingFileChooser = fc;
132
149
  if (this.onFileChooser) {
133
- this.onFileChooser((paths) => {
134
- this.pendingFileChooser?.setFiles(paths).catch((err) => {
135
- logger_1.logger.warn(`[browser] setFiles failed: ${String(err)}`);
136
- });
150
+ // accept returns a Promise so the caller (web client relay) can detect
151
+ // and surface setFiles failures instead of silently swallowing them.
152
+ this.onFileChooser((files) => {
153
+ const chooser = this.pendingFileChooser;
137
154
  this.pendingFileChooser = null;
155
+ if (!chooser)
156
+ return Promise.resolve();
157
+ return chooser.setFiles(files);
138
158
  });
139
159
  }
140
160
  else {
@@ -173,6 +193,7 @@ class BrowserSession {
173
193
  }
174
194
  contextOptions.viewport = currentViewport;
175
195
  this.context = await this.browser.newContext(contextOptions);
196
+ this.attachContextListeners(this.context);
176
197
  this.page = await this.context.newPage();
177
198
  this.attachPageListeners(this.page);
178
199
  await this.enableFocusEmulation(this.page);
@@ -235,6 +256,7 @@ class BrowserSession {
235
256
  startLiveView(intervalMs, onFrame) {
236
257
  this.stopLiveView();
237
258
  this.clearIdleTimer(); // Disable idle timeout during live view
259
+ this._liveViewOnFrame = onFrame;
238
260
  let capturing = false;
239
261
  this.liveViewInterval = setInterval(() => {
240
262
  if (capturing || !this.page)
@@ -243,7 +265,7 @@ class BrowserSession {
243
265
  void (async () => {
244
266
  try {
245
267
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
246
- const buffer = await this.page.screenshot({ fullPage: false, type: 'jpeg', quality: 50 });
268
+ const buffer = await this.page.screenshot({ fullPage: false, type: 'jpeg', quality: 70 });
247
269
  onFrame(buffer.toString('base64'));
248
270
  }
249
271
  catch (error) {
@@ -254,6 +276,26 @@ class BrowserSession {
254
276
  }
255
277
  })();
256
278
  }, intervalMs);
279
+ // Initialize debounced capture for event-triggered screenshots (e.g. after keyboard input)
280
+ this._debouncedCapture = () => {
281
+ if (this._debounceTimer)
282
+ clearTimeout(this._debounceTimer);
283
+ this._debounceTimer = setTimeout(() => {
284
+ this._debounceTimer = null;
285
+ if (!this.page || !this._liveViewOnFrame)
286
+ return;
287
+ void (async () => {
288
+ try {
289
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
290
+ const buffer = await this.page.screenshot({ fullPage: false, type: 'jpeg', quality: 70 });
291
+ this._liveViewOnFrame?.(buffer.toString('base64'));
292
+ }
293
+ catch (error) {
294
+ logger_1.logger.debug(`[browser] Debounced capture error: ${String(error)}`);
295
+ }
296
+ })();
297
+ }, 50);
298
+ };
257
299
  logger_1.logger.debug(`[browser] Live view started (interval=${intervalMs}ms)`);
258
300
  }
259
301
  /**
@@ -265,6 +307,12 @@ class BrowserSession {
265
307
  this.liveViewInterval = null;
266
308
  logger_1.logger.debug('[browser] Live view stopped');
267
309
  }
310
+ if (this._debounceTimer) {
311
+ clearTimeout(this._debounceTimer);
312
+ this._debounceTimer = null;
313
+ }
314
+ this._debouncedCapture = null;
315
+ this._liveViewOnFrame = null;
268
316
  // Re-enable idle timeout
269
317
  if (this.isActive()) {
270
318
  this.resetIdleTimer();
@@ -306,6 +354,38 @@ class BrowserSession {
306
354
  await this.page.mouse.wheel(deltaX, deltaY);
307
355
  this.actionLog.add('direct', 'scroll', `deltaX=${deltaX} deltaY=${deltaY}`);
308
356
  }
357
+ /**
358
+ * Move the mouse to the given coordinates without pressing any button.
359
+ * Used for drag-to-select text on the live view canvas.
360
+ */
361
+ async executeMouseMove(x, y) {
362
+ if (!this.page)
363
+ throw new Error('No active browser page');
364
+ this.resetIdleTimer();
365
+ await this.page.mouse.move(x, y);
366
+ }
367
+ /**
368
+ * Move to (x, y) and press a mouse button without releasing it.
369
+ * Pair with executeMouseMove / executeMouseUp to perform drag-selection.
370
+ */
371
+ async executeMouseDown(x, y, button) {
372
+ if (!this.page)
373
+ throw new Error('No active browser page');
374
+ this.resetIdleTimer();
375
+ await this.page.mouse.move(x, y);
376
+ await this.page.mouse.down({ button: button ?? 'left' });
377
+ }
378
+ /**
379
+ * Move to (x, y) and release a mouse button.
380
+ * Completes a drag-selection started by executeMouseDown.
381
+ */
382
+ async executeMouseUp(x, y, button) {
383
+ if (!this.page)
384
+ throw new Error('No active browser page');
385
+ this.resetIdleTimer();
386
+ await this.page.mouse.move(x, y);
387
+ await this.page.mouse.up({ button: button ?? 'left' });
388
+ }
309
389
  /**
310
390
  * Type text into the focused element.
311
391
  */
@@ -323,6 +403,7 @@ class BrowserSession {
323
403
  else {
324
404
  this.actionLog.add('direct', 'type', text);
325
405
  }
406
+ this._debouncedCapture?.();
326
407
  }
327
408
  /**
328
409
  * Press a key combination.
@@ -340,6 +421,7 @@ class BrowserSession {
340
421
  }
341
422
  const keyStr = modifiers?.length ? `${modifiers.join('+')}+${key}` : key;
342
423
  this.actionLog.add('direct', 'press', keyStr);
424
+ this._debouncedCapture?.();
343
425
  }
344
426
  /**
345
427
  * Get the currently selected text on the page.
@@ -1 +1 @@
1
- {"version":3,"file":"browser-session.js","sourceRoot":"","sources":["../../../../src/mcp/tools/browser/browser-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browser-session.js","sourceRoot":"","sources":["../../../../src/mcp/tools/browser/browser-session.ts"],"names":[],"mappings":"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"}
@@ -6,8 +6,13 @@ import { BrowserSessionManager } from '../mcp/tools/browser/browser-session-mana
6
6
  * API Server → Agent メッセージ
7
7
  */
8
8
  export interface VsCodeServerMessage {
9
- type: 'vscode_open' | 'vscode_close' | 'port_forward_open' | 'port_forward_close' | 'http_request' | 'ws_frame' | 'auth_success' | 'error' | 'browser_open' | 'browser_close' | 'browser_navigate' | 'browser_go_back' | 'browser_go_forward' | 'browser_reload' | 'browser_mouse_click' | 'browser_mouse_wheel' | 'browser_keyboard_type' | 'browser_keyboard_press' | 'browser_screenshot' | 'browser_viewport' | 'browser_execute_script' | 'browser_set_file' | 'browser_get_selection';
9
+ type: 'vscode_open' | 'vscode_close' | 'port_forward_open' | 'port_forward_close' | 'http_request' | 'ws_frame' | 'auth_success' | 'error' | 'browser_open' | 'browser_close' | 'browser_navigate' | 'browser_go_back' | 'browser_go_forward' | 'browser_reload' | 'browser_mouse_click' | 'browser_mouse_move' | 'browser_mouse_down' | 'browser_mouse_up' | 'browser_mouse_wheel' | 'browser_keyboard_type' | 'browser_keyboard_press' | 'browser_screenshot' | 'browser_viewport' | 'browser_execute_script' | 'browser_set_file' | 'browser_get_selection';
10
10
  filePaths?: string[];
11
+ files?: Array<{
12
+ name: string;
13
+ mimeType: string;
14
+ dataBase64: string;
15
+ }>;
11
16
  sessionId?: string;
12
17
  requestId?: string;
13
18
  subSocketId?: string;
@@ -156,6 +161,9 @@ export declare class VsCodeTunnelWebSocket extends BaseWebSocketConnection<VsCod
156
161
  private handleBrowserGoForward;
157
162
  private handleBrowserReload;
158
163
  private handleBrowserMouseClick;
164
+ private handleBrowserMouseMove;
165
+ private handleBrowserMouseDown;
166
+ private handleBrowserMouseUp;
159
167
  private handleBrowserMouseWheel;
160
168
  private handleBrowserKeyboardType;
161
169
  private handleBrowserKeyboardPress;
@@ -164,7 +172,61 @@ export declare class VsCodeTunnelWebSocket extends BaseWebSocketConnection<VsCod
164
172
  private handleBrowserExecuteScript;
165
173
  private handleBrowserViewport;
166
174
  private handleBrowserSetFile;
175
+ /**
176
+ * Branch 1: Agent FS paths chosen directly by the user via the workspace file
177
+ * explorer. These arrive as workspace-relative paths (e.g. `repos/app.ts`) —
178
+ * Playwright's setFiles requires absolute paths, so each is resolved against
179
+ * the workspace root before being forwarded. Already absolute paths are
180
+ * accepted as-is for backward compatibility, but every resolved path must
181
+ * stay inside the workspace root (traversal + symlink-escape guard).
182
+ */
183
+ private handleBrowserSetFileByPaths;
184
+ /**
185
+ * Branch 2: base64 file contents uploaded from the web client. Decode each
186
+ * into a temporary file on the agent host, hand the temp paths to setFiles,
187
+ * then always remove the temp files afterwards.
188
+ */
189
+ private handleBrowserSetFileByContent;
190
+ /**
191
+ * Resolve user-chosen file-explorer paths into absolute paths suitable for
192
+ * Playwright's `setFiles`, enforcing that every resolved path stays inside
193
+ * the agent workspace root.
194
+ *
195
+ * Resolution rules per path:
196
+ * - Absolute paths are kept as-is (backward compatibility for callers that
197
+ * already send absolute agent-FS paths).
198
+ * - Relative paths (e.g. `repos/app.ts`) are resolved against the workspace
199
+ * directory (`getWorkspaceDir(projectDir)`).
200
+ *
201
+ * Traversal guard (lexical): after resolution, the absolute path must be the
202
+ * workspace root itself or a descendant of it. `path.relative(workspaceDir,
203
+ * resolved)` starting with `..` (or being absolute) means the path escaped the
204
+ * workspace and is rejected. This rejects both relative escapes
205
+ * (`../../etc/passwd`) and absolute paths pointing outside the workspace.
206
+ *
207
+ * Symlink-escape guard (physical): a path that is lexically inside the
208
+ * workspace may still resolve, through a symlink, to a target OUTSIDE it
209
+ * (e.g. a `link` inside the workspace pointing at `../../.ssh/id_rsa`). After
210
+ * the lexical check, each existing path's real (canonical) location is
211
+ * resolved via `fs.realpath` and re-checked against the workspace root. Paths
212
+ * whose real location escapes the workspace are rejected. Non-existent paths
213
+ * cannot be canonicalized; they are left as-is (Playwright's setFiles will
214
+ * fail on them) rather than rejected here, preserving the lexical guarantee.
215
+ *
216
+ * Returns the resolved absolute paths on success, or an error message string
217
+ * describing why the upload was rejected (never silently dropped).
218
+ */
219
+ private resolveWorkspaceFilePaths;
220
+ /**
221
+ * Cancel a pending file chooser by applying an empty file list so the remote
222
+ * `<input type=file>` is cleared rather than left pending. Failures are
223
+ * swallowed (best-effort) since the user has already been told why the upload
224
+ * was rejected.
225
+ */
226
+ private cancelFileChooser;
167
227
  private cleanup;
228
+ private sendMissingSessionIdError;
229
+ private sendBrowserSessionNotFoundError;
168
230
  private send;
169
231
  }
170
232
  //# sourceMappingURL=vscode-tunnel-websocket.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"vscode-tunnel-websocket.d.ts","sourceRoot":"","sources":["../../src/vscode/vscode-tunnel-websocket.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vscode-tunnel-websocket.d.ts","sourceRoot":"","sources":["../../src/vscode/vscode-tunnel-websocket.ts"],"names":[],"mappings":"AAIA,OAAO,SAAS,MAAM,IAAI,CAAA;AAE1B,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAA;AAG3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAIzD,OAAO,EACL,qBAAqB,EAEtB,MAAM,8CAA8C,CAAA;AAcrD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,IAAI,EACA,aAAa,GACb,cAAc,GACd,mBAAmB,GACnB,oBAAoB,GACpB,cAAc,GACd,UAAU,GACV,cAAc,GACd,OAAO,GAEP,cAAc,GACd,eAAe,GACf,kBAAkB,GAClB,iBAAiB,GACjB,oBAAoB,GACpB,gBAAgB,GAChB,qBAAqB,GACrB,oBAAoB,GACpB,oBAAoB,GACpB,kBAAkB,GAClB,qBAAqB,GACrB,uBAAuB,GACvB,wBAAwB,GACxB,oBAAoB,GACpB,kBAAkB,GAClB,wBAAwB,GACxB,kBAAkB,GAClB,uBAAuB,CAAA;IAC3B,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;IACpB,KAAK,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACrE,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAChC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAEhB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,IAAI,EACA,cAAc,GACd,gBAAgB,GAChB,oBAAoB,GACpB,sBAAsB,GACtB,eAAe,GACf,UAAU,GACV,OAAO,GAEP,eAAe,GACf,eAAe,GACf,2BAA2B,GAC3B,0BAA0B,GAC1B,oBAAoB,GACpB,iBAAiB,GACjB,uBAAuB,GACvB,yBAAyB,GACzB,6BAA6B,CAAA;IACjC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAChC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAEhB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAEvF,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACnE,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAiCD;;;;;;GAMG;AACH,qBAAa,qBAAsB,SAAQ,uBAAuB,CAAC,mBAAmB,CAAC;IAkBnF,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;IAC5B;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;IAxBnC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAC9B,OAAO,CAAC,YAAY,CAA4B;IAChD;;;;OAIG;IACH,OAAO,CAAC,wBAAwB,CAAa;IAC7C,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAoE;IACxG,QAAQ,CAAC,qBAAqB,wBAA4D;IAC1F,OAAO,CAAC,kBAAkB,CAAkC;IAC5D,OAAO,CAAC,gBAAgB,CAAI;IAC5B,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAkE;gBAGpG,MAAM,EAAE,MAAM,EACG,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,UAAU,CAAC,EAAE,MAAM,YAAA;IACpC;;;OAGG;IACc,eAAe,CAAC,EAAE,eAAe,YAAA;IAWpD;;OAEG;IACH,mBAAmB,IAAI,MAAM;IAI7B,SAAS,CAAC,eAAe,IAAI,SAAS;IAatC,sEAAsE;IACtE,OAAO,CAAC,8BAA8B,CAA6B;IAEnE,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK,IAAI,GAAG,IAAI;IA8BtE;;;OAGG;IACG,uBAAuB,IAAI,OAAO,CAAC,MAAM,CAAC;IAOhD,SAAS,CAAC,eAAe,CAAC,GAAG,EAAE,mBAAmB,GAAG,IAAI;IAuFzD,SAAS,CAAC,YAAY,IAAI,IAAI;YAMhB,gBAAgB;IAsE9B,OAAO,CAAC,iBAAiB;YAQX,iBAAiB;IA4C/B;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAoBxB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAwB/B,OAAO,CAAC,aAAa;IAwDrB,OAAO,CAAC,qBAAqB;IAyB7B,OAAO,CAAC,sBAAsB;YAgBhB,iBAAiB;YA2EjB,kBAAkB;YAelB,qBAAqB;YAyBrB,mBAAmB;YAWnB,sBAAsB;YAWtB,mBAAmB;YAWnB,uBAAuB;YAWvB,sBAAsB;YActB,sBAAsB;YAWtB,oBAAoB;YAWpB,uBAAuB;YAUvB,yBAAyB;YAWzB,0BAA0B;YAW1B,uBAAuB;YA4BvB,yBAAyB;YAmBzB,0BAA0B;YAuC1B,qBAAqB;YAUrB,oBAAoB;IA+BlC;;;;;;;OAOG;YACW,2BAA2B;IAoCzC;;;;OAIG;YACW,6BAA6B;IAqE3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;YACW,yBAAyB;IAyCvC;;;;;OAKG;YACW,iBAAiB;IAW/B,OAAO,CAAC,OAAO;IA4Bf,OAAO,CAAC,yBAAyB;IAIjC,OAAO,CAAC,+BAA+B;IAIvC,OAAO,CAAC,IAAI;CAGb"}