12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- /* eslint no-param-reassign: 0 */
- export default {
- namespaced: true,
- state: {
- tab: "settings",
- station: {},
- stationPlaylist: { songs: [] },
- autofill: [],
- blacklist: [],
- songsList: [],
- stationPaused: true,
- currentSong: {}
- },
- getters: {},
- actions: {
- showTab: ({ commit }, tab) => commit("showTab", tab),
- editStation: ({ commit }, station) => commit("editStation", station),
- setAutofillPlaylists: ({ commit }, autofillPlaylists) =>
- commit("setAutofillPlaylists", autofillPlaylists),
- setBlacklist: ({ commit }, blacklist) =>
- commit("setBlacklist", blacklist),
- clearStation: ({ commit }) => commit("clearStation"),
- updateSongsList: ({ commit }, songsList) =>
- commit("updateSongsList", songsList),
- updateStationPlaylist: ({ commit }, stationPlaylist) =>
- commit("updateStationPlaylist", stationPlaylist),
- repositionSongInList: ({ commit }, song) =>
- commit("repositionSongInList", song),
- updateStationPaused: ({ commit }, stationPaused) =>
- commit("updateStationPaused", stationPaused),
- updateCurrentSong: ({ commit }, currentSong) =>
- commit("updateCurrentSong", currentSong),
- updateStation: ({ commit }, station) => commit("updateStation", station)
- },
- mutations: {
- showTab(state, tab) {
- state.tab = tab;
- },
- editStation(state, station) {
- state.station = JSON.parse(JSON.stringify(station));
- },
- setAutofillPlaylists(state, autofillPlaylists) {
- state.autofill = JSON.parse(JSON.stringify(autofillPlaylists));
- },
- setBlacklist(state, blacklist) {
- state.blacklist = JSON.parse(JSON.stringify(blacklist));
- },
- clearStation(state) {
- state.station = {};
- state.stationPlaylist = { songs: [] };
- state.autofill = [];
- state.blacklist = [];
- state.songsList = [];
- state.stationPaused = true;
- state.currentSong = {};
- },
- updateSongsList(state, songsList) {
- state.songsList = songsList;
- },
- updateStationPlaylist(state, stationPlaylist) {
- state.stationPlaylist = stationPlaylist;
- },
- repositionSongInList(state, song) {
- if (
- state.songsList[song.newIndex] &&
- state.songsList[song.newIndex].youtubeId === song.youtubeId
- )
- return;
- const { songsList } = state;
- songsList.splice(
- song.newIndex,
- 0,
- songsList.splice(song.oldIndex, 1)[0]
- );
- state.songsList = songsList;
- },
- updateStationPaused(state, stationPaused) {
- state.stationPaused = stationPaused;
- },
- updateCurrentSong(state, currentSong) {
- state.currentSong = currentSong;
- },
- updateStation(state, station) {
- state.station = { ...state.station, ...station };
- }
- }
- };
|