import { Message, MessageBox } from 'element-ui'

/**
 * 全局 $modal 插件 — 兼容若依风格调用
 * 用法:
 *   this.$modal.msgSuccess('操作成功')
 *   this.$modal.msgError('操作失败')
 *   this.$modal.confirm('确认删除?').then(() => { ... })
 */
export default {
  install(Vue) {
    const modal = {
      /** 成功消息 */
      msgSuccess(msg) {
        Message({ showClose: true, message: msg, type: 'success' })
      },
      /** 错误消息 */
      msgError(msg) {
        Message({ showClose: true, message: msg, type: 'error' })
      },
      /** 警告消息 */
      msgWarning(msg) {
        Message({ showClose: true, message: msg, type: 'warning' })
      },
      /** 确认对话框 */
      confirm(msg, title = '系统提示', options = {}) {
        return MessageBox.confirm(msg, title, {
          confirmButtonText: '确定',
          cancelButtonText: '取消',
          type: 'warning',
          ...options
        })
      }
    }

    Vue.prototype.$modal = modal
  }
}
