jvdm-ui 1.0.5 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export { Theme, applyStoredTheme, useTheme } from './tokens/index.js';
2
- export { AccessIcon, AlertIcon, Avatar, AvatarSize, BackIcon, Badge, BadgeTone, BoxIcon, BuildingIcon, Button, ButtonOptions, ButtonSize, ButtonVariant, CONTROL, CONTROL_SIZES, CalendarIcon, CarIcon, Card, CardPadding, Checkbox, ChevronIcon, CloseIcon, Combobox, ComboboxOption, ControlSize, DashboardIcon, DatePicker, DateTimePicker, Divider, EyeIcon, EyeOffIcon, FaceIcon, FactoryIcon, FileUpload, FormAlert, FunnelIcon, GavelIcon, IconButton, IconButtonSize, IconSize, Input, InstagramIcon, Kbd, Label, Link, LinkTone, LogoutIcon, MailIcon, MoonIcon, MoreIcon, MultiSelect, MultiSelectOption, NumberInput, PasswordInput, PencilIcon, PhoneIcon, PinInput, PlansIcon, PlusIcon, ProgressBar, ProgressTone, Props, Radio, RangeDatePicker, SearchIcon, Segmented, SegmentedOption, Select, ShieldCheckIcon, Skeleton, Slider, Spinner, SpinnerSize, StaffIcon, StudentsIcon, SunIcon, Svg, Switch, Textarea, ThemeToggle, Thumb, TimePicker, TrashIcon, WhatsappIcon, buttonClass } from './atoms/index.js';
2
+ export { AccessIcon, AlertIcon, Avatar, AvatarSize, BADGE_TONES, BackIcon, Badge, BadgeTone, BoxIcon, BuildingIcon, Button, ButtonOptions, ButtonSize, ButtonVariant, CONTROL, CONTROL_SIZES, CalendarIcon, CarIcon, Card, CardPadding, CheckIcon, Checkbox, ChevronIcon, CloseIcon, Combobox, ComboboxOption, ControlSize, CopyButton, CopyIcon, DashboardIcon, DatePicker, DateTimePicker, Divider, EyeIcon, EyeOffIcon, FaceIcon, FactoryIcon, FileUpload, FormAlert, FunnelIcon, GavelIcon, IconButton, IconButtonSize, IconSize, Input, InstagramIcon, Kbd, Label, Link, LinkTone, LogoutIcon, MailIcon, MoonIcon, MoreIcon, MultiSelect, MultiSelectOption, NumberInput, PasswordInput, PencilIcon, PhoneIcon, PinInput, PlansIcon, PlusIcon, ProgressBar, ProgressTone, Props, Radio, RangeDatePicker, SearchIcon, Segmented, SegmentedOption, Select, ShieldCheckIcon, Skeleton, Slider, Spinner, SpinnerSize, StaffIcon, StudentsIcon, SunIcon, Svg, Switch, Tag, Textarea, ThemeToggle, Thumb, TimePicker, TrashIcon, WhatsappIcon, buttonClass } from './atoms/index.js';
3
3
  export { Accordion, AccordionItem, Banner, BannerTone, Breadcrumb, Callout, CalloutTone, CardTitle, CodeBlock, CommandItem, CommandMenu, ConfirmDialog, Crumb, Drawer, DropdownMenu, Empty, Field, FilterBar, Gallery, ImagePreview, LoadError, Menu, MenuAlign, MenuItemOptions, MenuItemTone, MetricCard, Modal, PageHeader, Pagination, Snackbar, SnackbarStack, StatCard, Step, Stepper, Tab, Tabs, Toast, ToastTone, Tooltip, TooltipSide, TreeNode, TreeView, menuItemClass } from './molecules/index.js';
4
4
  export { AreaChart, AreaPoint, Bar, BarChart, Column, DataTable, DonutChart, DonutDatum, GRID_ROW, KanbanBoard, KanbanCard, KanbanColumn, LineChart, Sparkline, Timeline, TimelineItem } from './organisms/index.js';
5
5
  import 'react';
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  export { applyStoredTheme, useTheme } from './chunk-CGDYSB4G.js';
2
- export { Accordion, Banner, Breadcrumb, Callout, CardTitle, CommandMenu, Drawer, DropdownMenu, Empty, Field, FilterBar, Gallery, ImagePreview, LoadError, Menu, MetricCard, PageHeader, Pagination, SnackbarStack, StatCard, Stepper, Tabs, Toast, Tooltip, TreeView, menuItemClass } from './chunk-AHE2576G.js';
3
- export { AreaChart, BarChart, DataTable, DonutChart, GRID_ROW, KanbanBoard, LineChart, Sparkline, Timeline } from './chunk-JYNDKPAH.js';
4
- export { AccessIcon, AlertIcon, Avatar, BackIcon, Badge, BoxIcon, BuildingIcon, Button, CONTROL, CONTROL_SIZES, CalendarIcon, CarIcon, Card, Checkbox, ChevronIcon, CloseIcon, Combobox, DashboardIcon, DateTimePicker, Divider, EyeIcon, EyeOffIcon, FaceIcon, FactoryIcon, FormAlert, FunnelIcon, GavelIcon, IconButton, Input, InstagramIcon, Kbd, Label, Link, LogoutIcon, MailIcon, MoonIcon, MoreIcon, PasswordInput, PencilIcon, PhoneIcon, PlansIcon, PlusIcon, ProgressBar, Radio, RangeDatePicker, SearchIcon, Segmented, Select, ShieldCheckIcon, Skeleton, Slider, Spinner, StaffIcon, StudentsIcon, SunIcon, Svg, Switch, Textarea, ThemeToggle, Thumb, TrashIcon, WhatsappIcon, buttonClass } from './chunk-WWOXGKLF.js';
2
+ export { Accordion, Banner, Breadcrumb, Callout, CardTitle, CommandMenu, Drawer, DropdownMenu, Empty, Field, FilterBar, Gallery, ImagePreview, LoadError, Menu, MetricCard, PageHeader, Pagination, SnackbarStack, StatCard, Stepper, Tabs, Toast, Tooltip, TreeView, menuItemClass } from './chunk-W4Y7DKK7.js';
3
+ export { AreaChart, BarChart, DataTable, DonutChart, GRID_ROW, KanbanBoard, LineChart, Sparkline, Timeline } from './chunk-M2CFFNC3.js';
4
+ export { AccessIcon, AlertIcon, Avatar, BADGE_TONES, BackIcon, Badge, BoxIcon, BuildingIcon, Button, CONTROL, CONTROL_SIZES, CalendarIcon, CarIcon, Card, CheckIcon, Checkbox, ChevronIcon, CloseIcon, Combobox, CopyIcon, DashboardIcon, DateTimePicker, Divider, EyeIcon, EyeOffIcon, FaceIcon, FactoryIcon, FormAlert, FunnelIcon, GavelIcon, IconButton, Input, InstagramIcon, Kbd, Label, Link, LogoutIcon, MailIcon, MoonIcon, MoreIcon, PasswordInput, PencilIcon, PhoneIcon, PlansIcon, PlusIcon, ProgressBar, Radio, RangeDatePicker, SearchIcon, Segmented, Select, ShieldCheckIcon, Skeleton, Slider, Spinner, StaffIcon, StudentsIcon, SunIcon, Svg, Switch, Tag, Textarea, ThemeToggle, Thumb, TrashIcon, WhatsappIcon, buttonClass } from './chunk-KG5YKCFX.js';
5
5
  //# sourceMappingURL=index.js.map
