@daysnap/horn-ui
Version:
hron ui
30 lines (26 loc) • 732 B
text/typescript
import type { ExtractPropTypes } from 'vue'
import {
makeArrayProp,
makeStringProp,
makeBooleanProp,
makeNumberProp,
type Looser,
} from '../utils'
export type SourcesItem = Looser<{
label: string
name: string | number
}>
export type AnchorItem = {
anchor: number | string
children: SourcesItem[]
}
export const horSelectPopupProps = {
sources: makeArrayProp<AnchorItem | SourcesItem>(),
title: makeStringProp('请您选择'),
modelValue: makeArrayProp<string | number | SourcesItem>(),
search: makeBooleanProp(true),
showCheckBlock: makeBooleanProp(true),
max: makeNumberProp(9999),
maxMessage: makeStringProp(''),
}
export type HorSelectPopupProps = ExtractPropTypes<typeof horSelectPopupProps>