@clayui/shared
Version:
ClayShared component
29 lines (28 loc) • 607 B
JavaScript
function testPlatform(re) {
return typeof window !== "undefined" && window.navigator !== null ? re.test(
// @ts-ignore
window.navigator["userAgentData"]?.platform || window.navigator.platform
) : false;
}
function isMac() {
return testPlatform(/^Mac/i);
}
function isIPhone() {
return testPlatform(/^iPhone/i);
}
function isIPad() {
return testPlatform(/^iPad/i) || isMac() && navigator.maxTouchPoints > 1;
}
function isIOS() {
return isIPhone() || isIPad();
}
function isAppleDevice() {
return isMac() || isIOS();
}
export {
isAppleDevice,
isIOS,
isIPad,
isIPhone,
isMac
};