diff --git a/src/renderer/components/drag-preview/drag-preview.tsx b/src/renderer/components/drag-preview/drag-preview.tsx
index a2d8d7d77..ba3a5236d 100644
--- a/src/renderer/components/drag-preview/drag-preview.tsx
+++ b/src/renderer/components/drag-preview/drag-preview.tsx
@@ -32,7 +32,7 @@ export const DragPreview = memo(({ data }: DragPreviewProps) => {
const itemName = firstItem ? getItemName(firstItem) : 'Item';
const itemImage = useItemImageUrl({
- id: (firstItem as { id: string })?.id,
+ id: (firstItem as { imageId: string })?.imageId,
itemType: data.itemType || LibraryItem.SONG,
type: 'table',
});
diff --git a/src/renderer/components/feature-carousel/feature-carousel.tsx b/src/renderer/components/feature-carousel/feature-carousel.tsx
index 1a8213102..454f3b830 100644
--- a/src/renderer/components/feature-carousel/feature-carousel.tsx
+++ b/src/renderer/components/feature-carousel/feature-carousel.tsx
@@ -119,7 +119,7 @@ const CarouselItem = ({ album }: CarouselItemProps) => {
diff --git a/src/renderer/components/item-card/item-card.tsx b/src/renderer/components/item-card/item-card.tsx
index ab2742356..c79df8c47 100644
--- a/src/renderer/components/item-card/item-card.tsx
+++ b/src/renderer/components/item-card/item-card.tsx
@@ -314,7 +314,7 @@ const CompactItemCard = ({
className={clsx(styles.image, {
[styles.isRound]: isRound,
})}
- id={data?.id}
+ id={data?.imageId}
itemType={itemType}
src={(data as Album | AlbumArtist | Playlist | Song)?.imageUrl}
/>
@@ -532,7 +532,7 @@ const DefaultItemCard = ({
<>
diff --git a/src/renderer/components/item-image/item-image.tsx b/src/renderer/components/item-image/item-image.tsx
index 910d78345..a320f7d9f 100644
--- a/src/renderer/components/item-image/item-image.tsx
+++ b/src/renderer/components/item-image/item-image.tsx
@@ -31,7 +31,7 @@ const getUnloaderIcon = (itemType: LibraryItem) => {
};
const BaseItemImage = (
- props: Omit & {
+ props: Omit & {
id?: null | string;
itemType: LibraryItem;
src?: null | string;
@@ -46,13 +46,20 @@ const BaseItemImage = (
size: 300,
});
- return ;
+ return (
+
+ );
};
export const ItemImage = memo(BaseItemImage);
interface UseItemImageUrlProps {
- id?: string;
+ id?: null | string;
imageUrl?: null | string;
itemType: LibraryItem;
serverId?: string;
diff --git a/src/renderer/components/item-list/item-table-list/columns/image-column.tsx b/src/renderer/components/item-list/item-table-list/columns/image-column.tsx
index 8a300e948..c0ecf27aa 100644
--- a/src/renderer/components/item-list/item-table-list/columns/image-column.tsx
+++ b/src/renderer/components/item-list/item-table-list/columns/image-column.tsx
@@ -83,7 +83,7 @@ export const ImageColumn = (props: ItemTableListInnerColumn) => {
[styles.imageContainerWithAspectRatio]:
props.size === 'default' || props.size === 'large',
})}
- id={item?.id}
+ id={item?.imageId}
itemType={item?._itemType}
src={item?.imageUrl}
/>
diff --git a/src/renderer/components/item-list/item-table-list/columns/title-combined-column.tsx b/src/renderer/components/item-list/item-table-list/columns/title-combined-column.tsx
index 4f5356011..ddbe707d1 100644
--- a/src/renderer/components/item-list/item-table-list/columns/title-combined-column.tsx
+++ b/src/renderer/components/item-list/item-table-list/columns/title-combined-column.tsx
@@ -100,7 +100,7 @@ export const DefaultTitleCombinedColumn = (props: ItemTableListInnerColumn) => {
>
@@ -236,7 +236,7 @@ export const QueueSongTitleCombinedColumn = (props: ItemTableListInnerColumn) =>
>
diff --git a/src/renderer/features/player/components/left-controls.tsx b/src/renderer/features/player/components/left-controls.tsx
index 497171dc0..fbd36f394 100644
--- a/src/renderer/features/player/components/left-controls.tsx
+++ b/src/renderer/features/player/components/left-controls.tsx
@@ -121,7 +121,7 @@ export const LeftControls = () => {
styles.playerbarImage,
PlaybackSelectors.playerCoverArt,
)}
- id={currentSong?.id}
+ id={currentSong?.imageId}
itemType={LibraryItem.SONG}
loading="eager"
/>
diff --git a/src/renderer/features/player/components/mobile-playerbar.tsx b/src/renderer/features/player/components/mobile-playerbar.tsx
index eb0e5f34e..9c3dafdf6 100644
--- a/src/renderer/features/player/components/mobile-playerbar.tsx
+++ b/src/renderer/features/player/components/mobile-playerbar.tsx
@@ -92,7 +92,7 @@ export const MobilePlayerbar = () => {
styles.playerbarImage,
PlaybackSelectors.playerCoverArt,
)}
- id={currentSong.id}
+ id={currentSong.imageId}
itemType={LibraryItem.SONG}
loading="eager"
/>
diff --git a/src/renderer/features/playlists/components/add-to-playlist-context-modal.tsx b/src/renderer/features/playlists/components/add-to-playlist-context-modal.tsx
index dded44a02..64456f994 100644
--- a/src/renderer/features/playlists/components/add-to-playlist-context-modal.tsx
+++ b/src/renderer/features/playlists/components/add-to-playlist-context-modal.tsx
@@ -556,7 +556,7 @@ const PlaylistTableItem = memo(
{
{({ isHighlighted }) => (
{
{
{({ isHighlighted }) => (
({
id: entry.Id,
diff --git a/src/shared/types/domain-types.ts b/src/shared/types/domain-types.ts
index 6086011ab..1563d9215 100644
--- a/src/shared/types/domain-types.ts
+++ b/src/shared/types/domain-types.ts
@@ -225,15 +225,8 @@ export type AlbumArtist = {
userRating: null | number;
};
-export type Artist = {
+export type Artist = Omit & {
_itemType: LibraryItem.ARTIST;
- _serverId: string;
- _serverType: ServerType;
- biography: null | string;
- createdAt: string;
- id: string;
- name: string;
- updatedAt: string;
};
export type AuthenticationResponse = {