mirror of
https://github.com/captbaritone/webamp.git
synced 2026-01-24 02:36:00 +00:00
29 lines
853 B
JavaScript
29 lines
853 B
JavaScript
import { createStore, applyMiddleware } from "redux";
|
|
import thunk from "redux-thunk";
|
|
import { composeWithDevTools } from "redux-devtools-extension";
|
|
import reducer from "./reducers";
|
|
import mediaMiddleware from "./mediaMiddleware";
|
|
import analyticsMiddleware from "./analyticsMiddleware";
|
|
import { merge } from "./utils";
|
|
import { UPDATE_TIME_ELAPSED, STEP_MARQUEE } from "./actionTypes";
|
|
|
|
const compose = composeWithDevTools({
|
|
actionsBlacklist: [UPDATE_TIME_ELAPSED, STEP_MARQUEE]
|
|
});
|
|
|
|
const getStore = (media, stateOverrides) => {
|
|
let initialState;
|
|
if (stateOverrides) {
|
|
initialState = merge(
|
|
reducer(undefined, { type: "@@init" }),
|
|
stateOverrides
|
|
);
|
|
}
|
|
return createStore(
|
|
reducer,
|
|
initialState,
|
|
compose(applyMiddleware(thunk, mediaMiddleware(media), analyticsMiddleware))
|
|
);
|
|
};
|
|
|
|
export default getStore;
|