fix navidrome nothing playing, simplify widget params

pull/503/head
Michael Shamoon 2 years ago
parent 210d746ef6
commit 31b644c939

@ -11,11 +11,11 @@ export default function Component({ service }) {
const { data: navidromeData, error: navidromeError } = useWidgetAPI(widget, "getNowPlaying");
if (navidromeError) {
if (navidromeError || navidromeData?.error || navidromeData?.["subsonic-response"]?.error) {
return <Container error={t("widget.api_error")} />;
}
if (!navidromeData || Object.keys(navidromeData["subsonic-response"].nowPlaying).length === 0) {
if (!navidromeData) {
return (
<Container service={service}>
<Block label="navidrome.user" />
@ -26,10 +26,18 @@ export default function Component({ service }) {
);
}
const nowPlaying = Object.values(navidromeData["subsonic-response"].nowPlaying.entry);
const nowPlaying = navidromeData["subsonic-response"].nowPlaying;
if (!nowPlaying.entry) {
// nothing playing
return (
<Container service={service} />
);
}
const nowPlayingEntries = Object.values(nowPlaying.entry);
const songList = [];
nowPlaying.forEach(userPlay => {
nowPlayingEntries.forEach(userPlay => {
const playing = (
<Container service={service}>
<Block label="navidrome.user" value={userPlay.username} />

@ -1,7 +1,7 @@
import genericProxyHandler from "utils/proxy/handlers/generic";
const widget = {
api: "{url}/rest/{endpoint}?u={user}&t={token}&s={salt}&v={version}&c={client}&f=json",
api: "{url}/rest/{endpoint}?u={user}&t={token}&s={salt}&v=1.16.1&c=homepage&f=json",
proxyHandler: genericProxyHandler,
mappings: {

Loading…
Cancel
Save