Listenbrainz scrobbling (#1424)
* Refactor session_keys to its own package * Adjust play_tracker - Don't send external NowPlaying/Scrobble for tracks with unknown artist - Continue to the next agent on error * Implement ListenBrainz Agent and Auth Router * Implement frontend for ListenBrainz linking * Update listenBrainzRequest - Don't marshal Player to json - Rename Track to Title * Return ErrRetryLater on ListenBrainz server errors * Add tests for listenBrainzAgent * Add tests for ListenBrainz Client * Adjust ListenBrainzTokenDialog to handle errors better * Refactor listenbrainz.formatListen and listenBrainzRequest structs * Refactor agent auth_routers * Refactor session_keys to agents package * Add test for listenBrainzResponse * Add tests for ListenBrainz auth_router * Update ListenBrainzTokenDialog and auth_router * Adjust player scrobble toggle
This commit is contained in:
@@ -5,6 +5,8 @@ import {
|
||||
DUPLICATE_SONG_WARNING_CLOSE,
|
||||
EXTENDED_INFO_OPEN,
|
||||
EXTENDED_INFO_CLOSE,
|
||||
LISTENBRAINZ_TOKEN_OPEN,
|
||||
LISTENBRAINZ_TOKEN_CLOSE,
|
||||
} from '../actions'
|
||||
|
||||
export const addToPlaylistDialogReducer = (
|
||||
@@ -61,3 +63,26 @@ export const expandInfoDialogReducer = (
|
||||
return previousState
|
||||
}
|
||||
}
|
||||
|
||||
export const listenBrainzTokenDialogReducer = (
|
||||
previousState = {
|
||||
open: false,
|
||||
},
|
||||
payload
|
||||
) => {
|
||||
const { type } = payload
|
||||
switch (type) {
|
||||
case LISTENBRAINZ_TOKEN_OPEN:
|
||||
return {
|
||||
...previousState,
|
||||
open: true,
|
||||
}
|
||||
case LISTENBRAINZ_TOKEN_CLOSE:
|
||||
return {
|
||||
...previousState,
|
||||
open: false,
|
||||
}
|
||||
default:
|
||||
return previousState
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user