207 lines
8.3 KiB
TypeScript
207 lines
8.3 KiB
TypeScript
// Module ID: 16818
|
|
// Function ID: 16819
|
|
// Name: LaunchPadSearchResultUser
|
|
// Dependencies: [19, 4825, 2112, 2045, 4876, 11447, 5017, 1074, 5018, 21, 4836, 576, 16479, 4849, 5288, 504, 11, 7055, 16807, 5435, 16480, 16808, 1177, 7705, 16482, 4678, 9568, 7304, 16809, 15980, 14864, 2]
|
|
|
|
// Module 16818 (LaunchPadSearchResultUser)
|
|
import SnowflakeUtilsDefault from "SnowflakeUtils" /* 11 */;
|
|
import get_initialized from "get initialized" /* 504 */;
|
|
import nativeDefault from "native" /* 576 */;
|
|
import Constants from "Constants" /* 1074 */;
|
|
import UserUtilsDefault from "UserUtils" /* 4678 */;
|
|
import ChannelActionCreatorsDefault from "ChannelActionCreators" /* 4849 */;
|
|
import ReadStateConstants from "ReadStateConstants" /* 5018 */;
|
|
import isStreamingDefault from "isStreaming" /* 7705 */;
|
|
import useChannelUnreadBadgeState from "useChannelUnreadBadgeState" /* 15980 */;
|
|
import getLayoutStylesDefault from "getLayoutStyles" /* 16479 */;
|
|
import renderChannelWrapperDefault from "renderChannelWrapper" /* 16480 */;
|
|
import renderChannelContentDefault from "renderChannelContent" /* 16482 */;
|
|
import renderChannelPressableWrapperDefault from "renderChannelPressableWrapper" /* 16807 */;
|
|
import UnreadBadgeDefault from "UnreadBadge" /* 16808 */;
|
|
import renderChannelBadgeDefault from "renderChannelBadge" /* 16809 */;
|
|
import react from "react" /* 19 */;
|
|
import AccessibilityStore from "AccessibilityStore" /* 4825 */;
|
|
import LocaleStore from "LocaleStore" /* 2112 */;
|
|
import ChannelStore from "ChannelStore" /* 2045 */;
|
|
import PresenceStore from "PresenceStore" /* 4876 */;
|
|
import TypingStore from "TypingStore" /* 11447 */;
|
|
import UserGuildSettingsStore from "UserGuildSettingsStore" /* 5017 */;
|
|
import Fragment from "Fragment" /* 21 */;
|
|
import createStyles from "createStyles" /* 4836 */;
|
|
import size from "module_2" /* 2 */;
|
|
|
|
let closure_12;
|
|
let closure_14;
|
|
let map1;
|
|
let obj2;
|
|
function UserResult(user) {
|
|
let activities;
|
|
let channel;
|
|
let comparator;
|
|
let isMobileOnline;
|
|
let isVROnline;
|
|
let items4;
|
|
let lastMessage;
|
|
let locale;
|
|
let obj10;
|
|
let tmp14Result;
|
|
let tmp16;
|
|
let tmp17;
|
|
let tmp19;
|
|
let tmp21;
|
|
let tmp2Result6;
|
|
let unread;
|
|
let useReducedMotion;
|
|
user = user.user;
|
|
({ comparator, channel, lastMessage, unread } = user);
|
|
if (unread === undefined) {
|
|
unread = false;
|
|
}
|
|
let num = user.mentionCount;
|
|
if (num === undefined) {
|
|
num = 0;
|
|
}
|
|
let flag = user.muted;
|
|
if (flag === undefined) {
|
|
flag = false;
|
|
}
|
|
let flag2 = user.isTyping;
|
|
if (flag2 === undefined) {
|
|
flag2 = false;
|
|
}
|
|
const tmp = closure_15();
|
|
const tmp4 = getLayoutStylesDefault();
|
|
let items = [user.id];
|
|
const callback = react.useCallback(() => {
|
|
let items;
|
|
const obj2 = { recipientIds: items };
|
|
items = [user.id];
|
|
const obj = ChannelActionCreatorsDefault;
|
|
obj.openPrivateChannel(obj2);
|
|
}, items);
|
|
let obj = user(5288);
|
|
const fontScale = obj.useFontScale();
|
|
let obj2 = user(504);
|
|
const items1 = [LocaleStore];
|
|
const stateFromStores = obj2.useStateFromStores(items1, () => locale.locale);
|
|
const items2 = [AccessibilityStore];
|
|
const obj3 = user(504);
|
|
const stateFromStores1 = obj3.useStateFromStores(items2, () => useReducedMotion.useReducedMotion);
|
|
const items3 = [PresenceStore];
|
|
const obj4 = user(504);
|
|
const stateFromStoresObject = obj4.useStateFromStoresObject(items3, () => {
|
|
const obj = { isMobileOnline: PresenceStore.isMobileOnline(user.id), isVROnline: PresenceStore.isVROnline(user.id), status: PresenceStore.getStatus(user.id), activities: PresenceStore.getActivities(user.id) };
|
|
return obj;
|
|
});
|
|
const status = stateFromStoresObject.status;
|
|
let extractTimestampResult;
|
|
({ isMobileOnline, isVROnline, activities } = stateFromStoresObject);
|
|
if (null != lastMessage) {
|
|
const tmp2Result = SnowflakeUtilsDefault;
|
|
extractTimestampResult = tmp2Result.extractTimestamp(lastMessage.id);
|
|
}
|
|
let relativeTimestamp = null;
|
|
if (null != extractTimestampResult) {
|
|
const tmp6Result = user(7055);
|
|
relativeTimestamp = tmp6Result.getRelativeTimestamp(extractTimestampResult);
|
|
}
|
|
let str = "text-muted";
|
|
if (unread) {
|
|
str = "text-muted";
|
|
if (!flag) {
|
|
str = "text-default";
|
|
}
|
|
}
|
|
const obj5 = { onPress: callback, underlayColor: tmp.pressableUnderlayColor.backgroundColor, style: items4, children: tmp2Result6(tmp16(tmp17, obj10), { fontScale }) };
|
|
items4 = [tmp.pressable, { borderRadius: tmp4.container.borderRadius }];
|
|
const tmp2Result5 = renderChannelPressableWrapperDefault;
|
|
const PressableHighlight = tmp6(5435).PressableHighlight;
|
|
const items5 = [, , ];
|
|
const obj6 = { unread, resolvedUnreadSetting: UnreadSetting.ALL_MESSAGES };
|
|
tmp2Result6 = renderChannelWrapperDefault;
|
|
items5[0] = closure_12(UnreadBadgeDefault, obj6);
|
|
const obj7 = { user, guildId: "e", isMobileOnline, isVROnline, status: tmp19, streaming: isStreamingDefault(activities), style: tmp4.icon.margin, size: tmp4.icon.avatarSize, animate: tmp21, typing: flag2, autoStatusCutout: true };
|
|
const Avatar = tmp6(1177).Avatar;
|
|
tmp19 = null;
|
|
tmp16 = closure_14;
|
|
tmp17 = closure_13;
|
|
const tmp18 = UnreadSetting;
|
|
if (!user.isSystemUser()) {
|
|
tmp19 = null;
|
|
if (status !== StatusTypes.OFFLINE) {
|
|
tmp19 = status;
|
|
}
|
|
}
|
|
tmp21 = !stateFromStores1;
|
|
if (tmp21) {
|
|
tmp21 = flag2 || unread;
|
|
}
|
|
items5[1] = closure_12(Avatar, obj7);
|
|
const tmp2Result7 = renderChannelContentDefault;
|
|
if (comparator == null) {
|
|
const tmp2Result8 = UserUtilsDefault;
|
|
comparator = tmp2Result8.getUserTag(user);
|
|
}
|
|
const obj8 = { name: comparator, subtitle: tmp14Result, unread, resolvedUnreadSetting: tmp18.ALL_MESSAGES, muted: flag, lastMessageTimestampString: relativeTimestamp, mentionCount: num, mentionBadge: renderChannelBadgeDefault({ mentionCount: num, locale: stateFromStores }) };
|
|
tmp14Result = undefined;
|
|
if (null != lastMessage) {
|
|
if (null != channel) {
|
|
const obj9 = { channel, message: lastMessage, color: str, muted: flag, layout: user(7304).ChannelListLayoutTypes.COMPACT };
|
|
const ChannelRowPreview = tmp6(9568).ChannelRowPreview;
|
|
tmp14Result = tmp14(ChannelRowPreview, obj9);
|
|
}
|
|
}
|
|
obj10 = { children: items5 };
|
|
items5[2] = tmp2Result7(obj8);
|
|
return tmp2Result5(closure_12(PressableHighlight, obj5));
|
|
}
|
|
function UserResultWithChannel(arg0) {
|
|
let channel;
|
|
let id;
|
|
let mentionCount;
|
|
let tmp4;
|
|
let unread;
|
|
({ user: require, channel } = arg0);
|
|
const items = [UserGuildSettingsStore];
|
|
const obj = get_initialized;
|
|
const stateFromStores = obj.useStateFromStores(items, () => UserGuildSettingsStore.isChannelMuted(undefined, channel.id));
|
|
const obj2 = useChannelUnreadBadgeState;
|
|
const baseChannelUnreadBadgeState = obj2.useBaseChannelUnreadBadgeState(channel, stateFromStores);
|
|
({ unread, mentionCount } = baseChannelUnreadBadgeState);
|
|
const items1 = [TypingStore];
|
|
const obj3 = get_initialized;
|
|
const stateFromStores1 = obj3.useStateFromStores(items1, () => TypingStore.isTyping(channel.id, require.id));
|
|
const obj4 = { channel, lastMessage: tmp4, unread, mentionCount, muted: stateFromStores, isTyping: stateFromStores1 };
|
|
tmp4 = channel(14864)(channel, { unread });
|
|
const merged = Object.assign(arg0);
|
|
return closure_12(UserResult, obj4);
|
|
}
|
|
const StatusTypes = Constants.StatusTypes;
|
|
const UnreadSetting = ReadStateConstants.UnreadSetting;
|
|
({ jsx: closure_12, Fragment: map1, jsxs: closure_14 } = Fragment);
|
|
let obj = { pressable: { flex: 1 }, pressableUnderlayColor: obj2 };
|
|
obj2 = { backgroundColor: nativeDefault.colors.INTERACTIVE_BACKGROUND_ACTIVE };
|
|
let closure_15 = createStyles.createStyles(obj);
|
|
const memoResult = react.memo((user) => {
|
|
let tmp7;
|
|
user = user.user;
|
|
const items = [ChannelStore];
|
|
const obj = user(504);
|
|
let closure_1 = obj.useStateFromStores(items, () => ChannelStore.getDMFromUserId(user.id));
|
|
const items1 = [ChannelStore];
|
|
const obj2 = user(504);
|
|
const stateFromStores = obj2.useStateFromStores(items1, () => ChannelStore.getChannel(closure_1));
|
|
if (null != stateFromStores) {
|
|
const obj3 = { channel: stateFromStores };
|
|
const merged = Object.assign(user);
|
|
tmp7 = closure_12(UserResultWithChannel, obj3);
|
|
} else {
|
|
const obj4 = {};
|
|
const merged1 = Object.assign(user);
|
|
tmp7 = closure_12(UserResult, obj4);
|
|
}
|
|
return tmp7;
|
|
});
|
|
const result = size.fileFinishedImporting("modules/launchpad/native/LaunchPadSearchResultUser.tsx");
|
|
|
|
export default memoResult;
|