{
	"$schema": "https://shadcn-svelte.com/schema/registry-item.json",
	"name": "empty",
	"title": "Empty",
	"type": "registry:ui",
	"description": "Kura Empty component source.",
	"devDependencies": [
		"tailwind-variants@^3.2.2"
	],
	"registryDependencies": [
		"utils"
	],
	"files": [
		{
			"content": "<script lang=\"ts\">\n  import { cn, type WithElementRef } from '$UTILS$.js';\n  import type { HTMLAttributes } from 'svelte/elements';\n\n  let {\n    ref = $bindable(null),\n    class: className,\n    children,\n    ...restProps\n  }: WithElementRef<HTMLAttributes<HTMLDivElement>> = $props();\n</script>\n\n<div\n  bind:this={ref}\n  data-slot=\"empty-content\"\n  class={cn(\n    'flex w-full max-w-sm min-w-0 flex-col items-center gap-4 text-sm text-zinc-300 text-balance',\n    className\n  )}\n  {...restProps}\n>\n  {@render children?.()}\n</div>\n",
			"type": "registry:file",
			"target": "empty/empty-content.svelte"
		},
		{
			"content": "<script lang=\"ts\">\n  import { cn, type WithElementRef } from '$UTILS$.js';\n  import type { HTMLAttributes } from 'svelte/elements';\n\n  let {\n    ref = $bindable(null),\n    class: className,\n    children,\n    ...restProps\n  }: WithElementRef<HTMLAttributes<HTMLDivElement>> = $props();\n</script>\n\n<div\n  bind:this={ref}\n  data-slot=\"empty-description\"\n  class={cn(\n    'mt-0.5 text-sm/relaxed text-zinc-500 [&>a]:text-[#d0e891] [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-[#d0e891]',\n    className\n  )}\n  {...restProps}\n>\n  {@render children?.()}\n</div>\n",
			"type": "registry:file",
			"target": "empty/empty-description.svelte"
		},
		{
			"content": "<script lang=\"ts\">\n  import { cn, type WithElementRef } from '$UTILS$.js';\n  import type { HTMLAttributes } from 'svelte/elements';\n\n  let {\n    ref = $bindable(null),\n    class: className,\n    children,\n    ...restProps\n  }: WithElementRef<HTMLAttributes<HTMLDivElement>> = $props();\n</script>\n\n<div\n  bind:this={ref}\n  data-slot=\"empty-header\"\n  class={cn('flex max-w-sm flex-col items-center gap-2', className)}\n  {...restProps}\n>\n  {@render children?.()}\n</div>\n",
			"type": "registry:file",
			"target": "empty/empty-header.svelte"
		},
		{
			"content": "<script lang=\"ts\" module>\n  import { tv, type VariantProps } from 'tailwind-variants';\n\n  export const emptyMediaVariants = tv({\n    base: 'mb-2 flex shrink-0 items-center justify-center text-zinc-400 [&_svg]:pointer-events-none [&_svg]:shrink-0',\n    variants: {\n      variant: {\n        default: 'bg-transparent',\n        icon: \"flex size-10 shrink-0 items-center justify-center border border-zinc-800 bg-zinc-950 text-[#d0e891] [&_svg:not([class*='size-'])]:size-5\"\n      }\n    },\n    defaultVariants: {\n      variant: 'default'\n    }\n  });\n\n  export type EmptyMediaVariant = VariantProps<typeof emptyMediaVariants>['variant'];\n</script>\n\n<script lang=\"ts\">\n  import { cn, type WithElementRef } from '$UTILS$.js';\n  import type { HTMLAttributes } from 'svelte/elements';\n\n  let {\n    ref = $bindable(null),\n    class: className,\n    children,\n    variant = 'default',\n    ...restProps\n  }: WithElementRef<HTMLAttributes<HTMLDivElement>> & { variant?: EmptyMediaVariant } = $props();\n</script>\n\n<div\n  bind:this={ref}\n  data-slot=\"empty-icon\"\n  data-variant={variant}\n  class={cn(emptyMediaVariants({ variant }), className)}\n  {...restProps}\n>\n  {@render children?.()}\n</div>\n",
			"type": "registry:file",
			"target": "empty/empty-media.svelte"
		},
		{
			"content": "<script lang=\"ts\">\n  import { cn, type WithElementRef } from '$UTILS$.js';\n  import type { HTMLAttributes } from 'svelte/elements';\n\n  let {\n    ref = $bindable(null),\n    class: className,\n    children,\n    ...restProps\n  }: WithElementRef<HTMLAttributes<HTMLDivElement>> = $props();\n</script>\n\n<div\n  bind:this={ref}\n  data-slot=\"empty-title\"\n  class={cn('font-mono text-lg font-semibold tracking-[0.14em] text-zinc-100 uppercase', className)}\n  {...restProps}\n>\n  {@render children?.()}\n</div>\n",
			"type": "registry:file",
			"target": "empty/empty-title.svelte"
		},
		{
			"content": "<script lang=\"ts\">\n  import { cn, type WithElementRef } from '$UTILS$.js';\n  import type { HTMLAttributes } from 'svelte/elements';\n\n  let {\n    ref = $bindable(null),\n    class: className,\n    children,\n    ...restProps\n  }: WithElementRef<HTMLAttributes<HTMLDivElement>> = $props();\n</script>\n\n<div\n  bind:this={ref}\n  data-slot=\"empty\"\n  class={cn(\n    'flex w-full min-w-0 flex-1 flex-col items-center justify-center gap-4 border border-dashed border-zinc-800 bg-background p-12 text-center text-zinc-100 text-balance',\n    className\n  )}\n  {...restProps}\n>\n  {@render children?.()}\n</div>\n",
			"type": "registry:file",
			"target": "empty/empty.svelte"
		},
		{
			"content": "import Root from './empty.svelte';\nimport Header from './empty-header.svelte';\nimport Media from './empty-media.svelte';\nimport Title from './empty-title.svelte';\nimport Description from './empty-description.svelte';\nimport Content from './empty-content.svelte';\n\nexport {\n  Root,\n  Header,\n  Media,\n  Title,\n  Description,\n  Content,\n  //\n  Root as Empty,\n  Header as EmptyHeader,\n  Media as EmptyMedia,\n  Title as EmptyTitle,\n  Description as EmptyDescription,\n  Content as EmptyContent\n};\n",
			"type": "registry:file",
			"target": "empty/index.ts"
		}
	]
}