// Metro module 10516 (f10517). import { Component } from "react"; import { NativeModules } from "react-native"; import { create } from "../../../_bundle/Module644"; import { batchUpdates } from "../../../_bundle/Module705"; import { isAndroid } from "../../../utils/PlatformUtils"; import Module1593 from "../../../_bundle/Module1593"; let c7058_4 = create(() => ({ autoHideHomeIndicator: false })); class HomeIndicator extends Component { static defaultProps = { prefersHidden: false, prefersDeferringSystemGestures: false }; static _propsStack = []; static _updateImmediate = null; _stackEntry = null; static pushStackEntry(a0) { const r0 = { prefersHidden: a0.prefersHidden, prefersDeferringSystemGestures: a0.prefersDeferringSystemGestures }; HomeIndicator._propsStack.push(r0); HomeIndicator._updatePropsStack(); return r0; } static popStackEntry(a0) { const r5 = a0 != null ? HomeIndicator._propsStack.indexOf(a0) : -1; if (r5 !== -1) { HomeIndicator._propsStack.splice(r5, 1); HomeIndicator._updatePropsStack(); } } static replaceStackEntry(a0, a1) { const r2 = { prefersHidden: a1.prefersHidden, prefersDeferringSystemGestures: a1.prefersDeferringSystemGestures }; const r10 = a0 != null ? HomeIndicator._propsStack.indexOf(a0) : -1; if (r10 !== -1) { HomeIndicator._propsStack[r10] = r2; } HomeIndicator._updatePropsStack(); return r2; } static _updatePropsStack() { clearImmediate(HomeIndicator._updateImmediate); HomeIndicator._updateImmediate = setImmediate(() => { let r14 = HomeIndicator._propsStack[HomeIndicator._propsStack.length - 1]; if (r14 == null) { r14 = {}; } const { prefersHidden = false, prefersDeferringSystemGestures = false } = r14; batchUpdates(() => c7058_4.setState({ autoHideHomeIndicator: prefersHidden })); if (isAndroid()) { Module1593.setNavigationBarVisible(!prefersHidden); } else if (NativeModules.DCDHomeIndicator) { NativeModules.DCDHomeIndicator.setPrefersAutoHidden(prefersHidden); NativeModules.DCDHomeIndicator.setPrefersDeferringSystemGestures(prefersDeferringSystemGestures); } }); } componentDidMount() { this._stackEntry = HomeIndicator.pushStackEntry(this.props); } componentDidUpdate() { this._stackEntry = HomeIndicator.replaceStackEntry(this._stackEntry, this.props); } componentWillUnmount() { HomeIndicator.popStackEntry(this._stackEntry); this._stackEntry = null; } render() { return null; } } export default HomeIndicator; export { c7058_4 as useHomeIndicatorStore };