decord/source/modules/media_viewer/native/useVideoControls.tsx
github-actions ecf26fc058 chore: update source for alpha 347.2
Skipped 1 file(s) >100MB (GitHub limit): source/__polyfill/04xxx/module_4823.js (118.4 MB)
2026-09-16 07:03:15 +00:00

116 lines
4.3 KiB
TypeScript

// Module ID: 8392
// Function ID: 8393
// Name: useVideoControls
// Dependencies: [32, 19, 4630, 21, 560, 1248, 8393, 4638, 504, 8394, 8402, 8395, 8390, 8403, 2]
// Exports: default, initVideoStateStore, setMuted, setPausedState, setVideoStateControls, toggleMuted, tryPauseCurrentVideo, unpauseCurrentVideoIfNeeded
// Module 8392 (useVideoControls)
import ReactBatchUpdates from "ReactBatchUpdates" /* 1248 */;
import useMediaViewerSources from "useMediaViewerSources" /* 8390 */;
import MediaPlayerMuteManager from "MediaPlayerMuteManager" /* 8393 */;
import _slicedToArray from "module_32" /* 32 */;
import noop from "module_19" /* 19 */;
import AccessibilityStore from "AccessibilityStore" /* 4630 */;
const require = globalThis.__r;
require = fn;
const jsx = fn(21).jsx;
const module_560 = fn(560);
let obj4 = module_560.create(() => ({ controls: "PX_16", paused: true }));
const createStyles = fn(4638);
let closure_8 = createStyles.createStyles({ slider: { marginBottom: 8 } });
const size = fn(2);
let result = size.fileFinishedImporting("modules/media_viewer/native/useVideoControls.tsx");
export default function useVideoControls(index, portal, controls) {
_require = index;
importDefault = controls;
const tmp = closure_8();
const tmp2 = _require;
const items = [useReducedMotion];
stateFromStores = require("initialize").useStateFromStores(items, () => useReducedMotion.useReducedMotion);
const tmp5 = _slicedToArray(mediaItemHasSpoiler.useState(false), 2);
_slicedToArray = tmp6;
let obj = require("initialize");
const obj2 = mediaItemHasSpoiler;
mediaItemHasSpoiler = require("useMediaItemHasSpoiler").useMediaItemHasSpoiler(index);
const tmp9 = require("usePrevious")(index);
useReducedMotion = tmp9;
let result = null != controls;
if (result) {
result = tmp2(tmp3[11]).supportOverlayVideoControls(portal);
const tmp2Result = tmp2(tmp3[11]);
}
let videoURI = portal.portal;
if (videoURI == null) {
videoURI = portal.videoURI;
}
const tmp11 = require("usePrevious")(videoURI);
closure_7 = tmp11;
const items1 = [controls, videoURI, stateFromStores, tmp11, mediaItemHasSpoiler, tmp9, index];
const effect = obj2.useEffect(() => {
if (closure_5 !== closure_0) {
if (null != tmp) {
if (null != videoURI) {
if (closure_7 !== tmp3) {
controls.seek(0);
let tmp6 = mediaItemHasSpoiler;
if (!mediaItemHasSpoiler) {
tmp6 = stateFromStores;
}
controls.pause(tmp6);
closure_3(tmp6);
}
}
}
}
}, items1);
[][0] = index;
if (result) {
obj4 = { style: tmp.slider, controls, paused: tmp5[0], setPaused: tmp6, onPlayPress: tmp13 };
return videoURI(tmp8(tmp3[13]), obj4, videoURI);
}
const obj3 = require("useMediaItemHasSpoiler");
};
export const useVideoStateStore = obj4;
export const initVideoStateStore = function initVideoStateStore() {
ReactBatchUpdates.batchUpdates(() => {
state.setState({ controls: "PX_16", paused: true });
});
};
export const setMuted = function setMuted(isMuted) {
_require = isMuted;
require("ReactBatchUpdates").batchUpdates(() => {
const useMediaPlayerMutedStore = MediaPlayerMuteManager.useMediaPlayerMutedStore;
useMediaPlayerMutedStore.setState({ isMuted });
});
};
export const toggleMuted = function toggleMuted() {
ReactBatchUpdates.batchUpdates(() => {
const useMediaPlayerMutedStore = require("MediaPlayerMuteManager").useMediaPlayerMutedStore;
useMediaPlayerMutedStore.setState((isMuted) => ({ isMuted: !isMuted.isMuted }));
});
};
export const setVideoStateControls = function setVideoStateControls(videoControls) {
_require = videoControls;
require("ReactBatchUpdates").batchUpdates(() => obj4.setState({ controls }));
};
export const setPausedState = function setPausedState(paused) {
_require = paused;
require("ReactBatchUpdates").batchUpdates(() => obj4.setState({ paused }));
};
export const tryPauseCurrentVideo = function tryPauseCurrentVideo() {
const controls = obj4.getState().controls;
if (controls != null) {
controls.pause(true);
}
};
export const unpauseCurrentVideoIfNeeded = function unpauseCurrentVideoIfNeeded() {
if (!obj4.getState().paused) {
const controls = obj4.getState().controls;
if (controls != null) {
controls.pause(false);
}
}
};