65 lines
3.0 KiB
Java
65 lines
3.0 KiB
Java
package com.discord.utilities.channel.permissions;
|
|
|
|
import com.airbnb.lottie.parser.AnimatableValueParser;
|
|
import com.discord.api.channel.Channel;
|
|
import com.discord.api.permission.PermissionOverwrite;
|
|
import com.discord.restapi.RestAPIParams;
|
|
import com.discord.stores.StoreStream;
|
|
import com.discord.utilities.rest.RestAPI;
|
|
import com.discord.utilities.rx.ObservableExtensionsKt;
|
|
import d0.z.d.m;
|
|
import j0.l.a.q;
|
|
import java.util.ArrayList;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
import kotlin.NoWhenBranchMatchedException;
|
|
import rx.Observable;
|
|
/* compiled from: ChannelPermissionsAddMemberUtils.kt */
|
|
public final class ChannelPermissionsAddMemberUtils {
|
|
public static final ChannelPermissionsAddMemberUtils INSTANCE = new ChannelPermissionsAddMemberUtils();
|
|
|
|
public final /* synthetic */ class WhenMappings {
|
|
public static final /* synthetic */ int[] $EnumSwitchMapping$0;
|
|
|
|
static {
|
|
PermissionOverwrite.Type.values();
|
|
int[] iArr = new int[2];
|
|
$EnumSwitchMapping$0 = iArr;
|
|
iArr[PermissionOverwrite.Type.ROLE.ordinal()] = 1;
|
|
iArr[PermissionOverwrite.Type.MEMBER.ordinal()] = 2;
|
|
}
|
|
}
|
|
|
|
private ChannelPermissionsAddMemberUtils() {
|
|
}
|
|
|
|
public final Observable<List<Void>> addPermissionOverwrites(long j, Map<Long, ? extends PermissionOverwrite.Type> map, long j2) {
|
|
RestAPIParams.ChannelPermissionOverwrites channelPermissionOverwrites;
|
|
m.checkNotNullParameter(map, "selectedItems");
|
|
Channel channel = StoreStream.Companion.getChannels().getChannel(j);
|
|
ArrayList arrayList = new ArrayList(map.size());
|
|
for (Map.Entry<Long, ? extends PermissionOverwrite.Type> entry : map.entrySet()) {
|
|
long longValue = entry.getKey().longValue();
|
|
PermissionOverwrite.Type type = (PermissionOverwrite.Type) entry.getValue();
|
|
PermissionOverwrite F0 = channel != null ? AnimatableValueParser.F0(channel, longValue) : null;
|
|
long j3 = 0;
|
|
long c2 = F0 != null ? F0.c() : 0;
|
|
if (F0 != null) {
|
|
j3 = F0.d();
|
|
}
|
|
int ordinal = type.ordinal();
|
|
if (ordinal == 0) {
|
|
channelPermissionOverwrites = RestAPIParams.ChannelPermissionOverwrites.Companion.createForRole(longValue, Long.valueOf(c2 | j2), Long.valueOf((~j2) & j3));
|
|
} else if (ordinal == 1) {
|
|
channelPermissionOverwrites = RestAPIParams.ChannelPermissionOverwrites.Companion.createForMember(longValue, Long.valueOf(c2 | j2), Long.valueOf((~j2) & j3));
|
|
} else {
|
|
throw new NoWhenBranchMatchedException();
|
|
}
|
|
arrayList.add(ObservableExtensionsKt.restSubscribeOn$default(RestAPI.Companion.getApi().updatePermissionOverwrites(j, longValue, channelPermissionOverwrites), false, 1, null));
|
|
}
|
|
Observable<List<Void>> f02 = Observable.l(Observable.h0(new q(arrayList))).f0();
|
|
m.checkNotNullExpressionValue(f02, "Observable.concat(overwr…quests)\n .toList()");
|
|
return f02;
|
|
}
|
|
}
|