// 通用的属性
const drawerProps = {
  show: Boolean,
  displayDirective: {
    type: String,
    default: 'show'
  },
  closable: {
    type: Boolean,
    default: true
  },
  mask: {
    type: Boolean,
    default: true
  },
  maskClosable: {
    type: Boolean,
    default: true
  },
  escClosable: {
    type: Boolean,
    default: true
  },
  // 没有遮罩层，页面其他交互是否可操作
  operable: {
    type: Boolean,
    default: false
  },
  title: String,
  okText: String,
  okLoading: Boolean,
  cancelText: String,
  showCancel: {
    type: Boolean,
    default: true
  },
  dimension: {
    type: [String, Number]
    // TODO: 废弃 height 和 width 以后，恢复此处默认值
    // default: 520,
  },
  // DEPRECATED: 后续仅支持 dimension
  width: {
    type: [String, Number]
  },
  // DEPRECATED: 后续仅支持 dimension
  height: {
    type: [String, Number]
  },
  footer: {
    type: Boolean,
    default: false
  },
  footerBorder: {
    type: Boolean,
    default: false
  },
  getContainer: {
    type: Function
  },
  placement: {
    type: String,
    default: 'right'
  },
  // 内容外层类名
  contentClass: String,
  // 根类名
  wrapperClass: String,
  resizable: {
    type: Boolean,
    default: false
  },
  resizeMax: {
    type: [String, Number]
  },
  resizeMin: {
    type: [String, Number]
  }
};
const UPDATE_SHOW_EVENT = 'update:show';
const OK_EVENT = 'ok';
const CANCEL_EVENT = 'cancel';
const AFTER_ENTER_EVENT = 'after-enter';
const AFTER_LEAVE_EVENT = 'after-leave';

export { AFTER_ENTER_EVENT, AFTER_LEAVE_EVENT, CANCEL_EVENT, OK_EVENT, UPDATE_SHOW_EVENT, drawerProps };
