// shadcn Label — paired with form inputs for accessible naming.

import type { LabelHTMLAttributes, ReactNode } from 'react'
import { cn } from '../cn'

export const Label = ({ className, children, ...props }: LabelHTMLAttributes<HTMLLabelElement>): ReactNode => (
  <label
    data-slot="label"
    className={cn(
      'flex items-center gap-2 text-sm leading-none font-medium select-none',
      'group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50',
      'peer-disabled:cursor-not-allowed peer-disabled:opacity-50',
      className,
    )}
    {...props}
  >
    {children}
  </label>
)
