import util from './util'

var datePickerUtil = {}

/**
 * @description 调用日期选择器
 * @param {*} target 页面实例对象
 * @param {String} format 时间格式 e.g. "YYYY-MM-DD"(默认) or "YYYY-MM-DD HH:mm"
 * @param {String} startDate 时间选择器开始时间 e.g. 2018-12-09
 * @param {String} currDate 当前时间 e.g. 2018-12-10
 * @param {showDatePicker~confirmCallBack} cb 时间选择器点击确认时的回调函数
 * @author Ethan
 */
/**
 * showDatePicker的回调函数，时间选择器点击确定时触发
 * @callback showDatePicker~confirmCallBack
 * @param {String} selectedDate
 */
datePickerUtil.showDatePicker = function (target, format, startDate, currDate, cb) {
  let currFormat = 'YYYY-MM-DD'
  if (format.length > 0) {
    currFormat = format
  }

  target.$vux.datetime.show({
    cancelText: '取消',
    confirmText: '确定',
    format: currFormat,
    startDate: startDate,
    value: currDate,
    yearRow: '{value}年',
    monthRow: '{value}月',
    dayRow: '{value}日',
    hourRow: '{value}时',
    minuteRow: '{value}分',
    onConfirm (val) {
      if (util.toType(cb) === 'function') {
        cb(val)
      }
    }
  })
}

export default datePickerUtil
