chromium-bidi 0.4.17 → 0.4.19
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.
- package/.browser +1 -1
- package/README.md +2 -2
- package/lib/cjs/bidiMapper/BidiNoOpParser.d.ts +2 -8
- package/lib/cjs/bidiMapper/BidiNoOpParser.js +3 -24
- package/lib/cjs/bidiMapper/BidiNoOpParser.js.map +1 -1
- package/lib/cjs/bidiMapper/BidiParser.d.ts +2 -8
- package/lib/cjs/bidiMapper/BidiServer.d.ts +0 -1
- package/lib/cjs/bidiMapper/BidiServer.js +7 -8
- package/lib/cjs/bidiMapper/BidiServer.js.map +1 -1
- package/lib/cjs/bidiMapper/CommandProcessor.d.ts +1 -1
- package/lib/cjs/bidiMapper/CommandProcessor.js +48 -56
- package/lib/cjs/bidiMapper/CommandProcessor.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/cdp/CdpProcessor.d.ts +25 -0
- package/lib/cjs/bidiMapper/domains/cdp/CdpProcessor.js +47 -0
- package/lib/cjs/bidiMapper/domains/cdp/CdpProcessor.js.map +1 -0
- package/lib/cjs/bidiMapper/domains/context/browsingContextImpl.d.ts +3 -2
- package/lib/cjs/bidiMapper/domains/context/browsingContextImpl.js +76 -40
- package/lib/cjs/bidiMapper/domains/context/browsingContextImpl.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/context/browsingContextProcessor.d.ts +13 -28
- package/lib/cjs/bidiMapper/domains/context/browsingContextProcessor.js +95 -249
- package/lib/cjs/bidiMapper/domains/context/browsingContextProcessor.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/context/cdpTarget.d.ts +1 -6
- package/lib/cjs/bidiMapper/domains/context/cdpTarget.js +7 -18
- package/lib/cjs/bidiMapper/domains/context/cdpTarget.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/events/EventManager.d.ts +2 -4
- package/lib/cjs/bidiMapper/domains/events/EventManager.js +5 -33
- package/lib/cjs/bidiMapper/domains/events/EventManager.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/input/ActionDispatcher.js +50 -48
- package/lib/cjs/bidiMapper/domains/input/ActionDispatcher.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/input/InputProcessor.d.ts +10 -0
- package/lib/cjs/bidiMapper/domains/input/InputProcessor.js +80 -0
- package/lib/cjs/bidiMapper/domains/input/InputProcessor.js.map +1 -0
- package/lib/cjs/bidiMapper/domains/input/InputStateManager.d.ts +1 -3
- package/lib/cjs/bidiMapper/domains/input/InputStateManager.js +6 -12
- package/lib/cjs/bidiMapper/domains/input/InputStateManager.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/log/logHelper.js +2 -1
- package/lib/cjs/bidiMapper/domains/log/logHelper.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/log/logManager.js +4 -5
- package/lib/cjs/bidiMapper/domains/log/logManager.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/network/{networkProcessor.d.ts → NetworkManager.d.ts} +2 -2
- package/lib/cjs/bidiMapper/domains/network/{networkProcessor.js → NetworkManager.js} +24 -14
- package/lib/cjs/bidiMapper/domains/network/NetworkManager.js.map +1 -0
- package/lib/cjs/bidiMapper/domains/network/networkRequest.js +5 -4
- package/lib/cjs/bidiMapper/domains/network/networkRequest.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/{context → script}/PreloadScriptStorage.d.ts +1 -1
- package/lib/cjs/bidiMapper/domains/script/PreloadScriptStorage.js.map +1 -0
- package/lib/cjs/bidiMapper/domains/script/ScriptProcessor.d.ts +30 -0
- package/lib/cjs/bidiMapper/domains/script/ScriptProcessor.js +97 -0
- package/lib/cjs/bidiMapper/domains/script/ScriptProcessor.js.map +1 -0
- package/lib/cjs/bidiMapper/domains/{context → script}/bidiPreloadScript.d.ts +2 -2
- package/lib/cjs/bidiMapper/domains/{context → script}/bidiPreloadScript.js +1 -1
- package/lib/cjs/bidiMapper/domains/script/bidiPreloadScript.js.map +1 -0
- package/lib/cjs/bidiMapper/domains/script/channelProxy.js +5 -4
- package/lib/cjs/bidiMapper/domains/script/channelProxy.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/script/realm.d.ts +10 -17
- package/lib/cjs/bidiMapper/domains/script/realm.js +402 -97
- package/lib/cjs/bidiMapper/domains/script/realm.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/script/realmStorage.d.ts +3 -3
- package/lib/cjs/bidiMapper/domains/script/realmStorage.js +6 -6
- package/lib/cjs/bidiMapper/domains/script/realmStorage.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/session/SessionProcessor.d.ts +25 -0
- package/lib/cjs/bidiMapper/domains/session/SessionProcessor.js +38 -0
- package/lib/cjs/bidiMapper/domains/session/SessionProcessor.js.map +1 -0
- package/lib/cjs/bidiMapper/tsconfig.tsbuildinfo +1 -1
- package/lib/cjs/bidiServer/bidiServerRunner.js +1 -0
- package/lib/cjs/bidiServer/bidiServerRunner.js.map +1 -1
- package/lib/cjs/bidiServer/tsconfig.tsbuildinfo +1 -1
- package/lib/cjs/bidiTab/BidiParserImpl.d.ts +18 -8
- package/lib/cjs/bidiTab/BidiParserImpl.js +7 -44
- package/lib/cjs/bidiTab/BidiParserImpl.js.map +1 -1
- package/lib/cjs/bidiTab/bidiTab.js +1 -0
- package/lib/cjs/bidiTab/bidiTab.js.map +1 -1
- package/lib/cjs/bidiTab/tsconfig.tsbuildinfo +1 -1
- package/lib/cjs/cdp/tsconfig.tsbuildinfo +1 -1
- package/lib/cjs/protocol/ErrorResponse.js +1 -0
- package/lib/cjs/protocol/ErrorResponse.js.map +1 -1
- package/lib/cjs/protocol/cdp.d.ts +4 -1
- package/lib/cjs/protocol/tsconfig.tsbuildinfo +1 -1
- package/lib/cjs/protocol/webdriver-bidi.d.ts +62 -209
- package/lib/cjs/protocol-parser/protocol-parser.d.ts +7 -12
- package/lib/cjs/protocol-parser/protocol-parser.js +5 -33
- package/lib/cjs/protocol-parser/protocol-parser.js.map +1 -1
- package/lib/cjs/protocol-parser/tsconfig.tsbuildinfo +1 -1
- package/lib/cjs/protocol-parser/webdriver-bidi.d.ts +4423 -11974
- package/lib/cjs/protocol-parser/webdriver-bidi.js +24 -164
- package/lib/cjs/protocol-parser/webdriver-bidi.js.map +1 -1
- package/lib/cjs/utils/deferred.js +8 -4
- package/lib/cjs/utils/deferred.js.map +1 -1
- package/lib/cjs/utils/tsconfig.tsbuildinfo +1 -1
- package/lib/iife/mapperTab.js +2 -2
- package/lib/iife/mapperTab.js.map +1 -1
- package/package.json +19 -21
- package/lib/cjs/bidiMapper/domains/context/PreloadScriptStorage.js.map +0 -1
- package/lib/cjs/bidiMapper/domains/context/bidiPreloadScript.js.map +0 -1
- package/lib/cjs/bidiMapper/domains/network/networkProcessor.js.map +0 -1
- package/lib/cjs/bidiMapper/domains/script/scriptEvaluator.d.ts +0 -43
- package/lib/cjs/bidiMapper/domains/script/scriptEvaluator.js +0 -369
- package/lib/cjs/bidiMapper/domains/script/scriptEvaluator.js.map +0 -1
- /package/lib/cjs/bidiMapper/domains/{context → script}/PreloadScriptStorage.js +0 -0
package/.browser
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
chrome@117.0.
|
|
1
|
+
chrome@117.0.5908.0
|
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
|
|
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
|
-
|
|
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,
|
|
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;;;
|
|
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,
|
|
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;
|
|
@@ -29,7 +29,6 @@ export declare class BidiServer extends EventEmitter<BidiServerEvent> {
|
|
|
29
29
|
#private;
|
|
30
30
|
private constructor();
|
|
31
31
|
static createAndStart(bidiTransport: IBidiTransport, cdpConnection: ICdpConnection, selfTargetId: string, parser?: IBidiParser, logger?: LoggerFn): Promise<BidiServer>;
|
|
32
|
-
topLevelContextsLoaded(): Promise<void>;
|
|
33
32
|
/**
|
|
34
33
|
* Sends BiDi message.
|
|
35
34
|
*/
|
|
@@ -29,7 +29,6 @@ class BidiServer extends EventEmitter_js_1.EventEmitter {
|
|
|
29
29
|
#transport;
|
|
30
30
|
#commandProcessor;
|
|
31
31
|
#browsingContextStorage = new browsingContextStorage_js_1.BrowsingContextStorage();
|
|
32
|
-
#realmStorage = new realmStorage_js_1.RealmStorage();
|
|
33
32
|
#logger;
|
|
34
33
|
#handleIncomingMessage = (message) => {
|
|
35
34
|
void this.#commandProcessor.processCommand(message).catch((error) => {
|
|
@@ -49,7 +48,7 @@ class BidiServer extends EventEmitter_js_1.EventEmitter {
|
|
|
49
48
|
this.#messageQueue = new processingQueue_js_1.ProcessingQueue(this.#processOutgoingMessage, this.#logger);
|
|
50
49
|
this.#transport = bidiTransport;
|
|
51
50
|
this.#transport.setOnMessage(this.#handleIncomingMessage);
|
|
52
|
-
this.#commandProcessor = new CommandProcessor_js_1.CommandProcessor(cdpConnection, new EventManager_js_1.EventManager(this), selfTargetId,
|
|
51
|
+
this.#commandProcessor = new CommandProcessor_js_1.CommandProcessor(cdpConnection, new EventManager_js_1.EventManager(this), selfTargetId, this.#browsingContextStorage, new realmStorage_js_1.RealmStorage(), parser, this.#logger);
|
|
53
52
|
this.#commandProcessor.on('response', (response) => {
|
|
54
53
|
this.emitOutgoingMessage(response);
|
|
55
54
|
});
|
|
@@ -65,14 +64,9 @@ class BidiServer extends EventEmitter_js_1.EventEmitter {
|
|
|
65
64
|
waitForDebuggerOnStart: true,
|
|
66
65
|
flatten: true,
|
|
67
66
|
});
|
|
68
|
-
await server
|
|
67
|
+
await server.#topLevelContextsLoaded();
|
|
69
68
|
return server;
|
|
70
69
|
}
|
|
71
|
-
async topLevelContextsLoaded() {
|
|
72
|
-
await Promise.all(this.#browsingContextStorage
|
|
73
|
-
.getTopLevelContexts()
|
|
74
|
-
.map((c) => c.awaitLoaded()));
|
|
75
|
-
}
|
|
76
70
|
/**
|
|
77
71
|
* Sends BiDi message.
|
|
78
72
|
*/
|
|
@@ -85,6 +79,11 @@ class BidiServer extends EventEmitter_js_1.EventEmitter {
|
|
|
85
79
|
getBrowsingContextStorage() {
|
|
86
80
|
return this.#browsingContextStorage;
|
|
87
81
|
}
|
|
82
|
+
async #topLevelContextsLoaded() {
|
|
83
|
+
await Promise.all(this.#browsingContextStorage
|
|
84
|
+
.getTopLevelContexts()
|
|
85
|
+
.map((c) => c.lifecycleLoaded()));
|
|
86
|
+
}
|
|
88
87
|
}
|
|
89
88
|
exports.BidiServer = BidiServer;
|
|
90
89
|
//# sourceMappingURL=BidiServer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BidiServer.js","sourceRoot":"","sources":["../../../src/bidiMapper/BidiServer.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;;AAIH,8DAAsD;AACtD,4CAAuD;AACvD,oEAA4D;AAI5D,+DAAuD;AAEvD,2FAAmF;AACnF,sEAA8D;AAC9D,sEAA8D;AAM9D,MAAa,UAAW,SAAQ,8BAA6B;IAC3D,aAAa,CAAuC;IACpD,UAAU,CAAiB;IAC3B,iBAAiB,CAAmB;IACpC,uBAAuB,GAAG,IAAI,kDAAsB,EAAE,CAAC;IACvD,
|
|
1
|
+
{"version":3,"file":"BidiServer.js","sourceRoot":"","sources":["../../../src/bidiMapper/BidiServer.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;;AAIH,8DAAsD;AACtD,4CAAuD;AACvD,oEAA4D;AAI5D,+DAAuD;AAEvD,2FAAmF;AACnF,sEAA8D;AAC9D,sEAA8D;AAM9D,MAAa,UAAW,SAAQ,8BAA6B;IAC3D,aAAa,CAAuC;IACpD,UAAU,CAAiB;IAC3B,iBAAiB,CAAmB;IACpC,uBAAuB,GAAG,IAAI,kDAAsB,EAAE,CAAC;IACvD,OAAO,CAAY;IAEnB,sBAAsB,GAAG,CAAC,OAA6B,EAAE,EAAE;QACzD,KAAK,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YAClE,IAAI,CAAC,OAAO,EAAE,CAAC,gBAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,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,YACE,aAA6B,EAC7B,aAA6B,EAC7B,YAAoB,EACpB,MAAoB,EACpB,MAAiB;QAEjB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,aAAa,GAAG,IAAI,oCAAe,CACtC,IAAI,CAAC,uBAAuB,EAC5B,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,aAAa,EACb,IAAI,8BAAY,CAAC,IAAI,CAAC,EACtB,YAAY,EACZ,IAAI,CAAC,uBAAuB,EAC5B,IAAI,8BAAY,EAAE,EAClB,MAAM,EACN,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;IAED,MAAM,CAAC,KAAK,CAAC,cAAc,CACzB,aAA6B,EAC7B,aAA6B,EAC7B,YAAoB,EACpB,MAAoB,EACpB,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,uBAAuB,EAAE,CAAC;QACvC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;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,yBAAyB;QACvB,OAAO,IAAI,CAAC,uBAAuB,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,uBAAuB;QAC3B,MAAM,OAAO,CAAC,GAAG,CACf,IAAI,CAAC,uBAAuB;aACzB,mBAAmB,EAAE;aACrB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CACnC,CAAC;IACJ,CAAC;CACF;AA3GD,gCA2GC"}
|
|
@@ -28,7 +28,7 @@ type CommandProcessorEvents = {
|
|
|
28
28
|
};
|
|
29
29
|
export declare class CommandProcessor extends EventEmitter<CommandProcessorEvents> {
|
|
30
30
|
#private;
|
|
31
|
-
constructor(cdpConnection: ICdpConnection, eventManager: IEventManager, selfTargetId: string,
|
|
31
|
+
constructor(cdpConnection: ICdpConnection, eventManager: IEventManager, selfTargetId: string, browsingContextStorage: BrowsingContextStorage, realmStorage: RealmStorage, parser?: IBidiParser, logger?: LoggerFn);
|
|
32
32
|
processCommand(command: ChromiumBidi.Command): Promise<void>;
|
|
33
33
|
}
|
|
34
34
|
export {};
|
|
@@ -22,107 +22,98 @@ const EventEmitter_js_1 = require("../utils/EventEmitter.js");
|
|
|
22
22
|
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
|
+
const CdpProcessor_js_1 = require("./domains/cdp/CdpProcessor.js");
|
|
25
26
|
const browsingContextProcessor_js_1 = require("./domains/context/browsingContextProcessor.js");
|
|
27
|
+
const InputProcessor_js_1 = require("./domains/input/InputProcessor.js");
|
|
28
|
+
const PreloadScriptStorage_js_1 = require("./domains/script/PreloadScriptStorage.js");
|
|
29
|
+
const ScriptProcessor_js_1 = require("./domains/script/ScriptProcessor.js");
|
|
30
|
+
const SessionProcessor_js_1 = require("./domains/session/SessionProcessor.js");
|
|
26
31
|
class CommandProcessor extends EventEmitter_js_1.EventEmitter {
|
|
27
|
-
#
|
|
28
|
-
#
|
|
32
|
+
#browsingContextProcessor;
|
|
33
|
+
#inputProcessor;
|
|
34
|
+
#scriptProcessor;
|
|
35
|
+
#sessionProcessor;
|
|
36
|
+
#cdpProcessor;
|
|
29
37
|
#parser;
|
|
30
38
|
#logger;
|
|
31
|
-
constructor(cdpConnection, eventManager, selfTargetId, parser = new BidiNoOpParser_js_1.BidiNoOpParser(),
|
|
39
|
+
constructor(cdpConnection, eventManager, selfTargetId, browsingContextStorage, realmStorage, parser = new BidiNoOpParser_js_1.BidiNoOpParser(), logger) {
|
|
32
40
|
super();
|
|
33
|
-
this.#eventManager = eventManager;
|
|
34
|
-
this.#logger = logger;
|
|
35
|
-
this.#contextProcessor = new browsingContextProcessor_js_1.BrowsingContextProcessor(cdpConnection, selfTargetId, eventManager, browsingContextStorage, realmStorage, logger);
|
|
36
41
|
this.#parser = parser;
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
}
|
|
45
|
-
async #process_session_unsubscribe(params, channel) {
|
|
46
|
-
await this.#eventManager.unsubscribe(params.events, params.contexts ?? [null], channel);
|
|
47
|
-
return {};
|
|
42
|
+
this.#logger = logger;
|
|
43
|
+
const preloadScriptStorage = new PreloadScriptStorage_js_1.PreloadScriptStorage();
|
|
44
|
+
this.#browsingContextProcessor = new browsingContextProcessor_js_1.BrowsingContextProcessor(cdpConnection, selfTargetId, eventManager, browsingContextStorage, realmStorage, preloadScriptStorage, logger);
|
|
45
|
+
this.#inputProcessor = InputProcessor_js_1.InputProcessor.create(browsingContextStorage);
|
|
46
|
+
this.#scriptProcessor = new ScriptProcessor_js_1.ScriptProcessor(browsingContextStorage, realmStorage, preloadScriptStorage);
|
|
47
|
+
this.#sessionProcessor = new SessionProcessor_js_1.SessionProcessor(eventManager);
|
|
48
|
+
this.#cdpProcessor = new CdpProcessor_js_1.CdpProcessor(browsingContextStorage, cdpConnection);
|
|
48
49
|
}
|
|
49
50
|
async #processCommand(command) {
|
|
50
51
|
switch (command.method) {
|
|
52
|
+
case 'browser.close':
|
|
53
|
+
case 'session.end':
|
|
54
|
+
case 'session.new':
|
|
55
|
+
// TODO: Implement.
|
|
56
|
+
break;
|
|
51
57
|
// Browsing Context domain
|
|
52
58
|
// keep-sorted start block=yes
|
|
59
|
+
case 'browsingContext.activate':
|
|
60
|
+
return this.#browsingContextProcessor.activate(this.#parser.parseActivateParams(command.params));
|
|
53
61
|
case 'browsingContext.captureScreenshot':
|
|
54
|
-
return this.#
|
|
62
|
+
return this.#browsingContextProcessor.captureScreenshot(this.#parser.parseCaptureScreenshotParams(command.params));
|
|
55
63
|
case 'browsingContext.close':
|
|
56
|
-
return this.#
|
|
64
|
+
return this.#browsingContextProcessor.close(this.#parser.parseCloseParams(command.params));
|
|
57
65
|
case 'browsingContext.create':
|
|
58
|
-
return this.#
|
|
66
|
+
return this.#browsingContextProcessor.create(this.#parser.parseCreateParams(command.params));
|
|
59
67
|
case 'browsingContext.getTree':
|
|
60
|
-
return this.#
|
|
68
|
+
return this.#browsingContextProcessor.getTree(this.#parser.parseGetTreeParams(command.params));
|
|
61
69
|
case 'browsingContext.handleUserPrompt':
|
|
62
|
-
return this.#
|
|
70
|
+
return this.#browsingContextProcessor.handleUserPrompt(this.#parser.parseHandleUserPromptParams(command.params));
|
|
63
71
|
case 'browsingContext.navigate':
|
|
64
|
-
return this.#
|
|
72
|
+
return this.#browsingContextProcessor.navigate(this.#parser.parseNavigateParams(command.params));
|
|
65
73
|
case 'browsingContext.print':
|
|
66
|
-
return this.#
|
|
74
|
+
return this.#browsingContextProcessor.print(this.#parser.parsePrintParams(command.params));
|
|
67
75
|
case 'browsingContext.reload':
|
|
68
|
-
return this.#
|
|
76
|
+
return this.#browsingContextProcessor.reload(this.#parser.parseReloadParams(command.params));
|
|
69
77
|
case 'browsingContext.setViewport':
|
|
70
|
-
return this.#
|
|
78
|
+
return this.#browsingContextProcessor.setViewport(this.#parser.parseSetViewportParams(command.params));
|
|
71
79
|
// keep-sorted end
|
|
72
80
|
// CDP domain
|
|
73
81
|
// keep-sorted start block=yes
|
|
74
82
|
case 'cdp.getSession':
|
|
75
|
-
return this.#
|
|
83
|
+
return this.#cdpProcessor.getSession(this.#parser.parseGetSessionParams(command.params));
|
|
76
84
|
case 'cdp.sendCommand':
|
|
77
|
-
return this.#
|
|
85
|
+
return this.#cdpProcessor.sendCommand(this.#parser.parseSendCommandParams(command.params));
|
|
78
86
|
// keep-sorted end
|
|
79
87
|
// Input domain
|
|
80
88
|
// keep-sorted start block=yes
|
|
81
89
|
case 'input.performActions':
|
|
82
|
-
return this.#
|
|
90
|
+
return this.#inputProcessor.performActions(this.#parser.parsePerformActionsParams(command.params));
|
|
83
91
|
case 'input.releaseActions':
|
|
84
|
-
return this.#
|
|
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));
|
|
92
|
+
return this.#inputProcessor.releaseActions(this.#parser.parseReleaseActionsParams(command.params));
|
|
102
93
|
// keep-sorted end
|
|
103
94
|
// Script domain
|
|
104
95
|
// keep-sorted start block=yes
|
|
105
96
|
case 'script.addPreloadScript':
|
|
106
|
-
return this.#
|
|
97
|
+
return this.#scriptProcessor.addPreloadScript(this.#parser.parseAddPreloadScriptParams(command.params));
|
|
107
98
|
case 'script.callFunction':
|
|
108
|
-
return this.#
|
|
99
|
+
return this.#scriptProcessor.callFunction(this.#parser.parseCallFunctionParams(command.params));
|
|
109
100
|
case 'script.disown':
|
|
110
|
-
return this.#
|
|
101
|
+
return this.#scriptProcessor.disown(this.#parser.parseDisownParams(command.params));
|
|
111
102
|
case 'script.evaluate':
|
|
112
|
-
return this.#
|
|
103
|
+
return this.#scriptProcessor.evaluate(this.#parser.parseEvaluateParams(command.params));
|
|
113
104
|
case 'script.getRealms':
|
|
114
|
-
return this.#
|
|
105
|
+
return this.#scriptProcessor.getRealms(this.#parser.parseGetRealmsParams(command.params));
|
|
115
106
|
case 'script.removePreloadScript':
|
|
116
|
-
return this.#
|
|
107
|
+
return this.#scriptProcessor.removePreloadScript(this.#parser.parseRemovePreloadScriptParams(command.params));
|
|
117
108
|
// keep-sorted end
|
|
118
109
|
// Session domain
|
|
119
110
|
// keep-sorted start block=yes
|
|
120
111
|
case 'session.status':
|
|
121
|
-
return
|
|
112
|
+
return this.#sessionProcessor.status();
|
|
122
113
|
case 'session.subscribe':
|
|
123
|
-
return this.#
|
|
114
|
+
return this.#sessionProcessor.subscribe(this.#parser.parseSubscribeParams(command.params), command.channel);
|
|
124
115
|
case 'session.unsubscribe':
|
|
125
|
-
return this.#
|
|
116
|
+
return this.#sessionProcessor.unsubscribe(this.#parser.parseSubscribeParams(command.params), command.channel);
|
|
126
117
|
// keep-sorted end
|
|
127
118
|
}
|
|
128
119
|
// Intentionally kept outside of the switch statement to ensure that
|
|
@@ -134,6 +125,7 @@ class CommandProcessor extends EventEmitter_js_1.EventEmitter {
|
|
|
134
125
|
try {
|
|
135
126
|
const result = await this.#processCommand(command);
|
|
136
127
|
const response = {
|
|
128
|
+
type: 'success',
|
|
137
129
|
id: command.id,
|
|
138
130
|
result,
|
|
139
131
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommandProcessor.js","sourceRoot":"","sources":["../../../src/bidiMapper/CommandProcessor.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;;AAGH,
|
|
1
|
+
{"version":3,"file":"CommandProcessor.js","sourceRoot":"","sources":["../../../src/bidiMapper/CommandProcessor.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;;AAGH,yDAKiC;AACjC,8DAAsD;AACtD,4CAAuD;AAEvD,2DAAmD;AAEnD,qEAA6D;AAC7D,mEAA2D;AAC3D,+FAAuF;AAGvF,yEAAiE;AACjE,sFAA8E;AAC9E,4EAAoE;AAEpE,+EAAuE;AAMvE,MAAa,gBAAiB,SAAQ,8BAAoC;IACxE,yBAAyB,CAA2B;IACpD,eAAe,CAAiB;IAChC,gBAAgB,CAAkB;IAClC,iBAAiB,CAAmB;IACpC,aAAa,CAAe;IAE5B,OAAO,CAAc;IACrB,OAAO,CAAY;IAEnB,YACE,aAA6B,EAC7B,YAA2B,EAC3B,YAAoB,EACpB,sBAA8C,EAC9C,YAA0B,EAC1B,SAAsB,IAAI,kCAAc,EAAE,EAC1C,MAAiB;QAEjB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,MAAM,oBAAoB,GAAG,IAAI,8CAAoB,EAAE,CAAC;QACxD,IAAI,CAAC,yBAAyB,GAAG,IAAI,sDAAwB,CAC3D,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,sBAAsB,EACtB,YAAY,EACZ,oBAAoB,EACpB,MAAM,CACP,CAAC;QACF,IAAI,CAAC,eAAe,GAAG,kCAAc,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;QACrE,IAAI,CAAC,gBAAgB,GAAG,IAAI,oCAAe,CACzC,sBAAsB,EACtB,YAAY,EACZ,oBAAoB,CACrB,CAAC;QACF,IAAI,CAAC,iBAAiB,GAAG,IAAI,sCAAgB,CAAC,YAAY,CAAC,CAAC;QAC5D,IAAI,CAAC,aAAa,GAAG,IAAI,8BAAY,CACnC,sBAAsB,EACtB,aAAa,CACd,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,OAA6B;QAE7B,QAAQ,OAAO,CAAC,MAAM,EAAE;YACtB,KAAK,eAAe,CAAC;YACrB,KAAK,aAAa,CAAC;YACnB,KAAK,aAAa;gBAChB,mBAAmB;gBACnB,MAAM;YAER,0BAA0B;YAC1B,8BAA8B;YAC9B,KAAK,0BAA0B;gBAC7B,OAAO,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAC5C,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,MAAM,CAAC,CACjD,CAAC;YACJ,KAAK,mCAAmC;gBACtC,OAAO,IAAI,CAAC,yBAAyB,CAAC,iBAAiB,CACrD,IAAI,CAAC,OAAO,CAAC,4BAA4B,CAAC,OAAO,CAAC,MAAM,CAAC,CAC1D,CAAC;YACJ,KAAK,uBAAuB;gBAC1B,OAAO,IAAI,CAAC,yBAAyB,CAAC,KAAK,CACzC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,CAC9C,CAAC;YACJ,KAAK,wBAAwB;gBAC3B,OAAO,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAC1C,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,CAC/C,CAAC;YACJ,KAAK,yBAAyB;gBAC5B,OAAO,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAC3C,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,CAChD,CAAC;YACJ,KAAK,kCAAkC;gBACrC,OAAO,IAAI,CAAC,yBAAyB,CAAC,gBAAgB,CACpD,IAAI,CAAC,OAAO,CAAC,2BAA2B,CAAC,OAAO,CAAC,MAAM,CAAC,CACzD,CAAC;YACJ,KAAK,0BAA0B;gBAC7B,OAAO,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAC5C,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,MAAM,CAAC,CACjD,CAAC;YACJ,KAAK,uBAAuB;gBAC1B,OAAO,IAAI,CAAC,yBAAyB,CAAC,KAAK,CACzC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,CAC9C,CAAC;YACJ,KAAK,wBAAwB;gBAC3B,OAAO,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAC1C,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,CAC/C,CAAC;YACJ,KAAK,6BAA6B;gBAChC,OAAO,IAAI,CAAC,yBAAyB,CAAC,WAAW,CAC/C,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,OAAO,CAAC,MAAM,CAAC,CACpD,CAAC;YACJ,kBAAkB;YAElB,aAAa;YACb,8BAA8B;YAC9B,KAAK,gBAAgB;gBACnB,OAAO,IAAI,CAAC,aAAa,CAAC,UAAU,CAClC,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,OAAO,CAAC,MAAM,CAAC,CACnD,CAAC;YACJ,KAAK,iBAAiB;gBACpB,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CACnC,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,OAAO,CAAC,MAAM,CAAC,CACpD,CAAC;YACJ,kBAAkB;YAElB,eAAe;YACf,8BAA8B;YAC9B,KAAK,sBAAsB;gBACzB,OAAO,IAAI,CAAC,eAAe,CAAC,cAAc,CACxC,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,OAAO,CAAC,MAAM,CAAC,CACvD,CAAC;YACJ,KAAK,sBAAsB;gBACzB,OAAO,IAAI,CAAC,eAAe,CAAC,cAAc,CACxC,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,OAAO,CAAC,MAAM,CAAC,CACvD,CAAC;YACJ,kBAAkB;YAElB,gBAAgB;YAChB,8BAA8B;YAC9B,KAAK,yBAAyB;gBAC5B,OAAO,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAC3C,IAAI,CAAC,OAAO,CAAC,2BAA2B,CAAC,OAAO,CAAC,MAAM,CAAC,CACzD,CAAC;YACJ,KAAK,qBAAqB;gBACxB,OAAO,IAAI,CAAC,gBAAgB,CAAC,YAAY,CACvC,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,OAAO,CAAC,MAAM,CAAC,CACrD,CAAC;YACJ,KAAK,eAAe;gBAClB,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,CACjC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,CAC/C,CAAC;YACJ,KAAK,iBAAiB;gBACpB,OAAO,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CACnC,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,MAAM,CAAC,CACjD,CAAC;YACJ,KAAK,kBAAkB;gBACrB,OAAO,IAAI,CAAC,gBAAgB,CAAC,SAAS,CACpC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,MAAM,CAAC,CAClD,CAAC;YACJ,KAAK,4BAA4B;gBAC/B,OAAO,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CAC9C,IAAI,CAAC,OAAO,CAAC,8BAA8B,CAAC,OAAO,CAAC,MAAM,CAAC,CAC5D,CAAC;YACJ,kBAAkB;YAElB,iBAAiB;YACjB,8BAA8B;YAC9B,KAAK,gBAAgB;gBACnB,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC;YACzC,KAAK,mBAAmB;gBACtB,OAAO,IAAI,CAAC,iBAAiB,CAAC,SAAS,CACrC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,MAAM,CAAC,EACjD,OAAO,CAAC,OAAO,CAChB,CAAC;YACJ,KAAK,qBAAqB;gBACxB,OAAO,IAAI,CAAC,iBAAiB,CAAC,WAAW,CACvC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,MAAM,CAAC,EACjD,OAAO,CAAC,OAAO,CAChB,CAAC;YACJ,kBAAkB;SACnB;QAED,oEAAoE;QACpE,0EAA0E;QAC1E,oBAAoB;QACpB,MAAM,IAAI,qCAAuB,CAAC,oBAAoB,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC;IAC5E,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,OAA6B;QAChD,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YAEnD,MAAM,QAAQ,GAAG;gBACf,IAAI,EAAE,SAAS;gBACf,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,MAAM;aACgC,CAAC;YAEzC,IAAI,CAAC,IAAI,CACP,UAAU,EACV,4CAAmB,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC,CACtE,CAAC;SACH;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,YAAY,uBAAS,EAAE;gBAC1B,MAAM,aAAa,GAAG,CAAC,CAAC;gBACxB,IAAI,CAAC,IAAI,CACP,UAAU,EACV,4CAAmB,CAAC,cAAc,CAChC,aAAa,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC,EACzC,OAAO,CAAC,OAAO,IAAI,IAAI,CACxB,CACF,CAAC;aACH;iBAAM;gBACL,MAAM,KAAK,GAAG,CAAU,CAAC;gBACzB,IAAI,CAAC,OAAO,EAAE,CAAC,gBAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBACpC,IAAI,CAAC,IAAI,CACP,UAAU,EACV,4CAAmB,CAAC,cAAc,CAChC,IAAI,mCAAqB,CACvB,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,KAAK,CACZ,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC,EAC7B,OAAO,CAAC,OAAO,IAAI,IAAI,CACxB,CACF,CAAC;aACH;SACF;IACH,CAAC;CACF;AAtND,4CAsNC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2023 Google LLC.
|
|
3
|
+
* Copyright (c) Microsoft Corporation.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
import type { Cdp } from '../../../protocol/protocol.js';
|
|
18
|
+
import type { ICdpConnection } from '../../bidiMapper.js';
|
|
19
|
+
import type { BrowsingContextStorage } from '../context/browsingContextStorage.js';
|
|
20
|
+
export declare class CdpProcessor {
|
|
21
|
+
#private;
|
|
22
|
+
constructor(browsingContextStorage: BrowsingContextStorage, cdpConnection: ICdpConnection);
|
|
23
|
+
getSession(params: Cdp.GetSessionParameters): Cdp.GetSessionResult;
|
|
24
|
+
sendCommand(params: Cdp.SendCommandParameters): Promise<Cdp.SendCommandResult>;
|
|
25
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Copyright 2023 Google LLC.
|
|
4
|
+
* Copyright (c) Microsoft Corporation.
|
|
5
|
+
*
|
|
6
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
+
* you may not use this file except in compliance with the License.
|
|
8
|
+
* You may obtain a copy of the License at
|
|
9
|
+
*
|
|
10
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
*
|
|
12
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
13
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
+
* See the License for the specific language governing permissions and
|
|
16
|
+
* limitations under the License.
|
|
17
|
+
*/
|
|
18
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
+
exports.CdpProcessor = void 0;
|
|
20
|
+
class CdpProcessor {
|
|
21
|
+
#browsingContextStorage;
|
|
22
|
+
#cdpConnection;
|
|
23
|
+
constructor(browsingContextStorage, cdpConnection) {
|
|
24
|
+
this.#browsingContextStorage = browsingContextStorage;
|
|
25
|
+
this.#cdpConnection = cdpConnection;
|
|
26
|
+
}
|
|
27
|
+
getSession(params) {
|
|
28
|
+
const context = params.context;
|
|
29
|
+
const sessionId = this.#browsingContextStorage.getContext(context).cdpTarget.cdpSessionId;
|
|
30
|
+
if (sessionId === undefined) {
|
|
31
|
+
return {};
|
|
32
|
+
}
|
|
33
|
+
return { session: sessionId };
|
|
34
|
+
}
|
|
35
|
+
async sendCommand(params) {
|
|
36
|
+
const client = params.session
|
|
37
|
+
? this.#cdpConnection.getCdpClient(params.session)
|
|
38
|
+
: this.#cdpConnection.browserClient();
|
|
39
|
+
const result = await client.sendCommand(params.method, params.params);
|
|
40
|
+
return {
|
|
41
|
+
result,
|
|
42
|
+
session: params.session,
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
exports.CdpProcessor = CdpProcessor;
|
|
47
|
+
//# sourceMappingURL=CdpProcessor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CdpProcessor.js","sourceRoot":"","sources":["../../../../../src/bidiMapper/domains/cdp/CdpProcessor.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;;AAMH,MAAa,YAAY;IACvB,uBAAuB,CAAyB;IAChD,cAAc,CAAiB;IAE/B,YACE,sBAA8C,EAC9C,aAA6B;QAE7B,IAAI,CAAC,uBAAuB,GAAG,sBAAsB,CAAC;QACtD,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;IACtC,CAAC;IAED,UAAU,CAAC,MAAgC;QACzC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC/B,MAAM,SAAS,GACb,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC;QAC1E,IAAI,SAAS,KAAK,SAAS,EAAE;YAC3B,OAAO,EAAE,CAAC;SACX;QACD,OAAO,EAAC,OAAO,EAAE,SAAS,EAAC,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,WAAW,CACf,MAAiC;QAEjC,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO;YAC3B,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC;YAClD,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC;QACxC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QACtE,OAAO;YACL,MAAM;YACN,OAAO,EAAE,MAAM,CAAC,OAAO;SACxB,CAAC;IACJ,CAAC;CACF;AAlCD,oCAkCC"}
|
|
@@ -52,8 +52,8 @@ export declare class BrowsingContextImpl {
|
|
|
52
52
|
get cdpTarget(): CdpTarget;
|
|
53
53
|
updateCdpTarget(cdpTarget: CdpTarget): void;
|
|
54
54
|
get url(): string;
|
|
55
|
-
|
|
56
|
-
|
|
55
|
+
lifecycleLoaded(): Promise<void>;
|
|
56
|
+
targetUnblocked(): Promise<void>;
|
|
57
57
|
getOrCreateSandbox(sandbox: string | undefined): Promise<Realm>;
|
|
58
58
|
serializeToBidiValue(maxDepth?: number, addParentField?: boolean): BrowsingContext.Info;
|
|
59
59
|
onTargetInfoChanged(params: Protocol.Target.TargetInfoChangedEvent): void;
|
|
@@ -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>;
|