{"version":3,"file":"symbol.mjs","sources":["../../../components/radio/symbol.ts"],"sourcesContent":["import type { InjectionKey, Ref } from 'vue'\nimport type { IconEffect } from '@/components/icon'\nimport type { ComponentSize, ComponentState } from '@vexip-ui/config'\n\nexport type RadioShape = 'default' | 'border' | 'button'\nexport type RadioGroupShape = RadioShape | 'button-group'\n\nexport type RadioRawOption =\n  | string\n  | {\n    label: string | number | boolean,\n    content?: string,\n    disabled?: boolean\n  }\n\nexport interface GroupState {\n  currentValue: string | number | boolean,\n  size: ComponentSize,\n  state: ComponentState,\n  disabled: boolean,\n  loading: boolean,\n  loadingIcon: Record<string, any>,\n  loadingLock: boolean,\n  loadingEffect: IconEffect,\n  shape: RadioGroupShape,\n  updateValue(value: string | number | boolean): void,\n  registerInput(input: Ref<HTMLElement | null | undefined>): void,\n  unregisterInput(input: Ref<HTMLElement | null | undefined>): void\n}\n\nexport type ChangeEvent = (value: string | number | boolean) => void\n\nexport const GROUP_STATE = '__VXP_RADIO_GROUP_STATE' as unknown as InjectionKey<GroupState>\n\nexport const radioShapes = Object.freeze<RadioShape[]>(['default', 'border', 'button'])\nexport const radioGroupShapes = Object.freeze<RadioGroupShape[]>([...radioShapes, 'button-group'])\n"],"names":["GROUP_STATE","radioShapes","radioGroupShapes"],"mappings":"AAgCO,MAAMA,IAAc,2BAEdC,IAAc,OAAO,OAAqB,CAAC,WAAW,UAAU,QAAQ,CAAC,GACzEC,IAAmB,OAAO,OAA0B,CAAC,GAAGD,GAAa,cAAc,CAAC;"}