{
  "name": "slider",
  "title": "Slider",
  "description": "Kura Slider component source.",
  "type": "ui",
  "add": "when-added",
  "files": [
    {
      "type": "ui",
      "role": "file",
      "content": "import Root from './slider.svelte';\n\nexport {\n  Root,\n  //\n  Root as Slider\n};\n",
      "path": "slider/index.ts",
      "_imports_": [
        {
          "import": "./slider.svelte",
          "item": "slider",
          "file": {
            "type": "ui",
            "path": "slider/slider.svelte"
          },
          "meta": {}
        }
      ],
      "registryDependencies": [],
      "dependencies": [],
      "devDependencies": []
    },
    {
      "type": "ui",
      "role": "file",
      "content": "<script lang=\"ts\">\n  import { Slider as SliderPrimitive } from 'bits-ui';\n  import { cn, type WithoutChildrenOrChild } from '$lib/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-muted 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-primary 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-link bg-background hover:ring-ring/50 focus-visible:ring-ring/50 size-3 rounded-control transition-colors hover:ring-1 focus-visible:ring-1 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",
      "path": "slider/slider.svelte",
      "_imports_": [
        {
          "import": "$lib/utils.js",
          "item": "utils",
          "file": {
            "type": "lib",
            "path": "utils.ts"
          },
          "meta": {}
        }
      ],
      "registryDependencies": [],
      "dependencies": [],
      "devDependencies": []
    }
  ],
  "registryDependencies": [
    "styles",
    "utils"
  ],
  "dependencies": [
    {
      "ecosystem": "js",
      "name": "bits-ui",
      "version": "^2.18.1"
    }
  ],
  "devDependencies": []
}