49 lines
1.3 KiB
JavaScript
49 lines
1.3 KiB
JavaScript
import Bowser from 'bowser';
|
|
import { checkWebWorker } from './common';
|
|
|
|
const getUserAgentData = (key, userAgent, workerAgent) => ({
|
|
key,
|
|
value: userAgent || 'N/A',
|
|
issues: [checkWebWorker(userAgent, workerAgent)],
|
|
});
|
|
|
|
// Returns object with location data
|
|
const getUserAgent = (workerAgent) => {
|
|
const userAgentParsed = Bowser.parse(navigator.userAgent);
|
|
const workerAgentParsed = Bowser.parse(workerAgent);
|
|
return [
|
|
getUserAgentData(
|
|
'Browser',
|
|
userAgentParsed.browser.name,
|
|
workerAgentParsed.browser.name
|
|
),
|
|
getUserAgentData(
|
|
'Browser version',
|
|
userAgentParsed.browser.version,
|
|
workerAgentParsed.browser.version
|
|
),
|
|
getUserAgentData('OS', userAgentParsed.os.name, workerAgentParsed.os.name),
|
|
getUserAgentData(
|
|
'OS version',
|
|
userAgentParsed.os.versionName,
|
|
workerAgentParsed.os.versionName
|
|
),
|
|
getUserAgentData(
|
|
'Engine',
|
|
userAgentParsed.engine.name,
|
|
workerAgentParsed.engine.name
|
|
),
|
|
getUserAgentData(
|
|
'Engine version',
|
|
userAgentParsed.engine.version,
|
|
workerAgentParsed.engine.version
|
|
),
|
|
getUserAgentData(
|
|
'Platform type',
|
|
userAgentParsed.platform.type,
|
|
workerAgentParsed.platform.type
|
|
),
|
|
];
|
|
};
|
|
|
|
export default getUserAgent;
|