@dvcol/common-utils
Version:
Typescript library for common utility functions and constants
36 lines (26 loc) • 1.13 kB
JavaScript
;Object.defineProperty(exports, "__esModule", {value: true});// lib/common/utils/browser.utils.ts
function isMobileFirefox() {
const { userAgent } = navigator;
return typeof window !== "undefined" && (/Firefox/.test(userAgent) && /Mobile/.test(userAgent) || // Android Firefox
/FxiOS/.test(userAgent));
}
function isMac() {
return testPlatform(/^Mac/);
}
function isIPhone() {
return testPlatform(/^iPhone/);
}
function isSafari() {
return /^((?!chrome|android).)*safari/i.test(navigator.userAgent);
}
function isIPad() {
return testPlatform(/^iPad/) || // iPadOS 13 lies and says it's a Mac, but we can distinguish by detecting touch support.
isMac() && navigator.maxTouchPoints > 1;
}
function isIOS() {
return isIPhone() || isIPad();
}
function testPlatform(re) {
return typeof window !== "undefined" && window.navigator != null ? re.test(window.navigator.platform) : void 0;
}
exports.isMobileFirefox = isMobileFirefox; exports.isMac = isMac; exports.isIPhone = isIPhone; exports.isSafari = isSafari; exports.isIPad = isIPad; exports.isIOS = isIOS; exports.testPlatform = testPlatform;