UNPKG

wot-design-uni

Version:

一个基于Vue3+TS开发的uni-app组件库,提供70+高质量组件,支持暗黑模式、国际化和自定义主题。

70 lines (64 loc) 1.71 kB
import type { ExtractPropTypes, PropType } from 'vue' import { baseProps, makeBooleanProp, makeNumberProp, makeStringProp } from '../common/props' export type PlacementType = | 'top' | 'top-start' | 'top-end' | 'bottom' | 'bottom-start' | 'bottom-end' | 'left' | 'left-start' | 'left-end' | 'right' | 'right-start' | 'right-end' export type PopoverMode = 'menu' | 'normal' export const popoverProps = { ...baseProps, customArrow: makeStringProp(''), customPop: makeStringProp(''), /** * 是否显示 popover 箭头 */ visibleArrow: makeBooleanProp(true), /** * 显示的内容,也可以通过 slot#content 传入 */ content: [String, Object] as PropType<string | Record<string, any>[]>, /** * 指定 popover 的放置位置:top / top-start / top-end / bottom / bottom-start / bottom-end / left / left-start / left-end / right / right-start / right-end */ placement: makeStringProp<PlacementType>('bottom'), /** * 偏移量 */ offset: makeNumberProp(0), /** * 是否使用内容插槽 */ useContentSlot: makeBooleanProp(false), /** * 是否禁用 popover */ disabled: makeBooleanProp(false), /** * 是否显示关闭按钮 */ showClose: makeBooleanProp(false), /** * 控制 popover 的显示状态 */ modelValue: makeBooleanProp(false), /** * 当前显示的模式,决定内容的展现形式,可选值:normal(普通模式)/ menu(菜单模式) */ mode: makeStringProp<PopoverMode>('normal') } export type PopoverProps = ExtractPropTypes<typeof popoverProps> export type PopoverExpose = { // 打开popover open: () => void // 关闭popover close: () => void }