Some checks failed
Close stale issues and PRs / stale (push) Has been cancelled
140 lines
3.5 KiB
TypeScript
140 lines
3.5 KiB
TypeScript
import { DEFAULT_LANGUAGE } from '../base/i18n/i18next';
|
|
|
|
import {
|
|
REMOVE_CACHED_TRANSCRIPT_MESSAGE,
|
|
REMOVE_TRANSCRIPT_MESSAGE,
|
|
SET_REQUESTING_SUBTITLES,
|
|
SET_SUBTITLES_ERROR,
|
|
STORE_SUBTITLE,
|
|
TOGGLE_REQUESTING_SUBTITLES,
|
|
UPDATE_TRANSCRIPT_MESSAGE
|
|
} from './actionTypes';
|
|
import { ISubtitle } from './types';
|
|
|
|
/**
|
|
* Signals that a transcript has to be removed from the state.
|
|
*
|
|
* @param {string} transcriptMessageID - The message_id to be removed.
|
|
* @returns {{
|
|
* type: REMOVE_TRANSCRIPT_MESSAGE,
|
|
* transcriptMessageID: string,
|
|
* }}
|
|
*/
|
|
export function removeTranscriptMessage(transcriptMessageID: string) {
|
|
return {
|
|
type: REMOVE_TRANSCRIPT_MESSAGE,
|
|
transcriptMessageID
|
|
};
|
|
}
|
|
|
|
/**
|
|
* Signals that a cached transcript has to be removed from the state.
|
|
*
|
|
* @param {string} transcriptMessageID - The message_id to be removed.
|
|
* @returns {{
|
|
* type: REMOVE_CACHED_TRANSCRIPT_MESSAGE,
|
|
* transcriptMessageID: string,
|
|
* }}
|
|
*/
|
|
export function removeCachedTranscriptMessage(transcriptMessageID: string) {
|
|
return {
|
|
type: REMOVE_CACHED_TRANSCRIPT_MESSAGE,
|
|
transcriptMessageID
|
|
};
|
|
}
|
|
|
|
/**
|
|
* Signals that a transcript with the given message_id to be added or updated
|
|
* is received.
|
|
*
|
|
* @param {string} transcriptMessageID -The transcript message_id to be updated.
|
|
* @param {Object} newTranscriptMessage - The updated transcript message.
|
|
* @returns {{
|
|
* type: UPDATE_TRANSCRIPT_MESSAGE,
|
|
* transcriptMessageID: string,
|
|
* newTranscriptMessage: Object
|
|
* }}
|
|
*/
|
|
export function updateTranscriptMessage(transcriptMessageID: string,
|
|
newTranscriptMessage: Object) {
|
|
return {
|
|
type: UPDATE_TRANSCRIPT_MESSAGE,
|
|
transcriptMessageID,
|
|
newTranscriptMessage
|
|
};
|
|
}
|
|
|
|
/**
|
|
* Signals that the local user has toggled the ClosedCaption button.
|
|
*
|
|
* @returns {{
|
|
* type: TOGGLE_REQUESTING_SUBTITLES
|
|
* }}
|
|
*/
|
|
export function toggleRequestingSubtitles() {
|
|
return {
|
|
type: TOGGLE_REQUESTING_SUBTITLES
|
|
};
|
|
}
|
|
|
|
/**
|
|
* Signals that the local user has enabled or disabled the subtitles.
|
|
*
|
|
* @param {boolean} enabled - The new state of the subtitles.
|
|
* @param {boolean} displaySubtitles - Whether to display subtitles or not.
|
|
* @param {string} language - The language of the subtitles.
|
|
* @param {boolean} backendRecordingOn - Whether backend recording is on.
|
|
* @returns {{
|
|
* type: SET_REQUESTING_SUBTITLES,
|
|
* backendRecordingOn: boolean,
|
|
* enabled: boolean,
|
|
* displaySubtitles: boolean,
|
|
* language: string
|
|
* }}
|
|
*/
|
|
export function setRequestingSubtitles(
|
|
enabled: boolean,
|
|
displaySubtitles = true,
|
|
language: string | null = `translation-languages:${DEFAULT_LANGUAGE}`,
|
|
backendRecordingOn = false) {
|
|
return {
|
|
type: SET_REQUESTING_SUBTITLES,
|
|
backendRecordingOn,
|
|
displaySubtitles,
|
|
enabled,
|
|
language
|
|
};
|
|
}
|
|
|
|
/**
|
|
* Stores a received subtitle in the history.
|
|
*
|
|
* @param {ISubtitle} subtitle - The subtitle to store.
|
|
* @returns {{
|
|
* type: STORE_SUBTITLE,
|
|
* subtitle: ISubtitle
|
|
* }}
|
|
*/
|
|
export function storeSubtitle(subtitle: ISubtitle) {
|
|
return {
|
|
type: STORE_SUBTITLE,
|
|
subtitle
|
|
};
|
|
}
|
|
|
|
/**
|
|
* Signals that an error occurred while starting subtitles.
|
|
*
|
|
* @param {boolean} hasError - Whether an error occurred or not.
|
|
* @returns {{
|
|
* type: SET_SUBTITLES_ERROR,
|
|
* hasError: boolean
|
|
* }}
|
|
*/
|
|
export function setSubtitlesError(hasError: boolean) {
|
|
return {
|
|
type: SET_SUBTITLES_ERROR,
|
|
hasError
|
|
};
|
|
}
|