chromium-bidi 0.4.5 → 0.4.6

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 (136) hide show
  1. package/README.md +16 -4
  2. package/lib/cjs/bidiMapper/BidiServer.d.ts +3 -3
  3. package/lib/cjs/bidiMapper/BidiServer.js +12 -12
  4. package/lib/cjs/bidiMapper/BidiServer.js.map +1 -1
  5. package/lib/cjs/bidiMapper/CdpConnection.d.ts +5 -5
  6. package/lib/cjs/bidiMapper/CommandProcessor.d.ts +6 -4
  7. package/lib/cjs/bidiMapper/CommandProcessor.js +33 -21
  8. package/lib/cjs/bidiMapper/CommandProcessor.js.map +1 -1
  9. package/lib/cjs/bidiMapper/domains/context/browsingContextImpl.d.ts +7 -7
  10. package/lib/cjs/bidiMapper/domains/context/browsingContextImpl.js +101 -94
  11. package/lib/cjs/bidiMapper/domains/context/browsingContextImpl.js.map +1 -1
  12. package/lib/cjs/bidiMapper/domains/context/browsingContextProcessor.d.ts +8 -5
  13. package/lib/cjs/bidiMapper/domains/context/browsingContextProcessor.js +68 -58
  14. package/lib/cjs/bidiMapper/domains/context/browsingContextProcessor.js.map +1 -1
  15. package/lib/cjs/bidiMapper/domains/context/browsingContextStorage.d.ts +1 -0
  16. package/lib/cjs/bidiMapper/domains/context/browsingContextStorage.js +3 -0
  17. package/lib/cjs/bidiMapper/domains/context/browsingContextStorage.js.map +1 -1
  18. package/lib/cjs/bidiMapper/domains/context/cdpTarget.d.ts +24 -0
  19. package/lib/cjs/bidiMapper/domains/context/cdpTarget.js +112 -0
  20. package/lib/cjs/bidiMapper/domains/context/cdpTarget.js.map +1 -0
  21. package/lib/cjs/bidiMapper/domains/events/EventManager.d.ts +6 -4
  22. package/lib/cjs/bidiMapper/domains/events/EventManager.js +43 -20
  23. package/lib/cjs/bidiMapper/domains/events/EventManager.js.map +1 -1
  24. package/lib/cjs/bidiMapper/domains/events/SubscriptionManager.d.ts +18 -1
  25. package/lib/cjs/bidiMapper/domains/events/SubscriptionManager.js +81 -22
  26. package/lib/cjs/bidiMapper/domains/events/SubscriptionManager.js.map +1 -1
  27. package/lib/cjs/bidiMapper/domains/events/SubscriptionManager.spec.d.ts +1 -0
  28. package/lib/cjs/bidiMapper/domains/events/SubscriptionManager.spec.js +128 -47
  29. package/lib/cjs/bidiMapper/domains/events/SubscriptionManager.spec.js.map +1 -1
  30. package/lib/cjs/bidiMapper/domains/log/logHelper.d.ts +1 -1
  31. package/lib/cjs/bidiMapper/domains/log/logHelper.js +3 -3
  32. package/lib/cjs/bidiMapper/domains/log/logHelper.js.map +1 -1
  33. package/lib/cjs/bidiMapper/domains/log/logHelper_getRemoteValuesText.spec.js +5 -29
  34. package/lib/cjs/bidiMapper/domains/log/logHelper_getRemoteValuesText.spec.js.map +1 -1
  35. package/lib/cjs/bidiMapper/domains/log/logHelper_logMessageFormatter.spec.js +5 -29
  36. package/lib/cjs/bidiMapper/domains/log/logHelper_logMessageFormatter.spec.js.map +1 -1
  37. package/lib/cjs/bidiMapper/domains/log/logManager.d.ts +2 -2
  38. package/lib/cjs/bidiMapper/domains/log/logManager.js +10 -32
  39. package/lib/cjs/bidiMapper/domains/log/logManager.js.map +1 -1
  40. package/lib/cjs/bidiMapper/domains/network/networkProcessor.d.ts +7 -0
  41. package/lib/cjs/bidiMapper/domains/network/networkProcessor.js +65 -0
  42. package/lib/cjs/bidiMapper/domains/network/networkProcessor.js.map +1 -0
  43. package/lib/cjs/bidiMapper/domains/network/networkRequest.d.ts +15 -0
  44. package/lib/cjs/bidiMapper/domains/network/networkRequest.js +263 -0
  45. package/lib/cjs/bidiMapper/domains/network/networkRequest.js.map +1 -0
  46. package/lib/cjs/bidiMapper/domains/script/realm.d.ts +9 -9
  47. package/lib/cjs/bidiMapper/domains/script/realm.js +12 -11
  48. package/lib/cjs/bidiMapper/domains/script/realm.js.map +1 -1
  49. package/lib/cjs/bidiMapper/domains/script/realmStorage.d.ts +1 -1
  50. package/lib/cjs/bidiMapper/domains/script/realmStorage.js.map +1 -1
  51. package/lib/cjs/bidiMapper/domains/script/scriptEvaluator.d.ts +15 -13
  52. package/lib/cjs/bidiMapper/domains/script/scriptEvaluator.js +323 -264
  53. package/lib/cjs/bidiMapper/domains/script/scriptEvaluator.js.map +1 -1
  54. package/lib/cjs/bidiMapper/tsconfig.tsbuildinfo +1 -1
  55. package/lib/cjs/bidiServer/bidiServerRunner.d.ts +0 -16
  56. package/lib/cjs/bidiServer/bidiServerRunner.js +18 -2
  57. package/lib/cjs/bidiServer/bidiServerRunner.js.map +1 -1
  58. package/lib/cjs/bidiServer/index.js +50 -26
  59. package/lib/cjs/bidiServer/index.js.map +1 -1
  60. package/lib/cjs/bidiServer/mapperReader.js +1 -1
  61. package/lib/cjs/bidiServer/mapperReader.js.map +1 -1
  62. package/lib/cjs/bidiServer/mapperServer.d.ts +2 -10
  63. package/lib/cjs/bidiServer/mapperServer.js +60 -23
  64. package/lib/cjs/bidiServer/mapperServer.js.map +1 -1
  65. package/lib/cjs/bidiServer/tsconfig.tsbuildinfo +1 -1
  66. package/lib/cjs/bidiTab/bidiTab.d.ts +1 -0
  67. package/lib/cjs/bidiTab/bidiTab.js +32 -28
  68. package/lib/cjs/bidiTab/bidiTab.js.map +1 -1
  69. package/lib/cjs/bidiTab/mapperTabPage.js +2 -0
  70. package/lib/cjs/bidiTab/mapperTabPage.js.map +1 -1
  71. package/lib/cjs/bidiTab/tsconfig.tsbuildinfo +1 -1
  72. package/lib/cjs/cdp/cdpClient.d.ts +11 -12
  73. package/lib/cjs/cdp/cdpClient.js +15 -16
  74. package/lib/cjs/cdp/cdpClient.js.map +1 -1
  75. package/lib/cjs/cdp/cdpClient.spec.js +20 -22
  76. package/lib/cjs/cdp/cdpClient.spec.js.map +1 -1
  77. package/lib/cjs/cdp/cdpConnection.d.ts +7 -7
  78. package/lib/cjs/cdp/cdpConnection.js +9 -24
  79. package/lib/cjs/cdp/cdpConnection.js.map +1 -1
  80. package/lib/cjs/cdp/cdpConnection.spec.js +14 -13
  81. package/lib/cjs/cdp/cdpConnection.spec.js.map +1 -1
  82. package/lib/cjs/cdp/cdpMessage.d.ts +4 -3
  83. package/lib/cjs/cdp/cdpMessage.js +0 -16
  84. package/lib/cjs/cdp/cdpMessage.js.map +1 -1
  85. package/lib/cjs/cdp/index.d.ts +1 -1
  86. package/lib/cjs/cdp/index.js +1 -1
  87. package/lib/cjs/cdp/index.js.map +1 -1
  88. package/lib/cjs/cdp/tsconfig.tsbuildinfo +1 -1
  89. package/lib/cjs/protocol/protocol.d.ts +180 -15
  90. package/lib/cjs/protocol/protocol.js +22 -2
  91. package/lib/cjs/protocol/protocol.js.map +1 -1
  92. package/lib/cjs/protocol/tsconfig.tsbuildinfo +1 -1
  93. package/lib/cjs/protocol-parser/protocol-parser.d.ts +53 -648
  94. package/lib/cjs/protocol-parser/protocol-parser.js +141 -48
  95. package/lib/cjs/protocol-parser/protocol-parser.js.map +1 -1
  96. package/lib/cjs/protocol-parser/tsconfig.tsbuildinfo +1 -1
  97. package/lib/cjs/utils/EventEmitter.d.ts +12 -12
  98. package/lib/cjs/utils/EventEmitter.js +6 -6
  99. package/lib/cjs/utils/EventEmitter.js.map +1 -1
  100. package/lib/cjs/utils/EventEmitter.spec.d.ts +2 -1
  101. package/lib/cjs/utils/EventEmitter.spec.js +37 -42
  102. package/lib/cjs/utils/EventEmitter.spec.js.map +1 -1
  103. package/lib/cjs/utils/buffer.spec.js +6 -7
  104. package/lib/cjs/utils/buffer.spec.js.map +1 -1
  105. package/lib/cjs/utils/deferred.d.ts +1 -1
  106. package/lib/cjs/utils/deferred.js +2 -2
  107. package/lib/cjs/utils/deferred.js.map +1 -1
  108. package/lib/cjs/utils/deferred.spec.d.ts +17 -0
  109. package/lib/cjs/utils/deferred.spec.js +37 -0
  110. package/lib/cjs/utils/deferred.spec.js.map +1 -0
  111. package/lib/cjs/utils/idWrapper.spec.js +4 -28
  112. package/lib/cjs/utils/idWrapper.spec.js.map +1 -1
  113. package/lib/cjs/utils/log.js +2 -0
  114. package/lib/cjs/utils/log.js.map +1 -1
  115. package/lib/cjs/utils/processingQueue.js +0 -1
  116. package/lib/cjs/utils/processingQueue.js.map +1 -1
  117. package/lib/cjs/utils/processingQueue.spec.js +6 -5
  118. package/lib/cjs/utils/processingQueue.spec.js.map +1 -1
  119. package/lib/cjs/{cdp/stubTransport.spec.d.ts → utils/transportStub.spec.d.ts} +2 -2
  120. package/lib/cjs/{cdp/stubTransport.spec.js → utils/transportStub.spec.js} +3 -3
  121. package/lib/cjs/utils/transportStub.spec.js.map +1 -0
  122. package/lib/cjs/utils/tsconfig.tsbuildinfo +1 -1
  123. package/lib/cjs/utils/unitConversions.d.ts +18 -0
  124. package/lib/cjs/utils/unitConversions.js +25 -0
  125. package/lib/cjs/utils/unitConversions.js.map +1 -0
  126. package/lib/cjs/utils/unitConversions.spec.d.ts +17 -0
  127. package/lib/cjs/utils/unitConversions.spec.js +27 -0
  128. package/lib/cjs/utils/unitConversions.spec.js.map +1 -0
  129. package/lib/cjs/{cdp → utils}/websocketTransport.d.ts +3 -4
  130. package/lib/cjs/{cdp → utils}/websocketTransport.js +10 -12
  131. package/lib/cjs/utils/websocketTransport.js.map +1 -0
  132. package/lib/iife/mapperTab.js +2 -2
  133. package/lib/iife/mapperTab.js.map +1 -1
  134. package/package.json +9 -6
  135. package/lib/cjs/cdp/stubTransport.spec.js.map +0 -1
  136. package/lib/cjs/cdp/websocketTransport.js.map +0 -1
