@pyrokine/mcp-chrome 1.6.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +101 -43
- package/dist/anti-detection/behavior.d.ts.map +1 -1
- package/dist/anti-detection/behavior.js.map +1 -1
- package/dist/anti-detection/index.d.ts +1 -1
- package/dist/anti-detection/index.d.ts.map +1 -1
- package/dist/anti-detection/index.js +1 -1
- package/dist/anti-detection/index.js.map +1 -1
- package/dist/anti-detection/injection.d.ts +6 -2
- package/dist/anti-detection/injection.d.ts.map +1 -1
- package/dist/anti-detection/injection.js +32 -79
- package/dist/anti-detection/injection.js.map +1 -1
- package/dist/cdp/client.d.ts +2 -2
- package/dist/cdp/client.d.ts.map +1 -1
- package/dist/cdp/client.js +8 -10
- package/dist/cdp/client.js.map +1 -1
- package/dist/cdp/index.d.ts.map +1 -1
- package/dist/cdp/index.js.map +1 -1
- package/dist/cdp/launcher.d.ts.map +1 -1
- package/dist/cdp/launcher.js +40 -13
- package/dist/cdp/launcher.js.map +1 -1
- package/dist/core/auto-wait.d.ts +2 -2
- package/dist/core/auto-wait.d.ts.map +1 -1
- package/dist/core/auto-wait.js +2 -2
- package/dist/core/auto-wait.js.map +1 -1
- package/dist/core/browser-driver.d.ts +307 -0
- package/dist/core/browser-driver.d.ts.map +1 -0
- package/dist/core/browser-driver.js +21 -0
- package/dist/core/browser-driver.js.map +1 -0
- package/dist/core/error-sanitizer.d.ts +25 -0
- package/dist/core/error-sanitizer.d.ts.map +1 -0
- package/dist/core/error-sanitizer.js +66 -0
- package/dist/core/error-sanitizer.js.map +1 -0
- package/dist/core/errors.d.ts +10 -1
- package/dist/core/errors.d.ts.map +1 -1
- package/dist/core/errors.js +17 -4
- package/dist/core/errors.js.map +1 -1
- package/dist/core/extension-errors.d.ts +20 -0
- package/dist/core/extension-errors.d.ts.map +1 -0
- package/dist/core/extension-errors.js +40 -0
- package/dist/core/extension-errors.js.map +1 -0
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js.map +1 -1
- package/dist/core/locator.d.ts +2 -2
- package/dist/core/locator.d.ts.map +1 -1
- package/dist/core/locator.js +25 -65
- package/dist/core/locator.js.map +1 -1
- package/dist/core/retry.d.ts +2 -2
- package/dist/core/retry.d.ts.map +1 -1
- package/dist/core/retry.js +2 -2
- package/dist/core/retry.js.map +1 -1
- package/dist/core/session.d.ts +153 -46
- package/dist/core/session.d.ts.map +1 -1
- package/dist/core/session.js +672 -177
- package/dist/core/session.js.map +1 -1
- package/dist/core/types.d.ts +11 -3
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js +13 -6
- package/dist/core/types.js.map +1 -1
- package/dist/core/unified-session.d.ts +69 -68
- package/dist/core/unified-session.d.ts.map +1 -1
- package/dist/core/unified-session.js +356 -615
- package/dist/core/unified-session.js.map +1 -1
- package/dist/core/utils.d.ts +7 -0
- package/dist/core/utils.d.ts.map +1 -0
- package/dist/core/utils.js +33 -0
- package/dist/core/utils.js.map +1 -0
- package/dist/extension/bridge.d.ts +80 -39
- package/dist/extension/bridge.d.ts.map +1 -1
- package/dist/extension/bridge.js +195 -65
- package/dist/extension/bridge.js.map +1 -1
- package/dist/extension/http-server.d.ts +6 -4
- package/dist/extension/http-server.d.ts.map +1 -1
- package/dist/extension/http-server.js +45 -31
- package/dist/extension/http-server.js.map +1 -1
- package/dist/extension/index.d.ts.map +1 -1
- package/dist/extension/index.js.map +1 -1
- package/dist/index.js +27 -3
- package/dist/index.js.map +1 -1
- package/dist/tools/browse.d.ts.map +1 -1
- package/dist/tools/browse.js +33 -35
- package/dist/tools/browse.js.map +1 -1
- package/dist/tools/cookies.d.ts.map +1 -1
- package/dist/tools/cookies.js +38 -16
- package/dist/tools/cookies.js.map +1 -1
- package/dist/tools/evaluate.d.ts.map +1 -1
- package/dist/tools/evaluate.js +59 -13
- package/dist/tools/evaluate.js.map +1 -1
- package/dist/tools/extract.d.ts.map +1 -1
- package/dist/tools/extract.js +263 -155
- package/dist/tools/extract.js.map +1 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/input.d.ts.map +1 -1
- package/dist/tools/input.js +311 -75
- package/dist/tools/input.js.map +1 -1
- package/dist/tools/logs.d.ts.map +1 -1
- package/dist/tools/logs.js +31 -17
- package/dist/tools/logs.js.map +1 -1
- package/dist/tools/manage.d.ts.map +1 -1
- package/dist/tools/manage.js +25 -28
- package/dist/tools/manage.js.map +1 -1
- package/dist/tools/schema.d.ts +1 -1
- package/dist/tools/schema.d.ts.map +1 -1
- package/dist/tools/schema.js +31 -55
- package/dist/tools/schema.js.map +1 -1
- package/dist/tools/wait.d.ts.map +1 -1
- package/dist/tools/wait.js +73 -22
- package/dist/tools/wait.js.map +1 -1
- package/package.json +48 -40
package/dist/core/session.d.ts
CHANGED
|
@@ -9,8 +9,9 @@
|
|
|
9
9
|
*/
|
|
10
10
|
import { BehaviorSimulator } from '../anti-detection/index.js';
|
|
11
11
|
import { AutoWait } from './auto-wait.js';
|
|
12
|
+
import { type ActionableClickResult, type CookieFilter, type DispatchInputResult, type DragAndDropResult, type FindResult, type FrameResolveResult, type HtmlWithImagesResult, type IBrowserDriver, type InputKeyOptions, type InputKeyType, type InputMouseOptions, type InputMouseType, type InputTouchPoint, type InputTouchType, type ListedTarget, type NewTabResult, type ReadPageOptions, type ReadPageResult, type ScreenshotResult, type SetCookieParams } from './browser-driver.js';
|
|
12
13
|
import { Locator } from './locator.js';
|
|
13
|
-
import { type ConnectOptions, type ConsoleLogEntry, type Cookie, type
|
|
14
|
+
import { type ConnectOptions, type ConsoleLogEntry, type Cookie, type LaunchOptions, type NetworkRequestEntry, type PageState, type Target, type TargetInfo, type WaitUntil } from './types.js';
|
|
14
15
|
/**
|
|
15
16
|
* 会话状态
|
|
16
17
|
*/
|
|
@@ -22,7 +23,7 @@ interface SessionState {
|
|
|
22
23
|
/**
|
|
23
24
|
* 会话管理器(单例)
|
|
24
25
|
*/
|
|
25
|
-
declare class SessionManager {
|
|
26
|
+
declare class SessionManager implements IBrowserDriver {
|
|
26
27
|
private static instance;
|
|
27
28
|
private static readonly MAX_LOG_ENTRIES;
|
|
28
29
|
private launcher;
|
|
@@ -49,8 +50,8 @@ declare class SessionManager {
|
|
|
49
50
|
/**
|
|
50
51
|
* 启动浏览器
|
|
51
52
|
*
|
|
52
|
-
*
|
|
53
|
-
*
|
|
53
|
+
* 如果指定了端口,会先尝试连接该端口上已运行的浏览器,
|
|
54
|
+
* 只有连接失败时才启动新浏览器
|
|
54
55
|
*/
|
|
55
56
|
launch(options?: LaunchOptions): Promise<TargetInfo>;
|
|
56
57
|
/**
|
|
@@ -60,7 +61,7 @@ declare class SessionManager {
|
|
|
60
61
|
/**
|
|
61
62
|
* 列出所有可用页面
|
|
62
63
|
*/
|
|
63
|
-
listTargets(): Promise<
|
|
64
|
+
listTargets(): Promise<ListedTarget[]>;
|
|
64
65
|
/**
|
|
65
66
|
* 附加到指定页面(外部入口,加锁)
|
|
66
67
|
*/
|
|
@@ -75,7 +76,7 @@ declare class SessionManager {
|
|
|
75
76
|
/**
|
|
76
77
|
* 等待网络空闲(无进行中的请求且持续指定时间)
|
|
77
78
|
*
|
|
78
|
-
* close() 时通过 'disconnected' 信号立即 reject,不必等 timer
|
|
79
|
+
* close() 时通过 'disconnected' 信号立即 reject,不必等 timer 超时
|
|
79
80
|
*/
|
|
80
81
|
waitForNetworkIdle(timeout: number, idleTime?: number): Promise<void>;
|
|
81
82
|
/**
|
|
@@ -97,10 +98,7 @@ declare class SessionManager {
|
|
|
97
98
|
/**
|
|
98
99
|
* 刷新
|
|
99
100
|
*/
|
|
100
|
-
reload(
|
|
101
|
-
ignoreCache?: boolean;
|
|
102
|
-
timeout?: number;
|
|
103
|
-
}): Promise<void>;
|
|
101
|
+
reload(ignoreCache?: boolean, _waitUntil?: string, timeout?: number): Promise<void>;
|
|
104
102
|
/**
|
|
105
103
|
* 创建定位器
|
|
106
104
|
*/
|
|
@@ -125,23 +123,33 @@ declare class SessionManager {
|
|
|
125
123
|
/**
|
|
126
124
|
* 鼠标按下
|
|
127
125
|
*/
|
|
128
|
-
mouseDown(button?: 'left' | 'middle' | 'right' | 'back' | 'forward'): Promise<void>;
|
|
126
|
+
mouseDown(button?: 'left' | 'middle' | 'right' | 'back' | 'forward', clickCount?: number): Promise<void>;
|
|
129
127
|
/**
|
|
130
128
|
* 鼠标释放
|
|
131
129
|
*/
|
|
132
|
-
mouseUp(button?: 'left' | 'middle' | 'right' | 'back' | 'forward'): Promise<void>;
|
|
130
|
+
mouseUp(button?: 'left' | 'middle' | 'right' | 'back' | 'forward', clickCount?: number): Promise<void>;
|
|
133
131
|
/**
|
|
134
132
|
* 滚轮
|
|
135
133
|
*/
|
|
136
134
|
mouseWheel(deltaX: number, deltaY: number): Promise<void>;
|
|
137
135
|
/**
|
|
138
136
|
* 键盘按下
|
|
137
|
+
*
|
|
138
|
+
* options.rawKeyDown=true 配合 options.autoRepeat=true 表示长按重复(与 Puppeteer 一致),
|
|
139
|
+
* 上层 unified-session 维护 pressedKeys Set 决定是否启用
|
|
139
140
|
*/
|
|
140
|
-
keyDown(key: string
|
|
141
|
+
keyDown(key: string, commands?: string[], options?: {
|
|
142
|
+
rawKeyDown?: boolean;
|
|
143
|
+
autoRepeat?: boolean;
|
|
144
|
+
}): Promise<void>;
|
|
141
145
|
/**
|
|
142
146
|
* 键盘释放
|
|
143
147
|
*/
|
|
144
148
|
keyUp(key: string): Promise<void>;
|
|
149
|
+
/**
|
|
150
|
+
* 同步外部修饰键状态(供 UnifiedSessionManager 在 CDP 回退路径使用,确保两路 modifiers 一致)
|
|
151
|
+
*/
|
|
152
|
+
setModifiers(value: number): void;
|
|
145
153
|
/**
|
|
146
154
|
* 输入文本
|
|
147
155
|
*/
|
|
@@ -161,41 +169,111 @@ declare class SessionManager {
|
|
|
161
169
|
/**
|
|
162
170
|
* 截图
|
|
163
171
|
*/
|
|
164
|
-
screenshot(
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
172
|
+
screenshot(options?: {
|
|
173
|
+
fullPage?: boolean;
|
|
174
|
+
scale?: number;
|
|
175
|
+
format?: string;
|
|
176
|
+
quality?: number;
|
|
177
|
+
clip?: {
|
|
178
|
+
x: number;
|
|
179
|
+
y: number;
|
|
180
|
+
width: number;
|
|
181
|
+
height: number;
|
|
182
|
+
};
|
|
183
|
+
}): Promise<ScreenshotResult>;
|
|
170
184
|
/**
|
|
171
185
|
* 获取页面状态
|
|
172
186
|
*/
|
|
173
187
|
getPageState(): Promise<PageState>;
|
|
188
|
+
getPageHtml(selector?: string, outer?: boolean): Promise<string>;
|
|
189
|
+
/**
|
|
190
|
+
* 获取页面文本(IBrowserDriver 接口)
|
|
191
|
+
*/
|
|
192
|
+
getPageText(selector?: string): Promise<string>;
|
|
193
|
+
/** Extension readPage 等价物:CDP 通过 getPageState 构造 pageContent 文本 */
|
|
194
|
+
readPage(_options?: ReadPageOptions): Promise<ReadPageResult>;
|
|
195
|
+
/** CDP 通过 evaluate 注入函数枚举 IMG */
|
|
196
|
+
getHtmlWithImages(selector?: string, outer?: boolean): Promise<HtmlWithImagesResult>;
|
|
197
|
+
/** CDP 通过 evaluate 注入收集 meta 标签和 og/twitter/jsonLd */
|
|
198
|
+
getMetadata(): Promise<Record<string, unknown>>;
|
|
199
|
+
/** CDP 通过 evaluate 注入 TreeWalker 查找元素 */
|
|
200
|
+
find(selector?: string, text?: string, xpath?: string, timeout?: number): Promise<FindResult[]>;
|
|
201
|
+
click(_refId: string): Promise<void>;
|
|
202
|
+
actionableClick(_refId: string, _force?: boolean): Promise<ActionableClickResult>;
|
|
203
|
+
dispatchInput(_refId: string, _text: string): Promise<DispatchInputResult>;
|
|
204
|
+
dragAndDrop(_srcRefId: string, _dstRefId: string): Promise<DragAndDropResult>;
|
|
205
|
+
getComputedStyle(_refId: string, _prop: string): Promise<string | null>;
|
|
206
|
+
typeRef(_refId: string, _text: string, _clear?: boolean): Promise<void>;
|
|
207
|
+
/** scrollAt:CDP 模式没有 refId 概念,无视 refId 直接 mouseWheel(保持与原 unified-session 行为一致) */
|
|
208
|
+
scrollAt(x: number, y: number, _refId?: string): Promise<void>;
|
|
209
|
+
getAttribute(selector: string | undefined, refId: string | undefined, attribute: string): Promise<string | null>;
|
|
210
|
+
/** CDP 通用 inputKey 接口实现:直接转发 Input.dispatchKeyEvent,不维护 modifiers(由调用方提供) */
|
|
211
|
+
inputKey(type: InputKeyType, options?: InputKeyOptions): Promise<void>;
|
|
212
|
+
/** CDP 通用 inputMouse 接口实现:直接转发 Input.dispatchMouseEvent */
|
|
213
|
+
inputMouse(type: InputMouseType, x: number, y: number, options?: InputMouseOptions): Promise<void>;
|
|
214
|
+
/** CDP 通用 inputTouch 接口实现:临时启用 touch 模拟避免命令挂起 */
|
|
215
|
+
inputTouch(type: InputTouchType, touchPoints: InputTouchPoint[]): Promise<void>;
|
|
216
|
+
/** CDP inputType 接口实现:直接复用现有 type 方法 */
|
|
217
|
+
inputType(text: string, delay?: number): Promise<void>;
|
|
218
|
+
stealthKey(_key: string, _type: 'down' | 'up' | 'press', _modifiers: string[]): Promise<void>;
|
|
219
|
+
stealthClick(_x: number, _y: number, _button?: string, _clickCount?: number, _refId?: string): Promise<void>;
|
|
220
|
+
stealthMouse(_type: string, _x: number, _y: number, _button?: string): Promise<void>;
|
|
221
|
+
stealthType(_text: string, _delay?: number): Promise<void>;
|
|
222
|
+
stealthInject(): Promise<void>;
|
|
223
|
+
/** CDP 模式:Network/Runtime 域已在 attach 时启用,no-op */
|
|
224
|
+
consoleEnable(): Promise<void>;
|
|
225
|
+
/** CDP 模式:Network 域已在 attach 时启用,no-op */
|
|
226
|
+
networkEnable(): Promise<void>;
|
|
227
|
+
/** IBrowserDriver 接口:激活页面(attach + 切到前台) */
|
|
228
|
+
activatePage(targetId: string): Promise<void>;
|
|
229
|
+
/** IBrowserDriver 接口:选择操作目标(attach 即可) */
|
|
230
|
+
selectPage(targetId: string): Promise<void>;
|
|
231
|
+
/** IBrowserDriver 接口:获取当前操作目标 ID */
|
|
232
|
+
getCurrentTargetId(): string | null;
|
|
233
|
+
/** IBrowserDriver 接口:设置当前操作目标 ID(attach 到指定 target) */
|
|
234
|
+
setCurrentTargetId(targetId: string | null): void;
|
|
235
|
+
resolveFrame(_frame: string | number): Promise<FrameResolveResult>;
|
|
236
|
+
getCurrentFrameId(): number;
|
|
237
|
+
setCurrentFrameId(frameId: number): void;
|
|
238
|
+
evaluateInFrame(_frameId: number, _expression: string, _timeout?: number): Promise<{
|
|
239
|
+
result?: {
|
|
240
|
+
value?: unknown;
|
|
241
|
+
};
|
|
242
|
+
exceptionDetails?: {
|
|
243
|
+
text: string;
|
|
244
|
+
exception?: {
|
|
245
|
+
className?: string;
|
|
246
|
+
description?: string;
|
|
247
|
+
};
|
|
248
|
+
};
|
|
249
|
+
}>;
|
|
174
250
|
/**
|
|
175
|
-
*
|
|
176
|
-
*
|
|
177
|
-
|
|
178
|
-
getCookies(urls?: string[]): Promise<Cookie[]>;
|
|
179
|
-
/**
|
|
180
|
-
* 设置 Cookie
|
|
181
|
-
*/
|
|
182
|
-
setCookie(name: string, value: string, options?: CookieOptions): Promise<void>;
|
|
183
|
-
/**
|
|
184
|
-
* 删除 Cookie
|
|
185
|
-
*/
|
|
186
|
-
deleteCookie(name: string, url?: string): Promise<void>;
|
|
187
|
-
/**
|
|
188
|
-
* 清除所有 Cookies
|
|
251
|
+
* 发送 CDP 命令(IBrowserDriver 接口):
|
|
252
|
+
* tabId 在 CDP 模式下忽略(CDP 单 session 概念不区分 tab);
|
|
253
|
+
* browser-level 域(Target/Browser/SystemInfo/DeviceAccess/IO)走 sendBrowserCommand
|
|
189
254
|
*/
|
|
190
|
-
|
|
255
|
+
debuggerSend(method: string, params?: Record<string, unknown>, _tabId?: number, timeout?: number): Promise<unknown>;
|
|
191
256
|
/**
|
|
192
|
-
*
|
|
257
|
+
* 获取 Cookies
|
|
193
258
|
*/
|
|
194
|
-
|
|
259
|
+
getCookies(filter?: CookieFilter): Promise<Cookie[]>;
|
|
195
260
|
/**
|
|
196
|
-
*
|
|
261
|
+
* 设置 Cookie
|
|
197
262
|
*/
|
|
198
|
-
|
|
263
|
+
setCookie(params: SetCookieParams): Promise<void>;
|
|
264
|
+
deleteCookie(url: string, name: string): Promise<void>;
|
|
265
|
+
clearCookies(filter?: CookieFilter): Promise<{
|
|
266
|
+
count: number;
|
|
267
|
+
}>;
|
|
268
|
+
getConsoleLogs(options?: {
|
|
269
|
+
level?: string;
|
|
270
|
+
pattern?: string;
|
|
271
|
+
clear?: boolean;
|
|
272
|
+
}): Promise<ConsoleLogEntry[]>;
|
|
273
|
+
getNetworkRequests(options?: {
|
|
274
|
+
urlPattern?: string;
|
|
275
|
+
clear?: boolean;
|
|
276
|
+
}): Promise<NetworkRequestEntry[]>;
|
|
199
277
|
/**
|
|
200
278
|
* 清除日志
|
|
201
279
|
*/
|
|
@@ -214,12 +292,16 @@ declare class SessionManager {
|
|
|
214
292
|
setUserAgent(userAgent: string): Promise<void>;
|
|
215
293
|
/**
|
|
216
294
|
* 清除缓存
|
|
295
|
+
*
|
|
296
|
+
* 不再清 cookies:cookies 清除统一走 cookies action=clear(强制 name/domain/url 过滤)
|
|
217
297
|
*/
|
|
218
|
-
clearCache(type?: 'all' | '
|
|
298
|
+
clearCache(type?: 'all' | 'storage' | 'cache'): Promise<void>;
|
|
219
299
|
/**
|
|
220
300
|
* 新建页面(外部入口,加锁)
|
|
301
|
+
*
|
|
302
|
+
* IBrowserDriver 接口:可选 url 参数,url 提供时新建后立即导航
|
|
221
303
|
*/
|
|
222
|
-
newPage(): Promise<
|
|
304
|
+
newPage(url?: string, _timeout?: number): Promise<NewTabResult>;
|
|
223
305
|
/**
|
|
224
306
|
* 激活页面(切到前台)
|
|
225
307
|
*/
|
|
@@ -248,9 +330,9 @@ declare class SessionManager {
|
|
|
248
330
|
/**
|
|
249
331
|
* 发送 CDP 命令(page-level,携带 sessionId)
|
|
250
332
|
*
|
|
251
|
-
* 每次调用都检查连接状态,防止 close() 并发置空 this.cdp
|
|
333
|
+
* 每次调用都检查连接状态,防止 close() 并发置空 this.cdp 后崩溃,
|
|
252
334
|
* 多步操作(type 循环、fullPage 截图等)的 await 间隙可能被 close() 打断,
|
|
253
|
-
* ensureSession() 确保在当前 tick 内 this.cdp
|
|
335
|
+
* ensureSession() 确保在当前 tick 内 this.cdp 非空
|
|
254
336
|
*/
|
|
255
337
|
send<T>(method: string, params?: object, timeout?: number): Promise<T>;
|
|
256
338
|
/**
|
|
@@ -258,6 +340,22 @@ declare class SessionManager {
|
|
|
258
340
|
* 用于 Target.*、Browser.* 等浏览器级命令
|
|
259
341
|
*/
|
|
260
342
|
sendBrowserCommand<T>(method: string, params?: object): Promise<T>;
|
|
343
|
+
/**
|
|
344
|
+
* 派发 CDP Input.dispatchTouchEvent,临时启用 touch 模拟避免命令挂起
|
|
345
|
+
*/
|
|
346
|
+
private dispatchTouch;
|
|
347
|
+
/**
|
|
348
|
+
* 在调用 navigate 之前注册网络空闲监听器,返回等待 idle 的 Promise
|
|
349
|
+
* 预先注册避免 Page.navigate 返回和监听器注册之间遗漏早期请求
|
|
350
|
+
*/
|
|
351
|
+
private startNetworkIdleWatcher;
|
|
352
|
+
/**
|
|
353
|
+
* 核心网络空闲等待逻辑
|
|
354
|
+
*
|
|
355
|
+
* 捕获 cdp 引用防止 close() 并发置 null,用局部 Set 追踪请求避免污染成员变量
|
|
356
|
+
* close() 时通过 'disconnected' 信号立即 reject
|
|
357
|
+
*/
|
|
358
|
+
private buildNetworkIdlePromise;
|
|
261
359
|
/**
|
|
262
360
|
* 附加到指定页面(内部版本,不加锁,供 launch/connect 等已持锁方法调用)
|
|
263
361
|
*/
|
|
@@ -269,8 +367,8 @@ declare class SessionManager {
|
|
|
269
367
|
/**
|
|
270
368
|
* 重置所有状态(同步,不加锁)
|
|
271
369
|
*
|
|
272
|
-
* 供已持有 withLock 的方法调用(launch/connect),避免 close() 的 withLock
|
|
273
|
-
* 外部调用请使用 close()
|
|
370
|
+
* 供已持有 withLock 的方法调用(launch/connect),避免 close() 的 withLock 重入死锁,
|
|
371
|
+
* 外部调用请使用 close()
|
|
274
372
|
*/
|
|
275
373
|
private resetState;
|
|
276
374
|
/**
|
|
@@ -281,8 +379,8 @@ declare class SessionManager {
|
|
|
281
379
|
* 等待多个事件中的任一个触发
|
|
282
380
|
*
|
|
283
381
|
* 用于同时监听跨文档导航 (loadEventFired) 和同文档导航 (navigatedWithinDocument),
|
|
284
|
-
*
|
|
285
|
-
* close() 时通过 'disconnected' 信号立即 reject,不必等 timer
|
|
382
|
+
* 任一事件触发后清理所有监听器和超时定时器
|
|
383
|
+
* close() 时通过 'disconnected' 信号立即 reject,不必等 timer 超时
|
|
286
384
|
*/
|
|
287
385
|
private waitForAnyEvent;
|
|
288
386
|
/**
|
|
@@ -306,6 +404,15 @@ declare class SessionManager {
|
|
|
306
404
|
*/
|
|
307
405
|
private ensureSession;
|
|
308
406
|
}
|
|
407
|
+
/**
|
|
408
|
+
* 获取按键定义
|
|
409
|
+
*/
|
|
410
|
+
export declare function getKeyDefinition(key: string): {
|
|
411
|
+
key: string;
|
|
412
|
+
code: string;
|
|
413
|
+
keyCode: number;
|
|
414
|
+
text?: string;
|
|
415
|
+
};
|
|
309
416
|
/**
|
|
310
417
|
* 获取会话管理器实例
|
|
311
418
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/core/session.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/core/session.ts"],"names":[],"mappings":"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"}
|