cloakbrowser 0.3.28 → 0.3.30
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 +7 -0
- package/dist/args.d.ts +0 -3
- package/dist/args.d.ts.map +1 -1
- package/dist/args.js +7 -0
- package/dist/args.js.map +1 -1
- package/dist/config.d.ts +1 -1
- package/dist/config.js +3 -3
- package/dist/human/actionability.d.ts +45 -0
- package/dist/human/actionability.d.ts.map +1 -0
- package/dist/human/actionability.js +274 -0
- package/dist/human/actionability.js.map +1 -0
- package/dist/human/config.d.ts +1 -0
- package/dist/human/config.d.ts.map +1 -1
- package/dist/human/config.js.map +1 -1
- package/dist/human/elementhandle.d.ts.map +1 -1
- package/dist/human/elementhandle.js +53 -4
- package/dist/human/elementhandle.js.map +1 -1
- package/dist/human/index.d.ts.map +1 -1
- package/dist/human/index.js +108 -14
- package/dist/human/index.js.map +1 -1
- package/dist/human/scroll.d.ts +4 -0
- package/dist/human/scroll.d.ts.map +1 -1
- package/dist/human/scroll.js +5 -3
- package/dist/human/scroll.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/playwright.d.ts +12 -1
- package/dist/playwright.d.ts.map +1 -1
- package/dist/playwright.js +35 -21
- package/dist/playwright.js.map +1 -1
- package/dist/puppeteer.d.ts +23 -2
- package/dist/puppeteer.d.ts.map +1 -1
- package/dist/puppeteer.js +93 -58
- package/dist/puppeteer.js.map +1 -1
- package/dist/types.d.ts +2 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/playwright.js
CHANGED
|
@@ -36,20 +36,12 @@ function filterStealthCtxOptions(ctx) {
|
|
|
36
36
|
return rest;
|
|
37
37
|
}
|
|
38
38
|
/**
|
|
39
|
-
*
|
|
39
|
+
* Build Playwright launch options for CloakBrowser without starting Chromium.
|
|
40
40
|
*
|
|
41
|
-
*
|
|
42
|
-
*
|
|
43
|
-
* import { launch } from 'cloakbrowser';
|
|
44
|
-
* const browser = await launch();
|
|
45
|
-
* const page = await browser.newPage();
|
|
46
|
-
* await page.goto('https://bot.incolumitas.com');
|
|
47
|
-
* console.log(await page.title());
|
|
48
|
-
* await browser.close();
|
|
49
|
-
* ```
|
|
41
|
+
* Useful when integrating CloakBrowser with a custom Playwright build or another
|
|
42
|
+
* wrapper that needs to call `chromium.launch()` itself.
|
|
50
43
|
*/
|
|
51
|
-
export async function
|
|
52
|
-
const { chromium } = await import("playwright-core");
|
|
44
|
+
export async function buildLaunchOptions(options = {}) {
|
|
53
45
|
const binaryPath = process.env.CLOAKBROWSER_BINARY_PATH || (await ensureBinary());
|
|
54
46
|
const { exitIp, ...resolved } = await maybeResolveGeoip(options);
|
|
55
47
|
const { proxyOption, proxyArgs } = resolveProxyConfig(options.proxy);
|
|
@@ -58,21 +50,43 @@ export async function launch(options = {}) {
|
|
|
58
50
|
resolvedArgs = [...(resolvedArgs ?? []), `--fingerprint-webrtc-ip=${exitIp}`];
|
|
59
51
|
}
|
|
60
52
|
const args = buildArgs({ ...options, ...resolved, args: [...(resolvedArgs ?? []), ...proxyArgs] });
|
|
61
|
-
|
|
53
|
+
return {
|
|
62
54
|
executablePath: binaryPath,
|
|
63
55
|
headless: options.headless ?? true,
|
|
64
56
|
args,
|
|
65
57
|
ignoreDefaultArgs: IGNORE_DEFAULT_ARGS,
|
|
66
58
|
...(proxyOption ? { proxy: proxyOption } : {}),
|
|
67
59
|
...options.launchOptions,
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Apply CloakBrowser's human-like behavioral layer to an existing Playwright browser.
|
|
64
|
+
*/
|
|
65
|
+
export async function humanizeBrowser(browser, options = {}) {
|
|
66
|
+
if (!options.humanize)
|
|
67
|
+
return;
|
|
68
|
+
const { patchBrowser } = await import('./human/index.js');
|
|
69
|
+
const { resolveConfig } = await import('./human/config.js');
|
|
70
|
+
const cfg = resolveConfig(options.humanPreset ?? 'default', options.humanConfig);
|
|
71
|
+
patchBrowser(browser, cfg);
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Launch stealth Chromium browser via Playwright.
|
|
75
|
+
*
|
|
76
|
+
* @example
|
|
77
|
+
* ```ts
|
|
78
|
+
* import { launch } from 'cloakbrowser';
|
|
79
|
+
* const browser = await launch();
|
|
80
|
+
* const page = await browser.newPage();
|
|
81
|
+
* await page.goto('https://bot.incolumitas.com');
|
|
82
|
+
* console.log(await page.title());
|
|
83
|
+
* await browser.close();
|
|
84
|
+
* ```
|
|
85
|
+
*/
|
|
86
|
+
export async function launch(options = {}) {
|
|
87
|
+
const { chromium } = await import("playwright-core");
|
|
88
|
+
const browser = await chromium.launch(await buildLaunchOptions(options));
|
|
89
|
+
await humanizeBrowser(browser, options);
|
|
76
90
|
return browser;
|
|
77
91
|
}
|
|
78
92
|
/**
|
package/dist/playwright.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"playwright.js","sourceRoot":"","sources":["../src/playwright.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAElE,sGAAsG;AACtG,MAAM,UAAU,eAAe,CAAuD,OAAU;IAC9F,IAAI,OAAO,CAAC,UAAU,IAAI,IAAI,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;QAChF,OAAQ,MAAc,CAAC,UAAU,CAAC;QAClC,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;GAIG;AACH,SAAS,uBAAuB,CAAC,GAA2B;IAC1D,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,CAAC;IACpB,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,GAAG,GAAG,CAAC;IAC5C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,CAAC,IAAI,CACV,wEAAwE;YACxE,wEAAwE,CACzE,CAAC;IACJ,CAAC;IACD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,CAAC,IAAI,CACV,8EAA8E;YAC9E,wEAAwE,CACzE,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"playwright.js","sourceRoot":"","sources":["../src/playwright.ts"],"names":[],"mappings":"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"}
|
package/dist/puppeteer.d.ts
CHANGED
|
@@ -11,13 +11,34 @@ import type { LaunchOptions } from "./types.js";
|
|
|
11
11
|
* @example
|
|
12
12
|
* ```ts
|
|
13
13
|
* import { launch } from 'cloakbrowser/puppeteer';
|
|
14
|
-
*
|
|
14
|
+
* // With humanize — human-like mouse, keyboard, scroll
|
|
15
15
|
* const browser = await launch({ humanize: true });
|
|
16
16
|
* const page = await browser.newPage();
|
|
17
|
-
* await page.goto('
|
|
17
|
+
* await page.goto('https://example.com');
|
|
18
18
|
* await page.click('#login'); // Bézier curve mouse movement
|
|
19
19
|
* await page.type('#email', 'user@example.com'); // Per-character timing
|
|
20
20
|
* ```
|
|
21
21
|
*/
|
|
22
22
|
export declare function launch(options?: LaunchOptions): Promise<Browser>;
|
|
23
|
+
/**
|
|
24
|
+
* Launch stealth Chromium with a persistent user profile via Puppeteer.
|
|
25
|
+
* Passes `userDataDir` to Puppeteer's launch options so cookies,
|
|
26
|
+
* localStorage, and session data persist across launches.
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* ```ts
|
|
30
|
+
* import { launchPersistentContext } from 'cloakbrowser/puppeteer';
|
|
31
|
+
* const browser = await launchPersistentContext({
|
|
32
|
+
* userDataDir: './chrome-profile',
|
|
33
|
+
* headless: false,
|
|
34
|
+
* proxy: 'http://user:pass@proxy:8080',
|
|
35
|
+
* });
|
|
36
|
+
* const page = await browser.newPage();
|
|
37
|
+
* await page.goto('https://example.com');
|
|
38
|
+
* await browser.close();
|
|
39
|
+
* ```
|
|
40
|
+
*/
|
|
41
|
+
export declare function launchPersistentContext(options: LaunchOptions & {
|
|
42
|
+
userDataDir: string;
|
|
43
|
+
}): Promise<Browser>;
|
|
23
44
|
//# sourceMappingURL=puppeteer.d.ts.map
|
package/dist/puppeteer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"puppeteer.d.ts","sourceRoot":"","sources":["../src/puppeteer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"puppeteer.d.ts","sourceRoot":"","sources":["../src/puppeteer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AA6EhD;;;;;;;;;;;;;GAaG;AACH,wBAAsB,MAAM,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,CAe1E;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,aAAa,GAAG;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,GAC/C,OAAO,CAAC,OAAO,CAAC,CAgBlB"}
|
package/dist/puppeteer.js
CHANGED
|
@@ -8,68 +8,46 @@ import { buildArgs } from "./args.js";
|
|
|
8
8
|
import { ensureBinary } from "./download.js";
|
|
9
9
|
import { isSocksProxy, parseProxyUrl, resolveProxyConfig } from "./proxy.js";
|
|
10
10
|
import { maybeResolveGeoip, resolveWebrtcArgs } from "./geoip.js";
|
|
11
|
-
/**
|
|
12
|
-
|
|
13
|
-
*
|
|
14
|
-
* @example
|
|
15
|
-
* ```ts
|
|
16
|
-
* import { launch } from 'cloakbrowser/puppeteer';
|
|
17
|
-
* * // With humanize — human-like mouse, keyboard, scroll
|
|
18
|
-
* const browser = await launch({ humanize: true });
|
|
19
|
-
* const page = await browser.newPage();
|
|
20
|
-
* await page.goto('[https://example.com](https://example.com)');
|
|
21
|
-
* await page.click('#login'); // Bézier curve mouse movement
|
|
22
|
-
* await page.type('#email', 'user@example.com'); // Per-character timing
|
|
23
|
-
* ```
|
|
24
|
-
*/
|
|
25
|
-
export async function launch(options = {}) {
|
|
26
|
-
const puppeteer = await import("puppeteer-core");
|
|
11
|
+
/** Resolve binary path, geoip, webrtc, and build final Chrome args. */
|
|
12
|
+
async function resolveArgs(options) {
|
|
27
13
|
const binaryPath = process.env.CLOAKBROWSER_BINARY_PATH || (await ensureBinary());
|
|
28
14
|
const { exitIp, ...resolved } = (await maybeResolveGeoip(options)) ?? {};
|
|
29
15
|
let resolvedArgs = (await resolveWebrtcArgs(options)) ?? options.args;
|
|
30
16
|
if (exitIp && !(resolvedArgs ?? []).some(a => a.startsWith("--fingerprint-webrtc-ip"))) {
|
|
31
17
|
resolvedArgs = [...(resolvedArgs ?? []), `--fingerprint-webrtc-ip=${exitIp}`];
|
|
32
18
|
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
if (username) {
|
|
49
|
-
proxyAuth = { username, password: password ?? "" };
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
else {
|
|
53
|
-
const parsed = parseProxyUrl(options.proxy.server);
|
|
54
|
-
args.push(`--proxy-server=${parsed.server}`);
|
|
55
|
-
if (options.proxy.bypass) {
|
|
56
|
-
args.push(`--proxy-bypass-list=${options.proxy.bypass}`);
|
|
57
|
-
}
|
|
58
|
-
const username = options.proxy.username ?? parsed.username;
|
|
59
|
-
const password = options.proxy.password ?? parsed.password;
|
|
60
|
-
if (username) {
|
|
61
|
-
proxyAuth = { username, password: password ?? "" };
|
|
62
|
-
}
|
|
63
|
-
}
|
|
19
|
+
return { binaryPath, args: buildArgs({ ...options, ...resolved, args: resolvedArgs }) };
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Resolve proxy into Chrome CLI args and optional HTTP auth credentials.
|
|
23
|
+
* SOCKS5: Chrome supports inline credentials natively (RFC 1929 auth).
|
|
24
|
+
* HTTP: Chrome does NOT support inline credentials — strip them and
|
|
25
|
+
* use page.authenticate() for Proxy-Authorization headers instead.
|
|
26
|
+
*/
|
|
27
|
+
function resolveProxy(options, args) {
|
|
28
|
+
if (!options.proxy)
|
|
29
|
+
return undefined;
|
|
30
|
+
if (isSocksProxy(options.proxy)) {
|
|
31
|
+
const { proxyArgs } = resolveProxyConfig(options.proxy);
|
|
32
|
+
args.push(...proxyArgs);
|
|
33
|
+
return undefined;
|
|
64
34
|
}
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
});
|
|
72
|
-
|
|
35
|
+
if (typeof options.proxy === "string") {
|
|
36
|
+
const { server, username, password } = parseProxyUrl(options.proxy);
|
|
37
|
+
args.push(`--proxy-server=${server}`);
|
|
38
|
+
return username ? { username, password: password ?? "" } : undefined;
|
|
39
|
+
}
|
|
40
|
+
const parsed = parseProxyUrl(options.proxy.server);
|
|
41
|
+
args.push(`--proxy-server=${parsed.server}`);
|
|
42
|
+
if (options.proxy.bypass) {
|
|
43
|
+
args.push(`--proxy-bypass-list=${options.proxy.bypass}`);
|
|
44
|
+
}
|
|
45
|
+
const username = options.proxy.username ?? parsed.username;
|
|
46
|
+
const password = options.proxy.password ?? parsed.password;
|
|
47
|
+
return username ? { username, password: password ?? "" } : undefined;
|
|
48
|
+
}
|
|
49
|
+
/** Apply proxy auth monkey-patch and humanize behavioral patching. */
|
|
50
|
+
async function applyPostLaunch(browser, options, proxyAuth) {
|
|
73
51
|
if (proxyAuth) {
|
|
74
52
|
const origNewPage = browser.newPage.bind(browser);
|
|
75
53
|
const auth = proxyAuth;
|
|
@@ -79,15 +57,72 @@ export async function launch(options = {}) {
|
|
|
79
57
|
return page;
|
|
80
58
|
};
|
|
81
59
|
}
|
|
82
|
-
// Human-like behavioral patching — FULL coverage, same as Playwright.
|
|
83
|
-
// This enables Bézier mouse movements, organic typing rhythms, and
|
|
84
|
-
// natural scrolling to bypass advanced anti-bot detection.
|
|
85
60
|
if (options.humanize) {
|
|
86
61
|
const { patchBrowser } = await import('./human-puppeteer/index.js');
|
|
87
62
|
const { resolveConfig } = await import('./human/config.js');
|
|
88
63
|
const cfg = resolveConfig(options.humanPreset ?? 'default', options.humanConfig);
|
|
89
64
|
patchBrowser(browser, cfg);
|
|
90
65
|
}
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Launch stealth Chromium browser via Puppeteer.
|
|
69
|
+
*
|
|
70
|
+
* @example
|
|
71
|
+
* ```ts
|
|
72
|
+
* import { launch } from 'cloakbrowser/puppeteer';
|
|
73
|
+
* // With humanize — human-like mouse, keyboard, scroll
|
|
74
|
+
* const browser = await launch({ humanize: true });
|
|
75
|
+
* const page = await browser.newPage();
|
|
76
|
+
* await page.goto('https://example.com');
|
|
77
|
+
* await page.click('#login'); // Bézier curve mouse movement
|
|
78
|
+
* await page.type('#email', 'user@example.com'); // Per-character timing
|
|
79
|
+
* ```
|
|
80
|
+
*/
|
|
81
|
+
export async function launch(options = {}) {
|
|
82
|
+
const puppeteer = await import("puppeteer-core");
|
|
83
|
+
const { binaryPath, args } = await resolveArgs(options);
|
|
84
|
+
const proxyAuth = resolveProxy(options, args);
|
|
85
|
+
const browser = await puppeteer.default.launch({
|
|
86
|
+
...options.launchOptions,
|
|
87
|
+
executablePath: binaryPath,
|
|
88
|
+
headless: options.headless ?? true,
|
|
89
|
+
args,
|
|
90
|
+
ignoreDefaultArgs: IGNORE_DEFAULT_ARGS,
|
|
91
|
+
});
|
|
92
|
+
await applyPostLaunch(browser, options, proxyAuth);
|
|
93
|
+
return browser;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Launch stealth Chromium with a persistent user profile via Puppeteer.
|
|
97
|
+
* Passes `userDataDir` to Puppeteer's launch options so cookies,
|
|
98
|
+
* localStorage, and session data persist across launches.
|
|
99
|
+
*
|
|
100
|
+
* @example
|
|
101
|
+
* ```ts
|
|
102
|
+
* import { launchPersistentContext } from 'cloakbrowser/puppeteer';
|
|
103
|
+
* const browser = await launchPersistentContext({
|
|
104
|
+
* userDataDir: './chrome-profile',
|
|
105
|
+
* headless: false,
|
|
106
|
+
* proxy: 'http://user:pass@proxy:8080',
|
|
107
|
+
* });
|
|
108
|
+
* const page = await browser.newPage();
|
|
109
|
+
* await page.goto('https://example.com');
|
|
110
|
+
* await browser.close();
|
|
111
|
+
* ```
|
|
112
|
+
*/
|
|
113
|
+
export async function launchPersistentContext(options) {
|
|
114
|
+
const puppeteer = await import("puppeteer-core");
|
|
115
|
+
const { binaryPath, args } = await resolveArgs(options);
|
|
116
|
+
const proxyAuth = resolveProxy(options, args);
|
|
117
|
+
const browser = await puppeteer.default.launch({
|
|
118
|
+
...options.launchOptions,
|
|
119
|
+
executablePath: binaryPath,
|
|
120
|
+
headless: options.headless ?? true,
|
|
121
|
+
args,
|
|
122
|
+
ignoreDefaultArgs: IGNORE_DEFAULT_ARGS,
|
|
123
|
+
userDataDir: options.userDataDir,
|
|
124
|
+
});
|
|
125
|
+
await applyPostLaunch(browser, options, proxyAuth);
|
|
91
126
|
return browser;
|
|
92
127
|
}
|
|
93
128
|
//# sourceMappingURL=puppeteer.js.map
|
package/dist/puppeteer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"puppeteer.js","sourceRoot":"","sources":["../src/puppeteer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAElE
|
|
1
|
+
{"version":3,"file":"puppeteer.js","sourceRoot":"","sources":["../src/puppeteer.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -20,6 +20,8 @@ export interface LaunchOptions {
|
|
|
20
20
|
};
|
|
21
21
|
/** Additional Chromium CLI arguments. */
|
|
22
22
|
args?: string[];
|
|
23
|
+
/** Chrome extension paths to load. */
|
|
24
|
+
extensionPaths?: string[];
|
|
23
25
|
/** Include default stealth fingerprint args (default: true). Set false to use custom --fingerprint flags. */
|
|
24
26
|
stealthArgs?: boolean;
|
|
25
27
|
/** IANA timezone, e.g. "America/New_York". Sets --fingerprint-timezone binary flag. */
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAElE,MAAM,WAAW,aAAa;IAC5B,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3F,yCAAyC;IACzC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,6GAA6G;IAC7G,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,uFAAuF;IACvF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4DAA4D;IAC5D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kFAAkF;IAClF,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,oEAAoE;IACpE,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qDAAqD;IACrD,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,qDAAqD;IACrD,WAAW,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,oBAAqB,SAAQ,aAAa;IACzD,gCAAgC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qBAAqB;IACrB,QAAQ,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACpD,oCAAoC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0DAA0D;IAC1D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qEAAqE;IACrE,WAAW,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,eAAe,CAAC;IACjD;;;;;;;OAOG;IACH,cAAc,CAAC,EAAE,qBAAqB,CAAC;CACxC;AAED,MAAM,WAAW,8BAA+B,SAAQ,oBAAoB;IAC1E,0DAA0D;IAC1D,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAElE,MAAM,WAAW,aAAa;IAC5B,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3F,yCAAyC;IACzC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,sCAAsC;IACtC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,6GAA6G;IAC7G,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,uFAAuF;IACvF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4DAA4D;IAC5D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kFAAkF;IAClF,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,oEAAoE;IACpE,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qDAAqD;IACrD,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,qDAAqD;IACrD,WAAW,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,oBAAqB,SAAQ,aAAa;IACzD,gCAAgC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qBAAqB;IACrB,QAAQ,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACpD,oCAAoC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0DAA0D;IAC1D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qEAAqE;IACrE,WAAW,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,eAAe,CAAC;IACjD;;;;;;;OAOG;IACH,cAAc,CAAC,EAAE,qBAAqB,CAAC;CACxC;AAED,MAAM,WAAW,8BAA+B,SAAQ,oBAAoB;IAC1E,0DAA0D;IAC1D,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "cloakbrowser",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.30",
|
|
4
4
|
"description": "Stealth Chromium that passes every bot detection test. Drop-in Playwright/Puppeteer replacement with source-level fingerprint patches.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|