@chaoswise/ui 3.0.17 → 3.0.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/CWMessage/MessageContent/TabList/index.js +2 -2
- package/lib/CWRangePicker/DropdownMenu/index.js +2 -1
- package/lib/CWRangePicker/Refresh/index.js +1 -1
- package/lib/CWRangePicker/TimeSpan/index.js +1 -1
- package/lib/CWRangePicker/index.js +64 -34
- package/lib/CWRangePicker/utils/generate/dayjs.js +697 -0
- package/lib/CWRangePicker/utils/{index.js → generate/moment.js} +2 -1
- package/lib/ConfigProvider/ConfigProvider.js +12 -11
- package/lib/ConfigProvider/generate/dayjs.js +14 -0
- package/lib/ConfigProvider/generate/moment.js +14 -0
- package/lib/Modal/confirmGlobalStyle.js +2 -3
- package/lib/RangePicker/index.js +14 -15
- package/lib/RangePicker/utils/generate/dayjs.js +172 -0
- package/lib/RangePicker/utils/{index.js → generate/moment.js} +5 -4
- package/lib/TimeRangeSlider/Refresh/index.js +1 -1
- package/lib/TimeRangeSlider/TimeRangeSliderCmp/components/BottomSlider/BottomPlaceholder.js +1 -1
- package/lib/TimeRangeSlider/TimeRangeSliderCmp/components/BottomSlider/BottomTimeDateProcess.js +1 -1
- package/lib/TimeRangeSlider/TimeRangeSliderCmp/components/TopSlider/TopDateProcess.js +1 -1
- package/lib/TimeRangeSlider/TimeRangeSliderCmp/hooks/useMouse.js +5 -6
- package/lib/TimeRangeSlider/TimeRangeSliderCmp/utils/generate/dayjs.js +260 -0
- package/lib/TimeRangeSlider/TimeRangeSliderCmp/utils/{index.js → generate/moment.js} +2 -1
- package/lib/TimeRangeSlider/TimeSpan/index.js +1 -1
- package/lib/TimeRangeSlider/index.js +15 -12
- package/lib/TimeRangeSlider/utils/generate/dayjs.js +729 -0
- package/lib/TimeRangeSlider/utils/{index.js → generate/moment.js} +23 -53
- package/lib/locales/en_US.json +1 -0
- package/lib/locales/zh_CN.json +1 -0
- package/lib/locales/zh_TW.json +1 -0
- package/lib/utils/generate/dayjs.js +2 -0
- package/lib/utils/generate/moment.js +2 -0
- package/package.json +1 -3
- package/lib/CWRangePicker/locale/en_US.js +0 -29
- package/lib/CWRangePicker/locale/index.js +0 -11
- package/lib/CWRangePicker/locale/zh_CN.js +0 -29
- package/lib/CWRangePicker/locale/zh_TW.js +0 -29
- package/lib/Formily/FieldList/index.js +0 -43
- package/lib/Formily/Form/index.js +0 -2
- package/lib/Formily/FormButtonGroup/index.js +0 -2
- package/lib/Formily/FormItem/index.js +0 -90
- package/lib/Formily/FormItem/items/Checkbox.js +0 -13
- package/lib/Formily/FormItem/items/DatePicker.js +0 -121
- package/lib/Formily/FormItem/items/Input.js +0 -13
- package/lib/Formily/FormItem/items/NumberPicker.js +0 -9
- package/lib/Formily/FormItem/items/Password.js +0 -70
- package/lib/Formily/FormItem/items/Radio.js +0 -13
- package/lib/Formily/FormItem/items/Range.js +0 -82
- package/lib/Formily/FormItem/items/Rating.js +0 -8
- package/lib/Formily/FormItem/items/Select.js +0 -8
- package/lib/Formily/FormItem/items/Switch.js +0 -9
- package/lib/Formily/FormItem/items/Tansfer.js +0 -9
- package/lib/Formily/FormItem/items/TimePicker.js +0 -44
- package/lib/Formily/FormItem/items/Upload.js +0 -260
- package/lib/Formily/FormItem/items/formItemWrapper.js +0 -17
- package/lib/Formily/FormItem/items/shared.js +0 -140
- package/lib/Formily/FormPath/index.js +0 -2
- package/lib/Formily/MegaLayout/index.js +0 -24
- package/lib/Formily/Reset/index.js +0 -2
- package/lib/Formily/Submit/index.js +0 -2
- package/lib/Formily/context.js +0 -3
- package/lib/Formily/formily/index.js +0 -22
- package/lib/Formily/index.js +0 -5
- package/lib/Formily/subscribeFields/index.js +0 -46
|
@@ -0,0 +1,697 @@
|
|
|
1
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
2
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
3
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
4
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
5
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
6
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
7
|
+
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
8
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
9
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
10
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
11
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
12
|
+
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
13
|
+
import dayjs from "dayjs";
|
|
14
|
+
import duration from "dayjs/plugin/duration";
|
|
15
|
+
dayjs.extend(duration);
|
|
16
|
+
var _require = require("uuid"),
|
|
17
|
+
uuidv4 = _require.v4;
|
|
18
|
+
// 枚举时间单位
|
|
19
|
+
var ENUM_TimeUnit = {
|
|
20
|
+
s: ["Second", "Seconds", "秒", "seconds"],
|
|
21
|
+
m: ["Minute", "Minutes", "分钟", "minutes"],
|
|
22
|
+
h: ["Hour", "Hours", "小时", "hours"],
|
|
23
|
+
d: ["Day", "Days", "天", "days"],
|
|
24
|
+
mo: ["Month", "Months", "月", "mo"],
|
|
25
|
+
y: ["Year", "Years", "年", "years"]
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* 变换数据源格式
|
|
30
|
+
* @param {Array} 数据源
|
|
31
|
+
* @returns 重新编排组合的数据源
|
|
32
|
+
*/
|
|
33
|
+
export var regroupDataSourceFn = function regroupDataSourceFn(dataSource) {
|
|
34
|
+
var EnumTimeTypeData = {
|
|
35
|
+
recently: [],
|
|
36
|
+
relative: [],
|
|
37
|
+
absolute: [],
|
|
38
|
+
unixTimestamp: [],
|
|
39
|
+
other: []
|
|
40
|
+
};
|
|
41
|
+
var regroupDataSource = [];
|
|
42
|
+
dataSource.forEach(function (item) {
|
|
43
|
+
if (Object.keys(EnumTimeTypeData).includes(item.type)) {
|
|
44
|
+
EnumTimeTypeData[item.type].push(item);
|
|
45
|
+
} else {
|
|
46
|
+
EnumTimeTypeData["other"].push(item);
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
Object.entries(EnumTimeTypeData).forEach(function (item) {
|
|
50
|
+
if (item[1].length) {
|
|
51
|
+
regroupDataSource.push({
|
|
52
|
+
type: item[0],
|
|
53
|
+
timeList: item[1]
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
return regroupDataSource;
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
// 捕获匹配值
|
|
61
|
+
export var getUnit = function getUnit(unit) {
|
|
62
|
+
var captureUnit = []; // 捕获的匹配值
|
|
63
|
+
var reg = /^([1-9]{1}[0-9]*)([s|m|h|d|y]|mo)$/;
|
|
64
|
+
if (reg.exec(unit)) {
|
|
65
|
+
captureUnit.push(reg.exec(unit)[1]);
|
|
66
|
+
captureUnit.push(reg.exec(unit)[2]);
|
|
67
|
+
return {
|
|
68
|
+
isRule: true,
|
|
69
|
+
captureUnit: captureUnit
|
|
70
|
+
};
|
|
71
|
+
} else {
|
|
72
|
+
return {
|
|
73
|
+
isRule: false,
|
|
74
|
+
captureUnit: captureUnit
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
};
|
|
78
|
+
/**
|
|
79
|
+
*
|
|
80
|
+
* @param {*} recordDateValue 当前记录value值
|
|
81
|
+
* @returns [是否符合规则,[number,unit],number+unit]
|
|
82
|
+
*/
|
|
83
|
+
// 判断是否符合最近时间类型
|
|
84
|
+
export var judgeType = function judgeType(recordDateValue) {
|
|
85
|
+
var key = recordDateValue.key,
|
|
86
|
+
_recordDateValue$time = recordDateValue.timeDomain,
|
|
87
|
+
timeDomain = _recordDateValue$time === void 0 ? "" : _recordDateValue$time;
|
|
88
|
+
var isRule = false;
|
|
89
|
+
var captureUnit = [];
|
|
90
|
+
var recordUnit = "";
|
|
91
|
+
var _getUnit = getUnit(key),
|
|
92
|
+
_isRule = _getUnit.isRule,
|
|
93
|
+
_captureUnit = _getUnit.captureUnit;
|
|
94
|
+
if (_isRule) {
|
|
95
|
+
isRule = true;
|
|
96
|
+
captureUnit = _captureUnit;
|
|
97
|
+
recordUnit = key;
|
|
98
|
+
} else {
|
|
99
|
+
var _getUnit2 = getUnit(timeDomain),
|
|
100
|
+
_isRule2 = _getUnit2.isRule,
|
|
101
|
+
_captureUnit2 = _getUnit2.captureUnit;
|
|
102
|
+
if (_isRule2) {
|
|
103
|
+
isRule = true;
|
|
104
|
+
captureUnit = _captureUnit2;
|
|
105
|
+
recordUnit = timeDomain;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
return [isRule, captureUnit, recordUnit];
|
|
109
|
+
};
|
|
110
|
+
export var echoRecentlyTimeTitle = function echoRecentlyTimeTitle(locale, captureUnit) {
|
|
111
|
+
// todo: 需要优化
|
|
112
|
+
if (locale == "zh_CN" || locale == "zh" || locale == "zh_TW") {
|
|
113
|
+
if (captureUnit[1] === "mo") {
|
|
114
|
+
return "\u6700\u8FD1".concat(captureUnit[0], "\u4E2A").concat(ENUM_TimeUnit.mo[2]);
|
|
115
|
+
}
|
|
116
|
+
return "\u6700\u8FD1".concat(captureUnit[0]).concat(ENUM_TimeUnit[captureUnit[1]][2]);
|
|
117
|
+
} else {
|
|
118
|
+
if (captureUnit[0] == 1) {
|
|
119
|
+
return "Past ".concat(captureUnit[0], " ").concat(ENUM_TimeUnit[captureUnit[1]][0]);
|
|
120
|
+
}
|
|
121
|
+
return "Past ".concat(captureUnit[0], " ").concat(ENUM_TimeUnit[captureUnit[1]][1]);
|
|
122
|
+
}
|
|
123
|
+
};
|
|
124
|
+
export var echoAbsoluteTimeTitle = function echoAbsoluteTimeTitle(value, format) {
|
|
125
|
+
var hasTimeSpan = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
|
|
126
|
+
var timeSpanBoundary = arguments.length > 3 ? arguments[3] : undefined;
|
|
127
|
+
var formatDate1 = value[0].format(format);
|
|
128
|
+
var formatDate2 = value[1].format(format);
|
|
129
|
+
var finalEchoValue = computeTimeSpan(value, timeSpanBoundary) && hasTimeSpan ? "[".concat(computeTimeSpan(value, timeSpanBoundary), "] ").concat(formatDate1, " - ").concat(formatDate2) : "".concat(formatDate1, " - ").concat(formatDate2);
|
|
130
|
+
return finalEchoValue;
|
|
131
|
+
};
|
|
132
|
+
// 根据时间类型输入框按照格式回显
|
|
133
|
+
export var echoInputValue = function echoInputValue() {
|
|
134
|
+
var recordDateValue = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
135
|
+
var isFoucs = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
136
|
+
var locale = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : "zh_CN";
|
|
137
|
+
var format = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : "YYYY/MM/DD HH:mm:ss";
|
|
138
|
+
var forceRenderTitle = arguments.length > 4 ? arguments[4] : undefined;
|
|
139
|
+
var isAutoRefresh = arguments.length > 5 ? arguments[5] : undefined;
|
|
140
|
+
var timeSpanBoundary = arguments.length > 6 ? arguments[6] : undefined;
|
|
141
|
+
var values = recordDateValue.value,
|
|
142
|
+
title = recordDateValue.title;
|
|
143
|
+
var _judgeType = judgeType(recordDateValue),
|
|
144
|
+
_judgeType2 = _slicedToArray(_judgeType, 3),
|
|
145
|
+
isRule = _judgeType2[0],
|
|
146
|
+
captureUnit = _judgeType2[1],
|
|
147
|
+
recordUnit = _judgeType2[2];
|
|
148
|
+
var value = [];
|
|
149
|
+
if (values) {
|
|
150
|
+
value = funcValueChangeArrayValue(values);
|
|
151
|
+
}
|
|
152
|
+
if (forceRenderTitle) {
|
|
153
|
+
var _value2;
|
|
154
|
+
if (title) return title;
|
|
155
|
+
if (isRule) {
|
|
156
|
+
return echoRecentlyTimeTitle(locale, captureUnit);
|
|
157
|
+
}
|
|
158
|
+
if (Array.isArray(value) && (_value2 = value) !== null && _value2 !== void 0 && _value2.length) {
|
|
159
|
+
return echoAbsoluteTimeTitle(value, format, true, timeSpanBoundary);
|
|
160
|
+
}
|
|
161
|
+
return "";
|
|
162
|
+
}
|
|
163
|
+
if (!isRule && !values) return title || "Live Tail";
|
|
164
|
+
if (isAutoRefresh) {
|
|
165
|
+
var _value3;
|
|
166
|
+
if (isRule) {
|
|
167
|
+
if (isFoucs) {
|
|
168
|
+
return recordUnit;
|
|
169
|
+
}
|
|
170
|
+
return echoRecentlyTimeTitle(locale, captureUnit);
|
|
171
|
+
}
|
|
172
|
+
if (Array.isArray(value) && (_value3 = value) !== null && _value3 !== void 0 && _value3.length) {
|
|
173
|
+
return echoAbsoluteTimeTitle(value, format, true, timeSpanBoundary);
|
|
174
|
+
}
|
|
175
|
+
} else {
|
|
176
|
+
var _value4;
|
|
177
|
+
if (isRule) {
|
|
178
|
+
if (isFoucs) {
|
|
179
|
+
return recordUnit;
|
|
180
|
+
}
|
|
181
|
+
return echoRecentlyTimeTitle(locale, captureUnit);
|
|
182
|
+
}
|
|
183
|
+
if (Array.isArray(value) && (_value4 = value) !== null && _value4 !== void 0 && _value4.length) {
|
|
184
|
+
return echoAbsoluteTimeTitle(value, format, true, timeSpanBoundary);
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
};
|
|
188
|
+
|
|
189
|
+
// 计算两个moment日期的时间差(时间戳)
|
|
190
|
+
export var computeTimeDiff = function computeTimeDiff(value) {
|
|
191
|
+
var unit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "ms";
|
|
192
|
+
return value[1].diff(value[0], unit);
|
|
193
|
+
};
|
|
194
|
+
export var getYears = function getYears(seconds) {
|
|
195
|
+
var yearInSeconds = 31536000; // 一年有 365 天 * 24 小时 * 60 分钟 * 60 秒 = 31536000 秒
|
|
196
|
+
var years = Math.floor(seconds / yearInSeconds);
|
|
197
|
+
return years;
|
|
198
|
+
};
|
|
199
|
+
// 计算输入框时间跨度
|
|
200
|
+
export var computeTimeSpan = function computeTimeSpan(value, timeSpanBoundary) {
|
|
201
|
+
// 当前传入日期的时间
|
|
202
|
+
var timeDiff = computeTimeDiff(value, "s");
|
|
203
|
+
if (timeDiff >= 60) {
|
|
204
|
+
timeDiff = Number(timeDiff + 1);
|
|
205
|
+
}
|
|
206
|
+
var duration = dayjs.duration(timeDiff, "s");
|
|
207
|
+
var _duration$$d = duration.$d,
|
|
208
|
+
years = _duration$$d.years,
|
|
209
|
+
months = _duration$$d.months,
|
|
210
|
+
days = _duration$$d.days,
|
|
211
|
+
hours = _duration$$d.hours,
|
|
212
|
+
minutes = _duration$$d.minutes,
|
|
213
|
+
seconds = _duration$$d.seconds; // dayjs参数:$d
|
|
214
|
+
if (years) {
|
|
215
|
+
// todo:目前只处理了边界为年的跨度
|
|
216
|
+
if (timeDiff >= timeSpanBoundary) {
|
|
217
|
+
return "".concat(getYears(timeSpanBoundary), "y");
|
|
218
|
+
}
|
|
219
|
+
return "".concat(years, "y");
|
|
220
|
+
}
|
|
221
|
+
if (months) return "".concat(months, "mo");
|
|
222
|
+
if (days) return "".concat(days, "d");
|
|
223
|
+
if (hours) return "".concat(hours, "h");
|
|
224
|
+
if (minutes) return "".concat(minutes, "m");
|
|
225
|
+
if (seconds) return "".concat(seconds, "s");
|
|
226
|
+
return "";
|
|
227
|
+
};
|
|
228
|
+
|
|
229
|
+
/**
|
|
230
|
+
*
|
|
231
|
+
* @param {*} value date日期
|
|
232
|
+
* @returns 根据日期获取时间跨度,最近时间返回内容
|
|
233
|
+
*/
|
|
234
|
+
export var getTimeSpanFromValue = function getTimeSpanFromValue(value, timeSpanBoundary) {
|
|
235
|
+
var timeDomain = computeTimeSpan(value, timeSpanBoundary);
|
|
236
|
+
var _getUnit3 = getUnit(timeDomain),
|
|
237
|
+
captureUnit = _getUnit3.captureUnit;
|
|
238
|
+
return {
|
|
239
|
+
value: value,
|
|
240
|
+
timeDomain: timeDomain,
|
|
241
|
+
number: captureUnit[0],
|
|
242
|
+
unit: captureUnit[1] === "mo" ? "M" : captureUnit[1]
|
|
243
|
+
};
|
|
244
|
+
};
|
|
245
|
+
|
|
246
|
+
/**
|
|
247
|
+
*
|
|
248
|
+
* @param {*} value date日期
|
|
249
|
+
* @returns 根据日期计算最近的时间
|
|
250
|
+
*/
|
|
251
|
+
export var computedRecentlyValue = function computedRecentlyValue(value) {
|
|
252
|
+
var cloneCurrentDate_0 = value[0].clone();
|
|
253
|
+
var cloneCurrentDate_1 = value[1].clone();
|
|
254
|
+
var timeDiff = computeTimeDiff(value);
|
|
255
|
+
cloneCurrentDate_0 = dayjs().subtract(timeDiff);
|
|
256
|
+
cloneCurrentDate_1 = dayjs();
|
|
257
|
+
return [cloneCurrentDate_0, cloneCurrentDate_1];
|
|
258
|
+
};
|
|
259
|
+
|
|
260
|
+
/**
|
|
261
|
+
*
|
|
262
|
+
* @returns 根据当前克隆时间返回变化之后的时间
|
|
263
|
+
*/
|
|
264
|
+
export var cloneChangeDate = function cloneChangeDate(currentDate_0, currentDate_1, direction, growSize, duration, timeSpanBoundary) {
|
|
265
|
+
var cloneCurrentDate_0 = currentDate_0.clone();
|
|
266
|
+
var cloneCurrentDate_1 = currentDate_1.clone();
|
|
267
|
+
// 是否切换到最近时间
|
|
268
|
+
var switchInitial = false;
|
|
269
|
+
if (direction == "left") {
|
|
270
|
+
cloneCurrentDate_0 = cloneCurrentDate_0.subtract(duration);
|
|
271
|
+
cloneCurrentDate_1 = cloneCurrentDate_1.subtract(duration);
|
|
272
|
+
} else if (direction == "right") {
|
|
273
|
+
cloneCurrentDate_0 = cloneCurrentDate_0.add(duration);
|
|
274
|
+
cloneCurrentDate_1 = cloneCurrentDate_1.add(duration);
|
|
275
|
+
// 计算最大值的时间差
|
|
276
|
+
var maxTimeDiff = computeTimeDiff([cloneCurrentDate_1, dayjs()]);
|
|
277
|
+
if (maxTimeDiff <= 0) {
|
|
278
|
+
switchInitial = true;
|
|
279
|
+
var finalValue = computedRecentlyValue([cloneCurrentDate_0, cloneCurrentDate_1]);
|
|
280
|
+
cloneCurrentDate_0 = finalValue[0];
|
|
281
|
+
cloneCurrentDate_1 = finalValue[1];
|
|
282
|
+
}
|
|
283
|
+
} else {
|
|
284
|
+
cloneCurrentDate_0 = cloneCurrentDate_0.subtract(duration * ((growSize - 1) / 2));
|
|
285
|
+
cloneCurrentDate_1 = cloneCurrentDate_1.add(duration * ((growSize - 1) / 2));
|
|
286
|
+
// 先要计算二者的时间跨度
|
|
287
|
+
var isExceedMaxTime = isExceedMaxTimeSpan([cloneCurrentDate_0, cloneCurrentDate_1], timeSpanBoundary);
|
|
288
|
+
// 计算最大值的时间差
|
|
289
|
+
var _maxTimeDiff = computeTimeDiff([cloneCurrentDate_1, dayjs()]);
|
|
290
|
+
if (isExceedMaxTime) {
|
|
291
|
+
if (_maxTimeDiff <= 0) {
|
|
292
|
+
// 当前时间已经是极限了
|
|
293
|
+
// 已经是极限直接当前时间向前推进timeSpanBoundary即可
|
|
294
|
+
cloneCurrentDate_0 = dayjs().subtract(dayjs.duration(timeSpanBoundary, "s"));
|
|
295
|
+
cloneCurrentDate_1 = dayjs();
|
|
296
|
+
switchInitial = true;
|
|
297
|
+
} else {
|
|
298
|
+
var clone0 = currentDate_0.clone();
|
|
299
|
+
var clone1 = currentDate_1.clone();
|
|
300
|
+
var initialTimeDiff = computeTimeDiff([clone0, clone1], "s");
|
|
301
|
+
if (timeSpanBoundary > initialTimeDiff) {
|
|
302
|
+
var needChangeTimeDiff = Math.ceil(timeSpanBoundary - initialTimeDiff) / 2;
|
|
303
|
+
cloneCurrentDate_0 = clone0.subtract(dayjs.duration(needChangeTimeDiff, "s"));
|
|
304
|
+
cloneCurrentDate_1 = clone1.add(dayjs.duration(needChangeTimeDiff, "s"));
|
|
305
|
+
// 计算最大值的时间差
|
|
306
|
+
var _maxTimeDiff2 = computeTimeDiff([cloneCurrentDate_1, dayjs()]);
|
|
307
|
+
if (_maxTimeDiff2 <= 0) {
|
|
308
|
+
// 当前时间已经是极限了
|
|
309
|
+
// 已经是极限直接当前时间向前推进timeSpanBoundary即可
|
|
310
|
+
cloneCurrentDate_0 = dayjs().subtract(dayjs.duration(timeSpanBoundary, "s"));
|
|
311
|
+
cloneCurrentDate_1 = dayjs();
|
|
312
|
+
switchInitial = true;
|
|
313
|
+
}
|
|
314
|
+
} else {
|
|
315
|
+
cloneCurrentDate_1 = clone1.add(dayjs.duration(timeSpanBoundary, "s"));
|
|
316
|
+
var clone = cloneCurrentDate_1.clone();
|
|
317
|
+
cloneCurrentDate_0 = clone.subtract(dayjs.duration(timeSpanBoundary, "s"));
|
|
318
|
+
// 计算最大值的时间差
|
|
319
|
+
var _maxTimeDiff3 = computeTimeDiff([cloneCurrentDate_1, dayjs()]);
|
|
320
|
+
if (_maxTimeDiff3 <= 0) {
|
|
321
|
+
// 当前时间已经是极限了
|
|
322
|
+
// 已经是极限直接当前时间向前推进timeSpanBoundary即可
|
|
323
|
+
cloneCurrentDate_0 = dayjs().subtract(dayjs.duration(timeSpanBoundary, "s"));
|
|
324
|
+
cloneCurrentDate_1 = dayjs();
|
|
325
|
+
switchInitial = true;
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
} else {
|
|
330
|
+
if (_maxTimeDiff <= 0) {
|
|
331
|
+
switchInitial = true;
|
|
332
|
+
var _finalValue = computedRecentlyValue([cloneCurrentDate_0, cloneCurrentDate_1]);
|
|
333
|
+
cloneCurrentDate_0 = _finalValue[0];
|
|
334
|
+
cloneCurrentDate_1 = _finalValue[1];
|
|
335
|
+
}
|
|
336
|
+
}
|
|
337
|
+
}
|
|
338
|
+
return {
|
|
339
|
+
value: [cloneCurrentDate_0, cloneCurrentDate_1],
|
|
340
|
+
switchInitial: switchInitial
|
|
341
|
+
};
|
|
342
|
+
};
|
|
343
|
+
|
|
344
|
+
// 由unit单位转出最近时间值
|
|
345
|
+
/**
|
|
346
|
+
*
|
|
347
|
+
* @param {number} unitFigure unit前面的数值计量
|
|
348
|
+
* @param {string} unit unit后面的单位(s|m|h|d|mo|y)
|
|
349
|
+
* @returns unit单位转花为的时间
|
|
350
|
+
*/
|
|
351
|
+
export var getChangeUnitDate = function getChangeUnitDate(unitFigure, unit) {
|
|
352
|
+
var value = [dayjs().subtract(unitFigure, unit), dayjs()];
|
|
353
|
+
if (unit === "mo") {
|
|
354
|
+
value[0] = dayjs().subtract(unitFigure * 31, "d");
|
|
355
|
+
}
|
|
356
|
+
return value;
|
|
357
|
+
};
|
|
358
|
+
|
|
359
|
+
/**
|
|
360
|
+
*
|
|
361
|
+
* @param {Object} 当前时间项数据
|
|
362
|
+
* @param {String} 前后切换识别标志
|
|
363
|
+
* @param {Number} 时间跨度,默认值为3
|
|
364
|
+
* @returns 根据当前时间具体跨度时间返回向变化之后的时间,若后者时间超过或者等于当前时间,表现为最近时间
|
|
365
|
+
*/
|
|
366
|
+
export var getChangeDate = function getChangeDate(recordDateValue, direction) {
|
|
367
|
+
var growSize = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 3;
|
|
368
|
+
var timeSpanBoundary = arguments.length > 3 ? arguments[3] : undefined;
|
|
369
|
+
var key = recordDateValue.key,
|
|
370
|
+
values = recordDateValue.value;
|
|
371
|
+
var _getUnit4 = getUnit(key),
|
|
372
|
+
isRule = _getUnit4.isRule,
|
|
373
|
+
captureUnit = _getUnit4.captureUnit;
|
|
374
|
+
var value = [];
|
|
375
|
+
if (values) {
|
|
376
|
+
value = funcValueChangeArrayValue(values);
|
|
377
|
+
}
|
|
378
|
+
if (isRule && !values) {
|
|
379
|
+
value = getChangeUnitDate(captureUnit[0], ENUM_TimeUnit[captureUnit[1]][3]);
|
|
380
|
+
}
|
|
381
|
+
var timeDiff = value[1].diff(value[0]);
|
|
382
|
+
var duration = dayjs.duration(timeDiff);
|
|
383
|
+
var _cloneChangeDate = cloneChangeDate(value[0], value[1], direction, growSize, duration, timeSpanBoundary),
|
|
384
|
+
_value = _cloneChangeDate.value,
|
|
385
|
+
switchInitial = _cloneChangeDate.switchInitial;
|
|
386
|
+
var returnValue = {
|
|
387
|
+
value: _value,
|
|
388
|
+
isRecently: false
|
|
389
|
+
};
|
|
390
|
+
if (switchInitial) {
|
|
391
|
+
returnValue = _objectSpread(_objectSpread(_objectSpread({}, returnValue), getTimeSpanFromValue(_value, timeSpanBoundary)), {}, {
|
|
392
|
+
isRecently: true
|
|
393
|
+
});
|
|
394
|
+
}
|
|
395
|
+
var _isInvalidDate = isInvalidDate(_value);
|
|
396
|
+
return {
|
|
397
|
+
value: returnValue,
|
|
398
|
+
isInvalidDate: _isInvalidDate,
|
|
399
|
+
switchInitial: switchInitial
|
|
400
|
+
};
|
|
401
|
+
};
|
|
402
|
+
export var isInvalidDate = function isInvalidDate(value) {
|
|
403
|
+
return dayjs(value[0]).toDate() == "Invalid Date" || dayjs(value[1]).toDate() == "Invalid Date" || !computeTimeDiff(value);
|
|
404
|
+
};
|
|
405
|
+
|
|
406
|
+
// 符合禁用规则的时间集合
|
|
407
|
+
export function range(start, end) {
|
|
408
|
+
var result = [];
|
|
409
|
+
for (var i = start; i <= end; i++) {
|
|
410
|
+
result.push(i);
|
|
411
|
+
}
|
|
412
|
+
return result;
|
|
413
|
+
}
|
|
414
|
+
|
|
415
|
+
// 判断value值是否是函数形式,并将函数形式执行之后转化为数组形式的value值
|
|
416
|
+
export var funcValueChangeArrayValue = function funcValueChangeArrayValue(value) {
|
|
417
|
+
if (!value) return;
|
|
418
|
+
var isFunc = Object.prototype.toString.call(value) == "[object Function]";
|
|
419
|
+
var finalValue = value;
|
|
420
|
+
if (isFunc) {
|
|
421
|
+
finalValue = [value()[0], value()[1]];
|
|
422
|
+
}
|
|
423
|
+
return finalValue;
|
|
424
|
+
};
|
|
425
|
+
|
|
426
|
+
// 判断是否为最近时间规则,并返回矫正之后的value值
|
|
427
|
+
export var getCorrectValue = function getCorrectValue(value) {
|
|
428
|
+
var key = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "";
|
|
429
|
+
var _getUnit5 = getUnit(key),
|
|
430
|
+
isRule = _getUnit5.isRule,
|
|
431
|
+
captureUnit = _getUnit5.captureUnit;
|
|
432
|
+
var returnValue = _objectSpread(_objectSpread({}, value), {}, {
|
|
433
|
+
isRecently: false
|
|
434
|
+
});
|
|
435
|
+
if (isRule) {
|
|
436
|
+
returnValue = _objectSpread(_objectSpread({}, returnValue), {}, {
|
|
437
|
+
timeDomain: key,
|
|
438
|
+
number: captureUnit[0],
|
|
439
|
+
unit: captureUnit[1] === "mo" ? "M" : captureUnit[1],
|
|
440
|
+
isRecently: true
|
|
441
|
+
});
|
|
442
|
+
if (!returnValue.value) {
|
|
443
|
+
returnValue = _objectSpread(_objectSpread({}, returnValue), {}, {
|
|
444
|
+
value: getChangeUnitDate(captureUnit[0], captureUnit[1])
|
|
445
|
+
});
|
|
446
|
+
}
|
|
447
|
+
}
|
|
448
|
+
if (!isRule && !returnValue.value) {
|
|
449
|
+
delete returnValue.value;
|
|
450
|
+
delete returnValue.isRecently;
|
|
451
|
+
}
|
|
452
|
+
return returnValue;
|
|
453
|
+
};
|
|
454
|
+
// ----------------------------------历史记录----------------------------------
|
|
455
|
+
/**
|
|
456
|
+
*
|
|
457
|
+
* @param {Object} value
|
|
458
|
+
* @returns
|
|
459
|
+
*/
|
|
460
|
+
export var getHistoryInfo = function getHistoryInfo(recordValue, historyList, _ref, format, timeSpanBoundary) {
|
|
461
|
+
var intl = _ref.intl,
|
|
462
|
+
locale = _ref.locale;
|
|
463
|
+
var key = recordValue.key,
|
|
464
|
+
value = recordValue.value,
|
|
465
|
+
_recordValue$title = recordValue.title,
|
|
466
|
+
title = _recordValue$title === void 0 ? "" : _recordValue$title;
|
|
467
|
+
var _judgeType3 = judgeType(recordValue),
|
|
468
|
+
_judgeType4 = _slicedToArray(_judgeType3, 2),
|
|
469
|
+
isRule = _judgeType4[0],
|
|
470
|
+
captureUnit = _judgeType4[1];
|
|
471
|
+
var values = funcValueChangeArrayValue(value);
|
|
472
|
+
var _title = title;
|
|
473
|
+
if (values && !_title) {
|
|
474
|
+
_title = echoAbsoluteTimeTitle(values, format, false, timeSpanBoundary);
|
|
475
|
+
}
|
|
476
|
+
if (isRule) {
|
|
477
|
+
if (!title) {
|
|
478
|
+
_title = echoRecentlyTimeTitle(locale, captureUnit);
|
|
479
|
+
}
|
|
480
|
+
}
|
|
481
|
+
if (!values && !isRule && !_title) {
|
|
482
|
+
_title = intl.get("bbf8ccde-ab7c-4040-97eb-35b56742de27").d("未转化标题");
|
|
483
|
+
}
|
|
484
|
+
var isRepeat = Boolean(historyList.find(function (item) {
|
|
485
|
+
return item.key === key || item.title === _title;
|
|
486
|
+
}));
|
|
487
|
+
var id = uuidv4();
|
|
488
|
+
return [isRepeat, _objectSpread(_objectSpread({}, recordValue), {}, {
|
|
489
|
+
title: _title,
|
|
490
|
+
key: key ? key : id
|
|
491
|
+
})];
|
|
492
|
+
};
|
|
493
|
+
|
|
494
|
+
// ----------------------------------时间输入绝对时间----------------------------------
|
|
495
|
+
var FORMATS = ["YYYY/MM/DD HH:mm:ss", "YYYY/M/D H:m:s", "YYYY/MM/DD HH:mm", "YYYY/M/D H:m", "MM/DD HH:mm:ss", "M/D H:m:s", "MM/DD HH:mm", "M/D H:m", "YYYY/MM/DD", "YYYY/M/D", "MM/DD", "M/D", "HH:mm:ss", "H:m:s", "HH:mm", "H:m", "X"];
|
|
496
|
+
// 不需要二次操作
|
|
497
|
+
var NOT_CHANGE_FORMATS = ["YYYY/MM/DD HH:mm:ss", "YYYY/M/D H:m:s", "YYYY/MM/DD HH:mm", "YYYY/M/D H:m", "MM/DD HH:mm:ss", "M/D H:m:s", "MM/DD HH:mm", "M/D H:m", "X"];
|
|
498
|
+
// 需要二次操作
|
|
499
|
+
var NEED_CHANGE_FORMATS = ["YYYY/MM/DD", "YYYY/M/D", "MM/DD", "M/D", "HH:mm:ss", "H:m:s", "HH:mm", "H:m"];
|
|
500
|
+
// 判断数组中有几个真值
|
|
501
|
+
export var getTruthDateCount = function getTruthDateCount(dateArray) {
|
|
502
|
+
var truthDate = dateArray.filter(Boolean);
|
|
503
|
+
return truthDate.length;
|
|
504
|
+
};
|
|
505
|
+
// 检查一个 dayjs 是否在另一个 dayjs 之后
|
|
506
|
+
export var isAfterDate = function isAfterDate(currentDate, compareDate) {
|
|
507
|
+
return currentDate.isAfter(compareDate);
|
|
508
|
+
};
|
|
509
|
+
// 检查一个 dayjs 是否与另一个 dayjs 相同
|
|
510
|
+
export var isSameDate = function isSameDate(currentDate, compareDate, unit) {
|
|
511
|
+
return unit ? currentDate.isSame(compareDate, unit) : currentDate.isSame(compareDate);
|
|
512
|
+
};
|
|
513
|
+
var isAfterCurrentDate = function isAfterCurrentDate(cloneStartDate, cloneEndDate) {
|
|
514
|
+
var flag = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
515
|
+
var currentDate = dayjs();
|
|
516
|
+
return flag ? isAfterDate(currentDate, cloneStartDate) && (isAfterDate(currentDate, cloneEndDate) || isSameDate(currentDate, cloneEndDate)) : isAfterDate(currentDate, cloneEndDate) || isSameDate(currentDate, cloneEndDate);
|
|
517
|
+
};
|
|
518
|
+
var getFormatParseDate = function getFormatParseDate() {
|
|
519
|
+
var dateOption = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
520
|
+
var format = arguments.length > 1 ? arguments[1] : undefined;
|
|
521
|
+
var date = dateOption.date,
|
|
522
|
+
count = dateOption.count;
|
|
523
|
+
if (count === 2) {
|
|
524
|
+
var _date = _slicedToArray(date, 2),
|
|
525
|
+
startDate = _date[0],
|
|
526
|
+
endDate = _date[1];
|
|
527
|
+
var cloneStartDate = startDate.clone();
|
|
528
|
+
var cloneEndDate = endDate.clone();
|
|
529
|
+
// 待优化
|
|
530
|
+
if (NOT_CHANGE_FORMATS.includes(format)) {
|
|
531
|
+
// 'YYYY/MM/DD HH:mm:ss', 格式
|
|
532
|
+
if (!(isAfterCurrentDate(cloneStartDate, cloneEndDate) && isAfterDate(cloneEndDate, cloneStartDate))) {
|
|
533
|
+
cloneStartDate = null;
|
|
534
|
+
cloneEndDate = null;
|
|
535
|
+
}
|
|
536
|
+
} else if (NEED_CHANGE_FORMATS.slice(0, 4).includes(format)) {
|
|
537
|
+
cloneEndDate = cloneEndDate.set('hour', 23).set('minute', 59).set('second', 59);
|
|
538
|
+
if (isAfterDate(cloneEndDate, cloneStartDate)) {
|
|
539
|
+
if (!isAfterCurrentDate(cloneStartDate, cloneEndDate)) {
|
|
540
|
+
if (cloneEndDate.isSame(dayjs(), "day")) {
|
|
541
|
+
cloneEndDate = dayjs();
|
|
542
|
+
} else {
|
|
543
|
+
cloneStartDate = null;
|
|
544
|
+
cloneEndDate = null;
|
|
545
|
+
}
|
|
546
|
+
}
|
|
547
|
+
} else {
|
|
548
|
+
cloneStartDate = null;
|
|
549
|
+
cloneEndDate = null;
|
|
550
|
+
}
|
|
551
|
+
} else if (NEED_CHANGE_FORMATS.slice(4).includes(format)) {
|
|
552
|
+
if (isAfterDate(cloneEndDate, cloneStartDate)) {
|
|
553
|
+
if (!isAfterCurrentDate(cloneStartDate, cloneEndDate)) {
|
|
554
|
+
cloneStartDate = cloneStartDate.subtract(1, "days");
|
|
555
|
+
cloneEndDate = cloneEndDate.subtract(1, "days");
|
|
556
|
+
}
|
|
557
|
+
} else {
|
|
558
|
+
cloneStartDate = null;
|
|
559
|
+
cloneEndDate = null;
|
|
560
|
+
}
|
|
561
|
+
}
|
|
562
|
+
return {
|
|
563
|
+
dateValue: [cloneStartDate, cloneEndDate],
|
|
564
|
+
format: format
|
|
565
|
+
};
|
|
566
|
+
}
|
|
567
|
+
if (count === 1) {
|
|
568
|
+
var _date2 = _slicedToArray(date, 1),
|
|
569
|
+
_endDate = _date2[0];
|
|
570
|
+
var _cloneStartDate = null;
|
|
571
|
+
var _cloneEndDate = null;
|
|
572
|
+
if (format !== "X") {
|
|
573
|
+
_cloneStartDate = _endDate.clone();
|
|
574
|
+
_cloneEndDate = _endDate.clone();
|
|
575
|
+
_cloneStartDate = _cloneStartDate.set('hour', 0).set('minute', 0).set('second', 0);
|
|
576
|
+
if (NOT_CHANGE_FORMATS.includes(format)) {
|
|
577
|
+
if (!isAfterCurrentDate(_cloneStartDate, _cloneEndDate, true)) {
|
|
578
|
+
_cloneStartDate = null;
|
|
579
|
+
_cloneEndDate = null;
|
|
580
|
+
}
|
|
581
|
+
}
|
|
582
|
+
if (NEED_CHANGE_FORMATS.slice(0, 4).includes(format)) {
|
|
583
|
+
_cloneEndDate = _cloneEndDate.set('hour', 23).set('minute', 59).set('second', 59);
|
|
584
|
+
if (!isAfterCurrentDate(_cloneStartDate, _cloneEndDate, true)) {
|
|
585
|
+
if (_cloneEndDate.isSame(dayjs(), "day")) {
|
|
586
|
+
_cloneEndDate = dayjs();
|
|
587
|
+
} else {
|
|
588
|
+
_cloneStartDate = null;
|
|
589
|
+
_cloneEndDate = null;
|
|
590
|
+
}
|
|
591
|
+
}
|
|
592
|
+
}
|
|
593
|
+
if (NEED_CHANGE_FORMATS.slice(4).includes(format)) {
|
|
594
|
+
if (!isAfterCurrentDate(_cloneStartDate, _cloneEndDate, true)) {
|
|
595
|
+
_cloneStartDate = _cloneStartDate.subtract(1, "days");
|
|
596
|
+
_cloneEndDate = _cloneEndDate.subtract(1, "days");
|
|
597
|
+
}
|
|
598
|
+
}
|
|
599
|
+
}
|
|
600
|
+
return {
|
|
601
|
+
dateValue: [_cloneStartDate, _cloneEndDate],
|
|
602
|
+
format: format
|
|
603
|
+
};
|
|
604
|
+
}
|
|
605
|
+
};
|
|
606
|
+
// 转换输入日期并返回符合规则的日期和format格式
|
|
607
|
+
var parseInputDate = function parseInputDate(text) {
|
|
608
|
+
var finalDate = null;
|
|
609
|
+
var finalFormat = "";
|
|
610
|
+
for (var i = 0; i < FORMATS.length; i += 1) {
|
|
611
|
+
var format = FORMATS[i];
|
|
612
|
+
var date = dayjs(text, format, true);
|
|
613
|
+
if (date.isValid()) {
|
|
614
|
+
finalDate = date;
|
|
615
|
+
finalFormat = format;
|
|
616
|
+
if (format === "X") {
|
|
617
|
+
if (text.length !== 10) {
|
|
618
|
+
finalDate = null;
|
|
619
|
+
finalFormat = "";
|
|
620
|
+
}
|
|
621
|
+
}
|
|
622
|
+
return {
|
|
623
|
+
finalDate: finalDate,
|
|
624
|
+
finalFormat: finalFormat
|
|
625
|
+
};
|
|
626
|
+
}
|
|
627
|
+
}
|
|
628
|
+
return {
|
|
629
|
+
finalDate: finalDate,
|
|
630
|
+
finalFormat: finalFormat
|
|
631
|
+
};
|
|
632
|
+
};
|
|
633
|
+
function getCharCount(str, _char) {
|
|
634
|
+
var regex = new RegExp(_char, "g");
|
|
635
|
+
var result = str.match(regex);
|
|
636
|
+
var count = !result ? 0 : result.length;
|
|
637
|
+
return count;
|
|
638
|
+
}
|
|
639
|
+
function getCheckableDateInfo(inputStr) {
|
|
640
|
+
// 替换时间跨度为空字符串
|
|
641
|
+
// "[21mo] 2023/03/01 00:00:00 - 2023/03/22 10:38:00"-》2023/03/01 00:00:00 - 2023/03/22 10:38:00
|
|
642
|
+
var deleteSpanStr = inputStr.replace(/^\[[1-9][0-9]*([s|m|h|d|y]|mo)\]\s/, "");
|
|
643
|
+
var dateArray = [];
|
|
644
|
+
var count = getCharCount(deleteSpanStr, "-");
|
|
645
|
+
if (count === 1) {
|
|
646
|
+
dateArray = deleteSpanStr.split("-");
|
|
647
|
+
dateArray[0] = dateArray[0].replace(/\s$/, "");
|
|
648
|
+
dateArray[1] = dateArray[1].replace(/^\s/, "");
|
|
649
|
+
} else {
|
|
650
|
+
dateArray = [deleteSpanStr];
|
|
651
|
+
}
|
|
652
|
+
// ['2023/03/01 00:00:00', '2023/03/22 10:38:00']
|
|
653
|
+
return dateArray;
|
|
654
|
+
}
|
|
655
|
+
export function getFinalDateOption(inputStr) {
|
|
656
|
+
var dateArray = getCheckableDateInfo(inputStr);
|
|
657
|
+
var finalDateOption = {
|
|
658
|
+
dateValue: [null, null],
|
|
659
|
+
format: ""
|
|
660
|
+
};
|
|
661
|
+
if (dateArray.length === 2) {
|
|
662
|
+
// ['2023/03/01 00:00:00', '2023/03/22 10:38:00']
|
|
663
|
+
var startDateInfo = parseInputDate(dateArray[0]);
|
|
664
|
+
var endDateInfo = parseInputDate(dateArray[1]);
|
|
665
|
+
var startDate = startDateInfo.finalDate,
|
|
666
|
+
startDateFormat = startDateInfo.finalFormat;
|
|
667
|
+
var endDate = endDateInfo.finalDate,
|
|
668
|
+
endDateFormat = endDateInfo.finalFormat;
|
|
669
|
+
if (startDate && endDate && startDateFormat === endDateFormat) {
|
|
670
|
+
finalDateOption = getFormatParseDate({
|
|
671
|
+
date: [startDate, endDate],
|
|
672
|
+
count: 2
|
|
673
|
+
}, startDateFormat);
|
|
674
|
+
return finalDateOption;
|
|
675
|
+
}
|
|
676
|
+
} else if (dateArray.length === 1) {
|
|
677
|
+
var DateInfo = parseInputDate(dateArray[0]);
|
|
678
|
+
var finalDate = DateInfo.finalDate,
|
|
679
|
+
finalFormat = DateInfo.finalFormat;
|
|
680
|
+
if (finalDate) {
|
|
681
|
+
finalDateOption = getFormatParseDate({
|
|
682
|
+
date: [finalDate],
|
|
683
|
+
count: 1
|
|
684
|
+
}, finalFormat);
|
|
685
|
+
return finalDateOption;
|
|
686
|
+
}
|
|
687
|
+
}
|
|
688
|
+
return finalDateOption;
|
|
689
|
+
}
|
|
690
|
+
|
|
691
|
+
/**
|
|
692
|
+
* 是否超过了最大的时间跨度
|
|
693
|
+
*/
|
|
694
|
+
export var isExceedMaxTimeSpan = function isExceedMaxTimeSpan(value, timeSpanBoundary) {
|
|
695
|
+
return computeTimeDiff(value, "s") > timeSpanBoundary;
|
|
696
|
+
};
|
|
697
|
+
export default dayjs;
|