clearcote 0.23.0 → 0.25.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 CHANGED
@@ -272,6 +272,12 @@ All optional. Anything not listed here is passed straight through to Playwright
272
272
  | `extensions` | `--load-extension` + `--disable-extensions-except` | Unpacked-extension directory paths to load (Chromium forces headed when extensions are present). |
273
273
 
274
274
  > **Headed launches** default to `viewport: null` (no emulated viewport) so `window.innerWidth` tracks the real OS window — an emulated `1280×720` on a real window is an impossible-window tell. Pass an explicit `viewport` to override.
275
+
276
+ > **Headless launches** (0.24.0+) get a coherent window geometry by default, so `screen`, `availWidth/Height`,
277
+ > `innerWidth/Height` and `outerWidth/Height` agree with each other the way a real window's do. With a
278
+ > `fingerprint` seed the engine's own screen and work area are used and the window is sized to them; without a
279
+ > seed the SDK applies a screen size drawn from real captured desktops and fits the viewport to it. It is
280
+ > applied at launch, before your first navigation. Pass an explicit `viewport` or `screen` to opt out entirely.
275
281
  >
276
282
  > **Proxies:** a `socks5://user:pass@host:port` proxy is routed via `--proxy-server` (Playwright rejects credentials in its SOCKS descriptor). Chromium can't authenticate SOCKS5, so the credentials are dropped with a warning — put the auth on a local relay.
277
283
 
