discord-jadx/app/src/main/java/com/discord/utilities/guilds/RoleUtils.java

146 lines
5.2 KiB
Java

package com.discord.utilities.guilds;
import android.content.Context;
import androidx.annotation.ColorInt;
import androidx.core.view.ViewCompat;
import com.discord.R;
import com.discord.api.role.GuildRole;
import com.discord.api.role.GuildRoleTags;
import com.discord.models.member.GuildMember;
import com.discord.utilities.color.ColorCompat;
import d0.g0.t;
import d0.z.d.m;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Comparator;
import java.util.List;
import java.util.Map;
import java.util.regex.Pattern;
/* compiled from: RoleUtils.kt */
public final class RoleUtils {
public static final RoleUtils INSTANCE = new RoleUtils();
private static final Comparator<GuildRole> ROLE_COMPARATOR = new RoleUtils$ROLE_COMPARATOR$1();
private static final Pattern ROLE_MENTION_RE = Pattern.compile("<@&(\\d+)>");
private RoleUtils() {
}
public static final boolean containsRoleMentions(String str) {
return str != null && ROLE_MENTION_RE.matcher(str).find();
}
public static final GuildRole getHighestHoistedRole(Map<Long, GuildRole> map, GuildMember guildMember) {
m.checkNotNullParameter(map, "guildRoles");
if (guildMember == null) {
return null;
}
List<Long> roles = guildMember.getRoles();
ArrayList arrayList = new ArrayList();
for (Object obj : roles) {
GuildRole guildRole = map.get(Long.valueOf(((Number) obj).longValue()));
boolean z2 = true;
if (guildRole == null || !guildRole.c()) {
z2 = false;
}
if (z2) {
arrayList.add(obj);
}
}
return getHighestRole(map, arrayList);
}
public static final GuildRole getHighestRole(Map<Long, GuildRole> map, GuildMember guildMember) {
m.checkNotNullParameter(map, "guildRoles");
if (guildMember == null) {
return null;
}
return getHighestRole(map, guildMember.getRoles());
}
public static final GuildRole getHighestRole(Map<Long, GuildRole> map, Collection<Long> collection) {
m.checkNotNullParameter(map, "guildRoles");
GuildRole guildRole = null;
if (collection == null) {
return null;
}
for (Long l : collection) {
GuildRole guildRole2 = map.get(Long.valueOf(l.longValue()));
if (guildRole2 != null && rankIsHigher(guildRole2, guildRole)) {
guildRole = guildRole2;
}
}
return guildRole;
}
@ColorInt
public static final int getOpaqueColor(GuildRole guildRole) {
return getOpaqueColor(guildRole, 0);
}
@ColorInt
public static final int getOpaqueColor(GuildRole guildRole, @ColorInt int i) {
if (guildRole != null) {
try {
if (guildRole.b() != 0) {
i = guildRole.b();
}
} catch (Exception unused) {
return ViewCompat.MEASURED_STATE_MASK;
}
}
return ViewCompat.MEASURED_STATE_MASK + i;
}
public static final Comparator<GuildRole> getROLE_COMPARATOR() {
return ROLE_COMPARATOR;
}
public static /* synthetic */ void getROLE_COMPARATOR$annotations() {
}
@ColorInt
public static final int getRoleColor(GuildRole guildRole, Context context) {
return getRoleColor$default(guildRole, context, null, 2, null);
}
@ColorInt
public static final int getRoleColor(GuildRole guildRole, Context context, @ColorInt Integer num) {
m.checkNotNullParameter(guildRole, "$this$getRoleColor");
m.checkNotNullParameter(context, "context");
return isDefaultColor(guildRole) ? num != null ? num.intValue() : ColorCompat.getColor(context, (int) R.color.primary_300) : getOpaqueColor(guildRole);
}
public static /* synthetic */ int getRoleColor$default(GuildRole guildRole, Context context, Integer num, int i, Object obj) {
if ((i & 2) != 0) {
num = null;
}
return getRoleColor(guildRole, context, num);
}
public static final boolean hasSubscriptionListingId(GuildRole guildRole) {
m.checkNotNullParameter(guildRole, "$this$hasSubscriptionListingId");
GuildRoleTags j = guildRole.j();
String a = j != null ? j.a() : null;
return !(a == null || t.isBlank(a));
}
public static final boolean isDefaultColor(GuildRole guildRole) {
m.checkNotNullParameter(guildRole, "$this$isDefaultColor");
return guildRole.b() == 0;
}
public static final boolean isSubscriptionRolePurchasableOrHasSubscribers(GuildRole guildRole) {
GuildRoleTags j;
m.checkNotNullParameter(guildRole, "$this$isSubscriptionRolePurchasableOrHasSubscribers");
return hasSubscriptionListingId(guildRole) && (j = guildRole.j()) != null && j.b();
}
public static final boolean rankEquals(GuildRole guildRole, GuildRole guildRole2) {
return ROLE_COMPARATOR.compare(guildRole, guildRole2) == 0;
}
public static final boolean rankIsHigher(GuildRole guildRole, GuildRole guildRole2) {
return ROLE_COMPARATOR.compare(guildRole, guildRole2) < 0;
}
}