183 lines
6.9 KiB
TypeScript
183 lines
6.9 KiB
TypeScript
// Module ID: 10716
|
|
// Function ID: 10717
|
|
// Name: useMessageAuthorActivities
|
|
// Dependencies: [32, 19, 17, 10548, 8719, 4831, 1910, 4564, 589, 12, 643, 7178, 1370, 4373, 10717, 10493, 10718, 2]
|
|
// Exports: useChatUpdatesQueue, useFetchMessageApplications, useFetchVoiceChannelInviteStartTimes, useMessageAuthorActivities, useMessagesLifecycle, useMessagesState, useScrollState
|
|
|
|
// Module 10716 (useMessageAuthorActivities)
|
|
import closure_3 from "_slicedToArray" /* 32 */;
|
|
import closure_4 from "noop" /* 19 */;
|
|
import { findNodeHandle } from "get ActivityIndicator" /* 17 */;
|
|
import closure_6 from "_toTimestampMs" /* 10548 */;
|
|
import { updateShouldShowJumpToPresentButton as closure_7 } from "updateChatInputContainerHeight" /* 8719 */;
|
|
import closure_8 from "handleConnectionOpen" /* 4831 */;
|
|
import closure_9 from "createGuildRecordFromRust" /* 1910 */;
|
|
import closure_10 from "sortActivity" /* 4564 */;
|
|
|
|
const require = arg1;
|
|
let result = require("set").fileFinishedImporting("modules/messages/native/MessagesHooks.tsx");
|
|
|
|
export const useMessageAuthorActivities = function useMessageAuthorActivities(arg0) {
|
|
const _require = arg0;
|
|
const items = [arg0];
|
|
const memo = React.useMemo(() => {
|
|
const obj = {};
|
|
const item = obj.forEach((author) => {
|
|
if (tmp) {
|
|
obj[author.author.id] = null;
|
|
}
|
|
});
|
|
return obj;
|
|
}, items);
|
|
const items1 = [closure_10];
|
|
const items2 = [memo];
|
|
return _require(589).useStateFromStoresObject(items1, () => memo(closure_1_2[9]).mapValues(memo, (arg0, arg1) => primaryActivity.getPrimaryActivity(arg1)), items2);
|
|
};
|
|
export const useFetchMessageApplications = function useFetchMessageApplications(arg0) {
|
|
closure_0 = arg0;
|
|
const items = [arg0];
|
|
const memo = React.useMemo(() => {
|
|
const set = new Set();
|
|
const item = set.forEach((applicationId) => {
|
|
if (tmp) {
|
|
set.add(applicationId.applicationId);
|
|
}
|
|
});
|
|
return Array.from(set);
|
|
}, items);
|
|
closure_2 = React.useRef([]);
|
|
const items1 = [memo];
|
|
const effect = React.useEffect(() => {
|
|
if (!obj.areArraysShallowEqual(memo, ref.current)) {
|
|
const obj2 = memo(tmp2[11]);
|
|
const found = memo(tmp2[9])(tmp3).filter(callback(tmp2[12]).isNotNullish);
|
|
const arr = memo(tmp2[9])(tmp3);
|
|
const applications = obj2.fetchApplications(found.uniq().value(), false);
|
|
ref.current = tmp3;
|
|
const iter = found.uniq();
|
|
}
|
|
}, items1);
|
|
};
|
|
export const useFetchVoiceChannelInviteStartTimes = function useFetchVoiceChannelInviteStartTimes(stateFromStores4) {
|
|
const _require = stateFromStores4;
|
|
const items = [closure_9, closure_8];
|
|
const items1 = [stateFromStores4];
|
|
const stateFromStoresObject = _require(589).useStateFromStoresObject(items, () => {
|
|
const obj = {};
|
|
const values = stateFromStores4.values();
|
|
const iter = values[Symbol.iterator]();
|
|
const nextResult = iter.next();
|
|
while (iter !== undefined) {
|
|
let tmp3 = nextResult;
|
|
if (null != nextResult.guild) {
|
|
let tmp4 = stateFromStores4;
|
|
let tmp5 = closure_1_2;
|
|
let obj2 = stateFromStores4(closure_1_2[13]);
|
|
let tmp6 = nextResult;
|
|
if (obj2.isVoiceChannelInvite(tmp3)) {
|
|
let tmp7 = nextResult;
|
|
let id = tmp3.guild.id;
|
|
let tmp9 = closure_1_9;
|
|
let tmp8 = id;
|
|
let tmp10 = null != closure_1_9.getGuild(id);
|
|
if (tmp10) {
|
|
let tmp11 = closure_1_8;
|
|
let tmp12 = id;
|
|
tmp10 = !closure_1_8.isUnavailable(tmp8);
|
|
}
|
|
obj[id] = tmp10;
|
|
}
|
|
}
|
|
continue;
|
|
}
|
|
return obj;
|
|
}, items1);
|
|
const items2 = [stateFromStores4, stateFromStoresObject];
|
|
const effect = React.useEffect(() => {
|
|
const values = stateFromStores4.values();
|
|
const iter = values[Symbol.iterator]();
|
|
const nextResult = iter.next();
|
|
while (iter !== undefined) {
|
|
let tmp3 = nextResult;
|
|
if (null != nextResult.guild) {
|
|
let tmp4 = stateFromStores4;
|
|
let tmp5 = closure_1_2;
|
|
let obj = stateFromStores4(closure_1_2[13]);
|
|
let tmp6 = nextResult;
|
|
if (obj.isVoiceChannelInvite(tmp3)) {
|
|
let tmp7 = nextResult;
|
|
let id = tmp3.guild.id;
|
|
let tmp8 = id;
|
|
let tmp9 = stateFromStoresObject;
|
|
let result = true !== stateFromStoresObject[id];
|
|
if (!result) {
|
|
let tmp11 = closure_1_6;
|
|
let tmp12 = id;
|
|
result = closure_1_6.hasRequestedStartTimes(tmp8);
|
|
}
|
|
if (!result) {
|
|
let tmp4Result = tmp4(tmp5[14]);
|
|
let tmp13 = id;
|
|
let channelInfo = tmp4Result.fetchChannelInfo(tmp8);
|
|
}
|
|
}
|
|
}
|
|
continue;
|
|
}
|
|
}, items2);
|
|
};
|
|
export const useMessagesLifecycle = function useMessagesLifecycle(screenIndex) {
|
|
({ messages: require, isMessagesReady: importDefault, oldestUnreadMessageId: dependencyMap, channelId } = screenIndex);
|
|
screenIndex = screenIndex.screenIndex;
|
|
({ updateRows: findNodeHandle, scrollToMessageId: closure_6 } = screenIndex);
|
|
const effect = screenIndex.useEffect(() => {
|
|
let obj = closure_1_0(closure_1_2[15]);
|
|
obj = { messages: closure_0, isMessagesReady: closure_1, oldestUnreadMessageId: closure_2, channelId, screenIndex, updateRows: closure_5, scrollToMessageId: closure_6 };
|
|
obj.syncMessageDisplay(obj);
|
|
closure_1_0(closure_1_2[15]).recordTimings(channelId, closure_0);
|
|
}, []);
|
|
const items = [channelId, screenIndex];
|
|
const effect1 = screenIndex.useEffect(() => () => {
|
|
closure_1_7(closure_3, closure_4, false);
|
|
}, items);
|
|
};
|
|
export const useScrollState = function useScrollState() {
|
|
const tmp = callback(React.useState({ animated: false, hasHandledScroll: false, isAtBottom: false, isNearBottom: false, isNearTop: false, decelerating: false, dragging: false, hasMoreMessagesAfterForLastUpdate: false, _loaded: false }), 2);
|
|
closure_0 = tmp[1];
|
|
const items = [
|
|
tmp[0],
|
|
React.useCallback((arg0) => {
|
|
const callback = arg0;
|
|
callback((arg0) => {
|
|
const merged = Object.assign(arg0);
|
|
const merged1 = Object.assign(closure_0);
|
|
return {};
|
|
});
|
|
}, [])
|
|
];
|
|
return items;
|
|
};
|
|
export const useChatUpdatesQueue = function useChatUpdatesQueue(ref5, callback) {
|
|
closure_0 = ref5;
|
|
closure_1 = callback;
|
|
const items = [ref5, callback];
|
|
const memo = React.useMemo(() => new callback(memo[16])(() => {
|
|
let tmp2 = null;
|
|
if (null !== ref.current) {
|
|
tmp2 = closure_1_5(tmp.current);
|
|
}
|
|
return tmp2;
|
|
}, (arg0) => {
|
|
callback(arg0);
|
|
}), items);
|
|
const items1 = [memo];
|
|
const effect = React.useEffect(() => () => {
|
|
closure_2.cleanup();
|
|
}, items1);
|
|
return memo;
|
|
};
|
|
export const useMessagesState = function useMessagesState() {
|
|
[tmp2, tmp3] = callback(React.useState(false), 2);
|
|
const tmp4 = callback(React.useState(false), 2);
|
|
return { shouldForceRender: tmp2, hasJumpedToOriginalPost: tmp4[0], setHasJumpedToOriginalPost: tmp4[1], setShouldForceRender: tmp3 };
|
|
};
|