{
	"$schema": "https://shadcn-svelte.com/schema/registry-item.json",
	"name": "slider",
	"title": "Slider",
	"type": "registry:ui",
	"description": "Kura Slider component source.",
	"devDependencies": [
		"bits-ui@^2.18.1",
		"@internationalized/date@^3.12.2"
	],
	"registryDependencies": [
		"utils"
	],
	"files": [
		{
			"content": "import Root from './slider.svelte';\n\nexport {\n  Root,\n  //\n  Root as Slider\n};\n",
			"type": "registry:file",
			"target": "slider/index.ts"
		},
		{
			"content": "<script lang=\"ts\">\n  import { Slider as SliderPrimitive } from 'bits-ui';\n  import { cn, type WithoutChildrenOrChild } from '$UTILS$.js';\n\n  let {\n    ref = $bindable(null),\n    value = $bindable(),\n    orientation = 'horizontal',\n    class: className,\n    ...restProps\n  }: WithoutChildrenOrChild<SliderPrimitive.RootProps> = $props();\n</script>\n\n<!--\nDiscriminated Unions + Destructing (required for bindable) do not\nget along, so we shut typescript up by casting `value` to `never`.\n-->\n<SliderPrimitive.Root\n  bind:ref\n  bind:value={value as never}\n  data-slot=\"slider\"\n  {orientation}\n  class={cn(\n    'data-vertical:min-h-40 relative flex w-full touch-none items-center select-none data-disabled:opacity-50 data-vertical:h-full data-vertical:w-auto data-vertical:flex-col',\n    className\n  )}\n  {...restProps}\n>\n  {#snippet children({ thumbItems })}\n    <span\n      data-slot=\"slider-track\"\n      data-orientation={orientation}\n      class={cn(\n        'bg-zinc-800 data-horizontal:h-px data-horizontal:w-full data-vertical:h-full data-vertical:w-px relative grow overflow-hidden'\n      )}\n    >\n      <SliderPrimitive.Range\n        data-slot=\"slider-range\"\n        class={cn('bg-[#d0e891] absolute select-none data-horizontal:h-full data-vertical:w-full')}\n      />\n    </span>\n    {#each thumbItems as thumb (thumb.index)}\n      <SliderPrimitive.Thumb\n        data-slot=\"slider-thumb\"\n        index={thumb.index}\n        class=\"border border-[#d0e891] bg-background hover:ring-zinc-300/30 focus-visible:ring-zinc-300/30 size-3 rounded-full transition-colors hover:ring-2 focus-visible:ring-2 focus-visible:outline-hidden block shrink-0 select-none disabled:pointer-events-none disabled:opacity-50\"\n      />\n    {/each}\n  {/snippet}\n</SliderPrimitive.Root>\n",
			"type": "registry:file",
			"target": "slider/slider.svelte"
		}
	]
}