| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- /* eslint-disable lines-around-comment */
- import { IStore } from '../app/types';
- import { openSheet } from '../base/dialog/actions';
- // @ts-ignore
- import { SharedVideoMenu } from '../video-menu';
- // @ts-ignore
- import { LocalVideoMenu } from '../video-menu/components/native';
- import ConnectionStatusComponent
- // @ts-ignore
- from '../video-menu/components/native/ConnectionStatusComponent';
- // @ts-ignore
- import RemoteVideoMenu from '../video-menu/components/native/RemoteVideoMenu';
-
- import { SET_VOLUME } from './actionTypes';
- import RoomParticipantMenu from './components/native/RoomParticipantMenu';
-
- export * from './actions.any';
-
- /**
- * Displays the connection status for the local meeting participant.
- *
- * @param {string} participantID - The selected meeting participant id.
- * @returns {Function}
- */
- export function showConnectionStatus(participantID: string) {
- return openSheet(ConnectionStatusComponent, { participantID });
- }
-
- /**
- * Displays the context menu for the selected meeting participant.
- *
- * @param {string} participantId - The ID of the selected meeting participant.
- * @param {boolean} local - Whether the participant is local or not.
- * @returns {Function}
- */
- export function showContextMenuDetails(participantId: string, local = false) {
- return (dispatch: IStore['dispatch'], getState: IStore['getState']) => {
- const { remoteVideoMenu } = getState()['features/base/config'];
-
- if (local) {
- dispatch(openSheet(LocalVideoMenu));
- } else if (!remoteVideoMenu?.disabled) {
- dispatch(openSheet(RemoteVideoMenu, { participantId }));
- }
- };
- }
-
- /**
- * Displays the shared video menu.
- *
- * @param {string} participantId - The ID of the selected meeting participant.
- * @returns {Function}
- */
- export function showSharedVideoMenu(participantId: string) {
- return openSheet(SharedVideoMenu, { participantId });
- }
-
- /**
- * Sets the volume.
- *
- * @param {string} participantId - The participant ID associated with the audio.
- * @param {string} volume - The volume level.
- * @returns {{
- * type: SET_VOLUME,
- * participantId: string,
- * volume: number
- * }}
- */
- export function setVolume(participantId: string, volume: number) {
- return {
- type: SET_VOLUME,
- participantId,
- volume
- };
- }
-
- /**
- * Displays the breakout room participant menu.
- *
- * @param {Object} room - The room the participant is in.
- * @param {string} participantJid - The jid of the participant.
- * @param {string} participantName - The display name of the participant.
- * @returns {Function}
- */
- export function showRoomParticipantMenu(room: Object, participantJid: string, participantName: string) {
- // @ts-ignore
- return openSheet(RoomParticipantMenu, { room,
- participantJid,
- participantName });
- }
|