@ai-support-agent/cli 0.1.30-beta.1 → 0.1.30-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/mcp/tools/browser/browser-session.d.ts +137 -0
- package/dist/mcp/tools/browser/browser-session.d.ts.map +1 -1
- package/dist/mcp/tools/browser/browser-session.js +264 -1
- package/dist/mcp/tools/browser/browser-session.js.map +1 -1
- package/dist/mcp/tools/browser/element-info.d.ts +9 -0
- package/dist/mcp/tools/browser/element-info.d.ts.map +1 -1
- package/dist/mcp/tools/browser/element-info.js +24 -0
- package/dist/mcp/tools/browser/element-info.js.map +1 -1
- package/dist/vscode/vscode-tunnel-websocket.d.ts +31 -2
- package/dist/vscode/vscode-tunnel-websocket.d.ts.map +1 -1
- package/dist/vscode/vscode-tunnel-websocket.js +69 -3
- package/dist/vscode/vscode-tunnel-websocket.js.map +1 -1
- package/package.json +1 -1
|
@@ -15,6 +15,80 @@ import { DeviceEmulation } from './device-presets';
|
|
|
15
15
|
* `setFiles` has resolved/rejected.
|
|
16
16
|
*/
|
|
17
17
|
export type FileChooserPayload = string[];
|
|
18
|
+
/**
|
|
19
|
+
* Payload emitted to the Web client when the focused input/textarea changes,
|
|
20
|
+
* its value/selection changes, or focus leaves a reporting target.
|
|
21
|
+
*
|
|
22
|
+
* Mirrors the `browser_focus_changed` wire contract (rect and below). When
|
|
23
|
+
* `focused` is false, the overlay is hidden and the remaining fields are
|
|
24
|
+
* omitted. Coordinates in `rect` are getBoundingClientRect raw values
|
|
25
|
+
* (CSS px, viewport-relative).
|
|
26
|
+
*/
|
|
27
|
+
export interface FocusChangePayload {
|
|
28
|
+
/** Whether a reporting-target input/textarea is focused. false hides overlay. */
|
|
29
|
+
focused: boolean;
|
|
30
|
+
/** getBoundingClientRect of the focused element (CSS px, viewport-relative). */
|
|
31
|
+
rect?: {
|
|
32
|
+
x: number;
|
|
33
|
+
y: number;
|
|
34
|
+
width: number;
|
|
35
|
+
height: number;
|
|
36
|
+
};
|
|
37
|
+
/** Current value of the element. */
|
|
38
|
+
value?: string;
|
|
39
|
+
selectionStart?: number;
|
|
40
|
+
selectionEnd?: number;
|
|
41
|
+
/** True when the element is a <textarea>. */
|
|
42
|
+
multiline?: boolean;
|
|
43
|
+
/** input `type` attribute ('text'|'password'|... / 'textarea' for textarea). */
|
|
44
|
+
inputType?: string;
|
|
45
|
+
/** maxLength attribute (omitted when -1/unset). */
|
|
46
|
+
maxLength?: number;
|
|
47
|
+
/** Computed font-size in px. */
|
|
48
|
+
fontSize?: number;
|
|
49
|
+
/** Computed line-height in px (omitted when 'normal'/non-numeric). */
|
|
50
|
+
lineHeight?: number;
|
|
51
|
+
/** Computed text-align. */
|
|
52
|
+
textAlign?: string;
|
|
53
|
+
/** Computed padding-top in px. */
|
|
54
|
+
paddingTop?: number;
|
|
55
|
+
/** Computed padding-left in px. */
|
|
56
|
+
paddingLeft?: number;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Browser-context script installed (idempotently) into the page to report
|
|
60
|
+
* focus/value/selection changes of simple input/textarea elements back to the
|
|
61
|
+
* agent via the `window.__onBrowserFocus` binding exposed by Playwright.
|
|
62
|
+
*
|
|
63
|
+
* Runs in the browser, so it is a string passed to addInitScript / evaluate to
|
|
64
|
+
* avoid Node resolving DOM types (same convention as element-info scripts).
|
|
65
|
+
*
|
|
66
|
+
* Listens in the capture phase for focusin/focusout/input/selectionchange and,
|
|
67
|
+
* for reporting targets (textarea, or input whose type is one of the simple
|
|
68
|
+
* text-like types), builds and sends the focus payload. focusout / non-target
|
|
69
|
+
* elements send `{ focused: false }`.
|
|
70
|
+
*
|
|
71
|
+
* Listener registration is guarded by `window.__browserFocusReportingInstalled`
|
|
72
|
+
* so re-evaluating the script (e.g. after a navigation, or via reportFocusNow)
|
|
73
|
+
* does not double-register handlers. The INITIAL report, however, runs on EVERY
|
|
74
|
+
* evaluation (outside the guard): `focusin` only fires on focus CHANGES after
|
|
75
|
+
* registration, so an element that is already focused at injection time (e.g. an
|
|
76
|
+
* autofocused login field) would otherwise never be reported and its overlay
|
|
77
|
+
* caret would never appear. Reporting the current activeElement at the end of
|
|
78
|
+
* each evaluation surfaces such elements for both addInitScript (new document)
|
|
79
|
+
* and evaluate (existing/re-evaluated document) injection paths.
|
|
80
|
+
*/
|
|
81
|
+
export declare const FOCUS_REPORTING_SCRIPT = "() => {\n // The per-document focus reporting state (listeners + lastReportedFocused) is\n // installed once. Hang the report() helper off window so a re-evaluation that\n // skips re-registration can still invoke the initial report below.\n if (!window.__browserFocusReportingInstalled) {\n window.__browserFocusReportingInstalled = true;\n\n // Last focused state reported to the agent. Used to suppress repeated\n // { focused: false } notifications: selectionchange fires for the whole\n // document (including unrelated page text selections), so without this guard\n // every such selection would emit a redundant focused:false. We only forward\n // a false when transitioning from a previously-focused (true) state.\n var lastReportedFocused = false;\n\n // Forward a payload through the exposed binding, recording the new focused\n // state and logging the first failure once (high-frequency events would\n // otherwise flood the browser console).\n function emit(payload) {\n lastReportedFocused = payload.focused;\n try {\n window.__onBrowserFocus(payload);\n } catch (e) {\n if (!window.__focusReportErrorLogged) {\n window.__focusReportErrorLogged = true;\n try { console.warn('[focus-reporting] report failed', e && e.message ? e.message : e); } catch (_) {}\n }\n }\n }\n\n function isReportingTarget(el) {\n if (!el) return false;\n const tag = el.tagName;\n if (tag === 'TEXTAREA') return true;\n if (tag !== 'INPUT') return false;\n const type = (el.getAttribute('type') || '').toLowerCase();\n return type === '' || type === 'text' || type === 'search' || type === 'email' ||\n type === 'url' || type === 'tel' || type === 'password' || type === 'number';\n }\n\n function buildPayload(el) {\n const rect = el.getBoundingClientRect();\n const cs = getComputedStyle(el);\n const fontSize = parseFloat(cs.fontSize);\n const lineHeight = parseFloat(cs.lineHeight);\n const paddingTop = parseFloat(cs.paddingTop);\n const paddingLeft = parseFloat(cs.paddingLeft);\n const multiline = el.tagName === 'TEXTAREA';\n const payload = {\n focused: true,\n rect: { x: rect.x, y: rect.y, width: rect.width, height: rect.height },\n value: el.value,\n selectionStart: el.selectionStart == null ? undefined : el.selectionStart,\n selectionEnd: el.selectionEnd == null ? undefined : el.selectionEnd,\n multiline: multiline,\n inputType: multiline ? 'textarea' : ((el.getAttribute('type') || 'text').toLowerCase()),\n textAlign: cs.textAlign,\n };\n if (typeof el.maxLength === 'number' && el.maxLength >= 0) payload.maxLength = el.maxLength;\n if (!Number.isNaN(fontSize)) payload.fontSize = fontSize;\n if (!Number.isNaN(lineHeight)) payload.lineHeight = lineHeight;\n if (!Number.isNaN(paddingTop)) payload.paddingTop = paddingTop;\n if (!Number.isNaN(paddingLeft)) payload.paddingLeft = paddingLeft;\n return payload;\n }\n\n // Report focused:true (with current value/selection) whenever a reporting\n // target is active; report focused:false only on the true->false transition.\n // Exposed on window so a guarded re-evaluation can still trigger the initial\n // report without re-registering listeners.\n window.__browserFocusReport = function () {\n const el = document.activeElement;\n if (isReportingTarget(el)) {\n emit(buildPayload(el));\n } else if (lastReportedFocused) {\n emit({ focused: false });\n }\n };\n\n document.addEventListener('focusin', window.__browserFocusReport, true);\n document.addEventListener('focusout', function () {\n if (lastReportedFocused) emit({ focused: false });\n }, true);\n document.addEventListener('input', window.__browserFocusReport, true);\n document.addEventListener('selectionchange', window.__browserFocusReport, true);\n }\n\n // Initial report on EVERY evaluation: surfaces an element that is already\n // focused at injection time (autofocus) for which focusin will never fire.\n if (typeof window.__browserFocusReport === 'function') window.__browserFocusReport();\n}";
|
|
82
|
+
/**
|
|
83
|
+
* Browser-context script that reflects a value into the currently-focused
|
|
84
|
+
* reporting-target input/textarea using the native value setter +
|
|
85
|
+
* InputEvent('input') dispatch, so React-style controlled components do not
|
|
86
|
+
* roll the value back. Optionally applies a selection range.
|
|
87
|
+
*
|
|
88
|
+
* No-op when the active element is not a reporting target. String script for
|
|
89
|
+
* the same reason as the others (DOM types resolved in the browser).
|
|
90
|
+
*/
|
|
91
|
+
export declare const SET_FOCUSED_INPUT_VALUE_SCRIPT = "(args) => {\n const el = document.activeElement;\n if (!el) return;\n const tag = el.tagName;\n let proto;\n if (tag === 'TEXTAREA') {\n proto = window.HTMLTextAreaElement.prototype;\n } else if (tag === 'INPUT') {\n const type = (el.getAttribute('type') || '').toLowerCase();\n const ok = type === '' || type === 'text' || type === 'search' || type === 'email' ||\n type === 'url' || type === 'tel' || type === 'password' || type === 'number';\n if (!ok) return;\n proto = window.HTMLInputElement.prototype;\n } else {\n return;\n }\n // The native value setter may be absent on exotic/polyfilled prototypes;\n // treat that as a no-op (same as a non-reporting target) rather than letting\n // a TypeError escape from reading .set of undefined.\n const desc = Object.getOwnPropertyDescriptor(proto, 'value');\n const setter = desc && desc.set;\n if (!setter) return;\n setter.call(el, args.value);\n el.dispatchEvent(new InputEvent('input', { bubbles: true }));\n if (args.selectionStart != null && args.selectionEnd != null) {\n try { el.setSelectionRange(args.selectionStart, args.selectionEnd); } catch (e) {}\n }\n}";
|
|
18
92
|
export declare class BrowserSession {
|
|
19
93
|
private browser;
|
|
20
94
|
private context;
|
|
@@ -35,6 +109,16 @@ export declare class BrowserSession {
|
|
|
35
109
|
* 反映した Promise を返すため、呼び出し側で失敗を検知できる。
|
|
36
110
|
*/
|
|
37
111
|
onFileChooser: ((accept: (files: FileChooserPayload) => Promise<void>) => void) | null;
|
|
112
|
+
/**
|
|
113
|
+
* フォーカスされた報告対象 input/textarea の変化を Web 側へ通知するコールバック。
|
|
114
|
+
* `enableFocusReporting` が exposeBinding 経由でブラウザからのイベントを受けてこれを呼ぶ。
|
|
115
|
+
*/
|
|
116
|
+
onFocusChange: ((payload: FocusChangePayload) => void) | null;
|
|
117
|
+
/**
|
|
118
|
+
* `page.exposeBinding('__onBrowserFocus', ...)` を一度だけ呼ぶためのガード。
|
|
119
|
+
* 同じ名前の binding を二重登録すると Playwright が例外を投げるため。
|
|
120
|
+
*/
|
|
121
|
+
private focusReportingExposed;
|
|
38
122
|
/**
|
|
39
123
|
* Get the currently active device emulation ID, or null if none.
|
|
40
124
|
*/
|
|
@@ -55,6 +139,52 @@ export declare class BrowserSession {
|
|
|
55
139
|
* Safe no-op on non-Chromium engines (CDP unavailable).
|
|
56
140
|
*/
|
|
57
141
|
private enableFocusEmulation;
|
|
142
|
+
/**
|
|
143
|
+
* Install focus/value/selection reporting for simple input/textarea elements.
|
|
144
|
+
*
|
|
145
|
+
* Exposes the `__onBrowserFocus` binding once per session (guarded by
|
|
146
|
+
* `focusReportingExposed`; re-exposing the same name throws in Playwright),
|
|
147
|
+
* then injects FOCUS_REPORTING_SCRIPT both as an init script (for future
|
|
148
|
+
* navigations) and into the current document (for the already-loaded page).
|
|
149
|
+
* The script is idempotent via `window.__browserFocusReportingInstalled`.
|
|
150
|
+
*
|
|
151
|
+
* Binding exposure and script injection are wrapped in SEPARATE try/catch
|
|
152
|
+
* blocks so a partial failure stays isolated: a failed binding expose must
|
|
153
|
+
* not prevent the script from being injected, and a failed script injection
|
|
154
|
+
* must not flip `focusReportingExposed` back (which would later trigger a
|
|
155
|
+
* duplicate-name re-expose that throws). The `focusReportingExposed` guard is
|
|
156
|
+
* only set true after the expose actually succeeds, and only the expose path
|
|
157
|
+
* is gated by it — script injection is attempted on every page so it is not
|
|
158
|
+
* coupled to whether the binding was (re-)exposed this call.
|
|
159
|
+
*
|
|
160
|
+
* Mirrors enableFocusEmulation's policy: failures are logged via warn and
|
|
161
|
+
* never propagated — focus reporting is best-effort and not critical.
|
|
162
|
+
*/
|
|
163
|
+
private enableFocusReporting;
|
|
164
|
+
/**
|
|
165
|
+
* Re-evaluate FOCUS_REPORTING_SCRIPT against the CURRENT document to force an
|
|
166
|
+
* immediate focus report.
|
|
167
|
+
*
|
|
168
|
+
* Needed after a navigation/goto: the document is replaced, so an element that
|
|
169
|
+
* the page autofocuses (e.g. a login field) is already focused by the time the
|
|
170
|
+
* agent regains control. `focusin` only fires on focus CHANGES, so without an
|
|
171
|
+
* explicit re-evaluation that element would never be reported and the overlay
|
|
172
|
+
* caret would never appear. The script's listener registration is idempotent
|
|
173
|
+
* (guarded), so this only triggers the initial report; the `__onBrowserFocus`
|
|
174
|
+
* binding is intentionally NOT re-exposed here (it is session-scoped and would
|
|
175
|
+
* throw on a duplicate name). No-op when no page is active; failures are warned
|
|
176
|
+
* and swallowed, mirroring enableFocusReporting's best-effort policy.
|
|
177
|
+
*/
|
|
178
|
+
reportFocusNow(): Promise<void>;
|
|
179
|
+
/**
|
|
180
|
+
* Reflect a value into the currently-focused reporting-target input/textarea.
|
|
181
|
+
*
|
|
182
|
+
* Uses the native value setter + InputEvent('input') dispatch so controlled
|
|
183
|
+
* React components do not roll the value back, and applies the selection range
|
|
184
|
+
* when both bounds are provided. No-op when the active element is not a
|
|
185
|
+
* reporting target. Throws when no page is active.
|
|
186
|
+
*/
|
|
187
|
+
setFocusedInputValue(value: string, selectionStart?: number, selectionEnd?: number): Promise<void>;
|
|
58
188
|
/**
|
|
59
189
|
* Check if a browser session is currently active.
|
|
60
190
|
*/
|
|
@@ -115,6 +245,13 @@ export declare class BrowserSession {
|
|
|
115
245
|
* Used for drag-to-select text on the live view canvas.
|
|
116
246
|
*/
|
|
117
247
|
executeMouseMove(x: number, y: number): Promise<void>;
|
|
248
|
+
/**
|
|
249
|
+
* Read the CSS `cursor` value of the element at the given coordinates.
|
|
250
|
+
* Used by the live view to mirror the page's cursor shape on the web canvas.
|
|
251
|
+
* Throws when no page is active; propagates page.evaluate errors so the
|
|
252
|
+
* caller can skip the update for that frame.
|
|
253
|
+
*/
|
|
254
|
+
getCursorAt(x: number, y: number): Promise<string>;
|
|
118
255
|
/**
|
|
119
256
|
* Move to (x, y) and press a mouse button without releasing it.
|
|
120
257
|
* Pair with executeMouseMove / executeMouseUp to perform drag-selection.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser-session.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/browser/browser-session.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAwC,IAAI,EAAE,MAAM,YAAY,CAAA;AAG5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAEvD,OAAO,EAAE,eAAe,EAAkB,MAAM,kBAAkB,CAAA;AAwBlE;;;;;;;GAOG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,EAAE,CAAA;AAEzC,qBAAa,cAAc;IACzB,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,OAAO,CAA8B;IAC7C,OAAO,CAAC,IAAI,CAAoB;IAChC,OAAO,CAAC,SAAS,CAA6C;IAC9D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAQ;IACtC,OAAO,CAAC,gBAAgB,CAA8C;IACtE,OAAO,CAAC,iBAAiB,CAA4B;IACrD,OAAO,CAAC,cAAc,CAA6C;IACnE,OAAO,CAAC,gBAAgB,CAA0C;IAClE,OAAO,CAAC,gBAAgB,CAAsB;IAC9C,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAY;IACtC,OAAO,CAAC,kBAAkB,CAA2B;IACrD;;;;OAIG;IACH,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,GAAG,IAAI,CAAO;IAE7F;;OAEG;IACH,IAAI,eAAe,IAAI,MAAM,GAAG,IAAI,CAEnC;IAED,yCAAyC;IACzC,QAAQ,CAAC,SAAS,sBAA4B;IAE9C,kDAAkD;IAClD,QAAQ,CAAC,SAAS,mBAAyB;gBAE/B,aAAa,GAAE,MAAgC,EAAE,QAAQ,CAAC,EAAE,MAAM,IAAI;IAKlF;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"browser-session.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/browser/browser-session.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Supports live view streaming (JPEG frames) and direct interaction.
|
|
6
6
|
*/
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
-
exports.BrowserSession = void 0;
|
|
8
|
+
exports.BrowserSession = exports.SET_FOCUSED_INPUT_VALUE_SCRIPT = exports.FOCUS_REPORTING_SCRIPT = void 0;
|
|
9
9
|
const logger_1 = require("../../../logger");
|
|
10
10
|
const browser_action_log_1 = require("./browser-action-log");
|
|
11
11
|
const browser_types_1 = require("./browser-types");
|
|
@@ -31,6 +31,156 @@ const GET_SELECTED_TEXT_SCRIPT = `() => {
|
|
|
31
31
|
const sel = window.getSelection();
|
|
32
32
|
return sel ? sel.toString() : '';
|
|
33
33
|
}`;
|
|
34
|
+
/**
|
|
35
|
+
* Browser-context script installed (idempotently) into the page to report
|
|
36
|
+
* focus/value/selection changes of simple input/textarea elements back to the
|
|
37
|
+
* agent via the `window.__onBrowserFocus` binding exposed by Playwright.
|
|
38
|
+
*
|
|
39
|
+
* Runs in the browser, so it is a string passed to addInitScript / evaluate to
|
|
40
|
+
* avoid Node resolving DOM types (same convention as element-info scripts).
|
|
41
|
+
*
|
|
42
|
+
* Listens in the capture phase for focusin/focusout/input/selectionchange and,
|
|
43
|
+
* for reporting targets (textarea, or input whose type is one of the simple
|
|
44
|
+
* text-like types), builds and sends the focus payload. focusout / non-target
|
|
45
|
+
* elements send `{ focused: false }`.
|
|
46
|
+
*
|
|
47
|
+
* Listener registration is guarded by `window.__browserFocusReportingInstalled`
|
|
48
|
+
* so re-evaluating the script (e.g. after a navigation, or via reportFocusNow)
|
|
49
|
+
* does not double-register handlers. The INITIAL report, however, runs on EVERY
|
|
50
|
+
* evaluation (outside the guard): `focusin` only fires on focus CHANGES after
|
|
51
|
+
* registration, so an element that is already focused at injection time (e.g. an
|
|
52
|
+
* autofocused login field) would otherwise never be reported and its overlay
|
|
53
|
+
* caret would never appear. Reporting the current activeElement at the end of
|
|
54
|
+
* each evaluation surfaces such elements for both addInitScript (new document)
|
|
55
|
+
* and evaluate (existing/re-evaluated document) injection paths.
|
|
56
|
+
*/
|
|
57
|
+
exports.FOCUS_REPORTING_SCRIPT = `() => {
|
|
58
|
+
// The per-document focus reporting state (listeners + lastReportedFocused) is
|
|
59
|
+
// installed once. Hang the report() helper off window so a re-evaluation that
|
|
60
|
+
// skips re-registration can still invoke the initial report below.
|
|
61
|
+
if (!window.__browserFocusReportingInstalled) {
|
|
62
|
+
window.__browserFocusReportingInstalled = true;
|
|
63
|
+
|
|
64
|
+
// Last focused state reported to the agent. Used to suppress repeated
|
|
65
|
+
// { focused: false } notifications: selectionchange fires for the whole
|
|
66
|
+
// document (including unrelated page text selections), so without this guard
|
|
67
|
+
// every such selection would emit a redundant focused:false. We only forward
|
|
68
|
+
// a false when transitioning from a previously-focused (true) state.
|
|
69
|
+
var lastReportedFocused = false;
|
|
70
|
+
|
|
71
|
+
// Forward a payload through the exposed binding, recording the new focused
|
|
72
|
+
// state and logging the first failure once (high-frequency events would
|
|
73
|
+
// otherwise flood the browser console).
|
|
74
|
+
function emit(payload) {
|
|
75
|
+
lastReportedFocused = payload.focused;
|
|
76
|
+
try {
|
|
77
|
+
window.__onBrowserFocus(payload);
|
|
78
|
+
} catch (e) {
|
|
79
|
+
if (!window.__focusReportErrorLogged) {
|
|
80
|
+
window.__focusReportErrorLogged = true;
|
|
81
|
+
try { console.warn('[focus-reporting] report failed', e && e.message ? e.message : e); } catch (_) {}
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
function isReportingTarget(el) {
|
|
87
|
+
if (!el) return false;
|
|
88
|
+
const tag = el.tagName;
|
|
89
|
+
if (tag === 'TEXTAREA') return true;
|
|
90
|
+
if (tag !== 'INPUT') return false;
|
|
91
|
+
const type = (el.getAttribute('type') || '').toLowerCase();
|
|
92
|
+
return type === '' || type === 'text' || type === 'search' || type === 'email' ||
|
|
93
|
+
type === 'url' || type === 'tel' || type === 'password' || type === 'number';
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
function buildPayload(el) {
|
|
97
|
+
const rect = el.getBoundingClientRect();
|
|
98
|
+
const cs = getComputedStyle(el);
|
|
99
|
+
const fontSize = parseFloat(cs.fontSize);
|
|
100
|
+
const lineHeight = parseFloat(cs.lineHeight);
|
|
101
|
+
const paddingTop = parseFloat(cs.paddingTop);
|
|
102
|
+
const paddingLeft = parseFloat(cs.paddingLeft);
|
|
103
|
+
const multiline = el.tagName === 'TEXTAREA';
|
|
104
|
+
const payload = {
|
|
105
|
+
focused: true,
|
|
106
|
+
rect: { x: rect.x, y: rect.y, width: rect.width, height: rect.height },
|
|
107
|
+
value: el.value,
|
|
108
|
+
selectionStart: el.selectionStart == null ? undefined : el.selectionStart,
|
|
109
|
+
selectionEnd: el.selectionEnd == null ? undefined : el.selectionEnd,
|
|
110
|
+
multiline: multiline,
|
|
111
|
+
inputType: multiline ? 'textarea' : ((el.getAttribute('type') || 'text').toLowerCase()),
|
|
112
|
+
textAlign: cs.textAlign,
|
|
113
|
+
};
|
|
114
|
+
if (typeof el.maxLength === 'number' && el.maxLength >= 0) payload.maxLength = el.maxLength;
|
|
115
|
+
if (!Number.isNaN(fontSize)) payload.fontSize = fontSize;
|
|
116
|
+
if (!Number.isNaN(lineHeight)) payload.lineHeight = lineHeight;
|
|
117
|
+
if (!Number.isNaN(paddingTop)) payload.paddingTop = paddingTop;
|
|
118
|
+
if (!Number.isNaN(paddingLeft)) payload.paddingLeft = paddingLeft;
|
|
119
|
+
return payload;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
// Report focused:true (with current value/selection) whenever a reporting
|
|
123
|
+
// target is active; report focused:false only on the true->false transition.
|
|
124
|
+
// Exposed on window so a guarded re-evaluation can still trigger the initial
|
|
125
|
+
// report without re-registering listeners.
|
|
126
|
+
window.__browserFocusReport = function () {
|
|
127
|
+
const el = document.activeElement;
|
|
128
|
+
if (isReportingTarget(el)) {
|
|
129
|
+
emit(buildPayload(el));
|
|
130
|
+
} else if (lastReportedFocused) {
|
|
131
|
+
emit({ focused: false });
|
|
132
|
+
}
|
|
133
|
+
};
|
|
134
|
+
|
|
135
|
+
document.addEventListener('focusin', window.__browserFocusReport, true);
|
|
136
|
+
document.addEventListener('focusout', function () {
|
|
137
|
+
if (lastReportedFocused) emit({ focused: false });
|
|
138
|
+
}, true);
|
|
139
|
+
document.addEventListener('input', window.__browserFocusReport, true);
|
|
140
|
+
document.addEventListener('selectionchange', window.__browserFocusReport, true);
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
// Initial report on EVERY evaluation: surfaces an element that is already
|
|
144
|
+
// focused at injection time (autofocus) for which focusin will never fire.
|
|
145
|
+
if (typeof window.__browserFocusReport === 'function') window.__browserFocusReport();
|
|
146
|
+
}`;
|
|
147
|
+
/**
|
|
148
|
+
* Browser-context script that reflects a value into the currently-focused
|
|
149
|
+
* reporting-target input/textarea using the native value setter +
|
|
150
|
+
* InputEvent('input') dispatch, so React-style controlled components do not
|
|
151
|
+
* roll the value back. Optionally applies a selection range.
|
|
152
|
+
*
|
|
153
|
+
* No-op when the active element is not a reporting target. String script for
|
|
154
|
+
* the same reason as the others (DOM types resolved in the browser).
|
|
155
|
+
*/
|
|
156
|
+
exports.SET_FOCUSED_INPUT_VALUE_SCRIPT = `(args) => {
|
|
157
|
+
const el = document.activeElement;
|
|
158
|
+
if (!el) return;
|
|
159
|
+
const tag = el.tagName;
|
|
160
|
+
let proto;
|
|
161
|
+
if (tag === 'TEXTAREA') {
|
|
162
|
+
proto = window.HTMLTextAreaElement.prototype;
|
|
163
|
+
} else if (tag === 'INPUT') {
|
|
164
|
+
const type = (el.getAttribute('type') || '').toLowerCase();
|
|
165
|
+
const ok = type === '' || type === 'text' || type === 'search' || type === 'email' ||
|
|
166
|
+
type === 'url' || type === 'tel' || type === 'password' || type === 'number';
|
|
167
|
+
if (!ok) return;
|
|
168
|
+
proto = window.HTMLInputElement.prototype;
|
|
169
|
+
} else {
|
|
170
|
+
return;
|
|
171
|
+
}
|
|
172
|
+
// The native value setter may be absent on exotic/polyfilled prototypes;
|
|
173
|
+
// treat that as a no-op (same as a non-reporting target) rather than letting
|
|
174
|
+
// a TypeError escape from reading .set of undefined.
|
|
175
|
+
const desc = Object.getOwnPropertyDescriptor(proto, 'value');
|
|
176
|
+
const setter = desc && desc.set;
|
|
177
|
+
if (!setter) return;
|
|
178
|
+
setter.call(el, args.value);
|
|
179
|
+
el.dispatchEvent(new InputEvent('input', { bubbles: true }));
|
|
180
|
+
if (args.selectionStart != null && args.selectionEnd != null) {
|
|
181
|
+
try { el.setSelectionRange(args.selectionStart, args.selectionEnd); } catch (e) {}
|
|
182
|
+
}
|
|
183
|
+
}`;
|
|
34
184
|
class BrowserSession {
|
|
35
185
|
browser = null;
|
|
36
186
|
context = null;
|
|
@@ -51,6 +201,16 @@ class BrowserSession {
|
|
|
51
201
|
* 反映した Promise を返すため、呼び出し側で失敗を検知できる。
|
|
52
202
|
*/
|
|
53
203
|
onFileChooser = null;
|
|
204
|
+
/**
|
|
205
|
+
* フォーカスされた報告対象 input/textarea の変化を Web 側へ通知するコールバック。
|
|
206
|
+
* `enableFocusReporting` が exposeBinding 経由でブラウザからのイベントを受けてこれを呼ぶ。
|
|
207
|
+
*/
|
|
208
|
+
onFocusChange = null;
|
|
209
|
+
/**
|
|
210
|
+
* `page.exposeBinding('__onBrowserFocus', ...)` を一度だけ呼ぶためのガード。
|
|
211
|
+
* 同じ名前の binding を二重登録すると Playwright が例外を投げるため。
|
|
212
|
+
*/
|
|
213
|
+
focusReportingExposed = false;
|
|
54
214
|
/**
|
|
55
215
|
* Get the currently active device emulation ID, or null if none.
|
|
56
216
|
*/
|
|
@@ -86,6 +246,7 @@ class BrowserSession {
|
|
|
86
246
|
this.page = await this.context.newPage();
|
|
87
247
|
this.attachPageListeners(this.page);
|
|
88
248
|
await this.enableFocusEmulation(this.page);
|
|
249
|
+
await this.enableFocusReporting(this.page);
|
|
89
250
|
return this.page;
|
|
90
251
|
}
|
|
91
252
|
/**
|
|
@@ -103,6 +264,83 @@ class BrowserSession {
|
|
|
103
264
|
logger_1.logger.warn(`[browser] Focus emulation not enabled: ${String(error)}`);
|
|
104
265
|
}
|
|
105
266
|
}
|
|
267
|
+
/**
|
|
268
|
+
* Install focus/value/selection reporting for simple input/textarea elements.
|
|
269
|
+
*
|
|
270
|
+
* Exposes the `__onBrowserFocus` binding once per session (guarded by
|
|
271
|
+
* `focusReportingExposed`; re-exposing the same name throws in Playwright),
|
|
272
|
+
* then injects FOCUS_REPORTING_SCRIPT both as an init script (for future
|
|
273
|
+
* navigations) and into the current document (for the already-loaded page).
|
|
274
|
+
* The script is idempotent via `window.__browserFocusReportingInstalled`.
|
|
275
|
+
*
|
|
276
|
+
* Binding exposure and script injection are wrapped in SEPARATE try/catch
|
|
277
|
+
* blocks so a partial failure stays isolated: a failed binding expose must
|
|
278
|
+
* not prevent the script from being injected, and a failed script injection
|
|
279
|
+
* must not flip `focusReportingExposed` back (which would later trigger a
|
|
280
|
+
* duplicate-name re-expose that throws). The `focusReportingExposed` guard is
|
|
281
|
+
* only set true after the expose actually succeeds, and only the expose path
|
|
282
|
+
* is gated by it — script injection is attempted on every page so it is not
|
|
283
|
+
* coupled to whether the binding was (re-)exposed this call.
|
|
284
|
+
*
|
|
285
|
+
* Mirrors enableFocusEmulation's policy: failures are logged via warn and
|
|
286
|
+
* never propagated — focus reporting is best-effort and not critical.
|
|
287
|
+
*/
|
|
288
|
+
async enableFocusReporting(page) {
|
|
289
|
+
if (!this.focusReportingExposed) {
|
|
290
|
+
try {
|
|
291
|
+
await page.exposeBinding('__onBrowserFocus', (_src, payload) => this.onFocusChange?.(payload));
|
|
292
|
+
this.focusReportingExposed = true;
|
|
293
|
+
}
|
|
294
|
+
catch (error) {
|
|
295
|
+
logger_1.logger.warn(`[browser] Focus reporting binding not exposed: ${String(error)}`);
|
|
296
|
+
}
|
|
297
|
+
}
|
|
298
|
+
try {
|
|
299
|
+
await page.addInitScript(exports.FOCUS_REPORTING_SCRIPT);
|
|
300
|
+
await page.evaluate(exports.FOCUS_REPORTING_SCRIPT);
|
|
301
|
+
}
|
|
302
|
+
catch (error) {
|
|
303
|
+
logger_1.logger.warn(`[browser] Focus reporting script not injected: ${String(error)}`);
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
/**
|
|
307
|
+
* Re-evaluate FOCUS_REPORTING_SCRIPT against the CURRENT document to force an
|
|
308
|
+
* immediate focus report.
|
|
309
|
+
*
|
|
310
|
+
* Needed after a navigation/goto: the document is replaced, so an element that
|
|
311
|
+
* the page autofocuses (e.g. a login field) is already focused by the time the
|
|
312
|
+
* agent regains control. `focusin` only fires on focus CHANGES, so without an
|
|
313
|
+
* explicit re-evaluation that element would never be reported and the overlay
|
|
314
|
+
* caret would never appear. The script's listener registration is idempotent
|
|
315
|
+
* (guarded), so this only triggers the initial report; the `__onBrowserFocus`
|
|
316
|
+
* binding is intentionally NOT re-exposed here (it is session-scoped and would
|
|
317
|
+
* throw on a duplicate name). No-op when no page is active; failures are warned
|
|
318
|
+
* and swallowed, mirroring enableFocusReporting's best-effort policy.
|
|
319
|
+
*/
|
|
320
|
+
async reportFocusNow() {
|
|
321
|
+
if (!this.page)
|
|
322
|
+
return;
|
|
323
|
+
try {
|
|
324
|
+
await this.page.evaluate(exports.FOCUS_REPORTING_SCRIPT);
|
|
325
|
+
}
|
|
326
|
+
catch (error) {
|
|
327
|
+
logger_1.logger.warn(`[browser] Focus re-report failed: ${String(error)}`);
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
/**
|
|
331
|
+
* Reflect a value into the currently-focused reporting-target input/textarea.
|
|
332
|
+
*
|
|
333
|
+
* Uses the native value setter + InputEvent('input') dispatch so controlled
|
|
334
|
+
* React components do not roll the value back, and applies the selection range
|
|
335
|
+
* when both bounds are provided. No-op when the active element is not a
|
|
336
|
+
* reporting target. Throws when no page is active.
|
|
337
|
+
*/
|
|
338
|
+
async setFocusedInputValue(value, selectionStart, selectionEnd) {
|
|
339
|
+
if (!this.page)
|
|
340
|
+
throw new Error('No active browser page');
|
|
341
|
+
this.resetIdleTimer();
|
|
342
|
+
await this.page.evaluate(exports.SET_FOCUSED_INPUT_VALUE_SCRIPT, { value, selectionStart, selectionEnd });
|
|
343
|
+
}
|
|
106
344
|
/**
|
|
107
345
|
* Check if a browser session is currently active.
|
|
108
346
|
*/
|
|
@@ -118,6 +356,9 @@ class BrowserSession {
|
|
|
118
356
|
this.closed = true;
|
|
119
357
|
this.pendingFileChooser = null;
|
|
120
358
|
this.onFileChooser = null;
|
|
359
|
+
// Symmetric with onFileChooser: drop the focus-change callback so a closed
|
|
360
|
+
// session cannot keep the Web-side WebSocket alive via this reference.
|
|
361
|
+
this.onFocusChange = null;
|
|
121
362
|
this.stopLiveView();
|
|
122
363
|
this.clearIdleTimer();
|
|
123
364
|
if (this.browser) {
|
|
@@ -183,6 +424,9 @@ class BrowserSession {
|
|
|
183
424
|
// ignore close errors
|
|
184
425
|
}
|
|
185
426
|
}
|
|
427
|
+
// The exposeBinding lives on the (now-closed) page; the fresh page below
|
|
428
|
+
// needs its own binding, so allow enableFocusReporting to re-expose it.
|
|
429
|
+
this.focusReportingExposed = false;
|
|
186
430
|
// Create new context with the desired userAgent
|
|
187
431
|
const contextOptions = {};
|
|
188
432
|
if (emulation) {
|
|
@@ -197,10 +441,17 @@ class BrowserSession {
|
|
|
197
441
|
this.page = await this.context.newPage();
|
|
198
442
|
this.attachPageListeners(this.page);
|
|
199
443
|
await this.enableFocusEmulation(this.page);
|
|
444
|
+
await this.enableFocusReporting(this.page);
|
|
200
445
|
// Navigate back to the previous URL
|
|
201
446
|
if (currentUrl && currentUrl !== 'about:blank') {
|
|
202
447
|
try {
|
|
203
448
|
await this.page.goto(currentUrl, { waitUntil: 'domcontentloaded' });
|
|
449
|
+
// Re-report focus on the freshly reloaded document: enableFocusReporting
|
|
450
|
+
// above re-wired the binding + listeners, but focusin only fires on focus
|
|
451
|
+
// CHANGES, so an element the page autofocuses (e.g. a login field) after
|
|
452
|
+
// this goto would otherwise never surface its overlay caret. Skip when no
|
|
453
|
+
// goto happened (about:blank path) — there is nothing newly loaded.
|
|
454
|
+
await this.reportFocusNow();
|
|
204
455
|
}
|
|
205
456
|
catch (error) {
|
|
206
457
|
logger_1.logger.debug(`[browser] Navigate after device change failed: ${String(error)}`);
|
|
@@ -364,6 +615,18 @@ class BrowserSession {
|
|
|
364
615
|
this.resetIdleTimer();
|
|
365
616
|
await this.page.mouse.move(x, y);
|
|
366
617
|
}
|
|
618
|
+
/**
|
|
619
|
+
* Read the CSS `cursor` value of the element at the given coordinates.
|
|
620
|
+
* Used by the live view to mirror the page's cursor shape on the web canvas.
|
|
621
|
+
* Throws when no page is active; propagates page.evaluate errors so the
|
|
622
|
+
* caller can skip the update for that frame.
|
|
623
|
+
*/
|
|
624
|
+
async getCursorAt(x, y) {
|
|
625
|
+
if (!this.page)
|
|
626
|
+
throw new Error('No active browser page');
|
|
627
|
+
this.resetIdleTimer();
|
|
628
|
+
return (0, element_info_1.getCursorAt)(this.page, x, y);
|
|
629
|
+
}
|
|
367
630
|
/**
|
|
368
631
|
* Move to (x, y) and press a mouse button without releasing it.
|
|
369
632
|
* Pair with executeMouseMove / executeMouseUp to perform drag-selection.
|
|
@@ -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":";AAAA;;;;GAIG;;;AAIH,4CAAwC;AACxC,6DAAuD;AACvD,mDAAyD;AACzD,qDAAkE;AAClE,iDAAsF;AACtF,2DAAoD;AAEpD;;;;GAIG;AACH,MAAM,wBAAwB,GAAG;;;;;;;;;;;;;EAa/B,CAAA;AAgDF;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACU,QAAA,sBAAsB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyFpC,CAAA;AAEF;;;;;;;;GAQG;AACU,QAAA,8BAA8B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2B5C,CAAA;AAEF,MAAa,cAAc;IACjB,OAAO,GAAmB,IAAI,CAAA;IAC9B,OAAO,GAA0B,IAAI,CAAA;IACrC,IAAI,GAAgB,IAAI,CAAA;IACxB,SAAS,GAAyC,IAAI,CAAA;IAC7C,aAAa,CAAQ;IAC9B,gBAAgB,GAA0C,IAAI,CAAA;IAC9D,iBAAiB,GAAwB,IAAI,CAAA;IAC7C,cAAc,GAAyC,IAAI,CAAA;IAC3D,gBAAgB,GAAsC,IAAI,CAAA;IAC1D,gBAAgB,GAAkB,IAAI,CAAA;IACtC,MAAM,GAAG,KAAK,CAAA;IACL,QAAQ,CAAa;IAC9B,kBAAkB,GAAuB,IAAI,CAAA;IACrD;;;;OAIG;IACH,aAAa,GAA4E,IAAI,CAAA;IAE7F;;;OAGG;IACH,aAAa,GAAmD,IAAI,CAAA;IAEpE;;;OAGG;IACK,qBAAqB,GAAG,KAAK,CAAA;IAErC;;OAEG;IACH,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,gBAAgB,CAAA;IAC9B,CAAC;IAED,yCAAyC;IAChC,SAAS,GAAG,IAAI,GAAG,EAAkB,CAAA;IAE9C,kDAAkD;IACzC,SAAS,GAAG,IAAI,qCAAgB,EAAE,CAAA;IAE3C,YAAY,gBAAwB,uCAAuB,EAAE,QAAqB;QAChF,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;QAClC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC1B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO;QACX,IAAI,CAAC,cAAc,EAAE,CAAA;QAErB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,OAAO,IAAI,CAAC,IAAI,CAAA;QAClB,CAAC;QAED,MAAM,EAAE,GAAG,IAAA,kCAAc,GAAE,CAAA;QAC3B,eAAM,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAA;QACvD,IAAI,CAAC,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;YACtC,QAAQ,EAAE,IAAI;YACd,IAAI,EAAE,CAAC,cAAc,EAAE,0BAA0B,CAAC;SACnD,CAAC,CAAA;QACF,oEAAoE;QACpE,IAAI,CAAC,OAAO,GAAG,MAAM,IAAI,CAAC,OAAQ,CAAC,UAAU,EAAE,CAAA;QAC/C,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACzC,oEAAoE;QACpE,IAAI,CAAC,IAAI,GAAG,MAAM,IAAI,CAAC,OAAQ,CAAC,OAAO,EAAE,CAAA;QACzC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACnC,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC1C,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAE1C,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,oBAAoB,CAAC,IAAU;QAC3C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;YACvD,MAAM,MAAM,CAAC,IAAI,CAAC,oCAAoC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;QAC5E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,eAAM,CAAC,IAAI,CAAC,0CAA0C,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QACxE,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACK,KAAK,CAAC,oBAAoB,CAAC,IAAU;QAC3C,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAChC,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,aAAa,CACtB,kBAAkB,EAClB,CAAC,IAAI,EAAE,OAA2B,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,CACrE,CAAA;gBACD,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAA;YACnC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,eAAM,CAAC,IAAI,CAAC,kDAAkD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YAChF,CAAC;QACH,CAAC;QACD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,aAAa,CAAC,8BAAsB,CAAC,CAAA;YAChD,MAAM,IAAI,CAAC,QAAQ,CAAC,8BAAsB,CAAC,CAAA;QAC7C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,eAAM,CAAC,IAAI,CAAC,kDAAkD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QAChF,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,cAAc;QAClB,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,OAAM;QACtB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,8BAAsB,CAAC,CAAA;QAClD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,eAAM,CAAC,IAAI,CAAC,qCAAqC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QACnE,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,oBAAoB,CACxB,KAAa,EACb,cAAuB,EACvB,YAAqB;QAErB,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;QACzD,IAAI,CAAC,cAAc,EAAE,CAAA;QACrB,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,sCAA8B,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAA;IACnG,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,OAAO,KAAK,IAAI,CAAA;IAC9B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,MAAM;YAAE,OAAM;QACvB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;QAClB,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAA;QAC9B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAA;QACzB,2EAA2E;QAC3E,uEAAuE;QACvE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAA;QACzB,IAAI,CAAC,YAAY,EAAE,CAAA;QACnB,IAAI,CAAC,cAAc,EAAE,CAAA;QACrB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,eAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAA;YACzC,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;YAC5B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,eAAM,CAAC,KAAK,CAAC,oCAAoC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YACnE,CAAC;YACD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;YACnB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;YACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAClB,CAAC;QACD,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAA;IACnB,CAAC;IAED;;;;;OAKG;IACK,sBAAsB,CAAC,OAAuB;QACpD,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAO,EAAE,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAA;IAC9D,CAAC;IAEO,mBAAmB,CAAC,IAAU;QACpC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,EAAe,EAAE,EAAE;YACzC,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAA;YAC5B,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACvB,uEAAuE;gBACvE,qEAAqE;gBACrE,IAAI,CAAC,aAAa,CAAC,CAAC,KAAyB,EAAiB,EAAE;oBAC9D,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAA;oBACvC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAA;oBAC9B,IAAI,CAAC,OAAO;wBAAE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;oBACtC,OAAO,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;gBAChC,CAAC,CAAC,CAAA;YACJ,CAAC;iBAAM,CAAC;gBACN,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;gBAC/B,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAA;YAChC,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,kBAAkB,CAAC,SAAiC;QACxD,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAM;QAEzB,qBAAqB;QACrB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,aAAa,CAAA;QAC9D,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,CAAA;QAEjF,kDAAkD;QAClD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;YAC5B,CAAC;YAAC,MAAM,CAAC;gBACP,sBAAsB;YACxB,CAAC;QACH,CAAC;QACD,yEAAyE;QACzE,wEAAwE;QACxE,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAA;QAElC,gDAAgD;QAChD,MAAM,cAAc,GAA4B,EAAE,CAAA;QAClD,IAAI,SAAS,EAAE,CAAC;YACd,cAAc,CAAC,SAAS,GAAG,SAAS,CAAC,SAAS,CAAA;YAC9C,cAAc,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAA;YAC5C,cAAc,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAA;YAC5C,cAAc,CAAC,iBAAiB,GAAG,SAAS,CAAC,iBAAiB,CAAA;QAChE,CAAC;QACD,cAAc,CAAC,QAAQ,GAAG,eAAe,CAAA;QAEzC,IAAI,CAAC,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CAAA;QAC5D,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACzC,IAAI,CAAC,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAA;QACxC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACnC,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC1C,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAE1C,oCAAoC;QACpC,IAAI,UAAU,IAAI,UAAU,KAAK,aAAa,EAAE,CAAC;YAC/C,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,kBAAkB,EAAE,CAAC,CAAA;gBACnE,yEAAyE;gBACzE,0EAA0E;gBAC1E,yEAAyE;gBACzE,0EAA0E;gBAC1E,oEAAoE;gBACpE,MAAM,IAAI,CAAC,cAAc,EAAE,CAAA;YAC7B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,eAAM,CAAC,KAAK,CAAC,kDAAkD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YACjF,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,WAAW,CAAC,KAAa,EAAE,MAAc,EAAE,QAAiB;QAChE,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,CAAC,IAAI,CAAC,gBAAgB,IAAI,EAAE,CAAC,EAAE,CAAC;YACzE,yDAAyD;YACzD,MAAM,IAAI,CAAC,OAAO,EAAE,CAAA;YACpB,uCAAuC;YACvC,2BAA2B;YAC3B,IAAI,QAAQ,KAAK,EAAE,EAAE,CAAC;gBACpB,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAA;gBACnC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAA;YAC9B,CAAC;iBAAM,CAAC;gBACN,MAAM,MAAM,GAAG,+BAAc,CAAC,QAAQ,CAAC,CAAA;gBACvC,IAAI,MAAM,EAAE,CAAC;oBACX,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAA;oBACrC,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAA;gBAClC,CAAC;YACH,CAAC;YACD,mCAAmC;YACnC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAA;YACjC,MAAM,IAAI,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;QAC/C,CAAC;aAAM,CAAC;YACN,0BAA0B;YAC1B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAA;YACjC,MAAM,IAAI,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;QAC/C,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,WAAoB,IAAI;QACvC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAA;QACjC,OAAO,IAAI,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,CAAoB,CAAA;IACtE,CAAC;IAED,oBAAoB;IAEpB;;;;OAIG;IACH,aAAa,CAAC,UAAkB,EAAE,OAAiC;QACjE,IAAI,CAAC,YAAY,EAAE,CAAA;QACnB,IAAI,CAAC,cAAc,EAAE,CAAA,CAAC,wCAAwC;QAC9D,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAA;QAE/B,IAAI,SAAS,GAAG,KAAK,CAAA;QACrB,IAAI,CAAC,gBAAgB,GAAG,WAAW,CAAC,GAAG,EAAE;YACvC,IAAI,SAAS,IAAI,CAAC,IAAI,CAAC,IAAI;gBAAE,OAAM;YACnC,SAAS,GAAG,IAAI,CAAA;YAChB,KAAK,CAAC,KAAK,IAAI,EAAE;gBACf,IAAI,CAAC;oBACH,oEAAoE;oBACpE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAK,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,CAAW,CAAA;oBACpG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAA;gBACpC,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,eAAM,CAAC,KAAK,CAAC,yCAAyC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;gBACxE,CAAC;wBAAS,CAAC;oBACT,SAAS,GAAG,KAAK,CAAA;gBACnB,CAAC;YACH,CAAC,CAAC,EAAE,CAAA;QACN,CAAC,EAAE,UAAU,CAAC,CAAA;QAEd,2FAA2F;QAC3F,IAAI,CAAC,iBAAiB,GAAG,GAAG,EAAE;YAC5B,IAAI,IAAI,CAAC,cAAc;gBAAE,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;YAC1D,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,GAAG,EAAE;gBACpC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAA;gBAC1B,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,gBAAgB;oBAAE,OAAM;gBAChD,KAAK,CAAC,KAAK,IAAI,EAAE;oBACf,IAAI,CAAC;wBACH,oEAAoE;wBACpE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAK,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,CAAW,CAAA;wBACpG,IAAI,CAAC,gBAAgB,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAA;oBACpD,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,eAAM,CAAC,KAAK,CAAC,sCAAsC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;oBACrE,CAAC;gBACH,CAAC,CAAC,EAAE,CAAA;YACN,CAAC,EAAE,EAAE,CAAC,CAAA;QACR,CAAC,CAAA;QAED,eAAM,CAAC,KAAK,CAAC,yCAAyC,UAAU,KAAK,CAAC,CAAA;IACxE,CAAC;IAED;;OAEG;IACH,YAAY;QACV,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;YACpC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAA;YAC5B,eAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAA;QAC7C,CAAC;QACD,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;YACjC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAA;QAC5B,CAAC;QACD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAA;QAC7B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAA;QAC5B,yBAAyB;QACzB,IAAI,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;YACpB,IAAI,CAAC,cAAc,EAAE,CAAA;QACvB,CAAC;IACH,CAAC;IAED;;OAEG;IACH,gBAAgB;QACd,OAAO,IAAI,CAAC,gBAAgB,KAAK,IAAI,CAAA;IACvC,CAAC;IAED,6BAA6B;IAE7B;;OAEG;IACH,KAAK,CAAC,iBAAiB,CAAC,CAAS,EAAE,CAAS,EAAE,MAAe,EAAE,UAAmB;QAChF,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;QACzD,IAAI,CAAC,cAAc,EAAE,CAAA;QAErB,mEAAmE;QACnE,MAAM,WAAW,GAAG,MAAM,IAAA,gCAAiB,EAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QAE5D,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE;YAChC,MAAM,EAAG,MAAkD,IAAI,MAAM;YACrE,UAAU,EAAE,UAAU,IAAI,CAAC;SAC5B,CAAC,CAAA;QAEF,gEAAgE;QAChE,MAAM,OAAO,GAAG,WAAW;YACzB,CAAC,CAAC,WAAW,CAAC,QAAQ;YACtB,CAAC,CAAC,oBAAoB,CAAC,KAAK,CAAC,GAAG,CAAA;QAClC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;IAChD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB,CAAC,MAAc,EAAE,MAAc;QACpD,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;QACzD,IAAI,CAAC,cAAc,EAAE,CAAA;QACrB,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAC3C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,UAAU,MAAM,WAAW,MAAM,EAAE,CAAC,CAAA;IAC7E,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,gBAAgB,CAAC,CAAS,EAAE,CAAS;QACzC,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;QACzD,IAAI,CAAC,cAAc,EAAE,CAAA;QACrB,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAClC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,WAAW,CAAC,CAAS,EAAE,CAAS;QACpC,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;QACzD,IAAI,CAAC,cAAc,EAAE,CAAA;QACrB,OAAO,IAAA,0BAAW,EAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IACrC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,gBAAgB,CAAC,CAAS,EAAE,CAAS,EAAE,MAAe;QAC1D,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;QACzD,IAAI,CAAC,cAAc,EAAE,CAAA;QACrB,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QAChC,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAG,MAAkD,IAAI,MAAM,EAAE,CAAC,CAAA;IACvG,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,cAAc,CAAC,CAAS,EAAE,CAAS,EAAE,MAAe;QACxD,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;QACzD,IAAI,CAAC,cAAc,EAAE,CAAA;QACrB,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QAChC,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,MAAM,EAAG,MAAkD,IAAI,MAAM,EAAE,CAAC,CAAA;IACrG,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,mBAAmB,CAAC,IAAY;QACpC,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;QACzD,IAAI,CAAC,cAAc,EAAE,CAAA;QAErB,kDAAkD;QAClD,MAAM,WAAW,GAAG,MAAM,IAAA,oCAAqB,EAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAE1D,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAEnC,8EAA8E;QAC9E,IAAI,WAAW,IAAI,CAAC,WAAW,CAAC,OAAO,KAAK,OAAO,IAAI,WAAW,CAAC,OAAO,KAAK,UAAU,IAAI,WAAW,CAAC,OAAO,KAAK,QAAQ,CAAC,EAAE,CAAC;YAC/H,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,WAAW,CAAC,QAAQ,KAAK,IAAI,GAAG,CAAC,CAAA;QAC3E,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;QAC5C,CAAC;QAED,IAAI,CAAC,iBAAiB,EAAE,EAAE,CAAA;IAC5B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,oBAAoB,CAAC,GAAW,EAAE,SAAoB;QAC1D,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;QACzD,IAAI,CAAC,cAAc,EAAE,CAAA;QAErB,IAAI,SAAS,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtC,MAAM,KAAK,GAAG,CAAC,GAAG,SAAS,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAC3C,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QACvC,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACrC,CAAC;QAED,MAAM,MAAM,GAAG,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAA;QACxE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAE7C,IAAI,CAAC,iBAAiB,EAAE,EAAE,CAAA;IAC5B,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,eAAe;QACnB,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;QACzD,IAAI,CAAC,cAAc,EAAE,CAAA;QAErB,4CAA4C;QAC5C,0DAA0D;QAC1D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAA;QACjE,OAAO,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAA;IACjD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM;QACV,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;QACzD,IAAI,CAAC,cAAc,EAAE,CAAA;QACrB,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAA;QACxB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAA;IAC/D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS;QACb,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;QACzD,IAAI,CAAC,cAAc,EAAE,CAAA;QACrB,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAA;QAC3B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAA;IAClE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM;QACV,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;QACzD,IAAI,CAAC,cAAc,EAAE,CAAA;QACrB,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAA;QACxB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAA;IAC9D,CAAC;IAED;;OAEG;IACH,aAAa;QACX,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,OAAO,EAAE,CAAA;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAY,CAAA;IAClC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY;QAChB,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,OAAO,EAAE,CAAA;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,EAAqB,CAAA;IAC7C,CAAC;IAEO,cAAc;QACpB,IAAI,CAAC,cAAc,EAAE,CAAA;QACrB,wCAAwC;QACxC,IAAI,IAAI,CAAC,gBAAgB;YAAE,OAAM;QACjC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;YAC/B,eAAM,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAA;YAC/D,KAAK,IAAI,CAAC,KAAK,EAAE,CAAA;QACnB,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,CAAA;IACxB,CAAC;IAEO,cAAc;QACpB,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YAC5B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;QACvB,CAAC;IACH,CAAC;CACF;AApmBD,wCAomBC"}
|
|
@@ -32,6 +32,15 @@ export declare function getElementAtPoint(page: Page, x: number, y: number): Pro
|
|
|
32
32
|
* Returns null if no element is focused or on error.
|
|
33
33
|
*/
|
|
34
34
|
export declare function getFocusedElementInfo(page: Page): Promise<ElementInfo | null>;
|
|
35
|
+
/**
|
|
36
|
+
* Get the CSS `cursor` value of the element at the given coordinates.
|
|
37
|
+
*
|
|
38
|
+
* Returns 'default' when no element is at the point or the computed cursor is
|
|
39
|
+
* empty/non-string. Unlike getElementAtPoint, this does NOT swallow evaluate
|
|
40
|
+
* errors: it re-throws so the caller (mouse-move handler) can skip sending a
|
|
41
|
+
* cursor update for that frame instead of reporting a misleading 'default'.
|
|
42
|
+
*/
|
|
43
|
+
export declare function getCursorAt(page: Page, x: number, y: number): Promise<string>;
|
|
35
44
|
/**
|
|
36
45
|
* Format ElementInfo into a human-readable, Playwright-actionable string.
|
|
37
46
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"element-info.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/browser/element-info.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAEtC,iDAAiD;AACjD,MAAM,WAAW,WAAW;IAC1B,yFAAyF;IACzF,QAAQ,EAAE,MAAM,CAAA;IAChB,8CAA8C;IAC9C,OAAO,EAAE,MAAM,CAAA;IACf,mFAAmF;IACnF,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,uCAAuC;IACvC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,2CAA2C;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,wDAAwD;IACxD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,qBAAqB;IACrB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;
|
|
1
|
+
{"version":3,"file":"element-info.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/browser/element-info.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAEtC,iDAAiD;AACjD,MAAM,WAAW,WAAW;IAC1B,yFAAyF;IACzF,QAAQ,EAAE,MAAM,CAAA;IAChB,8CAA8C;IAC9C,OAAO,EAAE,MAAM,CAAA;IACf,mFAAmF;IACnF,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,uCAAuC;IACvC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,2CAA2C;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,wDAAwD;IACxD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,qBAAqB;IACrB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAmLD;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAMrG;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAMnF;AAED;;;;;;;GAOG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAGnF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,CAiB3D"}
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.getElementAtPoint = getElementAtPoint;
|
|
10
10
|
exports.getFocusedElementInfo = getFocusedElementInfo;
|
|
11
|
+
exports.getCursorAt = getCursorAt;
|
|
11
12
|
exports.formatElementInfo = formatElementInfo;
|
|
12
13
|
/**
|
|
13
14
|
* JavaScript to run in the browser via page.evaluate() to extract element info.
|
|
@@ -114,6 +115,17 @@ const ELEMENT_AT_POINT_SCRIPT = `(point) => {
|
|
|
114
115
|
return '';
|
|
115
116
|
}
|
|
116
117
|
}`;
|
|
118
|
+
/**
|
|
119
|
+
* JavaScript to read the CSS `cursor` value of the element at a point.
|
|
120
|
+
* Mirrors ELEMENT_AT_POINT_SCRIPT's string-script convention so the browser
|
|
121
|
+
* context (not Node) resolves DOM types. Returns 'default' when no element is
|
|
122
|
+
* found or the computed cursor is empty.
|
|
123
|
+
*/
|
|
124
|
+
const CURSOR_AT_POINT_SCRIPT = `(point) => {
|
|
125
|
+
const el = document.elementFromPoint(point.x, point.y);
|
|
126
|
+
if (!el) return 'default';
|
|
127
|
+
return getComputedStyle(el).cursor || 'default';
|
|
128
|
+
}`;
|
|
117
129
|
/**
|
|
118
130
|
* JavaScript to extract info about the currently focused element.
|
|
119
131
|
*/
|
|
@@ -196,6 +208,18 @@ async function getFocusedElementInfo(page) {
|
|
|
196
208
|
return null;
|
|
197
209
|
}
|
|
198
210
|
}
|
|
211
|
+
/**
|
|
212
|
+
* Get the CSS `cursor` value of the element at the given coordinates.
|
|
213
|
+
*
|
|
214
|
+
* Returns 'default' when no element is at the point or the computed cursor is
|
|
215
|
+
* empty/non-string. Unlike getElementAtPoint, this does NOT swallow evaluate
|
|
216
|
+
* errors: it re-throws so the caller (mouse-move handler) can skip sending a
|
|
217
|
+
* cursor update for that frame instead of reporting a misleading 'default'.
|
|
218
|
+
*/
|
|
219
|
+
async function getCursorAt(page, x, y) {
|
|
220
|
+
const result = await page.evaluate(CURSOR_AT_POINT_SCRIPT, { x, y });
|
|
221
|
+
return typeof result === 'string' ? result : 'default';
|
|
222
|
+
}
|
|
199
223
|
/**
|
|
200
224
|
* Format ElementInfo into a human-readable, Playwright-actionable string.
|
|
201
225
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"element-info.js","sourceRoot":"","sources":["../../../../src/mcp/tools/browser/element-info.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;
|
|
1
|
+
{"version":3,"file":"element-info.js","sourceRoot":"","sources":["../../../../src/mcp/tools/browser/element-info.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AA2MH,8CAMC;AAMD,sDAMC;AAUD,kCAGC;AAKD,8CAiBC;AA1OD;;;GAGG;AACH,MAAM,uBAAuB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoG9B,CAAA;AAEF;;;;;GAKG;AACH,MAAM,sBAAsB,GAAG;;;;EAI7B,CAAA;AAEF;;GAEG;AACH,MAAM,sBAAsB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsD7B,CAAA;AAEF;;;GAGG;AACI,KAAK,UAAU,iBAAiB,CAAC,IAAU,EAAE,CAAS,EAAE,CAAS;IACtE,IAAI,CAAC;QACH,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,uBAAuB,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAuB,CAAA;IACrF,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,qBAAqB,CAAC,IAAU;IACpD,IAAI,CAAC;QACH,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAuB,CAAA;IAC1E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,WAAW,CAAC,IAAU,EAAE,CAAS,EAAE,CAAS;IAChE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,sBAAsB,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;IACpE,OAAO,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAA;AACxD,CAAC;AAED;;GAEG;AACH,SAAgB,iBAAiB,CAAC,IAAiB;IACjD,MAAM,KAAK,GAAa,EAAE,CAAA;IAE1B,oEAAoE;IACpE,KAAK,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAA;IAEzC,sBAAsB;IACtB,MAAM,IAAI,GAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACrC,IAAI,IAAI,CAAC,IAAI;QAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;IAC7C,IAAI,IAAI,CAAC,IAAI;QAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;IAC7C,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAEjC,IAAI,IAAI,CAAC,KAAK;QAAE,KAAK,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,KAAK,GAAG,CAAC,CAAA;IACnD,IAAI,IAAI,CAAC,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,GAAG,CAAC,CAAA;IAChD,IAAI,IAAI,CAAC,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,GAAG,CAAC,CAAA;IAEhD,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AACxB,CAAC"}
|
|
@@ -6,7 +6,7 @@ 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_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';
|
|
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' | 'browser_set_input_value';
|
|
10
10
|
filePaths?: string[];
|
|
11
11
|
files?: Array<{
|
|
12
12
|
name: string;
|
|
@@ -41,12 +41,15 @@ export interface VsCodeServerMessage {
|
|
|
41
41
|
height?: number;
|
|
42
42
|
deviceId?: string;
|
|
43
43
|
script?: string;
|
|
44
|
+
value?: string;
|
|
45
|
+
selectionStart?: number;
|
|
46
|
+
selectionEnd?: number;
|
|
44
47
|
}
|
|
45
48
|
/**
|
|
46
49
|
* Agent → API Server メッセージ
|
|
47
50
|
*/
|
|
48
51
|
export interface VsCodeAgentMessage {
|
|
49
|
-
type: 'vscode_ready' | 'vscode_stopped' | 'port_forward_ready' | 'port_forward_stopped' | 'http_response' | 'ws_frame' | 'error' | 'browser_ready' | 'browser_frame' | 'browser_screenshot_result' | 'browser_selection_result' | 'browser_action_log' | 'browser_stopped' | 'browser_script_result' | 'browser_script_progress' | 'browser_file_chooser_opened';
|
|
52
|
+
type: 'vscode_ready' | 'vscode_stopped' | 'port_forward_ready' | 'port_forward_stopped' | 'http_response' | 'ws_frame' | 'error' | 'browser_ready' | 'browser_frame' | 'browser_screenshot_result' | 'browser_selection_result' | 'browser_action_log' | 'browser_stopped' | 'browser_script_result' | 'browser_script_progress' | 'browser_file_chooser_opened' | 'browser_cursor_update' | 'browser_focus_changed';
|
|
50
53
|
sessionId?: string;
|
|
51
54
|
targetPort?: number;
|
|
52
55
|
requestId?: string;
|
|
@@ -87,6 +90,26 @@ export interface VsCodeAgentMessage {
|
|
|
87
90
|
step?: number;
|
|
88
91
|
line?: string;
|
|
89
92
|
script?: string;
|
|
93
|
+
/** CSS cursor value at the last mouse-move point (browser_cursor_update) */
|
|
94
|
+
cursor?: string;
|
|
95
|
+
focused?: boolean;
|
|
96
|
+
rect?: {
|
|
97
|
+
x: number;
|
|
98
|
+
y: number;
|
|
99
|
+
width: number;
|
|
100
|
+
height: number;
|
|
101
|
+
};
|
|
102
|
+
value?: string;
|
|
103
|
+
selectionStart?: number;
|
|
104
|
+
selectionEnd?: number;
|
|
105
|
+
multiline?: boolean;
|
|
106
|
+
inputType?: string;
|
|
107
|
+
maxLength?: number;
|
|
108
|
+
fontSize?: number;
|
|
109
|
+
lineHeight?: number;
|
|
110
|
+
textAlign?: string;
|
|
111
|
+
paddingTop?: number;
|
|
112
|
+
paddingLeft?: number;
|
|
90
113
|
}
|
|
91
114
|
/**
|
|
92
115
|
* VS Code トンネル WebSocket
|
|
@@ -118,6 +141,11 @@ export declare class VsCodeTunnelWebSocket extends BaseWebSocketConnection<VsCod
|
|
|
118
141
|
private browserLocalServer;
|
|
119
142
|
private browserLocalPort;
|
|
120
143
|
private readonly pendingFileChoosers;
|
|
144
|
+
/**
|
|
145
|
+
* Last CSS cursor value sent per browser session. Used to suppress redundant
|
|
146
|
+
* browser_cursor_update messages: only send when the cursor shape changes.
|
|
147
|
+
*/
|
|
148
|
+
private readonly lastSentCursor;
|
|
121
149
|
constructor(apiUrl: string, token: string, agentId: string, projectDir?: string | undefined,
|
|
122
150
|
/**
|
|
123
151
|
* code-server セッション起動時に最新の envVars を取り出す関数。
|
|
@@ -169,6 +197,7 @@ export declare class VsCodeTunnelWebSocket extends BaseWebSocketConnection<VsCod
|
|
|
169
197
|
private handleBrowserKeyboardPress;
|
|
170
198
|
private handleBrowserScreenshot;
|
|
171
199
|
private handleBrowserGetSelection;
|
|
200
|
+
private handleBrowserSetInputValue;
|
|
172
201
|
private handleBrowserExecuteScript;
|
|
173
202
|
private handleBrowserViewport;
|
|
174
203
|
private handleBrowserSetFile;
|
|
@@ -1 +1 @@
|
|
|
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;
|
|
1
|
+
{"version":3,"file":"vscode-tunnel-websocket.d.ts","sourceRoot":"","sources":["../../src/vscode/vscode-tunnel-websocket.ts"],"names":[],"mappings":"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"}
|
|
@@ -108,6 +108,11 @@ class VsCodeTunnelWebSocket extends base_websocket_1.BaseWebSocketConnection {
|
|
|
108
108
|
browserLocalServer = null;
|
|
109
109
|
browserLocalPort = 0;
|
|
110
110
|
pendingFileChoosers = new Map();
|
|
111
|
+
/**
|
|
112
|
+
* Last CSS cursor value sent per browser session. Used to suppress redundant
|
|
113
|
+
* browser_cursor_update messages: only send when the cursor shape changes.
|
|
114
|
+
*/
|
|
115
|
+
lastSentCursor = new Map();
|
|
111
116
|
constructor(apiUrl, token, agentId, projectDir,
|
|
112
117
|
/**
|
|
113
118
|
* code-server セッション起動時に最新の envVars を取り出す関数。
|
|
@@ -266,6 +271,9 @@ class VsCodeTunnelWebSocket extends base_websocket_1.BaseWebSocketConnection {
|
|
|
266
271
|
case 'browser_get_selection':
|
|
267
272
|
void this.handleBrowserGetSelection(msg);
|
|
268
273
|
break;
|
|
274
|
+
case 'browser_set_input_value':
|
|
275
|
+
void this.handleBrowserSetInputValue(msg);
|
|
276
|
+
break;
|
|
269
277
|
default:
|
|
270
278
|
logger_1.logger.debug(`[vscode-ws] Unknown message type: ${msg.type}`);
|
|
271
279
|
}
|
|
@@ -510,6 +518,14 @@ class VsCodeTunnelWebSocket extends base_websocket_1.BaseWebSocketConnection {
|
|
|
510
518
|
this.sendMissingSessionIdError();
|
|
511
519
|
return;
|
|
512
520
|
}
|
|
521
|
+
// Reset any stale cursor state for this sessionId on (re)open. The idle-timeout
|
|
522
|
+
// auto-close path closes a session via BrowserSessionManager WITHOUT routing
|
|
523
|
+
// through handleBrowserClose/cleanup, so lastSentCursor can survive a closed
|
|
524
|
+
// session. If the same sessionId is later re-opened, a stale entry would make
|
|
525
|
+
// the first mouse-move's cursor look "unchanged" and suppress the initial
|
|
526
|
+
// browser_cursor_update, freezing the client cursor at the previous session's
|
|
527
|
+
// last shape. Deleting here guarantees the first move after (re)open is sent.
|
|
528
|
+
this.lastSentCursor.delete(sessionId);
|
|
513
529
|
try {
|
|
514
530
|
const session = await this.browserSessionManager.getOrCreate(sessionId);
|
|
515
531
|
// Wire up action log notifications so in-process operations are relayed to Web UI
|
|
@@ -525,6 +541,11 @@ class VsCodeTunnelWebSocket extends base_websocket_1.BaseWebSocketConnection {
|
|
|
525
541
|
this.pendingFileChoosers.set(sessionId, accept);
|
|
526
542
|
this.send({ type: 'browser_file_chooser_opened', sessionId });
|
|
527
543
|
};
|
|
544
|
+
// Wire up focus-change notifications so the Web client can overlay a real
|
|
545
|
+
// input/textarea on the focused element (native caret + IME).
|
|
546
|
+
session.onFocusChange = (payload) => {
|
|
547
|
+
this.send({ type: 'browser_focus_changed', sessionId, ...payload });
|
|
548
|
+
};
|
|
528
549
|
if (msg.conversationId) {
|
|
529
550
|
this.browserSessionManager.linkConversation(msg.conversationId, sessionId);
|
|
530
551
|
}
|
|
@@ -534,6 +555,10 @@ class VsCodeTunnelWebSocket extends base_websocket_1.BaseWebSocketConnection {
|
|
|
534
555
|
if (validation.valid) {
|
|
535
556
|
const page = await session.getPage();
|
|
536
557
|
await page.goto(msg.url, { waitUntil: 'domcontentloaded', timeout: 30000 });
|
|
558
|
+
// Re-report focus on the freshly loaded document so an autofocused
|
|
559
|
+
// field (e.g. a login form) surfaces its overlay caret without a
|
|
560
|
+
// subsequent focus change. focusin only fires on focus CHANGES.
|
|
561
|
+
await session.reportFocusNow();
|
|
537
562
|
}
|
|
538
563
|
}
|
|
539
564
|
else {
|
|
@@ -581,6 +606,7 @@ class VsCodeTunnelWebSocket extends base_websocket_1.BaseWebSocketConnection {
|
|
|
581
606
|
await this.browserSessionManager.close(sessionId);
|
|
582
607
|
}
|
|
583
608
|
this.pendingFileChoosers.delete(sessionId);
|
|
609
|
+
this.lastSentCursor.delete(sessionId);
|
|
584
610
|
this.send({ type: 'browser_stopped', sessionId, reason: 'closed' });
|
|
585
611
|
logger_1.logger.info(`[vscode-ws] Browser session closed: ${sessionId}`);
|
|
586
612
|
}
|
|
@@ -601,7 +627,13 @@ class VsCodeTunnelWebSocket extends base_websocket_1.BaseWebSocketConnection {
|
|
|
601
627
|
try {
|
|
602
628
|
const page = await session.getPage();
|
|
603
629
|
await page.goto(msg.url, { waitUntil: 'domcontentloaded', timeout: 30000 });
|
|
630
|
+
// Record the navigation BEFORE the focus re-report so the action-log entry
|
|
631
|
+
// never depends on reportFocusNow succeeding (it already swallows its own
|
|
632
|
+
// errors, but keeping the log independent guards against future changes).
|
|
604
633
|
session.actionLog.add('direct', 'navigate', msg.url);
|
|
634
|
+
// Re-report focus on the freshly loaded document so an autofocused field
|
|
635
|
+
// surfaces its overlay caret (focusin only fires on focus CHANGES).
|
|
636
|
+
await session.reportFocusNow();
|
|
605
637
|
}
|
|
606
638
|
catch (error) {
|
|
607
639
|
this.send({ type: 'error', sessionId, message: `Navigation failed: ${(0, utils_1.getErrorMessage)(error)}` });
|
|
@@ -656,8 +688,9 @@ class VsCodeTunnelWebSocket extends base_websocket_1.BaseWebSocketConnection {
|
|
|
656
688
|
}
|
|
657
689
|
}
|
|
658
690
|
async handleBrowserMouseMove(msg) {
|
|
659
|
-
const
|
|
660
|
-
|
|
691
|
+
const sessionId = msg.sessionId;
|
|
692
|
+
const session = sessionId ? this.browserSessionManager.get(sessionId) : undefined;
|
|
693
|
+
if (!session || !sessionId || msg.x === undefined || msg.y === undefined)
|
|
661
694
|
return;
|
|
662
695
|
try {
|
|
663
696
|
await session.executeMouseMove(msg.x, msg.y);
|
|
@@ -667,7 +700,24 @@ class VsCodeTunnelWebSocket extends base_websocket_1.BaseWebSocketConnection {
|
|
|
667
700
|
// navigation) is intentionally logged but NOT surfaced as an `error` message
|
|
668
701
|
// to the web client, to avoid error spam during drag-selection. Unlike
|
|
669
702
|
// mouse_down / mouse_up, a dropped move does not leave the page in a broken state.
|
|
670
|
-
logger_1.logger.warn(`[vscode-ws] mouseMove failed (session=${
|
|
703
|
+
logger_1.logger.warn(`[vscode-ws] mouseMove failed (session=${sessionId}): ${(0, utils_1.getErrorMessage)(error)}`);
|
|
704
|
+
return;
|
|
705
|
+
}
|
|
706
|
+
// Best-effort cursor-shape mirroring: read the CSS cursor at the point and,
|
|
707
|
+
// only when it differs from the last value sent for this session, forward a
|
|
708
|
+
// browser_cursor_update. A failed read is logged (not silently swallowed)
|
|
709
|
+
// and skips the update for this frame rather than spamming an error message.
|
|
710
|
+
let cursor;
|
|
711
|
+
try {
|
|
712
|
+
cursor = await session.getCursorAt(msg.x, msg.y);
|
|
713
|
+
}
|
|
714
|
+
catch (error) {
|
|
715
|
+
logger_1.logger.warn(`[vscode-ws] getCursorAt failed (session=${sessionId}): ${(0, utils_1.getErrorMessage)(error)}`);
|
|
716
|
+
return;
|
|
717
|
+
}
|
|
718
|
+
if (this.lastSentCursor.get(sessionId) !== cursor) {
|
|
719
|
+
this.lastSentCursor.set(sessionId, cursor);
|
|
720
|
+
this.send({ type: 'browser_cursor_update', sessionId, cursor });
|
|
671
721
|
}
|
|
672
722
|
}
|
|
673
723
|
async handleBrowserMouseDown(msg) {
|
|
@@ -773,6 +823,21 @@ class VsCodeTunnelWebSocket extends base_websocket_1.BaseWebSocketConnection {
|
|
|
773
823
|
this.send({ type: 'error', sessionId, message: `getSelection failed: ${(0, utils_1.getErrorMessage)(error)}` });
|
|
774
824
|
}
|
|
775
825
|
}
|
|
826
|
+
async handleBrowserSetInputValue(msg) {
|
|
827
|
+
const session = msg.sessionId ? this.browserSessionManager.get(msg.sessionId) : undefined;
|
|
828
|
+
if (!session)
|
|
829
|
+
return;
|
|
830
|
+
// The contract requires `value` to be a string; ignore malformed payloads.
|
|
831
|
+
if (typeof msg.value !== 'string')
|
|
832
|
+
return;
|
|
833
|
+
try {
|
|
834
|
+
await session.setFocusedInputValue(msg.value, msg.selectionStart, msg.selectionEnd);
|
|
835
|
+
}
|
|
836
|
+
catch (error) {
|
|
837
|
+
logger_1.logger.warn(`[vscode-ws] setInputValue failed (session=${msg.sessionId}): ${(0, utils_1.getErrorMessage)(error)}`);
|
|
838
|
+
this.send({ type: 'error', sessionId: msg.sessionId, message: `setInputValue failed: ${(0, utils_1.getErrorMessage)(error)}` });
|
|
839
|
+
}
|
|
840
|
+
}
|
|
776
841
|
async handleBrowserExecuteScript(msg) {
|
|
777
842
|
const sessionId = msg.sessionId;
|
|
778
843
|
if (!sessionId || !msg.script) {
|
|
@@ -1041,6 +1106,7 @@ class VsCodeTunnelWebSocket extends base_websocket_1.BaseWebSocketConnection {
|
|
|
1041
1106
|
// ブラウザセッションのクリーンアップ
|
|
1042
1107
|
void this.browserSessionManager.closeAll();
|
|
1043
1108
|
this.pendingFileChoosers.clear();
|
|
1109
|
+
this.lastSentCursor.clear();
|
|
1044
1110
|
// ブラウザローカルサーバーのクリーンアップ
|
|
1045
1111
|
if (this.browserLocalServer) {
|
|
1046
1112
|
void this.browserLocalServer.stop();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vscode-tunnel-websocket.js","sourceRoot":"","sources":["../../src/vscode/vscode-tunnel-websocket.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"vscode-tunnel-websocket.js","sourceRoot":"","sources":["../../src/vscode/vscode-tunnel-websocket.ts"],"names":[],"mappings":"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"}
|