package/README.md CHANGED
@@ -172,14 +172,26 @@ npm run server -- --headless=false
172
172
  ```
173
173
 
174
174
  Use the `CHANNEL=...` environment variable or `--channel=...` argument with one of
175
- the following values to run the specific Chrome channel: `chrome`,
176
- `chrome-beta`, `chrome-canary`, `chrome-dev`.
175
+ the following values to run the specific Chrome channel: `stable`,
176
+ `beta`, `canary`, `dev`.
177
177
 
178
178
  The requested Chrome version should be installed.
179
179
 
180
180
  ```sh
181
- CHANNEL=chrome-dev npm run server
182
- npm run server -- --channel=chrome-dev
181
+ CHANNEL=dev npm run server
182
+ npm run server -- --channel=dev
183
+ ```
184
+
185
+ Use the CLI argument `--verbose` to have CDP events printed to the console. Note: you have to enable debugging output `bidiMapper:mapperDebug:*` as well.
186
+
187
+ ```sh
188
+ DEBUG=bidiMapper:mapperDebug:* npm run server -- --verbose
189
+ ```
190
+
191
+ or
192
+
193
+ ```sh
194
+ DEBUG=* npm run server -- --verbose
183
195
  ```
184
196
 
185
197
  ### Starting on Linux and Mac
@@ -14,13 +14,13 @@
14
14
  * See the License for the specific language governing permissions and
15
15
  * limitations under the License.
16
16
  */
17
+ import { EventEmitter } from '../utils/EventEmitter.js';
18
+ import { LoggerFn } from '../utils/log.js';
19
+ import type { Message } from '../protocol/protocol.js';
17
20
  import { BidiParser } from './CommandProcessor.js';
18
21
  import { BidiTransport } from './BidiTransport.js';
19
22
  import { BrowsingContextStorage } from './domains/context/browsingContextStorage.js';
20
23
  import { CdpConnection } from './CdpConnection.js';
21
- import { EventEmitter } from '../utils/EventEmitter.js';
22
- import { LoggerFn } from '../utils/log.js';
23
- import type { Message } from '../protocol/protocol.js';
24
24
  import { OutgoingBidiMessage } from './OutgoingBidiMessage.js';
25
25
  declare type BidiServerEvents = {
26
26
  message: Message.RawCommandRequest;
@@ -17,11 +17,11 @@
17
17
  */
18
18
  Object.defineProperty(exports, "__esModule", { value: true });
19
19
  exports.BidiServer = void 0;
20
+ const EventEmitter_js_1 = require("../utils/EventEmitter.js");
21
+ const processingQueue_js_1 = require("../utils/processingQueue.js");
20
22
  const CommandProcessor_js_1 = require("./CommandProcessor.js");
21
23
  const browsingContextStorage_js_1 = require("./domains/context/browsingContextStorage.js");
22
- const EventEmitter_js_1 = require("../utils/EventEmitter.js");
23
24
  const EventManager_js_1 = require("./domains/events/EventManager.js");
24
- const processingQueue_js_1 = require("../utils/processingQueue.js");
25
25
  const realmStorage_js_1 = require("./domains/script/realmStorage.js");
26
26
  class BidiServer extends EventEmitter_js_1.EventEmitter {
27
27
  #messageQueue;
@@ -30,6 +30,16 @@ class BidiServer extends EventEmitter_js_1.EventEmitter {
30
30
  #browsingContextStorage;
31
31
  #realmStorage;
32
32
  #logger;
33
+ #handleIncomingMessage = async (message) => {
34
+ this.#commandProcessor.processCommand(message);
35
+ };
36
+ #processOutgoingMessage = async (messageEntry) => {
37
+ const message = messageEntry.message;
38
+ if (messageEntry.channel !== null) {
39
+ message['channel'] = messageEntry.channel;
40
+ }
41
+ await this.#transport.sendMessage(message);
42
+ };
33
43
  constructor(bidiTransport, cdpConnection, selfTargetId, parser, logger) {
34
44
  super();
35
45
  this.#logger = logger;
@@ -62,13 +72,6 @@ class BidiServer extends EventEmitter_js_1.EventEmitter {
62
72
  .getTopLevelContexts()
63
73
  .map((c) => c.awaitLoaded()));
64
74
  }
65
- #processOutgoingMessage = async (messageEntry) => {
66
- const message = messageEntry.message;
67
- if (messageEntry.channel !== null) {
68
- message['channel'] = messageEntry.channel;
69
- }
70
- await this.#transport.sendMessage(message);
71
- };
72
75
  /**
73
76
  * Sends BiDi message.
74
77
  */
@@ -78,9 +81,6 @@ class BidiServer extends EventEmitter_js_1.EventEmitter {
78
81
  close() {
79
82
  this.#transport.close();
80
83
  }
81
- #handleIncomingMessage = async (message) => {
82
- this.#commandProcessor.processCommand(message);
83
- };
84
84
  getBrowsingContextStorage() {
85
85
  return this.#browsingContextStorage;
86
86
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BidiServer.js","sourceRoot":"","sources":["../../../src/bidiMapper/BidiServer.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;;AAEH,+DAAmE;AAEnE,2FAAmF;AAEnF,8DAAsD;AACtD,sEAA8D;AAI9D,oEAA4D;AAC5D,sEAA8D;AAM9D,MAAa,UAAW,SAAQ,8BAA8B;IAC5D,aAAa,CAAuC;IACpD,UAAU,CAAgB;IAC1B,iBAAiB,CAAmB;IACpC,uBAAuB,CAAyB;IAChD,aAAa,CAAe;IAC5B,OAAO,CAAY;IAEnB,YACE,aAA4B,EAC5B,aAA4B,EAC5B,YAAoB,EACpB,MAAmB,EACnB,MAAiB;QAEjB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,uBAAuB,GAAG,IAAI,kDAAsB,EAAE,CAAC;QAC5D,IAAI,CAAC,aAAa,GAAG,IAAI,8BAAY,EAAE,CAAC;QACxC,IAAI,CAAC,aAAa,GAAG,IAAI,oCAAe,CACtC,IAAI,CAAC,uBAAuB,EAC5B,SAAS,EACT,IAAI,CAAC,OAAO,CACb,CAAC;QACF,IAAI,CAAC,UAAU,GAAG,aAAa,CAAC;QAChC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QAC1D,IAAI,CAAC,iBAAiB,GAAG,IAAI,sCAAgB,CAC3C,IAAI,CAAC,aAAa,EAClB,aAAa,EACb,IAAI,8BAAY,CAAC,IAAI,CAAC,EACtB,YAAY,EACZ,MAAM,EACN,IAAI,CAAC,uBAAuB,EAC5B,IAAI,CAAC,OAAO,CACb,CAAC;QACF,IAAI,CAAC,iBAAiB,CAAC,EAAE,CACvB,UAAU,EACV,CAAC,QAAsC,EAAE,EAAE;YACzC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC,CACF,CAAC;IACJ,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,cAAc,CAChC,aAA4B,EAC5B,aAA4B,EAC5B,YAAoB,EACpB,MAAmB,EACnB,MAAiB;QAEjB,MAAM,MAAM,GAAG,IAAI,UAAU,CAC3B,aAAa,EACb,aAAa,EACb,YAAY,EACZ,MAAM,EACN,MAAM,CACP,CAAC;QACF,MAAM,SAAS,GAAG,aAAa,CAAC,aAAa,EAAE,CAAC;QAEhD,0CAA0C;QAC1C,MAAM,SAAS,CAAC,WAAW,CAAC,2BAA2B,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC;QAE3E,iDAAiD;QACjD,MAAM,SAAS,CAAC,WAAW,CAAC,sBAAsB,EAAE;YAClD,UAAU,EAAE,IAAI;YAChB,sBAAsB,EAAE,IAAI;YAC5B,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;QAEH,MAAM,MAAM,CAAC,sBAAsB,EAAE,CAAC;QACtC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,sBAAsB;QAC1B,MAAM,OAAO,CAAC,GAAG,CACf,IAAI,CAAC,uBAAuB;aACzB,mBAAmB,EAAE;aACrB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAC/B,CAAC;IACJ,CAAC;IAED,uBAAuB,GAAG,KAAK,EAAE,YAAiC,EAAE,EAAE;QACpE,MAAM,OAAO,GAAG,YAAY,CAAC,OAAc,CAAC;QAE5C,IAAI,YAAY,CAAC,OAAO,KAAK,IAAI,EAAE;YACjC,OAAO,CAAC,SAAS,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC;SAC3C;QAED,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC,CAAC;IAEF;;OAEG;IACH,mBAAmB,CAAC,YAA0C;QAC5D,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACvC,CAAC;IAED,KAAK;QACH,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;IAED,sBAAsB,GAAG,KAAK,EAAE,OAAkC,EAAE,EAAE;QACpE,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC,CAAC;IAEF,yBAAyB;QACvB,OAAO,IAAI,CAAC,uBAAuB,CAAC;IACtC,CAAC;CACF;AA7GD,gCA6GC"}
1
+ {"version":3,"file":"BidiServer.js","sourceRoot":"","sources":["../../../src/bidiMapper/BidiServer.ts"],"names":[],"mappings":"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"}
@@ -14,19 +14,19 @@
14
14
  * See the License for the specific language governing permissions and
15
15
  * limitations under the License.
16
16
  */
17
- import { EventEmitter } from '../utils/EventEmitter.js';
17
+ /**
18
+ * @fileoverview CDP interfaces and types that BiDi Mapper expects.
19
+ */
18
20
  import type { ProtocolMapping } from 'devtools-protocol/types/protocol-mapping.js';
21
+ import { EventEmitter } from '../utils/EventEmitter.js';
19
22
  declare type CdpEvents = {
20
23
  [Property in keyof ProtocolMapping.Events]: ProtocolMapping.Events[Property][0];
21
24
  };
22
- /**
23
- * CDP interfaces that BiDi Mapper expects.
24
- */
25
25
  export interface CdpConnection {
26
26
  browserClient(): CdpClient;
27
27
  getCdpClient(sessionId: string): CdpClient;
28
28
  }
29
29
  export interface CdpClient extends EventEmitter<CdpEvents> {
30
- sendCommand<T extends keyof ProtocolMapping.Commands>(method: T, ...params: ProtocolMapping.Commands[T]['paramsType']): Promise<ProtocolMapping.Commands[T]['returnType']>;
30
+ sendCommand<CdpMethod extends keyof ProtocolMapping.Commands>(method: CdpMethod, ...params: ProtocolMapping.Commands[CdpMethod]['paramsType']): Promise<ProtocolMapping.Commands[CdpMethod]['returnType']>;
31
31
  }
32
32
  export {};
@@ -15,11 +15,11 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  import { BrowsingContext, CDP, Message, Script, Session } from '../protocol/protocol.js';
18
+ import { LoggerFn } from '../utils/log.js';
19
+ import { EventEmitter } from '../utils/EventEmitter.js';
18
20
  import { BrowsingContextStorage } from './domains/context/browsingContextStorage.js';
19
21
  import { CdpConnection } from './CdpConnection.js';
20
- import { EventEmitter } from '../utils/EventEmitter.js';
21
22
  import { IEventManager } from './domains/events/EventManager.js';
22
- import { LoggerFn } from '../utils/log.js';
23
23
  import { OutgoingBidiMessage } from './OutgoingBidiMessage.js';
24
24
  import { RealmStorage } from './domains/script/realmStorage.js';
25
25
  declare type CommandProcessorEvents = {
@@ -32,15 +32,17 @@ export interface BidiParser {
32
32
  parseDisownParams(params: object): Script.DisownParameters;
33
33
  parseSendCommandParams(params: object): CDP.SendCommandParams;
34
34
  parseGetSessionParams(params: object): CDP.GetSessionParams;
35
+ parseSubscribeParams(params: object): Session.SubscribeParameters;
35
36
  parseNavigateParams(params: object): BrowsingContext.NavigateParameters;
36
37
  parseGetTreeParams(params: object): BrowsingContext.GetTreeParameters;
37
- parseSubscribeParams(params: object): Session.SubscribeParameters;
38
38
  parseCreateParams(params: object): BrowsingContext.CreateParameters;
39
39
  parseCloseParams(params: object): BrowsingContext.CloseParameters;
40
+ parseCaptureScreenshotParams(params: object): BrowsingContext.CaptureScreenshotParameters;
41
+ parsePrintParams(params: object): BrowsingContext.PrintParameters;
40
42
  }
41
43
  export declare class CommandProcessor extends EventEmitter<CommandProcessorEvents> {
42
44
  #private;
43
45
  constructor(realmStorage: RealmStorage, cdpConnection: CdpConnection, eventManager: IEventManager, selfTargetId: string, parser: BidiParser | undefined, browsingContextStorage: BrowsingContextStorage, logger?: LoggerFn);
44
- processCommand: (command: Message.RawCommandRequest) => Promise<void>;
46
+ processCommand(command: Message.RawCommandRequest): Promise<void>;
45
47
  }
46
48
  export {};
@@ -18,8 +18,9 @@
18
18
  Object.defineProperty(exports, "__esModule", { value: true });
19
19
  exports.CommandProcessor = void 0;
20
20
  const protocol_js_1 = require("../protocol/protocol.js");
21
- const browsingContextProcessor_js_1 = require("./domains/context/browsingContextProcessor.js");
21
+ const log_js_1 = require("../utils/log.js");
22
22
  const EventEmitter_js_1 = require("../utils/EventEmitter.js");
23
+ const browsingContextProcessor_js_1 = require("./domains/context/browsingContextProcessor.js");
23
24
  const OutgoingBidiMessage_js_1 = require("./OutgoingBidiMessage.js");
24
25
  class BidiNoOpParser {
25
26
  parseGetRealmsParams(params) {
@@ -40,13 +41,13 @@ class BidiNoOpParser {
40
41
  parseGetSessionParams(params) {
41
42
  return params;
42
43
  }
43
- parseNavigateParams(params) {
44
+ parseSubscribeParams(params) {
44
45
  return params;
45
46
  }
46
- parseGetTreeParams(params) {
47
+ parseNavigateParams(params) {
47
48
  return params;
48
49
  }
49
- parseSubscribeParams(params) {
50
+ parseGetTreeParams(params) {
50
51
  return params;
51
52
  }
52
53
  parseCreateParams(params) {
@@ -55,19 +56,26 @@ class BidiNoOpParser {
55
56
  parseCloseParams(params) {
56
57
  return params;
57
58
  }
59
+ parseCaptureScreenshotParams(params) {
60
+ return params;
61
+ }
62
+ parsePrintParams(params) {
63
+ return params;
64
+ }
58
65
  }
59
66
  class CommandProcessor extends EventEmitter_js_1.EventEmitter {
60
67
  #contextProcessor;
61
68
  #eventManager;
62
69
  #parser;
70
+ #logger;
63
71
  constructor(realmStorage, cdpConnection, eventManager, selfTargetId, parser = new BidiNoOpParser(), browsingContextStorage, logger) {
64
72
  super();
65
73
  this.#eventManager = eventManager;
74
+ this.#logger = logger;
66
75
  this.#contextProcessor = new browsingContextProcessor_js_1.BrowsingContextProcessor(realmStorage, cdpConnection, selfTargetId, eventManager, browsingContextStorage, logger);
67
76
  this.#parser = parser;
68
77
  }
69
- // noinspection JSMethodCanBeStatic,JSUnusedLocalSymbols
70
- async #process_session_status() {
78
+ static #process_session_status() {
71
79
  return { result: { ready: false, message: 'already connected' } };
72
80
  }
73
81
  async #process_session_subscribe(params, channel) {
@@ -81,36 +89,40 @@ class CommandProcessor extends EventEmitter_js_1.EventEmitter {
81
89
  async #processCommand(commandData) {
82
90
  switch (commandData.method) {
83
91
  case 'session.status':
84
- return await this.#process_session_status();
92
+ return CommandProcessor.#process_session_status();
85
93
  case 'session.subscribe':
86
- return await this.#process_session_subscribe(this.#parser.parseSubscribeParams(commandData.params), commandData.channel ?? null);
94
+ return this.#process_session_subscribe(this.#parser.parseSubscribeParams(commandData.params), commandData.channel ?? null);
87
95
  case 'session.unsubscribe':
88
- return await this.#process_session_unsubscribe(this.#parser.parseSubscribeParams(commandData.params), commandData.channel ?? null);
96
+ return this.#process_session_unsubscribe(this.#parser.parseSubscribeParams(commandData.params), commandData.channel ?? null);
89
97
  case 'browsingContext.create':
90
- return await this.#contextProcessor.process_browsingContext_create(this.#parser.parseCreateParams(commandData.params));
98
+ return this.#contextProcessor.process_browsingContext_create(this.#parser.parseCreateParams(commandData.params));
91
99
  case 'browsingContext.close':
92
- return await this.#contextProcessor.process_browsingContext_close(this.#parser.parseCloseParams(commandData.params));
100
+ return this.#contextProcessor.process_browsingContext_close(this.#parser.parseCloseParams(commandData.params));
93
101
  case 'browsingContext.getTree':
94
- return await this.#contextProcessor.process_browsingContext_getTree(this.#parser.parseGetTreeParams(commandData.params));
102
+ return this.#contextProcessor.process_browsingContext_getTree(this.#parser.parseGetTreeParams(commandData.params));
95
103
  case 'browsingContext.navigate':
96
- return await this.#contextProcessor.process_browsingContext_navigate(this.#parser.parseNavigateParams(commandData.params));
104
+ return this.#contextProcessor.process_browsingContext_navigate(this.#parser.parseNavigateParams(commandData.params));
105
+ case 'browsingContext.captureScreenshot':
106
+ return this.#contextProcessor.process_browsingContext_captureScreenshot(this.#parser.parseCaptureScreenshotParams(commandData.params));
107
+ case 'browsingContext.print':
108
+ return this.#contextProcessor.process_browsingContext_print(this.#parser.parsePrintParams(commandData.params));
97
109
  case 'script.getRealms':
98
110
  return this.#contextProcessor.process_script_getRealms(this.#parser.parseGetRealmsParams(commandData.params));
99
111
  case 'script.callFunction':
100
- return await this.#contextProcessor.process_script_callFunction(this.#parser.parseCallFunctionParams(commandData.params));
112
+ return this.#contextProcessor.process_script_callFunction(this.#parser.parseCallFunctionParams(commandData.params));
101
113
  case 'script.evaluate':
102
- return await this.#contextProcessor.process_script_evaluate(this.#parser.parseEvaluateParams(commandData.params));
114
+ return this.#contextProcessor.process_script_evaluate(this.#parser.parseEvaluateParams(commandData.params));
103
115
  case 'script.disown':
104
- return await this.#contextProcessor.process_script_disown(this.#parser.parseDisownParams(commandData.params));
116
+ return this.#contextProcessor.process_script_disown(this.#parser.parseDisownParams(commandData.params));
105
117
  case 'cdp.sendCommand':
106
- return await this.#contextProcessor.process_cdp_sendCommand(this.#parser.parseSendCommandParams(commandData.params));
118
+ return this.#contextProcessor.process_cdp_sendCommand(this.#parser.parseSendCommandParams(commandData.params));
107
119
  case 'cdp.getSession':
108
- return await this.#contextProcessor.process_cdp_getSession(this.#parser.parseGetSessionParams(commandData.params));
120
+ return this.#contextProcessor.process_cdp_getSession(this.#parser.parseGetSessionParams(commandData.params));
109
121
  default:
110
122
  throw new protocol_js_1.Message.UnknownCommandException(`Unknown command '${commandData.method}'.`);
111
123
  }
112
124
  }
113
- processCommand = async (command) => {
125
+ async processCommand(command) {
114
126
  try {
115
127
  const result = await this.#processCommand(command);
116
128
  const response = {
@@ -126,11 +138,11 @@ class CommandProcessor extends EventEmitter_js_1.EventEmitter {
126
138
  }
127
139
  else {
128
140
  const error = e;
129
- console.error(error);
141
+ this.#logger?.(log_js_1.LogType.bidi, error);
130
142
  this.emit('response', OutgoingBidiMessage_js_1.OutgoingBidiMessage.createResolved(new protocol_js_1.Message.UnknownException(error.message).toErrorResponse(command.id), command.channel ?? null));
131
143
  }
132
144
  }
133
- };
145
+ }
134
146
  }
135
147
  exports.CommandProcessor = CommandProcessor;
136
148
  //# sourceMappingURL=CommandProcessor.js.map
@@ -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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"}
@@ -16,23 +16,21 @@
16
16
  */
17
17
  import { BrowsingContext } from '../../../protocol/protocol.js';
18
18
  import { LoggerFn } from '../../../utils/log.js';
19
- import { BrowsingContextStorage } from './browsingContextStorage.js';
20
- import { CdpClient } from '../../CdpConnection.js';
21
19
  import { IEventManager } from '../events/EventManager.js';
22
20
  import { Realm } from '../script/realm.js';
23
21
  import { RealmStorage } from '../script/realmStorage.js';
22
+ import { BrowsingContextStorage } from './browsingContextStorage.js';
23
+ import { CdpTarget } from './cdpTarget';
24
24
  export declare class BrowsingContextImpl {
25
25
  #private;
26
26
  private constructor();
27
- static createFrameContext(realmStorage: RealmStorage, contextId: string, parentId: string | null, cdpClient: CdpClient, cdpSessionId: string, eventManager: IEventManager, browsingContextStorage: BrowsingContextStorage, logger?: LoggerFn): Promise<void>;
28
- static createTargetContext(realmStorage: RealmStorage, contextId: string, parentId: string | null, cdpClient: CdpClient, cdpSessionId: string, cdpBrowserContextId: string | null, eventManager: IEventManager, browsingContextStorage: BrowsingContextStorage, logger?: LoggerFn): Promise<void>;
29
- get cdpBrowserContextId(): string | null;
27
+ static create(cdpTarget: CdpTarget, realmStorage: RealmStorage, contextId: string, parentId: string | null, eventManager: IEventManager, browsingContextStorage: BrowsingContextStorage, logger?: LoggerFn): Promise<void>;
30
28
  get navigableId(): string | null;
31
- convertFrameToTargetContext(cdpClient: CdpClient, cdpSessionId: string): void;
29
+ updateCdpTarget(cdpTarget: CdpTarget): void;
32
30
  delete(): Promise<void>;
33
31
  get contextId(): string;
34
32
  get parentId(): string | null;
35
- get cdpSessionId(): string;
33
+ get cdpTarget(): CdpTarget;
36
34
  get children(): BrowsingContextImpl[];
37
35
  get url(): string;
38
36
  addChild(child: BrowsingContextImpl): void;
@@ -41,4 +39,6 @@ export declare class BrowsingContextImpl {
41
39
  serializeToBidiValue(maxDepth?: number, addParentFiled?: boolean): BrowsingContext.Info;
42
40
  navigate(url: string, wait: BrowsingContext.ReadinessState): Promise<BrowsingContext.NavigateResult>;
43
41
  getOrCreateSandbox(sandbox: string | undefined): Promise<Realm>;
42
+ captureScreenshot(): Promise<BrowsingContext.CaptureScreenshotResult>;
43
+ print(params: BrowsingContext.PrintParameters): Promise<BrowsingContext.PrintResult>;
44
44
  }