mirror of
https://github.com/jquery/jquery.git
synced 2024-11-23 02:54:22 +00:00
50 lines
861 B
JavaScript
50 lines
861 B
JavaScript
|
const browserMap = {
|
||
|
chrome: "Chrome",
|
||
|
edge: "Edge",
|
||
|
firefox: "Firefox",
|
||
|
ie: "IE",
|
||
|
jsdom: "JSDOM",
|
||
|
opera: "Opera",
|
||
|
safari: "Safari"
|
||
|
};
|
||
|
|
||
|
export function browserSupportsHeadless( browser ) {
|
||
|
browser = browser.toLowerCase();
|
||
|
return (
|
||
|
browser === "chrome" ||
|
||
|
browser === "firefox" ||
|
||
|
browser === "edge"
|
||
|
);
|
||
|
}
|
||
|
|
||
|
export function getBrowserString(
|
||
|
{
|
||
|
browser,
|
||
|
browser_version: browserVersion,
|
||
|
device,
|
||
|
os,
|
||
|
os_version: osVersion
|
||
|
},
|
||
|
headless
|
||
|
) {
|
||
|
browser = browser.toLowerCase();
|
||
|
browser = browserMap[ browser ] || browser;
|
||
|
let str = browser;
|
||
|
if ( browserVersion ) {
|
||
|
str += ` ${ browserVersion }`;
|
||
|
}
|
||
|
if ( device ) {
|
||
|
str += ` for ${ device }`;
|
||
|
}
|
||
|
if ( os ) {
|
||
|
str += ` on ${ os }`;
|
||
|
}
|
||
|
if ( osVersion ) {
|
||
|
str += ` ${ osVersion }`;
|
||
|
}
|
||
|
if ( headless && browserSupportsHeadless( browser ) ) {
|
||
|
str += " (headless)";
|
||
|
}
|
||
|
return str;
|
||
|
}
|