discord-jadx/app/src/main/java/com/discord/widgets/guildscheduledevent/GuildScheduledEventItemView...

359 lines
23 KiB
Java

package com.discord.widgets.guildscheduledevent;
import android.content.Context;
import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.core.content.ContextCompat;
import c.a.k.b;
import com.discord.R;
import com.discord.api.channel.Channel;
import com.discord.api.guildscheduledevent.GuildScheduledEvent;
import com.discord.databinding.GuildScheduledEventItemViewBinding;
import com.discord.simpleast.core.node.Node;
import com.discord.utilities.color.ColorCompat;
import com.discord.utilities.color.ColorCompatKt;
import com.discord.utilities.drawable.DrawableCompat;
import com.discord.utilities.guildscheduledevent.GuildScheduledEventTiming;
import com.discord.utilities.guildscheduledevent.GuildScheduledEventUtilitiesKt;
import com.discord.utilities.textprocessing.AstRenderer;
import com.discord.utilities.textprocessing.MessageRenderContext;
import com.discord.utilities.textprocessing.node.SpoilerNode;
import com.discord.utilities.view.extensions.ViewExtensions;
import com.discord.utilities.view.text.LinkifiedTextView;
import com.discord.widgets.guildscheduledevent.DescriptionCache;
import com.discord.widgets.guildscheduledevent.GuildScheduledEventListItem;
import d0.z.d.m;
import java.util.LinkedHashSet;
import java.util.List;
import kotlin.Unit;
import kotlin.jvm.functions.Function0;
import kotlin.jvm.internal.DefaultConstructorMarker;
/* compiled from: GuildScheduledEventItemView.kt */
public final class GuildScheduledEventItemView extends ConstraintLayout {
private final GuildScheduledEventItemViewBinding binding;
private DescriptionCache savedDescriptionCache;
public final /* synthetic */ class WhenMappings {
public static final /* synthetic */ int[] $EnumSwitchMapping$0;
public static final /* synthetic */ int[] $EnumSwitchMapping$1;
static {
GuildScheduledEventTiming.values();
int[] iArr = new int[7];
$EnumSwitchMapping$0 = iArr;
GuildScheduledEventTiming guildScheduledEventTiming = GuildScheduledEventTiming.LIVE;
iArr[guildScheduledEventTiming.ordinal()] = 1;
GuildScheduledEventTiming guildScheduledEventTiming2 = GuildScheduledEventTiming.SOON;
iArr[guildScheduledEventTiming2.ordinal()] = 2;
GuildScheduledEventTiming guildScheduledEventTiming3 = GuildScheduledEventTiming.NOW;
iArr[guildScheduledEventTiming3.ordinal()] = 3;
GuildScheduledEventTiming.values();
int[] iArr2 = new int[7];
$EnumSwitchMapping$1 = iArr2;
iArr2[guildScheduledEventTiming.ordinal()] = 1;
iArr2[guildScheduledEventTiming2.ordinal()] = 2;
iArr2[guildScheduledEventTiming3.ordinal()] = 3;
}
}
public GuildScheduledEventItemView(Context context) {
this(context, null, 0, 6, null);
}
public GuildScheduledEventItemView(Context context, AttributeSet attributeSet) {
this(context, attributeSet, 0, 4, null);
}
/* JADX INFO: super call moved to the top of the method (can break code semantics) */
public GuildScheduledEventItemView(Context context, AttributeSet attributeSet, int i) {
super(context, attributeSet, i);
m.checkNotNullParameter(context, "context");
View inflate = LayoutInflater.from(context).inflate(R.layout.guild_scheduled_event_item_view, (ViewGroup) this, false);
addView(inflate);
int i2 = R.id.guild_scheduled_event_list_item_channel_icon;
ImageView imageView = (ImageView) inflate.findViewById(R.id.guild_scheduled_event_list_item_channel_icon);
if (imageView != null) {
i2 = R.id.guild_scheduled_event_list_item_channel_name;
TextView textView = (TextView) inflate.findViewById(R.id.guild_scheduled_event_list_item_channel_name);
if (textView != null) {
i2 = R.id.guild_scheduled_event_list_item_date_text;
TextView textView2 = (TextView) inflate.findViewById(R.id.guild_scheduled_event_list_item_date_text);
if (textView2 != null) {
i2 = R.id.guild_scheduled_event_list_item_desc_text;
LinkifiedTextView linkifiedTextView = (LinkifiedTextView) inflate.findViewById(R.id.guild_scheduled_event_list_item_desc_text);
if (linkifiedTextView != null) {
i2 = R.id.guild_scheduled_event_list_item_interested_button;
ImageView imageView2 = (ImageView) inflate.findViewById(R.id.guild_scheduled_event_list_item_interested_button);
if (imageView2 != null) {
i2 = R.id.guild_scheduled_event_list_item_interested_button_text;
TextView textView3 = (TextView) inflate.findViewById(R.id.guild_scheduled_event_list_item_interested_button_text);
if (textView3 != null) {
i2 = R.id.guild_scheduled_event_list_item_rsvp_text;
TextView textView4 = (TextView) inflate.findViewById(R.id.guild_scheduled_event_list_item_rsvp_text);
if (textView4 != null) {
i2 = R.id.guild_scheduled_event_list_item_share_button;
ImageView imageView3 = (ImageView) inflate.findViewById(R.id.guild_scheduled_event_list_item_share_button);
if (imageView3 != null) {
i2 = R.id.guild_scheduled_event_list_item_start_event_button;
ImageView imageView4 = (ImageView) inflate.findViewById(R.id.guild_scheduled_event_list_item_start_event_button);
if (imageView4 != null) {
i2 = R.id.guild_scheduled_event_list_item_start_event_button_text;
TextView textView5 = (TextView) inflate.findViewById(R.id.guild_scheduled_event_list_item_start_event_button_text);
if (textView5 != null) {
i2 = R.id.guild_scheduled_event_list_item_status_icon;
ImageView imageView5 = (ImageView) inflate.findViewById(R.id.guild_scheduled_event_list_item_status_icon);
if (imageView5 != null) {
i2 = R.id.guild_scheduled_event_list_item_title_text;
TextView textView6 = (TextView) inflate.findViewById(R.id.guild_scheduled_event_list_item_title_text);
if (textView6 != null) {
GuildScheduledEventItemViewBinding guildScheduledEventItemViewBinding = new GuildScheduledEventItemViewBinding((ConstraintLayout) inflate, imageView, textView, textView2, linkifiedTextView, imageView2, textView3, textView4, imageView3, imageView4, textView5, imageView5, textView6);
m.checkNotNullExpressionValue(guildScheduledEventItemViewBinding, "GuildScheduledEventItemV…rom(context), this, true)");
this.binding = guildScheduledEventItemViewBinding;
this.savedDescriptionCache = DescriptionCache.NoDescription.INSTANCE;
return;
}
}
}
}
}
}
}
}
}
}
}
}
throw new NullPointerException("Missing required view with ID: ".concat(inflate.getResources().getResourceName(i2)));
}
/* JADX INFO: this call moved to the top of the method (can break code semantics) */
public /* synthetic */ GuildScheduledEventItemView(Context context, AttributeSet attributeSet, int i, int i2, DefaultConstructorMarker defaultConstructorMarker) {
this(context, (i2 & 2) != 0 ? null : attributeSet, (i2 & 4) != 0 ? 0 : i);
}
public static final /* synthetic */ void access$handleSpoilerClicked(GuildScheduledEventItemView guildScheduledEventItemView, SpoilerNode spoilerNode) {
guildScheduledEventItemView.handleSpoilerClicked(spoilerNode);
}
private final void configureDescription(String str) {
List<Node<MessageRenderContext>> parseAndSaveDescription = parseAndSaveDescription(str);
LinkifiedTextView linkifiedTextView = this.binding.e;
if (parseAndSaveDescription != null) {
setVisibility(0);
m.checkNotNullExpressionValue(linkifiedTextView, "it");
Context context = linkifiedTextView.getContext();
m.checkNotNullExpressionValue(context, "it.context");
linkifiedTextView.setDraweeSpanStringBuilder(AstRenderer.render(parseAndSaveDescription, new MessageRenderContext(context, 0, false, null, null, null, 0, null, null, 0, 0, new GuildScheduledEventItemView$configureDescription$1$renderContext$1(this), null, null, 14328, null)));
return;
}
setVisibility(8);
}
public static /* synthetic */ void configureInChatList$default(GuildScheduledEventItemView guildScheduledEventItemView, GuildScheduledEvent guildScheduledEvent, Channel channel, boolean z2, boolean z3, Function0 function0, Function0 function02, Function0 function03, int i, Object obj) {
guildScheduledEventItemView.configureInChatList(guildScheduledEvent, channel, z2, z3, (i & 16) != 0 ? GuildScheduledEventItemView$configureInChatList$1.INSTANCE : function0, (i & 32) != 0 ? GuildScheduledEventItemView$configureInChatList$2.INSTANCE : function02, function03);
}
private final void configureInternal(GuildScheduledEvent guildScheduledEvent, Channel channel, boolean z2, boolean z3, boolean z4) {
boolean z5 = true;
int i = 0;
boolean z6 = z4 && GuildScheduledEventsSharingFeatureFlag.Companion.getINSTANCE().canShareGuildScheduledEvents();
GuildScheduledEventTiming eventTiming = GuildScheduledEventUtilitiesKt.getEventTiming(guildScheduledEvent);
GuildScheduledEventTiming guildScheduledEventTiming = GuildScheduledEventTiming.LIVE;
boolean z7 = eventTiming == guildScheduledEventTiming;
boolean z8 = z3 && (eventTiming == GuildScheduledEventTiming.SOON || eventTiming == GuildScheduledEventTiming.NOW);
this.binding.f.setImageResource(z7 ? R.drawable.bg_guild_scheduled_event_list_item_interested_button_active : z2 ? R.drawable.bg_guild_scheduled_event_list_item_interested_button_interested : R.drawable.bg_guild_scheduled_event_list_item_interested_button_default);
TextView textView = this.binding.g;
int color = (!z2 || eventTiming == guildScheduledEventTiming) ? ColorCompat.getColor(textView.getContext(), (int) R.color.white) : ColorCompat.getThemedColor(textView.getContext(), (int) R.attr.colorControlBrandForegroundNew);
int i2 = z7 ? 0 : z2 ? R.drawable.ic_check_brand_16dp : R.drawable.ic_bell_16dp;
int i3 = z7 ? R.string.stage_channel_join_button : R.string.stage_instance_interested_label;
DrawableCompat.setCompoundDrawablesCompat$default(textView, i2, 0, 0, 0, 14, (Object) null);
textView.setTextColor(color);
Context context = textView.getContext();
m.checkNotNullExpressionValue(context, "context");
int i4 = 4;
textView.setText(b.h(context, i3, new Object[0], null, 4));
TextView textView2 = this.binding.k;
m.checkNotNullExpressionValue(textView2, "binding.guildScheduledEv…tItemStartEventButtonText");
textView2.setVisibility(z8 ? 0 : 8);
ImageView imageView = this.binding.j;
m.checkNotNullExpressionValue(imageView, "binding.guildScheduledEv…tListItemStartEventButton");
imageView.setVisibility(z8 ? 0 : 8);
ImageView imageView2 = this.binding.i;
m.checkNotNullExpressionValue(imageView2, "binding.guildScheduledEventListItemShareButton");
imageView2.setVisibility(z6 ? 0 : 8);
TextView textView3 = this.binding.h;
Integer i5 = guildScheduledEvent.i();
if (i5 != null) {
textView3.setText(String.valueOf(i5.intValue()));
i4 = 0;
}
textView3.setVisibility(i4);
TextView textView4 = this.binding.d;
m.checkNotNullExpressionValue(textView4, "binding.guildScheduledEventListItemDateText");
Context context2 = getContext();
m.checkNotNullExpressionValue(context2, "context");
textView4.setText(GuildScheduledEventUtilitiesKt.getEventStartingTimeString(guildScheduledEvent, context2));
TextView textView5 = this.binding.m;
m.checkNotNullExpressionValue(textView5, "binding.guildScheduledEventListItemTitleText");
textView5.setText(guildScheduledEvent.f());
configureDescription(guildScheduledEvent.c());
ImageView imageView3 = this.binding.b;
m.checkNotNullExpressionValue(imageView3, "binding.guildScheduledEventListItemChannelIcon");
if (channel.m() == null) {
z5 = false;
}
if (!z5) {
i = 8;
}
imageView3.setVisibility(i);
TextView textView6 = this.binding.f1612c;
m.checkNotNullExpressionValue(textView6, "binding.guildScheduledEventListItemChannelName");
ViewExtensions.setTextAndVisibilityBy(textView6, channel.m());
configureTimeIconAndTextColor(eventTiming);
}
private final void configureTimeIconAndTextColor(GuildScheduledEventTiming guildScheduledEventTiming) {
ImageView imageView = this.binding.l;
int ordinal = guildScheduledEventTiming.ordinal();
if (ordinal == 3 || ordinal == 4) {
imageView.setImageResource(R.drawable.ic_clock_20dp);
ColorCompatKt.tintWithColor(imageView, ColorCompat.getThemedColor(imageView.getContext(), (int) R.attr.colorControlBrandForegroundNew));
} else if (ordinal != 5) {
imageView.setImageResource(R.drawable.ic_event_20dp);
ColorCompatKt.tintWithColor(imageView, ColorCompat.getThemedColor(imageView.getContext(), (int) R.attr.colorControlBrandForegroundNew));
} else {
imageView.setImageResource(R.drawable.ic_channel_stage_24dp);
ColorCompatKt.tintWithColor(imageView, ColorCompat.getColor(imageView.getContext(), (int) R.color.status_green_600));
}
TextView textView = this.binding.d;
int ordinal2 = guildScheduledEventTiming.ordinal();
textView.setTextColor((ordinal2 == 3 || ordinal2 == 4) ? ColorCompat.getThemedColor(getContext(), (int) R.attr.colorControlBrandForegroundNew) : ordinal2 != 5 ? ColorCompat.getThemedColor(getContext(), (int) R.attr.colorHeaderPrimary) : ColorCompat.getColor(getContext(), (int) R.color.status_green_600));
}
private final void handleSpoilerClicked(SpoilerNode<?> spoilerNode) {
DescriptionCache descriptionCache = this.savedDescriptionCache;
if (descriptionCache instanceof DescriptionCache.HasDescription) {
DescriptionCache.HasDescription hasDescription = (DescriptionCache.HasDescription) descriptionCache;
hasDescription.getShownSpoilerIndices().add(Integer.valueOf(spoilerNode.getId()));
GuildScheduledEventDescriptionParser.Companion.getINSTANCE().updateAstForSpoiler(hasDescription.getAst(), hasDescription.getShownSpoilerIndices());
configureDescription(hasDescription.getDescription());
}
}
private final List<Node<MessageRenderContext>> parseAndSaveDescription(String str) {
if (m.areEqual(this.savedDescriptionCache.getMaybeDescription(), str)) {
return this.savedDescriptionCache.getMaybeAst();
}
if (str == null) {
DescriptionCache.NoDescription noDescription = DescriptionCache.NoDescription.INSTANCE;
this.savedDescriptionCache = noDescription;
return noDescription.getMaybeAst();
}
DescriptionCache.HasDescription hasDescription = new DescriptionCache.HasDescription(str, GuildScheduledEventDescriptionParser.Companion.getINSTANCE().parse(str), new LinkedHashSet());
this.savedDescriptionCache = hasDescription;
return hasDescription.getMaybeAst();
}
public final void configureAsPreview(GuildScheduledEventModel guildScheduledEventModel, Channel channel) {
m.checkNotNullParameter(guildScheduledEventModel, "eventModel");
m.checkNotNullParameter(channel, "channel");
long millis = guildScheduledEventModel.getStartDateTime().toMillis();
GuildScheduledEventTiming eventTiming = GuildScheduledEventUtilitiesKt.getEventTiming(millis);
ConstraintLayout constraintLayout = this.binding.a;
m.checkNotNullExpressionValue(constraintLayout, "binding.root");
constraintLayout.setBackground(ContextCompat.getDrawable(getContext(), R.drawable.bg_guild_scheduled_list_item_preview));
ImageView imageView = this.binding.j;
m.checkNotNullExpressionValue(imageView, "binding.guildScheduledEv…tListItemStartEventButton");
int i = 8;
imageView.setVisibility(8);
TextView textView = this.binding.k;
m.checkNotNullExpressionValue(textView, "binding.guildScheduledEv…tItemStartEventButtonText");
textView.setVisibility(8);
ImageView imageView2 = this.binding.f;
m.checkNotNullExpressionValue(imageView2, "binding.guildScheduledEv…tListItemInterestedButton");
imageView2.setVisibility(8);
TextView textView2 = this.binding.g;
m.checkNotNullExpressionValue(textView2, "binding.guildScheduledEv…tItemInterestedButtonText");
textView2.setVisibility(8);
ImageView imageView3 = this.binding.i;
m.checkNotNullExpressionValue(imageView3, "binding.guildScheduledEventListItemShareButton");
imageView3.setVisibility(8);
TextView textView3 = this.binding.h;
m.checkNotNullExpressionValue(textView3, "binding.guildScheduledEventListItemRsvpText");
textView3.setVisibility(4);
TextView textView4 = this.binding.m;
m.checkNotNullExpressionValue(textView4, "binding.guildScheduledEventListItemTitleText");
textView4.setText(guildScheduledEventModel.getName());
configureDescription(guildScheduledEventModel.getDescription());
configureTimeIconAndTextColor(eventTiming);
TextView textView5 = this.binding.d;
m.checkNotNullExpressionValue(textView5, "binding.guildScheduledEventListItemDateText");
Context context = getContext();
m.checkNotNullExpressionValue(context, "context");
textView5.setText(GuildScheduledEventUtilitiesKt.getEventStartingTimeString(millis, context));
ImageView imageView4 = this.binding.b;
m.checkNotNullExpressionValue(imageView4, "binding.guildScheduledEventListItemChannelIcon");
if (channel.m() != null) {
i = 0;
}
imageView4.setVisibility(i);
TextView textView6 = this.binding.f1612c;
m.checkNotNullExpressionValue(textView6, "binding.guildScheduledEventListItemChannelName");
ViewExtensions.setTextAndVisibilityBy(textView6, channel.m());
}
public final void configureInChatList(GuildScheduledEvent guildScheduledEvent, Channel channel, boolean z2, boolean z3, Function0<Unit> function0, Function0<Unit> function02, Function0<Unit> function03) {
m.checkNotNullParameter(guildScheduledEvent, "guildScheduledEvent");
m.checkNotNullParameter(channel, "channel");
m.checkNotNullParameter(function0, "rsvpButtonClickListener");
m.checkNotNullParameter(function02, "joinServerButtonClickListener");
m.checkNotNullParameter(function03, "shareButtonClickListener");
configureInternal(guildScheduledEvent, channel, z3, false, true);
ConstraintLayout constraintLayout = this.binding.a;
m.checkNotNullExpressionValue(constraintLayout, "binding.root");
int i = 0;
constraintLayout.setBackground(ContextCompat.getDrawable(getContext(), DrawableCompat.getThemedDrawableRes$default(this, (int) R.attr.chat_embed_bg, 0, 2, (Object) null)));
TextView textView = this.binding.k;
m.checkNotNullExpressionValue(textView, "binding.guildScheduledEv…tItemStartEventButtonText");
Context context = getContext();
m.checkNotNullExpressionValue(context, "context");
int i2 = 4;
textView.setText(b.h(context, R.string.guild_event_invite_embed_join_server_button_label, new Object[0], null, 4));
TextView textView2 = this.binding.k;
m.checkNotNullExpressionValue(textView2, "binding.guildScheduledEv…tItemStartEventButtonText");
textView2.setVisibility(z2 ^ true ? 0 : 8);
ImageView imageView = this.binding.j;
imageView.setVisibility(z2 ^ true ? 0 : 8);
imageView.setOnClickListener(new GuildScheduledEventItemView$configureInChatList$$inlined$apply$lambda$1(z2, function02));
TextView textView3 = this.binding.g;
m.checkNotNullExpressionValue(textView3, "binding.guildScheduledEv…tItemInterestedButtonText");
if (!(!z2)) {
i2 = 0;
}
textView3.setVisibility(i2);
ImageView imageView2 = this.binding.f;
if (!z2) {
i = 8;
}
imageView2.setVisibility(i);
imageView2.setOnClickListener(new GuildScheduledEventItemView$configureInChatList$$inlined$apply$lambda$2(z2, function0));
this.binding.i.setOnClickListener(new GuildScheduledEventItemView$configureInChatList$5(function03));
}
public final void configureInEventList(GuildScheduledEventListItem.Event event, Function0<Unit> function0, Function0<Unit> function02, Function0<Unit> function03) {
m.checkNotNullParameter(event, "item");
m.checkNotNullParameter(function0, "rsvpButtonClickListener");
m.checkNotNullParameter(function02, "eventStartButtonClickListener");
m.checkNotNullParameter(function03, "shareButtonClickListener");
configureInternal(event.getEvent(), event.getChannel(), event.isRsvped(), event.getCanStartEvent(), event.getCanShare());
this.binding.j.setOnClickListener(new GuildScheduledEventItemView$configureInEventList$1(function02));
this.binding.f.setOnClickListener(new GuildScheduledEventItemView$configureInEventList$2(function0));
this.binding.i.setOnClickListener(new GuildScheduledEventItemView$configureInEventList$3(function03));
}
}