UNPKG

one

Version:

One is a React framework for web, iOS, and Android apps.

45 lines (42 loc) • 1.26 kB
import { jsx } from "react/jsx-runtime"; import * as React from "react"; import { StyleSheet, View } from "react-native"; import { buildSafeAreaInsetStyle } from "../platform/safe-area/index.native.js"; import { initialWindowMetrics } from "./InitialWindow.native.js"; import { SafeAreaInsetsContext } from "./SafeAreaContext.native.js"; var ZERO_INSETS = { top: 0, right: 0, bottom: 0, left: 0 }; var SafeAreaView = /* @__PURE__ */ React.forwardRef(function(param, ref) { var { style, mode, edges, ...rest } = param; var _ref; var contextInsets = React.useContext(SafeAreaInsetsContext); var insets = (_ref = contextInsets !== null && contextInsets !== void 0 ? contextInsets : initialWindowMetrics === null || initialWindowMetrics === void 0 ? void 0 : initialWindowMetrics.insets) !== null && _ref !== void 0 ? _ref : ZERO_INSETS; var appliedStyle = React.useMemo(function() { return { ...StyleSheet.flatten(style), ...buildSafeAreaInsetStyle({ insets, edges, mode, style, resolveStyle: StyleSheet.flatten }) }; }, [ style, insets, edges, mode ]); return /* @__PURE__ */ jsx(View, { ...rest, style: appliedStyle, ref }); }); export { SafeAreaView }; //# sourceMappingURL=SafeAreaView.native.js.map