@ai-support-agent/cli 0.1.31 → 0.1.32-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.
@@ -0,0 +1,416 @@
1
+ "use strict";
2
+ /**
3
+ * page-scripts.ts — Browser-context functions passed to Playwright's
4
+ * page.evaluate() / page.addInitScript().
5
+ *
6
+ * IMPORTANT: every function in this module is serialized by Playwright and
7
+ * executed INSIDE the browser page, NOT in Node. They must therefore be
8
+ * self-contained (no references to Node/module-scope variables) and may only
9
+ * use browser globals (document, window, getComputedStyle, CSS, …).
10
+ *
11
+ * They are REAL functions (not strings): Playwright treats a string
12
+ * pageFunction as a JS expression and never calls it, so a string arrow
13
+ * function would silently do nothing and ignore its argument. Passing the
14
+ * function directly lets Playwright serialize and invoke it with the arg.
15
+ *
16
+ * DOM typing is provided by the MODULE-SCOPED ambient declarations below. They
17
+ * intentionally avoid `/// <reference lib="dom" />` and `declare global`, both
18
+ * of which leak DOM types into the rest of the (Node) codebase; module-scoped
19
+ * `declare const` bindings are visible only within this file, so the global
20
+ * tsconfig `lib: ["ES2022"]` (no "DOM") still catches stray DOM usage elsewhere.
21
+ */
22
+ Object.defineProperty(exports, "__esModule", { value: true });
23
+ exports.SET_FOCUSED_INPUT_VALUE_SCRIPT = exports.FOCUS_REPORTING_SCRIPT = exports.GET_SELECTED_TEXT_SCRIPT = exports.FOCUSED_ELEMENT_SCRIPT = exports.CURSOR_AT_POINT_SCRIPT = exports.ELEMENT_AT_POINT_SCRIPT = void 0;
24
+ /**
25
+ * Extract Playwright-friendly element info for the element at a point.
26
+ * Returns an ElementInfo-compatible object or null.
27
+ */
28
+ const ELEMENT_AT_POINT_SCRIPT = (point) => {
29
+ const el = document.elementFromPoint(point.x, point.y);
30
+ if (!el)
31
+ return null;
32
+ return extractInfo(el);
33
+ function extractInfo(el) {
34
+ const tag = el.tagName.toLowerCase();
35
+ const id = el.id;
36
+ const name = el.getAttribute('name');
37
+ const type = el.getAttribute('type');
38
+ const role = el.getAttribute('role') || implicitRole(tag, type);
39
+ const ariaLabel = el.getAttribute('aria-label');
40
+ const placeholder = el.getAttribute('placeholder');
41
+ const title = el.getAttribute('title');
42
+ const href = el.getAttribute('href');
43
+ const text = getVisibleText(el);
44
+ const testId = el.getAttribute('data-testid') || el.getAttribute('data-test-id');
45
+ const selector = buildSelector(el, tag, id, name, testId, text, role, ariaLabel, placeholder, type);
46
+ const label = ariaLabel || placeholder || name || title || undefined;
47
+ return {
48
+ selector,
49
+ tagName: tag,
50
+ type: type || undefined,
51
+ text: text || undefined,
52
+ role: role || undefined,
53
+ label: label || undefined,
54
+ href: href || undefined,
55
+ };
56
+ }
57
+ function buildSelector(el, tag, id, name, testId, text, role, ariaLabel, placeholder, type) {
58
+ // Priority 1: data-testid (most stable)
59
+ if (testId)
60
+ return '[data-testid="' + testId + '"]';
61
+ // Priority 2: id (unique)
62
+ if (id)
63
+ return '#' + CSS.escape(id);
64
+ // Priority 3: role + name (accessible selectors)
65
+ if (role && ariaLabel)
66
+ return tag + '[role="' + role + '"][aria-label="' + ariaLabel + '"]';
67
+ // Priority 4: name attribute (forms)
68
+ if (name && (tag === 'input' || tag === 'select' || tag === 'textarea')) {
69
+ return tag + '[name="' + name + '"]';
70
+ }
71
+ // Priority 5: Playwright text selector for buttons/links
72
+ if (text && text.length <= 50 && (tag === 'button' || tag === 'a' || role === 'button' || role === 'link')) {
73
+ return tag + ':has-text("' + text.replace(/"/g, '\\"') + '")';
74
+ }
75
+ // Priority 6: placeholder for inputs
76
+ if (placeholder && tag === 'input') {
77
+ return 'input[placeholder="' + placeholder + '"]';
78
+ }
79
+ // Priority 7: type for inputs
80
+ if (type && tag === 'input') {
81
+ // Check if unique enough by adding parent context
82
+ const parent = el.parentElement;
83
+ if (parent && parent.id) {
84
+ return '#' + CSS.escape(parent.id) + ' > input[type="' + type + '"]';
85
+ }
86
+ return 'input[type="' + type + '"]';
87
+ }
88
+ // Priority 8: nth-of-type with class
89
+ const classes = Array.from(el.classList).filter((c) => !c.match(/^(js-|is-|has-)/)).slice(0, 2);
90
+ if (classes.length > 0) {
91
+ const classSelector = tag + '.' + classes.map((c) => CSS.escape(c)).join('.');
92
+ const siblings = document.querySelectorAll(classSelector);
93
+ if (siblings.length === 1)
94
+ return classSelector;
95
+ const index = Array.from(siblings).indexOf(el);
96
+ if (index >= 0)
97
+ return classSelector + ':nth-of-type(' + (index + 1) + ')';
98
+ }
99
+ // Fallback: tag with index
100
+ return tag;
101
+ }
102
+ function getVisibleText(el) {
103
+ const text = (el.textContent || '').trim();
104
+ return text.length > 80 ? text.substring(0, 77) + '...' : text;
105
+ }
106
+ function implicitRole(tag, type) {
107
+ if (tag === 'button')
108
+ return 'button';
109
+ if (tag === 'a')
110
+ return 'link';
111
+ if (tag === 'input') {
112
+ if (type === 'checkbox')
113
+ return 'checkbox';
114
+ if (type === 'radio')
115
+ return 'radio';
116
+ if (type === 'submit')
117
+ return 'button';
118
+ if (!type || type === 'text' || type === 'email' || type === 'password' || type === 'search' || type === 'tel' || type === 'url' || type === 'number')
119
+ return 'textbox';
120
+ }
121
+ if (tag === 'textarea')
122
+ return 'textbox';
123
+ if (tag === 'select')
124
+ return 'combobox';
125
+ if (tag === 'img')
126
+ return 'img';
127
+ return '';
128
+ }
129
+ };
130
+ exports.ELEMENT_AT_POINT_SCRIPT = ELEMENT_AT_POINT_SCRIPT;
131
+ /**
132
+ * Read the CSS `cursor` value of the element at a point. Returns 'default' when
133
+ * no element is found or the computed cursor is empty.
134
+ */
135
+ const CURSOR_AT_POINT_SCRIPT = (point) => {
136
+ const el = document.elementFromPoint(point.x, point.y);
137
+ if (!el)
138
+ return 'default';
139
+ return getComputedStyle(el).cursor || 'default';
140
+ };
141
+ exports.CURSOR_AT_POINT_SCRIPT = CURSOR_AT_POINT_SCRIPT;
142
+ /**
143
+ * Extract info about the currently focused element.
144
+ */
145
+ const FOCUSED_ELEMENT_SCRIPT = () => {
146
+ const el = document.activeElement;
147
+ if (!el || el === document.body)
148
+ return null;
149
+ const tag = el.tagName.toLowerCase();
150
+ const id = el.id;
151
+ const name = el.getAttribute('name');
152
+ const type = el.getAttribute('type');
153
+ const role = el.getAttribute('role') || implicitRole(tag, type);
154
+ const ariaLabel = el.getAttribute('aria-label');
155
+ const placeholder = el.getAttribute('placeholder');
156
+ const title = el.getAttribute('title');
157
+ const testId = el.getAttribute('data-testid') || el.getAttribute('data-test-id');
158
+ const selector = buildSelector(el, tag, id, name, testId, '', role, ariaLabel, placeholder, type);
159
+ const label = ariaLabel || placeholder || name || title || undefined;
160
+ return {
161
+ selector,
162
+ tagName: tag,
163
+ type: type || undefined,
164
+ role: role || undefined,
165
+ label: label || undefined,
166
+ };
167
+ function buildSelector(el, tag, id, name, testId, _text, role, ariaLabel, placeholder, type) {
168
+ if (testId)
169
+ return '[data-testid="' + testId + '"]';
170
+ if (id)
171
+ return '#' + CSS.escape(id);
172
+ if (role && ariaLabel)
173
+ return tag + '[role="' + role + '"][aria-label="' + ariaLabel + '"]';
174
+ if (name && (tag === 'input' || tag === 'select' || tag === 'textarea')) {
175
+ return tag + '[name="' + name + '"]';
176
+ }
177
+ if (placeholder && tag === 'input') {
178
+ return 'input[placeholder="' + placeholder + '"]';
179
+ }
180
+ if (type && tag === 'input')
181
+ return 'input[type="' + type + '"]';
182
+ const classes = Array.from(el.classList).filter((c) => !c.match(/^(js-|is-|has-)/)).slice(0, 2);
183
+ if (classes.length > 0)
184
+ return tag + '.' + classes.map((c) => CSS.escape(c)).join('.');
185
+ return tag;
186
+ }
187
+ function implicitRole(tag, type) {
188
+ if (tag === 'button')
189
+ return 'button';
190
+ if (tag === 'a')
191
+ return 'link';
192
+ if (tag === 'input') {
193
+ if (type === 'checkbox')
194
+ return 'checkbox';
195
+ if (type === 'radio')
196
+ return 'radio';
197
+ if (type === 'submit')
198
+ return 'button';
199
+ if (!type || type === 'text' || type === 'email' || type === 'password' || type === 'search' || type === 'tel' || type === 'url' || type === 'number')
200
+ return 'textbox';
201
+ }
202
+ if (tag === 'textarea')
203
+ return 'textbox';
204
+ if (tag === 'select')
205
+ return 'combobox';
206
+ return '';
207
+ }
208
+ };
209
+ exports.FOCUSED_ELEMENT_SCRIPT = FOCUSED_ELEMENT_SCRIPT;
210
+ /**
211
+ * Read the current selection. Prefers the selection range of a focused
212
+ * input/textarea, falling back to the document selection. Returns an empty
213
+ * string when nothing is selected.
214
+ */
215
+ const GET_SELECTED_TEXT_SCRIPT = () => {
216
+ const active = document.activeElement;
217
+ if (active &&
218
+ (active.tagName === 'INPUT' || active.tagName === 'TEXTAREA') &&
219
+ active.selectionStart != null &&
220
+ active.selectionEnd != null &&
221
+ active.selectionStart !== active.selectionEnd) {
222
+ return active.value.substring(active.selectionStart, active.selectionEnd);
223
+ }
224
+ const sel = window.getSelection();
225
+ return sel ? sel.toString() : '';
226
+ };
227
+ exports.GET_SELECTED_TEXT_SCRIPT = GET_SELECTED_TEXT_SCRIPT;
228
+ /**
229
+ * Install (idempotently) focus/value/selection reporting for simple
230
+ * input/textarea elements. Reports through the `window.__onBrowserFocus`
231
+ * binding exposed by Playwright.
232
+ *
233
+ * Listener registration is guarded by `window.__browserFocusReportingInstalled`
234
+ * so re-evaluating the script does not double-register handlers. The INITIAL
235
+ * report runs on EVERY evaluation (outside the guard) so an element already
236
+ * focused at injection time (e.g. an autofocused login field) is surfaced.
237
+ *
238
+ * Browser-side failures of the exposed binding are warned at most once here;
239
+ * the Node side (browser-session.ts exposeBinding wrapper) adds server-log
240
+ * observability for binding callback failures.
241
+ */
242
+ const FOCUS_REPORTING_SCRIPT = () => {
243
+ // The per-document focus reporting state (listeners + lastReportedFocused) is
244
+ // installed once. Hang the report() helper off window so a re-evaluation that
245
+ // skips re-registration can still invoke the initial report below.
246
+ if (!window.__browserFocusReportingInstalled) {
247
+ window.__browserFocusReportingInstalled = true;
248
+ // Last focused state reported to the agent. Used to suppress repeated
249
+ // { focused: false } notifications: selectionchange fires for the whole
250
+ // document (including unrelated page text selections), so without this guard
251
+ // every such selection would emit a redundant focused:false. We only forward
252
+ // a false when transitioning from a previously-focused (true) state.
253
+ var lastReportedFocused = false;
254
+ // Forward a payload through the exposed binding, recording the new focused
255
+ // state and logging the first failure once (high-frequency events would
256
+ // otherwise flood the browser console).
257
+ function emit(payload) {
258
+ lastReportedFocused = payload.focused;
259
+ try {
260
+ window.__onBrowserFocus(payload);
261
+ }
262
+ catch (e) {
263
+ if (!window.__focusReportErrorLogged) {
264
+ window.__focusReportErrorLogged = true;
265
+ try {
266
+ console.warn('[focus-reporting] report failed', e && e.message ? e.message : e);
267
+ }
268
+ catch (_) { }
269
+ }
270
+ }
271
+ }
272
+ function isReportingTarget(el) {
273
+ if (!el)
274
+ return false;
275
+ const tag = el.tagName;
276
+ if (tag === 'TEXTAREA')
277
+ return true;
278
+ if (tag !== 'INPUT')
279
+ return false;
280
+ const type = (el.getAttribute('type') || '').toLowerCase();
281
+ return type === '' || type === 'text' || type === 'search' || type === 'email' ||
282
+ type === 'url' || type === 'tel' || type === 'password' || type === 'number';
283
+ }
284
+ function buildPayload(el) {
285
+ const rect = el.getBoundingClientRect();
286
+ const cs = getComputedStyle(el);
287
+ const fontSize = parseFloat(cs.fontSize);
288
+ const lineHeight = parseFloat(cs.lineHeight);
289
+ const paddingTop = parseFloat(cs.paddingTop);
290
+ const paddingLeft = parseFloat(cs.paddingLeft);
291
+ const multiline = el.tagName === 'TEXTAREA';
292
+ const payload = {
293
+ focused: true,
294
+ rect: { x: rect.x, y: rect.y, width: rect.width, height: rect.height },
295
+ value: el.value,
296
+ selectionStart: el.selectionStart == null ? undefined : el.selectionStart,
297
+ selectionEnd: el.selectionEnd == null ? undefined : el.selectionEnd,
298
+ multiline: multiline,
299
+ inputType: multiline ? 'textarea' : ((el.getAttribute('type') || 'text').toLowerCase()),
300
+ textAlign: cs.textAlign,
301
+ };
302
+ if (typeof el.maxLength === 'number' && el.maxLength >= 0)
303
+ payload.maxLength = el.maxLength;
304
+ if (!Number.isNaN(fontSize))
305
+ payload.fontSize = fontSize;
306
+ if (!Number.isNaN(lineHeight))
307
+ payload.lineHeight = lineHeight;
308
+ if (!Number.isNaN(paddingTop))
309
+ payload.paddingTop = paddingTop;
310
+ if (!Number.isNaN(paddingLeft))
311
+ payload.paddingLeft = paddingLeft;
312
+ // Native caret defaults to `caret-color`, which itself falls back to the
313
+ // element's `color` when `auto`. Resolving it here makes the overlay caret
314
+ // match the real page caret instead of the console theme token. A fully
315
+ // transparent caret-color (e.g. editors like Ace hide the native caret on a
316
+ // hidden textarea and draw their own) is resolved away so the overlay does
317
+ // NOT re-introduce the invisible-caret bug: fall back to `color`, and if
318
+ // that is also transparent/empty, omit the field so the web overlay uses
319
+ // its visible `caret-foreground` theme class.
320
+ let caretColor = cs.caretColor;
321
+ if (!caretColor || caretColor === 'auto' || isTransparentColor(caretColor))
322
+ caretColor = cs.color;
323
+ if (caretColor && !isTransparentColor(caretColor))
324
+ payload.caretColor = caretColor;
325
+ return payload;
326
+ }
327
+ // Whether a CSS color string is fully transparent: the `transparent` keyword
328
+ // or an alpha-0 functional form (`rgba(…, 0)` / `hsla(…, 0)`). Chromium
329
+ // computes `caret-color: transparent` to `rgba(0, 0, 0, 0)`. Self-contained
330
+ // so it survives serialization into the browser context. Empty → treated as
331
+ // transparent (nothing usable to render).
332
+ function isTransparentColor(c) {
333
+ if (!c)
334
+ return true;
335
+ if (c === 'transparent')
336
+ return true;
337
+ const m = c.match(/^(?:rgba?|hsla?)\(([^)]+)\)$/i);
338
+ if (m) {
339
+ const parts = m[1].split(/[,/]/).map((s) => s.trim()).filter(Boolean);
340
+ const alpha = parts.length >= 4 ? parseFloat(parts[3]) : 1;
341
+ return alpha === 0;
342
+ }
343
+ return false;
344
+ }
345
+ // Report focused:true (with current value/selection) whenever a reporting
346
+ // target is active; report focused:false only on the true->false transition.
347
+ // Exposed on window so a guarded re-evaluation can still trigger the initial
348
+ // report without re-registering listeners.
349
+ window.__browserFocusReport = function () {
350
+ const el = document.activeElement;
351
+ if (isReportingTarget(el)) {
352
+ emit(buildPayload(el));
353
+ }
354
+ else if (lastReportedFocused) {
355
+ emit({ focused: false });
356
+ }
357
+ };
358
+ document.addEventListener('focusin', window.__browserFocusReport, true);
359
+ document.addEventListener('focusout', function () {
360
+ if (lastReportedFocused)
361
+ emit({ focused: false });
362
+ }, true);
363
+ document.addEventListener('input', window.__browserFocusReport, true);
364
+ document.addEventListener('selectionchange', window.__browserFocusReport, true);
365
+ }
366
+ // Initial report on EVERY evaluation: surfaces an element that is already
367
+ // focused at injection time (autofocus) for which focusin will never fire.
368
+ if (typeof window.__browserFocusReport === 'function')
369
+ window.__browserFocusReport();
370
+ };
371
+ exports.FOCUS_REPORTING_SCRIPT = FOCUS_REPORTING_SCRIPT;
372
+ /**
373
+ * Reflect a value into the currently-focused reporting-target input/textarea
374
+ * using the native value setter + InputEvent('input') dispatch, so React-style
375
+ * controlled components do not roll the value back. Optionally applies a
376
+ * selection range. No-op when the active element is not a reporting target.
377
+ */
378
+ const SET_FOCUSED_INPUT_VALUE_SCRIPT = (args) => {
379
+ const el = document.activeElement;
380
+ if (!el)
381
+ return;
382
+ const tag = el.tagName;
383
+ let proto;
384
+ if (tag === 'TEXTAREA') {
385
+ proto = window.HTMLTextAreaElement.prototype;
386
+ }
387
+ else if (tag === 'INPUT') {
388
+ const type = (el.getAttribute('type') || '').toLowerCase();
389
+ const ok = type === '' || type === 'text' || type === 'search' || type === 'email' ||
390
+ type === 'url' || type === 'tel' || type === 'password' || type === 'number';
391
+ if (!ok)
392
+ return;
393
+ proto = window.HTMLInputElement.prototype;
394
+ }
395
+ else {
396
+ return;
397
+ }
398
+ // The native value setter may be absent on exotic/polyfilled prototypes;
399
+ // treat that as a no-op (same as a non-reporting target) rather than letting
400
+ // a TypeError escape from reading .set of undefined.
401
+ const desc = Object.getOwnPropertyDescriptor(proto, 'value');
402
+ const setter = desc && desc.set;
403
+ if (!setter)
404
+ return;
405
+ const input = el;
406
+ setter.call(input, args.value);
407
+ input.dispatchEvent(new InputEvent('input', { bubbles: true }));
408
+ if (args.selectionStart != null && args.selectionEnd != null) {
409
+ try {
410
+ input.setSelectionRange(args.selectionStart, args.selectionEnd);
411
+ }
412
+ catch (e) { }
413
+ }
414
+ };
415
+ exports.SET_FOCUSED_INPUT_VALUE_SCRIPT = SET_FOCUSED_INPUT_VALUE_SCRIPT;
416
+ //# sourceMappingURL=page-scripts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"page-scripts.js","sourceRoot":"","sources":["../../../../src/mcp/tools/browser/page-scripts.ts"],"names":[],"mappings":"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"}
@@ -131,6 +131,7 @@ export interface VsCodeAgentMessage {
131
131
  textAlign?: string;
132
132
  paddingTop?: number;
133
133
  paddingLeft?: number;
134
+ caretColor?: string;
134
135
  }
135
136
  /**
136
137
  * VS Code トンネル WebSocket
@@ -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":"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"}