{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "label",
  "title": "Label",
  "description": "RN Text 기반 유니버설 라벨 — nativeID ↔ accessibilityLabelledBy 연결 패턴 안내 포함.",
  "dependencies": [
    "@unikit-bridge/ui",
    "class-variance-authority",
    "clsx",
    "tailwind-merge",
    "tailwindcss"
  ],
  "registryDependencies": [
    "utils"
  ],
  "files": [
    {
      "path": "registry/ui/label.tsx",
      "content": "// Label — docs/sdd/02-design.md v2 §3.4 그대로.\n//\n// 입력창 연결 방법（§3.4 — RN 프리미티브만으로 <label for>를 렌더할 수 없는 대안）:\n// 1. （필수） Label에 nativeID를 지정하고 대상 Input에 accessibilityLabelledBy로 같은 값을 전달\n//    예: <Label nativeID=\"unikit-label-name\">이름</Label>\n//        <Input accessibilityLabelledBy=\"unikit-label-name\"  />\n//    → 웹 DOM에서 id ↔ aria-labelledby로 연결된다.\n// 2. （권장） Label의 onPress에서 입력창 ref의 focus（）를 호출하면 클릭→포커스가 이어진다.\n//    （Input은 forwardRef로 focus（） 노출）\nimport { forwardRef } from \"react\";\nimport { Text, type BridgeTextRef, type TextProps } from \"@unikit-bridge/ui/primitives\";\nimport { cva } from \"class-variance-authority\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst labelVariants = cva(\n  // 원본 select-none（라벨 드래그 선택 방지） — 네이티브 Text는 기본 비선택이라 web: 접두.\n  \"font-sans text-sm font-medium leading-none text-foreground web:select-none\",\n);\n\nexport type LabelProps = TextProps;\n\nconst Label = forwardRef<BridgeTextRef, LabelProps>(\n  ({ className, ...props }, ref) => (\n    <Text\n      ref={ref}\n      className={cn(labelVariants(), className)}\n      {...props}\n    />\n  ),\n);\nLabel.displayName = \"Label\";\n\nexport { Label, labelVariants };\n",
      "type": "registry:ui",
      "target": "components/unikit/label.tsx"
    }
  ],
  "type": "registry:ui"
}
