// Metro module 15356 (f15357). import { useEffect } from "react"; import ICYMIStore from "./ICYMIStore"; import { ICYMIItemTypes } from "./ICYMITypes"; import { useStateFromStores, useStateFromStoresObject } from "../../_bundle/Module589"; import ICYMIActionCreators from "./ICYMIActionCreators"; const createItem = function createItem(a0, a1, a2) { const type = a1.type; if (ICYMIItemTypes.MESSAGE === type) { return a1.message.id === a1.message.channel_id && a1.threadChannel != null ? { id: a0.id, timestamp: Date.now(), channelType: a0.data.channel_type, data: { kind: "forumThread", message: a1.message, threadChannel: a1.threadChannel }, score: a0.score, debugScore: JSON.stringify(a0.score_components), unread: a2 } : { id: a0.id, timestamp: Date.now(), channelType: a0.data.channel_type, data: { kind: "message", message: a1.message, mentioned: a0.data.has_mention, messageContext: a0.data.message_context }, score: a0.score, debugScore: JSON.stringify(a0.score_components), unread: a2 }; } if (ICYMIItemTypes.ACTIVITY !== type && ICYMIItemTypes.CUSTOM_STATUS !== type) { if (ICYMIItemTypes.GUILD_EVENT === type) { return { id: a0.id, timestamp: Date.now(), data: { kind: "guildEvent", eventId: a1.event_id }, score: a0.score, debugScore: JSON.stringify(a0.score_components), unread: a2 }; } if (ICYMIItemTypes.RECOMMENDED_GUILDS === type) { return { id: a0.id, timestamp: Date.now(), data: { kind: "recommendedGuilds" }, score: a0.score, debugScore: JSON.stringify(a0.score_components), unread: a2 }; } return null; } return { id: a0.id, timestamp: Date.now(), data: { kind: "contentInventory", content: a1.activity }, score: a0.score, debugScore: JSON.stringify(a0.score_components), unread: a2 }; }; export default function useICYMIItems() { let stateFromStores; const stateFromStores2 = useStateFromStores([ICYMIStore], () => ICYMIStore.getUnreadDisplayItems()); stateFromStores = useStateFromStores([ICYMIStore], () => ICYMIStore.getReadDisplayItems()); const stateFromStores3 = useStateFromStores([ICYMIStore], () => ICYMIStore.getNextIndexToHydrate()); const stateFromStoresObject = useStateFromStoresObject([ICYMIStore], () => ICYMIStore.getHydratedItems()); const stateFromStores4 = useStateFromStores([ICYMIStore], () => ICYMIStore.getMissingItems()); useEffect(() => { let c28007_0 = Date.now() + stateFromStores.length; ICYMIActionCreators.ackGravityItems(stateFromStores.map((stateFromStore) => { const timestamp = +c28007_0; c28007_0 = timestamp - 1; return { id: stateFromStore.id, timestamp }; }, true)); }, [stateFromStores]); const unreadItems = []; const r8 = 0 < stateFromStores2.length; let r3 = 0; if (r8) { const r7 = 0 >= stateFromStores3; let r2 = 0; let r0 = 0; r3 = 0; if (!r7) { do { const r56 = stateFromStores2[r2]; const r58 = stateFromStores4[r56.id]; const r5 = r2; const r1 = r0; if (!r58) { let r60 = stateFromStoresObject[r56.id]; if (r60 == null && r56.type === ICYMIItemTypes.MESSAGE && r56.data.message_context?.reference_message_id != null) { r60 = stateFromStoresObject[r56.data.message_id]; } if (r60 != null) { const item = createItem(r56, r60, true); if (item != null) { unreadItems.push(item); } } } const r78 = r1 + 1; const r79 = r5 + 1; const length = stateFromStores2.length; r3 = r78; if (!(r79 < length)) { break; } r2 = r79; r0 = r78; r3 = r0; } while (!(r3 >= stateFromStores3)); } } const readItems = []; if (0 < stateFromStores.length) { const r83 = r3 >= stateFromStores3; let r87 = 0; if (!r83) { do { const r88 = stateFromStores[r87]; const r90 = stateFromStores4[r88.id]; const r91 = r87; const r92 = r3; if (!r90) { let r94 = stateFromStoresObject[r88.id]; if (r94 == null && r88.type === ICYMIItemTypes.MESSAGE && r88.data.message_context?.reference_message_id != null) { r94 = stateFromStoresObject[r88.data.message_id]; } if (r94 != null) { const item2 = createItem(r88, r94, false); if (item2 != null) { readItems.push(item2); } } } const r112 = r91 + 1; if (!(r112 < stateFromStores.length)) { break; } r3 = r92 + 1; r87 = r112; } while (!(r3 >= stateFromStores3)); } } return { unreadItems, readItems, allUnreadItemsHydrated: stateFromStores3 >= stateFromStores2.length }; };