package com.discord.widgets.chat.list.utils; import android.content.Context; import c.d.b.a.a; import com.discord.api.role.GuildRole; import com.discord.api.user.User; import com.discord.models.message.Message; import com.discord.stores.StoreMessageState; import com.discord.stores.StoreStream; import com.discord.stores.StoreUserSettings; import com.discord.utilities.color.ColorCompat; import com.discord.utilities.textprocessing.DiscordParser; import com.discord.utilities.textprocessing.MessagePreprocessor; import com.discord.utilities.textprocessing.MessageRenderContext; import com.discord.widgets.chat.list.adapter.WidgetChatListAdapter; import com.facebook.drawee.span.DraweeSpanStringBuilder; import d0.z.d.m; import java.util.Map; import java.util.Objects; import kotlin.text.Regex; /* compiled from: EmbeddedMessageParser.kt */ public final class EmbeddedMessageParser { public static final EmbeddedMessageParser INSTANCE = new EmbeddedMessageParser(); /* compiled from: EmbeddedMessageParser.kt */ public static final class ParserData { private final WidgetChatListAdapter adapter; private final boolean animateEmojis; private final Context context; private final Integer maxNodes; private final Message message; private final StoreMessageState.State messageState; private final Map nickOrUsernames; private final Map roleMentions; public ParserData(Context context, Map map, Map map2, boolean z2, StoreMessageState.State state, Integer num, Message message, WidgetChatListAdapter widgetChatListAdapter) { m.checkNotNullParameter(context, "context"); m.checkNotNullParameter(map2, "nickOrUsernames"); m.checkNotNullParameter(message, "message"); m.checkNotNullParameter(widgetChatListAdapter, "adapter"); this.context = context; this.roleMentions = map; this.nickOrUsernames = map2; this.animateEmojis = z2; this.messageState = state; this.maxNodes = num; this.message = message; this.adapter = widgetChatListAdapter; } public static /* synthetic */ ParserData copy$default(ParserData parserData, Context context, Map map, Map map2, boolean z2, StoreMessageState.State state, Integer num, Message message, WidgetChatListAdapter widgetChatListAdapter, int i, Object obj) { return parserData.copy((i & 1) != 0 ? parserData.context : context, (i & 2) != 0 ? parserData.roleMentions : map, (i & 4) != 0 ? parserData.nickOrUsernames : map2, (i & 8) != 0 ? parserData.animateEmojis : z2, (i & 16) != 0 ? parserData.messageState : state, (i & 32) != 0 ? parserData.maxNodes : num, (i & 64) != 0 ? parserData.message : message, (i & 128) != 0 ? parserData.adapter : widgetChatListAdapter); } public final Context component1() { return this.context; } public final Map component2() { return this.roleMentions; } public final Map component3() { return this.nickOrUsernames; } public final boolean component4() { return this.animateEmojis; } public final StoreMessageState.State component5() { return this.messageState; } public final Integer component6() { return this.maxNodes; } public final Message component7() { return this.message; } public final WidgetChatListAdapter component8() { return this.adapter; } public final ParserData copy(Context context, Map map, Map map2, boolean z2, StoreMessageState.State state, Integer num, Message message, WidgetChatListAdapter widgetChatListAdapter) { m.checkNotNullParameter(context, "context"); m.checkNotNullParameter(map2, "nickOrUsernames"); m.checkNotNullParameter(message, "message"); m.checkNotNullParameter(widgetChatListAdapter, "adapter"); return new ParserData(context, map, map2, z2, state, num, message, widgetChatListAdapter); } public boolean equals(Object obj) { if (this == obj) { return true; } if (!(obj instanceof ParserData)) { return false; } ParserData parserData = (ParserData) obj; return m.areEqual(this.context, parserData.context) && m.areEqual(this.roleMentions, parserData.roleMentions) && m.areEqual(this.nickOrUsernames, parserData.nickOrUsernames) && this.animateEmojis == parserData.animateEmojis && m.areEqual(this.messageState, parserData.messageState) && m.areEqual(this.maxNodes, parserData.maxNodes) && m.areEqual(this.message, parserData.message) && m.areEqual(this.adapter, parserData.adapter); } public final WidgetChatListAdapter getAdapter() { return this.adapter; } public final boolean getAnimateEmojis() { return this.animateEmojis; } public final Context getContext() { return this.context; } public final Integer getMaxNodes() { return this.maxNodes; } public final Message getMessage() { return this.message; } public final StoreMessageState.State getMessageState() { return this.messageState; } public final Map getNickOrUsernames() { return this.nickOrUsernames; } public final Map getRoleMentions() { return this.roleMentions; } public int hashCode() { Context context = this.context; int i = 0; int hashCode = (context != null ? context.hashCode() : 0) * 31; Map map = this.roleMentions; int hashCode2 = (hashCode + (map != null ? map.hashCode() : 0)) * 31; Map map2 = this.nickOrUsernames; int hashCode3 = (hashCode2 + (map2 != null ? map2.hashCode() : 0)) * 31; boolean z2 = this.animateEmojis; if (z2) { z2 = true; } int i2 = z2 ? 1 : 0; int i3 = z2 ? 1 : 0; int i4 = z2 ? 1 : 0; int i5 = (hashCode3 + i2) * 31; StoreMessageState.State state = this.messageState; int hashCode4 = (i5 + (state != null ? state.hashCode() : 0)) * 31; Integer num = this.maxNodes; int hashCode5 = (hashCode4 + (num != null ? num.hashCode() : 0)) * 31; Message message = this.message; int hashCode6 = (hashCode5 + (message != null ? message.hashCode() : 0)) * 31; WidgetChatListAdapter widgetChatListAdapter = this.adapter; if (widgetChatListAdapter != null) { i = widgetChatListAdapter.hashCode(); } return hashCode6 + i; } public String toString() { StringBuilder L = a.L("ParserData(context="); L.append(this.context); L.append(", roleMentions="); L.append(this.roleMentions); L.append(", nickOrUsernames="); L.append(this.nickOrUsernames); L.append(", animateEmojis="); L.append(this.animateEmojis); L.append(", messageState="); L.append(this.messageState); L.append(", maxNodes="); L.append(this.maxNodes); L.append(", message="); L.append(this.message); L.append(", adapter="); L.append(this.adapter); L.append(")"); return L.toString(); } } private EmbeddedMessageParser() { } private final MessagePreprocessor getMessagePreprocessor(long j, Message message, StoreMessageState.State state, Integer num) { StoreUserSettings userSettings = StoreStream.Companion.getUserSettings(); return new MessagePreprocessor(j, state, (!userSettings.getIsEmbedMediaInlined() || !userSettings.getIsRenderEmbedsEnabled()) ? null : message.getEmbeds(), false, num); } private final MessageRenderContext getMessageRenderContext(ParserData parserData) { return new MessageRenderContext(parserData.getContext(), parserData.getAdapter().getData().getUserId(), parserData.getAnimateEmojis(), parserData.getNickOrUsernames(), parserData.getAdapter().getData().getChannelNames(), parserData.getRoleMentions(), 2130968986, EmbeddedMessageParser$getMessageRenderContext$1.INSTANCE, new EmbeddedMessageParser$getMessageRenderContext$2(parserData), ColorCompat.getThemedColor(parserData.getContext(), 2130970178), ColorCompat.getThemedColor(parserData.getContext(), 2130970179), null, new EmbeddedMessageParser$getMessageRenderContext$3(parserData), new EmbeddedMessageParser$getMessageRenderContext$4(parserData)); } public final DraweeSpanStringBuilder parse(ParserData parserData) { m.checkNotNullParameter(parserData, "parserData"); MessageRenderContext messageRenderContext = getMessageRenderContext(parserData); User author = parserData.getMessage().getAuthor(); MessagePreprocessor messagePreprocessor = getMessagePreprocessor(author != null ? author.i() : 0, parserData.getMessage(), parserData.getMessageState(), parserData.getMaxNodes()); String content = parserData.getMessage().getContent(); if (content == null) { content = ""; } Context context = parserData.getContext(); String property = System.getProperty("line.separator"); Objects.requireNonNull(property); m.checkNotNullExpressionValue(property, "Objects.requireNonNull(S…operty(\"line.separator\"))"); return DiscordParser.parseChannelMessage(context, new Regex(property).replace(content, " "), messageRenderContext, messagePreprocessor, DiscordParser.ParserOptions.REPLY, false); } }