Files
openclaw 0a5f6a8047 Initial commit: Lan-manager project code
- Go backend (server/)
- Frontend (web/, server/static/)
- Database and deployment files
- Scripts and docs

Co-Authored-By: 狸花猫/Claude-Qwen3.6-Plus 🐾
2026-04-20 00:52:58 +08:00

79 lines
2.4 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getTickInterval = exports.YEAR = exports.MONTH = exports.DAY = exports.HOUR = exports.MINUTE = exports.SECOND = exports.toTimeStamp = exports.timeFormat = void 0;
var util_1 = require("@antv/util");
var fecha_1 = require("fecha");
var fecha1 = require("fecha");
var bisector_1 = require("./bisector");
var FORMAT_METHOD = 'format';
function timeFormat(time, mask) {
var method = fecha1[FORMAT_METHOD] || fecha_1.default[FORMAT_METHOD];
return method(time, mask);
}
exports.timeFormat = timeFormat;
/**
* 转换成时间戳
* @param value 时间值
*/
function toTimeStamp(value) {
if (util_1.isString(value)) {
if (value.indexOf('T') > 0) {
value = new Date(value).getTime();
}
else {
// new Date('2010/01/10') 和 new Date('2010-01-10') 的差别在于:
// 如果仅有年月日时,前者是带有时区的: Fri Jan 10 2020 02:40:13 GMT+0800 (中国标准时间)
// 后者会格式化成 Sun Jan 10 2010 08:00:00 GMT+0800 (中国标准时间)
value = new Date(value.replace(/-/gi, '/')).getTime();
}
}
if (util_1.isDate(value)) {
value = value.getTime();
}
return value;
}
exports.toTimeStamp = toTimeStamp;
var SECOND = 1000;
exports.SECOND = SECOND;
var MINUTE = 60 * SECOND;
exports.MINUTE = MINUTE;
var HOUR = 60 * MINUTE;
exports.HOUR = HOUR;
var DAY = 24 * HOUR;
exports.DAY = DAY;
var MONTH = DAY * 31;
exports.MONTH = MONTH;
var YEAR = DAY * 365;
exports.YEAR = YEAR;
var intervals = [
['HH:mm:ss', SECOND],
['HH:mm:ss', SECOND * 10],
['HH:mm:ss', SECOND * 30],
['HH:mm', MINUTE],
['HH:mm', MINUTE * 10],
['HH:mm', MINUTE * 30],
['HH', HOUR],
['HH', HOUR * 6],
['HH', HOUR * 12],
['YYYY-MM-DD', DAY],
['YYYY-MM-DD', DAY * 4],
['YYYY-WW', DAY * 7],
['YYYY-MM', MONTH],
['YYYY-MM', MONTH * 4],
['YYYY-MM', MONTH * 6],
['YYYY', DAY * 380],
];
function getTickInterval(min, max, tickCount) {
var target = (max - min) / tickCount;
var idx = bisector_1.default(function (o) { return o[1]; })(intervals, target) - 1;
var interval = intervals[idx];
if (idx < 0) {
interval = intervals[0];
}
else if (idx >= intervals.length) {
interval = util_1.last(intervals);
}
return interval;
}
exports.getTickInterval = getTickInterval;
//# sourceMappingURL=time.js.map