// Metro module 16041 (f16042). import _slicedToArray from "../../../_bundle/_slicedToArray"; import { useEffect, useRef, useState, useCallback, useLayoutEffect } from "react"; import AccessibilityStore from "../../a11y/AccessibilityStore"; import EmbeddedActivitiesStore from "../../activities/EmbeddedActivitiesStore"; import VoicePanelStore from "../../voice_panel/VoicePanelStore"; import { MediaPlaybackPanelModes } from "./MediaPlaybackPanelConstants"; import { ActivityPanelModes } from "../../activities/panel/ActivityPanelConstants"; import { MorphablePanelModes } from "../../panels/morphable/native/MorphablePanelConstants"; import { useSharedValue, useDerivedValue } from "../../reanimated/ReanimatedRexport"; import useSafeAreaInsets_native from "../../safe_area/useSafeAreaInsets.native"; import usePIPAvoidanceSpecs from "../../activities/panel/native/pip/usePIPAvoidanceSpecs"; import MediaPlayerManager from "../../media/native/MediaPlayerManager"; import { useStateFromStores } from "../../../_bundle/Module589"; import MediaPlaybackPanelStateContext from "./MediaPlaybackPanelStateContext"; const __initData = { code: "function MediaPlaybackPanelControllerTsx1(){const{mode,MediaPlaybackPanelModes,MorphablePanelModes}=this.__closure;switch(mode.get()){case MediaPlaybackPanelModes.PIP:{return MorphablePanelModes.PIP;}default:{return MorphablePanelModes.UNDEFINED;}}}" }; export default function MediaPlaybackPanelController(props) { let sharedValue, derivedValue, sharedValue2, sharedValue3, sharedValue4, pipAvoidanceSpecs, sharedValue5, sharedValue6, sharedValue7, sharedValue8, ref, state, setState, callback, c22749_14, stateFromStores; const children = props.children; sharedValue = void 0; derivedValue = void 0; sharedValue2 = void 0; sharedValue3 = void 0; sharedValue4 = void 0; pipAvoidanceSpecs = void 0; sharedValue5 = void 0; sharedValue6 = void 0; sharedValue7 = void 0; sharedValue8 = void 0; ref = void 0; state = void 0; setState = void 0; callback = void 0; c22749_14 = void 0; stateFromStores = void 0; const sharedValue9 = useSharedValue(MediaPlaybackPanelModes.PIP); const sharedValue13 = useSharedValue({ height: 0, width: 0 }); const sharedValue12 = useSharedValue({ x: -1, y: -1 }); const sharedValue10 = useSharedValue(AccessibilityStore.useReducedMotion); useEffect(() => { const onChange2 = function onChange() { if (AccessibilityStore.useReducedMotion !== sharedValue10.get()) { sharedValue10.set(AccessibilityStore.useReducedMotion); } }; AccessibilityStore.addReactChangeListener(onChange2); return () => { AccessibilityStore.removeReactChangeListener(onChange2); }; }, [sharedValue10]); const sharedValue11 = useSharedValue(true); const sharedValue14 = useSharedValue(0); const r51 = function() { return sharedValue9.get() === MediaPlaybackPanelModes.PIP ? MorphablePanelModes.PIP : MorphablePanelModes.UNDEFINED; }; r51.__closure = { mode: sharedValue9, MediaPlaybackPanelModes, MorphablePanelModes }; r51.__workletHash = 10375114450450; r51.__initData = __initData; const derivedValue2 = useDerivedValue(r51); const pIPAvoidanceSpecs = usePIPAvoidanceSpecs(useSafeAreaInsets_native()); const sharedValue15 = useSharedValue(false); const sharedValue16 = useSharedValue({ x: 0, y: 0, gestureActive: false }); sharedValue = sharedValue9; derivedValue = derivedValue2; sharedValue2 = sharedValue13; sharedValue3 = sharedValue10; sharedValue4 = sharedValue12; pipAvoidanceSpecs = pIPAvoidanceSpecs; sharedValue5 = sharedValue14; sharedValue6 = sharedValue11; sharedValue7 = sharedValue15; sharedValue8 = sharedValue16; ref = useRef(void 0); [state, setState] = useState(sharedValue9.get()); callback = useCallback(() => { let r0 = state === MediaPlaybackPanelModes.PIP; if (r0) { setState(MediaPlaybackPanelModes.DISMISSED); MediaPlayerManager.userDidClosePip(); r0 = true; } return r0; }, [state, setState]); const r88 = VoicePanelStore((a0) => a0.voicePanelsPIP.size > 0); c22749_14 = r88; stateFromStores = useStateFromStores([EmbeddedActivitiesStore], () => EmbeddedActivitiesStore.getActivityPanelMode() === ActivityPanelModes.PIP); useLayoutEffect(() => { sharedValue6.set(c22749_14 ? !c22749_14 : !stateFromStores); }, [sharedValue6, r88, stateFromStores]); return ({ mode: sharedValue, setMode: setState, morphablePanelMode: derivedValue, wrapperDimensions: sharedValue2, useReducedMotion: sharedValue3, pipState: sharedValue4, pipAvoidanceSpecs, dismissToPipGestureRef: ref, dismissPanel: callback, scrollPosition: sharedValue5, canShowPIP: sharedValue6, lockScrolling: sharedValue7, wrapperOffset: sharedValue8 })), 1)[0]}>{children}; };