chromium-bidi 0.5.24 → 0.6.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.
Files changed (67) hide show
  1. package/.browser +1 -1
  2. package/lib/cjs/bidiMapper/BidiServer.d.ts +2 -1
  3. package/lib/cjs/bidiMapper/BidiServer.js +2 -2
  4. package/lib/cjs/bidiMapper/BidiServer.js.map +1 -1
  5. package/lib/cjs/bidiMapper/modules/cdp/CdpTarget.d.ts +3 -3
  6. package/lib/cjs/bidiMapper/modules/cdp/CdpTarget.js +6 -4
  7. package/lib/cjs/bidiMapper/modules/cdp/CdpTarget.js.map +1 -1
  8. package/lib/cjs/bidiMapper/modules/cdp/CdpTargetManager.d.ts +2 -2
  9. package/lib/cjs/bidiMapper/modules/cdp/CdpTargetManager.js +6 -4
  10. package/lib/cjs/bidiMapper/modules/cdp/CdpTargetManager.js.map +1 -1
  11. package/lib/cjs/bidiMapper/modules/context/BrowsingContextImpl.d.ts +9 -3
  12. package/lib/cjs/bidiMapper/modules/context/BrowsingContextImpl.js +118 -19
  13. package/lib/cjs/bidiMapper/modules/context/BrowsingContextImpl.js.map +1 -1
  14. package/lib/cjs/bidiMapper/modules/context/BrowsingContextProcessor.js +1 -1
  15. package/lib/cjs/bidiMapper/modules/context/BrowsingContextProcessor.js.map +1 -1
  16. package/lib/cjs/bidiMapper/modules/input/InputSource.d.ts +5 -5
  17. package/lib/cjs/bidiMapper/modules/input/keyUtils.js +3 -4
  18. package/lib/cjs/bidiMapper/modules/input/keyUtils.js.map +1 -1
  19. package/lib/cjs/bidiMapper/modules/log/logHelper.js +2 -3
  20. package/lib/cjs/bidiMapper/modules/log/logHelper.js.map +1 -1
  21. package/lib/cjs/bidiMapper/modules/network/NetworkProcessor.d.ts +16 -0
  22. package/lib/cjs/bidiMapper/modules/network/NetworkProcessor.js +29 -97
  23. package/lib/cjs/bidiMapper/modules/network/NetworkProcessor.js.map +1 -1
  24. package/lib/cjs/bidiMapper/modules/network/NetworkRequest.d.ts +4 -4
  25. package/lib/cjs/bidiMapper/modules/network/NetworkRequest.js +129 -30
  26. package/lib/cjs/bidiMapper/modules/network/NetworkRequest.js.map +1 -1
  27. package/lib/cjs/bidiMapper/modules/network/NetworkStorage.d.ts +6 -1
  28. package/lib/cjs/bidiMapper/modules/network/NetworkStorage.js +13 -1
  29. package/lib/cjs/bidiMapper/modules/network/NetworkStorage.js.map +1 -1
  30. package/lib/cjs/bidiMapper/modules/network/NetworkUtils.d.ts +1 -0
  31. package/lib/cjs/bidiMapper/modules/network/NetworkUtils.js +21 -14
  32. package/lib/cjs/bidiMapper/modules/network/NetworkUtils.js.map +1 -1
  33. package/lib/cjs/bidiMapper/modules/script/SharedId.js +2 -3
  34. package/lib/cjs/bidiMapper/modules/script/SharedId.js.map +1 -1
  35. package/lib/cjs/bidiMapper/modules/session/SubscriptionManager.js +3 -3
  36. package/lib/cjs/bidiMapper/modules/session/SubscriptionManager.js.map +1 -1
  37. package/lib/cjs/bidiMapper/modules/session/events.js +2 -3
  38. package/lib/cjs/bidiMapper/modules/session/events.js.map +1 -1
  39. package/lib/cjs/bidiServer/WebSocketServer.js +2 -1
  40. package/lib/cjs/bidiServer/WebSocketServer.js.map +1 -1
  41. package/lib/cjs/bidiServer/index.js +1 -2
  42. package/lib/cjs/bidiServer/index.js.map +1 -1
  43. package/lib/cjs/bidiServer/reader.js +1 -2
  44. package/lib/cjs/bidiServer/reader.js.map +1 -1
  45. package/lib/cjs/bidiTab/mapperTabPage.js +2 -3
  46. package/lib/cjs/bidiTab/mapperTabPage.js.map +1 -1
  47. package/lib/cjs/protocol/generated/webdriver-bidi.d.ts +29 -2
  48. package/lib/cjs/protocol-parser/generated/webdriver-bidi.d.ts +1218 -122
  49. package/lib/cjs/protocol-parser/generated/webdriver-bidi.js +20 -2
  50. package/lib/cjs/protocol-parser/generated/webdriver-bidi.js.map +1 -1
  51. package/lib/cjs/protocol-parser/protocol-parser.js +2 -2
  52. package/lib/cjs/protocol-parser/protocol-parser.js.map +1 -1
  53. package/lib/cjs/utils/Base64.js +1 -2
  54. package/lib/cjs/utils/Base64.js.map +1 -1
  55. package/lib/cjs/utils/DistinctValues.js +2 -3
  56. package/lib/cjs/utils/DistinctValues.js.map +1 -1
  57. package/lib/cjs/utils/GraphemeTools.js +2 -3
  58. package/lib/cjs/utils/GraphemeTools.js.map +1 -1
  59. package/lib/cjs/utils/assert.js +1 -2
  60. package/lib/cjs/utils/assert.js.map +1 -1
  61. package/lib/cjs/utils/unitConversions.js +1 -2
  62. package/lib/cjs/utils/unitConversions.js.map +1 -1
  63. package/lib/cjs/utils/uuid.js +1 -2
  64. package/lib/cjs/utils/uuid.js.map +1 -1
  65. package/lib/iife/mapperTab.js +865 -707
  66. package/lib/iife/mapperTab.js.map +1 -1
  67. package/package.json +15 -15
