{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "demo-components-texts-text-highlighter",
  "title": "Text Highlighter Demo",
  "description": "Demo of the TextHighlighter component showcasing all annotation types.",
  "registryDependencies": [
    "https://odysseyui.com/r/components-texts-text-highlighter.json"
  ],
  "files": [
    {
      "path": "registry/demo/components/texts/text-highlighter/index.tsx",
      "content": "import { TextHighlighter } from '@/components/odyssey/components/texts/text-highlighter';\n\ninterface TextHighlighterDemoProps {\n  action?:\n    | 'highlight'\n    | 'underline'\n    | 'box'\n    | 'circle'\n    | 'strike-through'\n    | 'crossed-off'\n    | 'bracket';\n  color?: string;\n  strokeWidth?: number;\n  animationDuration?: number;\n  iterations?: number;\n  padding?: number;\n  multiline?: boolean;\n}\n\nexport const TextHighlighterDemo = ({\n  action = 'highlight',\n  color = '#51A2FF',\n  strokeWidth = 1.5,\n  animationDuration = 600,\n  iterations = 2,\n  padding = 2,\n  multiline = true,\n}: TextHighlighterDemoProps) => {\n  return (\n    <p className=\"text-2xl font-heading font-semibold leading-snug text-center p-10\">\n      <TextHighlighter\n        key={`${action}-${color}-${strokeWidth}-${animationDuration}-${iterations}-${padding}-${multiline}`}\n        action={action}\n        color={color}\n        strokeWidth={strokeWidth}\n        animationDuration={animationDuration}\n        iterations={iterations}\n        padding={padding}\n        multiline={multiline}\n      >\n        Good Design Whispers.\n      </TextHighlighter>\n    </p>\n  );\n};\n",
      "type": "registry:ui",
      "target": "components/odyssey/demo/texts/text-highlighter.tsx"
    }
  ],
  "meta": {
    "demoProps": {
      "TextHighlighter": {
        "action": {
          "value": "highlight",
          "options": {
            "highlight": "highlight",
            "underline": "underline",
            "box": "box",
            "circle": "circle",
            "strike-through": "strike-through",
            "crossed-off": "crossed-off",
            "bracket": "bracket"
          }
        },
        "color": {
          "value": "#51A2FF"
        },
        "strokeWidth": {
          "value": 1.5,
          "min": 0.5,
          "max": 5,
          "step": 0.5
        },
        "animationDuration": {
          "value": 600,
          "min": 100,
          "max": 2000,
          "step": 100
        },
        "iterations": {
          "value": 2,
          "min": 1,
          "max": 5,
          "step": 1
        },
        "padding": {
          "value": 2,
          "min": 0,
          "max": 20,
          "step": 1
        },
        "multiline": {
          "value": true
        }
      }
    }
  },
  "type": "registry:ui"
}