UNPKG

@tencentcloud/ai-desk-customer-wechat

Version:

AI Desk customer UIKit for wechat mini program

87 lines (86 loc) 2.85 kB
"use strict"; const common_vendor = require("../../common/vendor.js"); function deepCopy(data, hash = /* @__PURE__ */ new WeakMap()) { if (typeof data !== "object" || data === null || data === void 0) { return data; } if (hash.has(data)) { return hash.get(data); } const newData = Object.create(Object.getPrototypeOf(data)); const dataKeys = Object.keys(data); dataKeys.forEach((value) => { const currentDataValue = data[value]; if (typeof currentDataValue !== "object" || currentDataValue === null) { newData[value] = currentDataValue; } else if (Array.isArray(currentDataValue)) { newData[value] = [...currentDataValue]; } else if (currentDataValue instanceof Set) { newData[value] = /* @__PURE__ */ new Set([...currentDataValue]); } else if (currentDataValue instanceof Map) { newData[value] = new Map([...currentDataValue]); } else { hash.set(data, data); newData[value] = deepCopy(currentDataValue, hash); } }); return newData; } function isEnabledMessageReadReceiptGlobal() { return true; } function shallowCopyMessage(message) { return Object.assign({}, message); } function calculateTimestamp(timestamp) { const todayZero = (/* @__PURE__ */ new Date()).setHours(0, 0, 0, 0); const thisYear = new Date( (/* @__PURE__ */ new Date()).getFullYear(), 0, 1, 0, 0, 0, 0 ).getTime(); const target = new Date(timestamp); const oneDay = 24 * 60 * 60 * 1e3; const oneWeek = 7 * oneDay; const diff = todayZero - target.getTime(); function formatNum(num) { return num < 10 ? "0" + num : num.toString(); } if (diff <= 0) { return `${formatNum(target.getHours())}:${formatNum(target.getMinutes())}`; } else if (diff <= oneDay) { return `${common_vendor.Wt.t("time.昨天")} ${formatNum( target.getHours() )}:${formatNum(target.getMinutes())}`; } else if (diff <= oneWeek - oneDay) { const weekdays = [ "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" ]; const weekday = weekdays[target.getDay()]; return `${common_vendor.Wt.t("time." + weekday)} ${formatNum( target.getHours() )}:${formatNum(target.getMinutes())}`; } else if (target.getTime() >= thisYear) { return `${target.getMonth() + 1}/${target.getDate()} ${formatNum( target.getHours() )}:${formatNum(target.getMinutes())}`; } else { return `${target.getFullYear()}/${target.getMonth() + 1}/${target.getDate()} ${formatNum(target.getHours())}:${formatNum( target.getMinutes() )}`; } } exports.calculateTimestamp = calculateTimestamp; exports.deepCopy = deepCopy; exports.isEnabledMessageReadReceiptGlobal = isEnabledMessageReadReceiptGlobal; exports.shallowCopyMessage = shallowCopyMessage;