import { defineComponent } from 'vue'; import type { PresetDate } from './interface'; export default defineComponent({ name: 'PresetPanel', props: { prefixCls: String, presets: { type: Array as () => PresetDate[], default: () => [], }, currentPreset: { type: Object as () => PresetDate | null, default: null, }, onClick: Function, onHover: Function, }, setup(props) { return () => { if (!props.presets.length) { return null; } return (
    {props.presets.map(preset => (
  • { e.stopPropagation(); props.onClick(preset.value, preset); }} onMouseenter={() => { props.onHover?.(preset.value); }} onMouseleave={() => { props.onHover?.(null); }} > {preset.label}
  • ))}
); }; }, });