Files
NapCatQQ/.pnpm-store/v3/files/4e/d4a62f7800f42948bb5072a9959095dc63922562f5a57ea0b99cabed84a210ecfb5e5085c017bcab0fda3ec9976948715f9fe986379ffe5d580cf90c3ac3bc
TanTan e311ca3275
Build NapCat Artifacts / Windows Loader Test (push) Canceled after 0s
Build NapCat Artifacts / Type Check & Test (push) Canceled after 0s
Build NapCat Artifacts / Build NapCat.Framework (push) Canceled after 0s
Build NapCat Artifacts / Build NapCat.Shell (push) Canceled after 0s
docs: 仓库链接指向本镜像仓库
2026-11-13 09:25:58 +08:00

47 lines
1.2 KiB
Plaintext

"use strict";
const units = require("./units.js");
const constants = require("./constants-DR3SPJ7u.js");
const normalizeUnit = require("./normalizeUnit-Cn0hUyBC.js");
const { DATE, DAY, HOUR, MILLISECOND, MINUTE, MONTH, SECOND, TIME, YEAR } = units;
const mapping = {
[YEAR]: "FullYear",
[MONTH]: "Month",
[DATE]: "Date",
[DAY]: "Day",
[HOUR]: "Hours",
[MINUTE]: "Minutes",
[SECOND]: "Seconds",
[MILLISECOND]: "Milliseconds",
[TIME]: "Time"
};
const setting = {};
const getting = {};
Object.entries(mapping).forEach(([key, method]) => {
if (key === DAY) {
setting[key] = function(date, val) {
const day = date.getDay();
if (val !== day) {
date.setTime(+date + (val - day) * constants.MS_IN_DAY);
}
};
} else {
setting[key] = function(date, val) {
date[`set${method}`](val);
};
}
getting[key] = function(date) {
return date[`get${method}`]();
};
});
function get(date, unit) {
const fn = getting[normalizeUnit.normalizeUnit(unit)];
return fn ? fn(date) : 0;
}
function set(date, unit, val) {
const fn = setting[normalizeUnit.normalizeUnit(unit)];
fn && fn(date, val);
return date;
}
exports.get = get;
exports.set = set;