package/.browser CHANGED
@@ -1 +1 @@
1
- chrome@127.0.6533.0
1
+ chrome@128.0.6562.0
@@ -16,7 +16,7 @@
16
16
  */
17
17
  import type { CdpClient } from '../cdp/CdpClient';
18
18
  import type { CdpConnection } from '../cdp/CdpConnection.js';
19
- import type { ChromiumBidi } from '../protocol/protocol.js';
19
+ import type { ChromiumBidi, Session } from '../protocol/protocol.js';
20
20
  import { EventEmitter } from '../utils/EventEmitter.js';
21
21
  import { type LoggerFn } from '../utils/log.js';
22
22
  import type { Result } from '../utils/result.js';
@@ -28,6 +28,7 @@ type BidiServerEvent = {
28
28
  };
29
29
  export type MapperOptions = {
30
30
  acceptInsecureCerts: boolean;
31
+ unhandledPromptBehavior?: Session.UserPromptHandler;
31
32
  };
32
33
  export declare class BidiServer extends EventEmitter<BidiServerEvent> {
33
34
  #private;
@@ -55,8 +55,8 @@ class BidiServer extends EventEmitter_js_1.EventEmitter {
55
55
  this.#transport = bidiTransport;
56
56
  this.#transport.setOnMessage(this.#handleIncomingMessage);
57
57
  this.#eventManager = new EventManager_js_1.EventManager(this.#browsingContextStorage);
58
- const networkStorage = new NetworkStorage_js_1.NetworkStorage(this.#eventManager, browserCdpClient, logger);
59
- new CdpTargetManager_js_1.CdpTargetManager(cdpConnection, browserCdpClient, selfTargetId, this.#eventManager, this.#browsingContextStorage, this.#realmStorage, networkStorage, this.#preloadScriptStorage, options?.acceptInsecureCerts ?? false, defaultUserContextId, logger);
58
+ const networkStorage = new NetworkStorage_js_1.NetworkStorage(this.#eventManager, this.#browsingContextStorage, browserCdpClient, logger);
59
+ new CdpTargetManager_js_1.CdpTargetManager(cdpConnection, browserCdpClient, selfTargetId, this.#eventManager, this.#browsingContextStorage, this.#realmStorage, networkStorage, this.#preloadScriptStorage, options?.acceptInsecureCerts ?? false, defaultUserContextId, options?.unhandledPromptBehavior, logger);
60
60
  this.#commandProcessor = new CommandProcessor_js_1.CommandProcessor(cdpConnection, browserCdpClient, this.#eventManager, this.#browsingContextStorage, this.#realmStorage, this.#preloadScriptStorage, networkStorage, parser, this.#logger);
61
61
  this.#eventManager.on("event" /* EventManagerEvents.Event */, ({ message, event }) => {
62
62
  this.emitOutgoingMessage(message, event);
@@ -1 +1 @@
1
- {"version":3,"file":"BidiServer.js","sourceRoot":"","sources":["../../../src/bidiMapper/BidiServer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BidiServer.js","sourceRoot":"","sources":["../../../src/bidiMapper/BidiServer.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { Protocol } from 'devtools-protocol';
2
2
  import type { CdpClient } from '../../../cdp/CdpClient.js';
3
- import type { ChromiumBidi } from '../../../protocol/protocol.js';
3
+ import type { ChromiumBidi, Session } from '../../../protocol/protocol.js';
4
4
  import { Deferred } from '../../../utils/Deferred.js';
5
5
  import type { LoggerFn } from '../../../utils/log.js';
6
6
  import type { Result } from '../../../utils/result.js';
@@ -12,8 +12,8 @@ import type { RealmStorage } from '../script/RealmStorage.js';
12
12
  import type { EventManager } from '../session/EventManager.js';
13
13
  export declare class CdpTarget {
14
14
  #private;
15
- static create(targetId: Protocol.Target.TargetID, cdpClient: CdpClient, browserCdpClient: CdpClient, realmStorage: RealmStorage, eventManager: EventManager, preloadScriptStorage: PreloadScriptStorage, browsingContextStorage: BrowsingContextStorage, networkStorage: NetworkStorage, acceptInsecureCerts: boolean, logger?: LoggerFn): CdpTarget;
16
- constructor(targetId: Protocol.Target.TargetID, cdpClient: CdpClient, browserCdpClient: CdpClient, eventManager: EventManager, realmStorage: RealmStorage, preloadScriptStorage: PreloadScriptStorage, browsingContextStorage: BrowsingContextStorage, networkStorage: NetworkStorage, acceptInsecureCerts: boolean, logger?: LoggerFn);
15
+ static create(targetId: Protocol.Target.TargetID, cdpClient: CdpClient, browserCdpClient: CdpClient, realmStorage: RealmStorage, eventManager: EventManager, preloadScriptStorage: PreloadScriptStorage, browsingContextStorage: BrowsingContextStorage, networkStorage: NetworkStorage, acceptInsecureCerts: boolean, unhandledPromptBehavior?: Session.UserPromptHandler, logger?: LoggerFn): CdpTarget;
16
+ constructor(targetId: Protocol.Target.TargetID, cdpClient: CdpClient, browserCdpClient: CdpClient, eventManager: EventManager, realmStorage: RealmStorage, preloadScriptStorage: PreloadScriptStorage, browsingContextStorage: BrowsingContextStorage, networkStorage: NetworkStorage, acceptInsecureCerts: boolean, unhandledPromptBehavior?: Session.UserPromptHandler, logger?: LoggerFn);
17
17
  /** Returns a deferred that resolves when the target is unblocked. */
18
18
  get unblocked(): Deferred<Result<void>>;
19
19
  get id(): Protocol.Target.TargetID;
@@ -16,6 +16,7 @@ class CdpTarget {
16
16
  #browsingContextStorage;
17
17
  #networkStorage;
18
18
  #unblocked = new Deferred_js_1.Deferred();
19
+ #unhandledPromptBehavior;
19
20
  #acceptInsecureCerts;
20
21
  #logger;
21
22
  #networkDomainEnabled = false;
@@ -24,8 +25,8 @@ class CdpTarget {
24
25
  response: false,
25
26
  auth: false,
26
27
  };
27
- static create(targetId, cdpClient, browserCdpClient, realmStorage, eventManager, preloadScriptStorage, browsingContextStorage, networkStorage, acceptInsecureCerts, logger) {
28
- const cdpTarget = new CdpTarget(targetId, cdpClient, browserCdpClient, eventManager, realmStorage, preloadScriptStorage, browsingContextStorage, networkStorage, acceptInsecureCerts, logger);
28
+ static create(targetId, cdpClient, browserCdpClient, realmStorage, eventManager, preloadScriptStorage, browsingContextStorage, networkStorage, acceptInsecureCerts, unhandledPromptBehavior, logger) {
29
+ const cdpTarget = new CdpTarget(targetId, cdpClient, browserCdpClient, eventManager, realmStorage, preloadScriptStorage, browsingContextStorage, networkStorage, acceptInsecureCerts, unhandledPromptBehavior, logger);
29
30
  LogManager_js_1.LogManager.create(cdpTarget, realmStorage, eventManager, logger);
30
31
  cdpTarget.#setEventListeners();
31
32
  // No need to await.
@@ -33,7 +34,7 @@ class CdpTarget {
33
34
  void cdpTarget.#unblock();
34
35
  return cdpTarget;
35
36
  }
36
- constructor(targetId, cdpClient, browserCdpClient, eventManager, realmStorage, preloadScriptStorage, browsingContextStorage, networkStorage, acceptInsecureCerts, logger) {
37
+ constructor(targetId, cdpClient, browserCdpClient, eventManager, realmStorage, preloadScriptStorage, browsingContextStorage, networkStorage, acceptInsecureCerts, unhandledPromptBehavior, logger) {
37
38
  this.#id = targetId;
38
39
  this.#cdpClient = cdpClient;
39
40
  this.#browserCdpClient = browserCdpClient;
@@ -43,6 +44,7 @@ class CdpTarget {
43
44
  this.#networkStorage = networkStorage;
44
45
  this.#browsingContextStorage = browsingContextStorage;
45
46
  this.#acceptInsecureCerts = acceptInsecureCerts;
47
+ this.#unhandledPromptBehavior = unhandledPromptBehavior;
46
48
  this.#logger = logger;
47
49
  }
48
50
  /** Returns a deferred that resolves when the target is unblocked. */
@@ -122,7 +124,7 @@ class CdpTarget {
122
124
  // Can restore only not yet known nested frames. The top-level frame is created
123
125
  // when the target is attached.
124
126
  const parentBrowsingContext = this.#browsingContextStorage.getContext(frame.parentId);
125
- BrowsingContextImpl_js_1.BrowsingContextImpl.create(frame.id, frame.parentId, parentBrowsingContext.userContext, parentBrowsingContext.cdpTarget, this.#eventManager, this.#browsingContextStorage, this.#realmStorage, frame.url, undefined, this.#logger);
127
+ BrowsingContextImpl_js_1.BrowsingContextImpl.create(frame.id, frame.parentId, parentBrowsingContext.userContext, parentBrowsingContext.cdpTarget, this.#eventManager, this.#browsingContextStorage, this.#realmStorage, frame.url, undefined, this.#unhandledPromptBehavior, this.#logger);
126
128
  }
127
129
  frameTree.childFrames?.map((frameTree) => this.#restoreFrameTreeState(frameTree));
128
130
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CdpTarget.js","sourceRoot":"","sources":["../../../../../src/bidiMapper/modules/cdp/CdpTarget.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CdpTarget.js","sourceRoot":"","sources":["../../../../../src/bidiMapper/modules/cdp/CdpTarget.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { CdpClient } from '../../../cdp/CdpClient.js';
2
2
  import type { CdpConnection } from '../../../cdp/CdpConnection.js';
3
- import type { Browser } from '../../../protocol/protocol.js';
3
+ import type { Browser, Session } from '../../../protocol/protocol.js';
4
4
  import { type LoggerFn } from '../../../utils/log.js';
5
5
  import type { BrowsingContextStorage } from '../context/BrowsingContextStorage.js';
6
6
  import type { NetworkStorage } from '../network/NetworkStorage.js';
@@ -9,5 +9,5 @@ import type { RealmStorage } from '../script/RealmStorage.js';
9
9
  import type { EventManager } from '../session/EventManager.js';
10
10
  export declare class CdpTargetManager {
11
11
  #private;
12
- constructor(cdpConnection: CdpConnection, browserCdpClient: CdpClient, selfTargetId: string, eventManager: EventManager, browsingContextStorage: BrowsingContextStorage, realmStorage: RealmStorage, networkStorage: NetworkStorage, preloadScriptStorage: PreloadScriptStorage, acceptInsecureCerts: boolean, defaultUserContextId: Browser.UserContext, logger?: LoggerFn);
12
+ constructor(cdpConnection: CdpConnection, browserCdpClient: CdpClient, selfTargetId: string, eventManager: EventManager, browsingContextStorage: BrowsingContextStorage, realmStorage: RealmStorage, networkStorage: NetworkStorage, preloadScriptStorage: PreloadScriptStorage, acceptInsecureCerts: boolean, defaultUserContextId: Browser.UserContext, unhandledPromptBehavior?: Session.UserPromptHandler, logger?: LoggerFn);
13
13
  }
@@ -22,7 +22,8 @@ class CdpTargetManager {
22
22
  #realmStorage;
23
23
  #defaultUserContextId;
24
24
  #logger;
25
- constructor(cdpConnection, browserCdpClient, selfTargetId, eventManager, browsingContextStorage, realmStorage, networkStorage, preloadScriptStorage, acceptInsecureCerts, defaultUserContextId, logger) {
25
+ #unhandledPromptBehavior;
26
+ constructor(cdpConnection, browserCdpClient, selfTargetId, eventManager, browsingContextStorage, realmStorage, networkStorage, preloadScriptStorage, acceptInsecureCerts, defaultUserContextId, unhandledPromptBehavior, logger) {
26
27
  this.#acceptInsecureCerts = acceptInsecureCerts;
27
28
  this.#cdpConnection = cdpConnection;
28
29
  this.#browserCdpClient = browserCdpClient;
@@ -33,6 +34,7 @@ class CdpTargetManager {
33
34
  this.#networkStorage = networkStorage;
34
35
  this.#realmStorage = realmStorage;
35
36
  this.#defaultUserContextId = defaultUserContextId;
37
+ this.#unhandledPromptBehavior = unhandledPromptBehavior;
36
38
  this.#logger = logger;
37
39
  this.#setEventListeners(browserCdpClient);
38
40
  }
@@ -58,7 +60,7 @@ class CdpTargetManager {
58
60
  BrowsingContextImpl_js_1.BrowsingContextImpl.create(params.frameId, params.parentFrameId, parentBrowsingContext.userContext, parentBrowsingContext.cdpTarget, this.#eventManager, this.#browsingContextStorage, this.#realmStorage,
59
61
  // At this point, we don't know the URL of the frame yet, so it will be updated
60
62
  // later.
61
- 'about:blank', undefined, this.#logger);
63
+ 'about:blank', undefined, this.#unhandledPromptBehavior, this.#logger);
62
64
  }
63
65
  }
64
66
  #handleFrameDetachedEvent(params) {
@@ -98,7 +100,7 @@ class CdpTargetManager {
98
100
  // "7.3.2.1 Creating browsing contexts".
99
101
  // https://html.spec.whatwg.org/multipage/document-sequences.html#creating-browsing-contexts
100
102
  // TODO: check who to deal with non-null creator and its `creatorOrigin`.
101
- targetInfo.url === '' ? 'about:blank' : targetInfo.url, targetInfo.openerId, this.#logger);
103
+ targetInfo.url === '' ? 'about:blank' : targetInfo.url, targetInfo.openerFrameId ?? targetInfo.openerId, this.#unhandledPromptBehavior, this.#logger);
102
104
  }
103
105
  return;
104
106
  }
@@ -134,7 +136,7 @@ class CdpTargetManager {
134
136
  }
135
137
  #createCdpTarget(targetCdpClient, targetInfo) {
136
138
  this.#setEventListeners(targetCdpClient);
137
- const target = CdpTarget_js_1.CdpTarget.create(targetInfo.targetId, targetCdpClient, this.#browserCdpClient, this.#realmStorage, this.#eventManager, this.#preloadScriptStorage, this.#browsingContextStorage, this.#networkStorage, this.#acceptInsecureCerts, this.#logger);
139
+ const target = CdpTarget_js_1.CdpTarget.create(targetInfo.targetId, targetCdpClient, this.#browserCdpClient, this.#realmStorage, this.#eventManager, this.#preloadScriptStorage, this.#browsingContextStorage, this.#networkStorage, this.#acceptInsecureCerts, this.#unhandledPromptBehavior, this.#logger);
138
140
  this.#networkStorage.onCdpTargetCreated(target);
139
141
  return target;
140
142
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CdpTargetManager.js","sourceRoot":"","sources":["../../../../../src/bidiMapper/modules/cdp/CdpTargetManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CdpTargetManager.js","sourceRoot":"","sources":["../../../../../src/bidiMapper/modules/cdp/CdpTargetManager.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,7 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  import type { Protocol } from 'devtools-protocol';
18
- import { BrowsingContext } from '../../../protocol/protocol.js';
18
+ import { BrowsingContext, type Session } from '../../../protocol/protocol.js';
19
19
  import { type LoggerFn } from '../../../utils/log.js';
20
20
  import type { CdpTarget } from '../cdp/CdpTarget.js';
21
21
  import type { Realm } from '../script/Realm.js';
@@ -27,12 +27,18 @@ export declare class BrowsingContextImpl {
27
27
  static readonly LOGGER_PREFIX: "debug:browsingContext";
28
28
  readonly userContext: string;
29
29
  private constructor();
30
- static create(id: BrowsingContext.BrowsingContext, parentId: BrowsingContext.BrowsingContext | null, userContext: string, cdpTarget: CdpTarget, eventManager: EventManager, browsingContextStorage: BrowsingContextStorage, realmStorage: RealmStorage, url: string, originalOpener?: string, logger?: LoggerFn): BrowsingContextImpl;
30
+ static create(id: BrowsingContext.BrowsingContext, parentId: BrowsingContext.BrowsingContext | null, userContext: string, cdpTarget: CdpTarget, eventManager: EventManager, browsingContextStorage: BrowsingContextStorage, realmStorage: RealmStorage, url: string, originalOpener?: string, unhandledPromptBehavior?: Session.UserPromptHandler, logger?: LoggerFn): BrowsingContextImpl;
31
31
  static getTimestamp(): number;
32
32
  /**
33
33
  * @see https://html.spec.whatwg.org/multipage/document-sequences.html#navigable
34
34
  */
35
35
  get navigableId(): string | undefined;
36
+ /**
37
+ * Virtual navigation ID. Required, as CDP `loaderId` cannot be mapped 1:1 to all the
38
+ * navigations (e.g. same document navigations). Updated after each navigation,
39
+ * including same-document ones.
40
+ */
41
+ get virtualNavigationId(): string;
36
42
  dispose(): void;
37
43
  /** Returns the ID of this context. */
38
44
  get id(): BrowsingContext.BrowsingContext;
@@ -62,7 +68,7 @@ export declare class BrowsingContextImpl {
62
68
  navigate(url: string, wait: BrowsingContext.ReadinessState): Promise<BrowsingContext.NavigateResult>;
63
69
  reload(ignoreCache: boolean, wait: BrowsingContext.ReadinessState): Promise<BrowsingContext.NavigateResult>;
64
70
  setViewport(viewport?: BrowsingContext.Viewport | null, devicePixelRatio?: number | null): Promise<void>;
65
- handleUserPrompt(params: BrowsingContext.HandleUserPromptParameters): Promise<void>;
71
+ handleUserPrompt(accept?: boolean, userText?: string): Promise<void>;
66
72
  activate(): Promise<void>;
67
73
  captureScreenshot(params: BrowsingContext.CaptureScreenshotParameters): Promise<BrowsingContext.CaptureScreenshotResult>;
68
74
  print(params: BrowsingContext.PrintParameters): Promise<BrowsingContext.PrintResult>;
@@ -16,12 +16,14 @@
16
16
  * limitations under the License.
17
17
  */
18
18
  Object.defineProperty(exports, "__esModule", { value: true });
19
- exports.serializeOrigin = exports.BrowsingContextImpl = void 0;
19
+ exports.BrowsingContextImpl = void 0;
20
+ exports.serializeOrigin = serializeOrigin;
20
21
  const protocol_js_1 = require("../../../protocol/protocol.js");
21
22
  const assert_js_1 = require("../../../utils/assert.js");
22
23
  const Deferred_js_1 = require("../../../utils/Deferred.js");
23
24
  const log_js_1 = require("../../../utils/log.js");
24
25
  const unitConversions_js_1 = require("../../../utils/unitConversions.js");
26
+ const uuid_1 = require("../../../utils/uuid");
25
27
  const WindowRealm_js_1 = require("../script/WindowRealm.js");
26
28
  class BrowsingContextImpl {
27
29
  static LOGGER_PREFIX = `${log_js_1.LogType.debug}:browsingContext`;
@@ -53,8 +55,17 @@ class BrowsingContextImpl {
53
55
  #logger;
54
56
  // Keeps track of the previously set viewport.
55
57
  #previousViewport = { width: 0, height: 0 };
58
+ // The URL of the navigation that is currently in progress. A workaround of the CDP
59
+ // lacking URL for the pending navigation events, e.g. `Page.frameStartedLoading`.
60
+ // Set on `Page.navigate`, `Page.reload` commands and on deprecated CDP event
61
+ // `Page.frameScheduledNavigation`.
62
+ #pendingNavigationUrl;
63
+ #virtualNavigationId = (0, uuid_1.uuidv4)();
56
64
  #originalOpener;
57
- constructor(id, parentId, userContext, cdpTarget, eventManager, browsingContextStorage, realmStorage, url, originalOpener, logger) {
65
+ // Set when the user prompt is opened. Required to provide the type in closing event.
66
+ #lastUserPromptType;
67
+ #unhandledPromptBehavior;
68
+ constructor(id, parentId, userContext, cdpTarget, eventManager, browsingContextStorage, realmStorage, url, originalOpener, unhandledPromptBehavior, logger) {
58
69
  this.#cdpTarget = cdpTarget;
59
70
  this.#id = id;
60
71
  this.#parentId = parentId;
@@ -62,12 +73,13 @@ class BrowsingContextImpl {
62
73
  this.#eventManager = eventManager;
63
74
  this.#browsingContextStorage = browsingContextStorage;
64
75
  this.#realmStorage = realmStorage;
76
+ this.#unhandledPromptBehavior = unhandledPromptBehavior;
65
77
  this.#logger = logger;
66
78
  this.#url = url;
67
79
  this.#originalOpener = originalOpener;
68
80
  }
69
- static create(id, parentId, userContext, cdpTarget, eventManager, browsingContextStorage, realmStorage, url, originalOpener, logger) {
70
- const context = new BrowsingContextImpl(id, parentId, userContext, cdpTarget, eventManager, browsingContextStorage, realmStorage, url, originalOpener, logger);
81
+ static create(id, parentId, userContext, cdpTarget, eventManager, browsingContextStorage, realmStorage, url, originalOpener, unhandledPromptBehavior, logger) {
82
+ const context = new BrowsingContextImpl(id, parentId, userContext, cdpTarget, eventManager, browsingContextStorage, realmStorage, url, originalOpener, unhandledPromptBehavior, logger);
71
83
  context.#initListeners();
72
84
  browsingContextStorage.addContext(context);
73
85
  if (!context.isTopLevelContext()) {
@@ -93,6 +105,14 @@ class BrowsingContextImpl {
93
105
  get navigableId() {
94
106
  return this.#loaderId;
95
107
  }
108
+ /**
109
+ * Virtual navigation ID. Required, as CDP `loaderId` cannot be mapped 1:1 to all the
110
+ * navigations (e.g. same document navigations). Updated after each navigation,
111
+ * including same-document ones.
112
+ */
113
+ get virtualNavigationId() {
114
+ return this.#virtualNavigationId;
115
+ }
96
116
  dispose() {
97
117
  this.#deleteAllChildren();
98
118
  this.#realmStorage.deleteRealms({
@@ -226,6 +246,7 @@ class BrowsingContextImpl {
226
246
  return;
227
247
  }
228
248
  this.#url = params.frame.url + (params.frame.urlFragment ?? '');
249
+ this.#pendingNavigationUrl = undefined;
229
250
  // At the point the page is initialized, all the nested iframes from the
230
251
  // previous page are detached and realms are destroyed.
231
252
  // Remove children from context.
@@ -235,6 +256,7 @@ class BrowsingContextImpl {
235
256
  if (this.id !== params.frameId) {
236
257
  return;
237
258
  }
259
+ this.#pendingNavigationUrl = undefined;
238
260
  const timestamp = BrowsingContextImpl.getTimestamp();
239
261
  this.#url = params.url;
240
262
  this.#navigation.withinDocument.resolve();
@@ -243,7 +265,7 @@ class BrowsingContextImpl {
243
265
  method: protocol_js_1.ChromiumBidi.BrowsingContext.EventNames.FragmentNavigated,
244
266
  params: {
245
267
  context: this.id,
246
- navigation: null,
268
+ navigation: this.#virtualNavigationId,
247
269
  timestamp,
248
270
  url: this.#url,
249
271
  },
@@ -253,17 +275,30 @@ class BrowsingContextImpl {
253
275
  if (this.id !== params.frameId) {
254
276
  return;
255
277
  }
278
+ // Generate a new virtual navigation id.
279
+ this.#virtualNavigationId = (0, uuid_1.uuidv4)();
256
280
  this.#eventManager.registerEvent({
257
281
  type: 'event',
258
282
  method: protocol_js_1.ChromiumBidi.BrowsingContext.EventNames.NavigationStarted,
259
283
  params: {
260
284
  context: this.id,
261
- navigation: null,
285
+ navigation: this.#virtualNavigationId,
262
286
  timestamp: BrowsingContextImpl.getTimestamp(),
263
- url: '',
287
+ // The URL of the navigation that is currently in progress. Although the URL
288
+ // is not yet known in case of user-initiated navigations, it is possible to
289
+ // provide the URL in case of BiDi-initiated navigations.
290
+ // TODO: provide proper URL in case of user-initiated navigations.
291
+ url: this.#pendingNavigationUrl ?? 'UNKNOWN',
264
292
  },
265
293
  }, this.id);
266
294
  });
295
+ // TODO: don't use deprecated `Page.frameScheduledNavigation` event.
296
+ this.#cdpTarget.cdpClient.on('Page.frameScheduledNavigation', (params) => {
297
+ if (this.id !== params.frameId) {
298
+ return;
299
+ }
300
+ this.#pendingNavigationUrl = params.url;
301
+ });
267
302
  this.#cdpTarget.cdpClient.on('Page.lifecycleEvent', (params) => {
268
303
  if (this.id !== params.frameId) {
269
304
  return;
@@ -294,7 +329,7 @@ class BrowsingContextImpl {
294
329
  method: protocol_js_1.ChromiumBidi.BrowsingContext.EventNames.DomContentLoaded,
295
330
  params: {
296
331
  context: this.id,
297
- navigation: this.#loaderId ?? null,
332
+ navigation: this.#virtualNavigationId,
298
333
  timestamp,
299
334
  url: this.#url,
300
335
  },
@@ -307,7 +342,7 @@ class BrowsingContextImpl {
307
342
  method: protocol_js_1.ChromiumBidi.BrowsingContext.EventNames.Load,
308
343
  params: {
309
344
  context: this.id,
310
- navigation: this.#loaderId ?? null,
345
+ navigation: this.#virtualNavigationId,
311
346
  timestamp,
312
347
  url: this.#url,
313
348
  },
@@ -376,31 +411,91 @@ class BrowsingContextImpl {
376
411
  });
377
412
  this.#cdpTarget.cdpClient.on('Page.javascriptDialogClosed', (params) => {
378
413
  const accepted = params.result;
414
+ if (this.#lastUserPromptType === undefined) {
415
+ this.#logger?.(log_js_1.LogType.debugError, 'Unexpectedly no opening prompt event before closing one');
416
+ }
379
417
  this.#eventManager.registerEvent({
380
418
  type: 'event',
381
419
  method: protocol_js_1.ChromiumBidi.BrowsingContext.EventNames.UserPromptClosed,
382
420
  params: {
383
421
  context: this.id,
384
422
  accepted,
423
+ // `lastUserPromptType` should never be undefined here, so fallback to
424
+ // `UNKNOWN`. The fallback is required to prevent tests from hanging while
425
+ // waiting for the closing event. The cast is required, as the `UNKNOWN` value
426
+ // is not standard.
427
+ type: this.#lastUserPromptType ??
428
+ 'UNKNOWN',
385
429
  userText: accepted && params.userInput ? params.userInput : undefined,
386
430
  },
387
431
  }, this.id);
432
+ this.#lastUserPromptType = undefined;
388
433
  });
389
434
  this.#cdpTarget.cdpClient.on('Page.javascriptDialogOpening', (params) => {
435
+ const promptType = BrowsingContextImpl.#getPromptType(params.type);
436
+ // Set the last prompt type to provide it in closing event.
437
+ this.#lastUserPromptType = promptType;
438
+ const promptHandler = this.#getPromptHandler(promptType);
390
439
  this.#eventManager.registerEvent({
391
440
  type: 'event',
392
441
  method: protocol_js_1.ChromiumBidi.BrowsingContext.EventNames.UserPromptOpened,
393
442
  params: {
394
443
  context: this.id,
395
- type: params.type,
444
+ handler: promptHandler,
445
+ type: promptType,
396
446
  message: params.message,
397
447
  ...(params.type === 'prompt'
398
448
  ? { defaultValue: params.defaultPrompt }
399
449
  : {}),
400
450
  },
401
451
  }, this.id);
452
+ switch (promptHandler) {
453
+ // Based on `unhandledPromptBehavior`, check if the prompt should be handled
454
+ // automatically (`accept`, `dismiss`) or wait for the user to do it.
455
+ case 'accept':
456
+ void this.handleUserPrompt(true);
457
+ break;
458
+ case 'dismiss':
459
+ void this.handleUserPrompt(false);
460
+ break;
461
+ case 'ignore':
462
+ break;
463
+ }
402
464
  });
403
465
  }
466
+ static #getPromptType(cdpType) {
467
+ switch (cdpType) {
468
+ case 'alert':
469
+ return "alert" /* BrowsingContext.UserPromptType.Alert */;
470
+ case 'beforeunload':
471
+ return "beforeunload" /* BrowsingContext.UserPromptType.Beforeunload */;
472
+ case 'confirm':
473
+ return "confirm" /* BrowsingContext.UserPromptType.Confirm */;
474
+ case 'prompt':
475
+ return "prompt" /* BrowsingContext.UserPromptType.Prompt */;
476
+ }
477
+ }
478
+ #getPromptHandler(promptType) {
479
+ const defaultPromptHandler = 'dismiss';
480
+ switch (promptType) {
481
+ case "alert" /* BrowsingContext.UserPromptType.Alert */:
482
+ return (this.#unhandledPromptBehavior?.alert ??
483
+ this.#unhandledPromptBehavior?.default ??
484
+ defaultPromptHandler);
485
+ case "beforeunload" /* BrowsingContext.UserPromptType.Beforeunload */:
486
+ return (this.#unhandledPromptBehavior?.beforeUnload ??
487
+ this.#unhandledPromptBehavior?.default ??
488
+ defaultPromptHandler);
489
+ case "confirm" /* BrowsingContext.UserPromptType.Confirm */:
490
+ return (this.#unhandledPromptBehavior?.confirm ??
491
+ this.#unhandledPromptBehavior?.default ??
492
+ defaultPromptHandler);
493
+ case "prompt" /* BrowsingContext.UserPromptType.Prompt */:
494
+ return (this.#unhandledPromptBehavior?.prompt ??
495
+ this.#unhandledPromptBehavior?.default ??
496
+ defaultPromptHandler);
497
+ }
498
+ }
404
499
  #documentChanged(loaderId) {
405
500
  // Same document navigation.
406
501
  if (loaderId === undefined || this.#loaderId === loaderId) {
@@ -445,18 +540,25 @@ class BrowsingContextImpl {
445
540
  throw new protocol_js_1.InvalidArgumentException(`Invalid URL: ${url}`);
446
541
  }
447
542
  await this.targetUnblockedOrThrow();
543
+ // Set the pending navigation URL to provide it in `browsingContext.navigationStarted`
544
+ // event.
545
+ // TODO: detect navigation start not from CDP. Check if
546
+ // `Page.frameRequestedNavigation` can be used for this purpose.
547
+ this.#pendingNavigationUrl = url;
448
548
  // TODO: handle loading errors.
449
549
  const cdpNavigateResult = await this.#cdpTarget.cdpClient.sendCommand('Page.navigate', {
450
550
  url,
451
551
  frameId: this.id,
452
552
  });
453
553
  if (cdpNavigateResult.errorText) {
554
+ // If navigation failed, no pending navigation is left.
555
+ this.#pendingNavigationUrl = undefined;
454
556
  this.#eventManager.registerEvent({
455
557
  type: 'event',
456
558
  method: protocol_js_1.ChromiumBidi.BrowsingContext.EventNames.NavigationFailed,
457
559
  params: {
458
560
  context: this.id,
459
- navigation: cdpNavigateResult.loaderId ?? null,
561
+ navigation: this.#virtualNavigationId,
460
562
  timestamp: BrowsingContextImpl.getTimestamp(),
461
563
  url,
462
564
  },
@@ -487,7 +589,7 @@ class BrowsingContextImpl {
487
589
  break;
488
590
  }
489
591
  return {
490
- navigation: cdpNavigateResult.loaderId ?? null,
592
+ navigation: this.#virtualNavigationId,
491
593
  // Url can change due to redirect get the latest one.
492
594
  url: wait === "none" /* BrowsingContext.ReadinessState.None */ ? url : this.#url,
493
595
  };
@@ -509,9 +611,7 @@ class BrowsingContextImpl {
509
611
  break;
510
612
  }
511
613
  return {
512
- navigation: wait === "none" /* BrowsingContext.ReadinessState.None */
513
- ? null
514
- : this.navigableId ?? null,
614
+ navigation: this.#virtualNavigationId,
515
615
  url: this.url,
516
616
  };
517
617
  }
@@ -553,10 +653,10 @@ class BrowsingContextImpl {
553
653
  }
554
654
  }
555
655
  }
556
- async handleUserPrompt(params) {
656
+ async handleUserPrompt(accept, userText) {
557
657
  await this.#cdpTarget.cdpClient.sendCommand('Page.handleJavaScriptDialog', {
558
- accept: params.accept ?? true,
559
- promptText: params.userText,
658
+ accept: accept ?? true,
659
+ promptText: userText,
560
660
  });
561
661
  }
562
662
  async activate() {
@@ -1064,7 +1164,6 @@ function serializeOrigin(origin) {
1064
1164
  }
1065
1165
  return origin;
1066
1166
  }
1067
- exports.serializeOrigin = serializeOrigin;
1068
1167
  function getImageFormatParameters(params) {
1069
1168
  const { quality, type } = params.format ?? {
1070
1169
  type: 'image/png',