83 lines
3.8 KiB
TypeScript
83 lines
3.8 KiB
TypeScript
// Metro module 9503 (f9504).
|
|
import { ChannelStreamTypes, MessageFlags, MessageTypes } from "../../Constants";
|
|
import Durations from "../../utils/Durations";
|
|
import isSystemMessage from "./isSystemMessage";
|
|
import SnowflakeUtils from "../../utils/SnowflakeUtils";
|
|
import * as _DateUtils from "../../utils/DateUtils";
|
|
let c6267_6;
|
|
const isNewMessageGroup = function isNewMessageGroup(a0, content, a2) {
|
|
let r40;
|
|
const hasFlag = a2.hasFlag(MessageFlags.HAS_THREAD);
|
|
const r1 = hasFlag ? !hasFlag : !a2.isCommandType();
|
|
let r9 = !r1;
|
|
if (r1) {
|
|
let r31 = content.blocked !== a2.blocked || content.ignored !== a2.ignored;
|
|
if (!r31) {
|
|
if (a2.type > MessageTypes.DEFAULT) {
|
|
const isSystemMessage2 = isSystemMessage(content);
|
|
r40 = isSystemMessage2 ? a2.type === MessageTypes.REPLY : !isSystemMessage2;
|
|
} else {
|
|
r40 = !!isSystemMessage(content);
|
|
if (!r40) {
|
|
let r2 = content.author.id !== a2.author.id;
|
|
if (!r2) {
|
|
let r13 = content.hasFlag(MessageFlags.EPHEMERAL) !== a2.hasFlag(MessageFlags.EPHEMERAL);
|
|
if (!r13) {
|
|
let r6 = a2.webhookId != null && content.author.username !== a2.author.username;
|
|
if (!r6) {
|
|
const r55 = a0 == null ? void 0 : a0.isForumPost();
|
|
const r3 = r55 ? content.id !== SnowflakeUtils.castChannelIdAsMessageId(a0.id) : !r55;
|
|
let r63 = !r3;
|
|
if (r3) {
|
|
const isSameDay = _DateUtils.isSameDay(content.timestamp, a2.timestamp);
|
|
let r70 = !isSameDay;
|
|
if (isSameDay) {
|
|
const isWithinInterval = _DateUtils.isWithinInterval(content.timestamp, a2.timestamp, c6267_6);
|
|
let r78 = !isWithinInterval;
|
|
if (isWithinInterval) {
|
|
const hasFlag2 = a2.hasFlag(MessageFlags.SUPPRESS_NOTIFICATIONS);
|
|
const r82 = hasFlag2 ? content.hasFlag(MessageFlags.SUPPRESS_NOTIFICATIONS) : !hasFlag2;
|
|
let r12 = !r82;
|
|
if (r82) {
|
|
const hasFlag3 = content.hasFlag(MessageFlags.SUPPRESS_NOTIFICATIONS);
|
|
const r88 = (hasFlag3 ? a2.hasFlag(MessageFlags.SUPPRESS_NOTIFICATIONS) : !hasFlag3) || !(a2.mentions.length > 0 || a2.mentionRoles.length > 0 || a2.mentionEveryone);
|
|
let r11 = !r88;
|
|
if (r88) {
|
|
let r10 = a2.applicationId !== content.applicationId;
|
|
if (!r10) {
|
|
const additionalName = a2.additionalName;
|
|
const r99 = additionalName == null ? null : additionalName !== "" ? additionalName : null;
|
|
const additionalName2 = content.additionalName;
|
|
r10 = r99 !== (additionalName2 == null ? null : additionalName2 !== "" ? additionalName2 : null);
|
|
}
|
|
r11 = r10;
|
|
}
|
|
r12 = r11;
|
|
}
|
|
r78 = r12;
|
|
}
|
|
r70 = r78;
|
|
}
|
|
r63 = r70;
|
|
}
|
|
r6 = r63;
|
|
}
|
|
r13 = r6;
|
|
}
|
|
r2 = r13;
|
|
}
|
|
r40 = r2;
|
|
}
|
|
}
|
|
r31 = r40;
|
|
}
|
|
r9 = r31;
|
|
}
|
|
return r9;
|
|
};
|
|
c6267_6 = 7 * Durations.Millis.MINUTE;
|
|
export default isNewMessageGroup;
|
|
export function isNewGroupItem(a0, a1, a2) {
|
|
return a1 == null || (a1.type === ChannelStreamTypes.MESSAGE && a1.content.id === a1.content.channel_id || (a1.type !== ChannelStreamTypes.MESSAGE && a1.type !== ChannelStreamTypes.THREAD_STARTER_MESSAGE || isNewMessageGroup(a0, a1.content, a2)));
|
|
}
|