decord/source/modules/notification_center/NotificationCenterUtils.tsx

66 lines
3.7 KiB
TypeScript
Raw Normal View History

// Module ID: 7743
// Function ID: 7744
// Name: NotificationCenterUtils
// Dependencies: [7744, 1935, 11, 7742, 2]
2026-07-20 16:05:17 +00:00
// Exports: getRelativeTimestamp, incomingFriendRequestLocalItem, incomingGameFriendRequestLocalItem, isMentionItem, isRemoteAcked, mobileNativeUpdateAvailableLocalItem
// Module 7743 (NotificationCenterUtils)
import SnowflakeUtilsDefault from "SnowflakeUtils" /* 11 */;
import UserSettings from "UserSettings" /* 1935 */;
import NotificationCenterItemsTypes from "NotificationCenterItemsTypes" /* 7742 */;
import notification_center_getTimestampString from "notification_center/getTimestampString" /* 7744 */;
import size from "module_2" /* 2 */;
2026-08-24 06:08:38 +00:00
const notification_center_getTimestampStringDefault = notification_center_getTimestampString;
const result = size.fileFinishedImporting("modules/notification_center/NotificationCenterUtils.tsx");
2026-07-20 16:05:17 +00:00
export const getRelativeTimestamp = function getRelativeTimestamp(extractTimestampResult, flag) {
if (flag === undefined) {
flag = true;
}
2026-07-29 08:29:29 +00:00
const obj = { since: extractTimestampResult, getFormatter: null };
const tmp2 = notification_center_getTimestampString;
obj.getFormatter = flag ? tmp2.getAbbreviatedFormatter : tmp2.getFullFormatter;
return notification_center_getTimestampStringDefault(obj);
2026-07-20 16:05:17 +00:00
};
export const isRemoteAcked = function isRemoteAcked(addResult, setting) {
2026-07-20 16:05:17 +00:00
let acked = addResult.acked;
if (!acked) {
let tmp4 = setting !== UserSettings.NOTIFICATION_CENTER_ACKED_BEFORE_ID_UNSET;
2026-07-29 08:29:29 +00:00
if (tmp4) {
tmp4 = SnowflakeUtilsDefault.compare(setting, addResult.id) >= 0;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
acked = tmp4;
2026-07-20 16:05:17 +00:00
}
return acked;
};
export const incomingFriendRequestLocalItem = function incomingFriendRequestLocalItem(user, since, origin_application_id) {
const obj = SnowflakeUtilsDefault;
2026-07-20 16:05:17 +00:00
const fromTimestampResult = obj.fromTimestamp(new Date(since).getTime());
const date = new Date(since);
return { acked: false, forceUnacked: true, other_user: user, kind: "notification-center-item", local_id: "incoming_friend_requests_" + user.id + "_" + fromTimestampResult, deeplink: "https://discord.com/users/" + user.id, type: NotificationCenterItemsTypes.NotificationCenterLocalItems.INCOMING_FRIEND_REQUESTS, id: fromTimestampResult, applicationId: origin_application_id };
2026-07-20 16:05:17 +00:00
};
export const incomingGameFriendRequestLocalItem = function incomingGameFriendRequestLocalItem(user, since, applicationId) {
const obj = SnowflakeUtilsDefault;
2026-07-20 16:05:17 +00:00
const fromTimestampResult = obj.fromTimestamp(new Date(since).getTime());
const date = new Date(since);
return { acked: false, forceUnacked: true, other_user: user, kind: "notification-center-item", local_id: "incoming_game_friend_requests_" + user.id + "_" + fromTimestampResult, deeplink: "https://discord.com/users/" + user.id, type: NotificationCenterItemsTypes.NotificationCenterLocalItems.INCOMING_GAME_FRIEND_REQUESTS, id: fromTimestampResult, applicationId };
2026-07-20 16:05:17 +00:00
};
export const mobileNativeUpdateAvailableLocalItem = function mobileNativeUpdateAvailableLocalItem(newBuild) {
2026-07-29 08:29:29 +00:00
const obj = { acked: false, enableBadge: true, id: null, kind: "notification-center-item", local_id: null, type: null, deeplink: null };
const obj2 = SnowflakeUtilsDefault;
obj.id = obj2.fromTimestamp(new Date().getTime());
obj.local_id = "mobile_update_available_" + newBuild.build;
obj.type = NotificationCenterItemsTypes.NotificationCenterLocalItems.MOBILE_NATIVE_UPDATE_AVAILABLE;
obj.deeplink = newBuild.urls.install.toString();
2026-07-20 16:05:17 +00:00
return obj;
};
export const isMentionItem = function isMentionItem(addResult) {
let tmp3 = addResult.type === NotificationCenterItemsTypes.NotificationCenterItems.RECENT_MENTION;
2026-07-29 08:29:29 +00:00
if (!tmp3) {
tmp3 = addResult.type === NotificationCenterItemsTypes.NotificationCenterItems.REPLY_MENTION;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
return tmp3;
2026-07-20 16:05:17 +00:00
};