diff --git a/js/actionTypes.js b/js/actionTypes.js index bbfd952f..d0d87615 100644 --- a/js/actionTypes.js +++ b/js/actionTypes.js @@ -1,5 +1,9 @@ export const CLOSE_CONTEXT_MENU = 'CLOSE_CONTEXT_MENU'; export const CLOSE_WINAMP = 'CLOSE_WINAMP'; +export const IS_PLAYING = 'IS_PLAYING'; +export const IS_STOPPED = 'IS_STOPPED'; +export const PAUSE = 'PAUSE'; +export const PLAY = 'PLAY'; export const SET_BALANCE = 'SET_BALANCE'; export const SET_BAND_VALUE = 'SET_BAND_VALUE'; export const SET_FOCUS = 'SET_FOCUS'; @@ -11,6 +15,7 @@ export const SET_VOLUME = 'SET_VOLUME'; export const START_LOADING = 'START_LOADING'; export const START_WORKING = 'START_WORKING'; export const STEP_MARQUEE = 'STEP_MARQUEE'; +export const STOP = 'STOP'; export const STOP_WORKING = 'STOP_WORKING'; export const TOGGLE_CONTEXT_MENU = 'TOGGLE_CONTEXT_MENU'; export const TOGGLE_DOUBLESIZE_MODE = 'TOGGLE_DOUBLESIZE_MODE'; diff --git a/js/mediaMiddleware.js b/js/mediaMiddleware.js index e6182563..b40ce7d5 100644 --- a/js/mediaMiddleware.js +++ b/js/mediaMiddleware.js @@ -1,40 +1,53 @@ +import { + IS_PLAYING, + IS_STOPPED, + PAUSE, + PLAY, + SET_BALANCE, + SET_VOLUME, + START_WORKING, + STOP, + STOP_WORKING, + UPDATE_TIME_ELAPSED +} from './actionTypes'; + export default (media) => ( (store) => { media.addEventListener('timeupdate', () => { - store.dispatch({type: 'UPDATE_TIME_ELAPSED', elapsed: media.timeElapsed()}); + store.dispatch({type: UPDATE_TIME_ELAPSED, elapsed: media.timeElapsed()}); }); media.addEventListener('ended', () => { - store.dispatch({type: 'IS_STOPPED'}); + store.dispatch({type: IS_STOPPED}); }); media.addEventListener('playing', () => { - store.dispatch({type: 'IS_PLAYING'}); + store.dispatch({type: IS_PLAYING}); }); media.addEventListener('waiting', () => { - store.dispatch({type: 'START_WORKING'}); + store.dispatch({type: START_WORKING}); }); media.addEventListener('stopWaiting', () => { - store.dispatch({type: 'STOP_WORKING'}); + store.dispatch({type: STOP_WORKING}); }); return (next) => (action) => { switch (action.type) { - case 'PLAY': + case PLAY: media.play(); break; - case 'PAUSE': + case PAUSE: media.pause(); break; - case 'STOP': + case STOP: media.stop(); break; - case 'SET_VOLUME': + case SET_VOLUME: media.setVolume(action.volume); break; - case 'SET_BALANCE': + case SET_BALANCE: media.setBalance(action.balance); break; }