import {
  UserOutlined,
  TeamOutlined,
  ItalicOutlined,
  FontSizeOutlined,
  BorderOutlined,
  BlockOutlined,
  FieldNumberOutlined,
  InsertRowAboveOutlined,
  FolderAddOutlined,
  FontColorsOutlined,
} from '@ant-design/icons';

export const COMPONENT_LIST = [
  {
    componentName: 'InnerContactField',
    icon: <UserOutlined />,
    props: {
      label: '联系人',
      placeholder: '请选择联系人',
      required: false,
      choice: '0'
    },
  },
  {
    componentName: 'DepartmentField',
    icon: <TeamOutlined />,
    props: {
      label: '选择部门',
      placeholder: '请选择部门',
      required: false,
      choice: '0'
    },
  },
  {
    componentName: 'TextField',
    icon: <ItalicOutlined />,
    props: {
      label: '单行输入框',
      placeholder: '请输入',
      required: false,
    },
  },
  {
    componentName: 'TextareaField',
    icon: <FontSizeOutlined />,
    props: {
      label: '多行输入框',
      placeholder: '请输入',
      required: false,
    },
  },
  {
    componentName: 'DDSelectField',
    icon: <BorderOutlined />,
    props: {
      label: '单选框',
      placeholder: '请选择',
      required: false,
      options: [],
    },
  },
  {
    componentName: 'DDMultiSelectField',
    icon: <BlockOutlined />,
    props: {
      label: '多选框',
      placeholder: '请选择',
      require: false,
      options: [],
    },
  },
  {
    componentName: 'NumberField',
    icon: <FieldNumberOutlined />,
    props: {
      label: '数字输入框',
      placeholder: '请输入',
      required: false,
      unit: ''
    },
  },
  {
    componentName: 'DDDateField',
    icon: <InsertRowAboveOutlined />,
    props: {
      label: '日历控件',
      placeholder: '请选择日期',
      required: false,
      unit: ''
    },
  },
  {
    componentName: 'DDAttachment',
    icon: <FolderAddOutlined />,
    props: {
      label: '附件控件',
      placeholder: '请上传附件',
      required: false,
    },
  },
  {
    componentName: 'TextNote',
    icon: <FontColorsOutlined />,
    props: {
      label: '文本说明控件',
      bizAlias: '',
      placeholder: '请输入文本',
      required: false,
    },
  },
];
