UNPKG

qt-public-ui

Version:

新设计规范下业务组件库

123 lines (121 loc) 5.83 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.timeUnitMapping = exports.getStaticDate = exports.getShortcutText = exports.getRelatedDateValue = exports.getNewsDateRange = exports.getDefaultTabs = exports.getDateFromProps = exports.getCutomDay = exports.getCustomTips = exports.DATE_TYPE = exports.DATE_TIME_TYPE = void 0; var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray")); var _moment = _interopRequireDefault(require("moment")); var _constant = require("./constant"); var _utils = require("../utils"); var DATE_TYPE = exports.DATE_TYPE = 'YYYY-MM-DD'; var DATE_TIME_TYPE = exports.DATE_TIME_TYPE = 'YYYY-MM-DD HH:mm'; var timeUnitMapping = exports.timeUnitMapping = { week: '周', day: '天', month: '月' }; // 获取快捷选择日期的范围 var getNewsDateRange = exports.getNewsDateRange = function getNewsDateRange(relativeDate, unit) { var numberRelativeDate = Number(relativeDate); if (numberRelativeDate === 0 && unit === 'day') { // 今天特殊处理 return [(0, _moment["default"])().startOf('d'), (0, _moment["default"])().endOf('d')]; } switch (unit) { case 'day': return [(0, _moment["default"])().subtract(numberRelativeDate, 'd').startOf('d'), (0, _moment["default"])().subtract(1, 'd').endOf('d')]; case 'week': return [(0, _moment["default"])().isoWeekday(-numberRelativeDate * 7 + 1).startOf('d'), (0, _moment["default"])().isoWeekday(0).endOf('d')]; case 'month': return [(0, _moment["default"])().set('month', (0, _moment["default"])().get('month') - numberRelativeDate).set('date', 1).startOf('d'), (0, _moment["default"])().set('date', 1).subtract(1, 'd').endOf('d')]; } }; var getDefaultTabs = exports.getDefaultTabs = function getDefaultTabs() { var i18n = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : _utils.i18n; var dateTypeList = arguments.length > 1 ? arguments[1] : undefined; var arrTab = [{ tab: i18n.get('相对时段'), key: 'dynamic' }, { tab: i18n.get('固定时段'), key: 'static' }]; if (dateTypeList.length === 1) { return arrTab.filter(function (d) { return d.key === dateTypeList[0]; }); } return arrTab; }; var getShortcutText = exports.getShortcutText = function getShortcutText(shortcut) { var i18n = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _utils.i18n; var shortcutDicts = { recent_0_day: i18n.get('今天'), recent_1_day: i18n.get('昨天'), recent_1_week: i18n.get('上周'), recent_1_month: i18n.get('上月'), custom_day: i18n.get('自定义') }; if (shortcutDicts[shortcut]) { return shortcutDicts[shortcut]; } else { var _shortcut$split$1$spl = shortcut.split('recent_')[1].split('_'), _shortcut$split$1$spl2 = (0, _slicedToArray2["default"])(_shortcut$split$1$spl, 2), offset = _shortcut$split$1$spl2[0], unit = _shortcut$split$1$spl2[1]; return i18n.get("\u8FC7\u53BB{offset}".concat(unit === 'month' ? '个月' : timeUnitMapping[unit]), { offset: offset }); } }; var getRelatedDateValue = exports.getRelatedDateValue = function getRelatedDateValue(newRelatedDate) { var _newRelatedDate$split = newRelatedDate.split('recent_')[1].split('_'), _newRelatedDate$split2 = (0, _slicedToArray2["default"])(_newRelatedDate$split, 2), offset = _newRelatedDate$split2[0], unit = _newRelatedDate$split2[1]; return getNewsDateRange(Number(offset), unit); }; var getCutomDay = exports.getCutomDay = function getCutomDay(relatedDate) { if (relatedDate && relatedDate.indexOf('custom_recent_') !== -1) { return relatedDate.split('custom_recent_').join('').split('_'); } else { return _constant.DEFAULT_CUSTOM; } }; var getStaticDate = exports.getStaticDate = function getStaticDate(dateConfig) { var _dateConfig$fromDate = dateConfig.fromDate, fromDate = _dateConfig$fromDate === void 0 ? _constant.DEFAULT_STATIC_DATE[0] : _dateConfig$fromDate, _dateConfig$toDate = dateConfig.toDate, toDate = _dateConfig$toDate === void 0 ? _constant.DEFAULT_STATIC_DATE[1] : _dateConfig$toDate; return [(0, _moment["default"])(fromDate), (0, _moment["default"])(toDate)]; }; var getDateFromProps = exports.getDateFromProps = function getDateFromProps() { var dateConfig = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var defaultDateType = arguments.length > 1 ? arguments[1] : undefined; var _dateConfig$dateType = dateConfig.dateType, dateType = _dateConfig$dateType === void 0 ? defaultDateType : _dateConfig$dateType; if (dateType === 'static') { return getStaticDate(dateConfig); } else if (dateType === 'dynamic') { var _dateConfig$relatedDa = dateConfig.relatedDate, newRelatedDate = _dateConfig$relatedDa === void 0 ? _constant.DEFAULT_DYNAMIC_DATE : _dateConfig$relatedDa; return getRelatedDateValue(newRelatedDate); } }; var getCustomTips = exports.getCustomTips = function getCustomTips(dateType, relatedDate) { var i18n = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : _utils.i18n; if (dateType === 'static') { return ''; } else if (relatedDate === 'recent_0_day') { return "".concat(i18n.get('今天'), " \uFF5C"); } else if (relatedDate) { var _relatedDate$split$1$ = relatedDate.split('recent_')[1].split('_'), _relatedDate$split$1$2 = (0, _slicedToArray2["default"])(_relatedDate$split$1$, 2), offset = _relatedDate$split$1$2[0], unit = _relatedDate$split$1$2[1]; return "".concat(i18n.get("\u8FC7\u53BB{offset}".concat(unit === 'month' ? '个月' : timeUnitMapping[unit]), { offset: offset }), " \uFF5C"); } };