87 lines
4.2 KiB
Java
87 lines
4.2 KiB
Java
package com.discord.widgets.guild_role_subscriptions;
|
|
|
|
import com.discord.api.guild.GuildFeature;
|
|
import com.discord.models.experiments.domain.Experiment;
|
|
import com.discord.models.guild.Guild;
|
|
import com.discord.stores.StoreExperiments;
|
|
import com.discord.stores.StoreGuilds;
|
|
import com.discord.stores.StoreStream;
|
|
import com.discord.stores.updates.ObservationDeck;
|
|
import com.discord.stores.updates.ObservationDeckProvider;
|
|
import d0.g;
|
|
import d0.z.d.m;
|
|
import kotlin.Lazy;
|
|
import kotlin.jvm.internal.DefaultConstructorMarker;
|
|
import rx.Observable;
|
|
/* compiled from: GuildRoleSubscriptionsFeatureFlag.kt */
|
|
public final class GuildRoleSubscriptionsFeatureFlag {
|
|
public static final Companion Companion = new Companion(null);
|
|
private static final Lazy INSTANCE$delegate = g.lazy(GuildRoleSubscriptionsFeatureFlag$Companion$INSTANCE$2.INSTANCE);
|
|
private final ObservationDeck observationDeck;
|
|
private final StoreExperiments storeExperiments;
|
|
private final StoreGuilds storeGuilds;
|
|
|
|
/* compiled from: GuildRoleSubscriptionsFeatureFlag.kt */
|
|
public static final class Companion {
|
|
private Companion() {
|
|
}
|
|
|
|
public /* synthetic */ Companion(DefaultConstructorMarker defaultConstructorMarker) {
|
|
this();
|
|
}
|
|
|
|
public final GuildRoleSubscriptionsFeatureFlag getINSTANCE() {
|
|
Lazy access$getINSTANCE$cp = GuildRoleSubscriptionsFeatureFlag.access$getINSTANCE$cp();
|
|
Companion companion = GuildRoleSubscriptionsFeatureFlag.Companion;
|
|
return (GuildRoleSubscriptionsFeatureFlag) access$getINSTANCE$cp.getValue();
|
|
}
|
|
}
|
|
|
|
public GuildRoleSubscriptionsFeatureFlag() {
|
|
this(null, null, null, 7, null);
|
|
}
|
|
|
|
public GuildRoleSubscriptionsFeatureFlag(StoreExperiments storeExperiments, StoreGuilds storeGuilds, ObservationDeck observationDeck) {
|
|
m.checkNotNullParameter(storeExperiments, "storeExperiments");
|
|
m.checkNotNullParameter(storeGuilds, "storeGuilds");
|
|
m.checkNotNullParameter(observationDeck, "observationDeck");
|
|
this.storeExperiments = storeExperiments;
|
|
this.storeGuilds = storeGuilds;
|
|
this.observationDeck = observationDeck;
|
|
}
|
|
|
|
/* JADX INFO: this call moved to the top of the method (can break code semantics) */
|
|
public /* synthetic */ GuildRoleSubscriptionsFeatureFlag(StoreExperiments storeExperiments, StoreGuilds storeGuilds, ObservationDeck observationDeck, int i, DefaultConstructorMarker defaultConstructorMarker) {
|
|
this((i & 1) != 0 ? StoreStream.Companion.getExperiments() : storeExperiments, (i & 2) != 0 ? StoreStream.Companion.getGuilds() : storeGuilds, (i & 4) != 0 ? ObservationDeckProvider.get() : observationDeck);
|
|
}
|
|
|
|
public static final /* synthetic */ Lazy access$getINSTANCE$cp() {
|
|
return INSTANCE$delegate;
|
|
}
|
|
|
|
private final boolean canUserCreateRoleSubscriptions() {
|
|
Experiment userExperiment = this.storeExperiments.getUserExperiment("2021-08_guild_role_subscription_users", false);
|
|
return userExperiment != null && userExperiment.getBucket() == 1;
|
|
}
|
|
|
|
public final boolean canGuildCreateRoleSubscriptions(long j) {
|
|
Experiment guildExperiment = this.storeExperiments.getGuildExperiment("2021-06_guild_role_subscriptions", j, false);
|
|
return guildExperiment != null && guildExperiment.getBucket() == 1;
|
|
}
|
|
|
|
public final boolean canGuildSeePremiumMemberships(long j) {
|
|
Guild guild;
|
|
return isGuildEligibleForRoleSubscriptions(j) && (guild = this.storeGuilds.getGuild(j)) != null && guild.hasFeature(GuildFeature.ROLE_SUBSCRIPTIONS_AVAILABLE_FOR_PURCHASE);
|
|
}
|
|
|
|
public final boolean isGuildEligibleForRoleSubscriptions(long j) {
|
|
return canGuildCreateRoleSubscriptions(j) && canUserCreateRoleSubscriptions();
|
|
}
|
|
|
|
public final Observable<Boolean> observeIsGuildEligibleForRoleSubscriptions(long j) {
|
|
Observable<Boolean> q = ObservationDeck.connectRx$default(this.observationDeck, new ObservationDeck.UpdateSource[]{this.storeExperiments}, false, null, null, new GuildRoleSubscriptionsFeatureFlag$observeIsGuildEligibleForRoleSubscriptions$1(this, j), 14, null).q();
|
|
m.checkNotNullExpressionValue(q, "observationDeck.connectR… }.distinctUntilChanged()");
|
|
return q;
|
|
}
|
|
}
|