918 lines
43 KiB
Java
918 lines
43 KiB
Java
package com.discord.widgets.chat.input.sticker;
|
|
|
|
import android.content.Context;
|
|
import androidx.annotation.MainThread;
|
|
import c.d.b.a.a;
|
|
import com.discord.api.channel.Channel;
|
|
import com.discord.api.premium.PremiumTier;
|
|
import com.discord.api.sticker.Sticker;
|
|
import com.discord.app.AppViewModel;
|
|
import com.discord.models.sticker.dto.ModelStickerPack;
|
|
import com.discord.models.user.MeUser;
|
|
import com.discord.stores.StoreChannels;
|
|
import com.discord.stores.StoreChannelsSelected;
|
|
import com.discord.stores.StoreExpressionPickerNavigation;
|
|
import com.discord.stores.StorePermissions;
|
|
import com.discord.stores.StoreStickers;
|
|
import com.discord.stores.StoreStream;
|
|
import com.discord.stores.StoreUser;
|
|
import com.discord.stores.StoreUserSettings;
|
|
import com.discord.utilities.mg_recycler.MGRecyclerDataPayload;
|
|
import com.discord.utilities.permissions.PermissionUtils;
|
|
import com.discord.utilities.rx.ObservableExtensionsKt;
|
|
import com.discord.widgets.chat.MessageManager;
|
|
import com.discord.widgets.chat.input.sticker.HeaderType;
|
|
import com.discord.widgets.chat.input.sticker.StickerCategoryItem;
|
|
import com.discord.widgets.chat.input.sticker.StickerItem;
|
|
import d0.g0.w;
|
|
import d0.t.n;
|
|
import d0.z.d.m;
|
|
import d0.z.d.o;
|
|
import java.util.ArrayList;
|
|
import java.util.Collection;
|
|
import java.util.Iterator;
|
|
import java.util.LinkedHashSet;
|
|
import java.util.List;
|
|
import java.util.Locale;
|
|
import java.util.Objects;
|
|
import kotlin.Pair;
|
|
import kotlin.Unit;
|
|
import kotlin.jvm.functions.Function0;
|
|
import kotlin.jvm.functions.Function1;
|
|
import kotlin.jvm.internal.DefaultConstructorMarker;
|
|
import rx.Observable;
|
|
import rx.subjects.BehaviorSubject;
|
|
import rx.subjects.PublishSubject;
|
|
/* compiled from: StickerPickerViewModel.kt */
|
|
public class StickerPickerViewModel extends AppViewModel<ViewState> {
|
|
public static final Companion Companion = new Companion(null);
|
|
public static final long RECENT_SELECTED_ID = -1;
|
|
private final StoreChannelsSelected channelSelectedStore;
|
|
private final StoreChannels channelStore;
|
|
private final PublishSubject<Event> eventSubject;
|
|
private final long initialStickerPackId;
|
|
private final Locale locale;
|
|
private final MessageManager messageManager;
|
|
private final StorePermissions permissionStore;
|
|
private final BehaviorSubject<String> searchSubject;
|
|
private final BehaviorSubject<Long> selectedPackIdSubject;
|
|
private int stickerCountToDisplayForStore;
|
|
private final StoreStickers stickersStore;
|
|
|
|
/* compiled from: StickerPickerViewModel.kt */
|
|
/* renamed from: com.discord.widgets.chat.input.sticker.StickerPickerViewModel$1 reason: invalid class name */
|
|
public static final class AnonymousClass1 extends o implements Function1<StoreState, Unit> {
|
|
public final /* synthetic */ StickerPickerViewModel this$0;
|
|
|
|
/* JADX INFO: super call moved to the top of the method (can break code semantics) */
|
|
public AnonymousClass1(StickerPickerViewModel stickerPickerViewModel) {
|
|
super(1);
|
|
this.this$0 = stickerPickerViewModel;
|
|
}
|
|
|
|
/* Return type fixed from 'java.lang.Object' to match base method */
|
|
/* JADX DEBUG: Method arguments types fixed to match base method, original types: [java.lang.Object] */
|
|
@Override // kotlin.jvm.functions.Function1
|
|
public /* bridge */ /* synthetic */ Unit invoke(StoreState storeState) {
|
|
invoke(storeState);
|
|
return Unit.a;
|
|
}
|
|
|
|
public final void invoke(StoreState storeState) {
|
|
StickerPickerViewModel stickerPickerViewModel = this.this$0;
|
|
m.checkNotNullExpressionValue(storeState, "storeState");
|
|
StickerPickerViewModel.access$handleStoreState(stickerPickerViewModel, storeState);
|
|
}
|
|
}
|
|
|
|
/* compiled from: StickerPickerViewModel.kt */
|
|
public static final class Companion {
|
|
private Companion() {
|
|
}
|
|
|
|
public /* synthetic */ Companion(DefaultConstructorMarker defaultConstructorMarker) {
|
|
this();
|
|
}
|
|
|
|
public static final /* synthetic */ List access$buildStickerListItems(Companion companion, ModelStickerPack modelStickerPack, String str, int i, Locale locale) {
|
|
return companion.buildStickerListItems(modelStickerPack, str, i, locale);
|
|
}
|
|
|
|
private final List<MGRecyclerDataPayload> buildStickerListItems(ModelStickerPack modelStickerPack, String str, int i, Locale locale) {
|
|
ArrayList arrayList = new ArrayList();
|
|
if (modelStickerPack.getStickers().isEmpty()) {
|
|
return n.emptyList();
|
|
}
|
|
for (Sticker sticker : modelStickerPack.getStickers()) {
|
|
String g = sticker.g();
|
|
Objects.requireNonNull(g, "null cannot be cast to non-null type java.lang.String");
|
|
String lowerCase = g.toLowerCase(locale);
|
|
m.checkNotNullExpressionValue(lowerCase, "(this as java.lang.String).toLowerCase(locale)");
|
|
if (!w.contains$default((CharSequence) lowerCase, (CharSequence) str, false, 2, (Object) null)) {
|
|
String i2 = sticker.i();
|
|
Objects.requireNonNull(i2, "null cannot be cast to non-null type java.lang.String");
|
|
String lowerCase2 = i2.toLowerCase(locale);
|
|
m.checkNotNullExpressionValue(lowerCase2, "(this as java.lang.String).toLowerCase(locale)");
|
|
if (w.contains$default((CharSequence) lowerCase2, (CharSequence) str, false, 2, (Object) null)) {
|
|
}
|
|
}
|
|
arrayList.add(new StickerItem(sticker, i, StickerItem.Mode.OWNED));
|
|
}
|
|
if ((str.length() > 0) && arrayList.isEmpty()) {
|
|
return n.emptyList();
|
|
}
|
|
arrayList.add(0, new HeaderItem(new HeaderType.PackItem(modelStickerPack)));
|
|
return arrayList;
|
|
}
|
|
|
|
private final Observable<StoreState> observeStoreState(BehaviorSubject<String> behaviorSubject, BehaviorSubject<Long> behaviorSubject2, StoreStickers storeStickers, StoreUserSettings storeUserSettings, StoreUser storeUser, StoreExpressionPickerNavigation storeExpressionPickerNavigation) {
|
|
Observable<StoreState> e = Observable.e(storeStickers.observeEnabledStickerPacks(), storeStickers.observeFrequentlyUsedStickers(), behaviorSubject, StoreUserSettings.observeStickerAnimationSettings$default(storeUserSettings, false, 1, null), behaviorSubject2, StoreUser.observeMe$default(storeUser, false, 1, null), storeExpressionPickerNavigation.observeSelectedTab(), StickerPickerViewModel$Companion$observeStoreState$1.INSTANCE);
|
|
m.checkNotNullExpressionValue(e, "Observable.combineLatest…Tab.STICKER\n )\n }");
|
|
return e;
|
|
}
|
|
|
|
public static /* synthetic */ Observable observeStoreState$default(Companion companion, BehaviorSubject behaviorSubject, BehaviorSubject behaviorSubject2, StoreStickers storeStickers, StoreUserSettings storeUserSettings, StoreUser storeUser, StoreExpressionPickerNavigation storeExpressionPickerNavigation, int i, Object obj) {
|
|
if ((i & 4) != 0) {
|
|
storeStickers = StoreStream.Companion.getStickers();
|
|
}
|
|
if ((i & 8) != 0) {
|
|
storeUserSettings = StoreStream.Companion.getUserSettings();
|
|
}
|
|
if ((i & 16) != 0) {
|
|
storeUser = StoreStream.Companion.getUsers();
|
|
}
|
|
if ((i & 32) != 0) {
|
|
storeExpressionPickerNavigation = StoreStream.Companion.getExpressionPickerNavigation();
|
|
}
|
|
return companion.observeStoreState(behaviorSubject, behaviorSubject2, storeStickers, storeUserSettings, storeUser, storeExpressionPickerNavigation);
|
|
}
|
|
}
|
|
|
|
/* compiled from: StickerPickerViewModel.kt */
|
|
public static abstract class Event {
|
|
|
|
/* compiled from: StickerPickerViewModel.kt */
|
|
public static final class ScrollToStickerItemPosition extends Event {
|
|
private final int position;
|
|
|
|
public ScrollToStickerItemPosition(int i) {
|
|
super(null);
|
|
this.position = i;
|
|
}
|
|
|
|
public static /* synthetic */ ScrollToStickerItemPosition copy$default(ScrollToStickerItemPosition scrollToStickerItemPosition, int i, int i2, Object obj) {
|
|
if ((i2 & 1) != 0) {
|
|
i = scrollToStickerItemPosition.position;
|
|
}
|
|
return scrollToStickerItemPosition.copy(i);
|
|
}
|
|
|
|
public final int component1() {
|
|
return this.position;
|
|
}
|
|
|
|
public final ScrollToStickerItemPosition copy(int i) {
|
|
return new ScrollToStickerItemPosition(i);
|
|
}
|
|
|
|
public boolean equals(Object obj) {
|
|
if (this != obj) {
|
|
return (obj instanceof ScrollToStickerItemPosition) && this.position == ((ScrollToStickerItemPosition) obj).position;
|
|
}
|
|
return true;
|
|
}
|
|
|
|
public final int getPosition() {
|
|
return this.position;
|
|
}
|
|
|
|
public int hashCode() {
|
|
return this.position;
|
|
}
|
|
|
|
public String toString() {
|
|
return a.z(a.L("ScrollToStickerItemPosition(position="), this.position, ")");
|
|
}
|
|
}
|
|
|
|
private Event() {
|
|
}
|
|
|
|
public /* synthetic */ Event(DefaultConstructorMarker defaultConstructorMarker) {
|
|
this();
|
|
}
|
|
}
|
|
|
|
/* compiled from: StickerPickerViewModel.kt */
|
|
public static abstract class StoreState {
|
|
|
|
/* compiled from: StickerPickerViewModel.kt */
|
|
public static final class Loaded extends StoreState {
|
|
private final List<ModelStickerPack> enabledStickerPacks;
|
|
private final List<Sticker> frequentlyUsedStickers;
|
|
private final boolean isStickersSelectedTab;
|
|
private final MeUser meUser;
|
|
private final String searchInputStringUpper;
|
|
private final Long selectedPackId;
|
|
private final int stickerAnimationSettings;
|
|
|
|
/* JADX INFO: super call moved to the top of the method (can break code semantics) */
|
|
public Loaded(List<ModelStickerPack> list, List<Sticker> list2, String str, int i, Long l, MeUser meUser, boolean z2) {
|
|
super(null);
|
|
m.checkNotNullParameter(list, "enabledStickerPacks");
|
|
m.checkNotNullParameter(list2, "frequentlyUsedStickers");
|
|
m.checkNotNullParameter(str, "searchInputStringUpper");
|
|
m.checkNotNullParameter(meUser, "meUser");
|
|
this.enabledStickerPacks = list;
|
|
this.frequentlyUsedStickers = list2;
|
|
this.searchInputStringUpper = str;
|
|
this.stickerAnimationSettings = i;
|
|
this.selectedPackId = l;
|
|
this.meUser = meUser;
|
|
this.isStickersSelectedTab = z2;
|
|
}
|
|
|
|
/* JADX DEBUG: Multi-variable search result rejected for r5v0, resolved type: com.discord.widgets.chat.input.sticker.StickerPickerViewModel$StoreState$Loaded */
|
|
/* JADX WARN: Multi-variable type inference failed */
|
|
public static /* synthetic */ Loaded copy$default(Loaded loaded, List list, List list2, String str, int i, Long l, MeUser meUser, boolean z2, int i2, Object obj) {
|
|
if ((i2 & 1) != 0) {
|
|
list = loaded.enabledStickerPacks;
|
|
}
|
|
if ((i2 & 2) != 0) {
|
|
list2 = loaded.frequentlyUsedStickers;
|
|
}
|
|
if ((i2 & 4) != 0) {
|
|
str = loaded.searchInputStringUpper;
|
|
}
|
|
if ((i2 & 8) != 0) {
|
|
i = loaded.stickerAnimationSettings;
|
|
}
|
|
if ((i2 & 16) != 0) {
|
|
l = loaded.selectedPackId;
|
|
}
|
|
if ((i2 & 32) != 0) {
|
|
meUser = loaded.meUser;
|
|
}
|
|
if ((i2 & 64) != 0) {
|
|
z2 = loaded.isStickersSelectedTab;
|
|
}
|
|
return loaded.copy(list, list2, str, i, l, meUser, z2);
|
|
}
|
|
|
|
public final List<ModelStickerPack> component1() {
|
|
return this.enabledStickerPacks;
|
|
}
|
|
|
|
public final List<Sticker> component2() {
|
|
return this.frequentlyUsedStickers;
|
|
}
|
|
|
|
public final String component3() {
|
|
return this.searchInputStringUpper;
|
|
}
|
|
|
|
public final int component4() {
|
|
return this.stickerAnimationSettings;
|
|
}
|
|
|
|
public final Long component5() {
|
|
return this.selectedPackId;
|
|
}
|
|
|
|
public final MeUser component6() {
|
|
return this.meUser;
|
|
}
|
|
|
|
public final boolean component7() {
|
|
return this.isStickersSelectedTab;
|
|
}
|
|
|
|
public final Loaded copy(List<ModelStickerPack> list, List<Sticker> list2, String str, int i, Long l, MeUser meUser, boolean z2) {
|
|
m.checkNotNullParameter(list, "enabledStickerPacks");
|
|
m.checkNotNullParameter(list2, "frequentlyUsedStickers");
|
|
m.checkNotNullParameter(str, "searchInputStringUpper");
|
|
m.checkNotNullParameter(meUser, "meUser");
|
|
return new Loaded(list, list2, str, i, l, meUser, z2);
|
|
}
|
|
|
|
public boolean equals(Object obj) {
|
|
if (this == obj) {
|
|
return true;
|
|
}
|
|
if (!(obj instanceof Loaded)) {
|
|
return false;
|
|
}
|
|
Loaded loaded = (Loaded) obj;
|
|
return m.areEqual(this.enabledStickerPacks, loaded.enabledStickerPacks) && m.areEqual(this.frequentlyUsedStickers, loaded.frequentlyUsedStickers) && m.areEqual(this.searchInputStringUpper, loaded.searchInputStringUpper) && this.stickerAnimationSettings == loaded.stickerAnimationSettings && m.areEqual(this.selectedPackId, loaded.selectedPackId) && m.areEqual(this.meUser, loaded.meUser) && this.isStickersSelectedTab == loaded.isStickersSelectedTab;
|
|
}
|
|
|
|
public final List<ModelStickerPack> getEnabledStickerPacks() {
|
|
return this.enabledStickerPacks;
|
|
}
|
|
|
|
public final List<Sticker> getFrequentlyUsedStickers() {
|
|
return this.frequentlyUsedStickers;
|
|
}
|
|
|
|
public final MeUser getMeUser() {
|
|
return this.meUser;
|
|
}
|
|
|
|
public final String getSearchInputStringUpper() {
|
|
return this.searchInputStringUpper;
|
|
}
|
|
|
|
public final Long getSelectedPackId() {
|
|
return this.selectedPackId;
|
|
}
|
|
|
|
public final int getStickerAnimationSettings() {
|
|
return this.stickerAnimationSettings;
|
|
}
|
|
|
|
public int hashCode() {
|
|
List<ModelStickerPack> list = this.enabledStickerPacks;
|
|
int i = 0;
|
|
int hashCode = (list != null ? list.hashCode() : 0) * 31;
|
|
List<Sticker> list2 = this.frequentlyUsedStickers;
|
|
int hashCode2 = (hashCode + (list2 != null ? list2.hashCode() : 0)) * 31;
|
|
String str = this.searchInputStringUpper;
|
|
int hashCode3 = (((hashCode2 + (str != null ? str.hashCode() : 0)) * 31) + this.stickerAnimationSettings) * 31;
|
|
Long l = this.selectedPackId;
|
|
int hashCode4 = (hashCode3 + (l != null ? l.hashCode() : 0)) * 31;
|
|
MeUser meUser = this.meUser;
|
|
if (meUser != null) {
|
|
i = meUser.hashCode();
|
|
}
|
|
int i2 = (hashCode4 + i) * 31;
|
|
boolean z2 = this.isStickersSelectedTab;
|
|
if (z2) {
|
|
z2 = true;
|
|
}
|
|
int i3 = z2 ? 1 : 0;
|
|
int i4 = z2 ? 1 : 0;
|
|
int i5 = z2 ? 1 : 0;
|
|
return i2 + i3;
|
|
}
|
|
|
|
public final boolean isStickersSelectedTab() {
|
|
return this.isStickersSelectedTab;
|
|
}
|
|
|
|
public String toString() {
|
|
StringBuilder L = a.L("Loaded(enabledStickerPacks=");
|
|
L.append(this.enabledStickerPacks);
|
|
L.append(", frequentlyUsedStickers=");
|
|
L.append(this.frequentlyUsedStickers);
|
|
L.append(", searchInputStringUpper=");
|
|
L.append(this.searchInputStringUpper);
|
|
L.append(", stickerAnimationSettings=");
|
|
L.append(this.stickerAnimationSettings);
|
|
L.append(", selectedPackId=");
|
|
L.append(this.selectedPackId);
|
|
L.append(", meUser=");
|
|
L.append(this.meUser);
|
|
L.append(", isStickersSelectedTab=");
|
|
return a.G(L, this.isStickersSelectedTab, ")");
|
|
}
|
|
}
|
|
|
|
/* compiled from: StickerPickerViewModel.kt */
|
|
public static final class Uninitialized extends StoreState {
|
|
public static final Uninitialized INSTANCE = new Uninitialized();
|
|
|
|
private Uninitialized() {
|
|
super(null);
|
|
}
|
|
}
|
|
|
|
private StoreState() {
|
|
}
|
|
|
|
public /* synthetic */ StoreState(DefaultConstructorMarker defaultConstructorMarker) {
|
|
this();
|
|
}
|
|
}
|
|
|
|
/* compiled from: StickerPickerViewModel.kt */
|
|
public static abstract class ViewState {
|
|
private final String searchQuery;
|
|
|
|
/* compiled from: StickerPickerViewModel.kt */
|
|
public static final class EmptySearchResults extends ViewState {
|
|
private final List<StickerCategoryItem> categoryItems;
|
|
private final String searchQuery;
|
|
|
|
/* JADX DEBUG: Multi-variable search result rejected for r3v0, resolved type: java.util.List<? extends com.discord.widgets.chat.input.sticker.StickerCategoryItem> */
|
|
/* JADX WARN: Multi-variable type inference failed */
|
|
/* JADX INFO: super call moved to the top of the method (can break code semantics) */
|
|
public EmptySearchResults(String str, List<? extends StickerCategoryItem> list) {
|
|
super(str, null);
|
|
m.checkNotNullParameter(str, "searchQuery");
|
|
m.checkNotNullParameter(list, "categoryItems");
|
|
this.searchQuery = str;
|
|
this.categoryItems = list;
|
|
}
|
|
|
|
/* JADX DEBUG: Multi-variable search result rejected for r0v0, resolved type: com.discord.widgets.chat.input.sticker.StickerPickerViewModel$ViewState$EmptySearchResults */
|
|
/* JADX WARN: Multi-variable type inference failed */
|
|
public static /* synthetic */ EmptySearchResults copy$default(EmptySearchResults emptySearchResults, String str, List list, int i, Object obj) {
|
|
if ((i & 1) != 0) {
|
|
str = emptySearchResults.getSearchQuery();
|
|
}
|
|
if ((i & 2) != 0) {
|
|
list = emptySearchResults.categoryItems;
|
|
}
|
|
return emptySearchResults.copy(str, list);
|
|
}
|
|
|
|
public final String component1() {
|
|
return getSearchQuery();
|
|
}
|
|
|
|
public final List<StickerCategoryItem> component2() {
|
|
return this.categoryItems;
|
|
}
|
|
|
|
public final EmptySearchResults copy(String str, List<? extends StickerCategoryItem> list) {
|
|
m.checkNotNullParameter(str, "searchQuery");
|
|
m.checkNotNullParameter(list, "categoryItems");
|
|
return new EmptySearchResults(str, list);
|
|
}
|
|
|
|
public boolean equals(Object obj) {
|
|
if (this == obj) {
|
|
return true;
|
|
}
|
|
if (!(obj instanceof EmptySearchResults)) {
|
|
return false;
|
|
}
|
|
EmptySearchResults emptySearchResults = (EmptySearchResults) obj;
|
|
return m.areEqual(getSearchQuery(), emptySearchResults.getSearchQuery()) && m.areEqual(this.categoryItems, emptySearchResults.categoryItems);
|
|
}
|
|
|
|
public final List<StickerCategoryItem> getCategoryItems() {
|
|
return this.categoryItems;
|
|
}
|
|
|
|
@Override // com.discord.widgets.chat.input.sticker.StickerPickerViewModel.ViewState
|
|
public String getSearchQuery() {
|
|
return this.searchQuery;
|
|
}
|
|
|
|
public int hashCode() {
|
|
String searchQuery = getSearchQuery();
|
|
int i = 0;
|
|
int hashCode = (searchQuery != null ? searchQuery.hashCode() : 0) * 31;
|
|
List<StickerCategoryItem> list = this.categoryItems;
|
|
if (list != null) {
|
|
i = list.hashCode();
|
|
}
|
|
return hashCode + i;
|
|
}
|
|
|
|
public String toString() {
|
|
StringBuilder L = a.L("EmptySearchResults(searchQuery=");
|
|
L.append(getSearchQuery());
|
|
L.append(", categoryItems=");
|
|
return a.E(L, this.categoryItems, ")");
|
|
}
|
|
}
|
|
|
|
/* compiled from: StickerPickerViewModel.kt */
|
|
public static final class Phase1RolloutNotPremium extends ViewState {
|
|
private final List<Sticker> emptyStateStickers;
|
|
|
|
/* JADX INFO: super call moved to the top of the method (can break code semantics) */
|
|
public Phase1RolloutNotPremium(List<Sticker> list) {
|
|
super("", null);
|
|
m.checkNotNullParameter(list, "emptyStateStickers");
|
|
this.emptyStateStickers = list;
|
|
}
|
|
|
|
/* JADX DEBUG: Multi-variable search result rejected for r0v0, resolved type: com.discord.widgets.chat.input.sticker.StickerPickerViewModel$ViewState$Phase1RolloutNotPremium */
|
|
/* JADX WARN: Multi-variable type inference failed */
|
|
public static /* synthetic */ Phase1RolloutNotPremium copy$default(Phase1RolloutNotPremium phase1RolloutNotPremium, List list, int i, Object obj) {
|
|
if ((i & 1) != 0) {
|
|
list = phase1RolloutNotPremium.emptyStateStickers;
|
|
}
|
|
return phase1RolloutNotPremium.copy(list);
|
|
}
|
|
|
|
public final List<Sticker> component1() {
|
|
return this.emptyStateStickers;
|
|
}
|
|
|
|
public final Phase1RolloutNotPremium copy(List<Sticker> list) {
|
|
m.checkNotNullParameter(list, "emptyStateStickers");
|
|
return new Phase1RolloutNotPremium(list);
|
|
}
|
|
|
|
public boolean equals(Object obj) {
|
|
if (this != obj) {
|
|
return (obj instanceof Phase1RolloutNotPremium) && m.areEqual(this.emptyStateStickers, ((Phase1RolloutNotPremium) obj).emptyStateStickers);
|
|
}
|
|
return true;
|
|
}
|
|
|
|
public final List<Sticker> getEmptyStateStickers() {
|
|
return this.emptyStateStickers;
|
|
}
|
|
|
|
public int hashCode() {
|
|
List<Sticker> list = this.emptyStateStickers;
|
|
if (list != null) {
|
|
return list.hashCode();
|
|
}
|
|
return 0;
|
|
}
|
|
|
|
public String toString() {
|
|
return a.E(a.L("Phase1RolloutNotPremium(emptyStateStickers="), this.emptyStateStickers, ")");
|
|
}
|
|
}
|
|
|
|
/* compiled from: StickerPickerViewModel.kt */
|
|
public static final class Stickers extends ViewState {
|
|
private final List<StickerCategoryItem> categoryItems;
|
|
private final boolean isStickersSelectedTab;
|
|
private final String searchQuery;
|
|
private final List<MGRecyclerDataPayload> stickerItems;
|
|
|
|
/* JADX DEBUG: Multi-variable search result rejected for r3v0, resolved type: java.util.List<? extends com.discord.utilities.mg_recycler.MGRecyclerDataPayload> */
|
|
/* JADX DEBUG: Multi-variable search result rejected for r4v0, resolved type: java.util.List<? extends com.discord.widgets.chat.input.sticker.StickerCategoryItem> */
|
|
/* JADX WARN: Multi-variable type inference failed */
|
|
/* JADX INFO: super call moved to the top of the method (can break code semantics) */
|
|
public Stickers(String str, List<? extends MGRecyclerDataPayload> list, List<? extends StickerCategoryItem> list2, boolean z2) {
|
|
super(str, null);
|
|
m.checkNotNullParameter(str, "searchQuery");
|
|
m.checkNotNullParameter(list, "stickerItems");
|
|
m.checkNotNullParameter(list2, "categoryItems");
|
|
this.searchQuery = str;
|
|
this.stickerItems = list;
|
|
this.categoryItems = list2;
|
|
this.isStickersSelectedTab = z2;
|
|
}
|
|
|
|
/* JADX DEBUG: Multi-variable search result rejected for r0v0, resolved type: com.discord.widgets.chat.input.sticker.StickerPickerViewModel$ViewState$Stickers */
|
|
/* JADX WARN: Multi-variable type inference failed */
|
|
public static /* synthetic */ Stickers copy$default(Stickers stickers, String str, List list, List list2, boolean z2, int i, Object obj) {
|
|
if ((i & 1) != 0) {
|
|
str = stickers.getSearchQuery();
|
|
}
|
|
if ((i & 2) != 0) {
|
|
list = stickers.stickerItems;
|
|
}
|
|
if ((i & 4) != 0) {
|
|
list2 = stickers.categoryItems;
|
|
}
|
|
if ((i & 8) != 0) {
|
|
z2 = stickers.isStickersSelectedTab;
|
|
}
|
|
return stickers.copy(str, list, list2, z2);
|
|
}
|
|
|
|
public final String component1() {
|
|
return getSearchQuery();
|
|
}
|
|
|
|
public final List<MGRecyclerDataPayload> component2() {
|
|
return this.stickerItems;
|
|
}
|
|
|
|
public final List<StickerCategoryItem> component3() {
|
|
return this.categoryItems;
|
|
}
|
|
|
|
public final boolean component4() {
|
|
return this.isStickersSelectedTab;
|
|
}
|
|
|
|
public final Stickers copy(String str, List<? extends MGRecyclerDataPayload> list, List<? extends StickerCategoryItem> list2, boolean z2) {
|
|
m.checkNotNullParameter(str, "searchQuery");
|
|
m.checkNotNullParameter(list, "stickerItems");
|
|
m.checkNotNullParameter(list2, "categoryItems");
|
|
return new Stickers(str, list, list2, z2);
|
|
}
|
|
|
|
public boolean equals(Object obj) {
|
|
if (this == obj) {
|
|
return true;
|
|
}
|
|
if (!(obj instanceof Stickers)) {
|
|
return false;
|
|
}
|
|
Stickers stickers = (Stickers) obj;
|
|
return m.areEqual(getSearchQuery(), stickers.getSearchQuery()) && m.areEqual(this.stickerItems, stickers.stickerItems) && m.areEqual(this.categoryItems, stickers.categoryItems) && this.isStickersSelectedTab == stickers.isStickersSelectedTab;
|
|
}
|
|
|
|
public final List<StickerCategoryItem> getCategoryItems() {
|
|
return this.categoryItems;
|
|
}
|
|
|
|
@Override // com.discord.widgets.chat.input.sticker.StickerPickerViewModel.ViewState
|
|
public String getSearchQuery() {
|
|
return this.searchQuery;
|
|
}
|
|
|
|
public final List<MGRecyclerDataPayload> getStickerItems() {
|
|
return this.stickerItems;
|
|
}
|
|
|
|
public int hashCode() {
|
|
String searchQuery = getSearchQuery();
|
|
int i = 0;
|
|
int hashCode = (searchQuery != null ? searchQuery.hashCode() : 0) * 31;
|
|
List<MGRecyclerDataPayload> list = this.stickerItems;
|
|
int hashCode2 = (hashCode + (list != null ? list.hashCode() : 0)) * 31;
|
|
List<StickerCategoryItem> list2 = this.categoryItems;
|
|
if (list2 != null) {
|
|
i = list2.hashCode();
|
|
}
|
|
int i2 = (hashCode2 + i) * 31;
|
|
boolean z2 = this.isStickersSelectedTab;
|
|
if (z2) {
|
|
z2 = true;
|
|
}
|
|
int i3 = z2 ? 1 : 0;
|
|
int i4 = z2 ? 1 : 0;
|
|
int i5 = z2 ? 1 : 0;
|
|
return i2 + i3;
|
|
}
|
|
|
|
public final boolean isStickersSelectedTab() {
|
|
return this.isStickersSelectedTab;
|
|
}
|
|
|
|
public String toString() {
|
|
StringBuilder L = a.L("Stickers(searchQuery=");
|
|
L.append(getSearchQuery());
|
|
L.append(", stickerItems=");
|
|
L.append(this.stickerItems);
|
|
L.append(", categoryItems=");
|
|
L.append(this.categoryItems);
|
|
L.append(", isStickersSelectedTab=");
|
|
return a.G(L, this.isStickersSelectedTab, ")");
|
|
}
|
|
}
|
|
|
|
private ViewState(String str) {
|
|
this.searchQuery = str;
|
|
}
|
|
|
|
public /* synthetic */ ViewState(String str, DefaultConstructorMarker defaultConstructorMarker) {
|
|
this(str);
|
|
}
|
|
|
|
public String getSearchQuery() {
|
|
return this.searchQuery;
|
|
}
|
|
}
|
|
|
|
/* JADX INFO: super call moved to the top of the method (can break code semantics) */
|
|
public StickerPickerViewModel(BehaviorSubject<String> behaviorSubject, BehaviorSubject<Long> behaviorSubject2, Locale locale, MessageManager messageManager, StoreStickers storeStickers, long j, StoreChannels storeChannels, StoreChannelsSelected storeChannelsSelected, StorePermissions storePermissions, Observable<StoreState> observable) {
|
|
super(null);
|
|
m.checkNotNullParameter(behaviorSubject, "searchSubject");
|
|
m.checkNotNullParameter(behaviorSubject2, "selectedPackIdSubject");
|
|
m.checkNotNullParameter(locale, "locale");
|
|
m.checkNotNullParameter(messageManager, "messageManager");
|
|
m.checkNotNullParameter(storeStickers, "stickersStore");
|
|
m.checkNotNullParameter(storeChannels, "channelStore");
|
|
m.checkNotNullParameter(storeChannelsSelected, "channelSelectedStore");
|
|
m.checkNotNullParameter(storePermissions, "permissionStore");
|
|
m.checkNotNullParameter(observable, "storeStateObservable");
|
|
this.searchSubject = behaviorSubject;
|
|
this.selectedPackIdSubject = behaviorSubject2;
|
|
this.locale = locale;
|
|
this.messageManager = messageManager;
|
|
this.stickersStore = storeStickers;
|
|
this.initialStickerPackId = j;
|
|
this.channelStore = storeChannels;
|
|
this.channelSelectedStore = storeChannelsSelected;
|
|
this.permissionStore = storePermissions;
|
|
PublishSubject<Event> l0 = PublishSubject.l0();
|
|
m.checkNotNullExpressionValue(l0, "PublishSubject.create()");
|
|
this.eventSubject = l0;
|
|
this.stickerCountToDisplayForStore = 4;
|
|
storeStickers.fetchEnabledStickerDirectory();
|
|
Observable s2 = ObservableExtensionsKt.ui$default(ObservableExtensionsKt.computationLatest(observable), this, null, 2, null).s();
|
|
m.checkNotNullExpressionValue(s2, "storeStateObservable\n … .distinctUntilChanged()");
|
|
ObservableExtensionsKt.appSubscribe$default(s2, getClass(), (Context) null, (Function1) null, (Function1) null, (Function0) null, (Function0) null, new AnonymousClass1(this), 62, (Object) null);
|
|
}
|
|
|
|
/* JADX WARNING: Illegal instructions before constructor call */
|
|
public /* synthetic */ StickerPickerViewModel(BehaviorSubject behaviorSubject, BehaviorSubject behaviorSubject2, Locale locale, MessageManager messageManager, StoreStickers storeStickers, long j, StoreChannels storeChannels, StoreChannelsSelected storeChannelsSelected, StorePermissions storePermissions, Observable observable, int i, DefaultConstructorMarker defaultConstructorMarker) {
|
|
this(r1, r2, locale, messageManager, (i & 16) != 0 ? StoreStream.Companion.getStickers() : storeStickers, j, (i & 64) != 0 ? StoreStream.Companion.getChannels() : storeChannels, (i & 128) != 0 ? StoreStream.Companion.getChannelsSelected() : storeChannelsSelected, (i & 256) != 0 ? StoreStream.Companion.getPermissions() : storePermissions, (i & 512) != 0 ? Companion.observeStoreState$default(Companion, r1, r2, null, null, null, null, 60, null) : observable);
|
|
BehaviorSubject behaviorSubject3;
|
|
BehaviorSubject behaviorSubject4;
|
|
if ((i & 1) != 0) {
|
|
behaviorSubject3 = BehaviorSubject.m0("");
|
|
m.checkNotNullExpressionValue(behaviorSubject3, "BehaviorSubject.create(\"\")");
|
|
} else {
|
|
behaviorSubject3 = behaviorSubject;
|
|
}
|
|
if ((i & 2) != 0) {
|
|
behaviorSubject4 = BehaviorSubject.m0(null);
|
|
m.checkNotNullExpressionValue(behaviorSubject4, "BehaviorSubject.create(null as Long?)");
|
|
} else {
|
|
behaviorSubject4 = behaviorSubject2;
|
|
}
|
|
}
|
|
|
|
public static final /* synthetic */ void access$handleStoreState(StickerPickerViewModel stickerPickerViewModel, StoreState storeState) {
|
|
stickerPickerViewModel.handleStoreState(storeState);
|
|
}
|
|
|
|
/* JADX WARNING: Removed duplicated region for block: B:30:0x00a1 */
|
|
private final List<StickerCategoryItem> createEnabledCategoryItems(StoreState.Loaded loaded, List<? extends MGRecyclerDataPayload> list) {
|
|
boolean z2;
|
|
boolean z3;
|
|
ArrayList arrayList = new ArrayList();
|
|
Long selectedPackId = loaded.getSelectedPackId();
|
|
LinkedHashSet linkedHashSet = new LinkedHashSet();
|
|
if (loaded.getMeUser().getPremiumTier() != PremiumTier.TIER_2 || loaded.getEnabledStickerPacks().isEmpty()) {
|
|
return n.emptyList();
|
|
}
|
|
if (list == null) {
|
|
linkedHashSet.add(-1L);
|
|
for (ModelStickerPack modelStickerPack : loaded.getEnabledStickerPacks()) {
|
|
linkedHashSet.add(Long.valueOf(modelStickerPack.getId()));
|
|
}
|
|
} else {
|
|
for (MGRecyclerDataPayload mGRecyclerDataPayload : list) {
|
|
if (mGRecyclerDataPayload instanceof StickerItem) {
|
|
Sticker sticker = ((StickerItem) mGRecyclerDataPayload).getSticker();
|
|
List<Sticker> frequentlyUsedStickers = loaded.getFrequentlyUsedStickers();
|
|
if (!(frequentlyUsedStickers instanceof Collection) || !frequentlyUsedStickers.isEmpty()) {
|
|
Iterator<T> it = frequentlyUsedStickers.iterator();
|
|
while (true) {
|
|
if (!it.hasNext()) {
|
|
break;
|
|
}
|
|
if (((Sticker) it.next()).getId() == sticker.getId()) {
|
|
z3 = true;
|
|
continue;
|
|
} else {
|
|
z3 = false;
|
|
continue;
|
|
}
|
|
if (z3) {
|
|
z2 = true;
|
|
break;
|
|
}
|
|
}
|
|
if (z2) {
|
|
linkedHashSet.add(-1L);
|
|
}
|
|
Long h = sticker.h();
|
|
m.checkNotNull(h);
|
|
linkedHashSet.add(h);
|
|
}
|
|
z2 = false;
|
|
if (z2) {
|
|
}
|
|
Long h = sticker.h();
|
|
m.checkNotNull(h);
|
|
linkedHashSet.add(h);
|
|
}
|
|
}
|
|
}
|
|
int size = (loaded.getFrequentlyUsedStickers().isEmpty() ? 0 : loaded.getFrequentlyUsedStickers().size() + 1) + 0;
|
|
if ((!loaded.getFrequentlyUsedStickers().isEmpty()) && linkedHashSet.contains(-1L)) {
|
|
arrayList.add(new StickerCategoryItem.RecentItem(selectedPackId != null && selectedPackId.longValue() == -1, new Pair(0, Integer.valueOf(size))));
|
|
}
|
|
for (ModelStickerPack modelStickerPack2 : loaded.getEnabledStickerPacks()) {
|
|
boolean z4 = selectedPackId != null && selectedPackId.longValue() == modelStickerPack2.getId();
|
|
int size2 = modelStickerPack2.getStickers().size() + 1 + size;
|
|
if (linkedHashSet.contains(Long.valueOf(modelStickerPack2.getId()))) {
|
|
arrayList.add(new StickerCategoryItem.PackItem(modelStickerPack2, new Pair(Integer.valueOf(size), Integer.valueOf(size2)), z4));
|
|
}
|
|
size = size2;
|
|
}
|
|
return arrayList;
|
|
}
|
|
|
|
@MainThread
|
|
private final void handleStoreState(StoreState storeState) {
|
|
if (storeState instanceof StoreState.Loaded) {
|
|
StoreState.Loaded loaded = (StoreState.Loaded) storeState;
|
|
Long valueOf = loaded.getSelectedPackId() == null ? Long.valueOf(this.initialStickerPackId) : null;
|
|
handleStoreStateForEnabledPage(loaded);
|
|
scrollToPackId(valueOf);
|
|
}
|
|
}
|
|
|
|
private final void handleStoreStateForEnabledPage(StoreState.Loaded loaded) {
|
|
List<ModelStickerPack> enabledStickerPacks = loaded.getEnabledStickerPacks();
|
|
int stickerAnimationSettings = loaded.getStickerAnimationSettings();
|
|
String searchInputStringUpper = loaded.getSearchInputStringUpper();
|
|
Locale locale = this.locale;
|
|
Objects.requireNonNull(searchInputStringUpper, "null cannot be cast to non-null type java.lang.String");
|
|
String lowerCase = searchInputStringUpper.toLowerCase(locale);
|
|
m.checkNotNullExpressionValue(lowerCase, "(this as java.lang.String).toLowerCase(locale)");
|
|
List<Sticker> frequentlyUsedStickers = loaded.getFrequentlyUsedStickers();
|
|
ArrayList arrayList = new ArrayList();
|
|
boolean z2 = true;
|
|
if (!frequentlyUsedStickers.isEmpty()) {
|
|
for (Sticker sticker : frequentlyUsedStickers) {
|
|
String g = sticker.g();
|
|
Locale locale2 = this.locale;
|
|
Objects.requireNonNull(g, "null cannot be cast to non-null type java.lang.String");
|
|
String lowerCase2 = g.toLowerCase(locale2);
|
|
m.checkNotNullExpressionValue(lowerCase2, "(this as java.lang.String).toLowerCase(locale)");
|
|
if (!w.contains$default((CharSequence) lowerCase2, (CharSequence) lowerCase, false, 2, (Object) null)) {
|
|
String i = sticker.i();
|
|
Locale locale3 = this.locale;
|
|
Objects.requireNonNull(i, "null cannot be cast to non-null type java.lang.String");
|
|
String lowerCase3 = i.toLowerCase(locale3);
|
|
m.checkNotNullExpressionValue(lowerCase3, "(this as java.lang.String).toLowerCase(locale)");
|
|
if (w.contains$default((CharSequence) lowerCase3, (CharSequence) lowerCase, false, 2, (Object) null)) {
|
|
}
|
|
}
|
|
arrayList.add(new StickerItem(sticker, stickerAnimationSettings, StickerItem.Mode.OWNED));
|
|
}
|
|
if (!arrayList.isEmpty()) {
|
|
arrayList.add(0, new HeaderItem(HeaderType.Recent.INSTANCE));
|
|
}
|
|
}
|
|
for (ModelStickerPack modelStickerPack : enabledStickerPacks) {
|
|
arrayList.addAll(Companion.access$buildStickerListItems(Companion, modelStickerPack, lowerCase, stickerAnimationSettings, this.locale));
|
|
}
|
|
List<StickerCategoryItem> createEnabledCategoryItems = createEnabledCategoryItems(loaded, arrayList);
|
|
if (loaded.getMeUser().getPremiumTier() != PremiumTier.TIER_2) {
|
|
updateViewState(new ViewState.Phase1RolloutNotPremium(n.listOfNotNull((Object[]) new Sticker[]{this.stickersStore.getStickers().get(781323769960202280L), this.stickersStore.getStickers().get(809209266556764241L), this.stickersStore.getStickers().get(818597810047680532L), this.stickersStore.getStickers().get(819129296374595614L)})));
|
|
return;
|
|
}
|
|
if (arrayList.isEmpty()) {
|
|
if (lowerCase.length() <= 0) {
|
|
z2 = false;
|
|
}
|
|
if (z2) {
|
|
updateViewState(new ViewState.EmptySearchResults(loaded.getSearchInputStringUpper(), createEnabledCategoryItems));
|
|
return;
|
|
}
|
|
}
|
|
updateViewState(new ViewState.Stickers(loaded.getSearchInputStringUpper(), arrayList, createEnabledCategoryItems, loaded.isStickersSelectedTab()));
|
|
}
|
|
|
|
public final Observable<Event> observeEvents() {
|
|
return this.eventSubject;
|
|
}
|
|
|
|
public final void onStickerSelected(Sticker sticker) {
|
|
long id2;
|
|
Channel findChannelByIdInternal$app_productionBetaRelease;
|
|
m.checkNotNullParameter(sticker, "sticker");
|
|
if ((getViewState() instanceof ViewState.Stickers) && (findChannelByIdInternal$app_productionBetaRelease = this.channelStore.findChannelByIdInternal$app_productionBetaRelease((id2 = this.channelSelectedStore.getId()))) != null) {
|
|
if (PermissionUtils.INSTANCE.hasAccessWrite(findChannelByIdInternal$app_productionBetaRelease, this.permissionStore.getPermissionsByChannel().get(Long.valueOf(id2)))) {
|
|
this.stickersStore.onStickerUsed(sticker);
|
|
MessageManager.sendMessage$default(this.messageManager, null, null, null, null, d0.t.m.listOf(sticker), false, null, null, null, 495, null);
|
|
this.searchSubject.onNext("");
|
|
}
|
|
}
|
|
}
|
|
|
|
public final void scrollToPackId(Long l) {
|
|
ViewState viewState = getViewState();
|
|
if (!(viewState instanceof ViewState.Stickers)) {
|
|
viewState = null;
|
|
}
|
|
ViewState.Stickers stickers = (ViewState.Stickers) viewState;
|
|
if (stickers != null && l != null) {
|
|
l.longValue();
|
|
int size = stickers.getStickerItems().size();
|
|
int i = 0;
|
|
int i2 = 0;
|
|
while (true) {
|
|
if (i2 >= size) {
|
|
break;
|
|
}
|
|
MGRecyclerDataPayload mGRecyclerDataPayload = stickers.getStickerItems().get(i2);
|
|
if (mGRecyclerDataPayload instanceof HeaderItem) {
|
|
HeaderItem headerItem = (HeaderItem) mGRecyclerDataPayload;
|
|
if ((headerItem.getHeaderType() instanceof HeaderType.PackItem) && ((HeaderType.PackItem) headerItem.getHeaderType()).getPack().getId() == l.longValue()) {
|
|
i = i2;
|
|
break;
|
|
}
|
|
}
|
|
i2++;
|
|
}
|
|
PublishSubject<Event> publishSubject = this.eventSubject;
|
|
publishSubject.j.onNext(new Event.ScrollToStickerItemPosition(i));
|
|
}
|
|
}
|
|
|
|
public final void setSearchText(String str) {
|
|
m.checkNotNullParameter(str, "searchText");
|
|
this.searchSubject.onNext(str);
|
|
}
|
|
|
|
public final void setSelectedPackId(long j) {
|
|
this.selectedPackIdSubject.onNext(Long.valueOf(j));
|
|
}
|
|
|
|
public final void setStickerCountToDisplayForStore(int i) {
|
|
this.stickerCountToDisplayForStore = i;
|
|
}
|
|
}
|