@@ -116,6 +116,22 @@ export interface FingerprintOptions {
116
116
  * stay on. Default (unset/`true`) keeps the noise.
117
117
  */
118
118
  fingerprintNoise?: boolean;
119
+ /**
120
+ * `false` reports the machine's REAL WebGL UNMASKED_VENDOR/RENDERER and changes nothing else --
121
+ * the getParameter limit table, the extension list, getShaderPrecisionFormat and the readPixels
122
+ * farble all stay on the persona. The GPU-STRING half of `disableGpuFingerprint` on its own, for
123
+ * hosts that rasterise in software. Note `navigator.gpu` still follows the wide flag, so with
124
+ * this alone WebGPU describes the persona while WebGL reports the real device.
125
+ * Requires engine >= Chromium 150 r12; inert on older builds.
126
+ */
127
+ gpuStringSpoof?: boolean;
128
+ /**
129
+ * `false` turns off the per-eTLD+1 farble on CANVAS 2D readback only (`getImageData`, and
130
+ * `toDataURL` of a 2D canvas). WebGL readPixels and every other farbled surface are unchanged --
131
+ * unlike `fingerprintNoise: false`, which is the process-wide off switch. `toBlob()` is gated by
132
+ * neither. Requires engine >= Chromium 150 r12; inert on older builds.
133
+ */
134
+ canvasNoise?: boolean;
119
135
  /**
120
136
  * Import a real captured fingerprint so the browser presents *that machine's* identity instead
121
137
  * of the synthetic seed-derived one. Accepts a path to a `.json` profile, a profile object, or a
@@ -1 +1 @@
1
- {"version":3,"file":"fingerprint.d.ts","sourceRoot":"","sources":["../src/fingerprint.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,kBAAkB;IACjC;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9B;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,CAAC;IACrD,qDAAqD;IACrD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oCAAoC;IACpC,KAAK,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;IAChE,qBAAqB;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;;;;;;;OAYG;IACH,UAAU,CAAC,EAAE,eAAe,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,GAAG,UAAU,MAAM,EAAE,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,GAAG,MAAM,CAAC;IACvG,oCAAoC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sCAAsC;IACtC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qCAAqC;IACrC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,mFAAmF;IACnF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iEAAiE;IACjE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qEAAqE;IACrE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sEAAsE;IACtE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mCAAmC;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mDAAmD;IACnD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,4DAA4D;IAC5D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;;;;OASG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,oFAAoF;IACpF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;;;;OASG;IACH,UAAU,CAAC,EAAE,IAAI,GAAG,KAAK,CAAC;IAC1B;;;;;;;;;;;;;OAaG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtD;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;;;;;OAUG;IACH,YAAY,CAAC,EAAE;QACb,+EAA+E;QAC/E,GAAG,EAAE,MAAM,CAAC;QACZ,mEAAmE;QACnE,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,qEAAqE;QACrE,IAAI,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,CAAC;QACxC,6CAA6C;QAC7C,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;QACjB,gDAAgD;QAChD,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAChB,2FAA2F;QAC3F,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;KAC9B,CAAC;CACH;AAED,eAAO,MAAM,gBAAgB,EAAE,CAAC,MAAM,kBAAkB,CAAC,EA6BxD,CAAC;AAEF,6FAA6F;AAC7F,wBAAgB,uBAAuB,CAAC,CAAC,SAAS,kBAAkB,EAClE,OAAO,EAAE,CAAC,GACT;IAAE,WAAW,EAAE,kBAAkB,CAAC;IAAC,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,MAAM,kBAAkB,CAAC,CAAA;CAAE,CAW9E;AAED;;uEAEuE;AACvE,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAMrD;AAED;;sGAEsG;AACtG,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAU7E;AAED;8FAC8F;AAC9F,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,SAAS,CAajG;AAwBD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAatF;AAUD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,kBAAkB,CAAC,YAAY,CAAC,EACvC,CAAC,EAAE,kBAAkB,GACpB,MAAM,GAAG,SAAS,CAapB;AAiBD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CASvE;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,kBAAkB,GAAG,MAAM,EAAE,CA4H/D"}
1
+ {"version":3,"file":"fingerprint.d.ts","sourceRoot":"","sources":["../src/fingerprint.ts"],"names":[],"mappings":"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"}
@@ -28,6 +28,8 @@ export const FINGERPRINT_KEYS = [
28
28
  "webrtcMdns",
29
29
  "disableGpuFingerprint",
30
30
  "fingerprintNoise",
31
+ "gpuStringSpoof",
32
+ "canvasNoise",
31
33
  "fingerprintProfile",
32
34
  "storageQuota",
33
35
  "canvasBridge",
@@ -300,6 +302,11 @@ export function fingerprintArgs(o) {
300
302
  // Identity spoofs (UA/screen/GPU/persona) stay on. Default keeps the noise.
301
303
  if (o.fingerprintNoise === false)
302
304
  args.push("--disable-fingerprint-noise");
305
+ // The two INDEPENDENT halves of the bundles above (engine >= Chromium 150 r12).
306
+ if (o.gpuStringSpoof === false)
307
+ args.push("--disable-gpu-string-spoof");
308
+ if (o.canvasNoise === false)
309
+ args.push("--disable-canvas-noise");
303
310
  // fingerprintProfile imports a real captured fingerprint (path/object/JSON) — see
304
311
  // tools/fingerprint-collect. Its fields override the seed-derived persona; absent fields fall
305
312
  // back to the seed, so partial profiles stay coherent.
@@ -1 +1 @@
1
- {"version":3,"file":"fingerprint.js","sourceRoot":"","sources":["../src/fingerprint.ts"],"names":[],"mappings":"AAAA,sFAAsF;AACtF,+GAA+G;AAE/G,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAgKzC,MAAM,CAAC,MAAM,gBAAgB,GAAiC;IAC5D,aAAa;IACb,UAAU;IACV,iBAAiB;IACjB,OAAO;IACP,cAAc;IACd,WAAW;IACX,aAAa;IACb,qBAAqB;IACrB,cAAc;IACd,aAAa;IACb,cAAc;IACd,YAAY;IACZ,aAAa;IACb,YAAY;IACZ,kBAAkB;IAClB,gBAAgB;IAChB,cAAc;IACd,UAAU;IACV,UAAU;IACV,gBAAgB;IAChB,UAAU;IACV,YAAY;IACZ,uBAAuB;IACvB,kBAAkB;IAClB,oBAAoB;IACpB,cAAc;IACd,cAAc;IACd,YAAY;CACb,CAAC;AAEF,6FAA6F;AAC7F,MAAM,UAAU,uBAAuB,CACrC,OAAU;IAEV,MAAM,WAAW,GAAuB,EAAE,CAAC;IAC3C,MAAM,IAAI,GAA4B,EAAE,CAAC;IACzC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7C,IAAK,gBAA6B,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9C,WAAuC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAClD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACd,CAAC;IACH,CAAC;IACD,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,IAAyC,EAAE,CAAC;AAC1E,CAAC;AAED;;uEAEuE;AACvE,MAAM,UAAU,mBAAmB,CAAC,CAAS;IAC3C,OAAO,MAAM,CAAC,CAAC,CAAC;SACb,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SAClC,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC;AAED;;sGAEsG;AACtG,MAAM,UAAU,aAAa,CAAC,KAAuC;IACnE,IAAI,GAAW,CAAC;IAChB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3C,CAAC;SAAM,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,GAAG,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;SAAM,CAAC;QACN,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,uBAAuB;IACnD,CAAC;IACD,OAAO,QAAQ,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACxD,CAAC;AAED;8FAC8F;AAC9F,MAAM,UAAU,qBAAqB,CAAC,KAAuC;IAC3E,IAAI,GAAwC,CAAC;IAC7C,IAAI,CAAC;QACH,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,GAAG,GAAG,KAAK,CAAC;aACtC,IAAI,UAAU,CAAC,KAAK,CAAC;YAAE,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;;YACrE,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,GAAG,GAAG,GAAG,EAAE,SAAgD,CAAC;IAClE,MAAM,KAAK,GAAG,GAAG,EAAE,SAAS,CAAC;IAC7B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7E,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,6FAA6F;AAC7F,8FAA8F;AAC9F,kGAAkG;AAClG,gGAAgG;AAChG,yCAAyC;AACzC,MAAM,sBAAsB,GAA2F;IACrH,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IACvC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IACzC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IACzC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IACzC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IACzC,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IACtC,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IACxC,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IACvC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IACzC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,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"}
1
+ {"version":3,"file":"fingerprint.js","sourceRoot":"","sources":["../src/fingerprint.ts"],"names":[],"mappings":"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CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IACvC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IACzC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IACzC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IACzC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IACzC,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IACtC,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IACxC,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IACvC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IACzC,CAAC,IAAI,EAAE,IA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"}
@@ -0,0 +1,111 @@
1
+ import type { BrowserContext, Page } from "playwright-core";
2
+ /**
3
+ * Regime-2 engine window-frame delta: outer = inner + (WIDTH, HEIGHT).
4
+ *
5
+ * Measured with no persona on 149.0.7827.114/linux-x64, re-confirmed on the 150 build a default
6
+ * launch resolves (same 8/131), and constant across every viewport probed
7
+ * (1280x720 -> 1288x851, 1920x947 -> 1928x1078, 2552x1269 -> 2560x1400). The regime-2 viewport is
8
+ * sized against these, so an engine that changed them would put headless windows back outside their
9
+ * screen — test/geometry.test.ts measures the running engine and fails on drift.
10
+ */
11
+ export declare const ENGINE_FRAME_WIDTH = 8;
12
+ export declare const ENGINE_FRAME_HEIGHT = 131;
13
+ /** `[screenWidth, screenHeight, weight, osHint]` — weight is distinct /24s in the corpus. */
14
+ export declare const HEADLESS_SCREEN_PROFILES: ReadonlyArray<readonly [number, number, number, string]>;
15
+ export interface Size {
16
+ width: number;
17
+ height: number;
18
+ }
19
+ export interface HeadlessGeometry {
20
+ screen: Size;
21
+ viewport: Size;
22
+ }
23
+ /**
24
+ * Whether `--fingerprint=<seed>` is on the command line, i.e. the engine spoofs screen/avail itself
25
+ * (regime 1). `lightStealth` drops that switch on purpose, so this is false for it even though a
26
+ * seed was passed to the SDK.
27
+ */
28
+ export declare function personaActive(args?: readonly string[] | null): boolean;
29
+ /** True when the caller passed their own window geometry flag. */
30
+ export declare function callerSizedTheWindow(args?: readonly string[] | null): boolean;
31
+ /**
32
+ * The imported profile's own screen, or null.
33
+ *
34
+ * Measured: `--fingerprint-profile` supplies screen/avail only when a persona (`--fingerprint=`) is
35
+ * ALSO running. Without a seed the profile's display is inert, so the SDK's override is all the page
36
+ * sees — and taking it from the profile keeps the imported identity instead of giving every seedless
37
+ * profile launch the same corpus screen.
38
+ *
39
+ * Reads the value off the switch (gzip+base64 of the capture JSON), which is the one form every SDK
40
+ * has in hand here whatever the caller passed. Best-effort: a profile the engine can still use must
41
+ * never fail a launch because this could not read a screen out of it, so failures return null. A
42
+ * screen too small to hold the engine's frame is rejected for the same reason the corpus table has no
43
+ * tiny rows — the leftover viewport would not lay out a desktop site. (That guard is what keeps an
44
+ * `profile="auto"` capture made on a headless host, whose screen can be the 800x600 surface, from
45
+ * becoming the persona's display.)
46
+ */
47
+ export declare function profileScreenFromArgs(args?: readonly string[] | null): [number, number] | null;
48
+ /**
49
+ * Regime-2 context geometry. The viewport is the screen minus the engine's frame, so the synthesized
50
+ * outerWidth/Height lands exactly on the screen edge (a maximized window) instead of past it.
51
+ */
52
+ export declare function headlessGeometry(seed?: string | number | null): HeadlessGeometry;
53
+ export type AppliedGeometry = {
54
+ mode: "persona";
55
+ } | ({
56
+ mode: "profile";
57
+ } & HeadlessGeometry);
58
+ /**
59
+ * Default a headless launch's context geometry in place; returns what was applied, or null.
60
+ *
61
+ * `{mode: "persona"}` means regime 1: `viewport: null` was set and the window still needs fitting to
62
+ * the persona's work area (see {@link fitWindowToPersona}). `{mode: "profile", ...}` means regime 2:
63
+ * screen + viewport were set and nothing else is needed.
64
+ *
65
+ * Skipped when headed (the real window is already coherent) and when the caller expressed ANY
66
+ * geometry intent — `viewport` (including an explicit null) or `screen`. `headless` unset means
67
+ * headless, matching Playwright.
68
+ */
69
+ export declare function applyHeadlessGeometry(opts: Record<string, unknown>, seed?: string | number | null, args?: readonly string[] | null): AppliedGeometry | null;
70
+ /**
71
+ * The bounds correction, given what the window reported after the first attempt.
72
+ *
73
+ * Requested bounds and reported outerHeight are not the same quantity: on 149 the window reports
74
+ * 33px less than the bounds height it was given, so fitting bounds to the work area lands 33px short
75
+ * of maximized (real maximized captures have outer == avail). Rather than hardcode 33, measure the
76
+ * shortfall and add it back — that self-tunes if the engine changes. Never asks for more than the
77
+ * shortfall, so the window cannot be pushed past the work area.
78
+ */
79
+ export declare function fitPlan(avail: number[], outer: number[]): [number, number] | null;
80
+ /**
81
+ * Regime 1: size the headless window to the persona's own work area, so the page reports a maximized
82
+ * window (outer == avail) instead of the 800x600 headless default sitting inside a spoofed
83
+ * 1920x1080 screen.
84
+ *
85
+ * `--start-maximized` and CDP `windowState: "maximized"` are both no-ops in headless (measured — the
86
+ * window stays at its default size), which is why this sets explicit bounds.
87
+ *
88
+ * Never throws: a geometry improvement must not be able to fail a launch.
89
+ */
90
+ export declare function fitWindowToPersona(page: Page, args?: readonly string[] | null): Promise<[number, number] | null>;
91
+ /**
92
+ * Regime 2: move the real window to (0, 0).
93
+ *
94
+ * Regime 2 leaves the real window at the headless default position — measured (10, 10) — while the
95
+ * emulated viewport makes outerWidth/Height span the whole spoofed screen. `screenX + outerWidth`
96
+ * then exceeds `screen.width`: the window hangs 10px past the screen edge on both axes. Only 6% of
97
+ * real single-display captures do that, so it is a weak but free tell. The move costs one CDP call
98
+ * and leaves the emulated viewport untouched (verified: inner/outer unchanged, screenX/Y become 0).
99
+ *
100
+ * Never throws.
101
+ */
102
+ export declare function moveWindowToOrigin(page: Page, args?: readonly string[] | null): Promise<[number, number] | null>;
103
+ /**
104
+ * Apply the headless window fixup once, on the first page: fit to the persona's work area (persona
105
+ * regime) or move to the origin (profile regime). A persistent context already owns a page, so act
106
+ * immediately; a browser-level context does not, so defer to its first `newPage`.
107
+ */
108
+ export declare function installWindowFixup(context: BrowserContext, args?: readonly string[] | null, persona?: boolean): Promise<void>;
109
+ /** `inner <= outer <= avail <= screen` on both axes — the chain a real window satisfies. */
110
+ export declare function geometryIsCoherent(screen: number[], avail: number[], inner: number[], outer: number[]): boolean;
111
+ //# sourceMappingURL=geometry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"geometry.d.ts","sourceRoot":"","sources":["../src/geometry.ts"],"names":[],"mappings":"AA8CA,OAAO,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAE5D;;;;;;;;GAQG;AACH,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,mBAAmB,MAAM,CAAC;AAEvC,6FAA6F;AAC7F,eAAO,MAAM,wBAAwB,EAAE,aAAa,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAS7F,CAAC;AAKF,MAAM,WAAW,IAAI;IAAG,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE;AACvD,MAAM,WAAW,gBAAgB;IAAG,MAAM,EAAE,IAAI,CAAC;IAAC,QAAQ,EAAE,IAAI,CAAA;CAAE;AAElE;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,GAAG,OAAO,CAEtE;AAED,kEAAkE;AAClE,wBAAgB,oBAAoB,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,GAAG,OAAO,CAE7E;AA8BD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAiB9F;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,gBAAgB,CAGhF;AAED,MAAM,MAAM,eAAe,GACvB;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB,CAAC;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GAAG,gBAAgB,CAAC,CAAC;AAE7C;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,EAC7B,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,GAC9B,eAAe,GAAG,IAAI,CAaxB;AAgBD;;;;;;;;GAQG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAKjF;AAED;;;;;;;;;GASG;AACH,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,IAAI,EACV,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,GAC9B,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC,CAuBlC;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,IAAI,EACV,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,GAC9B,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC,CAWlC;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,cAAc,EACvB,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,EAC/B,OAAO,UAAO,GACb,OAAO,CAAC,IAAI,CAAC,CAgBf;AAED,4FAA4F;AAC5F,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAClE,OAAO,CAIT"}
@@ -0,0 +1,302 @@
1
+ /**
2
+ * Headless window geometry. Port of the Python SDK's `_geometry.py`; the profile table, the seed
3
+ * hashing and the skip rules are identical, so a seed selects the same persona in every SDK.
4
+ *
5
+ * Headed launches take their geometry from the real display and the SDK keeps the page on it
6
+ * (`viewport: null`), so screen/avail/inner/outer agree by construction. Headless has no display,
7
+ * and what it reports depends on whether the engine's persona machinery is running. Both regimes
8
+ * were measured on 149.0.7827.114/linux-x64.
9
+ *
10
+ * REGIME 1 — a persona is active (`--fingerprint=<seed>` on the command line). The engine spoofs
11
+ * screen AND avail from the seed, including a taskbar (seed A -> 1920x1080 / avail 1920x1040, seed B
12
+ * -> 2560x1440 / 1400, seed C -> 1600x900 / 860), and its values BEAT a CDP screen override — so the
13
+ * SDK must not try to set screen here, it would silently lose. Leaving Playwright's emulated viewport
14
+ * on is just as wrong: inner 1280x720 inside an outer of 1920x1040 leaves 640px of window
15
+ * unaccounted for by any frame a real browser has. So `viewport: null` plus one window resize into
16
+ * the persona's own work area, which lands a maximized window:
17
+ *
18
+ * screen 1920x1080 avail 1920x1040 inner 1920x952 outer 1920x1040 frame (0, 88)
19
+ *
20
+ * REGIME 2 — no persona (the default seedless launch, and `lightStealth`, which drops
21
+ * `--fingerprint` deliberately). Nothing spoofs screen, so Chromium reports screen == the emulated
22
+ * viewport and then synthesizes a frame on top of it:
23
+ *
24
+ * screen 1280x720 avail 1280x720 inner 1280x720 outer 1288x851 <- outer > screen
25
+ *
26
+ * A window larger than its own screen is an impossible state, readable in two property lookups, and
27
+ * it was present on every headless shape reachable through the SDK. The lever here is CDP
28
+ * `Emulation.setDeviceMetricsOverride` via Playwright's context `screen` option — the only thing that
29
+ * moves screen.* in headless (the engine's own `--fingerprint-screen-*` switches are inert without a
30
+ * persona: verified through the SDK options and passed raw, headless and headed). So pick a screen
31
+ * size real machines have and size the viewport so the frame lands exactly on the screen edge.
32
+ *
33
+ * CDP LIMIT: the override sets availWidth/availHeight equal to screen.*, so regime 2 always reports
34
+ * no taskbar. Not invented — 78 of 432 real desktop captures (23 of 79 networks) report avail ==
35
+ * screen too. It is a minority shape and the only one available here; regime 1 is the more faithful
36
+ * of the two, so prefer a seeded launch when it is an option.
37
+ *
38
+ * PROVENANCE of the regime-2 table: the `audit_profiles` corpus (real captures from the public
39
+ * fingerprint audit), desktop rows whose geometry is self-consistent and which are not themselves
40
+ * emulated-viewport captures, counted by distinct /24 so one busy machine cannot skew it. macOS rows
41
+ * are dropped (color_depth 30, which this engine cannot spoof), non-1.0 DPR rows are dropped
42
+ * (scaling changes what the rasterizer produces), and ultrawide 3440x1440 is capped to weight 2
43
+ * (12 distinct /24s in the corpus — developers over-represent ultrawides).
44
+ */
45
+ import { createHash } from "node:crypto";
46
+ import { gunzipSync } from "node:zlib";
47
+ /**
48
+ * Regime-2 engine window-frame delta: outer = inner + (WIDTH, HEIGHT).
49
+ *
50
+ * Measured with no persona on 149.0.7827.114/linux-x64, re-confirmed on the 150 build a default
51
+ * launch resolves (same 8/131), and constant across every viewport probed
52
+ * (1280x720 -> 1288x851, 1920x947 -> 1928x1078, 2552x1269 -> 2560x1400). The regime-2 viewport is
53
+ * sized against these, so an engine that changed them would put headless windows back outside their
54
+ * screen — test/geometry.test.ts measures the running engine and fails on drift.
55
+ */
56
+ export const ENGINE_FRAME_WIDTH = 8;
57
+ export const ENGINE_FRAME_HEIGHT = 131;
58
+ /** `[screenWidth, screenHeight, weight, osHint]` — weight is distinct /24s in the corpus. */
59
+ export const HEADLESS_SCREEN_PROFILES = [
60
+ [1920, 1080, 24, "windows"],
61
+ [2560, 1440, 13, "windows"],
62
+ [1920, 1200, 6, "linux"],
63
+ [1366, 768, 3, "windows"],
64
+ [1600, 900, 3, "linux"],
65
+ [3440, 1440, 2, "windows"], // capped from 12 (see the module comment)
66
+ [3840, 2160, 2, "windows"],
67
+ [1680, 1050, 2, "windows"],
68
+ ];
69
+ /** Window flags that mean the caller sized the window themselves. */
70
+ const CALLER_WINDOW_FLAGS = ["--window-size", "--window-position", "--start-maximized"];
71
+ /**
72
+ * Whether `--fingerprint=<seed>` is on the command line, i.e. the engine spoofs screen/avail itself
73
+ * (regime 1). `lightStealth` drops that switch on purpose, so this is false for it even though a
74
+ * seed was passed to the SDK.
75
+ */
76
+ export function personaActive(args) {
77
+ return (args ?? []).some((a) => String(a).startsWith("--fingerprint="));
78
+ }
79
+ /** True when the caller passed their own window geometry flag. */
80
+ export function callerSizedTheWindow(args) {
81
+ return (args ?? []).some((a) => CALLER_WINDOW_FLAGS.includes(String(a).split("=")[0]));
82
+ }
83
+ /**
84
+ * Weighted, deterministic choice from {@link HEADLESS_SCREEN_PROFILES}. Same construction as
85
+ * `lightStealthValues`: the full sha256 digest as a big integer, so Python, Node and .NET select the
86
+ * identical row for a seed. An unset seed maps to a fixed key rather than randomness, so a seedless
87
+ * launch stays reproducible.
88
+ */
89
+ function pick(seed) {
90
+ const key = seed === undefined || seed === null || seed === "" ? "clearcote-headless-geometry" : String(seed);
91
+ const digest = createHash("sha256").update(key, "utf8").digest("hex");
92
+ const total = HEADLESS_SCREEN_PROFILES.reduce((n, row) => n + row[2], 0);
93
+ let point = Number(BigInt("0x" + digest) % BigInt(total));
94
+ for (const row of HEADLESS_SCREEN_PROFILES) {
95
+ point -= row[2];
96
+ if (point < 0)
97
+ return row;
98
+ }
99
+ return HEADLESS_SCREEN_PROFILES[HEADLESS_SCREEN_PROFILES.length - 1];
100
+ }
101
+ /** Context geometry for a given screen: viewport = screen minus the engine's frame. */
102
+ function geometryFor(width, height) {
103
+ return {
104
+ screen: { width, height },
105
+ viewport: { width: width - ENGINE_FRAME_WIDTH, height: height - ENGINE_FRAME_HEIGHT },
106
+ };
107
+ }
108
+ const PROFILE_FLAG = "--fingerprint-profile=";
109
+ /**
110
+ * The imported profile's own screen, or null.
111
+ *
112
+ * Measured: `--fingerprint-profile` supplies screen/avail only when a persona (`--fingerprint=`) is
113
+ * ALSO running. Without a seed the profile's display is inert, so the SDK's override is all the page
114
+ * sees — and taking it from the profile keeps the imported identity instead of giving every seedless
115
+ * profile launch the same corpus screen.
116
+ *
117
+ * Reads the value off the switch (gzip+base64 of the capture JSON), which is the one form every SDK
118
+ * has in hand here whatever the caller passed. Best-effort: a profile the engine can still use must
119
+ * never fail a launch because this could not read a screen out of it, so failures return null. A
120
+ * screen too small to hold the engine's frame is rejected for the same reason the corpus table has no
121
+ * tiny rows — the leftover viewport would not lay out a desktop site. (That guard is what keeps an
122
+ * `profile="auto"` capture made on a headless host, whose screen can be the 800x600 surface, from
123
+ * becoming the persona's display.)
124
+ */
125
+ export function profileScreenFromArgs(args) {
126
+ for (const raw of args ?? []) {
127
+ const arg = String(raw);
128
+ if (!arg.startsWith(PROFILE_FLAG))
129
+ continue;
130
+ try {
131
+ const json = gunzipSync(Buffer.from(arg.slice(PROFILE_FLAG.length), "base64")).toString("utf8");
132
+ const screen = (JSON.parse(json) || {}).screen || {};
133
+ const width = Number(screen.width);
134
+ const height = Number(screen.height);
135
+ if (!Number.isFinite(width) || !Number.isFinite(height))
136
+ return null;
137
+ if (width - ENGINE_FRAME_WIDTH < 1024 || height - ENGINE_FRAME_HEIGHT < 600)
138
+ return null;
139
+ return [width, height];
140
+ }
141
+ catch {
142
+ return null;
143
+ }
144
+ }
145
+ return null;
146
+ }
147
+ /**
148
+ * Regime-2 context geometry. The viewport is the screen minus the engine's frame, so the synthesized
149
+ * outerWidth/Height lands exactly on the screen edge (a maximized window) instead of past it.
150
+ */
151
+ export function headlessGeometry(seed) {
152
+ const [sw, sh] = pick(seed);
153
+ return geometryFor(sw, sh);
154
+ }
155
+ /**
156
+ * Default a headless launch's context geometry in place; returns what was applied, or null.
157
+ *
158
+ * `{mode: "persona"}` means regime 1: `viewport: null` was set and the window still needs fitting to
159
+ * the persona's work area (see {@link fitWindowToPersona}). `{mode: "profile", ...}` means regime 2:
160
+ * screen + viewport were set and nothing else is needed.
161
+ *
162
+ * Skipped when headed (the real window is already coherent) and when the caller expressed ANY
163
+ * geometry intent — `viewport` (including an explicit null) or `screen`. `headless` unset means
164
+ * headless, matching Playwright.
165
+ */
166
+ export function applyHeadlessGeometry(opts, seed, args) {
167
+ if (opts.headless === false)
168
+ return null;
169
+ if ("viewport" in opts || "screen" in opts)
170
+ return null;
171
+ if (personaActive(args)) {
172
+ opts.viewport = null;
173
+ return { mode: "persona" };
174
+ }
175
+ // An imported profile carries its own display; prefer it over a corpus pick.
176
+ const fromProfile = profileScreenFromArgs(args);
177
+ const geom = fromProfile ? geometryFor(fromProfile[0], fromProfile[1]) : headlessGeometry(seed);
178
+ opts.screen = geom.screen;
179
+ opts.viewport = geom.viewport;
180
+ return { mode: "profile", ...geom };
181
+ }
182
+ // A plain expression, NOT "() => [...]": Playwright evaluates an arrow-function string to a
183
+ // function object rather than calling it (which silently broke this fit once).
184
+ const WORKAREA_JS = "[screen.availWidth, screen.availHeight]";
185
+ const OUTER_JS = "[outerWidth, outerHeight]";
186
+ /** A work area only a non-engaged persona would report (the headless default) is not worth fitting to. */
187
+ function plausible(area) {
188
+ return !!area && area.length === 2 && area[0] >= 1024 && area[1] >= 600;
189
+ }
190
+ function bounds(width, height) {
191
+ return { left: 0, top: 0, width: Math.round(width), height: Math.round(height) };
192
+ }
193
+ /**
194
+ * The bounds correction, given what the window reported after the first attempt.
195
+ *
196
+ * Requested bounds and reported outerHeight are not the same quantity: on 149 the window reports
197
+ * 33px less than the bounds height it was given, so fitting bounds to the work area lands 33px short
198
+ * of maximized (real maximized captures have outer == avail). Rather than hardcode 33, measure the
199
+ * shortfall and add it back — that self-tunes if the engine changes. Never asks for more than the
200
+ * shortfall, so the window cannot be pushed past the work area.
201
+ */
202
+ export function fitPlan(avail, outer) {
203
+ const dw = avail[0] - outer[0];
204
+ const dh = avail[1] - outer[1];
205
+ if (dw <= 0 && dh <= 0)
206
+ return null;
207
+ return [avail[0] + Math.max(dw, 0), avail[1] + Math.max(dh, 0)];
208
+ }
209
+ /**
210
+ * Regime 1: size the headless window to the persona's own work area, so the page reports a maximized
211
+ * window (outer == avail) instead of the 800x600 headless default sitting inside a spoofed
212
+ * 1920x1080 screen.
213
+ *
214
+ * `--start-maximized` and CDP `windowState: "maximized"` are both no-ops in headless (measured — the
215
+ * window stays at its default size), which is why this sets explicit bounds.
216
+ *
217
+ * Never throws: a geometry improvement must not be able to fail a launch.
218
+ */
219
+ export async function fitWindowToPersona(page, args) {
220
+ if (callerSizedTheWindow(args))
221
+ return null;
222
+ try {
223
+ const avail = (await page.evaluate(WORKAREA_JS));
224
+ if (!plausible(avail))
225
+ return null;
226
+ const cdp = await page.context().newCDPSession(page);
227
+ const { windowId } = (await cdp.send("Browser.getWindowForTarget"));
228
+ await cdp.send("Browser.setWindowBounds", { windowId, bounds: bounds(avail[0], avail[1]) });
229
+ let outer = (await page.evaluate(OUTER_JS));
230
+ const plan = fitPlan(avail, outer);
231
+ if (plan) {
232
+ await cdp.send("Browser.setWindowBounds", { windowId, bounds: bounds(plan[0], plan[1]) });
233
+ outer = (await page.evaluate(OUTER_JS));
234
+ // Overshooting would trade one impossible geometry for another (outer > avail).
235
+ if (outer[0] > avail[0] || outer[1] > avail[1]) {
236
+ await cdp.send("Browser.setWindowBounds", { windowId, bounds: bounds(avail[0], avail[1]) });
237
+ outer = (await page.evaluate(OUTER_JS));
238
+ }
239
+ }
240
+ return [outer[0], outer[1]];
241
+ }
242
+ catch {
243
+ return null; // deliberately silent: never fail a launch over geometry
244
+ }
245
+ }
246
+ /**
247
+ * Regime 2: move the real window to (0, 0).
248
+ *
249
+ * Regime 2 leaves the real window at the headless default position — measured (10, 10) — while the
250
+ * emulated viewport makes outerWidth/Height span the whole spoofed screen. `screenX + outerWidth`
251
+ * then exceeds `screen.width`: the window hangs 10px past the screen edge on both axes. Only 6% of
252
+ * real single-display captures do that, so it is a weak but free tell. The move costs one CDP call
253
+ * and leaves the emulated viewport untouched (verified: inner/outer unchanged, screenX/Y become 0).
254
+ *
255
+ * Never throws.
256
+ */
257
+ export async function moveWindowToOrigin(page, args) {
258
+ if (callerSizedTheWindow(args))
259
+ return null;
260
+ try {
261
+ const cdp = await page.context().newCDPSession(page);
262
+ const { windowId } = (await cdp.send("Browser.getWindowForTarget"));
263
+ // left/top only — sending width/height here would fight the emulated viewport.
264
+ await cdp.send("Browser.setWindowBounds", { windowId, bounds: { left: 0, top: 0 } });
265
+ return [0, 0];
266
+ }
267
+ catch {
268
+ return null;
269
+ }
270
+ }
271
+ /**
272
+ * Apply the headless window fixup once, on the first page: fit to the persona's work area (persona
273
+ * regime) or move to the origin (profile regime). A persistent context already owns a page, so act
274
+ * immediately; a browser-level context does not, so defer to its first `newPage`.
275
+ */
276
+ export async function installWindowFixup(context, args, persona = true) {
277
+ let done = false;
278
+ const fix = async (page) => {
279
+ if (done)
280
+ return page;
281
+ done = true;
282
+ if (persona)
283
+ await fitWindowToPersona(page, args);
284
+ else
285
+ await moveWindowToOrigin(page, args);
286
+ return page;
287
+ };
288
+ const existing = context.pages();
289
+ if (existing.length) {
290
+ await fix(existing[0]);
291
+ return;
292
+ }
293
+ const origNewPage = context.newPage.bind(context);
294
+ context.newPage = async () => fix(await origNewPage());
295
+ }
296
+ /** `inner <= outer <= avail <= screen` on both axes — the chain a real window satisfies. */
297
+ export function geometryIsCoherent(screen, avail, inner, outer) {
298
+ return inner[0] <= outer[0] && inner[1] <= outer[1]
299
+ && outer[0] <= avail[0] && outer[1] <= avail[1]
300
+ && avail[0] <= screen[0] && avail[1] <= screen[1];
301
+ }
302
+ //# sourceMappingURL=geometry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"geometry.js","sourceRoot":"","sources":["../src/geometry.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -24,11 +24,12 @@ import { resolveProfileOptions, Profile } from "./profile.js";
24
24
  import { resolveAuto, engineSupportsProfiles, MIN_PROFILE_ENGINE_MAJOR } from "./profileauto.js";
25
25
  import { measureHost } from "./profilesource.js";
26
26
  import { defaultStickyKey, } from "./profilelib.js";
27
- import { extensionArgs, resolveProxy, mergeFeatureFlags, privacySandboxArgs, quicArgs, webrtcDefaultDenyArgs, } from "./launchopts.js";
27
+ import { extensionArgs, resolveProxy, mergeFeatureFlags, privacySandboxArgs, quicArgs, webBluetoothArgs, webrtcDefaultDenyArgs, } from "./launchopts.js";
28
28
  import { RELEASE, platformRelease } from "./release.js";
29
29
  import { fetchWidevine, seedWidevine, widevineArgs } from "./widevine.js";
30
30
  import { emitCoherenceWarnings } from "./warnings.js";
31
31
  import { fontLaunchEnv } from "./fonts.js";
32
+ import { applyHeadlessGeometry, fitWindowToPersona, installWindowFixup, moveWindowToOrigin, } from "./geometry.js";
32
33
  import { acquireLease, resolveLicenseKey, withRunToken } from "./license.js";
33
34
  export { proEnsureBinary } from "./download.js";
34
35
  export { resolveGeo } from "./geoip.js";
@@ -111,6 +112,36 @@ export async function download(options = {}) {
111
112
  const { version, licenseKey, licenseApiBase, ...dl } = options;
112
113
  return executablePath({ version, pro: proSelector(licenseKey, licenseApiBase), ...dl });
113
114
  }
115
+ /** Headless: the geometry defaults are CONTEXT options and `chromium.launch()` takes none, so they
116
+ * ride on newPage/newContext instead — persona regime gets `viewport: null` plus a window fit, no-
117
+ * persona regime gets the screen + viewport override. See ./geometry.ts for why each is needed. */
118
+ function installHeadlessGeometry(browser, geom, args) {
119
+ // chromium.launch() accepts no context options, so the headless geometry default has to ride on
120
+ // newPage/newContext — the same shape as installHeadedViewport. In persona mode each new context
121
+ // is a new window, so each also gets the window fit. Any per-call geometry option wins.
122
+ const persona = geom.mode === "persona";
123
+ const defaults = persona
124
+ ? { viewport: null }
125
+ : { screen: geom.screen, viewport: geom.viewport };
126
+ const merge = (o = {}) => "viewport" in o || "screen" in o ? o : { ...o, ...defaults };
127
+ const origNewPage = browser.newPage.bind(browser);
128
+ const origNewContext = browser.newContext.bind(browser);
129
+ browser.newPage =
130
+ async (o = {}) => {
131
+ const page = await origNewPage(merge(o));
132
+ if (persona)
133
+ await fitWindowToPersona(page, args);
134
+ else
135
+ await moveWindowToOrigin(page, args);
136
+ return page;
137
+ };
138
+ browser.newContext =
139
+ async (o = {}) => {
140
+ const context = await origNewContext(merge(o));
141
+ await installWindowFixup(context, args, persona);
142
+ return context;
143
+ };
144
+ }
114
145
  /** A headed launch with Playwright's default emulated viewport (1280x720) on the real OS window
115
146
  * makes window.innerWidth/Height disagree with the actual window — an impossible-window tell. For a
116
147
  * headed browser, default new pages/contexts to `viewport: null` (innerWidth tracks the real window)
@@ -125,7 +156,9 @@ function installHeadedViewport(browser) {
125
156
  * Privacy-Sandbox-disable default, the WebRTC leak-proof default, and the user's own args — then
126
157
  * collapse all --enable-features/--disable-features into one each (Chromium keeps only the last). */
127
158
  function assembleArgs(fpArgs, agArgs, extArgs, proxyArgs, disablePrivacySandbox, webrtcIp, userArgs, proxyForQuic) {
128
- const base = [...fpArgs, ...agArgs, ...extArgs, ...proxyArgs, ...quicArgs(proxyForQuic)];
159
+ // webBluetoothArgs: Linux hosts hide navigator.bluetooth while exposing usb/serial/hid, an
160
+ // OS-origin tell on a Windows persona. No-op off Linux.
161
+ const base = [...fpArgs, ...agArgs, ...extArgs, ...proxyArgs, ...quicArgs(proxyForQuic), ...webBluetoothArgs()];
129
162
  // DEFAULT FLIPPED IN 0.23.0 — opt IN to disabling, rather than opt out.
130
163
  //
131
164
  // Disabling Topics/FLEDGE/Shared Storage/Fenced Frames is coherent for a de-Googled persona, and
@@ -408,6 +441,13 @@ async function launchIncognito(options = {}) {
408
441
  // On Linux, point FONTCONFIG_FILE at the bundled metric-compatible clones (Segoe UI, Arial, …).
409
442
  const launchEnv = fontLaunchEnv(exe, pwOptions.env);
410
443
  const runtimeEnv = lease ? withRunToken(lease.token, launchEnv) : launchEnv;
444
+ const engineArgs = assembleArgs(fingerprintArgs(fingerprint), agentArgs(agent), extensionArgs(extensions), proxyArgs, disablePrivacySandbox, fingerprint.webrtcIp, args ?? [], proxyOpt);
445
+ // Headless: screen.* has to be handled alongside the viewport or the window reports a geometry no
446
+ // real browser can (see ./geometry.ts). Probe a copy — viewport/screen are context options, which
447
+ // chromium.launch() does not take — and carry the result to newPage/newContext.
448
+ const geom = headed
449
+ ? null
450
+ : applyHeadlessGeometry({ ...pwOptions }, fingerprint.fingerprint, engineArgs);
411
451
  const browser = await winAvRetry((exePath) => chromium.launch({
412
452
  // Drop Playwright's default --enable-automation so the engine's AutomationControlled feature
413
453
  // stays off (it flips webdriver-adjacent tells). Caller can override via ignoreDefaultArgs.
@@ -415,13 +455,15 @@ async function launchIncognito(options = {}) {
415
455
  ...pwOptions,
416
456
  executablePath: exePath,
417
457
  ...(runtimeEnv ? { env: runtimeEnv } : {}),
418
- args: assembleArgs(fingerprintArgs(fingerprint), agentArgs(agent), extensionArgs(extensions), proxyArgs, disablePrivacySandbox, fingerprint.webrtcIp, args ?? [], proxyOpt),
458
+ args: engineArgs,
419
459
  }), exe);
420
460
  // Release the concurrency slot when the browser closes.
421
461
  if (lease)
422
462
  browser.on("disconnected", () => { void lease.stop(); });
423
463
  if (headed)
424
464
  installHeadedViewport(browser); // launch() takes no viewport option -> wrap newPage/newContext
465
+ else if (geom)
466
+ installHeadlessGeometry(browser, geom, engineArgs);
425
467
  installHumanize(browser, { humanize, showCursor, seed: fingerprint.fingerprint }); // seed => stable motor persona
426
468
  return browser;
427
469
  }
@@ -481,15 +523,23 @@ export async function launchPersistentContext(userDataDir, options = {}) {
481
523
  });
482
524
  const ctxEnv = fontLaunchEnv(exe, opts.env);
483
525
  const runtimeEnv = lease ? withRunToken(lease.token, ctxEnv) : ctxEnv;
526
+ const engineArgs = assembleArgs(fingerprintArgs(fingerprint), agentArgs(agent), extensionArgs(extensions), proxyArgs, disablePrivacySandbox, fingerprint.webrtcIp, userArgs, proxyOpt);
527
+ // headless: the persona owns screen when it is running, so only the window needs fitting; with no
528
+ // persona the SDK overrides screen itself (see ./geometry.ts). Headed already set viewport: null.
529
+ const geom = opts.headless === false
530
+ ? null
531
+ : applyHeadlessGeometry(opts, fingerprint.fingerprint, engineArgs);
484
532
  const context = await winAvRetry((exePath) => chromium.launchPersistentContext(userDataDir, {
485
533
  ...opts,
486
534
  ignoreDefaultArgs, // keep AutomationControlled off (+ component updater on when widevine)
487
535
  executablePath: exePath,
488
536
  ...(runtimeEnv ? { env: runtimeEnv } : {}),
489
- args: assembleArgs(fingerprintArgs(fingerprint), agentArgs(agent), extensionArgs(extensions), proxyArgs, disablePrivacySandbox, fingerprint.webrtcIp, userArgs, proxyOpt),
537
+ args: engineArgs,
490
538
  }), exe);
491
539
  if (lease)
492
540
  context.on("close", () => { void lease.stop(); });
541
+ if (geom)
542
+ await installWindowFixup(context, engineArgs, geom.mode === "persona");
493
543
  installHumanizeOnContext(context, { humanize, showCursor, seed: fingerprint.fingerprint }); // seed => stable motor persona
494
544
  return context;
495
545
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,kCAAkC;AAClC,EAAE;AACF,wCAAwC;AACxC,oFAAoF;AACpF,0CAA0C;AAC1C,iEAAiE;AACjE,EAAE;AACF,4FAA4F;AAC5F,gGAAgG;AAChG,gGAAgG;AAChG,sBAAsB;AAEtB,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC3F,OAAO,EAAE,KAAK,EAAqB,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAOpD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,qBAAqB,EAAE,SAAS,EAAwB,MAAM,eAAe,CAAC;AACrI,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAA2B,MAAM,kBAAkB,CAAC;AACrG,OAAO,EAAE,UAAU,EAAY,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAwB,MAAM,eAAe,CAAC;AAChG,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAqB,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAgC,sBAAsB,EAAE,wBAAwB,EAAwD,MAAM,kBAAkB,CAAC;AACrL,OAAO,EAAE,WAAW,EAAqE,MAAM,oBAAoB,CAAC;AAEpH,OAAO,EACkD,gBAAgB,GAExE,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,QAAQ,EACR,qBAAqB,GAEtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,YAAY,EAA0C,MAAM,cAAc,CAAC;AAIrH,OAAO,EAAE,eAAe,EAA2B,MAAM,eAAe,CAAC;AACzE,OAAO,EAAE,UAAU,EAAY,MAAM,YAAY,CAAC;AAElD,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAuB,MAAM,cAAc,CAAC;AACpG,kFAAkF;AAClF,OAAO,EACL,aAAa,EAAE,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,gBAAgB,EAAE,mBAAmB,GAE7F,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,eAAe,EAAE,mBAAmB,EAAE,qBAAqB,GAC5D,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,kBAAkB,GAExE,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,sBAAsB,EACjF,wBAAwB,EAAE,iBAAiB,GAE5C,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,YAAY,EACZ,SAAS,EACT,mBAAmB,GAKpB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAsB,MAAM,aAAa,CAAC;AACvE,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,qBAAqB,EACrB,mBAAmB,GAGpB,MAAM,cAAc,CAAC;AAyEtB,iGAAiG;AACjG,KAAK,UAAU,UAAU,CAAC,EAAsB,EAAE,KAAc;IAC9D,MAAM,GAAG,GAAe,MAAM,UAAU,CAAC,KAA8E,CAAC,CAAC;IACzH,IAAI,CAAC,GAAG;QAAE,OAAO;IACjB,IAAI,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,QAAQ,IAAI,IAAI;QAAE,EAAE,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;IACpE,IAAI,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC,cAAc,IAAI,IAAI;QAAE,EAAE,CAAC,cAAc,GAAG,GAAG,CAAC,cAAc,CAAC;IAC5F,IAAI,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,QAAQ,IAAI,IAAI;QAAE,EAAE,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;IACpE,2FAA2F;IAC3F,iEAAiE;IACjE,IAAI,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,QAAQ,IAAI,IAAI;QAAE,EAAE,CAAC,QAAQ,GAAG,GAAG,CAAC,EAAE,CAAC;AAC1D,CAAC;AAED,SAAS,kBAAkB,CAAC,GAAW;IACrC,IAAI,eAAe,EAAE,KAAK,SAAS,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CACb,aAAa,OAAO,CAAC,OAAO,sEAAsE,OAAO,CAAC,QAAQ,MAAM;YACtH,2EAA2E;YAC3E,8DAA8D,GAAG,GAAG,CACvE,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,UAAkI,EAAE;IAEpI,IAAI,OAAO,CAAC,cAAc;QAAE,OAAO,OAAO,CAAC,cAAc,CAAC;IAC1D,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB;QAAE,OAAO,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;IACtE,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC;IACzE,IAAI,OAAO,EAAE,CAAC;QACZ,2FAA2F;QAC3F,oFAAoF;QACpF,OAAO,aAAa,CAAC,OAAO,EAAE;YAC5B,UAAU,EAAE,OAAO,CAAC,GAAG,EAAE,UAAU;YACnC,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,cAAc;YACpC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CAAC,CAAC;IACL,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAChB,OAAO,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE;YAC7C,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;YACnC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CAAC,CAAC;IACL,CAAC;IACD,OAAO,YAAY,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;AAC5G,CAAC;AAED,6FAA6F;AAC7F,SAAS,WAAW,CAClB,UAA8B,EAC9B,cAAkC;IAElC,MAAM,GAAG,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAC1C,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AAC/D,CAAC;AAED;;;qBAGqB;AACrB,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,UAAgG,EAAE;IAElG,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC;IAC/D,OAAO,cAAc,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,WAAW,CAAC,UAAU,EAAE,cAAc,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;AAC1F,CAAC;AAED;;;6CAG6C;AAC7C,SAAS,qBAAqB,CAAC,OAAgB;IAC7C,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACjD,OAAgC,CAAC,OAAO,GAAG,CAAC,IAA6B,EAAE,EAAE,EAAE,CAC9E,WAAW,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9D,MAAM,cAAc,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvD,OAAmC,CAAC,UAAU,GAAG,CAAC,IAA6B,EAAE,EAAE,EAAE,CACpF,cAAc,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AACnE,CAAC;AAED;;qGAEqG;AACrG,SAAS,YAAY,CACnB,MAAgB,EAChB,MAAgB,EAChB,OAAiB,EACjB,SAAmB,EACnB,qBAA0C,EAC1C,QAAiB,EACjB,QAAkB,EAClB,YAAsB;IAEtB,MAAM,IAAI,GAAG,CAAC,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE,GAAG,OAAO,EAAE,GAAG,SAAS,EAAE,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;IACzF,wEAAwE;IACxE,EAAE;IACF,iGAAiG;IACjG,6FAA6F;IAC7F,iGAAiG;IACjG,8FAA8F;IAC9F,wFAAwF;IACxF,uBAAuB;IACvB,IAAI,qBAAqB,KAAK,IAAI;QAAE,IAAI,CAAC,IAAI,CAAC,GAAG,kBAAkB,EAAE,CAAC,CAAC;IACvE,IAAI,CAAC,IAAI,CAAC,GAAG,qBAAqB,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;IACtE,OAAO,iBAAiB,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,GAAY;IAC1C,MAAM,CAAC,GAAG,MAAM,CAAE,GAAa,EAAE,OAAO,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;IAC/D,OAAO,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;AACjG,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAI,QAAqC,EAAE,GAAW;IACpF,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO;QAAE,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC;IACvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,OAAO,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC;gBAAE,MAAM,GAAG,CAAC;YACrC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;YACxB,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IACD,uFAAuF;IACvF,gBAAgB,EAAE,CAAC;IACnB,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,oBAAoB,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IACnF,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACnD,SAAS,CAAC,OAAO,CAAC,CAAC;IACnB,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAChD,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAS,gBAAgB,CAAC,MAAM,GAAG,MAAM;IACvC,IAAI,OAAO,CAAC,GAAG,CAAC,sBAAsB;QAAE,OAAO;IAC/C,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;YACpC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC;gBAAE,SAAS;YACrD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAC5B,IAAI,CAAC;gBACH,IAAI,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,MAAM;oBAAE,SAAS,CAAE,+BAA+B;gBACpF,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAChD,CAAC;YAAC,MAAM,CAAC;gBACP,4EAA4E;YAC9E,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,sCAAsC;IACxC,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,KAAK,UAAU,gBAAgB,CAC7B,WAA+B,EAC/B,GAAW,EACX,IAAiB;IAEjB,IAAI,WAAW,CAAC,kBAAkB,KAAK,SAAS;QAAE,OAAO;IACzD,8FAA8F;IAC9F,8FAA8F;IAC9F,cAAc;IACd,qFAAqF;IACrF,EAAE;IACF,2FAA2F;IAC3F,uFAAuF;IACvF,6FAA6F;IAC7F,uFAAuF;IACvF,yFAAyF;IACzF,2FAA2F;IAC3F,EAAE;IACF,8FAA8F;IAC9F,6FAA6F;IAC7F,MAAM,IAAI,GAAG,MAAM,WAAW,CAC5B,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC;QACZ,GAAI,CAAmB;QACvB,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,cAAc,EAAE,IAAI,CAAC,OAAO;QAC5B,gBAAgB,EAAE,KAAK;KACxB,CAIC,EACF,GAAG,EACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAC9C,CAAC;IAEF,0FAA0F;IAC1F,4FAA4F;IAC5F,6FAA6F;IAC7F,6DAA6D;IAC7D,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;QAChD,IAAI,WAAW,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YAC1C,yFAAyF;YACzF,uDAAuD;YACvD,WAAW,CAAC,WAAW,GAAG,gBAAgB,EAAE,CAAC;QAC/C,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,gCAAgC,IAAI,CAAC,aAAa,sCAAsC;gBACtF,aAAa,wBAAwB,sCAAsC;gBAC3E,2DAA2D,CAC9D,CAAC;QACJ,CAAC;QACD,OAAO;IACT,CAAC;IAED,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAClD,WAAW,CAAC,kBAAkB,GAAG,OAAO,CAAC;IACzC,6FAA6F;IAC7F,4FAA4F;IAC5F,2FAA2F;IAC3F,IAAI,WAAW,CAAC,WAAW,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QACzD,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,0FAA0F;YACxF,mFAAmF;YACnF,kFAAkF,CACrF,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,8BAA8B,CAAC,OAAuB,EAAE,WAAmB;IAClF,IAAI,IAAI,GAAG,KAAK,CAAC;IACjB,MAAM,MAAM,GAAG,KAAK,IAAI,EAAE;QACxB,IAAI,IAAI;YAAE,OAAO;QACjB,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC;YAC7C,IAAI,CAAC;gBACH,MAAM,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;gBACtD,IAAI,GAAG,IAAI,CAAC;gBACZ,OAAO;YACT,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,uBAAuB;YACvF,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IACF,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,KAAK,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,gGAAgG;IAChG,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE;QACxB,IAAI,IAAI;YAAE,OAAO;QACjB,IAAI,CAAC;YAAC,MAAM,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,0BAA0B,CAAC,CAAC;IACrG,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,aAAa,CAAC,OAAuB;IAC5C,MAAM,CAAC,GAAG,OAAwE,CAAC;IACnF,IAAI,CAAC,CAAC,UAAU,KAAK,SAAS;QAAE,CAAC,CAAC,UAAU,GAAG,KAAK,IAAI,EAAE,CAAC,OAAO,CAAC;IACnE,IAAI,CAAC,CAAC,QAAQ,KAAK,SAAS;QAAE,CAAC,CAAC,QAAQ,GAAG,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;IAC3D,OAAO,OAA6B,CAAC;AACvC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,UAAyB,EAAE;IACtD,8FAA8F;IAC9F,uFAAuF;IACvF,kFAAkF;IAClF,MAAM,EAAE,gBAAgB,EAAE,WAAW,EAAE,GAAG,QAAQ,EAAE,GAAG,OAGtD,CAAC;IACF,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,OAAO,aAAa,CAAC,MAAM,uBAAuB,CAAC,WAAW,EAAE,QAAoC,CAAC,CAAC,CAAC;IACzG,CAAC;IACD,IAAI,gBAAgB,KAAK,KAAK,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,gBAAgB,CAAC,CAAC,CAAC;QAC1D,MAAM,OAAO,GAAG,MAAM,uBAAuB,CAAC,GAAG,EAAE,QAAoC,CAAC,CAAC;QACzF,8BAA8B,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAC7C,OAAO,aAAa,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,eAAe,CAAC,QAAyB,CAAC,CAAC;AACpD,CAAC;AAED,4EAA4E;AAC5E,KAAK,UAAU,eAAe,CAAC,UAAyB,EAAE;IACxD,4FAA4F;IAC5F,4EAA4E;IAC5E,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,KAAK,MAAM,CAAC;IACjD,iFAAiF;IACjF,MAAM,MAAM,GACV,OAAO,CAAC,OAAO,IAAI,CAAC,aAAa;QAC/B,CAAC,CAAC,EAAE,GAAG,qBAAqB,CAAC,OAAO,CAAC,OAA2B,CAAC,EAAE,GAAG,OAAO,EAAE;QAC/E,CAAC,CAAC,OAAO,CAAC;IACd,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,cAAc,EAAE,UAAU,EAAE,qBAAqB,EAAE,cAAc,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;IAChP,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;IACrE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC9D,MAAM,QAAQ,GAAI,SAAqC,CAAC,KAAK,CAAC,CAAE,wCAAwC;IACxG,IAAI,KAAK;QAAE,MAAM,UAAU,CAAC,WAAW,EAAG,SAAqC,CAAC,KAAK,CAAC,CAAC;IACvF,mGAAmG;IACnG,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,YAAY,CAAE,SAAqC,CAAC,KAA4B,CAAC,CAAC;IACrH,kGAAkG;IAClG,IAAI,KAAK,KAAK,SAAS;QAAE,OAAQ,SAAqC,CAAC,KAAK,CAAC;IAC7E,qBAAqB,CACnB,EAAE,GAAG,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAG,SAAqC,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,EAC5H,KAAK,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClE,4FAA4F;IAC5F,MAAM,GAAG,GAAG,MAAM,cAAc,CAAC,EAAE,cAAc,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,WAAW,CAAC,UAAU,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;IACpJ,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACxB,sFAAsF;IACtF,2FAA2F;IAC3F,oFAAoF;IACpF,6FAA6F;IAC7F,+DAA+D;IAC/D,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,gBAAgB,CAAC,WAAW,EAAE,GAAG,EAAE;YACvC,KAAK;YACL,UAAU,EAAE,iBAAiB,CAAC,UAAU,CAAC;YACzC,uFAAuF;YACvF,uFAAuF;YACvF,OAAO,EAAE,cAAc;YACvB,GAAG,CAAC,OAAO,CAAC,aAAa,IAAI,EAAE,CAAC;SACjC,CAAC,CAAC;IACL,CAAC;IACD,MAAM,MAAM,GAAI,SAAqC,CAAC,QAAQ,KAAK,KAAK,CAAC;IACzE,2FAA2F;IAC3F,uFAAuF;IACvF,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC;QAC/B,UAAU,EAAE,cAAc,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW;QAC1D,6FAA6F;QAC7F,aAAa,EAAE,GAAG,EAAE,CAAC,qBAAqB,CAAC,OAAO,EAAE,CAAC,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;KACrF,CAAC,CAAC;IACH,gGAAgG;IAChG,MAAM,SAAS,GAAG,aAAa,CAAC,GAAG,EAAG,SAAqC,CAAC,GAAG,CAAC,CAAC;IACjF,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5E,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC5D,6FAA6F;QAC7F,4FAA4F;QAC5F,iBAAiB,EAAE,CAAC,qBAAqB,CAAC;QAC1C,GAAI,SAAqC;QACzC,cAAc,EAAE,OAAO;QACvB,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1C,IAAI,EAAE,YAAY,CAAC,eAAe,CAAC,WAAW,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC,UAAU,CAAC,EAAE,SAAS,EAAE,qBAAqB,EAAE,WAAW,CAAC,QAAQ,EAAE,IAAI,IAAI,EAAE,EAAE,QAA+B,CAAC;KACnM,CAAC,EAAE,GAAG,CAAC,CAAC;IACT,wDAAwD;IACxD,IAAI,KAAK;QAAE,OAAO,CAAC,EAAE,CAAC,cAAc,EAAE,GAAG,EAAE,GAAG,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACpE,IAAI,MAAM;QAAE,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,+DAA+D;IAC3G,eAAe,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,+BAA+B;IAClH,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,WAAmB,EACnB,UAAoC,EAAE;IAEtC,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,qBAAqB,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;IACrG,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,qBAAqB,EAAE,cAAc,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;IAC3N,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;IACrE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC9D,MAAM,QAAQ,GAAI,SAAqC,CAAC,KAAK,CAAC,CAAE,wCAAwC;IACxG,IAAI,KAAK;QAAE,MAAM,UAAU,CAAC,WAAW,EAAG,SAAqC,CAAC,KAAK,CAAC,CAAC;IACvF,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,YAAY,CAAE,SAAqC,CAAC,KAA4B,CAAC,CAAC;IACrH,IAAI,KAAK,KAAK,SAAS;QAAE,OAAQ,SAAqC,CAAC,KAAK,CAAC;IAC7E,qBAAqB,CACnB,EAAE,GAAG,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAG,SAAqC,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,EAC5H,KAAK,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClE,MAAM,IAAI,GAAG,SAA4D,CAAC;IAC1E,0FAA0F;IAC1F,IAAI,IAAI,CAAC,QAAQ,KAAK,KAAK,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;QAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACjF,+FAA+F;IAC/F,sGAAsG;IACtG,mGAAmG;IACnG,8FAA8F;IAC9F,IAAI,iBAAiB,GAClB,IAAI,CAAC,iBAAoD,IAAI,CAAC,qBAAqB,CAAC,CAAC;IACxF,IAAI,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC;IAC1B,IAAI,QAAQ,EAAE,CAAC;QACb,IAAI,CAAC;YACH,MAAM,YAAY,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YAC3C,6FAA6F;YAC7F,4FAA4F;YAC5F,MAAM,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC;YACnE,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACtG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sKAAsK,CAAC,CAAC;YAC/L,CAAC;YACD,MAAM,KAAK,GAAG,YAAY,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;YACxD,iBAAiB,GAAG,KAAK,CAAC,iBAAiB,CAAC;YAC5C,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC;QACxB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,KAAK;gBAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iEAAiE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACnH,CAAC;IACH,CAAC;IACD,OAAQ,IAAgC,CAAC,iBAAiB,CAAC,CAAE,0BAA0B;IACvF,4FAA4F;IAC5F,MAAM,GAAG,GAAG,MAAM,cAAc,CAAC,EAAE,cAAc,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,WAAW,CAAC,UAAU,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;IACpJ,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACxB,mGAAmG;IACnG,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC;QAC/B,UAAU,EAAE,cAAc,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW;QAC1D,6FAA6F;QAC7F,aAAa,EAAE,GAAG,EAAE,CAAC,qBAAqB,CAAC,OAAO,EAAE,CAAC,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;KACrF,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,EAAG,IAAgC,CAAC,GAAG,CAAC,CAAC;IACzE,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACtE,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC,WAAW,EAAE;QAC1F,GAAG,IAAI;QACP,iBAAiB,EAAG,uEAAuE;QAC3F,cAAc,EAAE,OAAO;QACvB,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1C,IAAI,EAAE,YAAY,CAAC,eAAe,CAAC,WAAW,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC,UAAU,CAAC,EAAE,SAAS,EAAE,qBAAqB,EAAE,WAAW,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAA+B,CAAC;KACjM,CAAC,EAAE,GAAG,CAAC,CAAC;IACT,IAAI,KAAK;QAAE,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7D,wBAAwB,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,+BAA+B;IAC3H,OAAO,OAAO,CAAC;AACjB,CAAC;AAQD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,UAA8B,EAAE;IAChE,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IACzC,MAAM,GAAG,GAAG,WAAW,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAC3E,OAAO,uBAAuB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AAC5C,CAAC;AAED,6CAA6C;AAC7C,SAAS,QAAQ;IACf,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,CAAC,GAAG,YAAY,EAAE,CAAC;QACzB,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACxB,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE;YAC5B,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;YACzB,MAAM,IAAI,GAAG,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9D,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAiBD,uFAAuF;AACvF,MAAM,OAAO,MAAM;IAEE;IACR;IACA;IACQ;IACA;IACA;IANnB,YACmB,IAAkB,EAC1B,IAAY,EACZ,IAAY,EACJ,WAAmB,EACnB,MAAe,EACf,KAA2B;QAL3B,SAAI,GAAJ,IAAI,CAAc;QAC1B,SAAI,GAAJ,IAAI,CAAQ;QACZ,SAAI,GAAJ,IAAI,CAAQ;QACJ,gBAAW,GAAX,WAAW,CAAQ;QACnB,WAAM,GAAN,MAAM,CAAS;QACf,UAAK,GAAL,KAAK,CAAsB;IAC3C,CAAC;IACJ,sFAAsF;IACtF,IAAI,MAAM;QACR,OAAO,UAAU,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;IAC5C,CAAC;IACD,gGAAgG;IAChG,KAAK,CAAC,KAAK;QACT,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,eAAe,CAAC,CAAC;YACrD,OAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAuC,CAAC,oBAAoB,CAAC;QACtF,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO;QACL,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAC1D,CAAC;IACD,KAAK,CAAC,KAAK;QACT,IAAI,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC5B,CAAC;QAAC,MAAM,CAAC;YACP,YAAY;QACd,CAAC;QACD,8CAA8C;QAC9C,IAAI,CAAC;YAAC,MAAM,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;QACxD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,IAAI,CAAC;gBACH,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7D,CAAC;YAAC,MAAM,CAAC;gBACP,YAAY;YACd,CAAC;QACH,CAAC;IACH,CAAC;CACF;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,KAAK,UAAU,KAAK,CAAC,UAAwB,EAAE;IACpD,MAAM,EACJ,IAAI,EACJ,IAAI,GAAG,WAAW,EAClB,YAAY,EACZ,WAAW,EAAE,SAAS,EACtB,QAAQ,GAAG,IAAI,EACf,cAAc,GAAG,KAAK,EACtB,QAAQ,EAAE,SAAS,EAAE,qDAAqD;IAC1E,UAAU,EAAE,WAAW,EACvB,GAAG,UAAU,EACd,GAAG,OAAO,CAAC;IAEZ,gFAAgF;IAChF,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO;QAC/B,CAAC,CAAC,EAAE,GAAG,qBAAqB,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,GAAG,UAAU,EAAE;QACjE,CAAC,CAAC,UAAU,CAAC;IACf,MAAM,EACJ,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,qBAAqB,EAAE,cAAc,EAAE,SAAS,EAC/E,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,GAAG,IAAI,EACjG,GAAG,MAAM,CAAC;IACX,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;IACrE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC9D,MAAM,QAAQ,GAAI,SAAqC,CAAC,KAA4B,CAAC;IACrF,IAAI,KAAK;QAAE,MAAM,UAAU,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IACnD,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;IACnD,qBAAqB,CACnB,EAAE,GAAG,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,IAAI,EAAE,EAAE,EAC/E,KAAK,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClE,4FAA4F;IAC5F,MAAM,GAAG,GAAG,MAAM,cAAc,CAAC,EAAE,cAAc,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,WAAW,CAAC,UAAU,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;IACpJ,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACxB,MAAM,UAAU,GAAG,YAAY,CAC7B,eAAe,CAAC,WAAW,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC,UAAU,CAAC,EACzE,SAAS,EAAE,qBAAqB,EAAE,WAAW,CAAC,QAAQ,EAAE,QAAQ,IAAI,EAAE,EAAE,QAAQ,CAAC,CAAC;IAEpF,MAAM,YAAY,GAAG,IAAI,IAAI,CAAC,MAAM,QAAQ,EAAE,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG,CAAC,SAAS,CAAC;IAC1B,MAAM,WAAW,GAAG,SAAS,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,kBAAkB,CAAC,CAAC,CAAC;IACjF,MAAM,OAAO,GAAG,YAAY,IAAI,UAAU,IAAI,IAAI,YAAY,qBAAqB,YAAY,EAAE,CAAC;IAClG,MAAM,OAAO,GAAG;QACd,2BAA2B,YAAY,EAAE;QACzC,8BAA8B,IAAI,EAAE;QACpC,0BAA0B,OAAO,EAAE;QACnC,mBAAmB,WAAW,EAAE;KACjC,CAAC;IACF,IAAI,QAAQ;QAAE,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC7C,IAAI,QAAQ,EAAE,MAAM;QAAE,OAAO,CAAC,IAAI,CAAC,kBAAkB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAExE,mGAAmG;IACnG,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC;QAC/B,UAAU,EAAE,cAAc,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW;QAC1D,6FAA6F;QAC7F,aAAa,EAAE,GAAG,EAAE,CAAC,qBAAqB,CAAC,OAAO,EAAE,CAAC,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;KACrF,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IACjI,kGAAkG;IAClG,8FAA8F;IAC9F,gGAAgG;IAChG,MAAM,IAAI,GAAG,MAAM,UAAU,CAC3B,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,OAAO,CAAe,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACzD,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,GAAG,UAAU,EAAE,GAAG,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QAChF,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;YAAC,OAAO,GAAG,IAAI,CAAC;YAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7E,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;YAAC,OAAO,GAAG,IAAI,CAAC;YAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3E,CAAC,CAAC,EACF,GAAG,CACJ,CAAC;IAEF,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,cAAc,CAAC;IAC7C,IAAI,KAAK,GAAG,KAAK,CAAC;IAClB,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;QAC7B,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI;YAAE,MAAM;QAClC,IAAI,CAAC;YACH,MAAM,KAAK,CAAC,UAAU,IAAI,IAAI,YAAY,eAAe,CAAC,CAAC;YAC3D,KAAK,GAAG,IAAI,CAAC;YACb,MAAM;QACR,CAAC;QAAC,MAAM,CAAC;YACP,gBAAgB;QAClB,CAAC;QACD,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IAC/C,CAAC;IACD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,IAAI,CAAC;YAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;QAC3C,IAAI,CAAC;YAAC,MAAM,KAAK,EAAE,IAAI,EAAE,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;QACnD,IAAI,MAAM,EAAE,CAAC;YAAC,IAAI,CAAC;gBAAC,MAAM,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;QAAC,CAAC;QACrG,MAAM,IAAI,KAAK,CACb,2CAA2C,IAAI,IAAI,YAAY,2BAA2B,cAAc,IAAI,CAAC,CAAC;IAClH,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC7E,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,KAAK,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAClD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,mCAAmC,GAAG,CAAC,MAAM,IAAI;YACjD,iDAAiD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,yCAAyC,CAAC,CAAC;IAC1H,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,iGAAiG;AACjG,mGAAmG;AACnG,gGAAgG;AAChG,MAAM,WAAW,GAAW,CAAC,GAAG,EAAE;IAChC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,OAAiB,CAAC;IACzG,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;AACH,CAAC,CAAC,EAAE,CAAC;AACL,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACzD,eAAe;IACb,MAAM;IACN,uBAAuB;IACvB,WAAW;IACX,KAAK;IACL,MAAM;IACN,cAAc;IACd,QAAQ;IACR,YAAY;IACZ,OAAO;IACP,YAAY;IACZ,WAAW;IACX,aAAa;IACb,YAAY;IACZ,OAAO;CACR,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -53,6 +53,24 @@ export declare function quicArgs(proxy: PwProxy | undefined): string[];
53
53
  * that genuinely need UDP will not establish. Callers who need working WebRTC through a proxy want
54
54
  * a transport that actually carries UDP (SOCKS5 with UDP ASSOCIATE, or a full tunnel) and can set
55
55
  * their own policy to opt out. */
56
+ /**
57
+ * Switches to expose `navigator.bluetooth` on Linux hosts (empty elsewhere).
58
+ *
59
+ * Web Bluetooth is compiled into the engine but runtime-disabled on Linux only:
60
+ * Chromium's runtime_enabled_features.json5 gives WebBluetooth status "stable" on Win/Mac/Android/
61
+ * ChromeOS and lets Linux fall through to "default": "experimental", and content_features.cc
62
+ * declares kWebBluetooth FEATURE_DISABLED_BY_DEFAULT. So a Linux host serving a Windows persona
63
+ * reports navigator.usb, navigator.serial and navigator.hid but NOT navigator.bluetooth - a
64
+ * combination no real Windows Chrome produces, and an OS-origin tell that survives every string
65
+ * spoof. One flag restores it on the shipped binary; no rebuild is involved.
66
+ *
67
+ * Verified against Chromium 150's bluetooth.idl: getDevices() is gated on WebBluetoothGetDevices
68
+ * and requestLEScan()/onadvertisementreceived on WebBluetoothScanning, both "experimental", so
69
+ * real stable Chrome exposes exactly {constructor, getAvailability, requestDevice} - which is what
70
+ * this flag produces. getAvailability() resolves false and requestDevice() rejects NotFoundError
71
+ * on a machine with no adapter, matching a real desktop without Bluetooth hardware.
72
+ */
73
+ export declare function webBluetoothArgs(): string[];
56
74
  export declare function webrtcDefaultDenyArgs(args: string[], _webrtcIp?: unknown): string[];
57
75
  /** Switches to load unpacked extensions. Chromium needs BOTH --load-extension=<dirs> and
58
76
  * --disable-extensions-except=<dirs> (the latter keeps the listed extensions enabled while
@@ -1 +1 @@
1
- {"version":3,"file":"launchopts.d.ts","sourceRoot":"","sources":["../src/launchopts.ts"],"names":[],"mappings":"AAIA,qCAAqC;AACrC,MAAM,WAAW,OAAO;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;kFAWkF;AAClF,eAAO,MAAM,wBAAwB,yJAG3B,CAAC;AAEX;;;cAGc;AACd,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAa1D;AAED,sEAAsE;AACtE,wBAAgB,kBAAkB,IAAI,MAAM,EAAE,CAE7C;AAED;;;oCAGoC;AACpC,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,EAAE,CAE7D;AAED;;;;;;;;;;;;;;;;;;;;;;kCAsBkC;AAClC,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,EAAE,CAKnF;AAED;;sFAEsF;AACtF,wBAAgB,aAAa,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAIxD;AAED;;;;;8FAK8F;AAC9F,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,SAAS,GAAG;IAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,OAAO,GAAG,SAAS,CAAA;CAAE,CAcvG"}
1
+ {"version":3,"file":"launchopts.d.ts","sourceRoot":"","sources":["../src/launchopts.ts"],"names":[],"mappings":"AAIA,qCAAqC;AACrC,MAAM,WAAW,OAAO;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;kFAWkF;AAClF,eAAO,MAAM,wBAAwB,yJAG3B,CAAC;AAEX;;;cAGc;AACd,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAa1D;AAED,sEAAsE;AACtE,wBAAgB,kBAAkB,IAAI,MAAM,EAAE,CAE7C;AAED;;;oCAGoC;AACpC,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,EAAE,CAE7D;AAED;;;;;;;;;;;;;;;;;;;;;;kCAsBkC;AAClC;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,EAAE,CAG3C;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,EAAE,CAKnF;AAED;;sFAEsF;AACtF,wBAAgB,aAAa,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAIxD;AAED;;;;;8FAK8F;AAC9F,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,SAAS,GAAG;IAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,OAAO,GAAG,SAAS,CAAA;CAAE,CAcvG"}
@@ -74,6 +74,28 @@ export function quicArgs(proxy) {
74
74
  * that genuinely need UDP will not establish. Callers who need working WebRTC through a proxy want
75
75
  * a transport that actually carries UDP (SOCKS5 with UDP ASSOCIATE, or a full tunnel) and can set
76
76
  * their own policy to opt out. */
77
+ /**
78
+ * Switches to expose `navigator.bluetooth` on Linux hosts (empty elsewhere).
79
+ *
80
+ * Web Bluetooth is compiled into the engine but runtime-disabled on Linux only:
81
+ * Chromium's runtime_enabled_features.json5 gives WebBluetooth status "stable" on Win/Mac/Android/
82
+ * ChromeOS and lets Linux fall through to "default": "experimental", and content_features.cc
83
+ * declares kWebBluetooth FEATURE_DISABLED_BY_DEFAULT. So a Linux host serving a Windows persona
84
+ * reports navigator.usb, navigator.serial and navigator.hid but NOT navigator.bluetooth - a
85
+ * combination no real Windows Chrome produces, and an OS-origin tell that survives every string
86
+ * spoof. One flag restores it on the shipped binary; no rebuild is involved.
87
+ *
88
+ * Verified against Chromium 150's bluetooth.idl: getDevices() is gated on WebBluetoothGetDevices
89
+ * and requestLEScan()/onadvertisementreceived on WebBluetoothScanning, both "experimental", so
90
+ * real stable Chrome exposes exactly {constructor, getAvailability, requestDevice} - which is what
91
+ * this flag produces. getAvailability() resolves false and requestDevice() rejects NotFoundError
92
+ * on a machine with no adapter, matching a real desktop without Bluetooth hardware.
93
+ */
94
+ export function webBluetoothArgs() {
95
+ if (process.platform !== "linux")
96
+ return []; // Win/Mac ship it stable
97
+ return ["--enable-features=WebBluetooth"];
98
+ }
77
99
  export function webrtcDefaultDenyArgs(args, _webrtcIp) {
78
100
  if (args.some((a) => a.startsWith("--webrtc-ip-handling-policy") || a.startsWith("--force-webrtc-ip-handling-policy"))) {
79
101
  return [];
@@ -1 +1 @@
1
- {"version":3,"file":"launchopts.js","sourceRoot":"","sources":["../src/launchopts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"launchopts.js","sourceRoot":"","sources":["../src/launchopts.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "clearcote",
3
- "version": "0.23.0",
3
+ "version": "0.25.0",
4
4
  "description": "Playwright drop-in for the Clearcote anti-fingerprint Chromium build. launch() returns a standard Playwright Browser backed by the verified Clearcote binary, which is auto-downloaded and SHA-256 checked.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",