chromium-bidi 0.5.23 → 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 (70) hide show
  1. package/.browser +1 -1
  2. package/README.md +0 -2
  3. package/lib/cjs/bidiMapper/BidiServer.d.ts +2 -1
  4. package/lib/cjs/bidiMapper/BidiServer.js +2 -2
  5. package/lib/cjs/bidiMapper/BidiServer.js.map +1 -1
  6. package/lib/cjs/bidiMapper/modules/cdp/CdpTarget.d.ts +3 -3
  7. package/lib/cjs/bidiMapper/modules/cdp/CdpTarget.js +6 -4
  8. package/lib/cjs/bidiMapper/modules/cdp/CdpTarget.js.map +1 -1
  9. package/lib/cjs/bidiMapper/modules/cdp/CdpTargetManager.d.ts +2 -2
  10. package/lib/cjs/bidiMapper/modules/cdp/CdpTargetManager.js +6 -4
  11. package/lib/cjs/bidiMapper/modules/cdp/CdpTargetManager.js.map +1 -1
  12. package/lib/cjs/bidiMapper/modules/context/BrowsingContextImpl.d.ts +9 -3
  13. package/lib/cjs/bidiMapper/modules/context/BrowsingContextImpl.js +121 -19
  14. package/lib/cjs/bidiMapper/modules/context/BrowsingContextImpl.js.map +1 -1
  15. package/lib/cjs/bidiMapper/modules/context/BrowsingContextProcessor.js +1 -1
  16. package/lib/cjs/bidiMapper/modules/context/BrowsingContextProcessor.js.map +1 -1
  17. package/lib/cjs/bidiMapper/modules/input/InputSource.d.ts +5 -5
  18. package/lib/cjs/bidiMapper/modules/input/keyUtils.js +3 -4
  19. package/lib/cjs/bidiMapper/modules/input/keyUtils.js.map +1 -1
  20. package/lib/cjs/bidiMapper/modules/log/LogManager.js +6 -0
  21. package/lib/cjs/bidiMapper/modules/log/LogManager.js.map +1 -1
  22. package/lib/cjs/bidiMapper/modules/log/logHelper.js +2 -3
  23. package/lib/cjs/bidiMapper/modules/log/logHelper.js.map +1 -1
  24. package/lib/cjs/bidiMapper/modules/network/NetworkProcessor.d.ts +16 -0
  25. package/lib/cjs/bidiMapper/modules/network/NetworkProcessor.js +29 -97
  26. package/lib/cjs/bidiMapper/modules/network/NetworkProcessor.js.map +1 -1
  27. package/lib/cjs/bidiMapper/modules/network/NetworkRequest.d.ts +4 -4
  28. package/lib/cjs/bidiMapper/modules/network/NetworkRequest.js +129 -30
  29. package/lib/cjs/bidiMapper/modules/network/NetworkRequest.js.map +1 -1
  30. package/lib/cjs/bidiMapper/modules/network/NetworkStorage.d.ts +6 -1
  31. package/lib/cjs/bidiMapper/modules/network/NetworkStorage.js +13 -1
  32. package/lib/cjs/bidiMapper/modules/network/NetworkStorage.js.map +1 -1
  33. package/lib/cjs/bidiMapper/modules/network/NetworkUtils.d.ts +1 -0
  34. package/lib/cjs/bidiMapper/modules/network/NetworkUtils.js +21 -14
  35. package/lib/cjs/bidiMapper/modules/network/NetworkUtils.js.map +1 -1
  36. package/lib/cjs/bidiMapper/modules/script/SharedId.js +2 -3
  37. package/lib/cjs/bidiMapper/modules/script/SharedId.js.map +1 -1
  38. package/lib/cjs/bidiMapper/modules/session/SubscriptionManager.js +3 -3
  39. package/lib/cjs/bidiMapper/modules/session/SubscriptionManager.js.map +1 -1
  40. package/lib/cjs/bidiMapper/modules/session/events.js +2 -3
  41. package/lib/cjs/bidiMapper/modules/session/events.js.map +1 -1
  42. package/lib/cjs/bidiServer/WebSocketServer.js +2 -1
  43. package/lib/cjs/bidiServer/WebSocketServer.js.map +1 -1
  44. package/lib/cjs/bidiServer/index.js +1 -2
  45. package/lib/cjs/bidiServer/index.js.map +1 -1
  46. package/lib/cjs/bidiServer/reader.js +1 -2
  47. package/lib/cjs/bidiServer/reader.js.map +1 -1
  48. package/lib/cjs/bidiTab/mapperTabPage.js +2 -3
  49. package/lib/cjs/bidiTab/mapperTabPage.js.map +1 -1
  50. package/lib/cjs/protocol/generated/webdriver-bidi.d.ts +30 -2
  51. package/lib/cjs/protocol-parser/generated/webdriver-bidi.d.ts +1218 -122
  52. package/lib/cjs/protocol-parser/generated/webdriver-bidi.js +24 -2
  53. package/lib/cjs/protocol-parser/generated/webdriver-bidi.js.map +1 -1
  54. package/lib/cjs/protocol-parser/protocol-parser.js +2 -2
  55. package/lib/cjs/protocol-parser/protocol-parser.js.map +1 -1
  56. package/lib/cjs/utils/Base64.js +1 -2
  57. package/lib/cjs/utils/Base64.js.map +1 -1
  58. package/lib/cjs/utils/DistinctValues.js +2 -3
  59. package/lib/cjs/utils/DistinctValues.js.map +1 -1
  60. package/lib/cjs/utils/GraphemeTools.js +2 -3
  61. package/lib/cjs/utils/GraphemeTools.js.map +1 -1
  62. package/lib/cjs/utils/assert.js +1 -2
  63. package/lib/cjs/utils/assert.js.map +1 -1
  64. package/lib/cjs/utils/unitConversions.js +1 -2
  65. package/lib/cjs/utils/unitConversions.js.map +1 -1
  66. package/lib/cjs/utils/uuid.js +1 -2
  67. package/lib/cjs/utils/uuid.js.map +1 -1
  68. package/lib/iife/mapperTab.js +878 -707
  69. package/lib/iife/mapperTab.js.map +1 -1
  70. package/package.json +15 -21
