{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "faq-accordion-motion",
  "type": "registry:block",
  "title": "FAQ accordion (motion)",
  "description": "The FAQ accordion, with rows appearing as you scroll to them. The open and close animation works without JavaScript.",
  "categories": [
    "motion"
  ],
  "registryDependencies": [
    "https://facadeui.dev/r/faq-accordion.json",
    "https://facadeui.dev/r/motion-primitives.json"
  ],
  "files": [
    {
      "path": "src/sections/faq-accordion-motion.tsx",
      "type": "registry:component",
      "target": "components/sections/faq-accordion-motion.tsx",
      "content": "\"use client\"\n\n/**\n * FaqAccordionMotion — the FAQ with its rows revealed as they scroll in.\n *\n * The open/close animation is *not* what this adds: Base UI plus the CSS height\n * transition already handles that, without JavaScript. What the motion variant\n * contributes is the entrance of the list itself.\n *\n * Dependencies: react, @/components/motion/slots,\n * @/components/sections/faq-accordion.\n */\n\nimport type { ReactNode } from \"react\"\n\nimport { StaggerBlock } from \"@/components/motion/slots\"\nimport { Stagger } from \"@/components/motion/stagger\"\nimport { FaqAccordion, type FaqAccordionProps } from \"@/components/sections/faq-accordion\"\n\nfunction RevealStack({\n  className,\n  children,\n}: {\n  className?: string\n  children?: ReactNode\n}) {\n  return (\n    <Stagger className={className} stagger={0.05}>\n      {children}\n    </Stagger>\n  )\n}\n\nexport type FaqAccordionMotionProps = Omit<FaqAccordionProps, \"listAs\" | \"itemAs\">\n\nexport function FaqAccordionMotion(props: FaqAccordionMotionProps) {\n  return <FaqAccordion {...props} listAs={RevealStack} itemAs={StaggerBlock} />\n}\n"
    }
  ],
  "docs": "Render FacadeMotionProvider once near the root of your app. Icons passed to a -motion section need a client boundary. Docs: https://facadeui.dev/components/faq-accordion-motion"
}
