122 lines
4.9 KiB
TypeScript
122 lines
4.9 KiB
TypeScript
// 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 <MediaPlaybackPanelStateContext.Provider value={_slicedToArray(useState(() => ({
|
|
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}</MediaPlaybackPanelStateContext.Provider>;
|
|
};
|