feat(Stat): Label wrapper for statistics

This commit is contained in:
Ilia Mashkov
2026-02-24 18:00:43 +03:00
parent 83f2bdcdda
commit eac47fb99d
2 changed files with 170 additions and 0 deletions
+34
View File
@@ -0,0 +1,34 @@
<!--
Component: Stat
A single key:value pair in Space Mono. Optional trailing divider.
-->
<script lang="ts">
import { cn } from '$shared/shadcn/utils/shadcn-utils';
import { Label } from '$shared/ui';
import type { ComponentProps } from 'svelte';
interface Props extends Pick<ComponentProps<typeof Label>, 'variant'> {
label: string;
value: string | number;
/** Renders a 1px vertical divider after the stat. */
separator?: boolean;
class?: string;
}
let {
label,
value,
variant = 'default',
separator = false,
class: className,
}: Props = $props();
</script>
<div class={cn('flex items-center gap-1', className)}>
<Label variant="muted" size="xs">{label}:</Label>
<Label {variant} size="xs" bold>{value}</Label>
</div>
{#if separator}
<div class="w-px h-2 bg-black/10 dark:bg-white/10"></div>
{/if}