package/.browser CHANGED
@@ -1 +1 @@
1
- chrome@127.0.6532.0
1
+ chrome@128.0.6562.0
package/README.md CHANGED
@@ -8,8 +8,6 @@
8
8
 
9
9
  ![Pre-commit](https://github.com/GoogleChromeLabs/chromium-bidi/actions/workflows/pre-commit.yml/badge.svg)
10
10
 
11
- [![codecov](https://codecov.io/gh/GoogleChromeLabs/chromium-bidi/branch/main/graph/badge.svg?token=LJSXSC9L09)](https://codecov.io/gh/GoogleChromeLabs/chromium-bidi)
12
-
13
11
  This is an implementation of the
14
12
  [WebDriver BiDi](https://w3c.github.io/webdriver-bidi/) protocol with some
15
13
  extensions (**BiDi+**)
@@ -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, 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', 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, 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, 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,7 +55,17 @@ class BrowsingContextImpl {
53
55
  #logger;
54
56
  // Keeps track of the previously set viewport.
55
57
  #previousViewport = { width: 0, height: 0 };
56
- constructor(id, parentId, userContext, cdpTarget, eventManager, browsingContextStorage, realmStorage, url, logger) {
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)();
64
+ #originalOpener;
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) {
57
69
  this.#cdpTarget = cdpTarget;
58
70
  this.#id = id;
59
71
  this.#parentId = parentId;
@@ -61,11 +73,13 @@ class BrowsingContextImpl {
61
73
  this.#eventManager = eventManager;
62
74
  this.#browsingContextStorage = browsingContextStorage;
63
75
  this.#realmStorage = realmStorage;
76
+ this.#unhandledPromptBehavior = unhandledPromptBehavior;
64
77
  this.#logger = logger;
65
78
  this.#url = url;
79
+ this.#originalOpener = originalOpener;
66
80
  }
67
- static create(id, parentId, userContext, cdpTarget, eventManager, browsingContextStorage, realmStorage, url, logger) {
68
- const context = new BrowsingContextImpl(id, parentId, userContext, cdpTarget, eventManager, browsingContextStorage, realmStorage, url, 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);
69
83
  context.#initListeners();
70
84
  browsingContextStorage.addContext(context);
71
85
  if (!context.isTopLevelContext()) {
@@ -91,6 +105,14 @@ class BrowsingContextImpl {
91
105
  get navigableId() {
92
106
  return this.#loaderId;
93
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
+ }
94
116
  dispose() {
95
117
  this.#deleteAllChildren();
96
118
  this.#realmStorage.deleteRealms({
@@ -208,6 +230,7 @@ class BrowsingContextImpl {
208
230
  context: this.#id,
209
231
  url: this.url,
210
232
  userContext: this.userContext,
233
+ originalOpener: this.#originalOpener ?? null,
211
234
  children: maxDepth > 0
212
235
  ? this.directChildren.map((c) => c.serializeToBidiValue(maxDepth - 1, false))
213
236
  : null,
@@ -223,6 +246,7 @@ class BrowsingContextImpl {
223
246
  return;
224
247
  }
225
248
  this.#url = params.frame.url + (params.frame.urlFragment ?? '');
249
+ this.#pendingNavigationUrl = undefined;
226
250
  // At the point the page is initialized, all the nested iframes from the
227
251
  // previous page are detached and realms are destroyed.
228
252
  // Remove children from context.
@@ -232,6 +256,7 @@ class BrowsingContextImpl {
232
256
  if (this.id !== params.frameId) {
233
257
  return;
234
258
  }
259
+ this.#pendingNavigationUrl = undefined;
235
260
  const timestamp = BrowsingContextImpl.getTimestamp();
236
261
  this.#url = params.url;
237
262
  this.#navigation.withinDocument.resolve();
@@ -240,7 +265,7 @@ class BrowsingContextImpl {
240
265
  method: protocol_js_1.ChromiumBidi.BrowsingContext.EventNames.FragmentNavigated,
241
266
  params: {
242
267
  context: this.id,
243
- navigation: null,
268
+ navigation: this.#virtualNavigationId,
244
269
  timestamp,
245
270
  url: this.#url,
246
271
  },
@@ -250,17 +275,30 @@ class BrowsingContextImpl {
250
275
  if (this.id !== params.frameId) {
251
276
  return;
252
277
  }
278
+ // Generate a new virtual navigation id.
279
+ this.#virtualNavigationId = (0, uuid_1.uuidv4)();
253
280
  this.#eventManager.registerEvent({
254
281
  type: 'event',
255
282
  method: protocol_js_1.ChromiumBidi.BrowsingContext.EventNames.NavigationStarted,
256
283
  params: {
257
284
  context: this.id,
258
- navigation: null,
285
+ navigation: this.#virtualNavigationId,
259
286
  timestamp: BrowsingContextImpl.getTimestamp(),
260
- 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',
261
292
  },
262
293
  }, this.id);
263
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
+ });
264
302
  this.#cdpTarget.cdpClient.on('Page.lifecycleEvent', (params) => {
265
303
  if (this.id !== params.frameId) {
266
304
  return;
@@ -291,7 +329,7 @@ class BrowsingContextImpl {
291
329
  method: protocol_js_1.ChromiumBidi.BrowsingContext.EventNames.DomContentLoaded,
292
330
  params: {
293
331
  context: this.id,
294
- navigation: this.#loaderId ?? null,
332
+ navigation: this.#virtualNavigationId,
295
333
  timestamp,
296
334
  url: this.#url,
297
335
  },
@@ -304,7 +342,7 @@ class BrowsingContextImpl {
304
342
  method: protocol_js_1.ChromiumBidi.BrowsingContext.EventNames.Load,
305
343
  params: {
306
344
  context: this.id,
307
- navigation: this.#loaderId ?? null,
345
+ navigation: this.#virtualNavigationId,
308
346
  timestamp,
309
347
  url: this.#url,
310
348
  },
@@ -373,31 +411,91 @@ class BrowsingContextImpl {
373
411
  });
374
412
  this.#cdpTarget.cdpClient.on('Page.javascriptDialogClosed', (params) => {
375
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
+ }
376
417
  this.#eventManager.registerEvent({
377
418
  type: 'event',
378
419
  method: protocol_js_1.ChromiumBidi.BrowsingContext.EventNames.UserPromptClosed,
379
420
  params: {
380
421
  context: this.id,
381
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',
382
429
  userText: accepted && params.userInput ? params.userInput : undefined,
383
430
  },
384
431
  }, this.id);
432
+ this.#lastUserPromptType = undefined;
385
433
  });
386
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);
387
439
  this.#eventManager.registerEvent({
388
440
  type: 'event',
389
441
  method: protocol_js_1.ChromiumBidi.BrowsingContext.EventNames.UserPromptOpened,
390
442
  params: {
391
443
  context: this.id,
392
- type: params.type,
444
+ handler: promptHandler,
445
+ type: promptType,
393
446
  message: params.message,
394
447
  ...(params.type === 'prompt'
395
448
  ? { defaultValue: params.defaultPrompt }
396
449
  : {}),
397
450
  },
398
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
+ }
399
464
  });
400
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
+ }
401
499
  #documentChanged(loaderId) {
