"use strict";

var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");

exports.__esModule = true;
exports.HMSformat = void 0;

var _moment = _interopRequireDefault(require("moment"));

/**
 ***********************************************************
 *
 *   日期、时间相关公共方法
 *
 ********************************************************** */

/**
 * 将时间转换成时分秒显示格式文字
 * 不足1分钟显示秒，超过1分钟只显示小时分钟，向下舍去秒数据
 * @function HMSformat
 * @returns {string}
 * @param {number} value
 * @param {'ms'|'s'|'m'|'h'|'d'|'w'|'M'|'y'} unit (ms/s/m/h/d/w/M/y)
 * @returns {string}
 * @example   将时间转换成时分秒。显示格式文字不足1分钟显示秒，超过1分钟只显示小时分钟，向下舍去秒数据。
 * let result = DateFormat(63,'s').HMSformat();
 * // result 1分钟
 * let result = DateFormat(59,'s').HMSformat();
 * // result 59秒
 * let result = DateFormat(61,'m').HMSformat();
 * // result 1小时1分钟
 * --------------------------------------------------------------------------
 */
var HMSformat = function HMSformat(value, unit) {
  if (isNaN(value)) return '-';

  try {
    var h = _moment.default.duration(value, unit).as('h');

    var h_int = Math.floor(h);
    var h_decima = h - h_int;

    var m = _moment.default.duration(h_decima, 'h').as('m');

    var m_int = Math.floor(m);
    var m_decima = m - m_int;

    var s = _moment.default.duration(m_decima, 'm').as('s');

    var s_int = Math.floor(s);
    var formatString = '';

    if (h_int != 0) {
      formatString += h_int + "\u5C0F\u65F6";
    }

    if (m_int != 0) {
      formatString += m_int + "\u5206\u949F";
    }

    if (formatString === '') {
      formatString += s_int + "\u79D2";
    }

    return formatString;
  } catch (error) {
    return '-';
  }
};

exports.HMSformat = HMSformat;