UNPKG

@alifd/meet-react

Version:

Fusion Mobile React UI System Component

57 lines 1.53 kB
import dayjs from 'dayjs'; import { range } from '../utils'; export function withTime(format) { return /H{1,2}|h{1,2}|m{1,2}|s{1,2}|S{1,3}|Z{1,2}|A|a/.test(format); } export function rangeOptions(min, max, suffix) { return range(min, max + 1, 1).map(function (it) { return { label: "".concat(it).concat(suffix || ''), value: it }; }); } export function rangeMonthOptions(start, end, suffix) { start = dayjs(start); end = dayjs(end); var endOfMonth = end.endOf('month'); var startOfMonth = start.startOf('month'); var ret = rangeOptions(1, 12, suffix); if (!end.subtract(1, 'year').isAfter(start)) { ret = []; do { var m = +dayjs(startOfMonth).format('M'); ret.push({ label: "".concat(m).concat(suffix || ''), value: m }); startOfMonth = dayjs(startOfMonth).add(1, 'month'); } while (startOfMonth.isBefore(endOfMonth) && ret.length < 12); } return ret; } export function resetMonth(d) { d.setDate(1); d.setMonth(0); } export function resetTime(d) { d.setHours(0); d.setMinutes(0); d.setSeconds(0); d.setMilliseconds(0); } export function getFormatType(format) { var unit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; if (format) { if (/D{1,2}|d{1,4}/.test(format)) { return unit ? 'd' : 'date'; } if (/M{1,4}/.test(format)) { return unit ? 'M' : 'month'; } if (/YY|YYYY/.test(format)) { return unit ? 'y' : 'year'; } } return unit ? 'd' : 'date'; }