import { Dimensions, Platform, StatusBar } from "react-native"; const X_WIDTH = 375; const X_HEIGHT = 812; export const IPHONE_7_HEIGHT = 667; const XSMAX_WIDTH = 414; const XSMAX_HEIGHT = 896; const IP_12_PRO_WIDTH = 390; const IP_12_PRO_HEIGHT = 844; const IP_12_PRO_MAX_WIDTH = 428; const IP_12_PRO_MAX_HEIGHT = 926; const PADDING_TOP_NOTCH_IPHONE_X = 44; const PADDING_BOTTOM_NOTCH_IPHONE_X = 34; const PADDING_TOP_IPHONE = 20; const { height: D_HEIGHT, width: D_WIDTH } = Dimensions.get("window"); export const hasNotch = StatusBar.currentHeight && StatusBar.currentHeight > 24; export function getExtraPaddingTopNotch() { if (isIphoneX()) { return PADDING_TOP_NOTCH_IPHONE_X; } else if (isIphone()) { return PADDING_TOP_IPHONE; } return 0; } export function getExtraPaddingBottomNotch() { if (isIphoneX()) { return PADDING_BOTTOM_NOTCH_IPHONE_X; } return 0; } export function isIphoneX() { return ( Platform.OS === "ios" && ((D_HEIGHT === X_HEIGHT && D_WIDTH === X_WIDTH) || (D_HEIGHT === XSMAX_HEIGHT && D_WIDTH === XSMAX_WIDTH) || (D_HEIGHT === IP_12_PRO_HEIGHT && D_WIDTH === IP_12_PRO_WIDTH) || (D_HEIGHT === IP_12_PRO_MAX_HEIGHT && D_WIDTH === IP_12_PRO_MAX_WIDTH)) ); } function isIphone() { return Platform.OS === "ios"; } export const getScreenHeight = () => D_HEIGHT; export const getScreenWidth = () => D_WIDTH;