mcp-accessibility-scanner 3.3.1 → 3.4.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 +74 -5
- package/config.d.ts +30 -0
- package/lib/browserServerBackend.js +6 -0
- package/lib/browserServerBackend.js.map +1 -1
- package/lib/browserSessions.js +3 -0
- package/lib/browserSessions.js.map +1 -1
- package/lib/config.js +56 -10
- package/lib/config.js.map +1 -1
- package/lib/context.js +382 -56
- package/lib/context.js.map +1 -1
- package/lib/extension/cdpRelay.js +28 -6
- package/lib/extension/cdpRelay.js.map +1 -1
- package/lib/extension/extensionContextFactory.js +11 -6
- package/lib/extension/extensionContextFactory.js.map +1 -1
- package/lib/mcp/http.js +115 -41
- package/lib/mcp/http.js.map +1 -1
- package/lib/mcp/server.js +16 -8
- package/lib/mcp/server.js.map +1 -1
- package/lib/mcp/tool.js +11 -9
- package/lib/mcp/tool.js.map +1 -1
- package/lib/program.js +6 -3
- package/lib/program.js.map +1 -1
- package/lib/response.js +14 -2
- package/lib/response.js.map +1 -1
- package/lib/sessionLog.js +66 -20
- package/lib/sessionLog.js.map +1 -1
- package/lib/tab.js +13 -7
- package/lib/tab.js.map +1 -1
- package/lib/tools/auditKeyboard.js +27 -25
- package/lib/tools/auditKeyboard.js.map +1 -1
- package/lib/tools/auditScreenReader.js +30 -53
- package/lib/tools/auditScreenReader.js.map +1 -1
- package/lib/tools/auditSite.js +88 -56
- package/lib/tools/auditSite.js.map +1 -1
- package/lib/tools/axe.js +38 -17
- package/lib/tools/axe.js.map +1 -1
- package/lib/tools/common.js +39 -1
- package/lib/tools/common.js.map +1 -1
- package/lib/tools/files.js +55 -1
- package/lib/tools/files.js.map +1 -1
- package/lib/tools/pdf.js +4 -2
- package/lib/tools/pdf.js.map +1 -1
- package/lib/tools/recorder.js +52 -0
- package/lib/tools/recorder.js.map +1 -0
- package/lib/tools/report.js +13 -0
- package/lib/tools/report.js.map +1 -0
- package/lib/tools/scanPageMatrix.js +20 -33
- package/lib/tools/scanPageMatrix.js.map +1 -1
- package/lib/tools/screenshot.js +6 -3
- package/lib/tools/screenshot.js.map +1 -1
- package/lib/tools/snapshot.js +5 -2
- package/lib/tools/snapshot.js.map +1 -1
- package/lib/tools.js +2 -0
- package/lib/tools.js.map +1 -1
- package/lib/vscode/browserContextFactory.js +11 -4
- package/lib/vscode/browserContextFactory.js.map +1 -1
- package/lib/vscode/host.js +25 -2
- package/lib/vscode/host.js.map +1 -1
- package/lib/vscode/main.js +15 -0
- package/lib/vscode/main.js.map +1 -1
- package/lib/vscode/validation.js +78 -0
- package/lib/vscode/validation.js.map +1 -0
- package/package.json +6 -5
package/README.md
CHANGED
|
@@ -137,7 +137,9 @@ Use `--extension` to connect through the current [Playwright Extension](https://
|
|
|
137
137
|
npx mcp-accessibility-scanner --extension
|
|
138
138
|
```
|
|
139
139
|
|
|
140
|
-
Set `PLAYWRIGHT_MCP_EXTENSION_TOKEN` to the token shown by the extension to bypass the connection approval dialog.
|
|
140
|
+
Set `PLAYWRIGHT_MCP_EXTENSION_TOKEN` to the token shown by the extension to bypass the connection approval dialog. The relay's CDP WebSocket endpoint always requires a separate random token, generated per relay and appended automatically for the server's own connection. This CDP token is never passed in Chrome's launch arguments or extension URL; the extension approval token cannot authenticate a CDP client.
|
|
141
|
+
Token-bypass connections are not background-safe: Chrome focuses the connection tab and window, and client-created tabs remain open after disconnect ([upstream limitation](https://github.com/microsoft/playwright/issues/42343)).
|
|
142
|
+
With a token, the extension must connect and finish setup within 30 seconds after the connection page opens. Failed attempts release the relay so the next tool call can retry. Without a token, manual approval waits until you approve or cancel the call.
|
|
141
143
|
When `--user-data-dir` contains multiple Chrome profiles, the profile with the extension installed is selected automatically, preferring Chrome's last-used profile.
|
|
142
144
|
|
|
143
145
|
### Discovering available tools (`list-tools` subcommand)
|
|
@@ -206,6 +208,9 @@ Create a `config.json` file with the following options:
|
|
|
206
208
|
"network": {
|
|
207
209
|
"allowedOrigins": ["example.com", "trusted-site.com"],
|
|
208
210
|
"blockedOrigins": ["ads.example.com"]
|
|
211
|
+
},
|
|
212
|
+
"snapshot": {
|
|
213
|
+
"boxes": true
|
|
209
214
|
}
|
|
210
215
|
}
|
|
211
216
|
```
|
|
@@ -213,8 +218,12 @@ Create a `config.json` file with the following options:
|
|
|
213
218
|
**Available Options:**
|
|
214
219
|
|
|
215
220
|
- `browser.browserName`: Browser to use (`chromium`, `firefox`, `webkit`)
|
|
221
|
+
- `browser.allowedUploadDirs`: Restrict files sent by `browser_file_upload` and `browser_drop` to regular files inside these directories, including resolved symlink targets. Restricted uploads and drops use a checked file handle and accept up to 50 MiB total per call. Unset allows any path; `[]` denies all file uploads and drops (text-only drops still work). Blank list entries are rejected. CLI: `--allowed-upload-dirs` (semicolon-separated; `""` denies all), env: `PLAYWRIGHT_MCP_ALLOWED_UPLOAD_DIRS` (empty string denies all).
|
|
222
|
+
|
|
223
|
+
The list must be an array, not `null`. Roots must exist at startup: their canonical paths are resolved once and retained for the server's lifetime, so retargeting a configured symlink does not grant access to a new tree. Non-empty upload allowlists require macOS or Linux with `/proc/self/fd` available. macOS blocks ancestor symlinks during the file open; Linux checks the opened descriptor's path. Other platforms reject restricted file uploads and drops rather than rely on race-prone pathname checks. Unrestricted uploads, deny-all lists, and text-only drops keep working on all platforms.
|
|
216
224
|
- `browser.launchOptions.headless`: Run browser in headless mode (default: `true` on Linux without display, `false` otherwise)
|
|
217
225
|
- `browser.launchOptions.channel`: Browser channel (`chrome`, `chrome-beta`, `msedge`, etc.)
|
|
226
|
+
- `browser.launchOptions.chromiumSandbox`: Defaults to `false` for downloaded Chromium builds on Linux because they lack the setuid sandbox helper, and `true` otherwise. Remote and VS Code endpoints choose on the remote host. An explicit config or `PLAYWRIGHT_MCP_SANDBOX` value wins; `--no-sandbox` always disables it.
|
|
218
227
|
- `browser.cdpEndpoint`: Attach to an already-running Chromium-family app with CDP enabled
|
|
219
228
|
- `browser.cdpHeaders`: Map of HTTP headers to send with the CDP connect request, e.g. `{ "Authorization": "Bearer <token>" }`, for endpoints that require header-based authentication
|
|
220
229
|
- `browser.cdpTimeout`: Maximum time in milliseconds to wait when connecting to the CDP endpoint (default: `30000`)
|
|
@@ -226,15 +235,30 @@ Create a `config.json` file with the following options:
|
|
|
226
235
|
- `timeouts.settle`: How long to wait after every action before responding (default: `500`). An action that finishes quietly is first watched for up to 100ms (or the settle delay, whichever is shorter) so scheduled network work can still be awaited before the settle delay.
|
|
227
236
|
- `network.allowedOrigins`: List of origins to allow (blocks all others if specified)
|
|
228
237
|
- `network.blockedOrigins`: List of origins to block
|
|
238
|
+
- `snapshot.boxes`: Include each element's viewport-relative bounding box as `[box=x,y,width,height]` in snapshots (default: `false`; CLI: `--snapshot-boxes`, env: `PLAYWRIGHT_MCP_SNAPSHOT_BOXES=1`)
|
|
239
|
+
- `server.authToken`: When set, Streamable HTTP requests (`--port`) require `Authorization: Bearer <token>` or return `401` (env: `PLAYWRIGHT_MCP_AUTH_TOKEN`). Blank or malformed tokens fail at startup. The scheme is case-insensitive; the token is exact. Bearer auth does not encrypt traffic: authenticated listeners must bind to loopback, such as `--host 127.0.0.1`; use a TLS reverse proxy for remote access. The printed client config includes a header placeholder to replace locally, without logging the secret. Unset keeps unauthenticated access.
|
|
229
240
|
- `outputDir`: Directory for output files — reports, screenshots, traces, and session logs (CLI: `--output-dir`, env: `PLAYWRIGHT_MCP_OUTPUT_DIR`). Defaults to a fresh directory under the system temp folder, resolved once per server run so all of a run's artifacts land together. The output location is always server configuration; the deprecated MCP roots capability (client workspace folders) is no longer consulted.
|
|
230
241
|
|
|
231
242
|
CLI equivalents are also available: `--cdp-launch-command`, `--cdp-launch-args`, `--cdp-launch-cwd`, `--cdp-launch-port`, `--cdp-launch-startup-timeout`, `--cdp-endpoint`, `--cdp-header` (repeat for multiple headers, e.g. `--cdp-header "Authorization: Bearer <token>"`), and `--cdp-timeout`. The CDP headers and timeout can also be set via the `PLAYWRIGHT_MCP_CDP_HEADERS` (one `Name: Value` entry per line) and `PLAYWRIGHT_MCP_CDP_TIMEOUT` environment variables.
|
|
232
243
|
|
|
244
|
+
For remote HTTP access, configure the TLS reverse proxy explicitly. For example, with the MCP server bound using `--host 127.0.0.1 --port 8931` and `PLAYWRIGHT_MCP_AUTH_TOKEN` set:
|
|
245
|
+
|
|
246
|
+
- Accept only your configured public hostname over HTTPS and forward `/mcp` to `http://127.0.0.1:8931/mcp`.
|
|
247
|
+
- Set the upstream `Host` header to `127.0.0.1:8931`, not the public hostname. Forward the client's `Authorization` header unchanged; do not inject a shared token for unauthenticated clients.
|
|
248
|
+
- Before removing `Origin`, reject any non-empty value outside your explicit trusted HTTPS origin list (for example, `https://mcp.example.com`). Allow absent `Origin` for non-browser clients. Then remove `Origin` upstream, or rewrite it to `http://127.0.0.1:8931`. Never strip arbitrary origins without checking them first.
|
|
249
|
+
- Disable response buffering for SSE streams. Browser clients on a different origin also need a narrowly scoped CORS policy at the proxy.
|
|
250
|
+
|
|
251
|
+
The server does not trust `Forwarded` or `X-Forwarded-*` to bypass its checks. Preserving the public `Host` or HTTPS `Origin` upstream returns `403`, even with a valid bearer token.
|
|
252
|
+
|
|
253
|
+
Caller-supplied screenshot, PDF, scan-page-matrix, and audit report filenames use a no-clobber policy: an existing file causes the tool call to fail instead of being overwritten. Windows-reserved basenames and names ending in a dot or space are rejected on every platform so configured names behave consistently across hosts.
|
|
254
|
+
|
|
233
255
|
Use `--timeout-settle` or `PLAYWRIGHT_MCP_TIMEOUT_SETTLE` to override the post-action settle delay. It applies after every action so delayed DOM-only updates are included in the response; a short observation window also catches scheduled requests and waits for them before that delay.
|
|
234
256
|
|
|
257
|
+
The VS Code `browser_connect` tool accepts only `playwright` or `playwright-core` libraries and loopback WebSocket URLs. Set `PLAYWRIGHT_MCP_VSCODE_ALLOW_REMOTE=1` to allow remote endpoints, which must use `wss:`. URL userinfo credentials are rejected.
|
|
258
|
+
|
|
235
259
|
#### HTTP Heartbeat
|
|
236
260
|
|
|
237
|
-
When the server runs with `--port`, it sends MCP heartbeat pings
|
|
261
|
+
When the server runs with `--port`, it sends MCP heartbeat pings after a Streamable HTTP client opens the optional event stream. POST-only clients stay connected without heartbeat because server-initiated requests cannot reach them. Set `PLAYWRIGHT_MCP_PING_TIMEOUT_MS` to override the default `5000` ms timeout, or to `0` or any negative value to disable heartbeat pings. A client that answers `ping` with a JSON-RPC "method not found" error is treated as alive: the server stops heartbeating that session instead of closing it. Only an unanswered ping (timeout) or a transport failure closes the session.
|
|
238
262
|
|
|
239
263
|
#### Clients without the initialize handshake
|
|
240
264
|
|
|
@@ -262,7 +286,7 @@ This works out of the box in every mode, including the default persistent-profil
|
|
|
262
286
|
Record a session once with Playwright's codegen, then hand the file to the server:
|
|
263
287
|
|
|
264
288
|
```bash
|
|
265
|
-
npx playwright@1.63.0
|
|
289
|
+
npx playwright@1.63.0 codegen --save-storage=auth.json https://example.com/login
|
|
266
290
|
```
|
|
267
291
|
|
|
268
292
|
Sign in in the opened browser, then close it — `auth.json` now holds the cookies and local storage.
|
|
@@ -380,6 +404,7 @@ A frame you scoped out yourself is not reported: with `excludeSelectors: ["ifram
|
|
|
380
404
|
Crawls and scans multiple internal pages, then aggregates violations across the site.
|
|
381
405
|
- Default strategy: link-based BFS from the current URL
|
|
382
406
|
- Supports `links`, `nav`, `sitemap`, and `provided` URL strategies
|
|
407
|
+
- Sitemap URLs and every redirect must pass the server network policy and crawl scope. Fetches run on the MCP host, use HTTP(S) without browser cookies or auth headers, and have a 15-second total timeout, 20-redirect cap, and 10 MiB response limit. Browser proxy settings, `browser.remoteEndpoint`, `browser.cdpEndpoint` (including loopback endpoints, which may tunnel to remote browsers), and switched `browser_connect` providers are rejected for this strategy; use `provided` URLs in these modes. Sitemap TLS certificates must be valid even when browser HTTPS errors are ignored.
|
|
383
408
|
- Always writes a JSON report (default filename: `audit-site-{timestamp}-{token}.json`)
|
|
384
409
|
- Warns and records `sessionLosses` if the crawl loses cookies it started with — see [Auditing pages behind a login](#auditing-pages-behind-a-login)
|
|
385
410
|
|
|
@@ -497,9 +522,10 @@ Set default operation timeout for existing tabs.
|
|
|
497
522
|
Capture accessibility snapshot of the current page (better than screenshot for analysis).
|
|
498
523
|
Large `data:` URL payloads in snapshot output are truncated to their media type prefix.
|
|
499
524
|
AI snapshots mark a visually present subtree excluded from accessibility queries with `[aria-hidden]` on its boundary element. Descendants are not marked again.
|
|
500
|
-
- Parameters: `compress` (optional boolean, default false)
|
|
501
|
-
- When true, repeated non-interactive ARIA snapshot nodes are collapsed in the rendered response when a repeated structural pattern appears more than 100 times. The first 10 examples of each collapsed pattern are kept.
|
|
525
|
+
- Parameters: `compress` (optional boolean, default false), `boxes` (optional boolean; overrides `snapshot.boxes` for this call)
|
|
526
|
+
- When `compress` is true, repeated non-interactive ARIA snapshot nodes are collapsed in the rendered response when a repeated structural pattern appears more than 100 times. The first 10 examples of each collapsed pattern are kept.
|
|
502
527
|
- Use `browser_evaluate()` to retrieve the full uncompressed list when needed.
|
|
528
|
+
- When `boxes` is true, each element includes `[box=x,y,width,height]` in viewport-relative CSS pixels.
|
|
503
529
|
|
|
504
530
|
#### `browser_find`
|
|
505
531
|
Search the current page accessibility snapshot without returning the full snapshot.
|
|
@@ -541,6 +567,14 @@ Fill multiple fields with one call.
|
|
|
541
567
|
Press a key on the keyboard.
|
|
542
568
|
- Parameters: `key` (e.g., 'ArrowLeft' or 'a')
|
|
543
569
|
|
|
570
|
+
#### `browser_start_recording` / `browser_stop_recording`
|
|
571
|
+
Record browser actions and return them as Playwright JavaScript. Start the server with `--caps devtools`, call `browser_start_recording`, perform the flow, then call `browser_stop_recording`.
|
|
572
|
+
|
|
573
|
+
Multi-tab recordings include the `context.newPage()` declarations needed by generated page aliases.
|
|
574
|
+
Recorded assertions include the `playwright/test` `expect` setup they need to run.
|
|
575
|
+
|
|
576
|
+
Handshake-free HTTP clients must first call `browser_session_open`, then pass its `browserSessionId` to both recording tools so the recording survives across requests. Modes that cannot open separate browser sessions, such as `--extension` and non-isolated CDP attach, need a stateful MCP connection for recording.
|
|
577
|
+
|
|
544
578
|
#### `browser_evaluate`
|
|
545
579
|
Evaluate a JavaScript expression on the page, or on a specific element when a `ref` is provided. The function's return value is serialized back as the result.
|
|
546
580
|
- Parameters: `function` (e.g., `() => document.title` or `(element) => element.textContent`), `element` (optional), `ref` (optional)
|
|
@@ -574,6 +608,10 @@ Close the page.
|
|
|
574
608
|
Resize the browser window.
|
|
575
609
|
- Parameters: `width`, `height`
|
|
576
610
|
|
|
611
|
+
#### `browser_emulate_media`
|
|
612
|
+
Emulate CSS media features on the current page without resetting omitted features.
|
|
613
|
+
- Parameters: `colorScheme` (`light` or `dark`), `reducedMotion` (`reduce` or `no-preference`), `forcedColors` (`active` or `none`), `contrast` (`more` or `no-preference`), and `media` (`screen` or `print`); provide at least one.
|
|
614
|
+
|
|
577
615
|
### Tab Management
|
|
578
616
|
|
|
579
617
|
#### `browser_tabs`
|
|
@@ -733,6 +771,37 @@ cd mcp-accessibility-scanner
|
|
|
733
771
|
npm install
|
|
734
772
|
```
|
|
735
773
|
|
|
774
|
+
### MCP harnesses
|
|
775
|
+
|
|
776
|
+
The npm wrappers build first, then the direct harness calls every exposed MCP
|
|
777
|
+
tool with prepared fixtures:
|
|
778
|
+
|
|
779
|
+
```bash
|
|
780
|
+
npm run test:mcp
|
|
781
|
+
npm run test:mcp:install
|
|
782
|
+
```
|
|
783
|
+
|
|
784
|
+
The Luna wrapper runs each prompt through Codex `gpt-5.6-luna` with xhigh
|
|
785
|
+
reasoning. It uses a repo-scoped scanner MCP server, read-only Codex sandbox,
|
|
786
|
+
structured PASS/FAIL evidence, and a per-prompt timeout:
|
|
787
|
+
|
|
788
|
+
```bash
|
|
789
|
+
npm run test:mcp:luna
|
|
790
|
+
npm run test:mcp:luna -- --only browser_snapshot
|
|
791
|
+
npm run test:mcp:luna -- --skip-optional --limit 1
|
|
792
|
+
```
|
|
793
|
+
|
|
794
|
+
Results are written under `test-results/mcp-direct-harness-results/` or
|
|
795
|
+
`test-results/mcp-tool-loop-results/`. Set `MCP_HARNESS_RESULTS_DIR` to use another output root.
|
|
796
|
+
The Luna harness checks Codex login before starting any prompts. Its site-audit
|
|
797
|
+
prompt uses a local HTTP fixture, not a public website.
|
|
798
|
+
PASS requires a completed target MCP call, no failed or unfinished MCP calls,
|
|
799
|
+
and a successful structured result. Invalid logs, failed turns, and timeouts
|
|
800
|
+
fail the run. Non-fatal startup notices about ignored malformed local agent
|
|
801
|
+
roles remain in the logs; they do not count as tool failures. Recovered Codex
|
|
802
|
+
connection retries are accepted only when the turn completes successfully.
|
|
803
|
+
Canceling the run exits with status 130.
|
|
804
|
+
|
|
736
805
|
### Benchmarking tool latency
|
|
737
806
|
|
|
738
807
|
`bench/mcp-bench.mjs` measures what a client actually waits for: it serves a fixed
|
package/config.d.ts
CHANGED
|
@@ -27,6 +27,7 @@ export type ToolCapability =
|
|
|
27
27
|
| 'testing'
|
|
28
28
|
| 'core-install'
|
|
29
29
|
| 'core-tabs'
|
|
30
|
+
| 'devtools'
|
|
30
31
|
| 'vision'
|
|
31
32
|
| 'verify';
|
|
32
33
|
|
|
@@ -104,6 +105,18 @@ export type Config = {
|
|
|
104
105
|
* Remote endpoint to connect to an existing Playwright server.
|
|
105
106
|
*/
|
|
106
107
|
remoteEndpoint?: string;
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* Directories that browser_file_upload and browser_drop may read files from.
|
|
111
|
+
* When unset (default), any absolute path is allowed; when set, upload
|
|
112
|
+
* canonical file paths must stay inside these directories. Restricted
|
|
113
|
+
* uploads accept regular files up to 50 MiB total per call. [] denies all;
|
|
114
|
+
* non-empty lists require macOS or Linux with /proc/self/fd available.
|
|
115
|
+
* Roots must exist and are canonicalized once at startup. null is invalid.
|
|
116
|
+
* blank entries are invalid. Also PLAYWRIGHT_MCP_ALLOWED_UPLOAD_DIRS or
|
|
117
|
+
* --allowed-upload-dirs (semicolon-separated; empty string means []).
|
|
118
|
+
*/
|
|
119
|
+
allowedUploadDirs?: string[];
|
|
107
120
|
},
|
|
108
121
|
|
|
109
122
|
server?: {
|
|
@@ -116,6 +129,14 @@ export type Config = {
|
|
|
116
129
|
* The host to bind the server to. Default is localhost. Use 0.0.0.0 to bind to all interfaces.
|
|
117
130
|
*/
|
|
118
131
|
host?: string;
|
|
132
|
+
|
|
133
|
+
/**
|
|
134
|
+
* When set, HTTP transport requests must carry `Authorization: Bearer <token>`.
|
|
135
|
+
* Blank or malformed tokens are rejected. Requires a loopback listener;
|
|
136
|
+
* remote access must use a TLS reverse proxy. Also configurable through
|
|
137
|
+
* PLAYWRIGHT_MCP_AUTH_TOKEN.
|
|
138
|
+
*/
|
|
139
|
+
authToken?: string;
|
|
119
140
|
},
|
|
120
141
|
|
|
121
142
|
/**
|
|
@@ -127,6 +148,7 @@ export type Config = {
|
|
|
127
148
|
* - 'wait': Wait and timing utilities.
|
|
128
149
|
* - 'files': File upload/download support.
|
|
129
150
|
* - 'install': Browser installation utilities.
|
|
151
|
+
* - 'devtools': Browser recording utilities.
|
|
130
152
|
*/
|
|
131
153
|
capabilities?: ToolCapability[];
|
|
132
154
|
|
|
@@ -167,6 +189,14 @@ export type Config = {
|
|
|
167
189
|
*/
|
|
168
190
|
imageResponses?: 'allow' | 'omit' | 'auto';
|
|
169
191
|
|
|
192
|
+
snapshot?: {
|
|
193
|
+
/**
|
|
194
|
+
* Include each element's bounding box as [box=x,y,width,height] in snapshots.
|
|
195
|
+
* Coordinates are viewport-relative CSS pixels.
|
|
196
|
+
*/
|
|
197
|
+
boxes?: boolean;
|
|
198
|
+
};
|
|
199
|
+
|
|
170
200
|
/**
|
|
171
201
|
* Timeout settings for Playwright operations.
|
|
172
202
|
*/
|
|
@@ -223,6 +223,12 @@ export class BrowserServerBackend {
|
|
|
223
223
|
}
|
|
224
224
|
}
|
|
225
225
|
catch (error) {
|
|
226
|
+
try {
|
|
227
|
+
await response.cleanupFilesOnError();
|
|
228
|
+
}
|
|
229
|
+
catch (cleanupError) {
|
|
230
|
+
logUnhandledError(cleanupError);
|
|
231
|
+
}
|
|
226
232
|
response.addError(String(error));
|
|
227
233
|
}
|
|
228
234
|
finally {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browserServerBackend.js","sourceRoot":"","sources":["../src/browserServerBackend.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"browserServerBackend.js","sourceRoot":"","sources":["../src/browserServerBackend.ts"],"names":[],"mappings":"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"}
|
package/lib/browserSessions.js
CHANGED
|
@@ -152,6 +152,9 @@ export class BrowserSessionRegistry {
|
|
|
152
152
|
entry.lastUsedAt = now;
|
|
153
153
|
continue;
|
|
154
154
|
}
|
|
155
|
+
const recordingActivityAt = entry.context.recordingActivityAt();
|
|
156
|
+
if (recordingActivityAt !== undefined && now - recordingActivityAt < this._ttlMs)
|
|
157
|
+
continue;
|
|
155
158
|
const idleFor = now - entry.lastUsedAt;
|
|
156
159
|
if (idleFor < this._ttlMs)
|
|
157
160
|
continue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browserSessions.js","sourceRoot":"","sources":["../src/browserSessions.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"browserSessions.js","sourceRoot":"","sources":["../src/browserSessions.ts"],"names":[],"mappings":"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"}
|
package/lib/config.js
CHANGED
|
@@ -24,7 +24,6 @@ const defaultConfig = {
|
|
|
24
24
|
launchOptions: {
|
|
25
25
|
channel: 'chrome',
|
|
26
26
|
headless: os.platform() === 'linux' && !process.env.DISPLAY,
|
|
27
|
-
chromiumSandbox: true,
|
|
28
27
|
},
|
|
29
28
|
contextOptions: {
|
|
30
29
|
viewport: null,
|
|
@@ -48,7 +47,7 @@ export async function resolveConfig(config) {
|
|
|
48
47
|
export async function resolveCLIConfig(cliOptions) {
|
|
49
48
|
const configInFile = await loadConfig(cliOptions.config);
|
|
50
49
|
const envOptions = cliOptionsFromEnv();
|
|
51
|
-
const envOverrides = configFromCLIOptions(envOptions);
|
|
50
|
+
const envOverrides = configFromCLIOptions(envOptions, true);
|
|
52
51
|
const cliOverrides = configFromCLIOptions(cliOptions);
|
|
53
52
|
const result = mergeCLIConfigSources(configInFile, envOverrides, cliOverrides);
|
|
54
53
|
return validateResolvedConfig(applyMobileConfig(result, configInFile, envOverrides, cliOverrides, envOptions, cliOptions));
|
|
@@ -62,9 +61,26 @@ export async function resolveCLIConfig(cliOptions) {
|
|
|
62
61
|
// config validations, on the merged result so every source (config file,
|
|
63
62
|
// env, CLI, programmatic Config) is covered. Only undefined/null count as
|
|
64
63
|
// omitted — the nullish semantics the fallback historically used.
|
|
65
|
-
function validateResolvedConfig(config) {
|
|
64
|
+
async function validateResolvedConfig(config) {
|
|
65
|
+
validateAuthToken(config.server.authToken);
|
|
66
|
+
const uploadDirs = config.browser.allowedUploadDirs;
|
|
67
|
+
if (uploadDirs !== undefined) {
|
|
68
|
+
if (!Array.isArray(uploadDirs))
|
|
69
|
+
throw new Error('allowedUploadDirs must be an array of directory paths. Use [] to deny all uploads.');
|
|
70
|
+
if (uploadDirs.some(dir => typeof dir !== 'string' || !dir.trim()))
|
|
71
|
+
throw new Error('allowedUploadDirs must not contain blank directory entries. Use [] to deny all uploads.');
|
|
72
|
+
// Resolve once at trusted startup; uploads must not follow a retargeted root.
|
|
73
|
+
config.browser.allowedUploadDirs = await Promise.all(uploadDirs.map(dir => fs.promises.realpath(dir)));
|
|
74
|
+
}
|
|
66
75
|
if (config.outputDir !== undefined && config.outputDir !== null && !String(config.outputDir).trim())
|
|
67
76
|
throw new Error('outputDir must not be blank: provide a directory path, or omit the option to use a temp directory.');
|
|
77
|
+
if (config.browser.browserName === 'chromium' && !config.browser.remoteEndpoint && config.browser.launchOptions.chromiumSandbox === undefined) {
|
|
78
|
+
const { channel, executablePath } = config.browser.launchOptions;
|
|
79
|
+
config.browser.launchOptions.chromiumSandbox = os.platform() !== 'linux'
|
|
80
|
+
|| executablePath !== undefined
|
|
81
|
+
|| (channel !== undefined && channel !== 'chromium' && channel !== 'chrome-for-testing');
|
|
82
|
+
config.browser.chromiumSandboxDefaulted = true;
|
|
83
|
+
}
|
|
68
84
|
return config;
|
|
69
85
|
}
|
|
70
86
|
function mergeCLIConfigSources(configInFile, envOverrides, cliOverrides, mobileOverride, mobileSource) {
|
|
@@ -98,7 +114,7 @@ function applyMobileConfig(resolved, configInFile, envOverrides, cliOverrides, e
|
|
|
98
114
|
const mobileOverride = { browser: { contextOptions: devices[device] } };
|
|
99
115
|
return mergeCLIConfigSources(configInFile, envOverrides, cliOverrides, mobileOverride, source);
|
|
100
116
|
}
|
|
101
|
-
function configFromCLIOptions(cliOptions) {
|
|
117
|
+
function configFromCLIOptions(cliOptions, sandboxTrueIsExplicit = false) {
|
|
102
118
|
let browserName;
|
|
103
119
|
let channel;
|
|
104
120
|
switch (cliOptions.browser) {
|
|
@@ -127,9 +143,10 @@ function configFromCLIOptions(cliOptions) {
|
|
|
127
143
|
executablePath: cliOptions.executablePath,
|
|
128
144
|
headless: cliOptions.headless,
|
|
129
145
|
};
|
|
130
|
-
// --no-sandbox
|
|
131
|
-
|
|
132
|
-
|
|
146
|
+
// Commander reports true when --no-sandbox is omitted, while true from the
|
|
147
|
+
// environment is explicit and must override the platform default.
|
|
148
|
+
if (cliOptions.sandbox === false || (sandboxTrueIsExplicit && cliOptions.sandbox === true))
|
|
149
|
+
launchOptions.chromiumSandbox = cliOptions.sandbox;
|
|
133
150
|
if (cliOptions.proxyServer) {
|
|
134
151
|
launchOptions.proxy = {
|
|
135
152
|
server: cliOptions.proxyServer
|
|
@@ -174,6 +191,7 @@ function configFromCLIOptions(cliOptions) {
|
|
|
174
191
|
browserName,
|
|
175
192
|
isolated: cliOptions.isolated,
|
|
176
193
|
userDataDir: cliOptions.userDataDir,
|
|
194
|
+
allowedUploadDirs: cliOptions.allowedUploadDirs,
|
|
177
195
|
launchOptions,
|
|
178
196
|
contextOptions,
|
|
179
197
|
cdpLaunch,
|
|
@@ -184,6 +202,7 @@ function configFromCLIOptions(cliOptions) {
|
|
|
184
202
|
server: {
|
|
185
203
|
port: cliOptions.port,
|
|
186
204
|
host: cliOptions.host,
|
|
205
|
+
authToken: cliOptions.authToken,
|
|
187
206
|
},
|
|
188
207
|
capabilities: cliOptions.caps,
|
|
189
208
|
network: {
|
|
@@ -192,6 +211,7 @@ function configFromCLIOptions(cliOptions) {
|
|
|
192
211
|
},
|
|
193
212
|
saveSession: cliOptions.saveSession,
|
|
194
213
|
saveTrace: cliOptions.saveTrace,
|
|
214
|
+
snapshot: cliOptions.snapshotBoxes !== undefined ? { boxes: cliOptions.snapshotBoxes } : undefined,
|
|
195
215
|
outputDir: cliOptions.outputDir,
|
|
196
216
|
imageResponses: cliOptions.imageResponses,
|
|
197
217
|
timeouts: {
|
|
@@ -204,6 +224,8 @@ function configFromCLIOptions(cliOptions) {
|
|
|
204
224
|
function cliOptionsFromEnv() {
|
|
205
225
|
const options = {};
|
|
206
226
|
options.allowedOrigins = semicolonSeparatedList(process.env.PLAYWRIGHT_MCP_ALLOWED_ORIGINS);
|
|
227
|
+
options.allowedUploadDirs = uploadDirectoryList(process.env.PLAYWRIGHT_MCP_ALLOWED_UPLOAD_DIRS);
|
|
228
|
+
options.authToken = process.env.PLAYWRIGHT_MCP_AUTH_TOKEN;
|
|
207
229
|
options.blockedOrigins = semicolonSeparatedList(process.env.PLAYWRIGHT_MCP_BLOCKED_ORIGINS);
|
|
208
230
|
options.blockServiceWorkers = envToBoolean(process.env.PLAYWRIGHT_MCP_BLOCK_SERVICE_WORKERS);
|
|
209
231
|
options.browser = envToString(process.env.PLAYWRIGHT_MCP_BROWSER);
|
|
@@ -232,6 +254,7 @@ function cliOptionsFromEnv() {
|
|
|
232
254
|
options.proxyBypass = envToString(process.env.PLAYWRIGHT_MCP_PROXY_BYPASS);
|
|
233
255
|
options.proxyServer = envToString(process.env.PLAYWRIGHT_MCP_PROXY_SERVER);
|
|
234
256
|
options.saveTrace = envToBoolean(process.env.PLAYWRIGHT_MCP_SAVE_TRACE);
|
|
257
|
+
options.snapshotBoxes = envToBoolean(process.env.PLAYWRIGHT_MCP_SNAPSHOT_BOXES);
|
|
235
258
|
options.storageState = envToString(process.env.PLAYWRIGHT_MCP_STORAGE_STATE);
|
|
236
259
|
options.userAgent = envToString(process.env.PLAYWRIGHT_MCP_USER_AGENT);
|
|
237
260
|
options.userDataDir = envToString(process.env.PLAYWRIGHT_MCP_USER_DATA_DIR);
|
|
@@ -280,11 +303,25 @@ export function resolveOutputDir(config) {
|
|
|
280
303
|
}
|
|
281
304
|
return outputDir;
|
|
282
305
|
}
|
|
283
|
-
export async function outputFile(config, name) {
|
|
306
|
+
export async function outputFile(config, name, exclusive = false) {
|
|
307
|
+
const fileName = name.trim() ? sanitizeForFilePath(name) : '';
|
|
308
|
+
if (!fileName || fileName === '.' || fileName === '..' || /[. ]$/.test(name) || /[. ]$/.test(fileName) || /^(?:con|prn|aux|nul|com[1-9\u00b9\u00b2\u00b3]|lpt[1-9\u00b9\u00b2\u00b3])(?:\.|$)/i.test(fileName))
|
|
309
|
+
throw new Error(`Invalid output filename "${name}": use a portable, non-reserved file name.`);
|
|
284
310
|
const outputDir = resolveOutputDir(config);
|
|
285
311
|
await fs.promises.mkdir(outputDir, { recursive: true });
|
|
286
|
-
const
|
|
287
|
-
|
|
312
|
+
const filePath = path.join(outputDir, fileName);
|
|
313
|
+
if (!exclusive)
|
|
314
|
+
return filePath;
|
|
315
|
+
try {
|
|
316
|
+
const handle = await fs.promises.open(filePath, 'wx');
|
|
317
|
+
await handle.close();
|
|
318
|
+
}
|
|
319
|
+
catch (error) {
|
|
320
|
+
if (error.code === 'EEXIST')
|
|
321
|
+
throw new Error(`Output file already exists: ${filePath}. Choose a different filename.`, { cause: error });
|
|
322
|
+
throw error;
|
|
323
|
+
}
|
|
324
|
+
return filePath;
|
|
288
325
|
}
|
|
289
326
|
function pickDefined(obj) {
|
|
290
327
|
return Object.fromEntries(Object.entries(obj ?? {}).filter(([_, v]) => v !== undefined));
|
|
@@ -331,6 +368,15 @@ export function semicolonSeparatedList(value) {
|
|
|
331
368
|
return undefined;
|
|
332
369
|
return value.split(';').map(v => v.trim());
|
|
333
370
|
}
|
|
371
|
+
export function uploadDirectoryList(value) {
|
|
372
|
+
if (value === undefined)
|
|
373
|
+
return undefined;
|
|
374
|
+
return value === '' ? [] : value.split(';').map(dir => dir.trim());
|
|
375
|
+
}
|
|
376
|
+
export function validateAuthToken(token) {
|
|
377
|
+
if (token !== undefined && (typeof token !== 'string' || !/^[A-Za-z0-9._~+/-]+=*$/.test(token)))
|
|
378
|
+
throw new Error('server.authToken must be a non-blank Bearer token without whitespace.');
|
|
379
|
+
}
|
|
334
380
|
export function commaSeparatedList(value) {
|
|
335
381
|
if (!value)
|
|
336
382
|
return undefined;
|
package/lib/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,2BAA2B,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AA4CxF,MAAM,aAAa,GAAe;IAChC,OAAO,EAAE;QACP,WAAW,EAAE,UAAU;QACvB,aAAa,EAAE;YACb,OAAO,EAAE,QAAQ;YACjB,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,KAAK,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO;YAC3D,eAAe,EAAE,IAAI;SACtB;QACD,cAAc,EAAE;YACd,QAAQ,EAAE,IAAI;SACf;KACF;IACD,OAAO,EAAE;QACP,cAAc,EAAE,SAAS;QACzB,cAAc,EAAE,SAAS;KAC1B;IACD,MAAM,EAAE,EAAE;IACV,SAAS,EAAE,KAAK;IAChB,QAAQ,EAAE;QACR,iBAAiB,EAAE,KAAK;QACxB,cAAc,EAAE,IAAI;QACpB,MAAM,EAAE,GAAG;KACZ;CACF,CAAC;AAgBF,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,MAAc;IAChD,OAAO,sBAAsB,CAAC,WAAW,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC;AACpE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,UAAsB;IAC3D,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IACzD,MAAM,UAAU,GAAG,iBAAiB,EAAE,CAAC;IACvC,MAAM,YAAY,GAAG,oBAAoB,CAAC,UAAU,CAAC,CAAC;IACtD,MAAM,YAAY,GAAG,oBAAoB,CAAC,UAAU,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,qBAAqB,CAAC,YAAY,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;IAC/E,OAAO,sBAAsB,CAAC,iBAAiB,CAAC,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;AAC7H,CAAC;AAED,0EAA0E;AAC1E,qEAAqE;AACrE,uEAAuE;AACvE,8EAA8E;AAC9E,yEAAyE;AACzE,0EAA0E;AAC1E,yEAAyE;AACzE,0EAA0E;AAC1E,kEAAkE;AAClE,SAAS,sBAAsB,CAAC,MAAkB;IAChD,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE;QACjG,MAAM,IAAI,KAAK,CAAC,oGAAoG,CAAC,CAAC;IACxH,OAAO,MAAM,CAAC;AAChB,CAAC;AAID,SAAS,qBAAqB,CAAC,YAAoB,EAAE,YAAoB,EAAE,YAAoB,EAAE,cAAuB,EAAE,YAA2B;IACnJ,IAAI,MAAM,GAAG,aAAa,CAAC;IAC3B,MAAM,GAAG,WAAW,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAC3C,IAAI,YAAY,KAAK,KAAK,IAAI,cAAc;QAC1C,MAAM,GAAG,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC/C,MAAM,GAAG,WAAW,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAC3C,IAAI,YAAY,KAAK,KAAK,IAAI,cAAc;QAC1C,MAAM,GAAG,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC/C,MAAM,GAAG,WAAW,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAC3C,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,iBAAiB,CAAC,QAAoB,EAAE,YAAoB,EAAE,YAAoB,EAAE,YAAoB,EAAE,UAAsB,EAAE,UAAsB;IAC/J,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACnI,IAAI,CAAC,MAAM;QACT,OAAO,QAAQ,CAAC;IAElB,IAAI,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM;QACxC,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,IAAI,UAAU,CAAC,SAAS;QACtB,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,IAAI,QAAQ,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS;QAC5C,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,IAAI,QAAQ,CAAC,OAAO,CAAC,WAAW;QAC9B,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,IAAI,QAAQ,CAAC,OAAO,CAAC,cAAc;QACjC,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC5E,IAAI,QAAQ,CAAC,OAAO,CAAC,SAAS;QAC5B,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAElF,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC;IACpF,MAAM,cAAc,GAAW,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;IAChF,OAAO,qBAAqB,CAAC,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;AACjG,CAAC;AAED,SAAS,oBAAoB,CAAC,UAAsB;IAClD,IAAI,WAA0D,CAAC;IAC/D,IAAI,OAA2B,CAAC;IAChC,QAAQ,UAAU,CAAC,OAAO,EAAE,CAAC;QAC3B,KAAK,QAAQ,CAAC;QACd,KAAK,aAAa,CAAC;QACnB,KAAK,eAAe,CAAC;QACrB,KAAK,YAAY,CAAC;QAClB,KAAK,UAAU,CAAC;QAChB,KAAK,QAAQ,CAAC;QACd,KAAK,aAAa,CAAC;QACnB,KAAK,eAAe,CAAC;QACrB,KAAK,YAAY;YACf,WAAW,GAAG,UAAU,CAAC;YACzB,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;YAC7B,MAAM;QACR,KAAK,SAAS;YACZ,WAAW,GAAG,SAAS,CAAC;YACxB,MAAM;QACR,KAAK,QAAQ;YACX,WAAW,GAAG,QAAQ,CAAC;YACvB,MAAM;IACV,CAAC;IAED,iBAAiB;IACjB,MAAM,aAAa,GAAkB;QACnC,OAAO;QACP,cAAc,EAAE,UAAU,CAAC,cAAc;QACzC,QAAQ,EAAE,UAAU,CAAC,QAAQ;KAC9B,CAAC;IAEF,+CAA+C;IAC/C,IAAI,UAAU,CAAC,OAAO,KAAK,KAAK;QAC9B,aAAa,CAAC,eAAe,GAAG,KAAK,CAAC;IAExC,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC;QAC3B,aAAa,CAAC,KAAK,GAAG;YACpB,MAAM,EAAE,UAAU,CAAC,WAAW;SAC/B,CAAC;QACF,IAAI,UAAU,CAAC,WAAW;YACxB,aAAa,CAAC,KAAK,CAAC,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC;IACxD,CAAC;IAED,IAAI,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,WAAW;QAC7C,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IAEzE,IAAI,UAAU,CAAC,WAAW,IAAI,UAAU,CAAC,gBAAgB;QACvD,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IAEnE,kBAAkB;IAClB,MAAM,cAAc,GAA0B,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAClG,IAAI,UAAU,CAAC,YAAY;QACzB,cAAc,CAAC,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC;IAExD,IAAI,UAAU,CAAC,SAAS;QACtB,cAAc,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;IAElD,IAAI,UAAU,CAAC,YAAY,EAAE,CAAC;QAC5B,IAAI,CAAC;YACH,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACxE,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC;gBAC/B,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;YAChC,cAAc,CAAC,QAAQ,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAC9C,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,yFAAyF,CAAC,CAAC;QAC7G,CAAC;IACH,CAAC;IAED,IAAI,UAAU,CAAC,iBAAiB;QAC9B,cAAc,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAE1C,IAAI,UAAU,CAAC,mBAAmB;QAChC,cAAc,CAAC,cAAc,GAAG,OAAO,CAAC;IAE1C,MAAM,SAAS,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAC9C,OAAO,EAAE,UAAU,CAAC,gBAAgB;QACpC,IAAI,EAAE,UAAU,CAAC,aAAa;QAC9B,GAAG,EAAE,UAAU,CAAC,YAAY;QAC5B,IAAI,EAAE,UAAU,CAAC,aAAa;QAC9B,gBAAgB,EAAE,UAAU,CAAC,uBAAuB;KACrD,CAAC,CAAC,CAAC,SAAS,CAAC;IAEd,OAAO;QACL,OAAO,EAAE;YACP,WAAW;YACX,QAAQ,EAAE,UAAU,CAAC,QAAQ;YAC7B,WAAW,EAAE,UAAU,CAAC,WAAW;YACnC,aAAa;YACb,cAAc;YACd,SAAS;YACT,WAAW,EAAE,UAAU,CAAC,WAAW;YACnC,UAAU,EAAE,eAAe,CAAC,UAAU,CAAC,SAAS,CAAC;YACjD,UAAU,EAAE,UAAU,CAAC,UAAU;SAClC;QACD,MAAM,EAAE;YACN,IAAI,EAAE,UAAU,CAAC,IAAI;YACrB,IAAI,EAAE,UAAU,CAAC,IAAI;SACtB;QACD,YAAY,EAAE,UAAU,CAAC,IAAwB;QACjD,OAAO,EAAE;YACP,cAAc,EAAE,UAAU,CAAC,cAAc;YACzC,cAAc,EAAE,UAAU,CAAC,cAAc;SAC1C;QACD,WAAW,EAAE,UAAU,CAAC,WAAW;QACnC,SAAS,EAAE,UAAU,CAAC,SAAS;QAC/B,SAAS,EAAE,UAAU,CAAC,SAAS;QAC/B,cAAc,EAAE,UAAU,CAAC,cAAc;QACzC,QAAQ,EAAE;YACR,iBAAiB,EAAE,UAAU,CAAC,iBAAiB;YAC/C,cAAc,EAAE,UAAU,CAAC,cAAc;YACzC,MAAM,EAAE,UAAU,CAAC,aAAa;SACjC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB;IACxB,MAAM,OAAO,GAAe,EAAE,CAAC;IAC/B,OAAO,CAAC,cAAc,GAAG,sBAAsB,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAC5F,OAAO,CAAC,cAAc,GAAG,sBAAsB,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAC5F,OAAO,CAAC,mBAAmB,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;IAC7F,OAAO,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;IAClE,OAAO,CAAC,IAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IACnE,OAAO,CAAC,aAAa,GAAG,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IACvF,OAAO,CAAC,gBAAgB,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;IACtF,OAAO,CAAC,YAAY,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;IAC9E,OAAO,CAAC,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAChF,OAAO,CAAC,uBAAuB,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;IACrG,OAAO,CAAC,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;IAC3E,OAAO,CAAC,SAAS,GAAG,oBAAoB,CAAC,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;IACjF,OAAO,CAAC,UAAU,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;IACzE,OAAO,CAAC,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;IAChE,OAAO,CAAC,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;IAChE,OAAO,CAAC,cAAc,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IACjF,OAAO,CAAC,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IACrE,OAAO,CAAC,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IAC5D,OAAO,CAAC,iBAAiB,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;IACzF,OAAO,CAAC,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IACrE,IAAI,OAAO,CAAC,GAAG,CAAC,8BAA8B,KAAK,MAAM;QACvD,OAAO,CAAC,cAAc,GAAG,MAAM,CAAC;IAClC,OAAO,CAAC,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;IACjE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;IACnE,OAAO,CAAC,SAAS,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IACvE,OAAO,CAAC,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IAC5D,OAAO,CAAC,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;IAC3E,OAAO,CAAC,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;IAC3E,OAAO,CAAC,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IACxE,OAAO,CAAC,YAAY,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAC7E,OAAO,CAAC,SAAS,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IACvE,OAAO,CAAC,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAC5E,OAAO,CAAC,YAAY,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAC7E,OAAO,CAAC,iBAAiB,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;IACvF,OAAO,CAAC,cAAc,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IACjF,OAAO,CAAC,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;IAC/E,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,UAA8B;IACtD,IAAI,CAAC,UAAU;QACb,OAAO,EAAE,CAAC;IAEZ,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;IACpE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,+BAA+B,UAAU,KAAK,KAAK,EAAE,CAAC,CAAC;IACzE,CAAC;AACH,CAAC;AAED,6EAA6E;AAC7E,4EAA4E;AAC5E,4EAA4E;AAC5E,4EAA4E;AAC5E,2EAA2E;AAC3E,2EAA2E;AAC3E,MAAM,iBAAiB,GAAG,IAAI,OAAO,EAAsB,CAAC;AAE5D;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAkB;IACjD,IAAI,MAAM,CAAC,SAAS;QAClB,OAAO,MAAM,CAAC,SAAS,CAAC;IAC1B,IAAI,SAAS,GAAG,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9C,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,sEAAsE;QACtE,qEAAqE;QACrE,wDAAwD;QACxD,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,uBAAuB,EAAE,2BAA2B,EAAE,CAAC,CAAC;QAC3F,iBAAiB,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,MAAkB,EAAE,IAAY;IAC/D,MAAM,SAAS,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC3C,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAC3C,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,WAAW,CAAmB,GAAkB;IACvD,OAAO,MAAM,CAAC,WAAW,CACrB,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAClD,CAAC;AAClB,CAAC;AAED,SAAS,WAAW,CAAC,IAAgB,EAAE,SAAiB;IACtD,MAAM,OAAO,GAA0B;QACrC,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC;QAC5B,GAAG,WAAW,CAAC,SAAS,CAAC,OAAO,CAAC;QACjC,WAAW,EAAE,SAAS,CAAC,OAAO,EAAE,WAAW,IAAI,IAAI,CAAC,OAAO,EAAE,WAAW,IAAI,UAAU;QACtF,QAAQ,EAAE,SAAS,CAAC,OAAO,EAAE,QAAQ,IAAI,IAAI,CAAC,OAAO,EAAE,QAAQ,IAAI,KAAK;QACxE,aAAa,EAAE;YACb,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC;YAC3C,GAAG,WAAW,CAAC,SAAS,CAAC,OAAO,EAAE,aAAa,CAAC;YAChD,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE;SAC3B;QACD,cAAc,EAAE;YACd,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC;YAC5C,GAAG,WAAW,CAAC,SAAS,CAAC,OAAO,EAAE,cAAc,CAAC;SAClD;KACF,CAAC;IAEF,IAAI,OAAO,CAAC,WAAW,KAAK,UAAU,IAAI,OAAO,CAAC,aAAa;QAC7D,OAAO,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC;IAEvC,OAAO;QACL,GAAG,WAAW,CAAC,IAAI,CAAC;QACpB,GAAG,WAAW,CAAC,SAAS,CAAC;QACzB,OAAO;QACP,OAAO,EAAE;YACP,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC;YAC5B,GAAG,WAAW,CAAC,SAAS,CAAC,OAAO,CAAC;SAClC;QACD,MAAM,EAAE;YACN,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC;YAC3B,GAAG,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC;SACjC;QACD,QAAQ,EAAE;YACR,iBAAiB,EAAE,SAAS,CAAC,QAAQ,EAAE,iBAAiB,IAAI,IAAI,CAAC,QAAQ,CAAC,iBAAiB;YAC3F,cAAc,EAAE,SAAS,CAAC,QAAQ,EAAE,cAAc,IAAI,IAAI,CAAC,QAAQ,CAAC,cAAc;YAClF,MAAM,EAAE,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM;SAC3D;KACY,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,KAAyB;IAC9D,IAAI,CAAC,KAAK;QACR,OAAO,SAAS,CAAC;IACnB,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAyB;IAC1D,IAAI,CAAC,KAAK;QACR,OAAO,SAAS,CAAC;IACnB,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;AAC7C,CAAC;AAED;;;;GAIG;AACH,SAAS,oBAAoB,CAAC,KAAyB;IACrD,IAAI,CAAC,KAAK;QACR,OAAO,SAAS,CAAC;IACnB,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACrE,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AAC9C,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAAC,OAA6B;IAC3D,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM;QAC7B,OAAO,SAAS,CAAC;IACnB,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACrC,IAAI,SAAS,KAAK,CAAC,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,uBAAuB,KAAK,mCAAmC,CAAC,CAAC;QACnF,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC;QAC9C,IAAI,CAAC,IAAI;YACP,MAAM,IAAI,KAAK,CAAC,uBAAuB,KAAK,0BAA0B,CAAC,CAAC;QAC1E,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACpD,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,WAAW,CAAC,KAAyB;IAC5C,IAAI,CAAC,KAAK;QACR,OAAO,SAAS,CAAC;IACnB,OAAO,CAAC,KAAK,CAAC;AAChB,CAAC;AAED,SAAS,YAAY,CAAC,KAAyB;IAC7C,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,GAAG;QACnC,OAAO,IAAI,CAAC;IACd,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,GAAG;QACpC,OAAO,KAAK,CAAC;IACf,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,WAAW,CAAC,KAAyB;IAC5C,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AAC1C,CAAC"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|