chromium-bidi 0.4.15 → 0.4.17
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 +11 -0
- package/lib/cjs/bidiMapper/BidiNoOpParser.d.ts +47 -0
- package/lib/cjs/bidiMapper/BidiNoOpParser.js +121 -0
- package/lib/cjs/bidiMapper/BidiNoOpParser.js.map +1 -0
- package/lib/cjs/bidiMapper/BidiParser.d.ts +46 -0
- package/lib/cjs/bidiMapper/BidiParser.js +19 -0
- package/lib/cjs/bidiMapper/BidiParser.js.map +1 -0
- package/lib/cjs/bidiMapper/BidiServer.d.ts +9 -9
- package/lib/cjs/bidiMapper/BidiServer.js.map +1 -1
- package/lib/cjs/bidiMapper/BidiTransport.d.ts +4 -4
- package/lib/cjs/bidiMapper/CommandProcessor.d.ts +7 -27
- package/lib/cjs/bidiMapper/CommandProcessor.js +80 -104
- package/lib/cjs/bidiMapper/CommandProcessor.js.map +1 -1
- package/lib/cjs/bidiMapper/OutgoingBidiMessage.d.ts +4 -4
- package/lib/cjs/bidiMapper/OutgoingBidiMessage.js.map +1 -1
- package/lib/cjs/bidiMapper/bidiMapper.d.ts +2 -2
- package/lib/cjs/bidiMapper/domains/context/PreloadScriptStorage.d.ts +3 -9
- package/lib/cjs/bidiMapper/domains/context/PreloadScriptStorage.js +0 -8
- package/lib/cjs/bidiMapper/domains/context/PreloadScriptStorage.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/context/bidiPreloadScript.d.ts +7 -15
- package/lib/cjs/bidiMapper/domains/context/bidiPreloadScript.js +17 -33
- package/lib/cjs/bidiMapper/domains/context/bidiPreloadScript.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/context/browsingContextImpl.d.ts +9 -7
- package/lib/cjs/bidiMapper/domains/context/browsingContextImpl.js +71 -42
- package/lib/cjs/bidiMapper/domains/context/browsingContextImpl.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/context/browsingContextProcessor.d.ts +20 -12
- package/lib/cjs/bidiMapper/domains/context/browsingContextProcessor.js +107 -78
- package/lib/cjs/bidiMapper/domains/context/browsingContextProcessor.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/context/browsingContextStorage.d.ts +6 -6
- package/lib/cjs/bidiMapper/domains/context/browsingContextStorage.js +1 -1
- package/lib/cjs/bidiMapper/domains/context/browsingContextStorage.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/context/cdpTarget.d.ts +6 -7
- package/lib/cjs/bidiMapper/domains/context/cdpTarget.js +24 -35
- package/lib/cjs/bidiMapper/domains/context/cdpTarget.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/events/EventManager.d.ts +9 -9
- package/lib/cjs/bidiMapper/domains/events/EventManager.js +21 -4
- package/lib/cjs/bidiMapper/domains/events/EventManager.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/events/SubscriptionManager.d.ts +6 -6
- package/lib/cjs/bidiMapper/domains/events/SubscriptionManager.js +36 -26
- package/lib/cjs/bidiMapper/domains/events/SubscriptionManager.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/input/ActionDispatcher.d.ts +2 -1
- package/lib/cjs/bidiMapper/domains/input/ActionDispatcher.js +163 -34
- package/lib/cjs/bidiMapper/domains/input/ActionDispatcher.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/input/InputSource.d.ts +11 -6
- package/lib/cjs/bidiMapper/domains/input/InputSource.js +5 -7
- package/lib/cjs/bidiMapper/domains/input/InputSource.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/input/InputState.d.ts +1 -1
- package/lib/cjs/bidiMapper/domains/input/InputState.js +10 -10
- package/lib/cjs/bidiMapper/domains/input/InputState.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/input/InputStateManager.d.ts +1 -1
- package/lib/cjs/bidiMapper/domains/input/InputStateManager.js +1 -1
- package/lib/cjs/bidiMapper/domains/input/InputStateManager.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/log/logHelper.d.ts +3 -3
- package/lib/cjs/bidiMapper/domains/log/logHelper.js +5 -7
- package/lib/cjs/bidiMapper/domains/log/logHelper.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/log/logManager.js +15 -15
- package/lib/cjs/bidiMapper/domains/log/logManager.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/network/networkProcessor.d.ts +1 -0
- package/lib/cjs/bidiMapper/domains/network/networkProcessor.js +13 -0
- package/lib/cjs/bidiMapper/domains/network/networkProcessor.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/network/networkRequest.d.ts +3 -2
- package/lib/cjs/bidiMapper/domains/network/networkRequest.js +30 -11
- package/lib/cjs/bidiMapper/domains/network/networkRequest.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/script/channelProxy.d.ts +2 -3
- package/lib/cjs/bidiMapper/domains/script/channelProxy.js +2 -2
- package/lib/cjs/bidiMapper/domains/script/channelProxy.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/script/realm.d.ts +9 -10
- package/lib/cjs/bidiMapper/domains/script/realm.js +11 -11
- package/lib/cjs/bidiMapper/domains/script/realm.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/script/realmStorage.d.ts +2 -2
- package/lib/cjs/bidiMapper/domains/script/realmStorage.js +2 -2
- package/lib/cjs/bidiMapper/domains/script/realmStorage.js.map +1 -1
- package/lib/cjs/bidiMapper/domains/script/scriptEvaluator.d.ts +4 -4
- package/lib/cjs/bidiMapper/domains/script/scriptEvaluator.js +23 -9
- package/lib/cjs/bidiMapper/domains/script/scriptEvaluator.js.map +1 -1
- package/lib/cjs/bidiMapper/tsconfig.tsbuildinfo +1 -1
- package/lib/cjs/bidiServer/bidiServerRunner.js +1 -1
- package/lib/cjs/bidiServer/bidiServerRunner.js.map +1 -1
- package/lib/cjs/bidiServer/index.js +16 -15
- package/lib/cjs/bidiServer/index.js.map +1 -1
- package/lib/cjs/bidiServer/tsconfig.tsbuildinfo +1 -1
- package/lib/cjs/bidiTab/BidiParserImpl.d.ts +31 -0
- package/lib/cjs/bidiTab/BidiParserImpl.js +145 -0
- package/lib/cjs/bidiTab/BidiParserImpl.js.map +1 -0
- package/lib/cjs/bidiTab/bidiTab.js +3 -86
- package/lib/cjs/bidiTab/bidiTab.js.map +1 -1
- package/lib/cjs/bidiTab/tsconfig.tsbuildinfo +1 -1
- package/lib/cjs/cdp/cdpClient.d.ts +10 -0
- package/lib/cjs/cdp/cdpClient.js +6 -0
- package/lib/cjs/cdp/cdpClient.js.map +1 -1
- package/lib/cjs/cdp/cdpConnection.js +11 -8
- package/lib/cjs/cdp/cdpConnection.js.map +1 -1
- package/lib/cjs/cdp/tsconfig.tsbuildinfo +1 -1
- package/lib/cjs/protocol/ErrorResponse.d.ts +64 -0
- package/lib/cjs/protocol/ErrorResponse.js +117 -0
- package/lib/cjs/protocol/ErrorResponse.js.map +1 -0
- package/lib/cjs/protocol/cdp.d.ts +63 -0
- package/lib/cjs/protocol/cdp.js +19 -0
- package/lib/cjs/protocol/cdp.js.map +1 -0
- package/lib/cjs/protocol/chromium-bidi.d.ts +64 -0
- package/lib/cjs/protocol/chromium-bidi.js +71 -0
- package/lib/cjs/protocol/chromium-bidi.js.map +1 -0
- package/lib/cjs/protocol/protocol.d.ts +5 -947
- package/lib/cjs/protocol/protocol.js +32 -198
- package/lib/cjs/protocol/protocol.js.map +1 -1
- package/lib/cjs/protocol/tsconfig.tsbuildinfo +1 -1
- package/lib/cjs/protocol/webdriver-bidi.d.ts +1644 -0
- package/lib/cjs/protocol/webdriver-bidi.js +19 -0
- package/lib/cjs/protocol/webdriver-bidi.js.map +1 -0
- package/lib/cjs/protocol-parser/protocol-parser.d.ts +35 -218
- package/lib/cjs/protocol-parser/protocol-parser.js +104 -700
- 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 +56325 -0
- package/lib/cjs/protocol-parser/webdriver-bidi.js +1771 -0
- package/lib/cjs/protocol-parser/webdriver-bidi.js.map +1 -0
- package/lib/cjs/utils/EventEmitter.d.ts +7 -0
- package/lib/cjs/utils/EventEmitter.js +15 -0
- package/lib/cjs/utils/EventEmitter.js.map +1 -1
- package/lib/cjs/utils/buffer.d.ts +3 -5
- package/lib/cjs/utils/buffer.js +3 -5
- package/lib/cjs/utils/buffer.js.map +1 -1
- package/lib/cjs/utils/deferred.d.ts +1 -1
- package/lib/cjs/utils/deferred.js.map +1 -1
- package/lib/cjs/utils/idWrapper.js.map +1 -1
- package/lib/cjs/utils/log.js +1 -1
- package/lib/cjs/utils/log.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 +38 -30
package/.browser
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
chrome@
|
|
1
|
+
chrome@117.0.5875.0
|
package/README.md
CHANGED
|
@@ -8,6 +8,8 @@
|
|
|
8
8
|
|
|
9
9
|

