Reinstating tracks (basic), fixes #173

This commit is contained in:
James Barnsley
2017-08-15 21:53:57 +12:00
parent f51e83099e
commit 5b5e4a2351
3 changed files with 30 additions and 1 deletions

View File

@ -76,6 +76,10 @@ class Sidebar extends React.Component{
<Icon name="cd" />
Albums
</Link>
<Link className={this.linkClassName('library/tracks')} to={global.baseURL+"library/tracks"}>
<Icon name="cd" />
Tracks
</Link>
<Link className={this.linkClassName('library/browse')} to={global.baseURL+"library/browse"}>
<Icon name="folder" />
Browse

View File

@ -174,6 +174,31 @@ export default function reducer(spotify = {}, action){
}
return Object.assign({}, spotify, { library_albums: uris })
case 'SPOTIFY_LIBRARY_TRACKS_LOADED':
case 'SPOTIFY_LIBRARY_TRACKS_LOADED_MORE':
var tracks = action.data.items
if (tracks){
for (var i = 0; i < tracks.length; i++){
var track = Object.assign(
{},
tracks[i].track,
{
added_at: tracks[i].added_at
}
)
tracks[i] = track
}
if (spotify.library_tracks){
tracks = [...spotify.library_tracks,...tracks]
}
}
return Object.assign({}, spotify, {
library_tracks: tracks,
library_tracks_more: action.data.next
})
case 'SPOTIFY_LIBRARY_PLAYLISTS_CLEAR':
return Object.assign({}, spotify, { library_playlists: [] })

View File

@ -44,7 +44,7 @@ class LibraryTracks extends React.Component{
<Header icon="music" title="My tracks" />
<section className="content-wrapper">
{ this.props.tracks ? <TrackList tracks={this.props.tracks} /> : null }
<LazyLoadListener enabled={this.props.tracks_more} loadMore={ () => this.loadMore() }/>
<LazyLoadListener loading={this.props.tracks_more} loadMore={() => this.loadMore()}/>
</section>
</div>
);