{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "demo-primitives-animate-cursor",
  "title": "Animate Cursor Demo",
  "description": "Demo showing an animated cursor.",
  "registryDependencies": [
    "@odysseyui/primitives-animate-cursor"
  ],
  "files": [
    {
      "path": "registry/demo/primitives/animate/cursor/index.tsx",
      "content": "import {\n  Cursor,\n  CursorContainer,\n  CursorFollow,\n  CursorProvider,\n  type CursorFollowSide,\n  type CursorFollowAlign,\n} from '@/components/odyssey/primitives/animate/cursor';\n\ninterface CursorDemoProps {\n  global?: boolean;\n  enableCursor?: boolean;\n  enableCursorFollow?: boolean;\n  side?: CursorFollowSide;\n  sideOffset?: number;\n  align?: CursorFollowAlign;\n  alignOffset?: number;\n}\n\nexport const CursorDemo = ({\n  global = false,\n  enableCursor = true,\n  enableCursorFollow = true,\n  side = 'bottom',\n  sideOffset = 15,\n  align = 'end',\n  alignOffset = 5,\n}: CursorDemoProps) => {\n  return (\n    <div\n      key={String(global)}\n      className=\"max-w-[400px] h-[400px] w-full bg-accent flex items-center justify-center\"\n    >\n      <p className=\"font-medium italic text-muted-foreground\">\n        Move your mouse over the div\n      </p>\n      <CursorProvider global={global}>\n        <CursorContainer>\n          {enableCursor && (\n            <Cursor>\n              <svg\n                className=\"size-6 text-foreground\"\n                xmlns=\"http://www.w3.org/2000/svg\"\n                viewBox=\"0 0 40 40\"\n              >\n                <path\n                  fill=\"currentColor\"\n                  d=\"M1.8 4.4 7 36.2c.3 1.8 2.6 2.3 3.6.8l3.9-5.7c1.7-2.5 4.5-4.1 7.5-4.3l6.9-.5c1.8-.1 2.5-2.4 1.1-3.5L5 2.5c-1.4-1.1-3.5 0-3.3 1.9Z\"\n                />\n              </svg>\n            </Cursor>\n          )}\n          {enableCursorFollow && (\n            <CursorFollow\n              side={side}\n              sideOffset={sideOffset}\n              align={align}\n              alignOffset={alignOffset}\n            >\n              <div className=\"bg-foreground text-background px-2 py-1 text-sm\">\n                Designer\n              </div>\n            </CursorFollow>\n          )}\n        </CursorContainer>\n      </CursorProvider>\n    </div>\n  );\n};\n",
      "type": "registry:ui",
      "target": "components/odysseyui/demo/primitives/animate/cursor.tsx"
    }
  ],
  "meta": {
    "demoProps": {
      "CursorProvider": {
        "global": {
          "value": false
        },
        "enableCursor": {
          "value": true
        },
        "enableCursorFollow": {
          "value": true
        }
      },
      "CursorFollow": {
        "side": {
          "value": "bottom",
          "options": {
            "top": "top",
            "right": "right",
            "bottom": "bottom",
            "left": "left"
          }
        },
        "sideOffset": {
          "value": 15
        },
        "align": {
          "value": "end",
          "options": {
            "start": "start",
            "center": "center",
            "end": "end"
          }
        },
        "alignOffset": {
          "value": 5
        }
      }
    }
  },
  "type": "registry:ui"
}