402
500
  // Same document navigation.
403
501
  if (loaderId === undefined || this.#loaderId === loaderId) {
@@ -442,18 +540,25 @@ class BrowsingContextImpl {
442
540
  throw new protocol_js_1.InvalidArgumentException(`Invalid URL: ${url}`);
443
541
  }
444
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;
445
548
  // TODO: handle loading errors.
446
549
  const cdpNavigateResult = await this.#cdpTarget.cdpClient.sendCommand('Page.navigate', {
447
550
  url,
448
551
  frameId: this.id,
449
552
  });
450
553
  if (cdpNavigateResult.errorText) {
554
+ // If navigation failed, no pending navigation is left.
555
+ this.#pendingNavigationUrl = undefined;
451
556
  this.#eventManager.registerEvent({
452
557
  type: 'event',
453
558
  method: protocol_js_1.ChromiumBidi.BrowsingContext.EventNames.NavigationFailed,
454
559
  params: {
455
560
  context: this.id,
456
- navigation: cdpNavigateResult.loaderId ?? null,
561
+ navigation: this.#virtualNavigationId,
457
562
  timestamp: BrowsingContextImpl.getTimestamp(),
458
563
  url,
459
564
  },
@@ -484,7 +589,7 @@ class BrowsingContextImpl {
484
589
  break;
485
590
  }
486
591
  return {
487
- navigation: cdpNavigateResult.loaderId ?? null,
592
+ navigation: this.#virtualNavigationId,
488
593
  // Url can change due to redirect get the latest one.
489
594
  url: wait === "none" /* BrowsingContext.ReadinessState.None */ ? url : this.#url,
490
595
  };
@@ -506,9 +611,7 @@ class BrowsingContextImpl {
506
611
  break;
507
612
  }
508
613
  return {
509
- navigation: wait === "none" /* BrowsingContext.ReadinessState.None */
510
- ? null
511
- : this.navigableId ?? null,
614
+ navigation: this.#virtualNavigationId,
512
615
  url: this.url,
513
616
  };
514
617
  }
@@ -550,10 +653,10 @@ class BrowsingContextImpl {
550
653
  }
551
654
  }
552
655
  }
553
- async handleUserPrompt(params) {
656
+ async handleUserPrompt(accept, userText) {
554
657
  await this.#cdpTarget.cdpClient.sendCommand('Page.handleJavaScriptDialog', {
555
- accept: params.accept ?? true,
556
- promptText: params.userText,
658
+ accept: accept ?? true,
659
+ promptText: userText,
557
660
  });
558
661
  }
559
662
  async activate() {
@@ -1061,7 +1164,6 @@ function serializeOrigin(origin) {
1061
1164
  }
1062
1165
  return origin;
1063
1166
  }
1064
- exports.serializeOrigin = serializeOrigin;
1065
1167
  function getImageFormatParameters(params) {
1066
1168
  const { quality, type } = params.format ?? {
1067
1169
  type: 'image/png',