Skip to content

Commit

Permalink
fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
teticio committed Aug 15, 2021
1 parent 2217679 commit 6e5fdbf
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 10 deletions.
2 changes: 1 addition & 1 deletion src/components/AddTrack.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ export default function AddTrack({ numTracks = 0, spotify = null, onAdd = f => f
const [spinner, setSpinner] = useState(0);

return (
<div className="d-flex flex-row align-items-center">
<div className="d-flex align-items-center">
<TrackSelector
spotify={spotify}
onSelect={(id) => setCurrentId(id)}
Expand Down
17 changes: 10 additions & 7 deletions src/components/Spotify.js
Original file line number Diff line number Diff line change
Expand Up @@ -40,14 +40,17 @@ export default class Spotify extends SpotifyWebApi {
}

async autoRefresh(f, ...params) {
let response = await f();
if (response.error && response.error.message === "The access token expired") {
response = await fetch(process.env.REACT_APP_API_URL + '/refresh_token?refresh_token=' + this.refreshToken);
const json = await response.json();
this.setAccessToken(json.access_token);
response = f();
try {
return await f();
} catch (error) {
let response = JSON.parse(error.response);
if (response.error && response.error.message === "The access token expired") {
let response = await fetch(process.env.REACT_APP_API_URL + '/refresh_token?refresh_token=' + this.refreshToken);
const json = await response.json();
this.setAccessToken(json.access_token);
return f();
}
}
return response;
}

async getCurrentUser() {
Expand Down
15 changes: 13 additions & 2 deletions src/components/TrackSelector.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import { useState, useEffect } from "react";
import { FaSpotify } from "react-icons/fa"
import Col from 'react-bootstrap/Col';
import { debounceFunction } from "../lib";
import "./TrackSelector.css";
Expand All @@ -14,7 +15,11 @@ export default function TrackSelector({ spotify = null, onSelect = f => f, onSea
spotify.autoRefresh(() => spotify.getMyCurrentPlayingTrack())
.then((response) => {
console.log(response);
setCurrentTrack(response.item ? response.item.name : null);
setCurrentTrack(response.item ? {
'track':
`${response.item.artists[0].name} - ${response.item.name}`,
'track_id': response.item.id
} : null);
}).catch(error => console.error('Error:', error));
} else {
setCurrentTrack(null);
Expand Down Expand Up @@ -68,7 +73,13 @@ export default function TrackSelector({ spotify = null, onSelect = f => f, onSea
{currentTrack ?
<>
<div style={{ marginTop: '10px' }} />
<span>{currentTrack}</span>
<div className="d-flex align-items-center" onClick={() => {
////////////////////////////////////////// setSearchResults
}}>
<FaSpotify size="15" className="text-success" />
<div style={{ width: '10px' }} />
<h6 className="text-success">{currentTrack.track}</h6>
</div>
</> : <></>
}
<select onChange={event => onSelect(event.target.value)}>\
Expand Down

0 comments on commit 6e5fdbf

Please sign in to comment.