@anweat/dsh-browser 0.1.13-alpha.1 → 0.1.14-alpha.2
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/LICENSE +21 -21
- package/README.md +393 -382
- package/cordis.patch.yml +26 -26
- package/lib/approval-policy.js +1 -1
- package/lib/approval-policy.js.map +1 -1
- package/lib/browser-service.d.ts +90 -5
- package/lib/browser-service.js +410 -100
- package/lib/browser-service.js.map +1 -1
- package/lib/client/styles.js +12 -12
- package/lib/freedom.d.ts +1 -1
- package/lib/freedom.js +9 -0
- package/lib/freedom.js.map +1 -1
- package/lib/index.js +8 -14
- package/lib/index.js.map +1 -1
- package/lib/scripts.js +27 -27
- package/lib/tools.js +188 -28
- package/lib/tools.js.map +1 -1
- package/package.json +147 -150
- package/scripts/check-client-bundle.mjs +15 -15
- package/scripts/clean-lib.mjs +3 -3
- package/scripts/install-browser.mjs +18 -18
package/cordis.patch.yml
CHANGED
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
# dsh-browser bundle patch — installs the browser runtime as one more row over
|
|
2
|
-
# the active profile. Install with:
|
|
3
|
-
# dsh plugin --profile <name> add @anweat/dsh-browser
|
|
4
|
-
# then boot the profile (the web profile has HMR disabled, so a restart applies it).
|
|
5
|
-
#
|
|
6
|
-
# Login state: prefer named `authProfiles` with explicit `allowedDomains` (see
|
|
7
|
-
# README). `storageStatePath` remains as a legacy global fallback.
|
|
8
|
-
- insert:
|
|
9
|
-
- id: browser
|
|
10
|
-
name: '@anweat/dsh-browser'
|
|
11
|
-
config:
|
|
12
|
-
automationMode: standard
|
|
13
|
-
browserRuntime: playwright
|
|
14
|
-
channel: chromium
|
|
15
|
-
headless: true
|
|
16
|
-
opencliEnabled: true
|
|
17
|
-
usagePolicy:
|
|
18
|
-
minDelayMs: 750
|
|
19
|
-
maxConcurrency: 2
|
|
20
|
-
burst: 3
|
|
21
|
-
maxPagesPerRun: 20
|
|
22
|
-
maxDepth: 2
|
|
23
|
-
retryLimit: 2
|
|
24
|
-
backoffBaseMs: 1000
|
|
25
|
-
cooldownMs: 30000
|
|
26
|
-
verbose: false
|
|
1
|
+
# dsh-browser bundle patch — installs the browser runtime as one more row over
|
|
2
|
+
# the active profile. Install with:
|
|
3
|
+
# dsh plugin --profile <name> add @anweat/dsh-browser
|
|
4
|
+
# then boot the profile (the web profile has HMR disabled, so a restart applies it).
|
|
5
|
+
#
|
|
6
|
+
# Login state: prefer named `authProfiles` with explicit `allowedDomains` (see
|
|
7
|
+
# README). `storageStatePath` remains as a legacy global fallback.
|
|
8
|
+
- insert:
|
|
9
|
+
- id: browser
|
|
10
|
+
name: '@anweat/dsh-browser'
|
|
11
|
+
config:
|
|
12
|
+
automationMode: standard
|
|
13
|
+
browserRuntime: playwright
|
|
14
|
+
channel: chromium
|
|
15
|
+
headless: true
|
|
16
|
+
opencliEnabled: true
|
|
17
|
+
usagePolicy:
|
|
18
|
+
minDelayMs: 750
|
|
19
|
+
maxConcurrency: 2
|
|
20
|
+
burst: 3
|
|
21
|
+
maxPagesPerRun: 20
|
|
22
|
+
maxDepth: 2
|
|
23
|
+
retryLimit: 2
|
|
24
|
+
backoffBaseMs: 1000
|
|
25
|
+
cooldownMs: 30000
|
|
26
|
+
verbose: false
|
package/lib/approval-policy.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { recipeNeedsApproval } from "./automation.js";
|
|
3
3
|
import { validateUserscript } from "./scripts.js";
|
|
4
4
|
import { isBrowserToolExposed } from "./freedom.js";
|
|
5
|
-
const DIRECT_INTERACTIONS = new Set(['browser_click', 'browser_type', 'browser_hover', 'browser_scroll']);
|
|
5
|
+
const DIRECT_INTERACTIONS = new Set(['browser_click', 'browser_type', 'browser_press', 'browser_select', 'browser_check', 'browser_hover', 'browser_scroll']);
|
|
6
6
|
const WEB_LOCAL_MUTATIONS = new Set(['web_cache_clear']);
|
|
7
7
|
export function browserPolicyDecision(name, args, mode = 'standard') {
|
|
8
8
|
if (!isBrowserToolExposed(name, mode) && name.startsWith('browser_')) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"approval-policy.js","sourceRoot":"","sources":["../src/approval-policy.ts"],"names":[],"mappings":"AAAA,iFAAiF;AAEjF,OAAO,EAAE,mBAAmB,EAA0B,MAAM,iBAAiB,CAAA;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,oBAAoB,EAAuB,MAAM,cAAc,CAAA;AAOxE,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,CAAC,eAAe,EAAE,cAAc,EAAE,eAAe,EAAE,gBAAgB,CAAC,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"approval-policy.js","sourceRoot":"","sources":["../src/approval-policy.ts"],"names":[],"mappings":"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"}
|
package/lib/browser-service.d.ts
CHANGED
|
@@ -82,6 +82,47 @@ export interface EvaluateResult {
|
|
|
82
82
|
export interface FileUploadResult extends InteractiveState {
|
|
83
83
|
files: string[];
|
|
84
84
|
}
|
|
85
|
+
export interface BrowserFrameSpec {
|
|
86
|
+
selector?: string;
|
|
87
|
+
name?: string;
|
|
88
|
+
url?: string;
|
|
89
|
+
}
|
|
90
|
+
export interface BrowserLocatorSpec {
|
|
91
|
+
selector?: string;
|
|
92
|
+
role?: string;
|
|
93
|
+
name?: string;
|
|
94
|
+
text?: string;
|
|
95
|
+
label?: string;
|
|
96
|
+
exact?: boolean;
|
|
97
|
+
frame?: BrowserFrameSpec;
|
|
98
|
+
}
|
|
99
|
+
export type BrowserTarget = string | BrowserLocatorSpec;
|
|
100
|
+
export interface BrowserConsoleRecord {
|
|
101
|
+
type: string;
|
|
102
|
+
text: string;
|
|
103
|
+
url?: string;
|
|
104
|
+
timestamp: string;
|
|
105
|
+
}
|
|
106
|
+
export interface BrowserRequestRecord {
|
|
107
|
+
method: string;
|
|
108
|
+
url: string;
|
|
109
|
+
status?: number;
|
|
110
|
+
failure?: string;
|
|
111
|
+
timestamp: string;
|
|
112
|
+
}
|
|
113
|
+
export interface BrowserScreenshotOptions {
|
|
114
|
+
target?: BrowserTarget;
|
|
115
|
+
clip?: {
|
|
116
|
+
x: number;
|
|
117
|
+
y: number;
|
|
118
|
+
width: number;
|
|
119
|
+
height: number;
|
|
120
|
+
};
|
|
121
|
+
fullPage?: boolean;
|
|
122
|
+
format?: 'png' | 'jpeg';
|
|
123
|
+
quality?: number;
|
|
124
|
+
filename?: string;
|
|
125
|
+
}
|
|
85
126
|
export interface CrawlPage {
|
|
86
127
|
url: string;
|
|
87
128
|
title: string;
|
|
@@ -150,9 +191,17 @@ export declare class BrowserService {
|
|
|
150
191
|
private readonly authProfiles;
|
|
151
192
|
private readonly usageGovernor;
|
|
152
193
|
private opencliCatalogCache?;
|
|
194
|
+
private captureConsoleEnabled;
|
|
195
|
+
private captureNetworkEnabled;
|
|
196
|
+
private capturedConsole;
|
|
197
|
+
private capturedRequests;
|
|
153
198
|
constructor(config: ResolvedConfig);
|
|
154
199
|
available(): boolean;
|
|
155
200
|
private assertEnabled;
|
|
201
|
+
private browserConnected;
|
|
202
|
+
private clearActiveState;
|
|
203
|
+
private handleBrowserDisconnected;
|
|
204
|
+
private trackBrowser;
|
|
156
205
|
private ensure;
|
|
157
206
|
/** Run `playwright install chromium` from the bundled playwright CLI. */
|
|
158
207
|
installChromium(): Promise<CliResult>;
|
|
@@ -223,25 +272,46 @@ export declare class BrowserService {
|
|
|
223
272
|
inputs?: Record<string, string>;
|
|
224
273
|
}): Promise<ScriptRunResult>;
|
|
225
274
|
private ensureActivePage;
|
|
275
|
+
private attachCapture;
|
|
276
|
+
private resetCapture;
|
|
277
|
+
private resolveTarget;
|
|
278
|
+
private screenshotFile;
|
|
226
279
|
private captureScreenshot;
|
|
227
280
|
private readState;
|
|
228
281
|
open(url: string, opts?: {
|
|
229
282
|
waitMs?: number;
|
|
230
283
|
authProfile?: string;
|
|
231
284
|
rulePack?: string;
|
|
285
|
+
capture?: readonly ('console' | 'network')[];
|
|
232
286
|
}): Promise<InteractiveState>;
|
|
233
|
-
click(
|
|
287
|
+
click(target: BrowserTarget, opts?: {
|
|
234
288
|
timeoutMs?: number;
|
|
235
289
|
waitMs?: number;
|
|
236
290
|
}): Promise<InteractiveState>;
|
|
237
|
-
type(
|
|
291
|
+
type(target: BrowserTarget, text: string, opts?: {
|
|
238
292
|
timeoutMs?: number;
|
|
239
293
|
}): Promise<InteractiveState>;
|
|
240
|
-
|
|
294
|
+
wait(target: BrowserTarget | undefined, opts?: {
|
|
295
|
+
urlPattern?: string;
|
|
296
|
+
networkIdle?: boolean;
|
|
297
|
+
timeMs?: number;
|
|
298
|
+
state?: 'visible' | 'hidden' | 'attached' | 'detached';
|
|
299
|
+
timeoutMs?: number;
|
|
300
|
+
}): Promise<InteractiveState>;
|
|
301
|
+
press(target: BrowserTarget | undefined, key: string, opts?: {
|
|
302
|
+
timeoutMs?: number;
|
|
303
|
+
}): Promise<InteractiveState>;
|
|
304
|
+
select(target: BrowserTarget, values: readonly string[], opts?: {
|
|
305
|
+
timeoutMs?: number;
|
|
306
|
+
}): Promise<InteractiveState>;
|
|
307
|
+
check(target: BrowserTarget, checked?: boolean, opts?: {
|
|
308
|
+
timeoutMs?: number;
|
|
309
|
+
}): Promise<InteractiveState>;
|
|
310
|
+
hover(target: BrowserTarget, opts?: {
|
|
241
311
|
timeoutMs?: number;
|
|
242
312
|
waitMs?: number;
|
|
243
313
|
}): Promise<InteractiveState>;
|
|
244
|
-
setFiles(
|
|
314
|
+
setFiles(target: BrowserTarget, files: readonly string[], opts?: {
|
|
245
315
|
timeoutMs?: number;
|
|
246
316
|
}): Promise<FileUploadResult>;
|
|
247
317
|
evaluate(expression: string, opts?: {
|
|
@@ -251,7 +321,22 @@ export declare class BrowserService {
|
|
|
251
321
|
waitMs?: number;
|
|
252
322
|
}): Promise<InteractiveState>;
|
|
253
323
|
read(): Promise<InteractiveState>;
|
|
254
|
-
|
|
324
|
+
consoleMessages(opts?: {
|
|
325
|
+
level?: string;
|
|
326
|
+
limit?: number;
|
|
327
|
+
clear?: boolean;
|
|
328
|
+
}): {
|
|
329
|
+
enabled: boolean;
|
|
330
|
+
records: BrowserConsoleRecord[];
|
|
331
|
+
};
|
|
332
|
+
networkRequests(opts?: {
|
|
333
|
+
limit?: number;
|
|
334
|
+
clear?: boolean;
|
|
335
|
+
}): {
|
|
336
|
+
enabled: boolean;
|
|
337
|
+
records: BrowserRequestRecord[];
|
|
338
|
+
};
|
|
339
|
+
screenshot(options?: BrowserScreenshotOptions): Promise<{
|
|
255
340
|
path: string;
|
|
256
341
|
}>;
|
|
257
342
|
recipe(steps: readonly BrowserRecipeStep[], opts?: {
|