diff --git a/ui/package-lock.json b/ui/package-lock.json index 5840f29e..4af0a6cf 100644 --- a/ui/package-lock.json +++ b/ui/package-lock.json @@ -10435,6 +10435,11 @@ "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=" }, + "lodash.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=" + }, "lodash.sortby": { "version": "4.7.0", "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", diff --git a/ui/package.json b/ui/package.json index fdb1a400..e76c3dd8 100644 --- a/ui/package.json +++ b/ui/package.json @@ -7,6 +7,7 @@ "deepmerge": "^4.2.2", "jwt-decode": "^2.2.0", "lodash.get": "^4.4.2", + "lodash.pick": "^4.4.0", "lodash.throttle": "^4.1.1", "md5-hex": "^3.0.1", "prop-types": "^15.7.2", diff --git a/ui/src/audioplayer/Player.js b/ui/src/audioplayer/Player.js index 9e809c43..b648edd8 100644 --- a/ui/src/audioplayer/Player.js +++ b/ui/src/audioplayer/Player.js @@ -83,7 +83,7 @@ const Player = () => { const addQueueToOptions = (queue) => { return { ...defaultOptions, - autoPlay: queue.playing, + autoPlay: false, clearPriorAudioLists: queue.clear, audioLists: queue.queue.map((item) => item), } diff --git a/ui/src/audioplayer/queue.js b/ui/src/audioplayer/queue.js index da4a2ab3..b12c4180 100644 --- a/ui/src/audioplayer/queue.js +++ b/ui/src/audioplayer/queue.js @@ -99,7 +99,7 @@ const currentPlaying = (audioInfo) => ({ data: audioInfo, }) -const initialState = { queue: [], clear: true, playing: false, current: {} } +const initialState = { queue: [], clear: true, current: {} } const playQueueReducer = (previousState = initialState, payload) => { let queue, current @@ -130,7 +130,6 @@ const playQueueReducer = (previousState = initialState, payload) => { ...previousState, queue: [mapToAudioLists(data)], clear: true, - playing: true, } case PLAYER_SYNC_QUEUE: current = data.length > 0 ? previousState.current : {} @@ -152,7 +151,6 @@ const playQueueReducer = (previousState = initialState, payload) => { ...previousState, queue: newQueue, clear: false, - playing: true, } case PLAYER_PLAY_TRACKS: queue = [] @@ -169,7 +167,6 @@ const playQueueReducer = (previousState = initialState, payload) => { ...previousState, queue, clear: true, - playing: true, } default: return previousState diff --git a/ui/src/store/createAdminStore.js b/ui/src/store/createAdminStore.js index f7866624..f2a7b254 100644 --- a/ui/src/store/createAdminStore.js +++ b/ui/src/store/createAdminStore.js @@ -4,6 +4,7 @@ import createSagaMiddleware from 'redux-saga' import { all, fork } from 'redux-saga/effects' import { adminReducer, adminSaga, USER_LOGOUT } from 'react-admin' import throttle from 'lodash.throttle' +import pick from 'lodash.pick' import { loadState, saveState } from './persistState' export default ({ @@ -36,10 +37,6 @@ export default ({ compose const persistedState = loadState() - // TODO Better encapsulate state in general - if (persistedState && persistedState.queue) { - persistedState.queue.playing = false - } const store = createStore( resettableAppReducer, persistedState, @@ -51,7 +48,7 @@ export default ({ const state = store.getState() saveState({ theme: state.theme, - queue: state.queue, + queue: pick(state.queue, ['queue']), albumView: state.albumView, }) }),