{"version":3,"file":"radio.cjs","sources":["../../../components/radio/radio.tsx"],"sourcesContent":["import { Radio as RadioPrimitive } from '@base-ui/react/radio';\nimport { RadioGroup as RadioGroupPrimitive } from '@base-ui/react/radio-group';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { useFieldContext } from '../field';\n\nimport styles from './radio.module.css';\n\nconst radioGroupVariants = cva(styles.group, {\n  variants: {\n    orientation: {\n      vertical: '',\n      horizontal: styles['group-horizontal']\n    },\n    size: {\n      small: styles['group-small'],\n      large: styles['group-large']\n    }\n  },\n  defaultVariants: {\n    orientation: 'vertical',\n    size: 'large'\n  }\n});\n\nconst radioVariants = cva(styles.radioitem, {\n  variants: {\n    size: {\n      small: styles.small,\n      large: styles.large\n    }\n  }\n});\n\ninterface RadioGroupProps\n  extends RadioGroupPrimitive.Props,\n    Omit<VariantProps<typeof radioGroupVariants>, 'orientation'> {\n  orientation?: 'vertical' | 'horizontal';\n}\n\nfunction RadioGroup({\n  className,\n  orientation = 'vertical',\n  size,\n  required,\n  ...props\n}: RadioGroupProps) {\n  const fieldContext = useFieldContext();\n  const resolvedRequired = required ?? fieldContext?.required;\n\n  return (\n    <RadioGroupPrimitive\n      aria-orientation={orientation}\n      className={radioGroupVariants({ orientation, size, className })}\n      required={resolvedRequired}\n      data-slot='radio-group'\n      {...props}\n    />\n  );\n}\n\nRadioGroup.displayName = 'Radio.Group';\n\ninterface RadioItemProps\n  extends RadioPrimitive.Root.Props,\n    VariantProps<typeof radioVariants> {}\n\nfunction RadioItem({ className, size, ...props }: RadioItemProps) {\n  return (\n    <RadioPrimitive.Root\n      data-slot='radio'\n      {...props}\n      className={radioVariants({ size, className })}\n    >\n      <RadioPrimitive.Indicator\n        className={styles.indicator}\n        data-slot='radio-indicator'\n        keepMounted\n      />\n    </RadioPrimitive.Root>\n  );\n}\n\nRadioItem.displayName = 'Radio';\n\nexport const Radio = Object.assign(RadioItem, {\n  Group: RadioGroup\n});\n"],"names":["cva","styles","useFieldContext","_jsx","RadioGroupPrimitive","RadioPrimitive"],"mappings":";;;;;;;;;;AAOA,MAAM,kBAAkB,GAAGA,0BAAG,CAACC,oBAAM,CAAC,KAAK,EAAE;AAC3C,IAAA,QAAQ,EAAE;AACR,QAAA,WAAW,EAAE;AACX,YAAA,QAAQ,EAAE,EAAE;AACZ,YAAA,UAAU,EAAEA,oBAAM,CAAC,kBAAkB,CAAC;AACvC,SAAA;AACD,QAAA,IAAI,EAAE;AACJ,YAAA,KAAK,EAAEA,oBAAM,CAAC,aAAa,CAAC;AAC5B,YAAA,KAAK,EAAEA,oBAAM,CAAC,aAAa,CAAC;AAC7B,SAAA;AACF,KAAA;AACD,IAAA,eAAe,EAAE;AACf,QAAA,WAAW,EAAE,UAAU;AACvB,QAAA,IAAI,EAAE,OAAO;AACd,KAAA;AACF,CAAA,CAAC,CAAC;AAEH,MAAM,aAAa,GAAGD,0BAAG,CAACC,oBAAM,CAAC,SAAS,EAAE;AAC1C,IAAA,QAAQ,EAAE;AACR,QAAA,IAAI,EAAE;YACJ,KAAK,EAAEA,oBAAM,CAAC,KAAK;YACnB,KAAK,EAAEA,oBAAM,CAAC,KAAK;AACpB,SAAA;AACF,KAAA;AACF,CAAA,CAAC,CAAC;AAQH,SAAS,UAAU,CAAC,EAClB,SAAS,EACT,WAAW,GAAG,UAAU,EACxB,IAAI,EACJ,QAAQ,EACR,GAAG,KAAK,EACQ,EAAA;AAChB,IAAA,MAAM,YAAY,GAAGC,+BAAe,EAAE,CAAC;AACvC,IAAA,MAAM,gBAAgB,GAAG,QAAQ,IAAI,YAAY,EAAE,QAAQ,CAAC;AAE5D,IAAA,QACEC,cAAA,CAACC,qBAAmB,EAAA,EAAA,kBAAA,EACA,WAAW,EAC7B,SAAS,EAAE,kBAAkB,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAC/D,QAAQ,EAAE,gBAAgB,EAChB,WAAA,EAAA,aAAa,EACnB,GAAA,KAAK,EACT,CAAA,EACF;AACJ,CAAC;AAED,UAAU,CAAC,WAAW,GAAG,aAAa,CAAC;AAMvC,SAAS,SAAS,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,KAAK,EAAkB,EAAA;AAC9D,IAAA,QACED,cAAC,CAAAE,WAAc,CAAC,IAAI,iBACR,OAAO,EAAA,GACb,KAAK,EACT,SAAS,EAAE,aAAa,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAA,QAAA,EAE7CF,eAACE,WAAc,CAAC,SAAS,EAAA,EACvB,SAAS,EAAEJ,oBAAM,CAAC,SAAS,eACjB,iBAAiB,EAC3B,WAAW,EACX,IAAA,EAAA,CAAA,EAAA,CACkB,EACtB;AACJ,CAAC;AAED,SAAS,CAAC,WAAW,GAAG,OAAO,CAAC;MAEnB,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE;AAC5C,IAAA,KAAK,EAAE,UAAU;AAClB,CAAA;;;;"}