effects.ts 630 B

123456789101112131415161718192021
  1. import { ActionTypeLocal, ActionTypeRemote, LocalAction, RemoteAction } from '../actions';
  2. import { GlobalState } from '../reducer/types';
  3. export function globalEffects(prevState: GlobalState, action: LocalAction): RemoteAction | null {
  4. switch (action.type) {
  5. case ActionTypeLocal.StateSet:
  6. return {
  7. type: ActionTypeRemote.StateSet,
  8. payload: { ...prevState.player, ...action.payload },
  9. };
  10. case ActionTypeLocal.Seeked:
  11. return {
  12. type: ActionTypeRemote.StateSet,
  13. payload: { ...prevState.player, seekTime: action.payload },
  14. };
  15. default:
  16. return null;
  17. }
  18. }