feat(Label): add font prop to purge custom classes

This commit is contained in:
Ilia Mashkov
2026-04-17 08:55:10 +03:00
parent ef08512986
commit 0562b94b03
3 changed files with 11 additions and 1 deletions

View File

@@ -6,6 +6,7 @@
import { cn } from '$shared/shadcn/utils/shadcn-utils';
import type { Snippet } from 'svelte';
import {
type LabelFont,
type LabelSize,
type LabelVariant,
labelSizeConfig,
@@ -28,6 +29,11 @@ interface Props {
* @default true
*/
uppercase?: boolean;
/**
* Font family
* @default 'mono'
*/
font?: LabelFont;
/**
* Bold text
* @default false
@@ -55,6 +61,7 @@ interface Props {
let {
variant = 'default',
size = 'sm',
font = 'mono',
uppercase = true,
bold = false,
icon,
@@ -68,6 +75,7 @@ let {
class={cn(
'font-mono tracking-widest leading-none',
'inline-flex items-center gap-1.5',
font === 'primary' && 'font-primary tracking-tight',
labelSizeConfig[size],
labelVariantConfig[variant],
uppercase && 'uppercase',

View File

@@ -3,6 +3,8 @@
* Import from here in each component to keep maps DRY.
*/
export type LabelFont = 'mono' | 'primary';
export type LabelVariant =
| 'default'
| 'accent'