2016-10-14 22:42:45 +13:00
|
|
|
|
|
|
|
|
export default function reducer(mopidy = {}, action){
|
|
|
|
|
switch (action.type) {
|
|
|
|
|
|
2016-11-06 15:47:37 +13:00
|
|
|
case 'MOPIDY_CONNECT':
|
|
|
|
|
case 'MOPIDY_CONNECTING':
|
|
|
|
|
return Object.assign({}, mopidy, { connected: false, connecting: true });
|
|
|
|
|
|
2016-10-16 12:37:37 +13:00
|
|
|
case 'MOPIDY_CONNECTED':
|
2016-10-14 22:42:45 +13:00
|
|
|
return Object.assign({}, mopidy, { connected: true, connecting: false });
|
|
|
|
|
|
2016-10-16 12:37:37 +13:00
|
|
|
case 'MOPIDY_DISCONNECTED':
|
2016-10-14 22:42:45 +13:00
|
|
|
return Object.assign({}, mopidy, { connected: false, connecting: false });
|
|
|
|
|
|
2016-10-18 08:56:53 +13:00
|
|
|
case 'MOPIDY_SET_CONFIG':
|
|
|
|
|
return Object.assign({}, mopidy, {
|
|
|
|
|
host: action.host,
|
|
|
|
|
port: action.port
|
|
|
|
|
});
|
|
|
|
|
|
2016-10-16 12:37:37 +13:00
|
|
|
case 'MOPIDY_CHANGE_TRACK':
|
|
|
|
|
return Object.assign({}, mopidy, {
|
2016-10-21 09:56:07 +13:00
|
|
|
tlid: action.tlid
|
2016-10-16 12:37:37 +13:00
|
|
|
});
|
|
|
|
|
|
2016-11-07 18:09:42 +13:00
|
|
|
case 'MOPIDY_URISCHEMES_FILTERED':
|
2016-11-06 18:29:49 +13:00
|
|
|
return Object.assign({}, mopidy, {
|
|
|
|
|
uri_schemes: action.data
|
|
|
|
|
});
|
2016-10-21 23:27:50 +13:00
|
|
|
|
|
|
|
|
|
2016-10-16 12:37:37 +13:00
|
|
|
/**
|
2016-11-06 18:29:49 +13:00
|
|
|
* State-oriented actions
|
2016-10-16 12:37:37 +13:00
|
|
|
**/
|
2016-10-20 21:38:01 +13:00
|
|
|
case 'MOPIDY_STATE':
|
2016-10-14 22:42:45 +13:00
|
|
|
return Object.assign({}, mopidy, {
|
2016-11-09 13:18:03 +13:00
|
|
|
play_state: action.data
|
2016-10-14 22:42:45 +13:00
|
|
|
});
|
|
|
|
|
|
2016-10-20 21:38:01 +13:00
|
|
|
case 'MOPIDY_CONSUME':
|
2016-10-14 22:42:45 +13:00
|
|
|
return Object.assign({}, mopidy, {
|
|
|
|
|
consume: action.data
|
|
|
|
|
});
|
|
|
|
|
|
2016-10-20 21:38:01 +13:00
|
|
|
case 'MOPIDY_RANDOM':
|
2016-10-14 22:42:45 +13:00
|
|
|
return Object.assign({}, mopidy, {
|
|
|
|
|
random: action.data
|
|
|
|
|
});
|
|
|
|
|
|
2016-10-20 21:38:01 +13:00
|
|
|
case 'MOPIDY_REPEAT':
|
2016-10-14 22:42:45 +13:00
|
|
|
return Object.assign({}, mopidy, {
|
|
|
|
|
repeat: action.data
|
|
|
|
|
});
|
|
|
|
|
|
2016-11-06 18:29:49 +13:00
|
|
|
case 'MOPIDY_VOLUME':
|
|
|
|
|
return Object.assign({}, mopidy, {
|
|
|
|
|
volume: action.data
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
case 'MOPIDY_TIMEPOSITION':
|
|
|
|
|
return Object.assign({}, mopidy, {
|
|
|
|
|
time_position: action.data
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Asset-oriented actions
|
|
|
|
|
**/
|
|
|
|
|
|
2016-11-02 16:51:00 +13:00
|
|
|
case 'MOPIDY_DIRECTORY_LOADED':
|
2016-11-01 07:37:18 +13:00
|
|
|
return Object.assign({}, mopidy, {
|
2016-11-02 16:51:00 +13:00
|
|
|
directory: action.data
|
2016-11-01 07:37:18 +13:00
|
|
|
});
|
|
|
|
|
|
2016-10-14 22:42:45 +13:00
|
|
|
default:
|
|
|
|
|
return mopidy
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|