chromium-bidi 0.4.17 → 0.4.18

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 (84) hide show
  1. package/.browser +1 -1
  2. package/README.md +2 -2
  3. package/lib/cjs/bidiMapper/BidiNoOpParser.d.ts +2 -8
  4. package/lib/cjs/bidiMapper/BidiNoOpParser.js +3 -24
  5. package/lib/cjs/bidiMapper/BidiNoOpParser.js.map +1 -1
  6. package/lib/cjs/bidiMapper/BidiParser.d.ts +2 -8
  7. package/lib/cjs/bidiMapper/CommandProcessor.js +38 -39
  8. package/lib/cjs/bidiMapper/CommandProcessor.js.map +1 -1
  9. package/lib/cjs/bidiMapper/domains/context/browsingContextImpl.d.ts +1 -0
  10. package/lib/cjs/bidiMapper/domains/context/browsingContextImpl.js +70 -34
  11. package/lib/cjs/bidiMapper/domains/context/browsingContextImpl.js.map +1 -1
  12. package/lib/cjs/bidiMapper/domains/context/browsingContextProcessor.d.ts +4 -17
  13. package/lib/cjs/bidiMapper/domains/context/browsingContextProcessor.js +14 -150
  14. package/lib/cjs/bidiMapper/domains/context/browsingContextProcessor.js.map +1 -1
  15. package/lib/cjs/bidiMapper/domains/context/cdpTarget.d.ts +1 -1
  16. package/lib/cjs/bidiMapper/domains/context/cdpTarget.js +1 -0
  17. package/lib/cjs/bidiMapper/domains/context/cdpTarget.js.map +1 -1
  18. package/lib/cjs/bidiMapper/domains/events/EventManager.js +4 -2
  19. package/lib/cjs/bidiMapper/domains/events/EventManager.js.map +1 -1
  20. package/lib/cjs/bidiMapper/domains/input/ActionDispatcher.js +50 -48
  21. package/lib/cjs/bidiMapper/domains/input/ActionDispatcher.js.map +1 -1
  22. package/lib/cjs/bidiMapper/domains/input/InputProcessor.d.ts +10 -0
  23. package/lib/cjs/bidiMapper/domains/input/InputProcessor.js +80 -0
  24. package/lib/cjs/bidiMapper/domains/input/InputProcessor.js.map +1 -0
  25. package/lib/cjs/bidiMapper/domains/input/InputStateManager.d.ts +1 -3
  26. package/lib/cjs/bidiMapper/domains/input/InputStateManager.js +6 -12
  27. package/lib/cjs/bidiMapper/domains/input/InputStateManager.js.map +1 -1
  28. package/lib/cjs/bidiMapper/domains/log/logHelper.js +2 -1
  29. package/lib/cjs/bidiMapper/domains/log/logHelper.js.map +1 -1
  30. package/lib/cjs/bidiMapper/domains/log/logManager.js +3 -1
  31. package/lib/cjs/bidiMapper/domains/log/logManager.js.map +1 -1
  32. package/lib/cjs/bidiMapper/domains/network/networkProcessor.js +15 -4
  33. package/lib/cjs/bidiMapper/domains/network/networkProcessor.js.map +1 -1
  34. package/lib/cjs/bidiMapper/domains/network/networkRequest.js +5 -4
  35. package/lib/cjs/bidiMapper/domains/network/networkRequest.js.map +1 -1
  36. package/lib/cjs/bidiMapper/domains/{context → script}/PreloadScriptStorage.d.ts +1 -1
  37. package/lib/cjs/bidiMapper/domains/script/PreloadScriptStorage.js.map +1 -0
  38. package/lib/cjs/bidiMapper/domains/script/ScriptProcessor.d.ts +30 -0
  39. package/lib/cjs/bidiMapper/domains/script/ScriptProcessor.js +97 -0
  40. package/lib/cjs/bidiMapper/domains/script/ScriptProcessor.js.map +1 -0
  41. package/lib/cjs/bidiMapper/domains/{context → script}/bidiPreloadScript.d.ts +2 -2
  42. package/lib/cjs/bidiMapper/domains/{context → script}/bidiPreloadScript.js +1 -1
  43. package/lib/cjs/bidiMapper/domains/script/bidiPreloadScript.js.map +1 -0
  44. package/lib/cjs/bidiMapper/domains/script/channelProxy.js +5 -4
  45. package/lib/cjs/bidiMapper/domains/script/channelProxy.js.map +1 -1
  46. package/lib/cjs/bidiMapper/domains/script/realm.d.ts +10 -17
  47. package/lib/cjs/bidiMapper/domains/script/realm.js +398 -95
  48. package/lib/cjs/bidiMapper/domains/script/realm.js.map +1 -1
  49. package/lib/cjs/bidiMapper/domains/script/realmStorage.d.ts +3 -3
  50. package/lib/cjs/bidiMapper/domains/script/realmStorage.js +6 -6
  51. package/lib/cjs/bidiMapper/domains/script/realmStorage.js.map +1 -1
  52. package/lib/cjs/bidiMapper/tsconfig.tsbuildinfo +1 -1
  53. package/lib/cjs/bidiServer/bidiServerRunner.js +1 -0
  54. package/lib/cjs/bidiServer/bidiServerRunner.js.map +1 -1
  55. package/lib/cjs/bidiServer/tsconfig.tsbuildinfo +1 -1
  56. package/lib/cjs/bidiTab/BidiParserImpl.d.ts +18 -8
  57. package/lib/cjs/bidiTab/BidiParserImpl.js +7 -44
  58. package/lib/cjs/bidiTab/BidiParserImpl.js.map +1 -1
  59. package/lib/cjs/bidiTab/bidiTab.js +1 -0
  60. package/lib/cjs/bidiTab/bidiTab.js.map +1 -1
  61. package/lib/cjs/bidiTab/tsconfig.tsbuildinfo +1 -1
  62. package/lib/cjs/cdp/tsconfig.tsbuildinfo +1 -1
  63. package/lib/cjs/protocol/ErrorResponse.js +1 -0
  64. package/lib/cjs/protocol/ErrorResponse.js.map +1 -1
  65. package/lib/cjs/protocol/cdp.d.ts +4 -1
  66. package/lib/cjs/protocol/tsconfig.tsbuildinfo +1 -1
  67. package/lib/cjs/protocol/webdriver-bidi.d.ts +62 -209
  68. package/lib/cjs/protocol-parser/protocol-parser.d.ts +7 -12
  69. package/lib/cjs/protocol-parser/protocol-parser.js +5 -33
  70. package/lib/cjs/protocol-parser/protocol-parser.js.map +1 -1
  71. package/lib/cjs/protocol-parser/tsconfig.tsbuildinfo +1 -1
  72. package/lib/cjs/protocol-parser/webdriver-bidi.d.ts +4423 -11974
  73. package/lib/cjs/protocol-parser/webdriver-bidi.js +24 -164
  74. package/lib/cjs/protocol-parser/webdriver-bidi.js.map +1 -1
  75. package/lib/cjs/utils/tsconfig.tsbuildinfo +1 -1
  76. package/lib/iife/mapperTab.js +2 -2
  77. package/lib/iife/mapperTab.js.map +1 -1
  78. package/package.json +19 -21
  79. package/lib/cjs/bidiMapper/domains/context/PreloadScriptStorage.js.map +0 -1
  80. package/lib/cjs/bidiMapper/domains/context/bidiPreloadScript.js.map +0 -1
  81. package/lib/cjs/bidiMapper/domains/script/scriptEvaluator.d.ts +0 -43
  82. package/lib/cjs/bidiMapper/domains/script/scriptEvaluator.js +0 -369
  83. package/lib/cjs/bidiMapper/domains/script/scriptEvaluator.js.map +0 -1
  84. /package/lib/cjs/bidiMapper/domains/{context → script}/PreloadScriptStorage.js +0 -0
