Something went wrong. Try again.
[READ-ONLY] Mirror of https://github.com/FoxxMD/multi-scrobbler. Scrobble plays from multiple sources to multiple clients docs.multi-scrobbler.app
deezer docker jellyfin koito lastfm listenbrainz maloja mopidy mpris music music-assistant plex scrobble self-hosted spotify subsonic tautulli youtube-music
Something went wrong. Try again.
1.1 kB · 38 lines
TSX
at strict
1234567891011121314151617181920212223242526272829303132333435363738import { Fragment } from 'react';import type { ArtistCredit as AC } from '../../core/Atomic';
import { HStack, Tag } from "@chakra-ui/react";import { MusicbrainzInfoIcon } from './musicServices/Musicbrainz';
export const ArtistCredit = (props: { data: AC, showLinks?: boolean, showMbid?: boolean }) => {
const { data, showLinks = true, showMbid } = props;
if (!showLinks) { return data.name; }
return <Fragment> <HStack> {data.name} <HStack style={{ userSelect: 'none' }}> {data.mbid !== undefined ? <MusicbrainzInfoIcon type="artist" mbid={data.mbid} showMbid={showMbid} link tooltip /> : null} </HStack> </HStack> </Fragment>
}
export const ArtistCreditTags = (props: { data: AC[], showLinks?: boolean, showMbid?: boolean }) => ( <HStack> {props.data.map((x, index) => ( <Tag.Root key={index}> <Tag.Label userSelect="all"><ArtistCredit data={x} showLinks={props.showLinks} showMbid={props.showMbid} /></Tag.Label> </Tag.Root> ))} </HStack>)