const CmsFormSelectRemoteMixin = {
  props: {
    dataSource: {
      type: [ Function, Array, Object ],
      default: () => {
        return []
      }
    },
    filterFields: [ Array ],
    extraData: [ Object ],
    value: {
      type: [ String, Number, Boolean ],
      default: () => {
        return undefined
      }
    },
    placeholder: {
      type: [ String ],
      default: () => {
        return '请输入'
      }
    },
    clearable: {
      type: [ Boolean ],
      default: () => {
        return true
      }
    },
    valueKey: {
      type: [ String ],
      default: () => {
        return undefined
      }
    },
    labelKey: {
      type: [ String ],
      default: () => {
        return undefined
      }
    },
    dropConfigKeys: {
      type: [ Object ],
      default: () => {
        return {
          leftKey: undefined,
          rightKey: undefined
        }
      }
    },
    disabled: {
      type: [ Boolean ],
      default: () => {
        return false
      }
    },
    size: {
      type: [ String ],
      default: () => {
        return 'small'
      }
    },
    props: {
      type: [ Object ],
      default: () => {
        return {
          key: 'value',
          value: 'value',
          label: 'label'
        }
      }
    }
  }
}

export { CmsFormSelectRemoteMixin }