Files
upstream-jitsi-meet/react/features/subtitles/hooks.web.ts
upstream-mirror 1d2bfcac0c
Some checks failed
Prosody Plugin Tests / test (push) Failing after 10m11s
Close stale issues and PRs / stale (push) Failing after 1s
snapshot of https://github.com/jitsi/jitsi-meet.git @ fd1749dd28f4138aa80234fc7f311b19aaffa0e7 (2026-09-15)
2026-09-15 15:56:32 +05:00

34 lines
1.1 KiB
TypeScript

import { useSelector } from 'react-redux';
import { IReduxState } from '../app/types';
import { isInBreakoutRoom } from '../breakout-rooms/functions';
import ClosedCaptionButton from './components/web/ClosedCaptionButton';
import { areClosedCaptionsEnabled, canStartSubtitles } from './functions.any';
const cc = {
key: 'closedcaptions',
Content: ClosedCaptionButton,
group: 2
};
/**
* A hook that returns the CC button if it is enabled and undefined otherwise.
*
* @returns {Object | undefined}
*/
export function useClosedCaptionButton() {
const isStartSubtitlesButtonVisible = useSelector(canStartSubtitles);
const { showSubtitlesOnStage = false } = useSelector((state: IReduxState) => state['features/base/settings']);
const _areClosedCaptionsEnabled = useSelector(areClosedCaptionsEnabled);
const _isInBreakoutRoom = useSelector((state: IReduxState) => isInBreakoutRoom(state));
if (!_areClosedCaptionsEnabled || _isInBreakoutRoom) {
return undefined;
}
if (isStartSubtitlesButtonVisible || !showSubtitlesOnStage) {
return cc;
}
}