package/.browser CHANGED
@@ -1 +1 @@
1
- chrome@117.0.5875.0
1
+ chrome@117.0.5900.2
package/README.md CHANGED
@@ -207,11 +207,11 @@ DEBUG=* npm run server -- --verbose
207
207
 
208
208
  TODO: verify it works on Windows.
209
209
 
210
- You can also run the server by using script `./runBiDiServer.sh`. It will write
210
+ You can also run the server by using `npm run server`. It will write
211
211
  output to the file `log.txt`:
212
212
 
213
213
  ```sh
214
- ./runBiDiServer.sh --port=8081 --headless=false
214
+ npm run server -- --port=8081 --headless=false
215
215
  ```
216
216
 
217
217
  ## Running
@@ -14,9 +14,10 @@
14
14
  * See the License for the specific language governing permissions and
15
15
  * limitations under the License.
16
16
  */
17
- import type { BrowsingContext, Cdp, Input, Network, Script, Session } from '../protocol/protocol.js';
17
+ import type { BrowsingContext, Cdp, Input, Script, Session } from '../protocol/protocol.js';
18
18
  import type { IBidiParser } from './BidiParser.js';
19
19
  export declare class BidiNoOpParser implements IBidiParser {
20
+ parseActivateParams(params: unknown): BrowsingContext.ActivateParameters;
20
21
  parseCaptureScreenshotParams(params: unknown): BrowsingContext.CaptureScreenshotParameters;
21
22
  parseCloseParams(params: unknown): BrowsingContext.CloseParameters;
22
23
  parseCreateParams(params: unknown): BrowsingContext.CreateParameters;
@@ -36,12 +37,5 @@ export declare class BidiNoOpParser implements IBidiParser {
36
37
  parseRemovePreloadScriptParams(params: unknown): Script.RemovePreloadScriptParameters;
37
38
  parsePerformActionsParams(params: unknown): Input.PerformActionsParameters;
38
39
  parseReleaseActionsParams(params: unknown): Input.ReleaseActionsParameters;
39
- parseAddInterceptParams(params: unknown): Network.AddInterceptParameters;
40
- parseContinueRequestParams(params: unknown): Network.ContinueRequestParameters;
41
- parseContinueResponseParams(params: unknown): Network.ContinueResponseParameters;
42
- parseContinueWithAuthParams(params: unknown): Network.ContinueWithAuthParameters;
43
- parseFailRequestParams(params: unknown): Network.FailRequestParameters;
44
- parseProvideResponseParams(params: unknown): Network.ProvideResponseParameters;
45
- parseRemoveInterceptParams(params: unknown): Network.RemoveInterceptParameters;
46
40
  parseSubscribeParams(params: unknown): Session.SubscriptionRequest;
47
41
  }
@@ -20,6 +20,9 @@ exports.BidiNoOpParser = void 0;
20
20
  class BidiNoOpParser {
21
21
  // Browsing Context domain
22
22
  // keep-sorted start block=yes
23
+ parseActivateParams(params) {
24
+ return params;
25
+ }
23
26
  parseCaptureScreenshotParams(params) {
24
27
  return params;
25
28
  }
@@ -87,30 +90,6 @@ class BidiNoOpParser {
87
90
  return params;
88
91
  }
89
92
  // keep-sorted end
90
- // Network domain
91
- // keep-sorted start block=yes
92
- parseAddInterceptParams(params) {
93
- return params;
94
- }
95
- parseContinueRequestParams(params) {
96
- return params;
97
- }
98
- parseContinueResponseParams(params) {
99
- return params;
100
- }
101
- parseContinueWithAuthParams(params) {
102
- return params;
103
- }
104
- parseFailRequestParams(params) {
105
- return params;
106
- }
107
- parseProvideResponseParams(params) {
108
- return params;
109
- }
110
- parseRemoveInterceptParams(params) {
111
- return params;
112
- }
113
- // keep-sorted end
114
93
  // Session domain
115
94
  // keep-sorted start block=yes
116
95
  parseSubscribeParams(params) {
@@ -1 +1 @@
1
- {"version":3,"file":"BidiNoOpParser.js","sourceRoot":"","sources":["../../../src/bidiMapper/BidiNoOpParser.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;;AAaH,MAAa,cAAc;IACzB,0BAA0B;IAC1B,8BAA8B;IAC9B,4BAA4B,CAC1B,MAAe;QAEf,OAAO,MAAqD,CAAC;IAC/D,CAAC;IACD,gBAAgB,CAAC,MAAe;QAC9B,OAAO,MAAyC,CAAC;IACnD,CAAC;IACD,iBAAiB,CAAC,MAAe;QAC/B,OAAO,MAA0C,CAAC;IACpD,CAAC;IACD,kBAAkB,CAAC,MAAe;QAChC,OAAO,MAA2C,CAAC;IACrD,CAAC;IACD,2BAA2B,CACzB,MAAe;QAEf,OAAO,MAAoD,CAAC;IAC9D,CAAC;IACD,mBAAmB,CAAC,MAAe;QACjC,OAAO,MAA4C,CAAC;IACtD,CAAC;IACD,gBAAgB,CAAC,MAAe;QAC9B,OAAO,MAAyC,CAAC;IACnD,CAAC;IACD,iBAAiB,CAAC,MAAe;QAC/B,OAAO,MAA0C,CAAC;IACpD,CAAC;IACD,sBAAsB,CACpB,MAAe;QAEf,OAAO,MAA+C,CAAC;IACzD,CAAC;IACD,kBAAkB;IAElB,aAAa;IACb,8BAA8B;IAC9B,qBAAqB,CAAC,MAAe;QACnC,OAAO,MAAkC,CAAC;IAC5C,CAAC;IACD,sBAAsB,CAAC,MAAe;QACpC,OAAO,MAAmC,CAAC;IAC7C,CAAC;IACD,kBAAkB;IAElB,gBAAgB;IAChB,8BAA8B;IAC9B,2BAA2B,CACzB,MAAe;QAEf,OAAO,MAA2C,CAAC;IACrD,CAAC;IACD,uBAAuB,CAAC,MAAe;QACrC,OAAO,MAAuC,CAAC;IACjD,CAAC;IACD,iBAAiB,CAAC,MAAe;QAC/B,OAAO,MAAiC,CAAC;IAC3C,CAAC;IACD,mBAAmB,CAAC,MAAe;QACjC,OAAO,MAAmC,CAAC;IAC7C,CAAC;IACD,oBAAoB,CAAC,MAAe;QAClC,OAAO,MAAoC,CAAC;IAC9C,CAAC;IACD,8BAA8B,CAC5B,MAAe;QAEf,OAAO,MAA8C,CAAC;IACxD,CAAC;IACD,kBAAkB;IAElB,eAAe;IACf,8BAA8B;IAC9B,yBAAyB,CAAC,MAAe;QACvC,OAAO,MAAwC,CAAC;IAClD,CAAC;IACD,yBAAyB,CAAC,MAAe;QACvC,OAAO,MAAwC,CAAC;IAClD,CAAC;IACD,kBAAkB;IAElB,iBAAiB;IACjB,8BAA8B;IAC9B,uBAAuB,CAAC,MAAe;QACrC,OAAO,MAAwC,CAAC;IAClD,CAAC;IACD,0BAA0B,CACxB,MAAe;QAEf,OAAO,MAA2C,CAAC;IACrD,CAAC;IACD,2BAA2B,CACzB,MAAe;QAEf,OAAO,MAA4C,CAAC;IACtD,CAAC;IACD,2BAA2B,CACzB,MAAe;QAEf,OAAO,MAA4C,CAAC;IACtD,CAAC;IACD,sBAAsB,CAAC,MAAe;QACpC,OAAO,MAAuC,CAAC;IACjD,CAAC;IACD,0BAA0B,CACxB,MAAe;QAEf,OAAO,MAA2C,CAAC;IACrD,CAAC;IACD,0BAA0B,CACxB,MAAe;QAEf,OAAO,MAA2C,CAAC;IACrD,CAAC;IACD,kBAAkB;IAElB,iBAAiB;IACjB,8BAA8B;IAC9B,oBAAoB,CAAC,MAAe;QAClC,OAAO,MAAqC,CAAC;IAC/C,CAAC;CAEF;AA7HD,wCA6HC"}
1
+ {"version":3,"file":"BidiNoOpParser.js","sourceRoot":"","sources":["../../../src/bidiMapper/BidiNoOpParser.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;;AAYH,MAAa,cAAc;IACzB,0BAA0B;IAC1B,8BAA8B;IAC9B,mBAAmB,CAAC,MAAe;QACjC,OAAO,MAA4C,CAAC;IACtD,CAAC;IACD,4BAA4B,CAC1B,MAAe;QAEf,OAAO,MAAqD,CAAC;IAC/D,CAAC;IACD,gBAAgB,CAAC,MAAe;QAC9B,OAAO,MAAyC,CAAC;IACnD,CAAC;IACD,iBAAiB,CAAC,MAAe;QAC/B,OAAO,MAA0C,CAAC;IACpD,CAAC;IACD,kBAAkB,CAAC,MAAe;QAChC,OAAO,MAA2C,CAAC;IACrD,CAAC;IACD,2BAA2B,CACzB,MAAe;QAEf,OAAO,MAAoD,CAAC;IAC9D,CAAC;IACD,mBAAmB,CAAC,MAAe;QACjC,OAAO,MAA4C,CAAC;IACtD,CAAC;IACD,gBAAgB,CAAC,MAAe;QAC9B,OAAO,MAAyC,CAAC;IACnD,CAAC;IACD,iBAAiB,CAAC,MAAe;QAC/B,OAAO,MAA0C,CAAC;IACpD,CAAC;IACD,sBAAsB,CACpB,MAAe;QAEf,OAAO,MAA+C,CAAC;IACzD,CAAC;IACD,kBAAkB;IAElB,aAAa;IACb,8BAA8B;IAC9B,qBAAqB,CAAC,MAAe;QACnC,OAAO,MAAkC,CAAC;IAC5C,CAAC;IACD,sBAAsB,CAAC,MAAe;QACpC,OAAO,MAAmC,CAAC;IAC7C,CAAC;IACD,kBAAkB;IAElB,gBAAgB;IAChB,8BAA8B;IAC9B,2BAA2B,CACzB,MAAe;QAEf,OAAO,MAA2C,CAAC;IACrD,CAAC;IACD,uBAAuB,CAAC,MAAe;QACrC,OAAO,MAAuC,CAAC;IACjD,CAAC;IACD,iBAAiB,CAAC,MAAe;QAC/B,OAAO,MAAiC,CAAC;IAC3C,CAAC;IACD,mBAAmB,CAAC,MAAe;QACjC,OAAO,MAAmC,CAAC;IAC7C,CAAC;IACD,oBAAoB,CAAC,MAAe;QAClC,OAAO,MAAoC,CAAC;IAC9C,CAAC;IACD,8BAA8B,CAC5B,MAAe;QAEf,OAAO,MAA8C,CAAC;IACxD,CAAC;IACD,kBAAkB;IAElB,eAAe;IACf,8BAA8B;IAC9B,yBAAyB,CAAC,MAAe;QACvC,OAAO,MAAwC,CAAC;IAClD,CAAC;IACD,yBAAyB,CAAC,MAAe;QACvC,OAAO,MAAwC,CAAC;IAClD,CAAC;IACD,kBAAkB;IAElB,iBAAiB;IACjB,8BAA8B;IAC9B,oBAAoB,CAAC,MAAe;QAClC,OAAO,MAAqC,CAAC;IAC/C,CAAC;CAEF;AA7FD,wCA6FC"}
@@ -14,8 +14,9 @@
14
14
  * See the License for the specific language governing permissions and
15
15
  * limitations under the License.
16
16
  */
17
- import type { BrowsingContext, Cdp, Input, Network, Script, Session } from '../protocol/protocol.js';
17
+ import type { BrowsingContext, Cdp, Input, Script, Session } from '../protocol/protocol.js';
18
18
  export interface IBidiParser {
19
+ parseActivateParams(params: unknown): BrowsingContext.ActivateParameters;
19
20
  parseCaptureScreenshotParams(params: unknown): BrowsingContext.CaptureScreenshotParameters;
20
21
  parseCloseParams(params: unknown): BrowsingContext.CloseParameters;
21
22
  parseCreateParams(params: unknown): BrowsingContext.CreateParameters;
@@ -29,13 +30,6 @@ export interface IBidiParser {
29
30
  parseSendCommandParams(params: unknown): Cdp.SendCommandParameters;
30
31
  parsePerformActionsParams(params: unknown): Input.PerformActionsParameters;
31
32
  parseReleaseActionsParams(params: unknown): Input.ReleaseActionsParameters;
32
- parseAddInterceptParams(params: unknown): Network.AddInterceptParameters;
33
- parseContinueRequestParams(params: unknown): Network.ContinueRequestParameters;
34
- parseContinueResponseParams(params: unknown): Network.ContinueResponseParameters;
35
- parseContinueWithAuthParams(params: unknown): Network.ContinueWithAuthParameters;
36
- parseFailRequestParams(params: unknown): Network.FailRequestParameters;
37
- parseProvideResponseParams(params: unknown): Network.ProvideResponseParameters;
38
- parseRemoveInterceptParams(params: unknown): Network.RemoveInterceptParameters;
39
33
  parseAddPreloadScriptParams(params: unknown): Script.AddPreloadScriptParameters;
40
34
  parseCallFunctionParams(params: unknown): Script.CallFunctionParameters;
41
35
  parseDisownParams(params: unknown): Script.DisownParameters;
@@ -23,17 +23,25 @@ const log_js_1 = require("../utils/log.js");
23
23
  const BidiNoOpParser_js_1 = require("./BidiNoOpParser.js");
24
24
  const OutgoingBidiMessage_js_1 = require("./OutgoingBidiMessage.js");
25
25
  const browsingContextProcessor_js_1 = require("./domains/context/browsingContextProcessor.js");
26
+ const InputProcessor_js_1 = require("./domains/input/InputProcessor.js");
27
+ const PreloadScriptStorage_js_1 = require("./domains/script/PreloadScriptStorage.js");
28
+ const ScriptProcessor_js_1 = require("./domains/script/ScriptProcessor.js");
26
29
  class CommandProcessor extends EventEmitter_js_1.EventEmitter {
27
- #contextProcessor;
30
+ #browsingContextProcessor;
31
+ #inputProcessor;
32
+ #scriptProcessor;
28
33
  #eventManager;
29
34
  #parser;
30
35
  #logger;
31
36
  constructor(cdpConnection, eventManager, selfTargetId, parser = new BidiNoOpParser_js_1.BidiNoOpParser(), browsingContextStorage, realmStorage, logger) {
32
37
  super();
33
38
  this.#eventManager = eventManager;
34
- this.#logger = logger;
35
- this.#contextProcessor = new browsingContextProcessor_js_1.BrowsingContextProcessor(cdpConnection, selfTargetId, eventManager, browsingContextStorage, realmStorage, logger);
36
39
  this.#parser = parser;
40
+ this.#logger = logger;
41
+ const preloadScriptStorage = new PreloadScriptStorage_js_1.PreloadScriptStorage();
42
+ this.#browsingContextProcessor = new browsingContextProcessor_js_1.BrowsingContextProcessor(cdpConnection, selfTargetId, eventManager, browsingContextStorage, realmStorage, preloadScriptStorage, logger);
43
+ this.#inputProcessor = InputProcessor_js_1.InputProcessor.create(browsingContextStorage);
44
+ this.#scriptProcessor = new ScriptProcessor_js_1.ScriptProcessor(browsingContextStorage, realmStorage, preloadScriptStorage);
37
45
  }
38
46
  static #process_session_status() {
39
47
  return { ready: false, message: 'already connected' };
@@ -48,72 +56,62 @@ class CommandProcessor extends EventEmitter_js_1.EventEmitter {
48
56
  }
49
57
  async #processCommand(command) {
50
58
  switch (command.method) {
59
+ case 'browser.close':
60
+ case 'session.end':
61
+ case 'session.new':
62
+ // TODO: Implement.
63
+ break;
51
64
  // Browsing Context domain
52
65
  // keep-sorted start block=yes
66
+ case 'browsingContext.activate':
67
+ return this.#browsingContextProcessor.process_browsingContext_activate(this.#parser.parseActivateParams(command.params));
53
68
  case 'browsingContext.captureScreenshot':
54
- return this.#contextProcessor.process_browsingContext_captureScreenshot(this.#parser.parseCaptureScreenshotParams(command.params));
69
+ return this.#browsingContextProcessor.process_browsingContext_captureScreenshot(this.#parser.parseCaptureScreenshotParams(command.params));
55
70
  case 'browsingContext.close':
56
- return this.#contextProcessor.process_browsingContext_close(this.#parser.parseCloseParams(command.params));
71
+ return this.#browsingContextProcessor.process_browsingContext_close(this.#parser.parseCloseParams(command.params));
57
72
  case 'browsingContext.create':
58
- return this.#contextProcessor.process_browsingContext_create(this.#parser.parseCreateParams(command.params));
73
+ return this.#browsingContextProcessor.process_browsingContext_create(this.#parser.parseCreateParams(command.params));
59
74
  case 'browsingContext.getTree':
60
- return this.#contextProcessor.process_browsingContext_getTree(this.#parser.parseGetTreeParams(command.params));
75
+ return this.#browsingContextProcessor.process_browsingContext_getTree(this.#parser.parseGetTreeParams(command.params));
61
76
  case 'browsingContext.handleUserPrompt':
62
- return this.#contextProcessor.process_browsingContext_handleUserPrompt(this.#parser.parseHandleUserPromptParams(command.params));
77
+ return this.#browsingContextProcessor.process_browsingContext_handleUserPrompt(this.#parser.parseHandleUserPromptParams(command.params));
63
78
  case 'browsingContext.navigate':
64
- return this.#contextProcessor.process_browsingContext_navigate(this.#parser.parseNavigateParams(command.params));
79
+ return this.#browsingContextProcessor.process_browsingContext_navigate(this.#parser.parseNavigateParams(command.params));
65
80
  case 'browsingContext.print':
66
- return this.#contextProcessor.process_browsingContext_print(this.#parser.parsePrintParams(command.params));
81
+ return this.#browsingContextProcessor.process_browsingContext_print(this.#parser.parsePrintParams(command.params));
67
82
  case 'browsingContext.reload':
68
- return this.#contextProcessor.process_browsingContext_reload(this.#parser.parseReloadParams(command.params));
83
+ return this.#browsingContextProcessor.process_browsingContext_reload(this.#parser.parseReloadParams(command.params));
69
84
  case 'browsingContext.setViewport':
70
- return this.#contextProcessor.process_browsingContext_setViewport(this.#parser.parseSetViewportParams(command.params));
85
+ return this.#browsingContextProcessor.process_browsingContext_setViewport(this.#parser.parseSetViewportParams(command.params));
71
86
  // keep-sorted end
72
87
  // CDP domain
73
88
  // keep-sorted start block=yes
74
89
  case 'cdp.getSession':
75
- return this.#contextProcessor.process_cdp_getSession(this.#parser.parseGetSessionParams(command.params));
90
+ return this.#browsingContextProcessor.process_cdp_getSession(this.#parser.parseGetSessionParams(command.params));
76
91
  case 'cdp.sendCommand':
77
- return this.#contextProcessor.process_cdp_sendCommand(this.#parser.parseSendCommandParams(command.params));
92
+ return this.#browsingContextProcessor.process_cdp_sendCommand(this.#parser.parseSendCommandParams(command.params));
78
93
  // keep-sorted end
79
94
  // Input domain
80
95
  // keep-sorted start block=yes
81
96
  case 'input.performActions':
82
- return this.#contextProcessor.process_input_performActions(this.#parser.parsePerformActionsParams(command.params));
97
+ return this.#inputProcessor.performActions(this.#parser.parsePerformActionsParams(command.params));
83
98
  case 'input.releaseActions':
84
- return this.#contextProcessor.process_input_releaseActions(this.#parser.parseReleaseActionsParams(command.params));
85
- // keep-sorted end
86
- // Network domain
87
- // keep-sorted start block=yes
88
- case 'network.addIntercept':
89
- return this.#contextProcessor.process_network_addIntercept(this.#parser.parseAddInterceptParams(command.params));
90
- case 'network.continueRequest':
91
- return this.#contextProcessor.process_network_continueRequest(this.#parser.parseContinueRequestParams(command.params));
92
- case 'network.continueResponse':
93
- return this.#contextProcessor.process_network_continueResponse(this.#parser.parseContinueResponseParams(command.params));
94
- case 'network.continueWithAuth':
95
- return this.#contextProcessor.process_network_continueWithAuth(this.#parser.parseContinueWithAuthParams(command.params));
96
- case 'network.failRequest':
97
- return this.#contextProcessor.process_network_failRequest(this.#parser.parseFailRequestParams(command.params));
98
- case 'network.provideResponse':
99
- return this.#contextProcessor.process_network_provideResponse(this.#parser.parseProvideResponseParams(command.params));
100
- case 'network.removeIntercept':
101
- return this.#contextProcessor.process_network_removeIntercept(this.#parser.parseRemoveInterceptParams(command.params));
99
+ return this.#inputProcessor.releaseActions(this.#parser.parseReleaseActionsParams(command.params));
102
100
  // keep-sorted end
103
101
  // Script domain
104
102
  // keep-sorted start block=yes
105
103
  case 'script.addPreloadScript':
106
- return this.#contextProcessor.process_script_addPreloadScript(this.#parser.parseAddPreloadScriptParams(command.params));
104
+ return this.#scriptProcessor.addPreloadScript(this.#parser.parseAddPreloadScriptParams(command.params));
107
105
  case 'script.callFunction':
108
- return this.#contextProcessor.process_script_callFunction(this.#parser.parseCallFunctionParams(command.params));
106
+ return this.#scriptProcessor.callFunction(this.#parser.parseCallFunctionParams(command.params));
109
107
  case 'script.disown':
110
- return this.#contextProcessor.process_script_disown(this.#parser.parseDisownParams(command.params));
108
+ return this.#scriptProcessor.disown(this.#parser.parseDisownParams(command.params));
111
109
  case 'script.evaluate':
112
- return this.#contextProcessor.process_script_evaluate(this.#parser.parseEvaluateParams(command.params));
110
+ return this.#scriptProcessor.evaluate(this.#parser.parseEvaluateParams(command.params));
113
111
  case 'script.getRealms':
114
- return this.#contextProcessor.process_script_getRealms(this.#parser.parseGetRealmsParams(command.params));
112
+ return this.#scriptProcessor.getRealms(this.#parser.parseGetRealmsParams(command.params));
115
113
  case 'script.removePreloadScript':
116
- return this.#contextProcessor.process_script_removePreloadScript(this.#parser.parseRemovePreloadScriptParams(command.params));
114
+ return this.#scriptProcessor.removePreloadScript(this.#parser.parseRemovePreloadScriptParams(command.params));
117
115
  // keep-sorted end
118
116
  // Session domain
119
117
  // keep-sorted start block=yes
@@ -134,6 +132,7 @@ class CommandProcessor extends EventEmitter_js_1.EventEmitter {
134
132
  try {
135
133
  const result = await this.#processCommand(command);
136
134
  const response = {
135
+ type: 'success',
137
136
  id: command.id,
138
137
  result,
139
138
  };
@@ -1 +1 @@
1
- {"version":3,"file":"CommandProcessor.js","sourceRoot":"","sources":["../../../src/bidiMapper/CommandProcessor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CommandProcessor.js","sourceRoot":"","sources":["../../../src/bidiMapper/CommandProcessor.ts"],"names":[],"mappings":"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"}
@@ -61,6 +61,7 @@ export declare class BrowsingContextImpl {
61
61
  reload(ignoreCache: boolean, wait: BrowsingContext.ReadinessState): Promise<EmptyResult>;
62
62
  setViewport(viewport: BrowsingContext.Viewport | null): Promise<void>;
63
63
  handleUserPrompt(params: BrowsingContext.HandleUserPromptParameters): Promise<void>;
64
+ activate(): Promise<void>;
64
65
  captureScreenshot(): Promise<BrowsingContext.CaptureScreenshotResult>;
65
66
  print(params: BrowsingContext.PrintParameters): Promise<BrowsingContext.PrintResult>;
66
67
  close(): Promise<void>;
@@ -49,7 +49,6 @@ class BrowsingContextImpl {
49
49
  #loaderId;
50
50
  #cdpTarget;
51
51
  #maybeDefaultRealm;
52
- #isNavigating = false;
53
52
  #logger;
54
53
  constructor(cdpTarget, realmStorage, id, parentId, eventManager, browsingContextStorage, logger) {
55
54
  this.#cdpTarget = cdpTarget;
@@ -68,6 +67,7 @@ class BrowsingContextImpl {
68
67
  context.parent.addChild(context.id);
69
68
  }
70
69
  eventManager.registerEvent({
70
+ type: 'event',
71
71
  method: protocol_js_1.ChromiumBidi.BrowsingContext.EventNames.ContextCreatedEvent,
72
72
  params: context.serializeToBidiValue(),
73
73
  }, context.id);
@@ -96,6 +96,7 @@ class BrowsingContextImpl {
96
96
  this.parent.#children.delete(this.id);
97
97
  }
98
98
  this.#eventManager.registerEvent({
99
+ type: 'event',
99
100
  method: protocol_js_1.ChromiumBidi.BrowsingContext.EventNames.ContextDestroyedEvent,
100
101
  params: this.serializeToBidiValue(),
101
102
  }, this.id);
@@ -207,20 +208,6 @@ class BrowsingContextImpl {
207
208
  }
208
209
  onTargetInfoChanged(params) {
209
210
  this.#url = params.targetInfo.url;
210
- if (this.#isNavigating) {
211
- this.#eventManager.registerEvent({
212
- method: protocol_js_1.ChromiumBidi.BrowsingContext.EventNames.NavigationStarted,
213
- params: {
214
- context: this.id,
215
- // TODO: The navigation event is sent before CDP Page.frameStartedLoading.
216
- // It theory there should be a way to get the data.
217
- navigation: null,
218
- timestamp: BrowsingContextImpl.getTimestamp(),
219
- url: this.#url,
220
- },
221
- }, this.id);
222
- this.#isNavigating = false;
223
- }
224
211
  }
225
212
  #initListeners() {
226
213
  this.#cdpTarget.cdpClient.on('Page.frameNavigated', (params) => {
@@ -241,6 +228,7 @@ class BrowsingContextImpl {
241
228
  this.#url = params.url;
242
229
  this.#deferreds.Page.navigatedWithinDocument.resolve(params);
243
230
  this.#eventManager.registerEvent({
231
+ type: 'event',
244
232
  method: protocol_js_1.ChromiumBidi.BrowsingContext.EventNames.FragmentNavigated,
245
233
  params: {
246
234
  context: this.id,
@@ -254,13 +242,16 @@ class BrowsingContextImpl {
254
242
  if (this.id !== params.frameId) {
255
243
  return;
256
244
  }
257
- this.#isNavigating = true;
258
- });
259
- this.#cdpTarget.cdpClient.on('Page.frameStoppedLoading', (params) => {
260
- if (this.id !== params.frameId) {
261
- return;
262
- }
263
- this.#isNavigating = false;
245
+ this.#eventManager.registerEvent({
246
+ type: 'event',
247
+ method: protocol_js_1.ChromiumBidi.BrowsingContext.EventNames.NavigationStarted,
248
+ params: {
249
+ context: this.id,
250
+ navigation: null,
251
+ timestamp: BrowsingContextImpl.getTimestamp(),
252
+ url: '',
253
+ },
254
+ }, this.id);
264
255
  });
265
256
  this.#cdpTarget.cdpClient.on('Page.lifecycleEvent', (params) => {
266
257
  if (this.id !== params.frameId) {
@@ -284,6 +275,7 @@ class BrowsingContextImpl {
284
275
  case 'DOMContentLoaded':
285
276
  this.#deferreds.Page.lifecycleEvent.DOMContentLoaded.resolve(params);
286
277
  this.#eventManager.registerEvent({
278
+ type: 'event',
287
279
  method: protocol_js_1.ChromiumBidi.BrowsingContext.EventNames.DomContentLoadedEvent,
288
280
  params: {
289
281
  context: this.id,
@@ -296,6 +288,7 @@ class BrowsingContextImpl {
296
288
  case 'load':
297
289
  this.#deferreds.Page.lifecycleEvent.load.resolve(params);
298
290
  this.#eventManager.registerEvent({
291
+ type: 'event',
299
292
  method: protocol_js_1.ChromiumBidi.BrowsingContext.EventNames.LoadEvent,
300
293
  params: {
301
294
  context: this.id,
@@ -321,7 +314,7 @@ class BrowsingContextImpl {
321
314
  // Sandbox name for isolated world.
322
315
  params.context.auxData.type === 'isolated'
323
316
  ? params.context.name
324
- : undefined, this.#cdpTarget.cdpSessionId, this.#cdpTarget.cdpClient, this.#eventManager, this.#logger);
317
+ : undefined, this.#cdpTarget.cdpClient, this.#eventManager, this.#logger);
325
318
  if (params.context.auxData.isDefault) {
326
319
  this.#maybeDefaultRealm = realm;
327
320
  // Initialize ChannelProxy listeners for all the channels of all the
@@ -345,6 +338,7 @@ class BrowsingContextImpl {
345
338
  });
346
339
  this.#cdpTarget.cdpClient.on('Page.javascriptDialogClosed', (params) => {
347
340
  this.#eventManager.registerEvent({
341
+ type: 'event',
348
342
  method: protocol_js_1.ChromiumBidi.BrowsingContext.EventNames.UserPromptClosed,
349
343
  params: {
350
344
  context: this.id,
@@ -356,6 +350,7 @@ class BrowsingContextImpl {
356
350
  });
357
351
  this.#cdpTarget.cdpClient.on('Page.javascriptDialogOpening', (params) => {
358
352
  this.#eventManager.registerEvent({
353
+ type: 'event',
359
354
  method: protocol_js_1.ChromiumBidi.BrowsingContext.EventNames.UserPromptOpened,
360
355
  params: {
361
356
  context: this.id,
@@ -505,6 +500,9 @@ class BrowsingContextImpl {
505
500
  promptText: params.userText,
506
501
  });
507
502
  }
503
+ async activate() {
504
+ await this.#cdpTarget.cdpClient.sendCommand('Page.bringToFront');
505
+ }
508
506
  async captureScreenshot() {
509
507
  // XXX: Focus the original tab after the screenshot is taken.
510
508
  // This is needed because the screenshot gets blocked until the active tab gets focus.
@@ -572,13 +570,34 @@ class BrowsingContextImpl {
572
570
  }
573
571
  if (params.pageRanges !== undefined) {
574
572
  for (const range of params.pageRanges) {
575
- if (typeof range === 'string') {
576
- const [start, end] = range.split('-');
577
- const startPage = start === '' ? 1 : Number(start);
578
- const endPage = end === '' ? Infinity : Number(end);
579
- if (startPage > endPage) {
580
- throw new protocol_js_1.InvalidArgumentException(`Invalid page range: ${start} > ${end}`);
581
- }
573
+ if (typeof range === 'number') {
574
+ continue;
575
+ }
576
+ const rangeParts = range.split('-');
577
+ if (rangeParts.length < 1 || rangeParts.length > 2) {
578
+ throw new protocol_js_1.InvalidArgumentException(`Invalid page range: ${range} is not a valid integer range.`);
579
+ }
580
+ if (rangeParts.length === 1) {
581
+ void parseInteger(rangeParts[0] ?? '');
582
+ continue;
583
+ }
584
+ let lowerBound;
585
+ let upperBound;
586
+ const [rangeLowerPart = '', rangeUpperPart = ''] = rangeParts;
587
+ if (rangeLowerPart === '') {
588
+ lowerBound = 1;
589
+ }
590
+ else {
591
+ lowerBound = parseInteger(rangeLowerPart);
592
+ }
593
+ if (rangeUpperPart === '') {
594
+ upperBound = Number.MAX_SAFE_INTEGER;
595
+ }
596
+ else {
597
+ upperBound = parseInteger(rangeUpperPart);
598
+ }
599
+ if (lowerBound > upperBound) {
600
+ throw new protocol_js_1.InvalidArgumentException(`Invalid page range: ${rangeLowerPart} > ${rangeUpperPart}`);
582
601
  }
583
602
  }
584
603
  cdpParams.pageRanges = params.pageRanges.join(',');
@@ -589,14 +608,31 @@ class BrowsingContextImpl {
589
608
  if (params.shrinkToFit !== undefined) {
590
609
  cdpParams.preferCSSPageSize = !params.shrinkToFit;
591
610
  }
592
- const result = await this.#cdpTarget.cdpClient.sendCommand('Page.printToPDF', cdpParams);
593
- return {
594
- data: result.data,
595
- };
611
+ try {
612
+ const result = await this.#cdpTarget.cdpClient.sendCommand('Page.printToPDF', cdpParams);
613
+ return {
614
+ data: result.data,
615
+ };
616
+ }
617
+ catch (error) {
618
+ // Effectively zero dimensions.
619
+ if (error.message ===
620
+ 'invalid print parameters: content area is empty') {
621
+ throw new protocol_js_1.UnsupportedOperationException(error.message);
622
+ }
623
+ throw error;
624
+ }
596
625
  }
597
626
  async close() {
598
627
  await this.#cdpTarget.cdpClient.sendCommand('Page.close');
599
628
  }
600
629
  }
601
630
  exports.BrowsingContextImpl = BrowsingContextImpl;
631
+ function parseInteger(value) {
632
+ value = value.trim();
633
+ if (!/^[0-9]+$/.test(value)) {
634
+ throw new protocol_js_1.InvalidArgumentException(`Invalid integer: ${value}`);
635
+ }
636
+ return parseInt(value);
637
+ }
602
638
  //# sourceMappingURL=browsingContextImpl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"browsingContextImpl.js","sourceRoot":"","sources":["../../../../../src/bidiMapper/domains/context/browsingContextImpl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browsingContextImpl.js","sourceRoot":"","sources":["../../../../../src/bidiMapper/domains/context/browsingContextImpl.ts"],"names":[],"mappings":"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"}