+
{{ getArtistsString(item.artists) }} • {{ item.album.name }}
- {{ getArtistsString(item.artists) }} • disc
- {{ item.disc_number }} track {{ item.track_number }}
+ {{ getArtistsString(item.artists) }} • disc {{ item.disc_number }} track
+ {{ item.track_number }}
-
+
{{ $t("album_type." + item.album_type) }} •
{{ getArtistsString(item.artists) }} • {{ item.year }}
@@ -100,14 +80,12 @@
- {{ getArtistsString(item.artists) }}
+ {{ getArtistsString(item.artists) }}
{{ item.owner }}
-
+
{{ item.metadata.description }}
@@ -134,9 +112,7 @@
@@ -166,12 +140,27 @@
+
+
+
+
+
+ {{ $t("tooltip.linked") }}
+
+
{{ formatDuration(item.duration) }}
@@ -194,9 +183,7 @@
}}
-
+
- {{
- truncateString(
- api.providers[item.provider_ids[0].prov_id].name,
- 25
- )
- }}
+ {{ truncateString(api.providers[item.provider_ids[0].prov_id].name, 25) }}
-
+
{
api.playMedia(items, QueueOption.PLAY);
- close();
},
icon: mdiPlayCircleOutline,
labelArgs: [],
+ actionStr: "play"
});
// Play NEXT
@@ -309,10 +317,10 @@ export const getPlayMenuItems = function (items: MediaItem[]) {
label: "play_next",
action: () => {
api.playMedia(items, QueueOption.NEXT);
- close();
},
icon: mdiSkipNextCircleOutline,
labelArgs: [],
+ actionStr: "play"
});
}
// Add to Queue
@@ -320,10 +328,10 @@ export const getPlayMenuItems = function (items: MediaItem[]) {
label: "add_queue",
action: () => {
api.playMedia(items, QueueOption.ADD);
- close();
},
icon: mdiPlaylistPlus,
labelArgs: [],
+ actionStr: "play"
});
return playMenuItems;
};
diff --git a/custom_components/mass/frontend/src/components/PanelviewItem.vue b/custom_components/mass/frontend/src/components/PanelviewItem.vue
index 224435db..40052da3 100644
--- a/custom_components/mass/frontend/src/components/PanelviewItem.vue
+++ b/custom_components/mass/frontend/src/components/PanelviewItem.vue
@@ -66,18 +66,6 @@
{{ truncateString(item.name, 35) }}
-
("providers");
Object.assign(this.providers, providers);
- console.log("providers", providers);
this.jobs.value = await this.getData("jobs");
}
@@ -564,7 +563,7 @@ export class MusicAssistantApi {
item_id,
lazy,
refresh,
- force_provider_version,
+ force_provider_version
});
}
@@ -581,7 +580,7 @@ export class MusicAssistantApi {
): Promise {
return this.getData("track/preview", {
provider,
- item_id,
+ item_id
});
}
@@ -590,9 +589,17 @@ export class MusicAssistantApi {
limit?: number,
sort?: string,
library?: boolean,
- search?: string
+ search?: string,
+ albumArtistsOnly?: boolean
): Promise {
- return this.getData("artists", { offset, sort, limit, library, search });
+ return this.getData("artists", {
+ offset,
+ sort,
+ limit,
+ library,
+ search,
+ album_artists_only: albumArtistsOnly
+ });
}
public getArtist(
@@ -640,7 +647,7 @@ export class MusicAssistantApi {
item_id,
lazy,
refresh,
- force_provider_version,
+ force_provider_version
});
}
@@ -757,8 +764,12 @@ export class MusicAssistantApi {
return this.getData("browse", { path });
}
- public search(query: string): Promise