@extclp/vexip-ui
Version:
A Vue 3 UI library, Highly customizability, full TypeScript, performance pretty good
1 lines • 1.64 kB
Source Map (JSON)
{"version":3,"file":"symbol.mjs","sources":["../../../components/radio/symbol.ts"],"sourcesContent":["import type { InjectionKey, Ref } from 'vue'\r\nimport type { IconEffect } from '@/components/icon'\r\nimport type { ComponentSize, ComponentState } from '@vexip-ui/config'\r\n\r\nexport type RadioShape = 'default' | 'border' | 'button'\r\nexport type RadioGroupShape = RadioShape | 'button-group'\r\n\r\nexport type RadioRawOption =\r\n | string\r\n | {\r\n label: string | number | boolean,\r\n content?: string,\r\n disabled?: boolean,\r\n }\r\n\r\nexport interface GroupState {\r\n currentValue: string | number | boolean,\r\n size: ComponentSize,\r\n state: ComponentState,\r\n disabled: boolean,\r\n loading: boolean,\r\n loadingIcon: Record<string, any>,\r\n loadingLock: boolean,\r\n loadingEffect: IconEffect,\r\n shape: RadioGroupShape,\r\n updateValue(value: string | number | boolean): void,\r\n registerInput(input: Ref<HTMLElement | null | undefined>): void,\r\n unregisterInput(input: Ref<HTMLElement | null | undefined>): void,\r\n}\r\n\r\nexport type ChangeEvent = (value: string | number | boolean) => void\r\n\r\nexport const GROUP_STATE = '__VXP_RADIO_GROUP_STATE' as unknown as InjectionKey<GroupState>\r\n\r\nexport const radioShapes = Object.freeze<RadioShape[]>(['default', 'border', 'button'])\r\nexport const radioGroupShapes = Object.freeze<RadioGroupShape[]>([...radioShapes, 'button-group'])\r\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;"}