f0144a2361
Set up shadcn-svelte components and adopt its design-token system as the base for modernizing the UI. Switch dark mode from the data-theme attribute to the .dark class so shadcn primitives theme correctly. - add components.json, $lib alias (tsconfig + vite), cn() util - install shadcn primitives under src/lib/components/ui - rewrite index.css with shadcn tokens (zinc + brand teal accent) - keep legacy utility/class aliases as a transitional shim - toggle .dark class from theme store in App.svelte Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UmuGqwNBJNEAMaWsdCDqUC
18 lines
453 B
Svelte
18 lines
453 B
Svelte
<script lang="ts">
|
|
import { Dialog as DialogPrimitive } from "bits-ui";
|
|
import { cn } from "$lib/utils.js";
|
|
|
|
let {
|
|
ref = $bindable(null),
|
|
class: className,
|
|
...restProps
|
|
}: DialogPrimitive.DescriptionProps = $props();
|
|
</script>
|
|
|
|
<DialogPrimitive.Description
|
|
bind:ref
|
|
data-slot="dialog-description"
|
|
class={cn("text-muted-foreground *:[a]:hover:text-foreground text-sm *:[a]:underline *:[a]:underline-offset-3", className)}
|
|
{...restProps}
|
|
/>
|