@petukhovart/agent-view 0.12.0 → 0.13.0

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.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "agent-view",
3
3
  "description": "Visual verification CLI for desktop apps (Electron/Tauri/Browser) via Chrome DevTools Protocol. Ships the verify skill: run DOM, screenshot, eval, watch, console and log-feed checks against a live app.",
4
- "version": "0.12.0",
4
+ "version": "0.13.0",
5
5
  "keywords": [
6
6
  "cdp",
7
7
  "electron",
package/README.md CHANGED
@@ -154,6 +154,8 @@ The daemon is why `dom → click → dom` runs in ~17ms total: one persistent CD
154
154
  | `console` | `console.log` + `Log.entryAdded` per page **and per worker**, with `--follow --until <pattern>`. |
155
155
  | `logs` | Durable file feed of page + worker console, surviving reloads and worker restarts. `tail --grep/--since/--level`, `clear`, plus re-injecting `--probe` scripts. |
156
156
  | `network` | Request/response timeline, headers, timing, bodies, and WebSocket/SSE frames. Filters: `--url`, `--method`, `--status`, `--type`. Captures page-load traffic. |
157
+ | `upload` | Puts files into a file input — no picker opens. `--selector` reaches the hidden inputs that have no ref. |
158
+ | `dialog` | JS modals are answered automatically so they cannot freeze the run; sets the answer, and pre-answers native file pickers with `arm`. |
157
159
  | `wait` | Block until an element appears (default 10s). |
158
160
  | `scene` | WebGL scene graph (PixiJS today, engine-pluggable). `--compact` and `--diff` mirror `dom`. |
159
161
  | `snap` | DOM + scene + optional screenshot in one call. |
@@ -396,6 +398,44 @@ agent-view drag --from 5 --to 9 --steps 20 --hold-ms 150
396
398
 
397
399
  `--steps` (default 10) controls intermediate `mouseMoved` events so libraries that throttle on movement deltas still see continuous motion. `--hold-ms` inserts a pause between press and the first move (some libs require >100ms for touch-style activation). `--button` accepts `left|right|middle`.
398
400
 
401
+ ### `upload`
402
+
403
+ Puts files into a file input through CDP `DOM.setFileInputFiles`. No picker opens, so there is nothing to arm and nothing to close.
404
+
405
+ ```bash
406
+ agent-view upload --selector "#file-input" --file ./fixtures/a.png
407
+ agent-view upload --selector "#images" --file ./a.png --file ./b.png # multi-select input
408
+ agent-view upload --ref 12 --file ./a.png
409
+ ```
410
+
411
+ `--selector` is the flag you will usually want: upload inputs are almost always hidden (`display:none`, `class="d-none"`, `v-show="false"`) and clicked from code, which keeps them out of the accessibility tree — so `dom` never prints a `[ref=N]` for them. There is deliberately no `--filter`: an accessible name resolves to the label or the button carrying it, not to the `<input type=file>` behind it. Paths resolve against the current directory and must be real files; CDP accepts a missing path or a directory without complaint and the app then reads an empty file.
412
+
413
+ ### `dialog`
414
+
415
+ Everything modal. JS modals are answered automatically — this command is how you change that answer, inspect what happened, and pre-answer native file pickers.
416
+
417
+ ```bash
418
+ agent-view dialog # standing answer + log of modals and pickers
419
+ agent-view dialog policy accept # confirm() → true from now on
420
+ agent-view dialog policy accept --text "hi" # prompt() → "hi"
421
+ agent-view dialog policy dismiss # back to the default
422
+ agent-view dialog accept | dismiss # answer the one open right now
423
+ agent-view dialog arm --file ./a.png # pre-answer the next native file picker
424
+ agent-view dialog arm --cancel # …as if the user pressed Cancel
425
+ agent-view dialog disarm # let real pickers open again
426
+ ```
427
+
428
+ **JS modals.** `connectToPage` enables the CDP `Page` domain, and Chromium then stops showing `alert`/`confirm`/`prompt`/`beforeunload` natively — it blocks the renderer until the client answers. Every page session therefore answers on its own; the default is dismiss. `beforeunload` is always dismissed regardless of the policy: accepting it would navigate away mid-run and lose the state under inspection. Each one is written to the console feed as `[agent-view] confirm auto-dismissed: <message>`, which is how you explain a `confirm()` that returned `false` for no visible reason. `dialog accept` / `dialog dismiss` handle the one case the policy cannot: a modal that was already open before agent-view attached, which produced no event.
429
+
430
+ **Native file pickers.** `dialog arm` holds an answer ready so the picker never opens, and arms two engines at once — CDP file-chooser interception for webview pickers, and a `window.__TAURI_INTERNALS__.invoke` shim for `@tauri-apps/plugin-dialog`, whose dialog runs in Rust past the webview where CDP cannot reach it. Use it for the input that is created and removed inside the click handler; a selector cannot address that one. Otherwise prefer `upload`.
431
+
432
+ Two rules that bite:
433
+
434
+ - **Arm before the click.** A picker cannot be caught once open. The arm is one-shot: the first picker spends it and interception turns itself off, so a later click opens a real OS dialog.
435
+ - **Click with `agent-view click`, not `eval "el.click()"`.** Chromium refuses to open a file picker without user activation, and an eval-driven click has none — the picker is silently dropped and never intercepted.
436
+
437
+ Out of reach: `showOpenFilePicker()` (File System Access API) exposes no input to fill and can only be cancelled; Electron does not implement `window.prompt`; a native dialog opened from an Electron **main** process is invisible to CDP.
438
+
399
439
  ### `screenshot`
400
440
 
401
441
  Captures a screenshot, saves to temp dir, prints the file path. PNG by default; WebP (q=80) when `--scale` is set (JPEG fallback for older Chrome/Electron).
@@ -1 +1 @@
1
- {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../src/cdp/transport.ts"],"names":[],"mappings":"AAEA,OAAO,EAWL,KAAK,SAAS,EAId,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,WAAW,EAOjB,MAAM,YAAY,CAAA;AACnB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AA4BhD,qBAAa,eAAgB,SAAQ,KAAK;gBAC5B,OAAO,EAAE,MAAM;CAI5B;AAmCD,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAkBpE;AAED,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAQ9E;AA4YD,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,cAAc,CAAC,CA2BhG;AAED,wBAAsB,aAAa,CACjC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,UAAU,EAClB,KAAK,EAAE,WAAW,GACjB,OAAO,CAAC,WAAW,CAAC,CA6PtB"}
1
+ {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../src/cdp/transport.ts"],"names":[],"mappings":"AAEA,OAAO,EAaL,KAAK,SAAS,EAId,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,WAAW,EAWjB,MAAM,YAAY,CAAA;AACnB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AA4BhD,qBAAa,eAAgB,SAAQ,KAAK;gBAC5B,OAAO,EAAE,MAAM;CAI5B;AAmCD,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAkBpE;AAED,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAQ9E;AAoqBD,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,cAAc,CAAC,CA2BhG;AAED,wBAAsB,aAAa,CACjC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,UAAU,EAClB,KAAK,EAAE,WAAW,GACjB,OAAO,CAAC,WAAW,CAAC,CA2StB"}
@@ -1,6 +1,6 @@
1
1
  // @ts-expect-error no types available for chrome-remote-interface
2
2
  import CDP from 'chrome-remote-interface';
3
- import { TargetType, ConsoleLevel, ConsoleSource, EvaluationError, MouseButton, NetworkEventKind, NetworkResourceType, } from './types.js';
3
+ import { TargetType, ConsoleLevel, ConsoleSource, EvaluationError, MouseButton, NetworkEventKind, NetworkResourceType, JsDialogType, FileChooserMode, } from './types.js';
4
4
  // CDP hosts to try: IPv4 first, then IPv6 (WebView2/Tauri often listens on ::1)
5
5
  const CDP_HOSTS = ['127.0.0.1', '::1'];
6
6
  // Maps targetId → host for connection routing
@@ -185,6 +185,228 @@ function attachConsoleSubscription(client) {
185
185
  },
186
186
  };
187
187
  }
188
+ /** Dialogs are rare; a short tail is enough to explain a surprising `confirm()` result. */
189
+ const MAX_TRACKED_DIALOGS = 20;
190
+ const DIALOG_TYPES = new Set(Object.values(JsDialogType));
191
+ function dialogTypeFrom(raw) {
192
+ return raw && DIALOG_TYPES.has(raw) ? raw : JsDialogType.Alert;
193
+ }
194
+ function dialogNotice(dialog, accept) {
195
+ const verb = accept ? 'auto-accepted' : 'auto-dismissed';
196
+ const body = dialog.message ? `: ${dialog.message}` : '';
197
+ return {
198
+ ts: Date.now(),
199
+ level: ConsoleLevel.Warn,
200
+ source: ConsoleSource.Log,
201
+ text: `[agent-view] ${dialog.type} ${verb}${body}`,
202
+ };
203
+ }
204
+ /**
205
+ * Answers JS dialogs so the renderer never stalls.
206
+ *
207
+ * While the Page domain is enabled Chromium stops showing the native dialog and
208
+ * waits for `Page.handleJavaScriptDialog` instead — with no client answer the
209
+ * page hangs forever. Since `connectToPage` always enables Page, every page
210
+ * session must own this. The standing policy dismisses; `setPolicy` changes it.
211
+ */
212
+ function attachJsDialogSubscription(Page, notice) {
213
+ const handlers = new Set();
214
+ const seen = [];
215
+ let policy = { accept: false };
216
+ let pending = null;
217
+ async function send(accept, promptText, automatic) {
218
+ const params = { accept };
219
+ if (promptText !== undefined)
220
+ params.promptText = promptText;
221
+ const answered = pending;
222
+ pending = null;
223
+ try {
224
+ await Page.handleJavaScriptDialog(params);
225
+ }
226
+ catch (err) {
227
+ // Only the dialog this call was answering may be restored: a later one
228
+ // may already have taken the slot, and overwriting it would make the
229
+ // session answer the wrong dialog next time.
230
+ if (pending === null)
231
+ pending = answered;
232
+ throw err;
233
+ }
234
+ if (answered) {
235
+ answered.answer = { accept, promptText, automatic };
236
+ return;
237
+ }
238
+ // A blind answer — the dialog opened before agent-view attached, so no
239
+ // opening event created a record. Without this the one scenario the manual
240
+ // command exists for leaves no trace in `dialog status`.
241
+ record({
242
+ ts: Date.now(),
243
+ type: JsDialogType.Alert,
244
+ message: '(opened before agent-view attached)',
245
+ url: '',
246
+ answer: { accept, promptText, automatic },
247
+ });
248
+ }
249
+ function record(dialog) {
250
+ seen.push(dialog);
251
+ if (seen.length > MAX_TRACKED_DIALOGS)
252
+ seen.shift();
253
+ return dialog;
254
+ }
255
+ Page.javascriptDialogOpening((params) => {
256
+ const dialog = {
257
+ ts: Date.now(),
258
+ type: dialogTypeFrom(params.type),
259
+ message: params.message ?? '',
260
+ defaultPrompt: params.defaultPrompt,
261
+ url: params.url ?? '',
262
+ };
263
+ pending = dialog;
264
+ record(dialog);
265
+ for (const handler of handlers) {
266
+ try {
267
+ handler(dialog);
268
+ }
269
+ catch { /* one bad handler shouldn't break others */ }
270
+ }
271
+ // `beforeunload` is not a question about the app's own state, it is a
272
+ // question about leaving the page. Accepting it would navigate away in the
273
+ // middle of a verification run and lose everything under inspection, so the
274
+ // standing answer — which exists to make `confirm()` return true — does not
275
+ // reach it. Staying put is always the recoverable outcome.
276
+ const accept = dialog.type === JsDialogType.BeforeUnload ? false : policy.accept;
277
+ const promptText = accept ? policy.promptText : undefined;
278
+ void send(accept, promptText, true)
279
+ .then(() => notice(dialogNotice(dialog, accept)))
280
+ .catch(() => { });
281
+ });
282
+ return {
283
+ add(handler) {
284
+ handlers.add(handler);
285
+ return () => handlers.delete(handler);
286
+ },
287
+ /**
288
+ * Sent even with nothing pending: a dialog opened before agent-view attached
289
+ * never produced an opening event, and answering blind is the only way out.
290
+ */
291
+ answer: (accept, promptText) => send(accept, promptText, false),
292
+ setPolicy: (next) => { policy = next; },
293
+ getPolicy: () => policy,
294
+ recent: () => [...seen],
295
+ };
296
+ }
297
+ /**
298
+ * Intercepts the native file chooser and answers it from the armed value.
299
+ *
300
+ * Interception stays off until something is armed: turning it on unconditionally
301
+ * would suppress a chooser the user actually wanted to see, and the app would
302
+ * look broken. Arming is one-shot for the same reason — a standing intercept
303
+ * silently changes behaviour long after the command that set it.
304
+ */
305
+ function attachFileChooserSubscription(Page, setFiles, dispatchCancel, notice) {
306
+ const seen = [];
307
+ let armed = null;
308
+ const record = (event) => {
309
+ seen.push(event);
310
+ if (seen.length > MAX_TRACKED_DIALOGS)
311
+ seen.shift();
312
+ return event;
313
+ };
314
+ Page.fileChooserOpened((params) => {
315
+ const pending = armed;
316
+ armed = null;
317
+ const event = record({
318
+ ts: Date.now(),
319
+ mode: params.mode === FileChooserMode.Multiple ? FileChooserMode.Multiple : FileChooserMode.Single,
320
+ matchedInput: params.backendNodeId !== undefined,
321
+ answer: 'unanswered',
322
+ });
323
+ /**
324
+ * Answering is async, so a fresh `arm` can land while this one is still in
325
+ * flight. Turning interception off then would kill the new arm and let the
326
+ * next chooser open as a real OS window, while `fileChooserArm()` still
327
+ * reports it armed — so only the arm that is still current disarms.
328
+ */
329
+ const disarm = () => {
330
+ if (armed !== null)
331
+ return Promise.resolve();
332
+ return Page.setInterceptFileChooserDialog({ enabled: false }).catch(() => { });
333
+ };
334
+ const cancelOnPage = (backendNodeId, outcome) => {
335
+ // Suppressing the chooser is not enough: the page is waiting on
336
+ // `input.oncancel`, and Chromium's own cancel path does not deliver it
337
+ // here. Without this event the app waits for a user who will never come.
338
+ void dispatchCancel(backendNodeId)
339
+ .then(() => notice(chooserNotice(outcome)))
340
+ .catch((err) => notice(chooserNotice(`cancel could not be delivered: ${errText(err)}`)))
341
+ .finally(() => disarm());
342
+ };
343
+ if (!pending || pending.kind === 'cancel') {
344
+ event.answer = 'cancel';
345
+ if (params.backendNodeId !== undefined) {
346
+ cancelOnPage(params.backendNodeId, 'cancelled');
347
+ return;
348
+ }
349
+ notice(chooserNotice('cancelled'));
350
+ void disarm();
351
+ return;
352
+ }
353
+ if (params.backendNodeId === undefined) {
354
+ // Nothing to attach files to. The chooser is already suppressed, so the
355
+ // call resolves as a cancel — say so instead of reporting a fake success.
356
+ event.answer = 'cancel';
357
+ notice(chooserNotice('cancelled — chooser had no file input (File System Access API)'));
358
+ void disarm();
359
+ return;
360
+ }
361
+ const { backendNodeId } = params;
362
+ void setFiles(backendNodeId, pending.files)
363
+ .then(() => {
364
+ event.answer = 'files';
365
+ event.files = pending.files;
366
+ notice(chooserNotice(`answered with ${pending.files.length} file(s)`));
367
+ void disarm();
368
+ })
369
+ .catch((err) => {
370
+ // The chooser is suppressed either way, so failing to attach the files
371
+ // must still produce an answer — otherwise the page waits forever,
372
+ // which is the exact hang this feature exists to prevent.
373
+ event.answer = 'cancel';
374
+ cancelOnPage(backendNodeId, `files could not be attached (${errText(err)}), cancelled instead`);
375
+ });
376
+ });
377
+ return {
378
+ async arm(next) {
379
+ armed = next;
380
+ // Interception only suppresses the chooser; what the page sees afterwards
381
+ // is decided here, not by Chromium's own `cancel` flag.
382
+ await Page.setInterceptFileChooserDialog(next ? { enabled: true, cancel: false } : { enabled: false });
383
+ },
384
+ current: () => armed,
385
+ recent: () => [...seen],
386
+ /**
387
+ * A new document means the click the arm was meant for will never happen.
388
+ * Leaving it live would answer some later, unrelated chooser — the standing
389
+ * intercept that one-shot arming exists to avoid.
390
+ */
391
+ forget() {
392
+ if (armed === null)
393
+ return;
394
+ armed = null;
395
+ void Page.setInterceptFileChooserDialog({ enabled: false }).catch(() => { });
396
+ },
397
+ };
398
+ }
399
+ function errText(err) {
400
+ return err instanceof Error ? err.message : String(err);
401
+ }
402
+ function chooserNotice(outcome) {
403
+ return {
404
+ ts: Date.now(),
405
+ level: ConsoleLevel.Warn,
406
+ source: ConsoleSource.Log,
407
+ text: `[agent-view] file chooser intercepted, ${outcome}`,
408
+ };
409
+ }
188
410
  const CDP_RESOURCE_TYPE_MAP = {
189
411
  Document: NetworkResourceType.Document,
190
412
  Stylesheet: NetworkResourceType.Stylesheet,
@@ -446,6 +668,14 @@ export async function connectToPage(port, target, cache) {
446
668
  // Subscribe BEFORE enable so we catch buffered console/log entries emitted at enable-time.
447
669
  const consoleSub = attachConsoleSubscription(client);
448
670
  const networkSub = attachNetworkSubscription(client.Network);
671
+ const jsDialogSub = attachJsDialogSubscription(Page, consoleSub.emit);
672
+ const fileChooserSub = attachFileChooserSubscription(Page, (backendNodeId, files) => DOM.setFileInputFiles({ backendNodeId, files }).then(() => undefined), async (backendNodeId) => {
673
+ const { object } = await DOM.resolveNode({ backendNodeId });
674
+ await Runtime.callFunctionOn({
675
+ objectId: object.objectId,
676
+ functionDeclaration: `function() { this.dispatchEvent(new Event('cancel')) }`,
677
+ });
678
+ }, consoleSub.emit);
449
679
  const onDisconnect = attachDisconnectSubscription(client);
450
680
  let documentBackendNodeId = 0;
451
681
  await bringUpSession(client, target, async () => {
@@ -464,6 +694,7 @@ export async function connectToPage(port, target, cache) {
464
694
  let webpSupported = null;
465
695
  Page.frameNavigated(async () => {
466
696
  cache.invalidate(cacheKey);
697
+ fileChooserSub.forget();
467
698
  try {
468
699
  const { root: newRoot } = await DOM.getDocument({ depth: 0 });
469
700
  documentBackendNodeId = newRoot.backendNodeId;
@@ -555,6 +786,14 @@ export async function connectToPage(port, target, cache) {
555
786
  onNetwork: (handler) => networkSub.add(handler),
556
787
  enableNetwork: () => networkSub.enable(),
557
788
  getResponseBody: (requestId) => networkSub.getResponseBody(requestId),
789
+ onJsDialog: (handler) => jsDialogSub.add(handler),
790
+ answerJsDialog: (accept, promptText) => jsDialogSub.answer(accept, promptText),
791
+ setJsDialogPolicy: (policy) => jsDialogSub.setPolicy(policy),
792
+ getJsDialogPolicy: () => jsDialogSub.getPolicy(),
793
+ recentJsDialogs: () => jsDialogSub.recent(),
794
+ armFileChooser: (arm) => fileChooserSub.arm(arm),
795
+ fileChooserArm: () => fileChooserSub.current(),
796
+ recentFileChoosers: () => fileChooserSub.recent(),
558
797
  async getAccessibilityTree() {
559
798
  const cached = cache.get(cacheKey);
560
799
  if (cached)
@@ -641,6 +880,28 @@ export async function connectToPage(port, target, cache) {
641
880
  async dragBetweenPositions(from, to, opts) {
642
881
  await dispatchDrag(from, to, opts);
643
882
  },
883
+ async uploadByNodeId(backendNodeId, files) {
884
+ await DOM.setFileInputFiles({ backendNodeId, files });
885
+ },
886
+ async uploadBySelector(selector, files) {
887
+ // Addressed by objectId rather than nodeId: `DOM.querySelector` needs a
888
+ // document nodeId, and the document node is re-numbered on every
889
+ // navigation. A RemoteObject from the page skips that bookkeeping.
890
+ const { result, exceptionDetails } = await Runtime.evaluate({
891
+ expression: `document.querySelector(${JSON.stringify(selector)})`,
892
+ returnByValue: false,
893
+ });
894
+ // A malformed selector throws, and the thrown DOMException comes back as
895
+ // a perfectly good RemoteObject — without this check it would be passed
896
+ // to setFileInputFiles as if it were the matched node.
897
+ if (exceptionDetails) {
898
+ throw new EvaluationError(`Invalid selector ${JSON.stringify(selector)}`);
899
+ }
900
+ if (!result.objectId || result.subtype === 'null')
901
+ return false;
902
+ await DOM.setFileInputFiles({ objectId: result.objectId, files });
903
+ return true;
904
+ },
644
905
  async fillByNodeId(backendNodeId, value) {
645
906
  const { object } = await DOM.resolveNode({ backendNodeId });
646
907
  await DOM.focus({ backendNodeId });
@@ -1 +1 @@
1
- {"version":3,"file":"transport.js","sourceRoot":"","sources":["../../src/cdp/transport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transport.js","sourceRoot":"","sources":["../../src/cdp/transport.ts"],"names":[],"mappings":"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"}
@@ -54,6 +54,64 @@ export type Point = {
54
54
  x: number;
55
55
  y: number;
56
56
  };
57
+ /** CDP `Page.DialogType`. */
58
+ export declare enum JsDialogType {
59
+ Alert = "alert",
60
+ Confirm = "confirm",
61
+ Prompt = "prompt",
62
+ BeforeUnload = "beforeunload"
63
+ }
64
+ /** One `window.alert` / `confirm` / `prompt` / `beforeunload` dialog. */
65
+ export type JsDialogInfo = {
66
+ ts: number;
67
+ type: JsDialogType;
68
+ message: string;
69
+ /** Pre-filled text of a `prompt`. Absent for the other types. */
70
+ defaultPrompt?: string;
71
+ url: string;
72
+ /** How the session answered it, once answered. */
73
+ answer?: JsDialogAnswer;
74
+ };
75
+ export type JsDialogAnswer = {
76
+ accept: boolean;
77
+ promptText?: string;
78
+ /** True when the session answered on its own, without an explicit command. */
79
+ automatic: boolean;
80
+ };
81
+ /**
82
+ * Standing answer applied to every JS dialog the moment it opens.
83
+ * Dismiss is the default: while the Page domain is enabled Chromium blocks the
84
+ * renderer until the CDP client answers, so "do nothing" is not an option.
85
+ */
86
+ export type JsDialogPolicy = {
87
+ accept: boolean;
88
+ /** Text typed into a `prompt` before accepting. */
89
+ promptText?: string;
90
+ };
91
+ /** The answer held ready for the next native file chooser. One-shot. */
92
+ export type FileChooserArm = {
93
+ kind: 'files';
94
+ files: string[];
95
+ } | {
96
+ kind: 'cancel';
97
+ };
98
+ /** CDP `Page.fileChooserOpened.mode`. */
99
+ export declare enum FileChooserMode {
100
+ Single = "selectSingle",
101
+ Multiple = "selectMultiple"
102
+ }
103
+ export type FileChooserEvent = {
104
+ ts: number;
105
+ mode: FileChooserMode;
106
+ /**
107
+ * False when the chooser did not come from an `<input type=file>` — the File
108
+ * System Access API (`showOpenFilePicker`) gives no node to put files on, so
109
+ * such a chooser can only be cancelled, never answered.
110
+ */
111
+ matchedInput: boolean;
112
+ answer: 'files' | 'cancel' | 'unanswered';
113
+ files?: string[];
114
+ };
57
115
  export declare enum ConsoleLevel {
58
116
  Log = "log",
59
117
  Info = "info",
@@ -109,6 +167,41 @@ export type RuntimeSession = {
109
167
  close: () => Promise<void>;
110
168
  };
111
169
  export type PageSession = RuntimeSession & {
170
+ /**
171
+ * Subscribe to JS dialogs. The handler runs *before* the session applies its
172
+ * policy, so a subscriber sees the dialog even though it is answered at once.
173
+ * Returns disposer.
174
+ */
175
+ onJsDialog: (handler: (dialog: JsDialogInfo) => void) => () => void;
176
+ /** Answer the dialog that is open right now. Rejects when none is showing. */
177
+ answerJsDialog: (accept: boolean, promptText?: string) => Promise<void>;
178
+ /** Replace the standing answer applied to every future dialog. */
179
+ setJsDialogPolicy: (policy: JsDialogPolicy) => void;
180
+ getJsDialogPolicy: () => JsDialogPolicy;
181
+ /** Dialogs seen by this session, oldest first, bounded. */
182
+ recentJsDialogs: () => JsDialogInfo[];
183
+ /**
184
+ * Put files into a file input directly. No chooser opens, so nothing has to be
185
+ * armed first. `files` must be absolute paths — CDP does not check that they
186
+ * exist, and a bad path reaches the app as a broken `File`.
187
+ */
188
+ uploadByNodeId: (backendDOMNodeId: number, files: string[]) => Promise<void>;
189
+ /**
190
+ * Same, addressed by CSS selector. Needed because upload inputs are usually
191
+ * hidden (`display:none`, `v-show="false"`) and never reach the AX tree, so
192
+ * they have no `[ref=N]`. Returns false when the selector matches nothing.
193
+ */
194
+ uploadBySelector: (selector: string, files: string[]) => Promise<boolean>;
195
+ /**
196
+ * Hold an answer ready for the next native file chooser, so it never opens.
197
+ * Needed for inputs created and removed inside the click handler, which no
198
+ * selector can address. `null` disarms and restores normal chooser behaviour.
199
+ * Arm before the click — the chooser cannot be caught after it is open.
200
+ */
201
+ armFileChooser: (arm: FileChooserArm | null) => Promise<void>;
202
+ fileChooserArm: () => FileChooserArm | null;
203
+ /** Choosers intercepted by this session, oldest first, bounded. */
204
+ recentFileChoosers: () => FileChooserEvent[];
112
205
  getAccessibilityTree: () => Promise<AXNode[]>;
113
206
  /** Same as getAccessibilityTree but also signals whether nodes came from the AX tree cache. */
114
207
  getAccessibilityTreeMeta: () => Promise<{