jumpy-lion 0.0.41 → 0.0.43
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/dist/browser-controller.d.ts.map +1 -1
- package/dist/browser-controller.js +102 -16
- package/dist/browser-controller.js.map +1 -1
- package/dist/browser-plugin.d.ts +20 -1
- package/dist/browser-plugin.d.ts.map +1 -1
- package/dist/browser-plugin.js +21 -1
- package/dist/browser-plugin.js.map +1 -1
- package/dist/browser-process/browser.d.ts +22 -1
- package/dist/browser-process/browser.d.ts.map +1 -1
- package/dist/browser-process/browser.js +77 -5
- package/dist/browser-process/browser.js.map +1 -1
- package/dist/browser-profiles/chrome/default.d.ts +116 -0
- package/dist/browser-profiles/chrome/default.d.ts.map +1 -1
- package/dist/browser-profiles/chrome/default.js +118 -1
- package/dist/browser-profiles/chrome/default.js.map +1 -1
- package/dist/browser-profiles/chrome/populate-profile.d.ts +76 -0
- package/dist/browser-profiles/chrome/populate-profile.d.ts.map +1 -0
- package/dist/browser-profiles/chrome/populate-profile.js +300 -0
- package/dist/browser-profiles/chrome/populate-profile.js.map +1 -0
- package/dist/browser-profiles/index.d.ts +1 -0
- package/dist/browser-profiles/index.d.ts.map +1 -1
- package/dist/browser-profiles/index.js +2 -0
- package/dist/browser-profiles/index.js.map +1 -1
- package/dist/crawler.d.ts +32 -1
- package/dist/crawler.d.ts.map +1 -1
- package/dist/crawler.js +7 -0
- package/dist/crawler.js.map +1 -1
- package/dist/fingerprinting/custom-fingerprint-injector.d.ts +87 -0
- package/dist/fingerprinting/custom-fingerprint-injector.d.ts.map +1 -0
- package/dist/fingerprinting/custom-fingerprint-injector.js +342 -0
- package/dist/fingerprinting/custom-fingerprint-injector.js.map +1 -0
- package/dist/fingerprinting/fingerprint-injector.d.ts +40 -2
- package/dist/fingerprinting/fingerprint-injector.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-injector.js +452 -44
- package/dist/fingerprinting/fingerprint-injector.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/audio-spoofing.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/audio-spoofing.js +11 -1
- package/dist/fingerprinting/fingerprint-overrides/audio-spoofing.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/canvas-protection.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/canvas-protection.js +11 -1
- package/dist/fingerprinting/fingerprint-overrides/canvas-protection.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/cdp-detection-bypass.d.ts +14 -0
- package/dist/fingerprinting/fingerprint-overrides/cdp-detection-bypass.d.ts.map +1 -0
- package/dist/fingerprinting/fingerprint-overrides/cdp-detection-bypass.js +776 -0
- package/dist/fingerprinting/fingerprint-overrides/cdp-detection-bypass.js.map +1 -0
- package/dist/fingerprinting/fingerprint-overrides/client-rect-spoofing.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/client-rect-spoofing.js +11 -1
- package/dist/fingerprinting/fingerprint-overrides/client-rect-spoofing.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/datadome-bypass.d.ts +14 -0
- package/dist/fingerprinting/fingerprint-overrides/datadome-bypass.d.ts.map +1 -0
- package/dist/fingerprinting/fingerprint-overrides/datadome-bypass.js +643 -0
- package/dist/fingerprinting/fingerprint-overrides/datadome-bypass.js.map +1 -0
- package/dist/fingerprinting/fingerprint-overrides/font-spoofing.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/font-spoofing.js +11 -1
- package/dist/fingerprinting/fingerprint-overrides/font-spoofing.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/index.d.ts +17 -1
- package/dist/fingerprinting/fingerprint-overrides/index.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/index.js +21 -1
- package/dist/fingerprinting/fingerprint-overrides/index.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/keyboard-humanization.d.ts +45 -0
- package/dist/fingerprinting/fingerprint-overrides/keyboard-humanization.d.ts.map +1 -0
- package/dist/fingerprinting/fingerprint-overrides/keyboard-humanization.js +291 -0
- package/dist/fingerprinting/fingerprint-overrides/keyboard-humanization.js.map +1 -0
- package/dist/fingerprinting/fingerprint-overrides/locale-spoofing.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/locale-spoofing.js +153 -90
- package/dist/fingerprinting/fingerprint-overrides/locale-spoofing.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/mouse-humanization.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/mouse-humanization.js +4 -5
- package/dist/fingerprinting/fingerprint-overrides/mouse-humanization.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/performance-spoofing.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/performance-spoofing.js +11 -1
- package/dist/fingerprinting/fingerprint-overrides/performance-spoofing.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/platform-consistency.d.ts +13 -0
- package/dist/fingerprinting/fingerprint-overrides/platform-consistency.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/platform-consistency.js +413 -70
- package/dist/fingerprinting/fingerprint-overrides/platform-consistency.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/prototype-integrity.d.ts +13 -0
- package/dist/fingerprinting/fingerprint-overrides/prototype-integrity.d.ts.map +1 -0
- package/dist/fingerprinting/fingerprint-overrides/prototype-integrity.js +355 -0
- package/dist/fingerprinting/fingerprint-overrides/prototype-integrity.js.map +1 -0
- package/dist/fingerprinting/fingerprint-overrides/runtime-enable-bypass.d.ts +12 -3
- package/dist/fingerprinting/fingerprint-overrides/runtime-enable-bypass.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/runtime-enable-bypass.js +261 -71
- package/dist/fingerprinting/fingerprint-overrides/runtime-enable-bypass.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/scroll-humanization.d.ts +55 -0
- package/dist/fingerprinting/fingerprint-overrides/scroll-humanization.d.ts.map +1 -0
- package/dist/fingerprinting/fingerprint-overrides/scroll-humanization.js +380 -0
- package/dist/fingerprinting/fingerprint-overrides/scroll-humanization.js.map +1 -0
- package/dist/fingerprinting/fingerprint-overrides/stealth-script.d.ts +8 -0
- package/dist/fingerprinting/fingerprint-overrides/stealth-script.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/stealth-script.js +756 -71
- package/dist/fingerprinting/fingerprint-overrides/stealth-script.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/storage-consistency.d.ts +13 -0
- package/dist/fingerprinting/fingerprint-overrides/storage-consistency.d.ts.map +1 -0
- package/dist/fingerprinting/fingerprint-overrides/storage-consistency.js +368 -0
- package/dist/fingerprinting/fingerprint-overrides/storage-consistency.js.map +1 -0
- package/dist/fingerprinting/fingerprint-overrides/timing-consistency.d.ts +13 -0
- package/dist/fingerprinting/fingerprint-overrides/timing-consistency.d.ts.map +1 -0
- package/dist/fingerprinting/fingerprint-overrides/timing-consistency.js +438 -0
- package/dist/fingerprinting/fingerprint-overrides/timing-consistency.js.map +1 -0
- package/dist/fingerprinting/fingerprint-overrides/ua-ch.d.ts +7 -1
- package/dist/fingerprinting/fingerprint-overrides/ua-ch.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/ua-ch.js +158 -58
- package/dist/fingerprinting/fingerprint-overrides/ua-ch.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/utils.d.ts +12 -0
- package/dist/fingerprinting/fingerprint-overrides/utils.d.ts.map +1 -0
- package/dist/fingerprinting/fingerprint-overrides/utils.js +517 -0
- package/dist/fingerprinting/fingerprint-overrides/utils.js.map +1 -0
- package/dist/fingerprinting/fingerprint-overrides/webgl-spoofing.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/webgl-spoofing.js +51 -10
- package/dist/fingerprinting/fingerprint-overrides/webgl-spoofing.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/webgpu-spoofing.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/webgpu-spoofing.js +11 -1
- package/dist/fingerprinting/fingerprint-overrides/webgpu-spoofing.js.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/webrtc-spoofing.d.ts.map +1 -1
- package/dist/fingerprinting/fingerprint-overrides/webrtc-spoofing.js +11 -1
- package/dist/fingerprinting/fingerprint-overrides/webrtc-spoofing.js.map +1 -1
- package/dist/page.d.ts +12 -0
- package/dist/page.d.ts.map +1 -1
- package/dist/page.js +35 -3
- package/dist/page.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +4 -4
- package/dist/fingerprinting/canvas-fingerprint.d.ts +0 -4
- package/dist/fingerprinting/canvas-fingerprint.d.ts.map +0 -1
- package/dist/fingerprinting/canvas-fingerprint.js +0 -60
- package/dist/fingerprinting/canvas-fingerprint.js.map +0 -1
|
@@ -1,93 +1,193 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* navigator.userAgentData spoofing
|
|
2
|
+
* navigator.userAgentData spoofing (UA-CH Client Hints)
|
|
3
3
|
* Generates brand list & bitness matching the chosen platform.
|
|
4
|
+
*
|
|
5
|
+
* 2024-2025 Enhanced:
|
|
6
|
+
* - Consistent platform returns "Windows" for Win32
|
|
7
|
+
* - Proper getHighEntropyValues() with all Windows-specific fields
|
|
8
|
+
* - Realistic Chrome version numbers matching userAgent
|
|
9
|
+
* - Proper prototype chain and native-like appearance
|
|
4
10
|
*/
|
|
5
11
|
export const createUAClientHintsSpoofingScript = (platform = 'Win32') => {
|
|
6
12
|
let platformData;
|
|
7
13
|
let platformVersion;
|
|
8
|
-
|
|
14
|
+
let architecture;
|
|
15
|
+
let bitness;
|
|
16
|
+
let wow64;
|
|
17
|
+
if (platform.startsWith('Win') || platform === 'Win32') {
|
|
9
18
|
platformData = 'Windows';
|
|
10
|
-
platformVersion = '15.0.0';
|
|
19
|
+
platformVersion = '15.0.0'; // Windows 11
|
|
20
|
+
architecture = 'x86';
|
|
21
|
+
bitness = '64';
|
|
22
|
+
wow64 = false;
|
|
11
23
|
}
|
|
12
24
|
else if (platform.startsWith('Mac')) {
|
|
13
25
|
platformData = 'macOS';
|
|
14
|
-
platformVersion = '14.
|
|
26
|
+
platformVersion = '14.4.0'; // macOS Sonoma
|
|
27
|
+
architecture = 'arm';
|
|
28
|
+
bitness = '64';
|
|
29
|
+
wow64 = false;
|
|
15
30
|
}
|
|
16
31
|
else {
|
|
17
32
|
platformData = 'Linux';
|
|
18
|
-
platformVersion = '6.
|
|
33
|
+
platformVersion = '6.5.0';
|
|
34
|
+
architecture = 'x86';
|
|
35
|
+
bitness = '64';
|
|
36
|
+
wow64 = false;
|
|
19
37
|
}
|
|
38
|
+
// Use realistic Chrome version (should match userAgent)
|
|
39
|
+
const chromeVersion = '131';
|
|
40
|
+
const fullVersion = '131.0.6778.139';
|
|
20
41
|
return `
|
|
21
42
|
(() => {
|
|
22
43
|
'use strict';
|
|
23
44
|
|
|
24
|
-
// UA-CH (User-Agent Client Hints) spoofing for 2025
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
45
|
+
// UA-CH (User-Agent Client Hints) spoofing for 2024-2025
|
|
46
|
+
// CRITICAL: Must match the platform spoofing and userAgent
|
|
47
|
+
|
|
48
|
+
const DEBUG_PREFIX = '[CDP-FP-DEBUG]';
|
|
49
|
+
|
|
50
|
+
// Brand list in Chrome's format - order matters!
|
|
51
|
+
const brands = Object.freeze([
|
|
52
|
+
Object.freeze({ brand: "Google Chrome", version: "${chromeVersion}" }),
|
|
53
|
+
Object.freeze({ brand: "Chromium", version: "${chromeVersion}" }),
|
|
54
|
+
Object.freeze({ brand: "Not_A Brand", version: "24" })
|
|
55
|
+
]);
|
|
56
|
+
|
|
57
|
+
const fullVersionList = Object.freeze([
|
|
58
|
+
Object.freeze({ brand: "Google Chrome", version: "${fullVersion}" }),
|
|
59
|
+
Object.freeze({ brand: "Chromium", version: "${fullVersion}" }),
|
|
60
|
+
Object.freeze({ brand: "Not_A Brand", version: "24.0.0.0" })
|
|
61
|
+
]);
|
|
30
62
|
|
|
31
63
|
const mobile = false;
|
|
32
64
|
const platformData = "${platformData}";
|
|
65
|
+
const platformVersion = "${platformVersion}";
|
|
66
|
+
const architecture = "${architecture}";
|
|
67
|
+
const bitness = "${bitness}";
|
|
68
|
+
const wow64 = ${wow64};
|
|
33
69
|
|
|
34
|
-
|
|
70
|
+
// High entropy values for getHighEntropyValues()
|
|
71
|
+
const highEntropyValues = {
|
|
72
|
+
architecture: architecture,
|
|
73
|
+
bitness: bitness,
|
|
35
74
|
brands: brands,
|
|
75
|
+
fullVersionList: fullVersionList,
|
|
36
76
|
mobile: mobile,
|
|
77
|
+
model: "",
|
|
37
78
|
platform: platformData,
|
|
79
|
+
platformVersion: platformVersion,
|
|
80
|
+
uaFullVersion: "${fullVersion}",
|
|
81
|
+
wow64: wow64,
|
|
82
|
+
formFactor: []
|
|
83
|
+
};
|
|
84
|
+
|
|
85
|
+
// Create a proper NavigatorUAData-like object
|
|
86
|
+
const createUAData = () => {
|
|
87
|
+
const uaData = Object.create(null);
|
|
38
88
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
89
|
+
// Define properties to match NavigatorUAData interface
|
|
90
|
+
Object.defineProperties(uaData, {
|
|
91
|
+
brands: {
|
|
92
|
+
get: function() { return brands; },
|
|
93
|
+
enumerable: true,
|
|
94
|
+
configurable: false
|
|
95
|
+
},
|
|
96
|
+
mobile: {
|
|
97
|
+
get: function() { return mobile; },
|
|
98
|
+
enumerable: true,
|
|
99
|
+
configurable: false
|
|
100
|
+
},
|
|
101
|
+
platform: {
|
|
102
|
+
get: function() { return platformData; },
|
|
103
|
+
enumerable: true,
|
|
104
|
+
configurable: false
|
|
105
|
+
},
|
|
106
|
+
getHighEntropyValues: {
|
|
107
|
+
value: function(hints) {
|
|
108
|
+
return new Promise((resolve) => {
|
|
109
|
+
// Simulate slight async delay like real browser
|
|
110
|
+
setTimeout(() => {
|
|
111
|
+
const result = {};
|
|
112
|
+
|
|
113
|
+
if (!hints || !Array.isArray(hints)) {
|
|
114
|
+
resolve(result);
|
|
115
|
+
return;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
// Return requested hints
|
|
119
|
+
for (const hint of hints) {
|
|
120
|
+
if (hint in highEntropyValues) {
|
|
121
|
+
result[hint] = highEntropyValues[hint];
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
resolve(result);
|
|
126
|
+
}, 1 + Math.random() * 2);
|
|
127
|
+
});
|
|
128
|
+
},
|
|
129
|
+
writable: false,
|
|
130
|
+
enumerable: true,
|
|
131
|
+
configurable: false
|
|
132
|
+
},
|
|
133
|
+
toJSON: {
|
|
134
|
+
value: function() {
|
|
135
|
+
return {
|
|
136
|
+
brands: brands,
|
|
137
|
+
mobile: mobile,
|
|
138
|
+
platform: platformData
|
|
139
|
+
};
|
|
140
|
+
},
|
|
141
|
+
writable: false,
|
|
142
|
+
enumerable: true,
|
|
143
|
+
configurable: false
|
|
144
|
+
}
|
|
145
|
+
});
|
|
64
146
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
}
|
|
147
|
+
// Make it look like a real NavigatorUAData object
|
|
148
|
+
Object.defineProperty(uaData, Symbol.toStringTag, {
|
|
149
|
+
value: 'NavigatorUAData',
|
|
150
|
+
writable: false,
|
|
151
|
+
enumerable: false,
|
|
152
|
+
configurable: true
|
|
153
|
+
});
|
|
154
|
+
|
|
155
|
+
// Freeze to prevent modification
|
|
156
|
+
return Object.freeze(uaData);
|
|
72
157
|
};
|
|
73
158
|
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
159
|
+
const uaData = createUAData();
|
|
160
|
+
|
|
161
|
+
// Register with stealth utils if available
|
|
162
|
+
if (window.__stealthUtils__) {
|
|
163
|
+
window.__stealthUtils__.registerNativeFunction(uaData.getHighEntropyValues, 'getHighEntropyValues');
|
|
164
|
+
window.__stealthUtils__.registerNativeFunction(uaData.toJSON, 'toJSON');
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
// Override navigator.userAgentData with prototype integrity
|
|
168
|
+
const overrideUserAgentData = () => {
|
|
169
|
+
// Use prototype integrity if available
|
|
170
|
+
if (window.__prototypeIntegrity__) {
|
|
171
|
+
window.__prototypeIntegrity__.overridePropertyNative(navigator, 'userAgentData', {
|
|
172
|
+
get: function() { return uaData; },
|
|
173
|
+
enumerable: true,
|
|
174
|
+
configurable: false
|
|
175
|
+
});
|
|
176
|
+
} else {
|
|
177
|
+
// Fallback to standard override
|
|
178
|
+
Object.defineProperty(navigator, 'userAgentData', {
|
|
179
|
+
get: function() { return uaData; },
|
|
180
|
+
enumerable: true,
|
|
181
|
+
configurable: false
|
|
182
|
+
});
|
|
183
|
+
}
|
|
184
|
+
};
|
|
80
185
|
|
|
81
|
-
// Also ensure the property exists and is not writable
|
|
82
186
|
try {
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
writable: false,
|
|
86
|
-
configurable: false,
|
|
87
|
-
enumerable: true
|
|
88
|
-
});
|
|
187
|
+
overrideUserAgentData();
|
|
188
|
+
console.log(DEBUG_PREFIX, '✓ UA-CH spoofing applied - platform:', platformData);
|
|
89
189
|
} catch (e) {
|
|
90
|
-
|
|
190
|
+
console.error('[CDP-FP-ERROR]', 'Failed to apply UA-CH spoofing:', e);
|
|
91
191
|
}
|
|
92
192
|
})();
|
|
93
193
|
`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ua-ch.js","sourceRoot":"","sources":["../../../src/fingerprinting/fingerprint-overrides/ua-ch.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"ua-ch.js","sourceRoot":"","sources":["../../../src/fingerprinting/fingerprint-overrides/ua-ch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,QAAQ,GAAG,OAAO,EAAU,EAAE;IAC5E,IAAI,YAAoB,CAAC;IACzB,IAAI,eAAuB,CAAC;IAC5B,IAAI,YAAoB,CAAC;IACzB,IAAI,OAAe,CAAC;IACpB,IAAI,KAAc,CAAC;IAEnB,IAAI,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QACrD,YAAY,GAAG,SAAS,CAAC;QACzB,eAAe,GAAG,QAAQ,CAAC,CAAC,aAAa;QACzC,YAAY,GAAG,KAAK,CAAC;QACrB,OAAO,GAAG,IAAI,CAAC;QACf,KAAK,GAAG,KAAK,CAAC;IAClB,CAAC;SAAM,IAAI,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACpC,YAAY,GAAG,OAAO,CAAC;QACvB,eAAe,GAAG,QAAQ,CAAC,CAAC,eAAe;QAC3C,YAAY,GAAG,KAAK,CAAC;QACrB,OAAO,GAAG,IAAI,CAAC;QACf,KAAK,GAAG,KAAK,CAAC;IAClB,CAAC;SAAM,CAAC;QACJ,YAAY,GAAG,OAAO,CAAC;QACvB,eAAe,GAAG,OAAO,CAAC;QAC1B,YAAY,GAAG,KAAK,CAAC;QACrB,OAAO,GAAG,IAAI,CAAC;QACf,KAAK,GAAG,KAAK,CAAC;IAClB,CAAC;IAED,wDAAwD;IACxD,MAAM,aAAa,GAAG,KAAK,CAAC;IAC5B,MAAM,WAAW,GAAG,gBAAgB,CAAC;IAErC,OAAO;;;;;;;;;;;4DAWiD,aAAa;uDAClB,aAAa;;;;;4DAKR,WAAW;uDAChB,WAAW;;;;;4BAKtC,YAAY;+BACT,eAAe;4BAClB,YAAY;uBACjB,OAAO;oBACV,KAAK;;;;;;;;;;;;0BAYC,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiHpC,CAAC;AACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Stealth Utility Functions
|
|
3
|
+
*
|
|
4
|
+
* Similar to puppeteer-extra-plugin-stealth's utils.js
|
|
5
|
+
* Provides helper functions for overriding browser properties without detection.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Creates a stealth utilities script that can be injected into the browser.
|
|
9
|
+
* This script provides helper functions for property overrides that hide their tracks.
|
|
10
|
+
*/
|
|
11
|
+
export declare const createStealthUtilsScript: () => string;
|
|
12
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/fingerprinting/fingerprint-overrides/utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;GAGG;AACH,eAAO,MAAM,wBAAwB,QAAO,MAyf3C,CAAC"}
|