Files
discord-decomp/sources/modules/favorites/useFavoriteGuildUnreads.tsx
T
2026-07-27 16:20:00 +03:00

94 lines
4.6 KiB
TypeScript

/* Metro module 14413; source: modules/favorites/useFavoriteGuildUnreads.tsx; dependencies: [5071, 3786, 1379, 5214, 3784, 4605, 4864, 566, 21, 2] */
function _fun109093(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#109093, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14610:6, offset: 0x0233cfac, size: 214 bytes, params: 8, frame: 19
let env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const activeJoinedThreadsStore = importDefault(5071) /* metro dependency 5071: ActiveJoinedThreadsStore */;
const joinedThreadsStore = importDefault(3786) /* metro dependency 3786: JoinedThreadsStore */;
const channelStore = importDefault(1379) /* metro dependency 1379: ChannelStore */;
const guildReadStateStore = importDefault(5214) /* metro dependency 5214: GuildReadStateStore */;
const permissionStore = importDefault(3784) /* metro dependency 3784: PermissionStore */;
const readStateStore = importDefault(4605) /* metro dependency 4605: ReadStateStore */;
const userGuildSettingsStore = importDefault(4864) /* metro dependency 4864: UserGuildSettingsStore */;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/favorites/useFavoriteGuildUnreads.tsx');
exports.default = function(a0) {
var env0_0 = a0;
return require(dependencyMap[7]).useStateFromStoresObject([ActiveJoinedThreadsStore, ChannelStore,
GuildReadStateStore, JoinedThreadsStore, PermissionStore, ReadStateStore, UserGuildSettingsStore],
_fun109095);
};
}
function useFavoriteGuildUnreads(a0) { // fn#109094, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14610:255, offset: 0x0233d082, size: 115 bytes, params: 2, frame: 15
const env0_0 = a0;
return (require(566) /* metro dependency 566: flux */).useStateFromStoresObject([ActiveJoinedThreadsStore,
ChannelStore, GuildReadStateStore, JoinedThreadsStore, PermissionStore, ReadStateStore, UserGuildSettingsStore],
_fun109095);
}
function _fun109095() { // fn#109095, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14610:348, offset: 0x0233d0f5, size: 111 bytes, params: 1, frame: 13
var environment;
let value = environment.__proto__;
value = importDefault(21) /* metro dependency 21: SnowflakeUtils */;
value = value.keys(env0_0);
const Set = global.Set;
const set = new Set();
return value.reduce(_fun109096, {'badge': 0, 'unread': false});
}
function _fun109096(a0, a1) { // fn#109096, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14610:402, offset: 0x0233d164, size: 348 bytes, params: 3, frame: 23
var r9;
var r8;
var badge;
var propertyName;
var mentionCount;
var channel;
var hasUnread3;
var shouldCountChannelUnread3;
const channel2 = ChannelStore.getChannel(a1);
const guildId = channel2?.getGuildId();
const mentionCount2 = ReadStateStore.getMentionCount(a1);
let binding = env0_0;
let has = binding.has;
if (!Reflect.apply(has, binding, [a1])) {
binding = env0_0;
binding.add(a1);
badge = a0.badge;
a0.badge = badge + mentionCount2;
}
let unread = a0.unread;
a0.unread = unread || ReadStateStore.hasUnread(a1) && GuildReadStateStore.shouldCountChannelUnread(channel2,
mentionCount2);
if (guildId != null) {
for (propertyName in ActiveJoinedThreadsStore.getActiveJoinedRelevantThreadsForParent(guildId, a1)) {
mentionCount = ReadStateStore.getMentionCount(propertyName);
binding = env0_0;
has = binding.has;
if (Reflect.apply(has, binding, [propertyName])) {
continue;
}
binding = env0_0;
binding.add(propertyName);
badge = a0.badge;
a0.badge = badge + mentionCount;
channel = ChannelStore.getChannel(propertyName);
unread = a0.unread;
if (unread) {
r8 = unread;
continue;
}
hasUnread3 = ReadStateStore.hasUnread(propertyName);
if (!hasUnread3) {
r9 = hasUnread3;
continue;
}
shouldCountChannelUnread3 = GuildReadStateStore.shouldCountChannelUnread(channel, mentionCount);
r9 = shouldCountChannelUnread3;
r8 = r9;
a0.unread = r8;
}
}
return a0;
}