const navProps = {
languages: { get: () => Object.freeze(__EOKA_LANGUAGES__) },
language: { get: () => '__EOKA_LANGUAGE__' },
platform: { get: () => '__EOKA_PLATFORM__' },
vendor: { get: () => 'Google Inc.' },
hardwareConcurrency: { get: () => __EOKA_HW__ },
deviceMemory: { get: () => __EOKA_MEM__ },
maxTouchPoints: { get: () => 0 }
};
if (!('deviceMemory' in Navigator.prototype)) {
delete navProps.deviceMemory;
}
for (const [prop, desc] of Object.entries(navProps)) {
_eoka_mark(desc.get, 'get ' + prop);
Object.defineProperty(Navigator.prototype, prop, {
...desc,
configurable: true,
enumerable: true
});
}
try {
if (navigator.cookieEnabled === false) {
const probe = '__eoka_cookie_probe__';
document.cookie = probe + '=1; path=/';
if (document.cookie.indexOf(probe) !== -1) {
Object.defineProperty(Navigator.prototype, 'cookieEnabled', {
get: _eoka_mark(() => true, 'get cookieEnabled'),
configurable: true,
enumerable: true
});
}
document.cookie = probe + '=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/';
}
} catch(e) {}