This commit is contained in:
janisslsm committed 2026-11-01 12:12:55 +02:00
1 parent 1781d25a15
commit 732c0ad767
33051 files changed
+2591613 -3019689

No files matched your search

+475
View File
@@ -0,0 +1,475 @@
// Metro module 5922 (f5923).
import MessageRecord from "../../records/MessageRecord";
import AuthenticationStore from "../../stores/AuthenticationStore";
import ChannelStore from "../../stores/ChannelStore";
import MessageStore from "../../stores/MessageStore";
import ReadStateStore from "../../stores/ReadStateStore";
import RelationshipStore from "../../stores/RelationshipStore";
import SelectedGuildStore from "../../stores/SelectedGuildStore";
import UserGuildSettingsStore from "../../stores/UserGuildSettingsStore";
import UserStore from "../../stores/UserStore";
import { ChannelTypes, ChannelTypesSets, MessageTypesSets, RecentMentionsFilters, UserNotificationSettings } from "../../Constants";
import { Storage } from "../../_bundle/Module595";
import { createMessageRecord, updateMessageRecord } from "../messages/MessageRecordUtils";
import { shouldShowAgeGateForChannelId } from "../age_gate/AgeGateUtils";
import isMessageMentioned, { isRawMessageMentioned } from "../messages/isMessageMentioned";
import Module12 from "../../_bundle/Module12";
import { now } from "../../_bundle/sleep";
import isSystemMessage from "../messages/isSystemMessage";
import shouldRemoveSelfMention from "../messages/shouldRemoveSelfMention";
import Module589 from "../../_bundle/Module589";
import Dispatcher from "../../Dispatcher";
function $mk77376($env) {
return (a0) => a0.id === $env[0];
}
function $mk77377($env) {
return (a0) => a0.id !== $env[0];
}
let c3708_17, c3708_18, c3708_19, c3708_20, c3708_21, hasMoreAfter, c3708_23, c3708_24, c3708_25, c3708_26, hasMentionNotificationEnabled, parseMessage, deleteMessage, handleSetRecentMentionsFilters, $mk77374 = function() {
return (a0) => {
if (c3708_19[a0.getChannelId()] == null) {
c3708_19[a0.getChannelId()] = 0;
}
const channelId = a0.getChannelId();
c3708_19[channelId] = c3708_19[channelId] + 1;
};
}, $mk77375 = function() {
return (a0) => {
if (c3708_19[a0.getChannelId()] != null) {
c3708_19[a0.getChannelId()] = Math.max(0, c3708_19[a0.getChannelId()] - 1);
}
};
};
const findOrCreateMessageRecord = function findOrCreateMessageRecord(a0) {
if (a0 instanceof MessageRecord) {
return a0;
}
let r8 = MessageStore.getMessage(a0.channel_id, a0.id);
if (r8 == null) {
r8 = createMessageRecord(a0);
}
return r8;
};
hasMentionNotificationEnabled = function hasMentionNotificationEnabled(a0) {
const basicChannel = ChannelStore.getBasicChannel(a0.channel_id);
if (basicChannel != null && ChannelTypesSets.GUILD_TEXTUAL.has(basicChannel.type)) {
if (UserGuildSettingsStore.isGuildOrCategoryOrChannelMuted(basicChannel.guild_id, basicChannel.id)) {
return false;
}
if (shouldShowAgeGateForChannelId(basicChannel.id)) {
return false;
}
const r27 = UserGuildSettingsStore.resolvedMessageNotifications(basicChannel);
if (UserNotificationSettings.ALL_MESSAGES === r27) {
return true;
}
if (UserNotificationSettings.ONLY_MENTIONS === r27) {
const isSuppressEveryoneEnabled = UserGuildSettingsStore.isSuppressEveryoneEnabled(basicChannel.guild_id);
const isSuppressRolesEnabled = UserGuildSettingsStore.isSuppressRolesEnabled(basicChannel.guild_id);
const currentUser = UserStore.getCurrentUser();
return currentUser != null && isMessageMentioned({
message: a0,
userId: currentUser.id,
suppressEveryone: isSuppressEveryoneEnabled,
suppressRoles: isSuppressRolesEnabled
});
}
UserNotificationSettings.NO_MESSAGES;
return false;
}
return false;
};
parseMessage = function parseMessage(a0, r7 = null) {
if (isSystemMessage(a0) && !MessageTypesSets.SELF_MENTIONABLE_SYSTEM.has(a0.type)) {
return null;
}
if (r7 == null) {
r7 = a0.channel_id;
}
const channel2 = ChannelStore.getChannel(r7);
if (channel2 != null && channel2.type !== ChannelTypes.DM) {
if (c3708_23.guildFilter === RecentMentionsFilters.THIS_SERVER && channel2.getGuildId() !== SelectedGuildStore.getGuildId()) {
return null;
}
const id2 = AuthenticationStore.getId();
if (!RelationshipStore.isBlockedOrIgnoredForMessage(a0) && !shouldRemoveSelfMention(a0, id2)) {
const r2 = a0 instanceof MessageRecord;
let message = a0;
if (!r2) {
let r48 = MessageStore.getMessage(a0.channel_id, a0.id);
if (r48 == null) {
r48 = createMessageRecord(a0);
}
message = r48;
}
const isMessageMentioned2 = isMessageMentioned({
message,
userId: id2,
suppressEveryone: !c3708_23.everyoneFilter,
suppressRoles: !c3708_23.roleFilter
});
let r62 = null;
if (isMessageMentioned2) {
const r63 = c3708_26 && ReadStateStore.ackMessageId(channel2.id) !== message.id && isMessageMentioned({
message,
userId: id2,
suppressEveryone: UserGuildSettingsStore.isSuppressEveryoneEnabled(channel2.getGuildId()),
suppressRoles: UserGuildSettingsStore.isSuppressRolesEnabled(channel2.getGuildId())
});
r62 = message;
if (r63) {
c3708_26 = false;
r62 = message;
}
}
return r62;
}
return null;
}
return null;
};
deleteMessage = function deleteMessage(a0) {
let env15270;
const r2 = env15270 = {};
env15270[0] = a0;
if (c3708_20[a0] == null) {
return false;
}
delete c3708_20[a0];
const r6 = {
deletedMessages: Module12.filter(c3708_18, $mk77376(r2))
};
const { addedMessages, deletedMessages } = r6;
if (addedMessages != null) {
addedMessages.forEach($mk77374());
}
if (deletedMessages != null) {
deletedMessages.forEach($mk77375());
}
c3708_18 = Module12.filter(c3708_18, $mk77377(r2));
};
const handleMessageDelete = function handleMessageDelete({ id: id2 }) {
let env15271;
const r12 = env15271 = {};
env15271[0] = id2;
const r1 = c3708_20[id2] == null;
let r0 = false;
if (!r1) {
delete c3708_20[id2];
const r7 = {
deletedMessages: Module12.filter(c3708_18, $mk77376(r12))
};
const { addedMessages, deletedMessages } = r7;
if (addedMessages != null) {
addedMessages.forEach($mk77374());
}
if (deletedMessages != null) {
deletedMessages.forEach($mk77375());
}
c3708_18 = Module12.filter(c3708_18, $mk77377(r12));
r0 = void 0;
}
return r0;
};
handleSetRecentMentionsFilters = function handleSetRecentMentionsFilters(a0) {
const r6 = {
...c3708_23
};
c3708_23 = Module12.defaults(Module12.pick(a0, ["guildFilter", "roleFilter", "everyoneFilter"]), c3708_23);
Storage.set(c3708_17, c3708_23);
const THIS_SERVER = RecentMentionsFilters.THIS_SERVER;
const r1 = r6.guildFilter !== c3708_23.guildFilter && c3708_23.guildFilter === THIS_SERVER || r6.everyoneFilter !== c3708_23.everyoneFilter && c3708_23.everyoneFilter === false || r6.roleFilter !== c3708_23.roleFilter && c3708_23.roleFilter === false;
c3708_20 = {};
const r52 = [];
let c15272_0 = r52;
if (r1) {
c3708_18.forEach((item) => {
const r6 = parseMessage(item);
if (r6 != null) {
c15272_0.push(r6);
c3708_20[r6.id] = true;
}
});
}
c3708_18 = r52;
c3708_19 = {};
r52.forEach((item) => {
if (c3708_19[item.getChannelId()] == null) {
c3708_19[item.getChannelId()] = 0;
}
const channelId = item.getChannelId();
c3708_19[channelId] = c3708_19[channelId] + 1;
});
if (c3708_18.length === 0) {
c3708_24 = false;
}
};
const handleRelationshipUpdate = function handleRelationshipUpdate() {
const r2 = {
deletedMessages: Module12.filter(c3708_18, (a0) => RelationshipStore.isBlockedOrIgnoredForMessage(a0))
};
const { addedMessages, deletedMessages } = r2;
if (addedMessages != null) {
addedMessages.forEach($mk77374());
}
if (deletedMessages != null) {
deletedMessages.forEach($mk77375());
}
c3708_18 = c3708_18.filter((item) => !RelationshipStore.isBlockedOrIgnoredForMessage(item));
};
const handleDeleteChannel = function handleDeleteChannel({ channel }) {
const deletedMessages2 = [];
let c15273_1 = deletedMessages2;
c3708_18 = Module12.filter(c3708_18, (a0) => {
let r0 = a0.channel_id !== channel.id;
if (!r0) {
delete c3708_20[a0.id];
c15273_1.push(a0);
r0 = false;
}
return r0;
});
const r15 = {
deletedMessages: deletedMessages2
};
const { addedMessages, deletedMessages } = r15;
if (addedMessages != null) {
addedMessages.forEach($mk77374());
}
if (deletedMessages != null) {
deletedMessages.forEach($mk77375());
}
};
c3708_17 = "recentMentionFilterSettings";
c3708_18 = [];
c3708_19 = {};
c3708_20 = {};
c3708_21 = false;
hasMoreAfter = true;
c3708_23 = Storage.get("recentMentionFilterSettings", {
guildFilter: RecentMentionsFilters.ALL_SERVERS,
everyoneFilter: true,
roleFilter: true
});
c3708_24 = false;
c3708_25 = 0;
c3708_26 = false;
class RecentMentionsStore extends Module589.Store {
static displayName = "RecentMentionsStore";
initialize() {
this.waitFor(AuthenticationStore, ChannelStore, MessageStore, ReadStateStore, RelationshipStore, SelectedGuildStore, UserGuildSettingsStore, UserStore);
}
get hasLoadedEver() {
return c3708_24;
}
get lastLoaded() {
return c3708_25;
}
getMentions() {
return c3708_24 ? c3708_18 : c3708_18.length > 0 ? c3708_18 : null;
}
getSettingsFilteredMentions() {
return c3708_24 ? c3708_18.filter(hasMentionNotificationEnabled) : c3708_18.length > 0 ? c3708_18.filter(hasMentionNotificationEnabled) : null;
}
hasMention(a0) {
return c3708_20[a0];
}
get loading() {
return c3708_21;
}
get hasMore() {
return hasMoreAfter;
}
get guildFilter() {
return c3708_23.guildFilter;
}
get everyoneFilter() {
return c3708_23.everyoneFilter;
}
get roleFilter() {
return c3708_23.roleFilter;
}
get mentionsAreStale() {
return c3708_26;
}
get mentionCountByChannel() {
return c3708_19;
}
getMentionCountForChannel(a0) {
let r5 = c3708_19[a0];
if (r5 == null) {
r5 = 0;
}
return r5;
}
}
const recentMentionsStore = new RecentMentionsStore(Dispatcher, {
LOAD_RECENT_MENTIONS: function handleLoadMentions({ guildId }) {
c3708_21 = true;
if (guildId == null && c3708_23.guildFilter === RecentMentionsFilters.THIS_SERVER) {
handleSetRecentMentionsFilters({
guildFilter: RecentMentionsFilters.ALL_SERVERS
});
}
},
LOAD_RECENT_MENTIONS_SUCCESS: function handleLoadMentionsSuccess({ hasMoreAfter: hasMoreAfter2, messages, isAfter }) {
const addedMessages2 = Module12.map(messages, findOrCreateMessageRecord);
const r15 = {
addedMessages: addedMessages2
};
const { addedMessages, deletedMessages } = r15;
if (addedMessages != null) {
addedMessages.forEach($mk77374());
}
if (deletedMessages != null) {
deletedMessages.forEach($mk77375());
}
if (isAfter) {
c3708_18 = c3708_18.concat(addedMessages2);
} else {
c3708_18 = addedMessages2;
c3708_20 = {};
}
Module12.forEach(addedMessages2, (a0) => {
c3708_20[a0.id] = true;
});
c3708_21 = false;
hasMoreAfter = hasMoreAfter2;
c3708_25 = now();
c3708_24 = true;
},
LOAD_RECENT_MENTIONS_FAILURE: function handleLoadMentionsFailure() {
c3708_21 = false;
},
SET_RECENT_MENTIONS_FILTER: handleSetRecentMentionsFilters,
CLEAR_MENTIONS: function handleClearMentions() {
c3708_18 = [];
c3708_20 = {};
c3708_24 = false;
c3708_26 = false;
c3708_19 = {};
},
TRUNCATE_MENTIONS: function handleTruncateMentions({ size }) {
const r9 = {
deletedMessages: c3708_18.slice(size)
};
const { addedMessages, deletedMessages } = r9;
if (addedMessages != null) {
addedMessages.forEach($mk77374());
}
if (deletedMessages != null) {
deletedMessages.forEach($mk77375());
}
const length = c3708_18.length;
let r19 = size;
if (r19 < length) {
do {
delete c3708_20[c3708_18[r19].id];
r19 = r19 + 1;
} while (r19 < c3708_18.length);
}
const length2 = c3708_18.length;
const r31 = c3708_18.slice(0, size);
c3708_18 = r31;
if (length2 > r31.length) {
hasMoreAfter = true;
}
},
CHANNEL_SELECT: function handleChannelSelect() {
if (c3708_23.guildFilter !== RecentMentionsFilters.THIS_SERVER) {
return false;
}
c3708_24 = false;
},
CONNECTION_OPEN: function handleConnectionOpen() {
c3708_18 = [];
c3708_20 = {};
c3708_24 = false;
c3708_26 = false;
c3708_19 = {};
},
GUILD_DELETE: function handleGuildDelete({ guild }) {
const deletedMessages2 = [];
let c15274_1 = deletedMessages2;
c3708_18 = Module12.filter(c3708_18, (a0) => {
const channel2 = ChannelStore.getChannel(a0.channel_id);
let r9 = channel2 != null && channel2.getGuildId() !== guild.id;
if (!r9) {
delete c3708_20[a0.id];
c15274_1.push(a0);
r9 = false;
}
return r9;
});
const r15 = {
deletedMessages: deletedMessages2
};
const { addedMessages, deletedMessages } = r15;
if (addedMessages != null) {
addedMessages.forEach($mk77374());
}
if (deletedMessages != null) {
deletedMessages.forEach($mk77375());
}
},
MESSAGE_CREATE: function handleIncomingMessage({ channelId, message }) {
const currentUser = UserStore.getCurrentUser();
if (currentUser != null && isRawMessageMentioned({
rawMessage: message,
userId: currentUser.id,
suppressRoles: false,
suppressEveryone: false
})) {
const r19 = parseMessage(message, channelId);
if (r19 == null) {
return false;
}
const r22 = c3708_18.slice();
c3708_18 = r22;
r22.unshift(r19);
c3708_20[r19.id] = true;
const r28 = {
addedMessages: [r19]
};
const { addedMessages, deletedMessages } = r28;
if (addedMessages != null) {
addedMessages.forEach($mk77374());
}
if (deletedMessages != null) {
deletedMessages.forEach($mk77375());
}
return void 0;
}
return false;
},
MESSAGE_UPDATE: function handleMessageUpdate(a0) {
const id = a0.message.id;
if (id != null && c3708_20[id] != null) {
const r16 = Module12.findIndex(c3708_18, (a0) => a0.id === id);
const r19 = c3708_18.slice();
c3708_18 = r19;
const r20 = r19[r16];
if (r20 != null) {
c3708_18[r16] = updateMessageRecord(r20, a0.message);
}
return void 0;
}
return false;
},
MESSAGE_DELETE: handleMessageDelete,
RECENT_MENTION_DELETE: handleMessageDelete,
MESSAGE_DELETE_BULK: function handleMessageDeleteBulk(a0) {
Module12.forEach(a0.ids, deleteMessage);
},
CHANNEL_DELETE: handleDeleteChannel,
THREAD_DELETE: handleDeleteChannel,
RELATIONSHIP_ADD: handleRelationshipUpdate,
RELATIONSHIP_REMOVE: handleRelationshipUpdate,
RELATIONSHIP_UPDATE: handleRelationshipUpdate,
SET_RECENT_MENTIONS_STALE: function handleSetRecentMentionsStale() {
c3708_26 = true;
}
});
export default recentMentionsStore;
export { hasMentionNotificationEnabled };
export { parseMessage };