// Metro module 4418 (f4419). import ChannelStore from "../../stores/ChannelStore"; import GuildMemberStore from "../../stores/GuildMemberStore"; import GuildRoleStore from "../../stores/GuildRoleStore"; import GuildStore from "../../stores/GuildStore"; import RelationshipStore from "../../stores/RelationshipStore"; import UserStore from "../../stores/UserStore"; import Module38 from "../../_bundle/Module38"; import { useStateFromStores } from "../../_bundle/Module589"; import UserUtils from "../../utils/UserUtils"; import useDisplayNameStyles from "../display_name_styles/hooks/useDisplayNameStyles"; let useNullableUserAuthor, getUserAuthor, computeMessageAuthor; const useNullableMessageAuthor = function useNullableMessageAuthor(a0) { let id, guild_id, colorRoleId; const stateFromStores = useStateFromStores([ChannelStore], () => a0 != null ? ChannelStore.getChannel(a0.channel_id) : null); id = a0 == null ? void 0 : a0.author?.id; guild_id = stateFromStores?.guild_id; const stateFromStores2 = useStateFromStores([GuildMemberStore], () => guild_id == null ? null : id == null ? null : GuildMemberStore.getMember(guild_id, id)); let r38 = useStateFromStores([UserStore], () => UserStore.getUser(id), [id]); if (a0 == null ? void 0 : a0.author.bot) { r38 = a0?.author; } const name = UserUtils.useName(r38); const stateFromStores3 = useStateFromStores([GuildStore], () => GuildStore.getGuild(guild_id), [guild_id]); colorRoleId = stateFromStores2?.colorRoleId; const stateFromStores4 = useStateFromStores([GuildRoleStore], () => guild_id != null ? colorRoleId != null ? GuildRoleStore.getRole(guild_id, colorRoleId) : void 0 : void 0, [guild_id, colorRoleId]); const stateFromStores5 = useStateFromStores([RelationshipStore], () => id != null ? (stateFromStores == null ? void 0 : stateFromStores.isPrivate()) ? RelationshipStore.getNickname(id) : null : null); const styles = useDisplayNameStyles({ userId: id, guildId: guild_id }); return a0 == null ? null : computeMessageAuthor({ user: a0.author, channel: stateFromStores, guild: stateFromStores3, memberColorRole: stateFromStores4, userName: name, member: stateFromStores2, friendNickname: stateFromStores5, displayNameStyles: styles }); }; useNullableUserAuthor = function useNullableUserAuthor(a0, a1) { let colorRoleId2; const id2 = a0?.id; const guild_id2 = a1?.guild_id; const stateFromStores2 = useStateFromStores([GuildMemberStore], () => guild_id2 == null ? null : id2 == null ? null : GuildMemberStore.getMember(guild_id2, id2)); const stateFromStores3 = useStateFromStores([GuildStore], () => GuildStore.getGuild(guild_id2), [guild_id2]); colorRoleId2 = stateFromStores2?.colorRoleId; const stateFromStores4 = useStateFromStores([GuildRoleStore], () => guild_id2 != null ? colorRoleId2 != null ? GuildRoleStore.getRole(guild_id2, colorRoleId2) : void 0 : void 0, [guild_id2, colorRoleId2]); const stateFromStores5 = useStateFromStores([RelationshipStore], () => { const r1 = id2 != null; let r2 = null; if (r1) { r2 = (a1 == null ? void 0 : a1.isPrivate()) ? RelationshipStore.getNickname(id2) : null; } return r2; }); return computeMessageAuthor({ user: a0, channel: a1, guild: stateFromStores3, memberColorRole: stateFromStores4, member: stateFromStores2, userName: UserUtils.useName(a0), friendNickname: stateFromStores5, displayNameStyles: a0?.displayNameStyles }); }; getUserAuthor = function getUserAuthor(a0, a1) { const id3 = a0?.id; const guild_id3 = a1?.guild_id; const guild = GuildStore.getGuild(guild_id3); const r16 = guild_id3 == null; const member = r16 ? null : id3 == null ? null : GuildMemberStore.getMember(guild_id3, id3); return computeMessageAuthor({ user: a0, channel: a1, guild, memberColorRole: guild_id3 != null ? member?.colorRoleId != null ? GuildRoleStore.getRole(guild_id3, member.colorRoleId) : void 0 : void 0, member, friendNickname: id3 != null ? a1 != null ? a1.isPrivate() ? RelationshipStore.getNickname(id3) : null : null : null, displayNameStyles: a0?.displayNameStyles }); }; computeMessageAuthor = function computeMessageAuthor(a0) { let r24; const { user, channel, guild, memberColorRole, member } = a0; let userName = a0.userName; let friendNickname = a0.friendNickname; const displayNameStyles = a0.displayNameStyles; const r0 = user == null; let nick2 = "???"; if (!r0) { if (userName == null) { userName = UserUtils.getName(user); } nick2 = userName; } const id3 = user?.id; L28: { if (id3 != null && channel != null) { if (guild?.id == null) { if (friendNickname == null) { friendNickname = nick2; } r24 = { nick: friendNickname, colorString: null, colorStrings: null, displayNameStyles }; break L28; } if (member == null) { r24 = { nick: nick2, colorString: null, colorStrings: null, displayNameStyles }; break L28; } let nick = member.nick; if (nick == null) { nick = nick2; } const name = memberColorRole?.name; const id4 = memberColorRole?.id; let primaryGuild = user.primaryGuild; if (primaryGuild == null) { primaryGuild = void 0; } r24 = { nick, colorString: member.colorString, colorStrings: member.colorStrings, colorRoleName: name, colorRoleId: id4, iconRoleId: member.iconRoleId, guildMemberAvatar: member.avatar, guildMemberAvatarDecoration: member.avatarDecoration, primaryGuild, guildId: guild.id, authorId: user.id, displayNameStyles }; } else { r24 = { nick: nick2, colorString: null, colorStrings: null, displayNameStyles }; } } return r24; }; export default function useMessageNickAndColor(a0, a1) { let r3 = a1; const nullableMessageAuthor = useNullableMessageAuthor(a0); Module38(nullableMessageAuthor != null, "Result cannot be null because the message is not null"); if (a1 == null) { r3 = nullableMessageAuthor; } return r3; }; export { useNullableMessageAuthor }; export function getMessageAuthor(a0) { return getUserAuthor(a0.author, ChannelStore.getChannel(a0.channel_id)); } export function useUserNickAndColor(a0, a1) { const nullableUserAuthor = useNullableUserAuthor(a0, a1); Module38(true, "Result cannot be null because user and channel are not null"); return nullableUserAuthor; } export { useNullableUserAuthor }; export { getUserAuthor };