disable single attribute per line

This commit is contained in:
jeffvli 2025-07-12 11:17:54 -07:00
parent 92ed8e20c9
commit 8b141d652c
154 changed files with 390 additions and 1800 deletions

View file

@ -18,17 +18,7 @@ export const ThemeButton = () => {
}}
variant="default"
>
{isDark ? (
<Icon
icon="themeLight"
size={30}
/>
) : (
<Icon
icon="themeDark"
size={30}
/>
)}
{isDark ? <Icon icon="themeLight" size={30} /> : <Icon icon="themeDark" size={30} />}
</ActionIcon>
);
};

View file

@ -32,17 +32,9 @@ export const RemoteContainer = () => {
const debouncedSetRating = debounce(setRating, 400);
return (
<Stack
gap="md"
h="100dvh"
w="100%"
>
<Stack gap="md" h="100dvh" w="100%">
{showImage && (
<Flex
align="center"
justify="center"
w="100%"
>
<Flex align="center" justify="center" w="100%">
<PlayerImage src={song?.imageUrl} />
</Flex>
)}
@ -87,10 +79,7 @@ export const RemoteContainer = () => {
</Group>
</Stack>
)}
<Group
gap={0}
grow
>
<Group gap={0} grow>
<ActionIcon
disabled={!id}
icon="favorite"
@ -109,10 +98,7 @@ export const RemoteContainer = () => {
/>
{(song?.serverType === 'navidrome' || song?.serverType === 'subsonic') && (
<div style={{ margin: 'auto' }}>
<Tooltip
label="Double click to clear"
openDelay={1000}
>
<Tooltip label="Double click to clear" openDelay={1000}>
<Rating
onChange={debouncedSetRating}
onDoubleClick={() => debouncedSetRating(0)}
@ -123,10 +109,7 @@ export const RemoteContainer = () => {
</div>
)}
</Group>
<Group
gap="xs"
grow
>
<Group gap="xs" grow>
<ActionIcon
disabled={!id}
icon="mediaPrevious"
@ -174,10 +157,7 @@ export const RemoteContainer = () => {
variant="default"
/>
</Group>
<Group
gap="xs"
grow
>
<Group gap="xs" grow>
<ActionIcon
icon="mediaShuffle"
iconProps={{
@ -232,10 +212,7 @@ export const RemoteContainer = () => {
max={100}
onChangeEnd={(e) => send({ event: 'volume', volume: e })}
rightLabel={
<Text
fw={600}
size="xs"
>
<Text fw={600} size="xs">
{volume ?? 0}
</Text>
}

View file

@ -13,16 +13,9 @@ export const Shell = () => {
const connected = useConnected();
return (
<AppShell
h="100vh"
padding="md"
w="100vw"
>
<AppShell h="100vh" padding="md" w="100vw">
<AppShell.Header style={{ background: 'var(--theme-colors-surface)' }}>
<Grid
px="md"
py="sm"
>
<Grid px="md" py="sm">
<Grid.Col span={4}>
<Flex
align="center"
@ -33,20 +26,11 @@ export const Shell = () => {
justifySelf: 'flex-start',
}}
>
<Image
fit="contain"
height={32}
src="/favicon.ico"
width={32}
/>
<Image fit="contain" height={32} src="/favicon.ico" width={32} />
</Flex>
</Grid.Col>
<Grid.Col span={8}>
<Group
gap="sm"
justify="flex-end"
wrap="nowrap"
>
<Group gap="sm" justify="flex-end" wrap="nowrap">
<ReconnectButton />
<ImageButton />
<ThemeButton />
@ -58,10 +42,7 @@ export const Shell = () => {
{connected ? (
<RemoteContainer />
) : (
<Center
h="100vh"
w="100vw"
>
<Center h="100vh" w="100vw">
<Spinner />
</Center>
)}

View file

@ -61,10 +61,7 @@ export const WrappedSlider = ({ leftLabel, rightLabel, value, ...props }: Wrappe
const [seek, setSeek] = useState(0);
return (
<Group
align="center"
wrap="nowrap"
>
<Group align="center" wrap="nowrap">
{leftLabel && <Text size="sm">{leftLabel}</Text>}
<PlayerbarSlider
{...props}