@fctv/js
Version:
Call SDK for JavaScript
71 lines (68 loc) • 1.27 kB
JavaScript
import {
END_CALL,
INCOMING_CALL,
LOCAL_STREAM, LOGOUT,
NEW_CALL,
REMOTE_STREAM,
TIME_ELAPSED,
UPDATE_CALL_STATE
} from '../actions/actionTypes';
const defaultState = {
timeElapsed: null,
call: null,
incomingCall: null,
callState: null,
localStream: null,
remoteStream: null
};
export default (state = defaultState, action) => {
switch (action.type) {
case TIME_ELAPSED: {
return {
...state,
timeElapsed: action.payload.timeElapsed
}
}
case INCOMING_CALL: {
return {
...state,
incomingCall: action.payload.incomingCall
}
}
case NEW_CALL: {
return {
...state,
call: action.payload.call
}
}
case END_CALL: {
return {
...state,
call: null
}
}
case LOCAL_STREAM: {
return {
...state,
localStream: action.payload.localStream
}
}
case REMOTE_STREAM: {
return {
...state,
remoteStream: action.payload.remoteStream
}
}
case UPDATE_CALL_STATE: {
return {
...state,
callState: action.payload.callState
}
}
case LOGOUT: {
return defaultState;
}
default:
return state;
}
}