{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "extends": "none",
  "name": "text-field-revealable-example",
  "title": "Text Field Revealable",
  "description": "text-field-revealable-example",
  "dependencies": [
    "@heroicons/react"
  ],
  "registryDependencies": [
    "https://intentui.com/r/button",
    "https://intentui.com/r/field",
    "https://intentui.com/r/input",
    "https://intentui.com/r/text-field"
  ],
  "files": [
    {
      "path": "src/components/examples/forms/text-field/text-field-revealable-example.tsx",
      "content": "'use client'\n\nimport { EyeIcon, EyeSlashIcon } from '@heroicons/react/20/solid'\nimport { useState } from 'react'\nimport { Button } from '@/components/ui/button'\nimport { Label } from '@/components/ui/field'\nimport { Input, InputGroup } from '@/components/ui/input'\nimport { TextField } from '@/components/ui/text-field'\n\nexport default function TextFieldRevealableDemo() {\n  const [isVisible, setIsVisible] = useState(false)\n\n  const toggleVisibility = () => setIsVisible((prevState) => !prevState)\n  return (\n    <TextField name=\"password\">\n      <Label>Password</Label>\n      <InputGroup className=\"[--input-gutter-end:--spacing(12)]\">\n        <Input placeholder=\"Your password\" type={isVisible ? 'text' : 'password'} />\n        <Button\n          intent=\"secondary\"\n          aria-pressed={isVisible}\n          onPress={toggleVisibility}\n          aria-label={isVisible ? 'Hide password' : 'Show password'}\n        >\n          {isVisible ? <EyeSlashIcon /> : <EyeIcon />}\n        </Button>\n      </InputGroup>\n    </TextField>\n  )\n}\n",
      "type": "registry:page",
      "target": "app/text-field-revealable-example/page.tsx"
    }
  ],
  "type": "registry:page"
}