6
6
  //# sourceMappingURL=index.js.map
@@ -59,9 +59,11 @@ declare function CardTitle({ children, hint }: {
59
59
  hint?: ReactNode;
60
60
  }): react.JSX.Element;
61
61
 
62
- declare function CodeBlock({ code, language, className, }: {
62
+ declare function CodeBlock({ code, language, copyLabel, copiedLabel, className, }: {
63
63
  code: string;
64
64
  language?: string;
65
+ copyLabel?: string;
66
+ copiedLabel?: string;
65
67
  className?: string;
66
68
  }): react.JSX.Element;
67
69
 
@@ -1,4 +1,4 @@
1
- export { Accordion, Banner, Breadcrumb, Callout, CardTitle, CommandMenu, Drawer, DropdownMenu, Empty, Field, FilterBar, Gallery, ImagePreview, LoadError, Menu, MetricCard, PageHeader, Pagination, SnackbarStack, StatCard, Stepper, Tabs, Toast, Tooltip, TreeView, menuItemClass } from '../chunk-AHE2576G.js';
2
- import '../chunk-WWOXGKLF.js';
1
+ export { Accordion, Banner, Breadcrumb, Callout, CardTitle, CommandMenu, Drawer, DropdownMenu, Empty, Field, FilterBar, Gallery, ImagePreview, LoadError, Menu, MetricCard, PageHeader, Pagination, SnackbarStack, StatCard, Stepper, Tabs, Toast, Tooltip, TreeView, menuItemClass } from '../chunk-W4Y7DKK7.js';
2
+ import '../chunk-KG5YKCFX.js';
3
3
  //# sourceMappingURL=index.js.map
4
4
  //# sourceMappingURL=index.js.map
@@ -1,4 +1,4 @@
1
- export { AreaChart, BarChart, DataTable, DonutChart, GRID_ROW, KanbanBoard, LineChart, Sparkline, Timeline } from '../chunk-JYNDKPAH.js';
2
- import '../chunk-WWOXGKLF.js';
1
+ export { AreaChart, BarChart, DataTable, DonutChart, GRID_ROW, KanbanBoard, LineChart, Sparkline, Timeline } from '../chunk-M2CFFNC3.js';
2
+ import '../chunk-KG5YKCFX.js';
3
3
  //# sourceMappingURL=index.js.map
4
4
  //# sourceMappingURL=index.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jvdm-ui",
3
- "version": "1.0.5",
3
+ "version": "1.2.0",
4
4
  "description": "Design system em React 19 + Tailwind v4: tokens em oklch, tema claro/escuro e componentes em quatro camadas.",
5
5
  "license": "MIT",
6
6
  "author": "João Vitor Duarte Mariucio",
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/atoms/avatar/index.tsx","../src/atoms/badge/index.tsx","../src/atoms/button/button-style.ts","../src/atoms/button/button/index.tsx","../src/atoms/card/index.tsx","../src/atoms/checkbox/index.tsx","../src/atoms/combobox/index.tsx","../src/atoms/date-time-picker/locales.ts","../src/atoms/date-time-picker/index.tsx","../src/atoms/divider/index.tsx","../src/atoms/form-alert/index.tsx","../src/atoms/icon/svg/index.tsx","../src/atoms/icon/access-icon/index.tsx","../src/atoms/icon/alert-icon/index.tsx","../src/atoms/icon/back-icon/index.tsx","../src/atoms/icon/box-icon/index.tsx","../src/atoms/icon/building-icon/index.tsx","../src/atoms/icon/calendar-icon/index.tsx","../src/atoms/icon/car-icon/index.tsx","../src/atoms/icon/chevron-icon/index.tsx","../src/atoms/icon/close-icon/index.tsx","../src/atoms/icon/dashboard-icon/index.tsx","../src/atoms/icon/eye-icon/index.tsx","../src/atoms/icon/eye-off-icon/index.tsx","../src/atoms/icon/face-icon/index.tsx","../src/atoms/icon/factory-icon/index.tsx","../src/atoms/icon/funnel-icon/index.tsx","../src/atoms/icon/gavel-icon/index.tsx","../src/atoms/icon/instagram-icon/index.tsx","../src/atoms/icon/logout-icon/index.tsx","../src/atoms/icon/mail-icon/index.tsx","../src/atoms/icon/moon-icon/index.tsx","../src/atoms/icon/pencil-icon/index.tsx","../src/atoms/icon/phone-icon/index.tsx","../src/atoms/icon/plans-icon/index.tsx","../src/atoms/icon/plus-icon/index.tsx","../src/atoms/icon/search-icon/index.tsx","../src/atoms/icon/shield-check-icon/index.tsx","../src/atoms/icon/staff-icon/index.tsx","../src/atoms/icon/students-icon/index.tsx","../src/atoms/icon/sun-icon/index.tsx","../src/atoms/icon/trash-icon/index.tsx","../src/atoms/icon/whatsapp-icon/index.tsx","../src/atoms/icon-button/index.tsx","../src/atoms/input/control.ts","../src/atoms/input/input/index.tsx","../src/atoms/input/select/index.tsx","../src/atoms/input/textarea/index.tsx","../src/atoms/kbd/index.tsx","../src/atoms/label/index.tsx","../src/atoms/link/index.tsx","../src/atoms/more-icon/index.tsx","../src/atoms/progress-bar/index.tsx","../src/atoms/range-date-picker/locales.ts","../src/atoms/range-date-picker/index.tsx","../src/atoms/radio/index.tsx","../src/atoms/segmented/index.tsx","../src/atoms/skeleton/index.tsx","../src/atoms/slider/index.tsx","../src/atoms/spinner/locales.ts","../src/atoms/spinner/index.tsx","../src/atoms/switch/index.tsx","../src/atoms/thumb/index.tsx"],"names":["jsx","SIZES","jsxs","TONES","locales","DatePicker"],"mappings":"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","file":"chunk-WWOXGKLF.js","sourcesContent":["function initials(name: string): string {\n const parts = name.trim().split(/\\s+/);\n const first = parts[0]?.[0] ?? \"\";\n const last = parts.length > 1 ? (parts[parts.length - 1][0] ?? \"\") : \"\";\n return (first + last).toUpperCase();\n}\n\nconst SIZES = {\n sm: \"size-8 text-xs\",\n md: \"size-10 text-sm\",\n lg: \"size-12 text-base\",\n} as const;\n\nexport type AvatarSize = keyof typeof SIZES;\n\nexport function Avatar({\n name,\n size = \"md\",\n label = name,\n}: {\n name: string;\n size?: AvatarSize;\n label?: string;\n}) {\n return (\n <span\n aria-label={label}\n className={`flex shrink-0 items-center justify-center rounded-md bg-raised font-medium text-ink-muted ${SIZES[size]}`}\n role=\"img\"\n >\n {initials(name)}\n </span>\n );\n}\n","import type { ReactNode } from \"react\";\n\nconst TONES = {\n neutral: \"bg-raised text-ink-soft\",\n accent: \"bg-accent-soft text-accent-ink\",\n ok: \"bg-ok-soft text-ok\",\n warn: \"bg-warn-soft text-warn\",\n danger: \"bg-danger-soft text-danger\",\n info: \"bg-info-soft text-info\",\n} as const;\n\nexport type BadgeTone = keyof typeof TONES;\n\nexport function Badge({\n tone = \"neutral\",\n children,\n className = \"\",\n}: {\n tone?: BadgeTone;\n children: ReactNode;\n className?: string;\n}) {\n return (\n <span\n className={`inline-flex items-center gap-1 rounded-xs px-2 py-0.5 text-2xs font-medium ${TONES[tone]} ${className}`}\n >\n {children}\n </span>\n );\n}\n","export type ButtonVariant = \"primary\" | \"secondary\" | \"ghost\" | \"danger\";\nexport type ButtonSize = \"sm\" | \"md\" | \"lg\" | \"icon\" | \"icon-sm\";\n\nconst VARIANTS: Record<ButtonVariant, string> = {\n primary: \"bg-accent font-medium text-on-accent hover:bg-accent-ink\",\n secondary: \"border border-line-strong hover:bg-raised\",\n ghost: \"text-ink-muted hover:bg-raised hover:text-ink-soft\",\n danger: \"border border-danger/50 text-danger hover:bg-danger-soft\",\n};\n\nconst SIZES: Record<ButtonSize, string> = {\n sm: \"gap-2 px-3 py-2 text-xs\",\n md: \"gap-2 px-4 py-3 text-sm\",\n lg: \"gap-2 px-4 py-4 text-base\",\n icon: \"h-10 w-10 shrink-0\",\n \"icon-sm\": \"h-8 w-8 shrink-0\",\n};\n\nconst BASE =\n \"inline-flex touch-manipulation select-none items-center justify-center rounded-md transition-[background-color,border-color,color,box-shadow,transform] duration-(--duration-fast) ease-out active:scale-95\" +\n \" focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-accent focus-visible:ring-2 focus-visible:ring-accent/30\" +\n \" disabled:pointer-events-none disabled:opacity-50\";\n\nexport type ButtonOptions = {\n variant?: ButtonVariant;\n size?: ButtonSize;\n className?: string;\n};\n\nexport function buttonClass({\n variant = \"secondary\",\n size = \"md\",\n className = \"\",\n}: ButtonOptions = {}) {\n return `${BASE} ${VARIANTS[variant]} ${SIZES[size]} ${className}`;\n}\n","import type { ComponentProps } from \"react\";\n\nimport { buttonClass, type ButtonOptions } from \"../button-style\";\n\nexport function Button({\n variant,\n size,\n className,\n ...props\n}: ButtonOptions & ComponentProps<\"button\">) {\n return <button type=\"button\" {...props} className={buttonClass({ variant, size, className })} />;\n}\n","import type { ReactNode } from \"react\";\n\nconst PADDINGS = {\n none: \"\",\n sm: \"p-4\",\n md: \"p-5\",\n lg: \"p-6\",\n} as const;\n\nexport type CardPadding = keyof typeof PADDINGS;\n\nexport function Card({\n children,\n padding = \"md\",\n className = \"\",\n}: {\n children: ReactNode;\n padding?: CardPadding;\n className?: string;\n}) {\n return (\n <div className={`rounded-md border border-line bg-surface ${PADDINGS[padding]} ${className}`}>\n {children}\n </div>\n );\n}\n","import type { ComponentProps, ReactNode } from \"react\";\n\nexport function Checkbox({\n label,\n className = \"\",\n ...props\n}: { label?: ReactNode; className?: string } & ComponentProps<\"input\">) {\n return (\n <label className={`inline-flex min-h-10 items-center gap-3 text-sm text-ink-soft ${className}`}>\n <input\n {...props}\n className=\"size-5 shrink-0 accent-accent focus-visible:ring-2 focus-visible:ring-accent/30 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-accent\"\n type=\"checkbox\"\n />\n {label ? <span>{label}</span> : null}\n </label>\n );\n}\n","import type { ChangeEvent, ComponentProps } from \"react\";\n\nexport type ComboboxOption = { value: string; label: string };\n\nexport function Combobox({\n options,\n onValueChange,\n className = \"\",\n ...props\n}: {\n options: readonly ComboboxOption[];\n onValueChange?: (value: string) => void;\n className?: string;\n} & ComponentProps<\"input\">) {\n const listId = `${props.id ?? props.name ?? \"combobox\"}-options`;\n function handleChange(event: ChangeEvent<HTMLInputElement>) {\n onValueChange?.(event.target.value);\n }\n\n return (\n <>\n <input\n {...props}\n className={`w-full min-w-0 rounded-md border border-line-strong bg-field px-4 py-3 text-base text-ink transition-[background-color,border-color,box-shadow] duration-(--duration-fast) ease-out outline-none focus:border-accent focus:ring-2 focus:ring-accent/30 sm:text-sm ${className}`}\n list={listId}\n onChange={handleChange}\n />\n <datalist id={listId}>\n {options.map((option) => (\n <option key={option.value} label={option.label} value={option.value} />\n ))}\n </datalist>\n </>\n );\n}\n","export const locales = { date: \"Date\", time: \"Time\" };\n","import { DatePicker } from \"../date-picker\";\nimport { TimePicker } from \"../time-picker\";\nimport { locales } from \"./locales\";\n\nexport function DateTimePicker({\n date,\n time,\n onDateChange,\n onTimeChange,\n className = \"\",\n}: {\n date?: string;\n time?: string;\n onDateChange?: (value: string) => void;\n onTimeChange?: (value: string) => void;\n className?: string;\n}) {\n return (\n <div className={`grid gap-3 sm:grid-cols-[1.4fr_1fr] ${className}`}>\n <DatePicker aria-label={locales.date} onValueChange={onDateChange} value={date} />\n <TimePicker aria-label={locales.time} onValueChange={onTimeChange} value={time} />\n </div>\n );\n}\n","import type { ReactNode } from \"react\";\n\nexport function Divider({\n children,\n vertical = false,\n className = \"\",\n}: {\n children?: ReactNode;\n vertical?: boolean;\n className?: string;\n}) {\n if (vertical) {\n return <div aria-hidden=\"true\" className={`w-px self-stretch bg-line ${className}`} />;\n }\n\n if (!children) {\n return <hr className={`h-px border-0 bg-line ${className}`} />;\n }\n\n return (\n <div className={`flex items-center gap-3 ${className}`}>\n <span aria-hidden=\"true\" className=\"h-px flex-1 bg-line\" />\n <span className=\"text-2xs font-medium tracking-caps text-ink-dim uppercase\">{children}</span>\n <span aria-hidden=\"true\" className=\"h-px flex-1 bg-line\" />\n </div>\n );\n}\n","import type { ReactNode } from \"react\";\n\nexport function FormAlert({\n className = \"\",\n children,\n}: {\n className?: string;\n children: ReactNode;\n}) {\n return (\n <p\n role=\"alert\"\n className={`rounded-md bg-danger-soft px-3 py-2 text-sm text-danger ${className}`}\n >\n {children}\n </p>\n );\n}\n","import type { ReactNode } from \"react\";\n\nexport type IconSize = \"sm\" | \"md\" | \"lg\" | \"xl\" | \"2xl\";\n\nconst SIZES: Record<IconSize, string> = {\n sm: \"h-3 w-3\",\n md: \"h-4 w-4\",\n lg: \"h-5 w-5\",\n xl: \"h-6 w-6\",\n \"2xl\": \"h-8 w-8\",\n};\n\nexport type Props = { size?: IconSize; className?: string };\n\nexport function Svg({ size = \"md\", className = \"\", children }: Props & { children: ReactNode }) {\n return (\n <svg\n className={`${SIZES[size]} shrink-0 ${className}`}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"1.6\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n aria-hidden=\"true\"\n >\n {children}\n </svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function AccessIcon(p: Props) {\n return (\n <Svg {...p}>\n <path d=\"M4 8V5.5A1.5 1.5 0 0 1 5.5 4H8\" />\n <path d=\"M16 4h2.5A1.5 1.5 0 0 1 20 5.5V8\" />\n <path d=\"M20 16v2.5a1.5 1.5 0 0 1-1.5 1.5H16\" />\n <path d=\"M8 20H5.5A1.5 1.5 0 0 1 4 18.5V16\" />\n <path d=\"M4 12h16\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function AlertIcon(p: Props) {\n return (\n <Svg {...p}>\n <path d=\"M12 8.5v5\" />\n <path d=\"M12 16.7h.01\" />\n <path d=\"M10.3 3.9 2.6 17.4A1.9 1.9 0 0 0 4.3 20.3h15.4a1.9 1.9 0 0 0 1.7-2.9L13.7 3.9a1.9 1.9 0 0 0-3.4 0Z\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function BackIcon(p: Props) {\n return (\n <Svg {...p}>\n <path d=\"m14 6-6 6 6 6\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function BoxIcon(p: Props) {\n return (\n <Svg {...p}>\n <path d=\"M20.5 8.2v7.6a1.6 1.6 0 0 1-.8 1.4l-6.9 3.8a1.6 1.6 0 0 1-1.6 0l-6.9-3.8a1.6 1.6 0 0 1-.8-1.4V8.2\" />\n <path d=\"m3.9 7.3 7.3-4a1.6 1.6 0 0 1 1.6 0l7.3 4a1 1 0 0 1 0 1.7l-7.3 4a1.6 1.6 0 0 1-1.6 0l-7.3-4a1 1 0 0 1 0-1.7Z\" />\n <path d=\"M12 12.8v8\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function BuildingIcon(p: Props) {\n return (\n <Svg {...p}>\n <path d=\"M4.5 20.5V5a1.5 1.5 0 0 1 1.5-1.5h7A1.5 1.5 0 0 1 14.5 5v15.5\" />\n <path d=\"M14.5 10h4A1.5 1.5 0 0 1 20 11.5v9\" />\n <path d=\"M3 20.5h18M7.5 7.5h4M7.5 11h4M7.5 14.5h4M7.5 18h4\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function CalendarIcon(p: Props) {\n return (\n <Svg {...p}>\n <rect x=\"3.5\" y=\"5\" width=\"17\" height=\"16\" rx=\"2.5\" />\n <path d=\"M3.5 10h17M8 3.5v3M16 3.5v3\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function CarIcon(p: Props) {\n return (\n <Svg {...p}>\n <path d=\"M3 13.5 5 8a2 2 0 0 1 1.9-1.4h10.2A2 2 0 0 1 19 8l2 5.5\" />\n <path d=\"M2.5 13.5h19v4a1 1 0 0 1-1 1h-17a1 1 0 0 1-1-1Z\" />\n <path d=\"M6 18.5v2M18 18.5v2M6 16h1.5M16.5 16H18\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function ChevronIcon(p: Props) {\n return (\n <Svg {...p}>\n <path d=\"m6 9 6 6 6-6\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function CloseIcon(p: Props) {\n return (\n <Svg {...p}>\n <path d=\"M6 6l12 12M18 6 6 18\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function DashboardIcon(p: Props) {\n return (\n <Svg {...p}>\n <rect x=\"3\" y=\"3\" width=\"7\" height=\"7\" rx=\"1.5\" />\n <rect x=\"14\" y=\"3\" width=\"7\" height=\"7\" rx=\"1.5\" />\n <rect x=\"3\" y=\"14\" width=\"7\" height=\"7\" rx=\"1.5\" />\n <rect x=\"14\" y=\"14\" width=\"7\" height=\"7\" rx=\"1.5\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function EyeIcon(p: Props) {\n return (\n <Svg {...p}>\n <path d=\"M2.5 12S6 5.5 12 5.5 21.5 12 21.5 12 18 18.5 12 18.5 2.5 12 2.5 12Z\" />\n <circle cx=\"12\" cy=\"12\" r=\"3\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function EyeOffIcon(p: Props) {\n return (\n <Svg {...p}>\n <path d=\"M9.9 5.8A9.3 9.3 0 0 1 12 5.5c6 0 9.5 6.5 9.5 6.5a17 17 0 0 1-3.3 4.1\" />\n <path d=\"M6.4 7.6A17 17 0 0 0 2.5 12S6 18.5 12 18.5a9.5 9.5 0 0 0 3.7-.7\" />\n <path d=\"M10 10a2.8 2.8 0 0 0 4 4\" />\n <path d=\"m4 4 16 16\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function FaceIcon(p: Props) {\n return (\n <Svg {...p}>\n <circle cx=\"12\" cy=\"9.5\" r=\"3.6\" />\n <path d=\"M4.5 20c0-3.6 3.4-5.6 7.5-5.6s7.5 2 7.5 5.6\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function FactoryIcon(p: Props) {\n return (\n <Svg {...p}>\n <path d=\"M2.5 20.5V11l6 3.5V11l6 3.5V6.5a1 1 0 0 1 1-1h3a1 1 0 0 1 1 1v14Z\" />\n <path d=\"M2 20.5h20\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function FunnelIcon(p: Props) {\n return (\n <Svg {...p}>\n <path d=\"M3 5h18l-7 8v6l-4 2v-8z\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function GavelIcon(p: Props) {\n return (\n <Svg {...p}>\n <path d=\"m13.4 6.6 4 4\" />\n <path d=\"M15.9 2.9a2 2 0 0 1 2.8 0l2.4 2.4a2 2 0 0 1 0 2.8l-2 2a2 2 0 0 1-2.8 0l-2.4-2.4a2 2 0 0 1 0-2.8Z\" />\n <path d=\"m14.2 9.8-7.6 7.6a2 2 0 0 0 0 2.8 2 2 0 0 0 2.8 0l7.6-7.6\" />\n <path d=\"M3.5 21.5h7\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function InstagramIcon(p: Props) {\n return (\n <Svg {...p}>\n <rect x=\"3.5\" y=\"3.5\" width=\"17\" height=\"17\" rx=\"4.5\" />\n <circle cx=\"12\" cy=\"12\" r=\"3.8\" />\n <path d=\"M17 7h.01\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function LogoutIcon(p: Props) {\n return (\n <Svg {...p}>\n <path d=\"M9 4.5H6A1.5 1.5 0 0 0 4.5 6v12A1.5 1.5 0 0 0 6 19.5h3\" />\n <path d=\"M15.5 15.5 19.5 12l-4-3.5M19 12H9.5\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function MailIcon(p: Props) {\n return (\n <Svg {...p}>\n <rect x=\"2.5\" y=\"4.5\" width=\"19\" height=\"15\" rx=\"2.5\" />\n <path d=\"m3.5 7 7.4 5.2a2 2 0 0 0 2.2 0L20.5 7\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function MoonIcon(p: Props) {\n return (\n <Svg {...p}>\n <path d=\"M20 14.2A8.2 8.2 0 0 1 9.8 4a8.2 8.2 0 1 0 10.2 10.2Z\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function PencilIcon(p: Props) {\n return (\n <Svg {...p}>\n <path d=\"M4 20h4l10-10a2.8 2.8 0 0 0-4-4L4 16v4Z\" />\n <path d=\"M13.5 6.5l4 4\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function PhoneIcon(p: Props) {\n return (\n <Svg {...p}>\n <path d=\"M8.4 3.5H5.2a1.9 1.9 0 0 0-1.9 2.1c.4 3.7 1.8 7.2 4.1 10.1a19 19 0 0 0 5.9 5.1 1.9 1.9 0 0 0 2.6-.7l1.4-2.3a1.9 1.9 0 0 0-.6-2.5l-2.2-1.4-2.3 2.3a14 14 0 0 1-3.9-3.9l2.3-2.3-1.4-2.2a1.9 1.9 0 0 0-1.6-.9Z\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function PlansIcon(p: Props) {\n return (\n <Svg {...p}>\n <rect x=\"2.5\" y=\"5\" width=\"19\" height=\"14\" rx=\"2.5\" />\n <path d=\"M2.5 10h19\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function PlusIcon(p: Props) {\n return (\n <Svg {...p}>\n <path d=\"M12 5v14M5 12h14\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function SearchIcon(p: Props) {\n return (\n <Svg {...p}>\n <circle cx=\"11\" cy=\"11\" r=\"6.5\" />\n <path d=\"m16 16 4.5 4.5\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function ShieldCheckIcon(p: Props) {\n return (\n <Svg {...p}>\n <path d=\"M12 2.8 4.5 5.9v5.6c0 4.4 3.1 8.5 7.5 9.7 4.4-1.2 7.5-5.3 7.5-9.7V5.9Z\" />\n <path d=\"m9 11.8 2.2 2.2 4-4\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function StaffIcon(p: Props) {\n return (\n <Svg {...p}>\n <rect x=\"2.5\" y=\"4.5\" width=\"19\" height=\"15\" rx=\"2.5\" />\n <circle cx=\"8.5\" cy=\"10.5\" r=\"2.2\" />\n <path d=\"M5 16.4c0-1.7 1.6-2.6 3.5-2.6s3.5.9 3.5 2.6\" />\n <path d=\"M15 10h4\" />\n <path d=\"M15 14h4\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function StudentsIcon(p: Props) {\n return (\n <Svg {...p}>\n <circle cx=\"9\" cy=\"8\" r=\"3.2\" />\n <path d=\"M3.5 19c0-3 2.5-4.6 5.5-4.6s5.5 1.6 5.5 4.6\" />\n <path d=\"M16.5 6.6a3 3 0 0 1 0 5.6\" />\n <path d=\"M18 14.6c2 .6 3.2 2 3.2 4.4\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function SunIcon(p: Props) {\n return (\n <Svg {...p}>\n <circle cx=\"12\" cy=\"12\" r=\"4\" />\n <path d=\"M12 2.5v2M12 19.5v2M4.6 4.6l1.4 1.4M18 18l1.4 1.4M2.5 12h2M19.5 12h2M4.6 19.4 6 18M18 6l1.4-1.4\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function TrashIcon(p: Props) {\n return (\n <Svg {...p}>\n <path d=\"M5 7h14\" />\n <path d=\"M9 7V5a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2\" />\n <path d=\"M7 7l1 13a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1l1-13\" />\n <path d=\"M10 11v6\" />\n <path d=\"M14 11v6\" />\n </Svg>\n );\n}\n","import { Svg, type Props } from \"../svg\";\n\nexport function WhatsappIcon(p: Props) {\n return (\n <Svg {...p}>\n <path d=\"M3.4 20.6 4.7 16a8.2 8.2 0 1 1 3.3 3.2Z\" />\n <path d=\"M9 9.2c0 3 2.3 5.4 5.2 5.5.7 0 1.3-.5 1.4-1.2l-2-1-.8.9a5 5 0 0 1-2.2-2.3l.9-.8-1-2c-.7.1-1.2.7-1.2 1.4Z\" />\n </Svg>\n );\n}\n","import type { ComponentProps } from \"react\";\n\nimport { buttonClass, type ButtonVariant } from \"../button\";\n\nexport type IconButtonSize = \"icon\" | \"icon-sm\";\n\nexport function IconButton({\n label,\n variant = \"ghost\",\n size = \"icon\",\n className,\n ...props\n}: {\n label: string;\n variant?: ButtonVariant;\n size?: IconButtonSize;\n} & Omit<ComponentProps<\"button\">, \"aria-label\" | \"size\">) {\n return (\n <button\n type=\"button\"\n {...props}\n aria-label={label}\n title={label}\n className={buttonClass({ variant, size, className })}\n />\n );\n}\n","export const CONTROL =\n \"w-full min-w-0 rounded-md border border-line-strong bg-field text-base text-ink sm:text-sm\" +\n \" outline-none transition-[background-color,border-color,box-shadow] duration-(--duration-fast) ease-out focus:border-accent focus:ring-2 focus:ring-accent/30 aria-invalid:border-danger aria-invalid:ring-2 aria-invalid:ring-danger/20\";\n\nexport const CONTROL_SIZES = {\n md: \"px-4 py-3\",\n sm: \"px-3 py-2\",\n} as const;\n\nexport type ControlSize = keyof typeof CONTROL_SIZES;\n","import type { ComponentProps } from \"react\";\n\nimport { CONTROL, CONTROL_SIZES, type ControlSize } from \"../control\";\n\nexport function Input({\n size = \"md\",\n className = \"\",\n ...props\n}: { size?: ControlSize } & Omit<ComponentProps<\"input\">, \"size\">) {\n return <input {...props} className={`${CONTROL} ${CONTROL_SIZES[size]} ${className}`} />;\n}\n","import type { ComponentProps } from \"react\";\n\nimport { ChevronIcon } from \"../../icon\";\nimport { CONTROL, CONTROL_SIZES, type ControlSize } from \"../control\";\n\nexport function Select({\n size = \"md\",\n className = \"\",\n ...props\n}: { size?: ControlSize } & Omit<ComponentProps<\"select\">, \"size\">) {\n return (\n <span className=\"relative block\">\n <select\n {...props}\n className={`${CONTROL} ${CONTROL_SIZES[size]} appearance-none pr-10 ${className}`}\n />\n <ChevronIcon\n className=\"pointer-events-none absolute top-1/2 right-4 -translate-y-1/2 text-ink-muted\"\n size=\"md\"\n />\n </span>\n );\n}\n","import type { ComponentProps } from \"react\";\n\nimport { CONTROL, CONTROL_SIZES, type ControlSize } from \"../control\";\n\nexport function Textarea({\n size = \"md\",\n rows = 4,\n className = \"\",\n ...props\n}: { size?: ControlSize } & Omit<ComponentProps<\"textarea\">, \"size\">) {\n return (\n <textarea\n {...props}\n rows={rows}\n className={`${CONTROL} ${CONTROL_SIZES[size]} resize-y ${className}`}\n />\n );\n}\n","import type { ReactNode } from \"react\";\n\nexport function Kbd({ children, className = \"\" }: { children: ReactNode; className?: string }) {\n return (\n <kbd\n className={`inline-flex min-w-6 items-center justify-center rounded-xs border border-line-strong bg-raised px-1 py-0.5 font-mono text-2xs text-ink-soft ${className}`}\n >\n {children}\n </kbd>\n );\n}\n","import type { ReactNode } from \"react\";\n\nconst TONES = {\n muted: \"text-ink-muted\",\n dim: \"text-ink-dim\",\n accent: \"text-accent-ink\",\n} as const;\n\nexport function Label({\n children,\n tone = \"muted\",\n className = \"\",\n}: {\n children: ReactNode;\n tone?: keyof typeof TONES;\n className?: string;\n}) {\n return <span className={`text-2xs tracking-caps ${TONES[tone]} ${className}`}>{children}</span>;\n}\n","import type { ComponentProps } from \"react\";\n\nconst TONES = {\n accent: \"text-accent-ink decoration-accent/40 hover:decoration-accent\",\n ink: \"text-ink decoration-line-strong hover:decoration-ink-muted\",\n muted: \"text-ink-muted decoration-line hover:text-ink-soft hover:decoration-line-strong\",\n} as const;\n\nexport type LinkTone = keyof typeof TONES;\n\nexport function Link({\n tone = \"accent\",\n className = \"\",\n ...props\n}: { tone?: LinkTone } & ComponentProps<\"a\">) {\n return (\n <a\n {...props}\n className={`rounded-xs underline decoration-1 underline-offset-4 transition-colors duration-(--duration-fast) ease-out focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-accent ${TONES[tone]} ${className}`}\n />\n );\n}\n","import { Svg } from \"../icon\";\n\nexport function MoreIcon() {\n return (\n <Svg size=\"lg\">\n <circle cx=\"12\" cy=\"5\" r=\"1.5\" fill=\"currentColor\" stroke=\"none\" />\n <circle cx=\"12\" cy=\"12\" r=\"1.5\" fill=\"currentColor\" stroke=\"none\" />\n <circle cx=\"12\" cy=\"19\" r=\"1.5\" fill=\"currentColor\" stroke=\"none\" />\n </Svg>\n );\n}\n","export type ProgressTone = \"accent\" | \"ok\" | \"warn\" | \"danger\";\n\nconst FILL: Record<ProgressTone, string> = {\n accent: \"bg-accent\",\n ok: \"bg-ok\",\n warn: \"bg-warn\",\n danger: \"bg-danger\",\n};\n\nconst HEIGHTS = { md: \"h-2\", xs: \"h-1\" } as const;\n\nexport function ProgressBar({\n value,\n tone = \"accent\",\n size = \"md\",\n dim = false,\n label,\n className = \"\",\n}: {\n value: number;\n tone?: ProgressTone;\n size?: keyof typeof HEIGHTS;\n dim?: boolean;\n label?: string;\n className?: string;\n}) {\n const pct = Math.max(0, Math.min(1, value)) * 100;\n\n return (\n <div\n aria-label={label}\n aria-valuemax={100}\n aria-valuemin={0}\n aria-valuenow={pct}\n className={`${HEIGHTS[size]} overflow-hidden rounded-full bg-raised ${className}`}\n role=\"progressbar\"\n >\n <div\n className={`h-full origin-left rounded-full transition-transform duration-(--duration-base) ease-out ${FILL[tone]} ${dim ? \"opacity-45\" : \"\"}`}\n style={{ transform: `scaleX(${pct / 100})` }}\n />\n </div>\n );\n}\n","export const locales = { start: \"Start date\", end: \"End date\" };\n","import { DatePicker } from \"../date-picker\";\nimport { locales } from \"./locales\";\n\nexport function RangeDatePicker({\n start,\n end,\n onStartChange,\n onEndChange,\n className = \"\",\n}: {\n start?: string;\n end?: string;\n onStartChange?: (value: string) => void;\n onEndChange?: (value: string) => void;\n className?: string;\n}) {\n return (\n <div className={`grid gap-3 sm:grid-cols-2 ${className}`}>\n <DatePicker aria-label={locales.start} onValueChange={onStartChange} value={start} />\n <DatePicker aria-label={locales.end} onValueChange={onEndChange} value={end} />\n </div>\n );\n}\n","import type { ComponentProps, ReactNode } from \"react\";\n\nexport function Radio({\n label,\n className = \"\",\n ...props\n}: { label?: ReactNode; className?: string } & ComponentProps<\"input\">) {\n return (\n <label className={`inline-flex min-h-10 items-center gap-3 text-sm text-ink-soft ${className}`}>\n <input\n {...props}\n className=\"size-5 shrink-0 accent-accent focus-visible:ring-2 focus-visible:ring-accent/30 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-accent\"\n type=\"radio\"\n />\n {label ? <span>{label}</span> : null}\n </label>\n );\n}\n","import type { ChangeEvent, ReactNode } from \"react\";\n\nexport type SegmentedOption<T extends string> = {\n value: T;\n label: ReactNode;\n disabled?: boolean;\n};\n\nexport function Segmented<T extends string>({\n name,\n options,\n value,\n defaultValue,\n onValueChange,\n label,\n className = \"\",\n}: {\n name: string;\n options: readonly SegmentedOption<T>[];\n value?: T;\n defaultValue?: T;\n onValueChange?: (value: T) => void;\n label?: string;\n className?: string;\n}) {\n function handleChange(event: ChangeEvent<HTMLInputElement>) {\n onValueChange?.(event.target.value as T);\n }\n\n return (\n <div\n role=\"group\"\n aria-label={label}\n className={`inline-flex gap-1 rounded-md border border-line bg-panel p-1 ${className}`}\n >\n {options.map((option) => (\n <label\n key={option.value}\n className=\"relative inline-flex min-h-8 cursor-pointer items-center justify-center rounded-sm px-3 text-xs text-ink-muted transition-colors duration-(--duration-fast) ease-out select-none not-has-checked:hover:bg-raised not-has-checked:hover:text-ink-soft has-checked:bg-accent has-checked:font-medium has-checked:text-on-accent has-focus-visible:outline-2 has-focus-visible:outline-offset-2 has-focus-visible:outline-accent has-disabled:cursor-not-allowed has-disabled:opacity-50\"\n >\n <input\n className=\"absolute size-0 opacity-0\"\n type=\"radio\"\n name={name}\n value={option.value}\n disabled={option.disabled}\n checked={value === undefined ? undefined : value === option.value}\n defaultChecked={value === undefined ? defaultValue === option.value : undefined}\n onChange={handleChange}\n />\n {option.label}\n </label>\n ))}\n </div>\n );\n}\n","export function Skeleton({ className = \"\" }: { className?: string }) {\n return <div className={`animate-pulse rounded-sm bg-raised ${className}`} />;\n}\n","import type { ComponentProps } from \"react\";\n\nexport function Slider({ className = \"\", ...props }: ComponentProps<\"input\">) {\n return (\n <input\n {...props}\n className={`h-6 w-full cursor-grab touch-manipulation bg-transparent accent-accent focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-accent active:cursor-grabbing disabled:cursor-not-allowed disabled:opacity-50 ${className}`}\n type=\"range\"\n />\n );\n}\n","export const locales = {\n label: \"Loading\",\n};\n","import { locales } from \"./locales\";\n\nconst SIZES = {\n sm: \"h-3 w-3\",\n md: \"h-4 w-4\",\n lg: \"h-5 w-5\",\n xl: \"h-6 w-6\",\n \"2xl\": \"h-8 w-8\",\n} as const;\n\nexport type SpinnerSize = keyof typeof SIZES;\n\nexport function Spinner({\n size = \"md\",\n label = locales.label,\n className = \"\",\n}: {\n size?: SpinnerSize;\n label?: string;\n className?: string;\n}) {\n return (\n <svg\n className={`${SIZES[size]} shrink-0 animate-spin ${className}`}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n role=\"status\"\n aria-label={label}\n >\n <circle cx=\"12\" cy=\"12\" r=\"9\" stroke=\"currentColor\" strokeWidth=\"2.4\" opacity=\"0.2\" />\n <path\n d=\"M21 12a9 9 0 0 0-9-9\"\n stroke=\"currentColor\"\n strokeWidth=\"2.4\"\n strokeLinecap=\"round\"\n />\n </svg>\n );\n}\n","import type { ReactNode } from \"react\";\n\nexport function Switch({\n checked,\n onCheckedChange,\n label,\n disabled = false,\n className = \"\",\n}: {\n checked: boolean;\n onCheckedChange: (checked: boolean) => void;\n label?: ReactNode;\n disabled?: boolean;\n className?: string;\n}) {\n return (\n <label className={`inline-flex min-h-10 items-center gap-3 text-sm text-ink-soft ${className}`}>\n <button\n aria-checked={checked}\n className={`relative h-6 w-10 shrink-0 rounded-full transition-colors duration-(--duration-fast) ease-out focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-accent disabled:opacity-50 ${\n checked ? \"bg-accent\" : \"bg-raised\"\n }`}\n disabled={disabled}\n onClick={() => onCheckedChange(!checked)}\n role=\"switch\"\n type=\"button\"\n >\n <span\n className={`absolute top-1 left-1 size-4 rounded-full transition-[background-color,transform] duration-(--duration-fast) ease-out ${\n checked ? \"translate-x-4 bg-on-accent\" : \"translate-x-0 bg-ink\"\n }`}\n />\n </button>\n {label ? <span>{label}</span> : null}\n </label>\n );\n}\n","import type { ReactNode } from \"react\";\n\nexport function Thumb({\n src,\n alt,\n fallback,\n className = \"\",\n}: {\n src?: string | null;\n alt: string;\n fallback?: ReactNode;\n className?: string;\n}) {\n return (\n <div\n className={`flex aspect-[4/3] items-center justify-center overflow-hidden rounded-md bg-raised text-ink-dim ${className}`}\n >\n {src ? (\n <img src={src} alt={alt} loading=\"lazy\" className=\"h-full w-full object-cover\" />\n ) : (\n fallback\n )}\n </div>\n );\n}\n"]}