|
|
10
10
|
|
|
11
|
+
[](https://codecov.io/gh/GoogleChromeLabs/chromium-bidi)
|
|
12
|
+
|
|
11
13
|
This is an implementation of the
|
|
12
14
|
[WebDriver BiDi](https://w3c.github.io/webdriver-bidi/) protocol with some
|
|
13
15
|
extensions (**BiDi+**)
|
|
@@ -138,6 +140,15 @@ This is a Node.js project, so install dependencies as usual:
|
|
|
138
140
|
npm install
|
|
139
141
|
```
|
|
140
142
|
|
|
143
|
+
### `cargo`
|
|
144
|
+
|
|
145
|
+
<!-- TODO(jrandolf): Remove after binaries get published -->
|
|
146
|
+
|
|
147
|
+
We use [cddlconv](https://github.com/jrandolf/cddlconv) to generate our WebDriverBidi types before building.
|
|
148
|
+
|
|
149
|
+
1. Install [Rust](https://rustup.rs/).
|
|
150
|
+
2. Run `cargo install --git https://github.com/jrandolf/cddlconv.git cddlconv`
|
|
151
|
+
|
|
141
152
|
### pre-commit.com integration
|
|
142
153
|
|
|
143
154
|
Refer to the documentation at [.pre-commit-config.yaml](.pre-commit-config.yaml).
|
|
@@ -0,0 +1,47 @@
|
|
|
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 { BrowsingContext, Cdp, Input, Network, Script, Session } from '../protocol/protocol.js';
|
|
18
|
+
import type { IBidiParser } from './BidiParser.js';
|
|
19
|
+
export declare class BidiNoOpParser implements IBidiParser {
|
|
20
|
+
parseCaptureScreenshotParams(params: unknown): BrowsingContext.CaptureScreenshotParameters;
|
|
21
|
+
parseCloseParams(params: unknown): BrowsingContext.CloseParameters;
|
|
22
|
+
parseCreateParams(params: unknown): BrowsingContext.CreateParameters;
|
|
23
|
+
parseGetTreeParams(params: unknown): BrowsingContext.GetTreeParameters;
|
|
24
|
+
parseHandleUserPromptParams(params: unknown): BrowsingContext.HandleUserPromptParameters;
|
|
25
|
+
parseNavigateParams(params: unknown): BrowsingContext.NavigateParameters;
|
|
26
|
+
parsePrintParams(params: unknown): BrowsingContext.PrintParameters;
|
|
27
|
+
parseReloadParams(params: unknown): BrowsingContext.ReloadParameters;
|
|
28
|
+
parseSetViewportParams(params: unknown): BrowsingContext.SetViewportParameters;
|
|
29
|
+
parseGetSessionParams(params: unknown): Cdp.GetSessionParameters;
|
|
30
|
+
parseSendCommandParams(params: unknown): Cdp.SendCommandParameters;
|
|
31
|
+
parseAddPreloadScriptParams(params: unknown): Script.AddPreloadScriptParameters;
|
|
32
|
+
parseCallFunctionParams(params: unknown): Script.CallFunctionParameters;
|
|
33
|
+
parseDisownParams(params: unknown): Script.DisownParameters;
|
|
34
|
+
parseEvaluateParams(params: unknown): Script.EvaluateParameters;
|
|
35
|
+
parseGetRealmsParams(params: unknown): Script.GetRealmsParameters;
|
|
36
|
+
parseRemovePreloadScriptParams(params: unknown): Script.RemovePreloadScriptParameters;
|
|
37
|
+
parsePerformActionsParams(params: unknown): Input.PerformActionsParameters;
|
|
38
|
+
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
|
+
parseSubscribeParams(params: unknown): Session.SubscriptionRequest;
|
|
47
|
+
}
|
|
@@ -0,0 +1,121 @@
|
|
|
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.BidiNoOpParser = void 0;
|
|
20
|
+
class BidiNoOpParser {
|
|
21
|
+
// Browsing Context domain
|
|
22
|
+
// keep-sorted start block=yes
|
|
23
|
+
parseCaptureScreenshotParams(params) {
|
|
24
|
+
return params;
|
|
25
|
+
}
|
|
26
|
+
parseCloseParams(params) {
|
|
27
|
+
return params;
|
|
28
|
+
}
|
|
29
|
+
parseCreateParams(params) {
|
|
30
|
+
return params;
|
|
31
|
+
}
|
|
32
|
+
parseGetTreeParams(params) {
|
|
33
|
+
return params;
|
|
34
|
+
}
|
|
35
|
+
parseHandleUserPromptParams(params) {
|
|
36
|
+
return params;
|
|
37
|
+
}
|
|
38
|
+
parseNavigateParams(params) {
|
|
39
|
+
return params;
|
|
40
|
+
}
|
|
41
|
+
parsePrintParams(params) {
|
|
42
|
+
return params;
|
|
43
|
+
}
|
|
44
|
+
parseReloadParams(params) {
|
|
45
|
+
return params;
|
|
46
|
+
}
|
|
47
|
+
parseSetViewportParams(params) {
|
|
48
|
+
return params;
|
|
49
|
+
}
|
|
50
|
+
// keep-sorted end
|
|
51
|
+
// CDP domain
|
|
52
|
+
// keep-sorted start block=yes
|
|
53
|
+
parseGetSessionParams(params) {
|
|
54
|
+
return params;
|
|
55
|
+
}
|
|
56
|
+
parseSendCommandParams(params) {
|
|
57
|
+
return params;
|
|
58
|
+
}
|
|
59
|
+
// keep-sorted end
|
|
60
|
+
// Script domain
|
|
61
|
+
// keep-sorted start block=yes
|
|
62
|
+
parseAddPreloadScriptParams(params) {
|
|
63
|
+
return params;
|
|
64
|
+
}
|
|
65
|
+
parseCallFunctionParams(params) {
|
|
66
|
+
return params;
|
|
67
|
+
}
|
|
68
|
+
parseDisownParams(params) {
|
|
69
|
+
return params;
|
|
70
|
+
}
|
|
71
|
+
parseEvaluateParams(params) {
|
|
72
|
+
return params;
|
|
73
|
+
}
|
|
74
|
+
parseGetRealmsParams(params) {
|
|
75
|
+
return params;
|
|
76
|
+
}
|
|
77
|
+
parseRemovePreloadScriptParams(params) {
|
|
78
|
+
return params;
|
|
79
|
+
}
|
|
80
|
+
// keep-sorted end
|
|
81
|
+
// Input domain
|
|
82
|
+
// keep-sorted start block=yes
|
|
83
|
+
parsePerformActionsParams(params) {
|
|
84
|
+
return params;
|
|
85
|
+
}
|
|
86
|
+
parseReleaseActionsParams(params) {
|
|
87
|
+
return params;
|
|
88
|
+
}
|
|
89
|
+
// 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
|
+
// Session domain
|
|
115
|
+
// keep-sorted start block=yes
|
|
116
|
+
parseSubscribeParams(params) {
|
|
117
|
+
return params;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
exports.BidiNoOpParser = BidiNoOpParser;
|
|
121
|
+
//# sourceMappingURL=BidiNoOpParser.js.map
|
|
@@ -0,0 +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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
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 { BrowsingContext, Cdp, Input, Network, Script, Session } from '../protocol/protocol.js';
|
|
18
|
+
export interface IBidiParser {
|
|
19
|
+
parseCaptureScreenshotParams(params: unknown): BrowsingContext.CaptureScreenshotParameters;
|
|
20
|
+
parseCloseParams(params: unknown): BrowsingContext.CloseParameters;
|
|
21
|
+
parseCreateParams(params: unknown): BrowsingContext.CreateParameters;
|
|
22
|
+
parseGetTreeParams(params: unknown): BrowsingContext.GetTreeParameters;
|
|
23
|
+
parseHandleUserPromptParams(params: unknown): BrowsingContext.HandleUserPromptParameters;
|
|
24
|
+
parseNavigateParams(params: unknown): BrowsingContext.NavigateParameters;
|
|
25
|
+
parsePrintParams(params: unknown): BrowsingContext.PrintParameters;
|
|
26
|
+
parseReloadParams(params: unknown): BrowsingContext.ReloadParameters;
|
|
27
|
+
parseSetViewportParams(params: unknown): BrowsingContext.SetViewportParameters;
|
|
28
|
+
parseGetSessionParams(params: unknown): Cdp.GetSessionParameters;
|
|
29
|
+
parseSendCommandParams(params: unknown): Cdp.SendCommandParameters;
|
|
30
|
+
parsePerformActionsParams(params: unknown): Input.PerformActionsParameters;
|
|
31
|
+
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
|
+
parseAddPreloadScriptParams(params: unknown): Script.AddPreloadScriptParameters;
|
|
40
|
+
parseCallFunctionParams(params: unknown): Script.CallFunctionParameters;
|
|
41
|
+
parseDisownParams(params: unknown): Script.DisownParameters;
|
|
42
|
+
parseEvaluateParams(params: unknown): Script.EvaluateParameters;
|
|
43
|
+
parseGetRealmsParams(params: unknown): Script.GetRealmsParameters;
|
|
44
|
+
parseRemovePreloadScriptParams(params: unknown): Script.RemovePreloadScriptParameters;
|
|
45
|
+
parseSubscribeParams(params: unknown): Session.SubscriptionRequest;
|
|
46
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
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
|
+
//# sourceMappingURL=BidiParser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BidiParser.js","sourceRoot":"","sources":["../../../src/bidiMapper/BidiParser.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG"}
|
|
@@ -14,21 +14,21 @@
|
|
|
14
14
|
* See the License for the specific language governing permissions and
|
|
15
15
|
* limitations under the License.
|
|
16
16
|
*/
|
|
17
|
+
import type { ICdpConnection } from '../cdp/cdpConnection.js';
|
|
18
|
+
import type { ChromiumBidi } from '../protocol/protocol.js';
|
|
17
19
|
import { EventEmitter } from '../utils/EventEmitter.js';
|
|
18
20
|
import { type LoggerFn } from '../utils/log.js';
|
|
19
|
-
import type {
|
|
20
|
-
import type {
|
|
21
|
-
import { type BidiParser } from './CommandProcessor.js';
|
|
22
|
-
import type { BidiTransport } from './BidiTransport.js';
|
|
23
|
-
import { BrowsingContextStorage } from './domains/context/browsingContextStorage.js';
|
|
21
|
+
import type { IBidiParser } from './BidiParser.js';
|
|
22
|
+
import type { IBidiTransport } from './BidiTransport.js';
|
|
24
23
|
import type { OutgoingBidiMessage } from './OutgoingBidiMessage.js';
|
|
25
|
-
|
|
26
|
-
|
|
24
|
+
import { BrowsingContextStorage } from './domains/context/browsingContextStorage.js';
|
|
25
|
+
type BidiServerEvent = {
|
|
26
|
+
message: ChromiumBidi.Command;
|
|
27
27
|
};
|
|
28
|
-
export declare class BidiServer extends EventEmitter<
|
|
28
|
+
export declare class BidiServer extends EventEmitter<BidiServerEvent> {
|
|
29
29
|
#private;
|
|
30
30
|
private constructor();
|
|
31
|
-
static createAndStart(bidiTransport:
|
|
31
|
+
static createAndStart(bidiTransport: IBidiTransport, cdpConnection: ICdpConnection, selfTargetId: string, parser?: IBidiParser, logger?: LoggerFn): Promise<BidiServer>;
|
|
32
32
|
topLevelContextsLoaded(): Promise<void>;
|
|
33
33
|
/**
|
|
34
34
|
* Sends BiDi message.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BidiServer.js","sourceRoot":"","sources":["../../../src/bidiMapper/BidiServer.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;;
|
|
1
|
+
{"version":3,"file":"BidiServer.js","sourceRoot":"","sources":["../../../src/bidiMapper/BidiServer.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,9 +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 {
|
|
18
|
-
export interface
|
|
19
|
-
setOnMessage: (handler: (message:
|
|
20
|
-
sendMessage: (message: Message
|
|
17
|
+
import type { ChromiumBidi } from '../protocol/protocol.js';
|
|
18
|
+
export interface IBidiTransport {
|
|
19
|
+
setOnMessage: (handler: (message: ChromiumBidi.Command) => Promise<void> | void) => void;
|
|
20
|
+
sendMessage: (message: ChromiumBidi.Message) => Promise<void> | void;
|
|
21
21
|
close(): void;
|
|
22
22
|
}
|
|
@@ -14,41 +14,21 @@
|
|
|
14
14
|
* See the License for the specific language governing permissions and
|
|
15
15
|
* limitations under the License.
|
|
16
16
|
*/
|
|
17
|
-
import { type BrowsingContext, type Cdp, type Input, Message, type Script, type Session } from '../protocol/protocol.js';
|
|
18
|
-
import { type LoggerFn } from '../utils/log.js';
|
|
19
|
-
import { EventEmitter } from '../utils/EventEmitter.js';
|
|
20
17
|
import type { ICdpConnection } from '../cdp/cdpConnection.js';
|
|
18
|
+
import { type ChromiumBidi } from '../protocol/protocol.js';
|
|
19
|
+
import { EventEmitter } from '../utils/EventEmitter.js';
|
|
20
|
+
import { type LoggerFn } from '../utils/log.js';
|
|
21
|
+
import type { IBidiParser } from './BidiParser.js';
|
|
22
|
+
import { OutgoingBidiMessage } from './OutgoingBidiMessage.js';
|
|
21
23
|
import type { BrowsingContextStorage } from './domains/context/browsingContextStorage.js';
|
|
22
24
|
import type { IEventManager } from './domains/events/EventManager.js';
|
|
23
|
-
import { OutgoingBidiMessage } from './OutgoingBidiMessage.js';
|
|
24
25
|
import type { RealmStorage } from './domains/script/realmStorage.js';
|
|
25
26
|
type CommandProcessorEvents = {
|
|
26
27
|
response: Promise<OutgoingBidiMessage>;
|
|
27
28
|
};
|
|
28
|
-
export interface BidiParser {
|
|
29
|
-
parseAddPreloadScriptParams(params: object): Script.AddPreloadScriptParameters;
|
|
30
|
-
parseRemovePreloadScriptParams(params: object): Script.RemovePreloadScriptParameters;
|
|
31
|
-
parseGetRealmsParams(params: object): Script.GetRealmsParameters;
|
|
32
|
-
parseCallFunctionParams(params: object): Script.CallFunctionParameters;
|
|
33
|
-
parseEvaluateParams(params: object): Script.EvaluateParameters;
|
|
34
|
-
parseDisownParams(params: object): Script.DisownParameters;
|
|
35
|
-
parseSendCommandParams(params: object): Cdp.SendCommandParams;
|
|
36
|
-
parseGetSessionParams(params: object): Cdp.GetSessionParams;
|
|
37
|
-
parseSubscribeParams(params: object): Session.SubscriptionRequest;
|
|
38
|
-
parseNavigateParams(params: object): BrowsingContext.NavigateParameters;
|
|
39
|
-
parseReloadParams(params: object): BrowsingContext.ReloadParameters;
|
|
40
|
-
parseGetTreeParams(params: object): BrowsingContext.GetTreeParameters;
|
|
41
|
-
parseCreateParams(params: object): BrowsingContext.CreateParameters;
|
|
42
|
-
parseCloseParams(params: object): BrowsingContext.CloseParameters;
|
|
43
|
-
parseCaptureScreenshotParams(params: object): BrowsingContext.CaptureScreenshotParameters;
|
|
44
|
-
parsePrintParams(params: object): BrowsingContext.PrintParameters;
|
|
45
|
-
parseSetViewportParams(params: object): BrowsingContext.SetViewportParameters;
|
|
46
|
-
parsePerformActionsParams(params: object): Input.PerformActionsParameters;
|
|
47
|
-
parseReleaseActionsParams(params: object): Input.ReleaseActionsParameters;
|
|
48
|
-
}
|
|
49
29
|
export declare class CommandProcessor extends EventEmitter<CommandProcessorEvents> {
|
|
50
30
|
#private;
|
|
51
|
-
constructor(cdpConnection: ICdpConnection, eventManager: IEventManager, selfTargetId: string, parser:
|
|
52
|
-
processCommand(command:
|
|
31
|
+
constructor(cdpConnection: ICdpConnection, eventManager: IEventManager, selfTargetId: string, parser: IBidiParser | undefined, browsingContextStorage: BrowsingContextStorage, realmStorage: RealmStorage, logger?: LoggerFn);
|
|
32
|
+
processCommand(command: ChromiumBidi.Command): Promise<void>;
|
|
53
33
|
}
|
|
54
34
|
export {};
|
|
@@ -18,75 +18,17 @@
|
|
|
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 log_js_1 = require("../utils/log.js");
|
|
22
21
|
const EventEmitter_js_1 = require("../utils/EventEmitter.js");
|
|
23
|
-
const
|
|
22
|
+
const log_js_1 = require("../utils/log.js");
|
|
23
|
+
const BidiNoOpParser_js_1 = require("./BidiNoOpParser.js");
|
|
24
24
|
const OutgoingBidiMessage_js_1 = require("./OutgoingBidiMessage.js");
|
|
25
|
-
|
|
26
|
-
parseAddPreloadScriptParams(params) {
|
|
27
|
-
return params;
|
|
28
|
-
}
|
|
29
|
-
parseRemovePreloadScriptParams(params) {
|
|
30
|
-
return params;
|
|
31
|
-
}
|
|
32
|
-
parseGetRealmsParams(params) {
|
|
33
|
-
return params;
|
|
34
|
-
}
|
|
35
|
-
parseCallFunctionParams(params) {
|
|
36
|
-
return params;
|
|
37
|
-
}
|
|
38
|
-
parseEvaluateParams(params) {
|
|
39
|
-
return params;
|
|
40
|
-
}
|
|
41
|
-
parseDisownParams(params) {
|
|
42
|
-
return params;
|
|
43
|
-
}
|
|
44
|
-
parseSendCommandParams(params) {
|
|
45
|
-
return params;
|
|
46
|
-
}
|
|
47
|
-
parseGetSessionParams(params) {
|
|
48
|
-
return params;
|
|
49
|
-
}
|
|
50
|
-
parseSubscribeParams(params) {
|
|
51
|
-
return params;
|
|
52
|
-
}
|
|
53
|
-
parseNavigateParams(params) {
|
|
54
|
-
return params;
|
|
55
|
-
}
|
|
56
|
-
parseReloadParams(params) {
|
|
57
|
-
return params;
|
|
58
|
-
}
|
|
59
|
-
parseGetTreeParams(params) {
|
|
60
|
-
return params;
|
|
61
|
-
}
|
|
62
|
-
parseCreateParams(params) {
|
|
63
|
-
return params;
|
|
64
|
-
}
|
|
65
|
-
parseCloseParams(params) {
|
|
66
|
-
return params;
|
|
67
|
-
}
|
|
68
|
-
parseCaptureScreenshotParams(params) {
|
|
69
|
-
return params;
|
|
70
|
-
}
|
|
71
|
-
parsePrintParams(params) {
|
|
72
|
-
return params;
|
|
73
|
-
}
|
|
74
|
-
parsePerformActionsParams(params) {
|
|
75
|
-
return params;
|
|
76
|
-
}
|
|
77
|
-
parseReleaseActionsParams(params) {
|
|
78
|
-
return params;
|
|
79
|
-
}
|
|
80
|
-
parseSetViewportParams(params) {
|
|
81
|
-
return params;
|
|
82
|
-
}
|
|
83
|
-
}
|
|
25
|
+
const browsingContextProcessor_js_1 = require("./domains/context/browsingContextProcessor.js");
|
|
84
26
|
class CommandProcessor extends EventEmitter_js_1.EventEmitter {
|
|
85
27
|
#contextProcessor;
|
|
86
28
|
#eventManager;
|
|
87
29
|
#parser;
|
|
88
30
|
#logger;
|
|
89
|
-
constructor(cdpConnection, eventManager, selfTargetId, parser = new BidiNoOpParser(), browsingContextStorage, realmStorage, logger) {
|
|
31
|
+
constructor(cdpConnection, eventManager, selfTargetId, parser = new BidiNoOpParser_js_1.BidiNoOpParser(), browsingContextStorage, realmStorage, logger) {
|
|
90
32
|
super();
|
|
91
33
|
this.#eventManager = eventManager;
|
|
92
34
|
this.#logger = logger;
|
|
@@ -94,84 +36,118 @@ class CommandProcessor extends EventEmitter_js_1.EventEmitter {
|
|
|
94
36
|
this.#parser = parser;
|
|
95
37
|
}
|
|
96
38
|
static #process_session_status() {
|
|
97
|
-
return {
|
|
39
|
+
return { ready: false, message: 'already connected' };
|
|
98
40
|
}
|
|
99
41
|
async #process_session_subscribe(params, channel) {
|
|
100
42
|
await this.#eventManager.subscribe(params.events, params.contexts ?? [null], channel);
|
|
101
|
-
return {
|
|
43
|
+
return {};
|
|
102
44
|
}
|
|
103
45
|
async #process_session_unsubscribe(params, channel) {
|
|
104
46
|
await this.#eventManager.unsubscribe(params.events, params.contexts ?? [null], channel);
|
|
105
|
-
return {
|
|
47
|
+
return {};
|
|
106
48
|
}
|
|
107
|
-
async #processCommand(
|
|
108
|
-
switch (
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
case '
|
|
112
|
-
return this.#
|
|
113
|
-
case 'session.unsubscribe':
|
|
114
|
-
return this.#process_session_unsubscribe(this.#parser.parseSubscribeParams(commandData.params), commandData.channel ?? null);
|
|
115
|
-
case 'browsingContext.create':
|
|
116
|
-
return this.#contextProcessor.process_browsingContext_create(this.#parser.parseCreateParams(commandData.params));
|
|
49
|
+
async #processCommand(command) {
|
|
50
|
+
switch (command.method) {
|
|
51
|
+
// Browsing Context domain
|
|
52
|
+
// keep-sorted start block=yes
|
|
53
|
+
case 'browsingContext.captureScreenshot':
|
|
54
|
+
return this.#contextProcessor.process_browsingContext_captureScreenshot(this.#parser.parseCaptureScreenshotParams(command.params));
|
|
117
55
|
case 'browsingContext.close':
|
|
118
|
-
return this.#contextProcessor.process_browsingContext_close(this.#parser.parseCloseParams(
|
|
56
|
+
return this.#contextProcessor.process_browsingContext_close(this.#parser.parseCloseParams(command.params));
|
|
57
|
+
case 'browsingContext.create':
|
|
58
|
+
return this.#contextProcessor.process_browsingContext_create(this.#parser.parseCreateParams(command.params));
|
|
119
59
|
case 'browsingContext.getTree':
|
|
120
|
-
return this.#contextProcessor.process_browsingContext_getTree(this.#parser.parseGetTreeParams(
|
|
60
|
+
return this.#contextProcessor.process_browsingContext_getTree(this.#parser.parseGetTreeParams(command.params));
|
|
61
|
+
case 'browsingContext.handleUserPrompt':
|
|
62
|
+
return this.#contextProcessor.process_browsingContext_handleUserPrompt(this.#parser.parseHandleUserPromptParams(command.params));
|
|
121
63
|
case 'browsingContext.navigate':
|
|
122
|
-
return this.#contextProcessor.process_browsingContext_navigate(this.#parser.parseNavigateParams(
|
|
123
|
-
case 'browsingContext.captureScreenshot':
|
|
124
|
-
return this.#contextProcessor.process_browsingContext_captureScreenshot(this.#parser.parseCaptureScreenshotParams(commandData.params));
|
|
64
|
+
return this.#contextProcessor.process_browsingContext_navigate(this.#parser.parseNavigateParams(command.params));
|
|
125
65
|
case 'browsingContext.print':
|
|
126
|
-
return this.#contextProcessor.process_browsingContext_print(this.#parser.parsePrintParams(
|
|
66
|
+
return this.#contextProcessor.process_browsingContext_print(this.#parser.parsePrintParams(command.params));
|
|
127
67
|
case 'browsingContext.reload':
|
|
128
|
-
return this.#contextProcessor.process_browsingContext_reload(this.#parser.parseReloadParams(
|
|
68
|
+
return this.#contextProcessor.process_browsingContext_reload(this.#parser.parseReloadParams(command.params));
|
|
129
69
|
case 'browsingContext.setViewport':
|
|
130
|
-
return this.#contextProcessor.process_browsingContext_setViewport(this.#parser.parseSetViewportParams(
|
|
70
|
+
return this.#contextProcessor.process_browsingContext_setViewport(this.#parser.parseSetViewportParams(command.params));
|
|
71
|
+
// keep-sorted end
|
|
72
|
+
// CDP domain
|
|
73
|
+
// keep-sorted start block=yes
|
|
74
|
+
case 'cdp.getSession':
|
|
75
|
+
return this.#contextProcessor.process_cdp_getSession(this.#parser.parseGetSessionParams(command.params));
|
|
76
|
+
case 'cdp.sendCommand':
|
|
77
|
+
return this.#contextProcessor.process_cdp_sendCommand(this.#parser.parseSendCommandParams(command.params));
|
|
78
|
+
// keep-sorted end
|
|
79
|
+
// Input domain
|
|
80
|
+
// keep-sorted start block=yes
|
|
81
|
+
case 'input.performActions':
|
|
82
|
+
return this.#contextProcessor.process_input_performActions(this.#parser.parsePerformActionsParams(command.params));
|
|
83
|
+
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));
|
|
102
|
+
// keep-sorted end
|
|
103
|
+
// Script domain
|
|
104
|
+
// keep-sorted start block=yes
|
|
131
105
|
case 'script.addPreloadScript':
|
|
132
|
-
return this.#contextProcessor.process_script_addPreloadScript(this.#parser.parseAddPreloadScriptParams(
|
|
133
|
-
case 'script.removePreloadScript':
|
|
134
|
-
return this.#contextProcessor.process_script_removePreloadScript(this.#parser.parseRemovePreloadScriptParams(commandData.params));
|
|
135
|
-
case 'script.getRealms':
|
|
136
|
-
return this.#contextProcessor.process_script_getRealms(this.#parser.parseGetRealmsParams(commandData.params));
|
|
106
|
+
return this.#contextProcessor.process_script_addPreloadScript(this.#parser.parseAddPreloadScriptParams(command.params));
|
|
137
107
|
case 'script.callFunction':
|
|
138
|
-
return this.#contextProcessor.process_script_callFunction(this.#parser.parseCallFunctionParams(
|
|
139
|
-
case 'script.evaluate':
|
|
140
|
-
return this.#contextProcessor.process_script_evaluate(this.#parser.parseEvaluateParams(commandData.params));
|
|
108
|
+
return this.#contextProcessor.process_script_callFunction(this.#parser.parseCallFunctionParams(command.params));
|
|
141
109
|
case 'script.disown':
|
|
142
|
-
return this.#contextProcessor.process_script_disown(this.#parser.parseDisownParams(
|
|
143
|
-
case '
|
|
144
|
-
return this.#contextProcessor.
|
|
145
|
-
case '
|
|
146
|
-
return this.#contextProcessor.
|
|
147
|
-
case '
|
|
148
|
-
return this.#contextProcessor.
|
|
149
|
-
|
|
150
|
-
|
|
110
|
+
return this.#contextProcessor.process_script_disown(this.#parser.parseDisownParams(command.params));
|
|
111
|
+
case 'script.evaluate':
|
|
112
|
+
return this.#contextProcessor.process_script_evaluate(this.#parser.parseEvaluateParams(command.params));
|
|
113
|
+
case 'script.getRealms':
|
|
114
|
+
return this.#contextProcessor.process_script_getRealms(this.#parser.parseGetRealmsParams(command.params));
|
|
115
|
+
case 'script.removePreloadScript':
|
|
116
|
+
return this.#contextProcessor.process_script_removePreloadScript(this.#parser.parseRemovePreloadScriptParams(command.params));
|
|
117
|
+
// keep-sorted end
|
|
118
|
+
// Session domain
|
|
119
|
+
// keep-sorted start block=yes
|
|
120
|
+
case 'session.status':
|
|
121
|
+
return CommandProcessor.#process_session_status();
|
|
122
|
+
case 'session.subscribe':
|
|
123
|
+
return this.#process_session_subscribe(this.#parser.parseSubscribeParams(command.params), command.channel ?? null);
|
|
124
|
+
case 'session.unsubscribe':
|
|
125
|
+
return this.#process_session_unsubscribe(this.#parser.parseSubscribeParams(command.params), command.channel ?? null);
|
|
126
|
+
// keep-sorted end
|
|
151
127
|
}
|
|
152
128
|
// Intentionally kept outside of the switch statement to ensure that
|
|
153
129
|
// ESLint @typescript-eslint/switch-exhaustiveness-check triggers if a new
|
|
154
130
|
// command is added.
|
|
155
|
-
throw new protocol_js_1.
|
|
131
|
+
throw new protocol_js_1.UnknownCommandException(`Unknown command '${command.method}'.`);
|
|
156
132
|
}
|
|
157
133
|
async processCommand(command) {
|
|
158
134
|
try {
|
|
159
135
|
const result = await this.#processCommand(command);
|
|
160
136
|
const response = {
|
|
161
137
|
id: command.id,
|
|
162
|
-
|
|
138
|
+
result,
|
|
163
139
|
};
|
|
164
140
|
this.emit('response', OutgoingBidiMessage_js_1.OutgoingBidiMessage.createResolved(response, command.channel ?? null));
|
|
165
141
|
}
|
|
166
142
|
catch (e) {
|
|
167
|
-
if (e instanceof protocol_js_1.
|
|
143
|
+
if (e instanceof protocol_js_1.Exception) {
|
|
168
144
|
const errorResponse = e;
|
|
169
145
|
this.emit('response', OutgoingBidiMessage_js_1.OutgoingBidiMessage.createResolved(errorResponse.toErrorResponse(command.id), command.channel ?? null));
|
|
170
146
|
}
|
|
171
147
|
else {
|
|
172
148
|
const error = e;
|
|
173
149
|
this.#logger?.(log_js_1.LogType.bidi, error);
|
|
174
|
-
this.emit('response', OutgoingBidiMessage_js_1.OutgoingBidiMessage.createResolved(new protocol_js_1.
|
|
150
|
+
this.emit('response', OutgoingBidiMessage_js_1.OutgoingBidiMessage.createResolved(new protocol_js_1.UnknownErrorException(error.message, error.stack).toErrorResponse(command.id), command.channel ?? null));
|
|
175
151
|
}
|
|
176
152
|
}
|
|
177
153
|
}
|