package com.discord.utilities.dsti; import android.content.Context; import c.a.l.b; import c.d.b.a.a; import com.airbnb.lottie.parser.AnimatableValueParser; import com.discord.api.channel.Channel; import com.discord.api.premium.PremiumTier; import com.discord.api.sticker.BaseSticker; import com.discord.api.sticker.Sticker; import com.discord.api.sticker.StickerFormatType; import com.discord.api.sticker.StickerType; import com.discord.app.AppLog; import com.discord.models.domain.ModelSku; import com.discord.models.sticker.dto.ModelStickerPack; import com.discord.models.sticker.dto.ModelStickerPackStoreListing; import com.discord.models.user.User; import com.discord.stores.StoreGuildSelected; import com.discord.stores.StoreGuildStickers; import com.discord.stores.StoreGuilds; import com.discord.stores.StoreStickers; import com.discord.stores.StoreStream; import com.discord.stores.StoreUser; import com.discord.utilities.billing.PremiumUtilsKt; import com.discord.utilities.file.DownloadUtils; import com.discord.utilities.icon.IconUtils; import com.discord.utilities.logging.Logger; import com.discord.utilities.permissions.PermissionUtils; import com.discord.utilities.premium.PremiumUtils; import com.discord.utilities.resources.StringResourceUtilsKt; import com.discord.utilities.rest.RestAPI; import com.discord.utilities.rx.ObservableExtensionsKt; import com.discord.utilities.search.SearchUtils; import com.discord.utilities.string.StringUtilsKt; import com.discord.utilities.time.ClockFactory; import com.discord.utilities.time.TimeUtils; import com.discord.utilities.user.UserUtils; import d0.g; import d0.g0.t; import d0.g0.w; import d0.t.m0; import d0.t.n; import d0.t.n0; import d0.t.o; import d0.t.u; import d0.z.d.m; import j0.l.e.j; import java.io.File; import java.util.ArrayList; import java.util.Collection; import java.util.LinkedHashSet; import java.util.List; import java.util.Map; import java.util.Objects; import java.util.Set; import kotlin.Lazy; import org.json.JSONException; import org.json.JSONObject; import rx.Observable; /* compiled from: StickerUtils.kt */ public final class StickerUtils { private static final Lazy DEFAULT_STICKER_SIZE_PX$delegate = g.lazy(StickerUtils$DEFAULT_STICKER_SIZE_PX$2.INSTANCE); public static final StickerUtils INSTANCE = new StickerUtils(); public static final int MAXIMUM_LENGTH_STICKER_TEXT_SUGGESTIONS = 50; private static final int MAXIMUM_WORD_COUNT_STICKER_TEXT_SUGGESTIONS = 5; public static final int MINIMUM_LENGTH_STICKER_TEXT_SUGGESTIONS = 3; public static final int NUM_STICKERS_AUTO_SUGGEST = 4; private static final long STICKER_APPLICATION_ID = 710982414301790216L; /* compiled from: StickerUtils.kt */ public enum StickerSendability { SENDABLE, SENDABLE_WITH_PREMIUM, SENDABLE_WITH_PREMIUM_GUILD, NONSENDABLE } public final /* synthetic */ class WhenMappings { public static final /* synthetic */ int[] $EnumSwitchMapping$0; public static final /* synthetic */ int[] $EnumSwitchMapping$1; static { StickerFormatType.values(); int[] iArr = new int[4]; $EnumSwitchMapping$0 = iArr; iArr[StickerFormatType.LOTTIE.ordinal()] = 1; iArr[StickerFormatType.APNG.ordinal()] = 2; iArr[StickerFormatType.PNG.ordinal()] = 3; PremiumTier.values(); int[] iArr2 = new int[4]; $EnumSwitchMapping$1 = iArr2; iArr2[PremiumTier.TIER_2.ordinal()] = 1; } } private StickerUtils() { } public static /* synthetic */ Set findStickerMatches$default(StickerUtils stickerUtils, String str, List list, boolean z2, int i, Object obj) { if ((i & 4) != 0) { z2 = false; } return stickerUtils.findStickerMatches(str, list, z2); } public static /* synthetic */ String getBannerCDNAssetUrl$default(StickerUtils stickerUtils, ModelStickerPack modelStickerPack, Integer num, int i, Object obj) { if ((i & 2) != 0) { num = null; } return stickerUtils.getBannerCDNAssetUrl(modelStickerPack, num); } public static /* synthetic */ String getCDNAssetUrl$default(StickerUtils stickerUtils, BaseSticker baseSticker, Integer num, boolean z2, int i, Object obj) { if ((i & 2) != 0) { num = null; } if ((i & 4) != 0) { z2 = true; } return stickerUtils.getCDNAssetUrl(baseSticker, num, z2); } public static /* synthetic */ Observable getGuildOrStandardSticker$default(StickerUtils stickerUtils, long j, boolean z2, int i, Object obj) { if ((i & 2) != 0) { z2 = false; } return stickerUtils.getGuildOrStandardSticker(j, z2); } private final int getStickerPackPrice(PremiumTier premiumTier) { return premiumTier.ordinal() != 3 ? 299 : 199; } private final Integer getStickerPackPriceForPremiumTier(ModelStickerPack modelStickerPack, PremiumTier premiumTier) { ModelSku sku; ModelSku.Price price; ModelSku.ModelPremiumSkuPrice modelPremiumSkuPrice; ModelStickerPackStoreListing storeListing = modelStickerPack.getStoreListing(); if (storeListing == null || (sku = storeListing.getSku()) == null || (price = sku.getPrice()) == null) { return null; } Map premium = price.getPremium(); return Integer.valueOf((premium == null || (modelPremiumSkuPrice = premium.get(premiumTier)) == null) ? price.getAmount() : modelPremiumSkuPrice.getAmount()); } public static /* synthetic */ StickerSendability getStickerSendability$default(StickerUtils stickerUtils, Sticker sticker, User user, Channel channel, Long l, int i, Object obj) { if ((i & 4) != 0) { channel = null; } if ((i & 8) != 0) { l = null; } return stickerUtils.getStickerSendability(sticker, user, channel, l); } public static /* synthetic */ List getStickersForAutocomplete$default(StickerUtils stickerUtils, StoreUser storeUser, StoreGuilds storeGuilds, StoreStickers storeStickers, StoreGuildSelected storeGuildSelected, StoreGuildStickers storeGuildStickers, int i, Object obj) { if ((i & 1) != 0) { storeUser = StoreStream.Companion.getUsers(); } if ((i & 2) != 0) { storeGuilds = StoreStream.Companion.getGuilds(); } if ((i & 4) != 0) { storeStickers = StoreStream.Companion.getStickers(); } if ((i & 8) != 0) { storeGuildSelected = StoreStream.Companion.getGuildSelected(); } if ((i & 16) != 0) { storeGuildStickers = StoreStream.Companion.getGuildStickers(); } return stickerUtils.getStickersForAutocomplete(storeUser, storeGuilds, storeStickers, storeGuildSelected, storeGuildStickers); } public final int calculatePremiumStickerPackDiscount() { int stickerPackPrice = getStickerPackPrice(PremiumTier.PREMIUM_GUILD_SUBSCRIPTION_ONLY); return (int) ((((float) (stickerPackPrice - getStickerPackPrice(PremiumTier.TIER_2))) * 100.0f) / ((float) stickerPackPrice)); } public final Observable fetchSticker(Context context, BaseSticker baseSticker) { m.checkNotNullParameter(context, "context"); m.checkNotNullParameter(baseSticker, "sticker"); File file = new File(context.getCacheDir(), "stickers"); if (!file.exists()) { file.mkdir(); } String str = baseSticker.c() + baseSticker.b(); File file2 = new File(file, str); if (!file2.exists()) { return DownloadUtils.downloadFile(context, getCDNAssetUrl$default(this, baseSticker, null, false, 6, null), str, file); } j jVar = new j(new DownloadUtils.DownloadState.Completed(file2)); m.checkNotNullExpressionValue(jVar, "Observable.just(Download…oadState.Completed(file))"); return jVar; } public final Set findStickerMatches(String str, List list, boolean z2) { Sticker sticker; m.checkNotNullParameter(str, "searchText"); m.checkNotNullParameter(list, "stickers"); if (str.length() == 0) { return n0.emptySet(); } LinkedHashSet linkedHashSet = new LinkedHashSet(); LinkedHashSet linkedHashSet2 = new LinkedHashSet(); LinkedHashSet linkedHashSet3 = new LinkedHashSet(); LinkedHashSet linkedHashSet4 = new LinkedHashSet(); LinkedHashSet linkedHashSet5 = new LinkedHashSet(); Set queriesFromSearchText = SearchUtils.INSTANCE.getQueriesFromSearchText(str); if (queriesFromSearchText.size() > 5) { return n0.emptySet(); } for (String str2 : queriesFromSearchText) { for (Sticker sticker2 : list) { if (t.equals(sticker2.h(), str2, true)) { linkedHashSet2.add(sticker2); } else if (z2 && t.startsWith(sticker2.h(), str2, true)) { linkedHashSet3.add(sticker2); } List split$default = w.split$default((CharSequence) sticker2.j(), new String[]{","}, false, 0, 6, (Object) null); ArrayList arrayList = new ArrayList(o.collectionSizeOrDefault(split$default, 10)); for (String str3 : split$default) { Objects.requireNonNull(str3, "null cannot be cast to non-null type kotlin.CharSequence"); arrayList.add(w.trim(str3).toString()); } ArrayList arrayList2 = new ArrayList(); for (Object obj : arrayList) { if (!t.isBlank((String) obj)) { arrayList2.add(obj); } } Sticker sticker3 = sticker2; String replace$default = t.replace$default(str2, ":", "", false, 4, (Object) null); for (String str4 : arrayList2) { if (t.equals(str4, replace$default, true)) { sticker = sticker3; linkedHashSet4.add(sticker); } else { sticker = sticker3; if (z2 && t.startsWith(str4, replace$default, true)) { linkedHashSet5.add(sticker); } } sticker3 = sticker; } } } linkedHashSet.addAll(linkedHashSet2); linkedHashSet.addAll(linkedHashSet3); linkedHashSet.addAll(linkedHashSet4); linkedHashSet.addAll(linkedHashSet5); return linkedHashSet; } public final String getBannerCDNAssetUrl(ModelStickerPack modelStickerPack, Integer num) { String str; m.checkNotNullParameter(modelStickerPack, "stickerPack"); StringBuilder sb = new StringBuilder(); sb.append("https://cdn.discordapp.com/app-assets/710982414301790216/store/"); sb.append(modelStickerPack.getBannerAssetId()); sb.append('.'); sb.append(StringUtilsKt.getSTATIC_IMAGE_EXTENSION()); if (num != null) { StringBuilder L = a.L("?size="); L.append(IconUtils.getMediaProxySize(num.intValue())); str = L.toString(); } else { str = ""; } sb.append(str); return sb.toString(); } public final String getCDNAssetUrl(BaseSticker baseSticker, Integer num, boolean z2) { m.checkNotNullParameter(baseSticker, "sticker"); int ordinal = baseSticker.a().ordinal(); String str = ""; if (ordinal == 1 || ordinal == 2) { StringBuilder L = a.L("https://media.discordapp.net/stickers/"); L.append(baseSticker.c()); L.append(baseSticker.b()); L.append("?passthrough="); L.append(z2); if (num != null) { StringBuilder L2 = a.L("&size="); L2.append(IconUtils.getMediaProxySize(num.intValue())); str = L2.toString(); } L.append(str); return L.toString(); } else if (ordinal != 3) { return str; } else { StringBuilder L3 = a.L("https://discord.com/stickers/"); L3.append(baseSticker.c()); L3.append(baseSticker.b()); return L3.toString(); } } public final int getDEFAULT_STICKER_SIZE_PX() { return ((Number) DEFAULT_STICKER_SIZE_PX$delegate.getValue()).intValue(); } public final Observable getGuildOrStandardSticker(long j, boolean z2) { StoreStream.Companion companion = StoreStream.Companion; Sticker sticker = companion.getStickers().getStickers().get(Long.valueOf(j)); if (sticker != null) { j jVar = new j(sticker); m.checkNotNullExpressionValue(jVar, "Observable.just(fullStandardSticker)"); return jVar; } Sticker guildSticker = companion.getGuildStickers().getGuildSticker(j); if (guildSticker != null) { j jVar2 = new j(guildSticker); m.checkNotNullExpressionValue(jVar2, "Observable.just(fullGuildSticker)"); return jVar2; } else if (!z2) { j jVar3 = new j(null); m.checkNotNullExpressionValue(jVar3, "Observable.just(null)"); return jVar3; } else { Observable t = ObservableExtensionsKt.restSubscribeOn$default(RestAPI.Companion.getApi().getSticker(j), false, 1, null).t(StickerUtils$getGuildOrStandardSticker$1.INSTANCE); m.checkNotNullExpressionValue(t, "RestAPI\n .api\n …fetchedSticker)\n }"); return t; } } public final CharSequence getLimitedTimeLeftString(Context context, ModelStickerPackStoreListing modelStickerPackStoreListing) { m.checkNotNullParameter(context, "context"); if ((modelStickerPackStoreListing != null ? modelStickerPackStoreListing.getUnpublishedAt() : null) == null) { return ""; } long unpublishedAtDate = modelStickerPackStoreListing.getUnpublishedAtDate() - ClockFactory.get().currentTimeMillis(); TimeUtils timeUtils = TimeUtils.INSTANCE; int daysFromMillis = timeUtils.getDaysFromMillis(unpublishedAtDate); if (daysFromMillis > 0) { return StringResourceUtilsKt.getI18nPluralString(context, 2131755063, daysFromMillis, Integer.valueOf(daysFromMillis)); } int hoursFromMillis = timeUtils.getHoursFromMillis(unpublishedAtDate); long j = unpublishedAtDate - (((long) hoursFromMillis) * 3600000); int minutesFromMillis = timeUtils.getMinutesFromMillis(j); int secondsFromMillis = timeUtils.getSecondsFromMillis(j - (((long) minutesFromMillis) * 60000)); return (hoursFromMillis < 0 || minutesFromMillis < 0 || secondsFromMillis < 0) ? b.g(context, 2131893628, new Object[0], null, 4) : b.g(context, 2131888189, new Object[]{a.H(new Object[]{Integer.valueOf(hoursFromMillis)}, 1, "%02d", "java.lang.String.format(format, *args)"), a.H(new Object[]{Integer.valueOf(minutesFromMillis)}, 1, "%02d", "java.lang.String.format(format, *args)"), a.H(new Object[]{Integer.valueOf(secondsFromMillis)}, 1, "%02d", "java.lang.String.format(format, *args)")}, null, 4); } public final CharSequence getStickerPackPremiumPriceLabel(Context context, ModelStickerPack modelStickerPack, PremiumTier premiumTier, boolean z2) { m.checkNotNullParameter(context, "context"); m.checkNotNullParameter(modelStickerPack, "stickerPack"); m.checkNotNullParameter(premiumTier, "currentPremiumTier"); if (z2 && premiumTier != PremiumTier.TIER_2) { return b.g(context, 2131893610, new Object[0], null, 4); } PremiumTier premiumTier2 = PremiumTier.PREMIUM_GUILD_SUBSCRIPTION_ONLY; if (premiumTier != premiumTier2) { Integer stickerPackPriceForPremiumTier = getStickerPackPriceForPremiumTier(modelStickerPack, premiumTier2); Integer stickerPackPriceForPremiumTier2 = getStickerPackPriceForPremiumTier(modelStickerPack, premiumTier); if (!(stickerPackPriceForPremiumTier == null || stickerPackPriceForPremiumTier2 == null || !(!m.areEqual(stickerPackPriceForPremiumTier, stickerPackPriceForPremiumTier2)))) { CharSequence formattedPriceUsd = PremiumUtilsKt.getFormattedPriceUsd(stickerPackPriceForPremiumTier.intValue(), context); return stickerPackPriceForPremiumTier2.intValue() == 0 ? b.a(context, 2131893617, new Object[]{formattedPriceUsd}, new StickerUtils$getStickerPackPremiumPriceLabel$1(context)) : b.a(context, 2131893618, new Object[]{PremiumUtilsKt.getFormattedPriceUsd(stickerPackPriceForPremiumTier2.intValue(), context), formattedPriceUsd}, new StickerUtils$getStickerPackPremiumPriceLabel$2(context)); } } if (isStickerPackFreeForPremiumTier(modelStickerPack, premiumTier)) { return b.g(context, 2131893611, new Object[0], null, 4); } PremiumTier premiumTier3 = PremiumTier.TIER_1; if (isStickerPackFreeForPremiumTier(modelStickerPack, premiumTier3) && !PremiumUtils.INSTANCE.isPremiumTierAtLeast(premiumTier, premiumTier3)) { return b.g(context, 2131893612, new Object[0], null, 4); } PremiumTier premiumTier4 = PremiumTier.TIER_2; if (isStickerPackFreeForPremiumTier(modelStickerPack, premiumTier4) && !PremiumUtils.INSTANCE.isPremiumTierAtLeast(premiumTier, premiumTier4)) { return b.g(context, 2131893613, new Object[0], null, 4); } CharSequence formattedPriceUsd2 = PremiumUtilsKt.getFormattedPriceUsd(getStickerPackPrice(premiumTier4), context); return premiumTier == premiumTier4 ? formattedPriceUsd2 : b.g(context, 2131893632, new Object[]{formattedPriceUsd2}, null, 4); } public final StickerSendability getStickerSendability(Sticker sticker, User user, Channel channel, Long l) { m.checkNotNullParameter(sticker, "sticker"); m.checkNotNullParameter(user, "meUser"); boolean z2 = user.getPremiumTier() == PremiumTier.TIER_2; if (sticker.k() == StickerType.STANDARD) { return z2 ? StickerSendability.SENDABLE : StickerSendability.SENDABLE_WITH_PREMIUM; } if (sticker.k() != StickerType.GUILD) { return StickerSendability.NONSENDABLE; } if (m.areEqual(sticker.e(), Boolean.FALSE)) { return StickerSendability.SENDABLE_WITH_PREMIUM_GUILD; } return m.areEqual(sticker.g(), channel != null ? Long.valueOf(channel.f()) : null) ? StickerSendability.SENDABLE : (channel == null || AnimatableValueParser.s1(channel) || PermissionUtils.can(262144, l)) ? z2 ? StickerSendability.SENDABLE : StickerSendability.SENDABLE_WITH_PREMIUM : StickerSendability.NONSENDABLE; } public final List getStickersForAutocomplete(StoreUser storeUser, StoreGuilds storeGuilds, StoreStickers storeStickers, StoreGuildSelected storeGuildSelected, StoreGuildStickers storeGuildStickers) { m.checkNotNullParameter(storeUser, "storeUser"); m.checkNotNullParameter(storeGuilds, "storeGuilds"); m.checkNotNullParameter(storeStickers, "storeStickers"); m.checkNotNullParameter(storeGuildSelected, "storeGuildSelected"); m.checkNotNullParameter(storeGuildStickers, "storeGuildStickers"); boolean isPremiumTier2 = UserUtils.INSTANCE.isPremiumTier2(storeUser.getMe()); List enabledStickers = isPremiumTier2 ? storeStickers.getEnabledStickers() : n.emptyList(); Set keySet = isPremiumTier2 ? storeGuilds.getGuilds().keySet() : m0.setOf(Long.valueOf(storeGuildSelected.getSelectedGuildId())); List allGuildStickersFlattened = storeGuildStickers.getAllGuildStickersFlattened(); ArrayList arrayList = new ArrayList(); for (Object obj : allGuildStickersFlattened) { if (u.contains(keySet, ((Sticker) obj).g())) { arrayList.add(obj); } } return u.plus((Collection) enabledStickers, (Iterable) arrayList); } public final boolean isStickerPackFreeForPremiumTier(ModelStickerPack modelStickerPack, PremiumTier premiumTier) { m.checkNotNullParameter(modelStickerPack, "stickerPack"); m.checkNotNullParameter(premiumTier, "premiumTier"); boolean z2 = premiumTier == PremiumTier.TIER_2 && modelStickerPack.isPremiumPack(); Integer stickerPackPriceForPremiumTier = getStickerPackPriceForPremiumTier(modelStickerPack, premiumTier); return z2 || (stickerPackPriceForPremiumTier != null && stickerPackPriceForPremiumTier.intValue() == 0); } public final Sticker parseFromMessageNotificationJson(String str) { if (str == null) { return null; } try { JSONObject jSONObject = new JSONObject(str).getJSONArray("stickers").getJSONObject(0); m.checkNotNullExpressionValue(jSONObject, "JSONObject(data).getJSON…ickers\").getJSONObject(0)"); try { long parseLong = Long.parseLong(jSONObject.get("id").toString()); Long valueOf = Long.valueOf(Long.parseLong(jSONObject.get("pack_id").toString())); String string = jSONObject.getString("name"); m.checkNotNullExpressionValue(string, "jsonSticker.getString(\"name\")"); String string2 = jSONObject.getString("description"); m.checkNotNullExpressionValue(string2, "jsonSticker.getString(\"description\")"); return new Sticker(parseLong, valueOf, Long.valueOf(Long.parseLong(jSONObject.get("guild_id").toString())), string, string2, StickerFormatType.Companion.a(Integer.parseInt(jSONObject.get("format_type").toString())), jSONObject.has("tags") ? jSONObject.get("tags").toString() : "", StickerType.Companion.a(Integer.parseInt(jSONObject.get("type").toString())), null, 256); } catch (JSONException e) { Logger.e$default(AppLog.g, "Error parsing sticker from notification", e, null, 4, null); return null; } } catch (JSONException unused) { return null; } } }