{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "accordion",
  "dependencies": [
    "@data-slot/accordion"
  ],
  "registryDependencies": [
    "@fulldev/icon"
  ],
  "files": [
    {
      "path": "src/components/ui/accordion/accordion.astro",
      "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\n\nimport { cn } from \"@/lib/utils\"\n\ntype Props = HTMLAttributes<\"div\"> & {\n  multiple?: boolean\n  defaultValue?: string | string[]\n  disabled?: boolean\n  orientation?: \"horizontal\" | \"vertical\"\n  loopFocus?: boolean\n  hiddenUntilFound?: boolean\n  collapsible?: boolean\n}\n\nconst {\n  class: className,\n  multiple,\n  defaultValue,\n  disabled,\n  orientation = \"vertical\",\n  loopFocus,\n  hiddenUntilFound,\n  collapsible,\n  ...props\n} = Astro.props\n\nconst serializedDefaultValue = Array.isArray(defaultValue)\n  ? JSON.stringify(defaultValue)\n  : defaultValue\n---\n\n<div\n  data-slot=\"accordion\"\n  data-multiple={multiple}\n  data-default-value={serializedDefaultValue}\n  data-disabled={disabled}\n  data-orientation={orientation}\n  data-loop-focus={loopFocus}\n  data-hidden-until-found={hiddenUntilFound}\n  data-collapsible={collapsible}\n  class={cn(\"flex w-full flex-col\", className)}\n  {...props}\n>\n  <slot />\n</div>\n\n<script>\n  import { create } from \"@data-slot/accordion\"\n\n  create()\n</script>\n",
      "type": "registry:ui"
    },
    {
      "path": "src/components/ui/accordion/accordion-content.astro",
      "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\n\nimport { cn } from \"@/lib/utils\"\n\ntype Props = HTMLAttributes<\"div\">\n\nconst { class: className, ...props } = Astro.props\n---\n\n<div\n  data-slot=\"accordion-content\"\n  class=\"data-open:animate-accordion-down data-closed:animate-accordion-up overflow-hidden text-sm\"\n  {...props}\n>\n  <div\n    data-slot=\"accordion-content-inner\"\n    class={cn(\n      \"[&_a]:hover:text-foreground h-(--accordion-panel-height) pt-0 pb-4 data-ending-style:h-0 data-starting-style:h-0 [&_a]:underline [&_a]:underline-offset-3 [&_p:not(:last-child)]:mb-4\",\n      className\n    )}\n  >\n    <slot />\n  </div>\n</div>\n",
      "type": "registry:ui"
    },
    {
      "path": "src/components/ui/accordion/accordion-item.astro",
      "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\n\nimport { cn } from \"@/lib/utils\"\n\ntype Props = HTMLAttributes<\"div\"> & {\n  value: string\n  disabled?: boolean\n}\n\nconst { class: className, value, disabled, ...props } = Astro.props\n---\n\n<div\n  data-slot=\"accordion-item\"\n  data-value={value}\n  data-disabled={disabled ? \"\" : undefined}\n  class={cn(\"not-last:border-b\", className)}\n  {...props}\n>\n  <slot />\n</div>\n",
      "type": "registry:ui"
    },
    {
      "path": "src/components/ui/accordion/accordion-trigger.astro",
      "content": "---\nimport type { HTMLAttributes } from \"astro/types\"\n\nimport { cn } from \"@/lib/utils\"\nimport { Icon } from \"@/components/ui/icon\"\n\ntype Props = HTMLAttributes<\"button\">\n\nconst { class: className, type = \"button\", ...props } = Astro.props\n---\n\n<button\n  data-slot=\"accordion-trigger\"\n  type={type}\n  class={cn(\n    \"group/accordion-trigger focus-visible:border-ring focus-visible:ring-ring/50 relative flex w-full flex-1 items-center justify-between gap-4 rounded-md border border-transparent bg-transparent py-4 text-left text-sm font-medium transition-all outline-none hover:underline focus-visible:ring-3 aria-disabled:pointer-events-none aria-disabled:opacity-50\",\n    className\n  )}\n  {...props}\n>\n  <slot />\n  <Icon\n    name=\"chevron-down\"\n    data-slot=\"accordion-trigger-icon\"\n    aria-hidden=\"true\"\n    class=\"text-muted-foreground pointer-events-none ml-auto size-4 shrink-0 group-aria-expanded/accordion-trigger:hidden\"\n  />\n  <Icon\n    name=\"chevron-up\"\n    data-slot=\"accordion-trigger-icon\"\n    aria-hidden=\"true\"\n    class=\"text-muted-foreground pointer-events-none ml-auto hidden size-4 shrink-0 group-aria-expanded/accordion-trigger:inline\"\n  />\n</button>\n",
      "type": "registry:ui"
    },
    {
      "path": "src/components/ui/accordion/index.ts",
      "content": "export { default as Accordion } from \"./accordion.astro\"\nexport { default as AccordionContent } from \"./accordion-content.astro\"\nexport { default as AccordionItem } from \"./accordion-item.astro\"\nexport { default as AccordionTrigger } from \"./accordion-trigger.astro\"\n",
      "type": "registry:ui"
    }
  ],
  "type": "registry:ui"
}