You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

reducer.js 902B

1234567891011121314151617181920212223242526272829303132333435
  1. /* @flow */
  2. import { ReducerRegistry } from '../base/redux';
  3. import {
  4. LOCAL_RECORDING_ENGAGED,
  5. LOCAL_RECORDING_STATS_UPDATE,
  6. LOCAL_RECORDING_UNENGAGED
  7. } from './actionTypes';
  8. import { recordingController } from './controller';
  9. ReducerRegistry.register('features/local-recording', (state = {}, action) => {
  10. switch (action.type) {
  11. case LOCAL_RECORDING_ENGAGED: {
  12. return {
  13. ...state,
  14. isEngaged: true,
  15. recordingEngagedAt: action.recordingEngagedAt,
  16. encodingFormat: recordingController._format
  17. };
  18. }
  19. case LOCAL_RECORDING_UNENGAGED:
  20. return {
  21. ...state,
  22. isEngaged: false,
  23. recordingEngagedAt: null
  24. };
  25. case LOCAL_RECORDING_STATS_UPDATE:
  26. return {
  27. ...state,
  28. stats: action.stats
  29. };
  30. default:
  31. return state;
  32. }
  33. });