decord/source/modules/icymi/ICYMIStore.tsx
2026-07-24 07:16:23 +00:00

1429 lines
44 KiB
TypeScript

// Module ID: 8350
// Function ID: 65864
// Name: _isNativeReflectConstruct
// Dependencies: [6, 7, 15, 17, 18, 57, 8351, 4044, 6758, 1194, 1348, 8360, 1838, 4349, 3758, 4142, 3767, 4325, 8362, 8363, 653, 8373, 664, 8364, 7086, 7901, 7906, 8356, 8374, 5736, 4351, 566, 686, 2]
// Module 8350 (_isNativeReflectConstruct)
import closure_3 from "_isNativeReflectConstruct";
import closure_4 from "_isNativeReflectConstruct";
import closure_5 from "_isNativeReflectConstruct";
import closure_6 from "_isNativeReflectConstruct";
import closure_7 from "_isNativeReflectConstruct";
import _slicedToArray from "_slicedToArray";
import closure_9 from "_isNativeReflectConstruct";
import closure_10 from "_isNativeReflectConstruct";
import _isNativeReflectConstruct from "_isNativeReflectConstruct";
import closure_14 from "_isNativeReflectConstruct";
import closure_15 from "_isNativeReflectConstruct";
import closure_16 from "_isNativeReflectConstruct";
import closure_17 from "_isNativeReflectConstruct";
import _createForOfIteratorHelperLoose from "_createForOfIteratorHelperLoose";
import closure_19 from "_isNativeReflectConstruct";
import closure_20 from "_isNativeReflectConstruct";
import closure_21 from "_isNativeReflectConstruct";
import closure_22 from "_isNativeReflectConstruct";
import closure_23 from "_isNativeReflectConstruct";
import closure_24 from "_isNativeReflectConstruct";
import closure_25 from "_isNativeReflectConstruct";
import ME from "ME";
import { ContentInventoryFeedKey } from "ContentInventoryFeedKey";
import set from "_possibleConstructorReturn";
let closure_11;
let closure_12;
let closure_13;
let closure_26;
let closure_27;
let closure_28;
const require = arg1;
function _isNativeReflectConstruct() {
let closure_0 = !valueOf.call(Reflect.construct(Boolean, [], () => {
}));
function _isNativeReflectConstruct() {
return closure_0;
}
const result = _isNativeReflectConstruct();
}
function _createForOfIteratorHelperLoose(iterable) {
let closure_0 = iterable;
iterable = "undefined" !== typeof Symbol;
if (iterable) {
const _Symbol = Symbol;
iterable = iterable[Symbol.iterator];
}
if (!iterable) {
iterable = iterable[Symbol.iterator];
}
if (iterable) {
const iter = iterable.call(iterable);
const next = iter.next;
return next.bind(iter);
} else {
const _Array = Array;
let tmp = iterable;
if (!Array.isArray(iterable)) {
let tmp2;
if (iterable) {
if ("string" === typeof iterable) {
tmp2 = _arrayLikeToArray(iterable, undefined);
} else {
const toString = {}.toString;
const substr = toString.call(iterable).slice(8, -1);
let name = substr;
if (tmp3) {
name = iterable.constructor.name;
}
if ("Map" !== name) {
if ("Set" !== name) {
if ("Arguments" === name) {
let arr = _arrayLikeToArray(iterable, undefined);
} else {
let obj = /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/;
}
}
tmp2 = arr;
}
const _Array2 = Array;
arr = Array.from(iterable);
const callResult = toString.call(iterable);
tmp3 = "Object" === substr && iterable.constructor;
}
}
tmp = tmp2;
if (!tmp2) {
const _TypeError = TypeError;
const typeError = new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
throw typeError;
}
}
if (tmp) {
closure_0 = tmp;
}
let c1 = 0;
return () => {
if (closure_1 >= length.length) {
let obj = { done: true };
} else {
obj = { done: false };
closure_1 = tmp3 + 1;
obj.value = length[+closure_1];
}
return obj;
};
}
}
function _arrayLikeToArray(arg0, arg1) {
let length;
if (tmp) {
length = arg0.length;
}
const ArrayResult = Array(length);
for (let num = 0; num < length; num = num + 1) {
ArrayResult[num] = arg0[num];
}
return ArrayResult;
}
function tabHasNewContentOnInitialLoad(first, closure_35) {
const diff = Date.now() - c34;
if (diff > 6 * importDefault(664).Millis.HOUR) {
const _Set = Set;
const set = new Set(first.map((id) => id.id));
const substr = closure_35.slice(0, 20);
return substr.filter((id) => set.has(id.id)).length >= 3;
} else {
return false;
}
}
function filterStaffGuild(data) {
if (closure_24.filterStaffContent()) {
if (obj.isGuildItem(data)) {
if (data.data.guild_id === require(7086) /* MessageEmbedTypes */.GAME_CONTENT_GUILD_ID) {
return true;
} else {
const guild = store2.getGuild(data.data.guild_id);
if (null != guild) {
const features = guild.features;
}
return false;
}
}
return true;
} else {
return true;
}
}
function injectItemsIntoList(arr, arr2) {
let closure_0 = arg2;
let closure_1 = arg3;
const found = arr.filter((type) => type.type !== closure_0);
const item = arr2.forEach((arg0, arg1) => {
if ((arg1 + 1) * closure_1 < found.length) {
found.splice((arg1 + 1) * closure_1, 0, arg0);
} else {
found.push(arg0);
}
});
return found;
}
function injectAdditionalItems() {
(function injectGuildEvents() {
let channel_id;
let iter6;
const items = [];
const tmp = outer1_63(outer1_18.getGuildIds());
const iter = tmp();
let iter2 = iter;
if (!iter.done) {
do {
let value = iter2.value;
let tmp4 = outer1_41;
if (null == outer1_41[value]) {
let tmp8 = outer1_63;
let tmp9 = outer1_14;
let tmp10 = outer1_63(outer1_14.getGuildScheduledEventsForGuild(value));
let iter3 = tmp10();
let iter4 = iter3;
let num = 0;
let tmp11 = tmp3;
let tmp12 = iter3;
let num2 = 0;
let tmp13 = tmp10;
let tmp6 = tmp2;
let tmp7 = tmp3;
if (!iter3.done) {
while (true) {
value = iter4.value;
let tmp14 = outer1_12;
let sum = num;
let tmp16 = tmp11;
if (!outer1_12(value)) {
if (null == value.channel_id) {
let tmp20 = outer1_11;
let tmp21 = outer1_1;
let tmp22 = outer1_2;
if (outer1_11(value, 2 * outer1_1(outer1_2[22]).Seconds.DAY)) {
let tmp24 = outer1_39;
if (null == outer1_39[value.id]) {
let tmp25 = outer1_39;
let obj = { id: value.id };
let tmp26 = outer1_0;
let tmp27 = outer1_2;
obj.type = outer1_0(outer1_2[24]).ICYMIItemTypes.GUILD_EVENT;
obj.score = 10;
obj.event_id = value.id;
outer1_39[value.id] = obj;
}
obj = { id: value.id };
let tmp28 = outer1_0;
let tmp29 = outer1_2;
obj.type = outer1_0(outer1_2[24]).ICYMIItemTypes.GUILD_EVENT;
obj.score = 10;
obj = {};
({ guild_id: obj3.guild_id, id: obj3.event_id, channel_id } = value);
let tmp30;
if (null != channel_id) {
tmp30 = channel_id;
}
obj.channel_id = tmp30;
obj.data = obj;
let arr = items.push(obj);
sum = num + 1;
tmp16 = channel_id;
let tmp32 = iter4;
let tmp33 = tmp10;
tmp6 = value;
tmp7 = channel_id;
let tmp34 = sum;
if (sum >= 1) {
break;
}
} else {
let tmp23 = outer1_13;
sum = num;
tmp16 = tmp11;
}
} else {
let tmp17 = outer1_16;
let tmp18 = outer1_20;
let tmp19 = outer1_28;
sum = num;
tmp16 = tmp11;
}
}
let iter5 = tmp10();
num = sum;
tmp11 = tmp16;
iter4 = iter5;
let tmp35 = iter5;
let tmp36 = sum;
let tmp37 = tmp10;
tmp6 = value;
tmp7 = tmp16;
if (iter5.done) {
break;
}
}
}
} else {
let tmp5 = outer1_41;
tmp6 = tmp2;
tmp7 = tmp3;
}
iter6 = tmp();
tmp2 = tmp6;
tmp3 = tmp7;
iter2 = iter6;
} while (!iter6.done);
}
const sorted = items.sort((data, data2) => {
const guildAffinity = outer2_17.getGuildAffinity(data.data.guild_id);
const guildAffinity1 = outer2_17.getGuildAffinity(data2.data.guild_id);
let num = 0;
if (null != guildAffinity1) {
num = guildAffinity1.score;
}
let num2 = 0;
if (null != guildAffinity) {
num2 = guildAffinity.score;
}
return num - num2;
});
const items1 = [];
const items2 = [];
const item = items.forEach((id) => {
outer2_38[id.id] = id;
if (null != outer2_25.getReadTimestamp(id.id)) {
items2.push(id);
} else {
items1.push(id);
}
});
outer1_50 = outer1_67(outer1_50, items1, outer1_0(outer1_2[24]).ICYMIItemTypes.GUILD_EVENT, 7);
outer1_51 = outer1_67(outer1_51, items2, outer1_0(outer1_2[24]).ICYMIItemTypes.GUILD_EVENT, 7);
})();
(function injectContentInventoryItems() {
let set = new Set();
let closure_1 = {};
const items = [];
const items1 = [];
const feed = outer1_9.getFeed(outer1_29.GLOBAL_FEED);
let entries;
if (null != feed) {
entries = feed.entries;
}
if (null == entries) {
entries = [];
}
const sorted = entries.sort((rank, rank2) => rank.rank - rank2.rank);
const substr = sorted.slice(0, 5);
const item = entries.forEach((content) => {
if (!set.has(content.content.id)) {
let obj = outer2_0(outer2_2[26]);
if (!obj.isEntryExpired(content.content)) {
let obj1 = outer2_0(outer2_2[27]);
if (obj1.isGamingLikeEntry(content.content)) {
if (null == dependencyMap[content.content.author_id]) {
const _Set = Set;
set = new Set();
dependencyMap[content.content.author_id] = set;
}
if (!obj3.has(content.content.extra.application_id)) {
dependencyMap[content.content.author_id].add(content.content.extra.application_id);
const obj4 = dependencyMap[content.content.author_id];
}
obj3 = dependencyMap[content.content.author_id];
}
if (null == outer2_39[content.content.id]) {
obj = { id: content.content.id, type: outer2_0(outer2_2[24]).ICYMIItemTypes.ACTIVITY, score: 15, activity: content.content };
outer2_39[content.content.id] = obj;
}
obj = { id: content.content.id, type: outer2_0(outer2_2[24]).ICYMIItemTypes.ACTIVITY, score: 15 };
obj1 = { user_id: content.content.author_id, content_id: content.content.id };
obj.data = obj1;
set.add(content.content.id);
outer2_38[obj.id] = obj;
if (null != outer2_25.getReadTimestamp(obj.id)) {
items1.push(obj);
} else {
items.push(obj);
}
}
}
});
outer1_50 = outer1_67(outer1_50, items, outer1_0(outer1_2[24]).ICYMIItemTypes.ACTIVITY, 5);
outer1_51 = outer1_67(outer1_51, items1, outer1_0(outer1_2[24]).ICYMIItemTypes.ACTIVITY, 5);
})();
injectRecommendedGuildsRow();
}
function injectRecommendedGuildsRow() {
items1 = items1.filter((type) => type.type !== outer1_0(outer1_2[24]).ICYMIItemTypes.RECOMMENDED_GUILDS);
items = items.filter((type) => type.type !== outer1_0(outer1_2[24]).ICYMIItemTypes.RECOMMENDED_GUILDS);
if (0 !== length3.length) {
const guildsArray = store2.getGuildsArray();
const tmp26 = guildsArray.filter((features) => {
features = features.features;
return features.has(outer1_27.COMMUNITY);
}).length >= 5;
const readTimestamp = store3.getReadTimestamp("recommendedGuilds");
if (tmp26) {
if (null != readTimestamp) {
const _Date = Date;
if (Date.now() - c54 > DAY) {
const _Date2 = Date;
}
}
}
const obj = { id: "recommendedGuilds", type: require(7086) /* MessageEmbedTypes */.ICYMIItemTypes.RECOMMENDED_GUILDS, score: 50 };
closure_39[obj.id] = obj;
closure_38[obj.id] = obj;
if (0 === items1.length) {
items = [obj];
let arraySpreadResult = HermesBuiltin.arraySpread(items, 1);
} else {
if (tmp26) {
if (tmp26) {
const _Math = Math;
const _Math2 = Math;
items1.splice(Math.round(2 * Math.random()) + 3 - 1, 0, obj);
} else {
items1.splice(5, 0, obj);
}
}
items1 = [];
arraySpreadResult = HermesBuiltin.arraySpread(items1, 0);
items1[arraySpreadResult] = obj;
const sum = arraySpreadResult + 1;
}
}
}
function finalizeNewDehydratedItemsContent() {
const set = new Set();
const item = items1.forEach((id) => {
set.add(id.id);
});
if (null != _null) {
if (set.has(_null.id)) {
const id = tmp18.id;
const type = _null.type;
const findIndexResult = items1.findIndex((id) => {
let tmp = id.id === id;
if (tmp) {
tmp = id.type === type;
}
return tmp;
});
if (-1 !== findIndexResult) {
_null = items1[findIndexResult];
items1 = items1.filter((id) => id.id !== id);
const items = [_null];
HermesBuiltin.arraySpread(items1, 1);
items1 = items;
}
} else {
items1 = [tmp18];
HermesBuiltin.arraySpread(items1, 1);
set.add(_null.id);
}
}
const item1 = items1.forEach((id) => {
outer1_38[id.id] = id;
if (id.type === set(type[24]).ICYMIItemTypes.CUSTOM_STATUS) {
if (outer1_22.isBlockedOrIgnored(id.data.user_id)) {
outer1_40[id.id] = true;
} else {
outer1_39[id.id] = set(type[23]).customStatusToContentInventoryEntry(id);
const obj = set(type[23]);
}
}
});
}
function reload(arg0) {
let closure_50;
let closure_51;
if (closure_35.length > 0) {
let closure_32 = closure_35;
closure_35 = [];
let closure_36 = [];
}
closure_43 = closure_43 + 1;
if (null != arg0) {
({ newUnread: closure_50, newRead: closure_51 } = arg0);
} else {
[closure_50, closure_51] = callback3(computeDisplayItems(closure_32), 2);
const tmp5 = callback3(computeDisplayItems(closure_32), 2);
}
injectAdditionalItems();
let tmp7 = null != closure_37.load_id;
if (tmp7) {
tmp7 = c33 !== closure_37.load_id;
}
if (tmp7) {
const ICYMIAnalytics = require(8374) /* listItemToType */.ICYMIAnalytics;
const obj = { newTrackingProps: closure_37, hasNewContent: c45, unreadFeedItems: length, readFeedItems: length2, homeSessionId: "gravity" };
ICYMIAnalytics.trackFeedLoaded(obj);
const load_id = closure_37.load_id;
let tmp18 = null;
if (null != load_id) {
tmp18 = load_id;
}
c33 = tmp18;
closure_37 = {};
}
let c52 = 0;
if (length.length + length2.length === 0) {
let c59 = true;
}
const items = [...closure_51];
require(8364) /* generateHydrationId */.hydrateItems(items, 0, require(7086) /* MessageEmbedTypes */.ICYMI_PAGE_SIZE);
let c56 = false;
}
function computeDisplayItems(closure_35) {
const items = [];
const items1 = [];
const items2 = [];
const item = closure_35.forEach((id) => {
const tmp = null != outer1_25.getReadTimestamp(id.id);
let tmp2 = tmp;
if (id.type === items(items2[24]).ICYMIItemTypes.MESSAGE) {
const message_context = id.data.message_context;
let prop;
if (null != message_context) {
prop = message_context.external_content_application_id;
}
let tmp4 = tmp;
if (null == prop) {
let tmp5 = tmp;
if (!tmp) {
tmp5 = !items(items2[23]).isItemUnreadInChannel(id.data.channel_id, id.data.message_id);
const obj = items(items2[23]);
}
tmp4 = tmp5;
}
tmp2 = tmp4;
}
if (tmp2) {
items.push(id);
} else {
if (id.type === items(items2[24]).ICYMIItemTypes.MESSAGE) {
if (id.data.has_mention) {
items2.push(id);
}
}
items1.push(id);
}
});
const items3 = [...items1];
const items4 = [items3, items.sort((id, id2) => items(items2[23]).compareGravityUnreadIds(id.id, id2.id))];
return items4;
}
function getNewUnreadItems(first, channelId) {
let iter2;
const items = [];
const tmp = _createForOfIteratorHelperLoose(first);
let iter = tmp();
if (!iter.done) {
do {
let value = iter.value;
let tmp2 = require;
let tmp3 = dependencyMap;
if (value.type !== require(7086) /* MessageEmbedTypes */.ICYMIItemTypes.RECOMMENDED_GUILDS) {
if (!set.has(value.id)) {
let tmp4 = store3;
let tmp5 = null == store3.getReadTimestamp(value.id);
if (tmp5) {
let tmp6 = require;
let tmp7 = dependencyMap;
let tmp8 = value.type !== require(7086) /* MessageEmbedTypes */.ICYMIItemTypes.MESSAGE;
if (!tmp8) {
let tmp9 = require;
let tmp10 = dependencyMap;
let obj2 = require(8364) /* generateHydrationId */;
let tmp11 = obj2.isItemUnreadInChannel(value.data.channel_id, value.data.message_id) && value.data.channel_id !== channelId;
tmp8 = tmp11;
}
tmp5 = tmp8;
}
if (tmp5) {
let arr = items.push(value);
}
}
}
iter2 = tmp();
iter = iter2;
} while (!iter2.done);
}
return items;
}
function filterDehydratedItemListByChannel(closure_32, arg1) {
let closure_0 = arg1;
return closure_32.filter((data) => {
let tmp = !callback(outer1_2[23]).isGuildItem(data);
if (!tmp) {
tmp = data.data.channel_id !== callback;
}
return tmp;
});
}
function maybeFilterChannelItems(arg0, stateFromStores1) {
const obj = require(8364) /* generateHydrationId */;
if (numberToCustomScoreResult === require(8364) /* generateHydrationId */.ICYMICustomScore.MUTED) {
closure_32 = filterDehydratedItemListByChannel(closure_32, arg0);
closure_50 = filterDehydratedItemListByChannel(closure_50, arg0);
closure_51 = filterDehydratedItemListByChannel(closure_51, arg0);
closure_35 = filterDehydratedItemListByChannel(closure_35, arg0);
closure_36 = filterDehydratedItemListByChannel(closure_36, arg0);
}
}
function filterDehydratedItemListByGuild(closure_32, guildId) {
let closure_0 = guildId;
return closure_32.filter((data) => {
let tmp = !guildId(outer1_2[23]).isGuildItem(data);
if (!tmp) {
tmp = data.data.guild_id !== guildId;
}
return tmp;
});
}
function maybeFilterGuildItems(guildId, guildScore) {
const obj = require(8364) /* generateHydrationId */;
if (numberToCustomScoreResult === require(8364) /* generateHydrationId */.ICYMICustomScore.MUTED) {
closure_32 = filterDehydratedItemListByGuild(closure_32, guildId);
closure_50 = filterDehydratedItemListByGuild(closure_50, guildId);
closure_51 = filterDehydratedItemListByGuild(closure_51, guildId);
closure_35 = filterDehydratedItemListByGuild(closure_35, guildId);
closure_36 = filterDehydratedItemListByGuild(closure_36, guildId);
}
}
function handleReaction(colors) {
let emoji;
let reactionType;
({ emoji, reactionType } = colors);
if (null == dependencyMap[colors.messageId]) {
return false;
} else if (tmp3.type !== require(7086) /* MessageEmbedTypes */.ICYMIItemTypes.MESSAGE) {
return false;
} else {
const tmp5 = store.getId() === tmp2;
if ("MESSAGE_REACTION_ADD" === tmp) {
const message2 = tmp3.message;
let addReactionResult = message2.addReaction(emoji, tmp5, colors.colors, reactionType);
} else {
const message = tmp3.message;
addReactionResult = message.removeReaction(emoji, tmp5, reactionType);
}
tmp3.message = addReactionResult;
}
}
function handleAck(channelId) {
channelId = channelId.channelId;
const items = [];
const items1 = [];
const item = items1.forEach((type) => {
if (arg1 > outer1_52) {
if (type.type === channelId(items1[24]).ICYMIItemTypes.MESSAGE) {
if (type.data.channel_id === channelId) {
items.push(type);
}
}
}
items1.push(type);
});
let closure_36 = getNewUnreadItems(callback3(computeDisplayItems(closure_35), 2)[0], channelId);
if (c46) {
let tmp7 = tmp2;
if (tmp2) {
tmp7 = closure_36.length >= channelId(items1[24]).MIN_ITEMS_FOR_NEW_PILL;
}
let tmp4 = tmp7;
} else {
tmp4 = tmp2;
if (tmp2) {
tmp4 = tabHasNewContentOnInitialLoad(items1, closure_35);
}
}
let c45 = tmp4;
if (0 === items.length) {
if (tmp2 === c45) {
return false;
}
}
if (0 !== items.length) {
const items2 = [];
HermesBuiltin.arraySpread(items, HermesBuiltin.arraySpread(items2, 0));
}
}
({ eventScheduledToStartWithin: closure_11, isGuildEventEnded: closure_12, isGuildScheduledEventActive: closure_13 } = _isNativeReflectConstruct);
({ ChannelTypes: closure_26, GuildFeatures: closure_27, Permissions: closure_28 } = ME);
const DAY = require("set").Millis.DAY;
let closure_31 = 3 * require("set").Millis.DAY;
let closure_32 = [];
let c33 = null;
let c34 = 0;
let closure_35 = [];
let closure_36 = [];
let closure_37 = {};
let closure_38 = {};
let closure_39 = {};
let closure_40 = {};
let closure_41 = {};
let closure_42 = {};
let c43 = 0;
let c44 = false;
let c45 = false;
let c46 = false;
let c47 = null;
let c48 = null;
let c49 = 0;
let closure_50 = [];
let closure_51 = [];
let c52 = 0;
let closure_53 = [];
let c54 = 0;
let c55 = true;
let c56 = false;
let set = new Set();
let c58 = false;
let c59 = false;
let c60 = 0;
let c61 = 0;
let tmp5 = ((PersistedStore) => {
class ICYMIStore {
constructor() {
self = this;
tmp = outer1_3(this, ICYMIStore);
obj = outer1_6(ICYMIStore);
tmp2 = outer1_5;
if (outer1_62()) {
tmp6 = globalThis;
_Reflect = Reflect;
tmp7 = outer1_6;
tmp8 = arguments;
constructResult = Reflect.construct(obj, arguments, outer1_6(self).constructor);
} else {
tmp3 = arguments;
tmp4 = arguments;
constructResult = obj(...arguments);
}
return tmp2(self, constructResult);
}
}
callback2(ICYMIStore, PersistedStore);
let obj = {
key: "initialize",
value(dehydratedItems) {
this.waitFor(outer1_15, outer1_16, outer1_9, outer1_10, outer1_17, outer1_14, outer1_18, outer1_24, outer1_25, outer1_19, outer1_20, outer1_21, outer1_22, outer1_23);
if (null != dehydratedItems) {
dehydratedItems = dehydratedItems.dehydratedItems;
if (null == dehydratedItems) {
dehydratedItems = [];
}
const outer1_32 = dehydratedItems;
const item = dehydratedItems.forEach((id) => {
outer2_38[id.id] = id;
});
let customGuildScores = dehydratedItems.customGuildScores;
if (null == customGuildScores) {
customGuildScores = {};
}
const outer1_41 = customGuildScores;
let prop = dehydratedItems.customChannelScoresByGuild;
if (null == prop) {
prop = {};
}
const outer1_42 = prop;
const numOpens = dehydratedItems.numOpens;
let num = 0;
if (null != numOpens) {
num = numOpens;
}
const outer1_49 = num;
const lastOpened = dehydratedItems.lastOpened;
let num2 = 0;
if (null != lastOpened) {
num2 = lastOpened;
}
const outer1_34 = num2;
const lastJoinedRecommendedGuild = dehydratedItems.lastJoinedRecommendedGuild;
let num3 = 0;
if (null != lastJoinedRecommendedGuild) {
num3 = lastJoinedRecommendedGuild;
}
const outer1_54 = num3;
const lastTakenICYMISurvey = dehydratedItems.lastTakenICYMISurvey;
let num4 = 0;
if (null != lastTakenICYMISurvey) {
num4 = lastTakenICYMISurvey;
}
const outer1_61 = num4;
}
}
};
let items = [obj, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ];
obj = {
key: "getVersion",
value() {
return outer1_43;
}
};
items[1] = obj;
obj = {
key: "getDehydratedItems",
value() {
return outer1_32;
}
};
items[2] = obj;
items[3] = {
key: "getNewDehydratedItems",
value() {
return outer1_35;
}
};
items[4] = {
key: "getDehydratedItem",
value(arg0) {
let tmp2 = null;
if (null != outer1_38[arg0]) {
tmp2 = tmp;
}
return tmp2;
}
};
items[5] = {
key: "getHydratedItem",
value(arg0) {
let tmp2 = null;
if (null != outer1_39[arg0]) {
tmp2 = tmp;
}
return tmp2;
}
};
items[6] = {
key: "getMessage",
value(arg0) {
let message = null;
if (null != outer1_39[arg0]) {
message = null;
if (tmp.type === ICYMIStore(outer1_2[24]).ICYMIItemTypes.MESSAGE) {
message = tmp.message;
}
}
return message;
}
};
items[7] = {
key: "getHydratedItems",
value() {
return outer1_39;
}
};
items[8] = {
key: "getUnreadDisplayItems",
value() {
return outer1_50;
}
};
items[9] = {
key: "getNewUnreadDehydratedItems",
value() {
return outer1_36;
}
};
items[10] = {
key: "getReadDisplayItems",
value() {
return outer1_51;
}
};
items[11] = {
key: "getNextIndexToHydrate",
value() {
return outer1_52;
}
};
items[12] = {
key: "getMissingItems",
value() {
return outer1_40;
}
};
items[13] = {
key: "customMuted",
value(arg0, arg1) {
const self = this;
const customGuildScore = this.getCustomGuildScore(arg0);
let tmp2 = customGuildScore === ICYMIStore(outer1_2[23]).ICYMICustomScore.MUTED;
if (!tmp2) {
const customChannelScore = self.getCustomChannelScore(arg0, arg1);
tmp2 = customChannelScore === ICYMIStore(outer1_2[23]).ICYMICustomScore.MUTED;
}
return tmp2;
}
};
items[14] = {
key: "getCustomChannelScore",
value(arg0, arg1) {
if (null != outer1_42[arg0]) {
if (null != outer1_42[arg0][arg1]) {
let UNKNOWN = ICYMIStore(outer1_2[23]).numberToCustomScore(outer1_42[arg0][arg1]);
const obj = ICYMIStore(outer1_2[23]);
}
return UNKNOWN;
}
UNKNOWN = ICYMIStore(outer1_2[23]).ICYMICustomScore.UNKNOWN;
}
};
items[15] = {
key: "getCustomGuildScore",
value(arg0) {
let num = 0;
if (null != outer1_41[arg0]) {
num = tmp;
}
return num;
}
};
items[16] = {
key: "getCustomGuildScores",
value() {
return outer1_41;
}
};
items[17] = {
key: "hasNewContent",
value() {
return outer1_45;
}
};
items[18] = {
key: "getCurrentStatusAttachments",
value(arg0) {
if (null != outer1_47) {
return [];
}
}
};
items[19] = {
key: "getLoadId",
value() {
return outer1_33;
}
};
items[20] = {
key: "hasOpenedEnoughTimes",
value() {
return 5 === outer1_49;
}
};
items[21] = {
key: "hasOpened",
value() {
return outer1_46;
}
};
items[22] = {
key: "getDiscoverableGuilds",
value() {
return outer1_53;
}
};
items[23] = {
key: "videosMuted",
value() {
return outer1_55;
}
};
items[24] = {
key: "isRefreshing",
value() {
return outer1_56;
}
};
items[25] = {
key: "isHydrating",
value() {
return outer1_57.size > 0;
}
};
items[26] = {
key: "notificationItem",
value() {
return outer1_48;
}
};
items[27] = {
key: "getIsTabFocused",
value() {
return outer1_58;
}
};
items[28] = {
key: "isFirstPageHydrated",
value() {
return outer1_59;
}
};
items[29] = {
key: "lastScrollEvent",
value() {
return outer1_60;
}
};
items[30] = {
key: "lastTakenICYMISurvey",
value() {
return outer1_61;
}
};
items[31] = {
key: "getIndexInHydratedFeed",
value(arg0) {
let closure_0 = arg0;
if ("recommended_guilds" !== arg0) {
if ("recommendedGuilds" !== arg0) {
const items = [];
HermesBuiltin.arraySpread(outer1_51, HermesBuiltin.arraySpread(outer1_50, 0));
const found = items.filter((arg0) => null != outer2_39[arg0.id]);
let findIndexResult = found.findIndex((id) => id.id === closure_0);
}
return findIndexResult;
}
const items1 = [...outer1_51];
findIndexResult = items1.findIndex((type) => type.type === ICYMIStore(outer2_2[24]).ICYMIItemTypes.RECOMMENDED_GUILDS);
}
};
items[32] = {
key: "getState",
value() {
return { dehydratedItems: outer1_32, numOpens: outer1_49, customGuildScores: outer1_41, customChannelScoresByGuild: outer1_42, lastOpened: outer1_34, lastJoinedRecommendedGuild: outer1_54, lastTakenICYMISurvey: outer1_61 };
}
};
return callback(ICYMIStore, items);
})(require("initialize").PersistedStore);
tmp5.displayName = "ICYMIStore";
tmp5.persistKey = "ICYMIStore";
tmp5 = new tmp5(require("dispatcher"), {
LOGOUT: function handleLogout() {
let closure_32 = [];
let closure_35 = [];
let closure_36 = [];
let closure_38 = {};
let closure_37 = {};
let closure_39 = {};
let closure_40 = {};
let c33 = null;
let closure_41 = {};
let closure_42 = {};
let c43 = 0;
let c44 = false;
let c45 = false;
let c46 = false;
let closure_50 = [];
let closure_51 = [];
let c52 = 0;
let c34 = 0;
let c54 = 0;
let c55 = true;
let c56 = false;
const set = new Set();
let c48 = null;
let c58 = false;
let c59 = false;
let c47 = null;
let c60 = 0;
},
LOAD_ICYMI_FROM_NOTIFICATION: function handleLoadICYMIFromNotification(arg0) {
let closure_50;
let closure_51;
let customStatusItem;
let messageItem;
({ messageItem, customStatusItem } = arg0);
if (null != customStatusItem) {
if (null == c33) {
return true;
} else {
if (items2.length > 0) {
let items = items2;
} else {
items = [];
HermesBuiltin.arraySpread(items1, 0);
}
items2 = items;
finalizeNewDehydratedItemsContent();
reload();
}
} else if (null != messageItem) {
let obj = { id: messageItem.message.id, type: require(7086) /* MessageEmbedTypes */.ICYMIItemTypes.MESSAGE, score: 50 };
obj = { channel_id: messageItem.channel_id, message_id: messageItem.message.id, guild_id: messageItem.guild_id, channel_type: constants.GUILD_TEXT };
obj.data = obj;
closure_38[messageItem.message.id] = obj;
obj = {};
const merged = Object.assign(obj);
obj["message"] = require(4351) /* createMinimalMessageRecord */.createMessageRecord(messageItem.message);
closure_39[messageItem.message.id] = obj;
if (null == c33) {
if (null == closure_37) {
items1 = [obj];
HermesBuiltin.arraySpread(items1, 1);
[closure_50, closure_51] = callback3(computeDisplayItems(items1), 2);
const tmp21 = callback3(computeDisplayItems(items1), 2);
}
return true;
}
items2 = [obj];
HermesBuiltin.arraySpread(items2, 1);
reload();
const obj4 = require(4351) /* createMinimalMessageRecord */;
} else {
return false;
}
},
LOAD_ICYMI_DEHYDRATED: function handleLoadDehydrated(items) {
let isInitialLoad;
let isReloading;
let loadId;
let startTime;
({ loadId, startTime, isInitialLoad, isReloading } = items);
let closure_35 = (function processRawItems(items) {
const set = new Set(outer1_0(outer1_2[24]).SUPPORTED_ITEM_TYPES);
const found = items.filter((type) => set.has(type.type));
const found1 = found.filter(outer1_66);
return found1.map((type) => {
if (type.type === outer2_0(outer2_2[24]).ICYMIItemTypes.MESSAGE) {
if (null != type.data.message_context) {
const obj = {};
let tmp2 = null != type.data.message_context.reply_message_id;
if (tmp2) {
const _parseInt = parseInt;
tmp2 = 0 !== parseInt(type.data.message_context.reply_message_id);
}
if (tmp2) {
obj.reply_message_id = type.data.message_context.reply_message_id;
}
let tmp3 = null != type.data.message_context.before_message_id;
if (tmp3) {
const _parseInt2 = parseInt;
tmp3 = 0 !== parseInt(type.data.message_context.before_message_id);
}
if (tmp3) {
obj.before_message_id = type.data.message_context.before_message_id;
}
let tmp5 = null != type.data.message_context.after_message_id;
if (tmp5) {
const _parseInt3 = parseInt;
tmp5 = 0 !== parseInt(type.data.message_context.after_message_id);
}
if (tmp5) {
obj.after_message_id = type.data.message_context.after_message_id;
}
let tmp7 = null != type.data.message_context.external_content_application_id;
if (tmp7) {
const _parseInt4 = parseInt;
tmp7 = 0 !== parseInt(type.data.message_context.external_content_application_id);
}
if (tmp7) {
obj.external_content_application_id = type.data.message_context.external_content_application_id;
}
let tmp9 = null != type.data.message_context.reference_message_id;
if (tmp9) {
const _parseInt5 = parseInt;
tmp9 = 0 !== parseInt(type.data.message_context.reference_message_id);
}
if (tmp9) {
obj.reference_message_id = type.data.message_context.reference_message_id;
}
type.data.message_context = obj;
}
}
return type;
});
})(items.items);
finalizeNewDehydratedItemsContent();
let obj = { load_id: loadId, load_time_millis: Date.now() - startTime, feed_item_ids: closure_35.map((id) => id.id) };
let tmp2 = callback3(computeDisplayItems(closure_35), 2);
const first = tmp2[0];
let closure_36 = getNewUnreadItems(first);
if (c46) {
if (0 !== c43) {
if (!isInitialLoad) {
if (c43 > 0) {
let c48 = null;
}
let tmp9 = closure_36.length > require(7086) /* MessageEmbedTypes */.MIN_ITEMS_FOR_NEW_PILL;
if (!isReloading) {
let c45 = tmp9;
}
if (tmp9) {
items = [];
HermesBuiltin.arraySpread(arr2, HermesBuiltin.arraySpread(first, 0));
require(8364) /* generateHydrationId */.hydrateItems(items, 0, require(7086) /* MessageEmbedTypes */.ICYMI_PAGE_SIZE);
if (first.length + arr2.length === 0) {
let c59 = true;
}
const obj2 = require(8364) /* generateHydrationId */;
}
const ICYMIAnalytics = require(8374) /* listItemToType */.ICYMIAnalytics;
obj = {};
obj.newTrackingProps = obj;
obj.hasNewContent = c45;
obj.unreadFeedItems = first;
obj.readFeedItems = arr2;
let str = "background_load";
if (c58) {
str = "foreground_load";
}
obj.homeSessionId = str;
ICYMIAnalytics.trackFeedLoaded(obj);
}
}
}
c43 = 0;
if (!c58) {
if (tabHasNewContentOnInitialLoad(first, closure_35)) {
c45 = true;
let c44 = true;
}
obj = { newUnread: first, newRead: arr2 };
reload(obj);
}
c45 = false;
},
LOAD_ICYMI_HYDRATED: function handleLoadHydratedItems(arg0) {
let activityItems;
let endingIndex;
let messageItems;
let requestActivityItems;
let requestMessageItems;
let startingIndex;
({ messageItems, activityItems, requestMessageItems, requestActivityItems, startingIndex, endingIndex } = arg0);
let c59 = true;
let obj = {};
let merged = Object.assign(obj);
const _require = messageItems.reduce((arg0, message) => {
arg0[message.message.id] = message;
return arg0;
}, {});
let closure_1 = activityItems.reduce((arg0, id) => {
arg0[id.id] = id;
return arg0;
}, {});
const item = requestMessageItems.forEach((message_id) => {
if (null != dependencyMap[message_id.message_id]) {
let tmp4 = outer1_38[message_id.message_id];
if (null == tmp4) {
let obj = { id: message_id.message_id, type: dependencyMap(outer1_2[24]).ICYMIItemTypes.MESSAGE, score: -1 };
obj = {};
({ guild_id: obj5.guild_id, channel_id: obj5.channel_id } = tmp);
obj.message_id = tmp.message.id;
obj.channel_type = outer1_26.GUILD_TEXT;
obj.has_mention = false;
obj.data = obj;
tmp4 = obj;
}
const message = outer1_19.getMessage(tmp.channel_id, tmp.message.id);
if (null != message) {
let obj1 = dependencyMap(outer1_2[23]);
obj1 = {};
const merged = Object.assign(obj1.createGravityMessageFromServer(tmp, tmp4));
obj1["message"] = message;
obj[tmp.message.id] = obj1;
} else {
obj = dependencyMap(outer1_2[23]);
obj[tmp.message.id] = obj.createGravityMessageFromServer(tmp, tmp4);
}
} else {
outer1_40[message_id.message_id] = true;
}
});
const item1 = requestActivityItems.forEach((content_id) => {
if (null != table[content_id.content_id]) {
if (null != outer1_38[content_id.content_id]) {
const obj = {};
const merged = Object.assign(tmp4);
obj["activity"] = tmp;
obj[tmp.id] = obj;
} else {
outer1_40[content_id.content_id] = true;
}
} else {
outer1_40[content_id.content_id] = true;
}
});
set.delete(_require(8364).generateHydrationId(startingIndex, endingIndex));
},
LOAD_ICYMI_CUSTOM_SCORES: function handleLoadCustomScores(scores) {
let iter3;
const tmp = _createForOfIteratorHelperLoose(scores.scores);
const iter = tmp();
let iter2 = iter;
if (!iter.done) {
do {
let value = iter2.value;
let tmp2 = obj;
obj[value.guild_id] = value.guild_score;
let tmp3 = maybeFilterGuildItems;
let tmp4 = maybeFilterGuildItems(value.guild_id, value.guild_score);
let _Object = Object;
let keys = Object.keys(value.custom_channel_scores);
let num = 0;
if (0 < keys.length) {
do {
let tmp5 = keys[num];
let tmp6 = obj;
if (null == obj[value.guild_id]) {
let tmp7 = obj;
obj[value.guild_id] = {};
}
let tmp8 = obj;
obj[value.guild_id][tmp5] = value.custom_channel_scores[tmp5];
let tmp9 = maybeFilterChannelItems;
let tmp10 = maybeFilterChannelItems(tmp5, value.custom_channel_scores[tmp5]);
num = num + 1;
let tmp11 = tmp5;
} while (num < keys.length);
}
iter3 = tmp();
iter2 = iter3;
} while (!iter3.done);
}
obj = {};
const merged = Object.assign(obj);
obj = {};
const merged1 = Object.assign(obj);
},
LOAD_ICYMI_RECOMMENDED_GUILDS: function loadICYMIRecommendedGuilds(guilds) {
guilds = guilds.guilds;
let closure_53 = guilds.map((guild) => outer1_0(outer1_2[29]).makeDiscoverableGuild(guild.guild));
injectRecommendedGuildsRow();
},
ICYMI_CUSTOM_SCORES_UPDATED: function handleCustomScoresUpdated(guildScore) {
let channelScores;
let guildId;
({ channelScores, guildId } = guildScore);
guildScore = guildScore.guildScore;
if (null != guildScore) {
obj[guildId] = guildScore;
maybeFilterGuildItems(guildId, guildScore);
obj = {};
let merged = Object.assign(obj);
}
if (null != channelScores) {
const item = channelScores.forEach((arg0) => {
let channelId;
let score;
({ channelId, score } = arg0);
if (null == outer1_42[guildId]) {
outer1_42[guildId] = {};
}
outer1_42[guildId][channelId] = score;
outer1_75(channelId, score);
const merged = Object.assign(outer1_42);
outer1_42 = {};
});
}
},
RELOAD_ICYMI: function handleReloadTab() {
if (0 === closure_35.length) {
return false;
} else {
reload();
let c45 = false;
}
},
ICYMI_TAB_OPENED: function handleGravityTabOpened() {
let c46 = true;
let closure_34 = Date.now();
if (c44) {
c44 = false;
let c45 = false;
}
if (closure_49 < 5) {
closure_49 = closure_49 + 1;
}
},
ICYMI_FEEDBACK_GIVEN: function handleGravityFeedback() {
let c49 = 6;
},
MESSAGE_REACTION_ADD: handleReaction,
MESSAGE_REACTION_ADD_MANY: function handleReactionBatch(arg0) {
if (null == dependencyMap[arg0.messageId]) {
return false;
} else if (tmp2.type !== require(7086) /* MessageEmbedTypes */.ICYMIItemTypes.MESSAGE) {
return false;
} else {
const message = tmp2.message;
tmp2.message = message.addReactionBatch(tmp, store.getId());
}
},
MESSAGE_REACTION_REMOVE: handleReaction,
MESSAGE_REACTION_REMOVE_ALL: function handleRemoveAllReactions(arg0) {
let tmp2 = null != tmp;
if (tmp2) {
const tmp5 = tmp.type === require(7086) /* MessageEmbedTypes */.ICYMIItemTypes.MESSAGE;
if (tmp5) {
const message = tmp.message;
tmp.message = message.set("reactions", []);
}
tmp2 = tmp5;
}
return tmp2;
},
MESSAGE_REACTION_REMOVE_EMOJI: function handleRemoveEmojiReactions(arg0) {
let tmp3 = null != tmp2;
if (tmp3) {
const tmp6 = tmp2.type === require(7086) /* MessageEmbedTypes */.ICYMIItemTypes.MESSAGE;
if (tmp6) {
const message = tmp2.message;
tmp2.message = message.removeReactionsForEmoji(tmp);
}
tmp3 = tmp6;
}
return tmp3;
},
CHANNEL_ACK: handleAck,
MESSAGE_ACK: handleAck,
ICYMI_JOINED_RECOMMENDED_GUILD: function handleJoinedRecommendedGuild() {
let closure_54 = Date.now();
},
ICYMI_SET_VIDEOS_MUTED: function handleSetVideosMuted(muted) {
muted = muted.muted;
},
ICYMI_SET_REFRESHING: function handleSetRefreshing(refreshing) {
refreshing = refreshing.refreshing;
},
LOAD_ICYMI_HYDRATED_ATTEMPT: function handleLoadHydratedAttempt(hydrationId) {
set.add(hydrationId.hydrationId);
},
LOAD_ICYMI_HYDRATED_FAILED: function handleLoadHydratedFailed(hydrationId) {
set.delete(hydrationId.hydrationId);
},
ICYMI_SET_FOCUSED_TAB: function handleSetFocusedTab(focused) {
focused = focused.focused;
},
LOAD_ICYMI_CURRENT_STATUS_MEDIA: function handleLoadCurrentStatusMedia(attachments) {
attachments = attachments.attachments;
let tmp2 = null;
if (null != attachments) {
tmp2 = null;
if (0 !== attachments.length) {
const items = [tmp, ];
const items1 = [];
HermesBuiltin.arraySpread(attachments, 0);
items[1] = items1;
tmp2 = items;
}
}
let c47 = tmp2;
},
ICYMI_SCROLL_EVENT: function handleScrollEvent(timestamp) {
timestamp = timestamp.timestamp;
},
ICYMI_TAKE_SURVEY: function handleTakeSurvey(takenAt) {
takenAt = takenAt.takenAt;
}
});
let result = set.fileFinishedImporting("modules/icymi/ICYMIStore.tsx");
export default tmp5;