| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 | 
							- /* @flow */
 - 
 - import type { Dispatch } from 'redux';
 - 
 - import {
 -     SET_AUDIO_MUTED,
 -     SET_CAMERA_FACING_MODE,
 -     SET_VIDEO_MUTED
 - } from './actionTypes';
 - import { CAMERA_FACING_MODE } from './constants';
 - 
 - /**
 -  * Action to set the muted state of the local audio.
 -  *
 -  * @param {boolean} muted - True if the local audio is to be muted or false if
 -  * the local audio is to be unmuted.
 -  * @returns {{
 -  *      type: SET_AUDIO_MUTED,
 -  *      muted: boolean
 -  *  }}
 -  */
 - export function setAudioMuted(muted: boolean) {
 -     return {
 -         type: SET_AUDIO_MUTED,
 -         muted
 -     };
 - }
 - 
 - /**
 -  * Action to set the facing mode of the local camera.
 -  *
 -  * @param {CAMERA_FACING_MODE} cameraFacingMode - The camera facing mode to set.
 -  * @returns {{
 -  *      type: SET_CAMERA_FACING_MODE,
 -  *      cameraFacingMode: CAMERA_FACING_MODE
 -  *  }}
 -  */
 - export function setCameraFacingMode(cameraFacingMode: CAMERA_FACING_MODE) {
 -     return {
 -         type: SET_CAMERA_FACING_MODE,
 -         cameraFacingMode
 -     };
 - }
 - 
 - /**
 -  * Action to set the muted state of the local video.
 -  *
 -  * @param {boolean} muted - True if the local video is to be muted or false if
 -  * the local video is to be unmuted.
 -  * @returns {{
 -  *      type: SET_VIDEO_MUTED,
 -  *      muted: boolean
 -  *  }}
 -  */
 - export function setVideoMuted(muted: boolean) {
 -     return {
 -         type: SET_VIDEO_MUTED,
 -         muted
 -     };
 - }
 - 
 - /**
 -  * Toggles the mute state of the local audio track(s).
 -  *
 -  * @returns {Function}
 -  */
 - export function toggleAudioMuted() {
 -     return (dispatch: Dispatch<*>, getState: Function) => {
 -         const muted = getState()['features/base/media'].audio.muted;
 - 
 -         return dispatch(setAudioMuted(!muted));
 -     };
 - }
 - 
 - /**
 -  * Toggles the camera between front and rear (user and environment).
 -  *
 -  * @returns {Function}
 -  */
 - export function toggleCameraFacingMode() {
 -     return (dispatch: Dispatch<*>, getState: Function) => {
 -         let cameraFacingMode
 -             = getState()['features/base/media'].video.facingMode;
 - 
 -         cameraFacingMode
 -             = cameraFacingMode === CAMERA_FACING_MODE.USER
 -                 ? CAMERA_FACING_MODE.ENVIRONMENT
 -                 : CAMERA_FACING_MODE.USER;
 - 
 -         return dispatch(setCameraFacingMode(cameraFacingMode));
 -     };
 - }
 - 
 - /**
 -  * Toggles the mute state of the local video track(s).
 -  *
 -  * @returns {Function}
 -  */
 - export function toggleVideoMuted() {
 -     return (dispatch: Dispatch<*>, getState: Function) => {
 -         const muted = getState()['features/base/media'].video.muted;
 - 
 -         return dispatch(setVideoMuted(!muted));
 -     };
 - }
 
 
  |