UNPKG

ze-react-component-library

Version:
38 lines (31 loc) 943 B
// 此代码从SemanticDB处拷贝过来的。 import moment from 'moment'; /** * getMinGran * 获得最细的粒度 * @param {Object} date * @return {String} */ export function getMinGran(date) { if (date === 'YTD') { return 'year'; } if (date === 'QTD') { return 'quarter'; } if (date === 'MTD') { return 'month'; } if (!date.$gte) throw new Error('[getMinGran]date必须要有$gte参数'); if (!date.$lte) throw new Error('[getMinGran]date必须要有$lte参数'); var grans = ['minute', 'hour', 'day', 'isoWeek', 'month', 'quarter', 'year']; for (var _i = 0, _a = grans.reverse(); _i < _a.length; _i++) { var tw = _a[_i]; var gte = moment(date.$gte); var lte = moment(date.$lte); if (gte.isSame(moment(gte).startOf(tw), 'second') && lte.isSame(moment(lte).endOf(tw), 'second')) { return tw; } } throw new Error('[getMinGran]错误的date' + JSON.stringify(date)); }