import { ComponentDescription } from '@vtj/engine';
const DateTimePicker: ComponentDescription = {
  name: 'ElDatePicker',
  title: '日期时间选择器',
  groupId: 'el',
  categoryId: 'form',
  childIncludes: false,
  package: 'element-plus',
  props: [
    {
      name: 'modelValue',
      defaultValue: '',
      setters: 'ExpressionSetter'
    },
    {
      name: 'readonly',
      defaultValue: false,
      setters: 'BooleanSetter'
    },
    {
      name: 'disabled',
      defaultValue: false,
      setters: 'BooleanSetter'
    },
    {
      name: 'editable',
      defaultValue: true,
      setters: 'BooleanSetter'
    },
    {
      name: 'clearable',
      defaultValue: true,
      setters: 'BooleanSetter'
    },
    {
      name: 'size',
      defaultValue: 'default',
      options: ['large', 'default', 'small'],
      setters: 'SelectSetter'
    },
    {
      name: 'placeholder',
      defaultValue: '',
      setters: 'InputSetter'
    },
    {
      name: 'startPlaceholder',
      defaultValue: '',
      title: '范围选择时开始日期的占位内容',
      label: '开始日期',
      setters: 'InputSetter'
    },
    {
      name: 'endPlaceholder',
      defaultValue: '',
      title: '范围选择时结束日期的占位内容',
      label: '结束日期',
      setters: 'InputSetter'
    },
    {
      name: 'type',
      defaultValue: 'date',
      title: '显示类型',
      options: [
        'year',
        'month',
        'date',
        'dates',
        'datetime',
        'week',
        'datetimerange',
        'daterange',
        'monthrange'
      ],
      setters: 'SelectSetter'
    },
    {
      name: 'format',
      defaultValue: 'YYYY-MM-DD',
      setters: 'InputSetter'
    },
    {
      name: 'popperClass',
      defaultValue: '',
      setters: 'InputSetter'
    },
    {
      name: 'rangeSeparator',
      defaultValue: '-',
      title: '选择范围时的分隔符',
      label: '分隔符',
      setters: 'InputSetter'
    },
    {
      name: 'defaultValue',
      defaultValue: '',
      setters: 'ExpressionSetter'
    },
    {
      name: 'defaultTime',
      defaultValue: '',
      setters: 'ExpressionSetter'
    },
    {
      name: 'valueFormat',
      defaultValue: '',
      options: ['YYYY-MM-DD', 'x'],
      setters: 'SelectSetter'
    },
    {
      name: 'id',
      defaultValue: '',
      setters: ['InputSetter', 'JSONSetter']
    },
    {
      name: 'name',
      defaultValue: '',
      setters: 'InputSetter'
    },
    {
      name: 'unlinkPanels',
      defaultValue: false,
      setters: 'BooleanSetter'
    },
    {
      name: 'prefixIcon',
      defaultValue: 'Date',
      setters: 'InputSetter'
    },
    {
      name: 'clearIcon',
      defaultValue: 'CircleClose',
      setters: 'InputSetter'
    },
    {
      name: 'shortcuts',
      defaultValue: true,
      setters: 'JSONSetter'
    },
    {
      name: 'disabledDate',
      defaultValue: '',
      setters: 'ExpressionSetter'
    },
    {
      name: 'cellClassName',
      defaultValue: true,
      setters: 'ExpressionSetter'
    },
    {
      name: 'teleported',
      defaultValue: true,
      options: ['true', 'false'],
      setters: 'BooleanSetter'
    }
  ],
  events: [
    {
      name: 'change'
    },
    {
      name: 'blur'
    },
    {
      name: 'focus'
    },
    {
      name: 'calendar-change'
    },
    {
      name: 'visible-change'
    }
  ],
  slots: [
    {
      name: 'default'
    },
    {
      name: 'range-separator'
    }
  ]
};

export default DateTimePicker;
