284 lines
9.5 KiB
TypeScript
284 lines
9.5 KiB
TypeScript
// Module ID: 10420
|
|
// Function ID: 80552
|
|
// Name: _createForOfIteratorHelperLoose
|
|
// Dependencies: [57, 31, 27, 9435, 9242, 4470, 1838, 4218, 566, 22, 620, 5463, 1327, 5968, 10421, 9241, 10422, 2]
|
|
// Exports: useChatUpdatesQueue, useFetchMessageApplications, useFetchVoiceChannelInviteStartTimes, useMessageAuthorActivities, useMessagesLifecycle, useMessagesState, useScrollState
|
|
|
|
// Module 10420 (_createForOfIteratorHelperLoose)
|
|
import _slicedToArray from "_slicedToArray";
|
|
import result from "result";
|
|
import { findNodeHandle } from "get ActivityIndicator";
|
|
import _isNativeReflectConstruct from "_isNativeReflectConstruct";
|
|
import { updateShouldShowJumpToPresentButton as closure_7 } from "getChatInputContainerHeight";
|
|
import closure_8 from "_isNativeReflectConstruct";
|
|
import _createForOfIteratorHelperLoose from "_createForOfIteratorHelperLoose";
|
|
import closure_10 from "_isNativeReflectConstruct";
|
|
|
|
const require = arg1;
|
|
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;
|
|
}
|
|
let result = require("get ActivityIndicator").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(566).useStateFromStoresObject(items1, () => memo(outer1_2[9]).mapValues(memo, (arg0, arg1) => outer2_10.getPrimaryActivity(arg1)), items2);
|
|
};
|
|
export const useFetchMessageApplications = function useFetchMessageApplications(arg0) {
|
|
let 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);
|
|
let closure_2 = React.useRef([]);
|
|
const items1 = [memo];
|
|
const effect = React.useEffect(() => {
|
|
if (!obj.areArraysShallowEqual(memo, ref.current)) {
|
|
const obj2 = memo(ref[11]);
|
|
const found = memo(ref[9])(memo).filter(callback(ref[12]).isNotNullish);
|
|
const arr = memo(ref[9])(memo);
|
|
const applications = obj2.fetchApplications(found.uniq().value(), false);
|
|
ref.current = memo;
|
|
const iter = found.uniq();
|
|
}
|
|
}, items1);
|
|
};
|
|
export const useFetchVoiceChannelInviteStartTimes = function useFetchVoiceChannelInviteStartTimes(stateFromStores4) {
|
|
const _require = stateFromStores4;
|
|
const items = [_createForOfIteratorHelperLoose, closure_8];
|
|
const items1 = [stateFromStores4];
|
|
const stateFromStoresObject = _require(566).useStateFromStoresObject(items, () => {
|
|
let iter3;
|
|
const obj = {};
|
|
const tmp = outer1_11(stateFromStores4.values());
|
|
const iter = tmp();
|
|
let iter2 = iter;
|
|
if (!iter.done) {
|
|
do {
|
|
let value = iter2.value;
|
|
let tmp3 = tmp2;
|
|
if (null != value.guild) {
|
|
let tmp4 = stateFromStores4;
|
|
let tmp5 = outer1_2;
|
|
let obj2 = stateFromStores4(outer1_2[13]);
|
|
tmp3 = tmp2;
|
|
if (obj2.isVoiceChannelInvite(value)) {
|
|
let id = value.guild.id;
|
|
let tmp6 = outer1_9;
|
|
let tmp7 = null != outer1_9.getGuild(id);
|
|
if (tmp7) {
|
|
let tmp8 = outer1_8;
|
|
tmp7 = !outer1_8.isUnavailable(id);
|
|
}
|
|
obj[id] = tmp7;
|
|
tmp3 = id;
|
|
}
|
|
}
|
|
iter3 = tmp();
|
|
tmp2 = tmp3;
|
|
iter2 = iter3;
|
|
} while (!iter3.done);
|
|
}
|
|
return obj;
|
|
}, items1);
|
|
const items2 = [stateFromStores4, stateFromStoresObject];
|
|
const effect = React.useEffect(() => {
|
|
let iter3;
|
|
const tmp = outer1_11(stateFromStores4.values());
|
|
const iter = tmp();
|
|
let iter2 = iter;
|
|
if (!iter.done) {
|
|
do {
|
|
let value = iter2.value;
|
|
let tmp3 = tmp2;
|
|
if (null != value.guild) {
|
|
let tmp4 = stateFromStores4;
|
|
let tmp5 = outer1_2;
|
|
let obj = stateFromStores4(outer1_2[13]);
|
|
tmp3 = tmp2;
|
|
if (obj.isVoiceChannelInvite(value)) {
|
|
let id = value.guild.id;
|
|
let tmp6 = stateFromStoresObject;
|
|
let result = true !== stateFromStoresObject[id];
|
|
if (!result) {
|
|
let tmp8 = outer1_6;
|
|
result = outer1_6.hasRequestedStartTimes(id);
|
|
}
|
|
tmp3 = id;
|
|
if (!result) {
|
|
let tmp9 = stateFromStores4;
|
|
let tmp10 = outer1_2;
|
|
let obj2 = stateFromStores4(outer1_2[14]);
|
|
let channelInfo = obj2.fetchChannelInfo(id);
|
|
tmp3 = id;
|
|
}
|
|
}
|
|
}
|
|
iter3 = tmp();
|
|
tmp2 = tmp3;
|
|
iter2 = iter3;
|
|
} while (!iter3.done);
|
|
}
|
|
}, items2);
|
|
};
|
|
export const useMessagesLifecycle = function useMessagesLifecycle(screenIndex) {
|
|
let channelId;
|
|
let _isNativeReflectConstruct;
|
|
let dependencyMap;
|
|
let findNodeHandle;
|
|
let importDefault;
|
|
let require;
|
|
({ messages: require, isMessagesReady: importDefault, oldestUnreadMessageId: dependencyMap, channelId } = screenIndex);
|
|
screenIndex = screenIndex.screenIndex;
|
|
({ updateRows: findNodeHandle, scrollToMessageId: _isNativeReflectConstruct } = screenIndex);
|
|
const effect = screenIndex.useEffect(() => {
|
|
let obj = outer1_0(outer1_2[15]);
|
|
obj = { messages: closure_0, isMessagesReady: closure_1, oldestUnreadMessageId: closure_2, channelId, screenIndex, updateRows: closure_5, scrollToMessageId: _isNativeReflectConstruct };
|
|
obj.syncMessageDisplay(obj);
|
|
outer1_0(outer1_2[15]).recordTimings(channelId, closure_0);
|
|
}, []);
|
|
const items = [channelId, screenIndex];
|
|
const effect1 = screenIndex.useEffect(() => () => {
|
|
outer2_7(outer1_3, outer1_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);
|
|
let 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) {
|
|
let closure_0 = ref5;
|
|
let closure_1 = callback;
|
|
const items = [ref5, callback];
|
|
const memo = React.useMemo(() => {
|
|
let tmp = callback(memo[16]);
|
|
tmp = new tmp(() => {
|
|
let tmp = null;
|
|
if (null !== outer1_0.current) {
|
|
tmp = outer2_5(outer1_0.current);
|
|
}
|
|
return tmp;
|
|
}, (arg0) => {
|
|
outer1_1(arg0);
|
|
});
|
|
return tmp;
|
|
}, items);
|
|
const items1 = [memo];
|
|
const effect = React.useEffect(() => () => {
|
|
outer1_2.cleanup();
|
|
}, items1);
|
|
return memo;
|
|
};
|
|
export const useMessagesState = function useMessagesState() {
|
|
let tmp2;
|
|
let tmp3;
|
|
[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 };
|
|
};
|