102.4 - Alpha (102204)

This commit is contained in:
Juby210 2021-11-12 08:22:47 +01:00
parent 7d1252b380
commit e5098872ab
43 changed files with 9479 additions and 9153 deletions

View File

@ -10,8 +10,8 @@ android {
applicationId 'com.discord'
minSdkVersion 21
targetSdkVersion 30
versionCode 102203
versionName "102.3 - Alpha"
versionCode 102204
versionName "102.4 - Alpha"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="102203" android:versionName="102.3 - Alpha" android:installLocation="auto" android:compileSdkVersion="30" android:compileSdkVersionCodename="11" package="com.discord" platformBuildVersionCode="30" platformBuildVersionName="11">
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="102204" android:versionName="102.4 - Alpha" android:installLocation="auto" android:compileSdkVersion="30" android:compileSdkVersionCodename="11" package="com.discord" platformBuildVersionCode="30" platformBuildVersionName="11">
<uses-sdk android:minSdkVersion="21" android:targetSdkVersion="30"/>
<uses-feature android:name="android.hardware.camera" android:required="false"/>
<uses-feature android:name="android.hardware.camera.autofocus" android:required="false"/>
@ -72,7 +72,7 @@
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
<intent-filter android:autoVerify="true">
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
@ -115,11 +115,16 @@
<data android:scheme="https" android:host="*.discordapp.com" android:pathPattern="/events/.*"/>
<data android:scheme="https" android:host="discordapp.com" android:pathPattern="/events/.*"/>
</intent-filter>
<intent-filter android:autoVerify="true">
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:scheme="discord" android:host="app" android:pathPattern="/.*"/>
</intent-filter>
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:scheme="https" android:host="discord.gift" android:pathPattern="/.*"/>
<data android:scheme="https" android:host="discord.gg" android:pathPattern="/.*"/>
<data android:scheme="https" android:host="discord.new" android:pathPattern="/.*"/>
@ -131,7 +136,7 @@
<data android:scheme="discord" android:host="action" android:pathPattern="/oauth2/authorize"/>
<data android:scheme="discord" android:host="action" android:pathPattern="/connect/authorize"/>
</intent-filter>
<intent-filter android:autoVerify="true">
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>

View File

@ -280,9 +280,6 @@ public interface RestAPIInterface {
@f("channels/{channelId}/call")
Observable<ModelCall.Ringable> call(@s("channelId") long j);
@b("guilds/{guildId}/requests/@me")
Observable<Void> cancelGuildJoinRequest(@s("guildId") long j);
@i0.f0.o("users/@me/guilds/premium/subscription-slots/{subscriptionSlotId}/cancel")
Observable<ModelPremiumGuildSubscriptionSlot> cancelSubscriptionSlot(@s("subscriptionSlotId") long j);
@ -325,11 +322,11 @@ public interface RestAPIInterface {
@i0.f0.o("guilds/{guildId}/role-subscriptions/group-listings/{groupListingId}/subscription-listings")
Observable<GuildRoleSubscriptionTierListing> createGuildRoleSubscriptionTier(@s("guildId") long j, @s("groupListingId") long j2, @a RestAPIParams.CreateGuildRoleSubscriptionTierListing createGuildRoleSubscriptionTierListing);
@i0.f0.o("guilds/{guildId}/events")
@i0.f0.o("guilds/{guildId}/scheduled-events")
Observable<GuildScheduledEvent> createGuildScheduledEvent(@s("guildId") long j, @a RestAPIParams.CreateGuildScheduledEventBody createGuildScheduledEventBody);
@i0.f0.o("users/@me/guild-events/{eventId}")
Observable<Unit> createGuildScheduledEventRsvp(@s("eventId") long j);
@p("guilds/{guildId}/scheduled-events/{eventId}/users/@me")
Observable<Unit> createGuildScheduledEventRsvp(@s("guildId") long j, @s("eventId") long j2);
@i0.f0.o("google-play/purchase-metadata")
Observable<Unit> createPurchaseMetadata(@a RestAPIParams.PurchaseMetadataBody purchaseMetadataBody);
@ -367,14 +364,14 @@ public interface RestAPIInterface {
@b("guilds/{guildId}/integrations/{integrationId}")
Observable<Void> deleteGuildIntegration(@s("guildId") long j, @s("integrationId") long j2);
@b("/guilds/{guildId}/role-subscriptions/group-listings/{groupListingId}/subscription-listings/{listingId}")
@b("guilds/{guildId}/role-subscriptions/group-listings/{groupListingId}/subscription-listings/{listingId}")
Observable<Void> deleteGuildRoleSubscriptionTierListing(@s("guildId") long j, @s("groupListingId") long j2, @s("listingId") long j3);
@b("guild-events/{eventId}")
Observable<Void> deleteGuildScheduledEvent(@s("eventId") long j);
@b("guilds/{guildId}/scheduled-events/{eventId}")
Observable<Void> deleteGuildScheduledEvent(@s("guildId") long j, @s("eventId") long j2);
@b("users/@me/guild-events/{eventId}")
Observable<Void> deleteGuildScheduledEventRsvp(@s("eventId") long j);
@b("guilds/{guildId}/scheduled-events/{eventId}/users/@me")
Observable<Void> deleteGuildScheduledEventRsvp(@s("guildId") long j, @s("eventId") long j2);
@b("channels/{channel_id}/messages/{message_id}")
Observable<Void> deleteMessage(@s("channel_id") long j, @s("message_id") long j2);
@ -532,7 +529,7 @@ public interface RestAPIInterface {
@f("users/@me/entitlements/gifts")
Observable<List<ModelEntitlement>> getGifts();
@f("/guilds/{guildId}/applications")
@f("guilds/{guildId}/applications")
Observable<List<Application>> getGuildApplications(@s("guildId") long j);
@f("guilds/{guildId}/emojis")
@ -559,13 +556,13 @@ public interface RestAPIInterface {
@f("guilds/{guildId}/role-subscriptions/group-listings")
Observable<List<GuildRoleSubscriptionGroupListing>> getGuildRoleSubscriptionGroupListings(@s("guildId") long j);
@f("guild-events/{eventId}")
Observable<GuildScheduledEvent> getGuildScheduledEvent(@s("eventId") long j);
@f("guilds/{guildId}/scheduled-events/{eventId}")
Observable<GuildScheduledEvent> getGuildScheduledEvent(@s("guildId") long j, @s("eventId") long j2);
@f("guild-events/{eventId}/users")
Observable<GuildScheduledEventRsvpUsersResponse> getGuildScheduledEventUsers(@s("eventId") long j, @t("limit") int i, @t("with_member") boolean z2);
@f("guilds/{guildId}/scheduled-events/{eventId}/users")
Observable<GuildScheduledEventRsvpUsersResponse> getGuildScheduledEventUsers(@s("guildId") long j, @s("eventId") long j2, @t("limit") int i, @t("with_member") boolean z2);
@f("guilds/{guildId}/events")
@f("guilds/{guildId}/scheduled-events")
Observable<List<GuildScheduledEvent>> getGuildScheduledEvents(@s("guildId") long j, @t("with_user_count") boolean z2);
@f("guilds/templates/{guildTemplateCode}")
@ -670,8 +667,8 @@ public interface RestAPIInterface {
@f("users/@me/affinities/users")
Observable<ModelUserAffinities> getUserAffinities();
@f("users/@me/guilds/{guildId}/events/users")
Observable<List<GuildScheduledEventUser>> getUserGuildScheduledEvents(@s("guildId") long j);
@f("users/@me/scheduled-events")
Observable<List<GuildScheduledEventUser>> getUserGuildScheduledEvents(@t("guild_ids") long j);
@f("users/@me/join-request-guilds")
Observable<List<Guild>> getUserJoinRequestGuilds();
@ -811,6 +808,9 @@ public interface RestAPIInterface {
@i0.f0.o("users/@me/harvest")
Observable<Harvest> requestHarvest();
@b("guilds/{guildId}/requests/@me")
Observable<ModelMemberVerificationFormResponse> resetGuildJoinRequest(@s("guildId") long j);
@f("entitlements/gift-codes/{code}")
Observable<ModelGift> resolveGiftCode(@s("code") String str, @t("with_application") boolean z2, @t("with_subscription_plan") boolean z3);
@ -919,11 +919,11 @@ public interface RestAPIInterface {
@n("guilds/{guildId}/role-subscriptions/group-listings/{groupListingId}")
Observable<GuildRoleSubscriptionGroupListing> updateGuildRoleSubscriptionGroupListing(@s("guildId") long j, @s("groupListingId") long j2, @a RestAPIParams.UpdateGuildRoleSubscriptionGroupListing updateGuildRoleSubscriptionGroupListing);
@n("/guilds/{guildId}/role-subscriptions/group-listings/{groupListingId}/subscription-listings/{listingId}")
@n("guilds/{guildId}/role-subscriptions/group-listings/{groupListingId}/subscription-listings/{listingId}")
Observable<GuildRoleSubscriptionTierListing> updateGuildRoleSubscriptionTierListing(@s("guildId") long j, @s("groupListingId") long j2, @s("listingId") long j3, @a RestAPIParams.UpdateGuildRoleSubscriptionTierListing updateGuildRoleSubscriptionTierListing);
@n("guild-events/{eventId}")
Observable<Unit> updateGuildScheduledEvent(@s("eventId") long j, @a RestAPIParams.UpdateGuildScheduledEventBody updateGuildScheduledEventBody);
@n("guilds/{guildId}/scheduled-events/{eventId}")
Observable<Unit> updateGuildScheduledEvent(@s("guildId") long j, @s("eventId") long j2, @a RestAPIParams.UpdateGuildScheduledEventBody updateGuildScheduledEventBody);
@n("guilds/{guildId}/members/@me")
Observable<GuildMember> updateMeGuildMember(@s("guildId") long j, @a PatchGuildMemberBody patchGuildMemberBody);

View File

@ -137,11 +137,11 @@ public final class StoreGuildScheduledEvents$toggleMeRsvpForEvent$1 extends o im
if (this.this$0.isMeRsvpedToEvent(this.$guildScheduledEvent.g(), this.$eventId)) {
StoreGuildScheduledEvents storeGuildScheduledEvents = this.this$0;
StoreGuildScheduledEvents.access$processRsvpDelete(storeGuildScheduledEvents, this.$storeEvent, StoreGuildScheduledEvents.access$getUserStore$p(storeGuildScheduledEvents).getMe().getId());
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.restSubscribeOn$default(RestAPI.Companion.getApi().deleteGuildScheduledEventRsvp(this.$storeEvent.h()), false, 1, null), this.this$0.getClass(), (Context) null, (Function1) null, new AnonymousClass1(this), (Function0) null, (Function0) null, new AnonymousClass2(this), 54, (Object) null);
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.restSubscribeOn$default(RestAPI.Companion.getApi().deleteGuildScheduledEventRsvp(this.$storeEvent.g(), this.$storeEvent.h()), false, 1, null), this.this$0.getClass(), (Context) null, (Function1) null, new AnonymousClass1(this), (Function0) null, (Function0) null, new AnonymousClass2(this), 54, (Object) null);
return;
}
StoreGuildScheduledEvents storeGuildScheduledEvents2 = this.this$0;
StoreGuildScheduledEvents.access$processRsvpCreate(storeGuildScheduledEvents2, this.$storeEvent, StoreGuildScheduledEvents.access$getUserStore$p(storeGuildScheduledEvents2).getMe().getId());
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.restSubscribeOn$default(RestAPI.Companion.getApi().createGuildScheduledEventRsvp(this.$storeEvent.h()), false, 1, null), this.this$0.getClass(), (Context) null, (Function1) null, new AnonymousClass3(this), (Function0) null, (Function0) null, new AnonymousClass4(this), 54, (Object) null);
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.restSubscribeOn$default(RestAPI.Companion.getApi().createGuildScheduledEventRsvp(this.$guildScheduledEvent.g(), this.$storeEvent.h()), false, 1, null), this.this$0.getClass(), (Context) null, (Function1) null, new AnonymousClass3(this), (Function0) null, (Function0) null, new AnonymousClass4(this), 54, (Object) null);
}
}

View File

@ -401,11 +401,11 @@ public final class StoreGuildScheduledEvents extends StoreV2 {
}
}
public final void fetchRsvpUsers(long j) {
public final void fetchRsvpUsers(long j, long j2) {
this.isUsersForGuildEventFetching = true;
this.isUsersForGuildEventError = false;
markChanged();
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.restSubscribeOn$default(RestAPI.Companion.getApi().getGuildScheduledEventUsers(j, 100, true), false, 1, null), StoreGuildScheduledEvents.class, (Context) null, (Function1) null, new StoreGuildScheduledEvents$fetchRsvpUsers$1(this), (Function0) null, (Function0) null, new StoreGuildScheduledEvents$fetchRsvpUsers$2(this, j), 54, (Object) null);
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.restSubscribeOn$default(RestAPI.Companion.getApi().getGuildScheduledEventUsers(j, j2, 100, true), false, 1, null), StoreGuildScheduledEvents.class, (Context) null, (Function1) null, new StoreGuildScheduledEvents$fetchRsvpUsers$1(this), (Function0) null, (Function0) null, new StoreGuildScheduledEvents$fetchRsvpUsers$2(this, j2), 54, (Object) null);
}
public final void fetchUserGuildScheduledEvents(long j) {

View File

@ -38,7 +38,7 @@ public class StoreMessagesHolder {
private static final int MAX_MESSAGES_PER_CHANNEL = 200;
private static final int MAX_MESSAGES_PER_CHANNEL_TRIM = 100;
private final Set<Long> activeChannels = new HashSet();
private final Persister<Map<Long, List<Message>>> cache = new Persister<>("STORE_MESSAGES_CACHE_V36", new HashMap());
private final Persister<Map<Long, List<Message>>> cache = new Persister<>("STORE_MESSAGES_CACHE_V37", new HashMap());
private boolean cacheEnabled;
private Subscription cachePersistSubscription;
private long cachePersistedAt = ClockFactory.get().currentTimeMillis();

View File

@ -12,6 +12,7 @@ import com.discord.models.member.GuildMember;
import com.discord.stores.StoreGuilds;
import com.discord.stores.StoreStream;
import com.discord.widgets.servers.member_verification.MemberVerificationPendingDialog;
import com.discord.widgets.servers.member_verification.MemberVerificationPendingViewModel;
import com.discord.widgets.servers.member_verification.MemberVerificationSuccessDialog;
import com.discord.widgets.servers.member_verification.WidgetMemberVerification;
import d0.j;
@ -56,8 +57,8 @@ public final class MemberVerificationUtils {
memberVerificationUtils.maybeShowVerificationGate(context, fragmentManager, j, str, (i & 16) != 0 ? null : modelInvite, (i & 32) != 0 ? MemberVerificationUtils$maybeShowVerificationGate$1.INSTANCE : function0, function02);
}
private final void showMemberVerificationPendingDialog(FragmentManager fragmentManager, long j) {
MemberVerificationPendingDialog.Companion.show(fragmentManager, j);
private final void showMemberVerificationPendingDialog(FragmentManager fragmentManager, long j, MemberVerificationPendingViewModel.DialogState dialogState) {
MemberVerificationPendingDialog.Companion.show(fragmentManager, j, dialogState);
}
private final void showMemberVerificationSuccessDialog(Guild guild, ModelInvite modelInvite) {
@ -124,9 +125,10 @@ public final class MemberVerificationUtils {
showMemberVerificationWidget(context, j, str, modelInvite);
} else if (ordinal == 1) {
function0.mo1invoke();
showMemberVerificationPendingDialog(fragmentManager, j);
showMemberVerificationPendingDialog(fragmentManager, j, MemberVerificationPendingViewModel.DialogState.CANCEL);
} else if (ordinal == 2) {
function0.mo1invoke();
showMemberVerificationPendingDialog(fragmentManager, j, MemberVerificationPendingViewModel.DialogState.REJECTED);
} else if (ordinal == 3) {
function02.mo1invoke();
showMemberVerificationSuccessDialog(guild, modelInvite);

View File

@ -0,0 +1,21 @@
package com.discord.utilities.guilds;
import com.discord.api.guild.GuildFeature;
import com.discord.api.role.GuildRole;
import com.discord.models.guild.Guild;
import d0.z.d.m;
/* compiled from: RoleIconUtils.kt */
public final class RoleIconUtils {
public static final RoleIconUtils INSTANCE = new RoleIconUtils();
private RoleIconUtils() {
}
public final boolean canUseRoleIcons(Guild guild, GuildRole guildRole) {
m.checkNotNullParameter(guild, "$this$canUseRoleIcons");
if (!guild.hasFeature(GuildFeature.ROLE_ICONS)) {
return guildRole != null && RoleUtils.hasSubscriptionListingId(guildRole);
}
return true;
}
}

View File

@ -631,12 +631,6 @@ public final class RestAPI implements RestAPIInterface {
return this._api.call(j);
}
@Override // com.discord.restapi.RestAPIInterface
@b("guilds/{guildId}/requests/@me")
public Observable<Void> cancelGuildJoinRequest(@s("guildId") long j) {
return this._api.cancelGuildJoinRequest(j);
}
@Override // com.discord.restapi.RestAPIInterface
@o("users/@me/guilds/premium/subscription-slots/{subscriptionSlotId}/cancel")
public Observable<ModelPremiumGuildSubscriptionSlot> cancelSubscriptionSlot(@s("subscriptionSlotId") long j) {
@ -741,16 +735,16 @@ public final class RestAPI implements RestAPIInterface {
}
@Override // com.discord.restapi.RestAPIInterface
@o("guilds/{guildId}/events")
@o("guilds/{guildId}/scheduled-events")
public Observable<GuildScheduledEvent> createGuildScheduledEvent(@s("guildId") long j, @i0.f0.a RestAPIParams.CreateGuildScheduledEventBody createGuildScheduledEventBody) {
m.checkNotNullParameter(createGuildScheduledEventBody, "event");
return this._api.createGuildScheduledEvent(j, createGuildScheduledEventBody);
}
@Override // com.discord.restapi.RestAPIInterface
@o("users/@me/guild-events/{eventId}")
public Observable<Unit> createGuildScheduledEventRsvp(@s("eventId") long j) {
return this._api.createGuildScheduledEventRsvp(j);
@p("guilds/{guildId}/scheduled-events/{eventId}/users/@me")
public Observable<Unit> createGuildScheduledEventRsvp(@s("guildId") long j, @s("eventId") long j2) {
return this._api.createGuildScheduledEventRsvp(j, j2);
}
public final Observable<Channel> createOrFetchDM(long j) {
@ -839,21 +833,21 @@ public final class RestAPI implements RestAPIInterface {
}
@Override // com.discord.restapi.RestAPIInterface
@b("/guilds/{guildId}/role-subscriptions/group-listings/{groupListingId}/subscription-listings/{listingId}")
@b("guilds/{guildId}/role-subscriptions/group-listings/{groupListingId}/subscription-listings/{listingId}")
public Observable<Void> deleteGuildRoleSubscriptionTierListing(@s("guildId") long j, @s("groupListingId") long j2, @s("listingId") long j3) {
return this._api.deleteGuildRoleSubscriptionTierListing(j, j2, j3);
}
@Override // com.discord.restapi.RestAPIInterface
@b("guild-events/{eventId}")
public Observable<Void> deleteGuildScheduledEvent(@s("eventId") long j) {
return this._api.deleteGuildScheduledEvent(j);
@b("guilds/{guildId}/scheduled-events/{eventId}")
public Observable<Void> deleteGuildScheduledEvent(@s("guildId") long j, @s("eventId") long j2) {
return this._api.deleteGuildScheduledEvent(j, j2);
}
@Override // com.discord.restapi.RestAPIInterface
@b("users/@me/guild-events/{eventId}")
public Observable<Void> deleteGuildScheduledEventRsvp(@s("eventId") long j) {
return this._api.deleteGuildScheduledEventRsvp(j);
@b("guilds/{guildId}/scheduled-events/{eventId}/users/@me")
public Observable<Void> deleteGuildScheduledEventRsvp(@s("guildId") long j, @s("eventId") long j2) {
return this._api.deleteGuildScheduledEventRsvp(j, j2);
}
@Override // com.discord.restapi.RestAPIInterface
@ -1232,7 +1226,7 @@ public final class RestAPI implements RestAPIInterface {
}
@Override // com.discord.restapi.RestAPIInterface
@f("/guilds/{guildId}/applications")
@f("guilds/{guildId}/applications")
public Observable<List<Application>> getGuildApplications(@s("guildId") long j) {
return this._api.getGuildApplications(j);
}
@ -1286,19 +1280,19 @@ public final class RestAPI implements RestAPIInterface {
}
@Override // com.discord.restapi.RestAPIInterface
@f("guild-events/{eventId}")
public Observable<GuildScheduledEvent> getGuildScheduledEvent(@s("eventId") long j) {
return this._api.getGuildScheduledEvent(j);
@f("guilds/{guildId}/scheduled-events/{eventId}")
public Observable<GuildScheduledEvent> getGuildScheduledEvent(@s("guildId") long j, @s("eventId") long j2) {
return this._api.getGuildScheduledEvent(j, j2);
}
@Override // com.discord.restapi.RestAPIInterface
@f("guild-events/{eventId}/users")
public Observable<GuildScheduledEventRsvpUsersResponse> getGuildScheduledEventUsers(@s("eventId") long j, @t("limit") int i, @t("with_member") boolean z2) {
return this._api.getGuildScheduledEventUsers(j, i, z2);
@f("guilds/{guildId}/scheduled-events/{eventId}/users")
public Observable<GuildScheduledEventRsvpUsersResponse> getGuildScheduledEventUsers(@s("guildId") long j, @s("eventId") long j2, @t("limit") int i, @t("with_member") boolean z2) {
return this._api.getGuildScheduledEventUsers(j, j2, i, z2);
}
@Override // com.discord.restapi.RestAPIInterface
@f("guilds/{guildId}/events")
@f("guilds/{guildId}/scheduled-events")
public Observable<List<GuildScheduledEvent>> getGuildScheduledEvents(@s("guildId") long j, @t("with_user_count") boolean z2) {
return this._api.getGuildScheduledEvents(j, z2);
}
@ -1534,8 +1528,8 @@ public final class RestAPI implements RestAPIInterface {
}
@Override // com.discord.restapi.RestAPIInterface
@f("users/@me/guilds/{guildId}/events/users")
public Observable<List<GuildScheduledEventUser>> getUserGuildScheduledEvents(@s("guildId") long j) {
@f("users/@me/scheduled-events")
public Observable<List<GuildScheduledEventUser>> getUserGuildScheduledEvents(@t("guild_ids") long j) {
return this._api.getUserGuildScheduledEvents(j);
}
@ -1922,6 +1916,12 @@ public final class RestAPI implements RestAPIInterface {
return this._api.updateMyVoiceStates(channel.f(), new RestAPIParams.ChannelVoiceStateUpdate(channel.h(), null, new UtcDateTime(clock.currentTimeMillis()), 2, null));
}
@Override // com.discord.restapi.RestAPIInterface
@b("guilds/{guildId}/requests/@me")
public Observable<ModelMemberVerificationFormResponse> resetGuildJoinRequest(@s("guildId") long j) {
return this._api.resetGuildJoinRequest(j);
}
@Override // com.discord.restapi.RestAPIInterface
@f("entitlements/gift-codes/{code}")
public Observable<ModelGift> resolveGiftCode(@s("code") String str, @t("with_application") boolean z2, @t("with_subscription_plan") boolean z3) {
@ -2204,17 +2204,17 @@ public final class RestAPI implements RestAPIInterface {
}
@Override // com.discord.restapi.RestAPIInterface
@i0.f0.n("/guilds/{guildId}/role-subscriptions/group-listings/{groupListingId}/subscription-listings/{listingId}")
@i0.f0.n("guilds/{guildId}/role-subscriptions/group-listings/{groupListingId}/subscription-listings/{listingId}")
public Observable<GuildRoleSubscriptionTierListing> updateGuildRoleSubscriptionTierListing(@s("guildId") long j, @s("groupListingId") long j2, @s("listingId") long j3, @i0.f0.a RestAPIParams.UpdateGuildRoleSubscriptionTierListing updateGuildRoleSubscriptionTierListing) {
m.checkNotNullParameter(updateGuildRoleSubscriptionTierListing, "body");
return this._api.updateGuildRoleSubscriptionTierListing(j, j2, j3, updateGuildRoleSubscriptionTierListing);
}
@Override // com.discord.restapi.RestAPIInterface
@i0.f0.n("guild-events/{eventId}")
public Observable<Unit> updateGuildScheduledEvent(@s("eventId") long j, @i0.f0.a RestAPIParams.UpdateGuildScheduledEventBody updateGuildScheduledEventBody) {
@i0.f0.n("guilds/{guildId}/scheduled-events/{eventId}")
public Observable<Unit> updateGuildScheduledEvent(@s("guildId") long j, @s("eventId") long j2, @i0.f0.a RestAPIParams.UpdateGuildScheduledEventBody updateGuildScheduledEventBody) {
m.checkNotNullParameter(updateGuildScheduledEventBody, "body");
return this._api.updateGuildScheduledEvent(j, updateGuildScheduledEventBody);
return this._api.updateGuildScheduledEvent(j, j2, updateGuildScheduledEventBody);
}
@Override // com.discord.restapi.RestAPIInterface

View File

@ -265,15 +265,18 @@ public final class WidgetChatInput extends AppFragment {
if (ordinal == 1) {
getBinding().f1804s.d.setText(R.string.member_verification_application_confirmation_title);
getBinding().f1804s.f136c.setImageResource(R.drawable.img_member_verification_pending);
getBinding().f1804s.b.setImageResource(R.drawable.ic_close_circle_nova_grey_24dp);
return;
} else if (ordinal == 2) {
getBinding().f1804s.d.setText(R.string.member_verification_application_rejected_title);
getBinding().f1804s.f136c.setImageResource(R.drawable.img_member_verification_denied);
getBinding().f1804s.b.setImageResource(R.drawable.ic_member_verification_chat_guard_cta);
return;
}
}
getBinding().f1804s.d.setText(R.string.member_verification_chat_blocker_text);
getBinding().f1804s.f136c.setImageResource(R.drawable.img_member_verification_started);
getBinding().f1804s.b.setImageResource(R.drawable.ic_member_verification_chat_guard_cta);
} else {
TextView textView2 = getBinding().r.e;
m.checkNotNullExpressionValue(textView2, "binding.guard.chatInputGuardText");

View File

@ -216,6 +216,7 @@ public final class WidgetFolderContextMenu extends AppFragment {
TextView textView2 = getBinding().d;
m.checkNotNullExpressionValue(textView2, "binding.folderContextMenuMarkAsRead");
textView2.setVisibility(valid.getShowMarkAsRead() ? 0 : 8);
getBinding().b.setContentPadding(0, 0, 0, 0);
CardView cardView = getBinding().b;
m.checkNotNullExpressionValue(cardView, "binding.folderContextMenuCard");
if (cardView.getVisibility() == 0) {

View File

@ -216,6 +216,7 @@ public final class WidgetGuildContextMenu extends AppFragment {
i = 0;
}
textView3.setVisibility(i);
getBinding().b.setContentPadding(0, 0, 0, 0);
CardView cardView = getBinding().b;
m.checkNotNullExpressionValue(cardView, "binding.guildContextMenuCard");
if (cardView.getVisibility() == 0) {

View File

@ -12,11 +12,11 @@ public final class GuildScheduledEventAPI {
private GuildScheduledEventAPI() {
}
public final Observable<Unit> endEvent(long j) {
return RestAPI.Companion.getApi().updateGuildScheduledEvent(j, new RestAPIParams.UpdateGuildScheduledEventBody(null, null, null, null, null, null, null, null, GuildScheduledEventStatus.COMPLETED, 255, null));
public final Observable<Unit> endEvent(long j, long j2) {
return RestAPI.Companion.getApi().updateGuildScheduledEvent(j, j2, new RestAPIParams.UpdateGuildScheduledEventBody(null, null, null, null, null, null, null, null, GuildScheduledEventStatus.COMPLETED, 255, null));
}
public final Observable<Unit> startEvent(long j) {
return RestAPI.Companion.getApi().updateGuildScheduledEvent(j, new RestAPIParams.UpdateGuildScheduledEventBody(null, null, null, null, null, null, null, null, GuildScheduledEventStatus.ACTIVE, 255, null));
public final Observable<Unit> startEvent(long j, long j2) {
return RestAPI.Companion.getApi().updateGuildScheduledEvent(j, j2, new RestAPIParams.UpdateGuildScheduledEventBody(null, null, null, null, null, null, null, null, GuildScheduledEventStatus.ACTIVE, 255, null));
}
}

View File

@ -757,7 +757,7 @@ public final class GuildScheduledEventDetailsViewModel extends AppViewModel<View
}
ViewState.Initialized initialized = (ViewState.Initialized) viewState;
if (initialized != null) {
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.restSubscribeOn$default(GuildScheduledEventAPI.INSTANCE.endEvent(initialized.getGuildScheduledEvent().h()), false, 1, null), GuildScheduledEventDetailsViewModel.class, context, (Function1) null, (Function1) null, (Function0) null, (Function0) null, new GuildScheduledEventDetailsViewModel$endEventClicked$$inlined$let$lambda$1(this, context, function0), 60, (Object) null);
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.restSubscribeOn$default(GuildScheduledEventAPI.INSTANCE.endEvent(initialized.getGuildScheduledEvent().g(), initialized.getGuildScheduledEvent().h()), false, 1, null), GuildScheduledEventDetailsViewModel.class, context, (Function1) null, (Function1) null, (Function0) null, (Function0) null, new GuildScheduledEventDetailsViewModel$endEventClicked$$inlined$let$lambda$1(this, context, function0), 60, (Object) null);
}
}
@ -770,7 +770,7 @@ public final class GuildScheduledEventDetailsViewModel extends AppViewModel<View
}
ViewState.Initialized initialized = (ViewState.Initialized) viewState;
if (initialized != null) {
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.restSubscribeOn$default(RestAPI.Companion.getApi().deleteGuildScheduledEvent(initialized.getGuildScheduledEvent().h()), false, 1, null), GuildScheduledEventDetailsViewModel.class, context, (Function1) null, (Function1) null, (Function0) null, (Function0) null, new GuildScheduledEventDetailsViewModel$onDeleteButtonClicked$$inlined$let$lambda$1(this, context, function0), 60, (Object) null);
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.restSubscribeOn$default(RestAPI.Companion.getApi().deleteGuildScheduledEvent(initialized.getGuildScheduledEvent().g(), initialized.getGuildScheduledEvent().h()), false, 1, null), GuildScheduledEventDetailsViewModel.class, context, (Function1) null, (Function1) null, (Function0) null, (Function0) null, new GuildScheduledEventDetailsViewModel$onDeleteButtonClicked$$inlined$let$lambda$1(this, context, function0), 60, (Object) null);
}
}
@ -835,7 +835,7 @@ public final class GuildScheduledEventDetailsViewModel extends AppViewModel<View
EventDetailsSection eventDetailsSection = i == 0 ? EventDetailsSection.EVENT_INFO : EventDetailsSection.RSVP_LIST;
this.section = eventDetailsSection;
if (eventDetailsSection == EventDetailsSection.RSVP_LIST) {
this.guildScheduledEventsStore.fetchRsvpUsers(initialized.getGuildScheduledEvent().h());
this.guildScheduledEventsStore.fetchRsvpUsers(initialized.getGuildScheduledEvent().g(), initialized.getGuildScheduledEvent().h());
if (initialized.getRsvpUsers().isEmpty()) {
this.rsvpUsersFetchState = EventDetailsRsvpUsersFetchState.LOADING;
}

View File

@ -270,7 +270,7 @@ public final class PreviewGuildScheduledEventViewModel extends AppViewModel<View
RestAPIParams.UpdateGuildScheduledEventBody updateRequestBody;
WidgetPreviewGuildScheduledEvent.Companion.ExistingEventData existingEventData = this.existingEventData;
if (existingEventData != null && (findEventFromStore = this.guildScheduledEventsStore.findEventFromStore((guildScheduledEventId = existingEventData.getGuildScheduledEventId()), Long.valueOf(this.eventModel.getGuildId()))) != null && (updateRequestBody = this.eventModel.toUpdateRequestBody(findEventFromStore)) != null) {
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.ui$default(ObservableExtensionsKt.restSubscribeOn$default(RestAPI.Companion.getApi().updateGuildScheduledEvent(guildScheduledEventId, updateRequestBody), false, 1, null), this, null, 2, null), PreviewGuildScheduledEventViewModel.class, context, (Function1) null, new PreviewGuildScheduledEventViewModel$editEvent$1(this), (Function0) null, (Function0) null, new PreviewGuildScheduledEventViewModel$editEvent$2(this, function1, guildScheduledEventId), 52, (Object) null);
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.ui$default(ObservableExtensionsKt.restSubscribeOn$default(RestAPI.Companion.getApi().updateGuildScheduledEvent(findEventFromStore.g(), guildScheduledEventId, updateRequestBody), false, 1, null), this, null, 2, null), PreviewGuildScheduledEventViewModel.class, context, (Function1) null, new PreviewGuildScheduledEventViewModel$editEvent$1(this), (Function0) null, (Function0) null, new PreviewGuildScheduledEventViewModel$editEvent$2(this, function1, guildScheduledEventId), 52, (Object) null);
}
}
@ -291,7 +291,7 @@ public final class PreviewGuildScheduledEventViewModel extends AppViewModel<View
WidgetPreviewGuildScheduledEvent.Companion.ExistingEventData existingEventData = this.existingEventData;
if (existingEventData != null) {
long guildScheduledEventId = existingEventData.getGuildScheduledEventId();
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.ui$default(ObservableExtensionsKt.restSubscribeOn$default(GuildScheduledEventAPI.INSTANCE.startEvent(guildScheduledEventId), false, 1, null), this, null, 2, null), PreviewGuildScheduledEventViewModel.class, context, (Function1) null, new PreviewGuildScheduledEventViewModel$startEvent$1(this), (Function0) null, (Function0) null, new PreviewGuildScheduledEventViewModel$startEvent$2(this, function1, guildScheduledEventId), 52, (Object) null);
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.ui$default(ObservableExtensionsKt.restSubscribeOn$default(GuildScheduledEventAPI.INSTANCE.startEvent(this.eventModel.getGuildId(), guildScheduledEventId), false, 1, null), this, null, 2, null), PreviewGuildScheduledEventViewModel.class, context, (Function1) null, new PreviewGuildScheduledEventViewModel$startEvent$1(this), (Function0) null, (Function0) null, new PreviewGuildScheduledEventViewModel$startEvent$2(this, function1, guildScheduledEventId), 52, (Object) null);
}
}

View File

@ -0,0 +1,22 @@
package com.discord.widgets.guildscheduledevent;
import d0.z.d.o;
import kotlin.jvm.functions.Function0;
/* compiled from: WidgetEndGuildScheduledEventBottomSheet.kt */
public final class WidgetEndGuildScheduledEventBottomSheet$guildId$2 extends o implements Function0<Long> {
public final /* synthetic */ WidgetEndGuildScheduledEventBottomSheet this$0;
/* JADX INFO: super call moved to the top of the method (can break code semantics) */
public WidgetEndGuildScheduledEventBottomSheet$guildId$2(WidgetEndGuildScheduledEventBottomSheet widgetEndGuildScheduledEventBottomSheet) {
super(0);
this.this$0 = widgetEndGuildScheduledEventBottomSheet;
}
/* Return type fixed from 'long' to match base method */
/* JADX WARNING: Unknown variable types count: 1 */
@Override // kotlin.jvm.functions.Function0
/* renamed from: invoke */
public final Long mo1invoke() {
return this.this$0.requireArguments().getLong("com.discord.intent.extra.EXTRA_GUILD_ID");
}
}

View File

@ -31,6 +31,7 @@ public final class WidgetEndGuildScheduledEventBottomSheet extends AppBottomShee
public static final Companion Companion = new Companion(null);
private static final String EXTRA_REQUEST_KEY = "INTENT_EXTRA_REQUEST_KEY";
private final FragmentViewBindingDelegate binding$delegate = FragmentViewBindingDelegateKt.viewBinding$default(this, WidgetEndGuildScheduledEventBottomSheet$binding$2.INSTANCE, null, 2, null);
private final Lazy guildId$delegate = g.lazy(new WidgetEndGuildScheduledEventBottomSheet$guildId$2(this));
private final Lazy guildScheduledEventId$delegate = g.lazy(new WidgetEndGuildScheduledEventBottomSheet$guildScheduledEventId$2(this));
private final Lazy requestKey$delegate = g.lazy(new WidgetEndGuildScheduledEventBottomSheet$requestKey$2(this));
@ -50,11 +51,11 @@ public final class WidgetEndGuildScheduledEventBottomSheet extends AppBottomShee
FragmentKt.setFragmentResultListener(fragment, str, new WidgetEndGuildScheduledEventBottomSheet$Companion$registerForResult$1(str, function0));
}
public final void show(FragmentManager fragmentManager, String str, long j) {
public final void show(FragmentManager fragmentManager, String str, long j, long j2) {
m.checkNotNullParameter(fragmentManager, "fragmentManager");
m.checkNotNullParameter(str, "requestKey");
WidgetEndGuildScheduledEventBottomSheet widgetEndGuildScheduledEventBottomSheet = new WidgetEndGuildScheduledEventBottomSheet();
widgetEndGuildScheduledEventBottomSheet.setArguments(BundleKt.bundleOf(o.to("com.discord.intent.extra.EXTRA_GUILD_SCHEDULED_EVENT_ID", Long.valueOf(j)), o.to(WidgetEndGuildScheduledEventBottomSheet.EXTRA_REQUEST_KEY, str)));
widgetEndGuildScheduledEventBottomSheet.setArguments(BundleKt.bundleOf(o.to("com.discord.intent.extra.EXTRA_GUILD_SCHEDULED_EVENT_ID", Long.valueOf(j2)), o.to("com.discord.intent.extra.EXTRA_GUILD_ID", Long.valueOf(j)), o.to(WidgetEndGuildScheduledEventBottomSheet.EXTRA_REQUEST_KEY, str)));
widgetEndGuildScheduledEventBottomSheet.show(fragmentManager, WidgetEndGuildScheduledEventBottomSheet.class.getSimpleName());
}
}
@ -81,6 +82,10 @@ public final class WidgetEndGuildScheduledEventBottomSheet extends AppBottomShee
return (WidgetEndStageBottomSheetBinding) this.binding$delegate.getValue((Fragment) this, $$delegatedProperties[0]);
}
private final long getGuildId() {
return ((Number) this.guildId$delegate.getValue()).longValue();
}
private final long getGuildScheduledEventId() {
return ((Number) this.guildScheduledEventId$delegate.getValue()).longValue();
}
@ -90,7 +95,7 @@ public final class WidgetEndGuildScheduledEventBottomSheet extends AppBottomShee
}
private final void onConfirmEnd() {
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.restSubscribeOn$default(GuildScheduledEventAPI.INSTANCE.endEvent(getGuildScheduledEventId()), false, 1, null), WidgetEndGuildScheduledEventBottomSheet.class, (Context) null, (Function1) null, (Function1) null, (Function0) null, (Function0) null, WidgetEndGuildScheduledEventBottomSheet$onConfirmEnd$1.INSTANCE, 62, (Object) null);
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.restSubscribeOn$default(GuildScheduledEventAPI.INSTANCE.endEvent(getGuildId(), getGuildScheduledEventId()), false, 1, null), WidgetEndGuildScheduledEventBottomSheet.class, (Context) null, (Function1) null, (Function1) null, (Function0) null, (Function0) null, WidgetEndGuildScheduledEventBottomSheet$onConfirmEnd$1.INSTANCE, 62, (Object) null);
}
@Override // com.discord.app.AppBottomSheet

View File

@ -6,16 +6,16 @@ import android.view.LayoutInflater;
import android.widget.FrameLayout;
import c.a.k.b;
import com.discord.R;
import com.discord.api.guild.GuildFeature;
import com.discord.api.role.GuildRole;
import com.discord.databinding.RoleIconViewBinding;
import com.discord.models.domain.emoji.ModelEmojiUnicode;
import com.discord.models.guild.Guild;
import com.discord.stores.StoreStream;
import com.discord.utilities.dimen.DimenUtils;
import com.discord.utilities.guilds.GuildUtilsKt;
import com.discord.utilities.guilds.RoleIconUtils;
import com.discord.utilities.icon.IconUtils;
import com.discord.utilities.images.MGImages;
import com.discord.utilities.premium.PremiumUtils;
import com.discord.utilities.textprocessing.AstRenderer;
import com.discord.utilities.textprocessing.node.EmojiNode;
import com.discord.utilities.view.ToastManager;
@ -101,8 +101,8 @@ public final class RoleIconView extends FrameLayout {
}
public final void setRole(GuildRole guildRole, Long l) {
boolean doesGuildHaveEnoughBoostsForFeature = PremiumUtils.INSTANCE.doesGuildHaveEnoughBoostsForFeature(l != null ? StoreStream.Companion.getGuilds().getGuild(l.longValue()) : null, GuildFeature.ROLE_ICONS);
if (guildRole == null || !hasIconOrUnicodeEmoji(guildRole) || !doesGuildHaveEnoughBoostsForFeature) {
Guild guild = l != null ? StoreStream.Companion.getGuilds().getGuild(l.longValue()) : null;
if (guildRole == null || !hasIconOrUnicodeEmoji(guildRole) || guild == null || !RoleIconUtils.INSTANCE.canUseRoleIcons(guild, guildRole)) {
setVisibility(8);
return;
}

View File

@ -4,18 +4,21 @@ import android.os.Bundle;
import androidx.fragment.app.FragmentActivity;
import androidx.fragment.app.FragmentManager;
import com.discord.widgets.servers.WidgetServerSettingsChannels;
import com.discord.widgets.servers.member_verification.MemberVerificationPendingViewModel;
import d0.z.d.a0;
import d0.z.d.m;
import d0.z.d.o;
import kotlin.jvm.functions.Function1;
/* compiled from: MemberVerificationPendingDialog.kt */
public final class MemberVerificationPendingDialog$Companion$enqueue$memberVerificationPendingDialogNotice$1 extends o implements Function1<FragmentActivity, Boolean> {
public final /* synthetic */ MemberVerificationPendingViewModel.DialogState $dialogState;
public final /* synthetic */ long $guildId;
/* JADX INFO: super call moved to the top of the method (can break code semantics) */
public MemberVerificationPendingDialog$Companion$enqueue$memberVerificationPendingDialogNotice$1(long j) {
public MemberVerificationPendingDialog$Companion$enqueue$memberVerificationPendingDialogNotice$1(long j, MemberVerificationPendingViewModel.DialogState dialogState) {
super(1);
this.$guildId = j;
this.$dialogState = dialogState;
}
/* Return type fixed from 'java.lang.Object' to match base method */
@ -30,6 +33,7 @@ public final class MemberVerificationPendingDialog$Companion$enqueue$memberVerif
MemberVerificationPendingDialog memberVerificationPendingDialog = new MemberVerificationPendingDialog();
Bundle bundle = new Bundle();
bundle.putLong(WidgetServerSettingsChannels.INTENT_EXTRA_GUILD_ID, this.$guildId);
bundle.putSerializable("INTENT_EXTRA_DIALOG_STATE", this.$dialogState);
memberVerificationPendingDialog.setArguments(bundle);
FragmentManager supportFragmentManager = fragmentActivity.getSupportFragmentManager();
m.checkNotNullExpressionValue(supportFragmentManager, "appActivity.supportFragmentManager");

View File

@ -2,16 +2,15 @@ package com.discord.widgets.servers.member_verification;
import android.view.View;
/* compiled from: MemberVerificationPendingDialog.kt */
public final class MemberVerificationPendingDialog$configureLoadedUI$6 implements View.OnClickListener {
public final class MemberVerificationPendingDialog$configureLoadedUI$10 implements View.OnClickListener {
public final /* synthetic */ MemberVerificationPendingDialog this$0;
public MemberVerificationPendingDialog$configureLoadedUI$6(MemberVerificationPendingDialog memberVerificationPendingDialog) {
public MemberVerificationPendingDialog$configureLoadedUI$10(MemberVerificationPendingDialog memberVerificationPendingDialog) {
this.this$0 = memberVerificationPendingDialog;
}
@Override // android.view.View.OnClickListener
public final void onClick(View view) {
MemberVerificationPendingDialog.access$getViewModel$p(this.this$0).leaveGuild();
this.this$0.dismiss();
}
}

View File

@ -0,0 +1,21 @@
package com.discord.widgets.servers.member_verification;
import android.content.Context;
import android.view.View;
import com.discord.utilities.uri.UriHandler;
import d0.z.d.m;
/* compiled from: MemberVerificationPendingDialog.kt */
public final class MemberVerificationPendingDialog$configureLoadedUI$11 implements View.OnClickListener {
public final /* synthetic */ MemberVerificationPendingDialog this$0;
public MemberVerificationPendingDialog$configureLoadedUI$11(MemberVerificationPendingDialog memberVerificationPendingDialog) {
this.this$0 = memberVerificationPendingDialog;
}
@Override // android.view.View.OnClickListener
public final void onClick(View view) {
Context requireContext = this.this$0.requireContext();
m.checkNotNullExpressionValue(requireContext, "requireContext()");
UriHandler.directToPlayStore$default(requireContext, null, null, 6, null);
}
}

View File

@ -0,0 +1,16 @@
package com.discord.widgets.servers.member_verification;
import android.view.View;
/* compiled from: MemberVerificationPendingDialog.kt */
public final class MemberVerificationPendingDialog$configureLoadedUI$12 implements View.OnClickListener {
public final /* synthetic */ MemberVerificationPendingDialog this$0;
public MemberVerificationPendingDialog$configureLoadedUI$12(MemberVerificationPendingDialog memberVerificationPendingDialog) {
this.this$0 = memberVerificationPendingDialog;
}
@Override // android.view.View.OnClickListener
public final void onClick(View view) {
this.this$0.dismiss();
}
}

View File

@ -11,7 +11,7 @@ public final class MemberVerificationPendingDialog$configureLoadedUI$4 implement
@Override // android.view.View.OnClickListener
public final void onClick(View view) {
MemberVerificationPendingDialog.access$getViewModel$p(this.this$0).cancelApplication();
MemberVerificationPendingDialog.access$getViewModel$p(this.this$0).resetGuildJoinRequest();
this.this$0.dismiss();
}
}

View File

@ -1,9 +1,6 @@
package com.discord.widgets.servers.member_verification;
import android.content.Context;
import android.view.View;
import com.discord.utilities.uri.UriHandler;
import d0.z.d.m;
/* compiled from: MemberVerificationPendingDialog.kt */
public final class MemberVerificationPendingDialog$configureLoadedUI$8 implements View.OnClickListener {
public final /* synthetic */ MemberVerificationPendingDialog this$0;
@ -14,8 +11,7 @@ public final class MemberVerificationPendingDialog$configureLoadedUI$8 implement
@Override // android.view.View.OnClickListener
public final void onClick(View view) {
Context requireContext = this.this$0.requireContext();
m.checkNotNullExpressionValue(requireContext, "requireContext()");
UriHandler.directToPlayStore$default(requireContext, null, null, 6, null);
MemberVerificationPendingDialog.access$getViewModel$p(this.this$0).resetGuildJoinRequest();
this.this$0.dismiss();
}
}

View File

@ -11,6 +11,7 @@ public final class MemberVerificationPendingDialog$configureLoadedUI$9 implement
@Override // android.view.View.OnClickListener
public final void onClick(View view) {
MemberVerificationPendingDialog.access$getViewModel$p(this.this$0).leaveGuild();
this.this$0.dismiss();
}
}

View File

@ -5,6 +5,7 @@ import com.discord.app.AppViewModel;
import com.discord.widgets.servers.WidgetServerSettingsChannels;
import com.discord.widgets.servers.member_verification.MemberVerificationPendingViewModel;
import d0.z.d.o;
import java.io.Serializable;
import java.util.Objects;
import kotlin.jvm.functions.Function0;
/* compiled from: MemberVerificationPendingDialog.kt */
@ -21,8 +22,15 @@ public final class MemberVerificationPendingDialog$viewModel$2 extends o impleme
/* renamed from: invoke */
public final AppViewModel<MemberVerificationPendingViewModel.ViewState> mo1invoke() {
Bundle arguments = this.this$0.getArguments();
Serializable serializable = null;
Long valueOf = arguments != null ? Long.valueOf(arguments.getLong(WidgetServerSettingsChannels.INTENT_EXTRA_GUILD_ID)) : null;
Objects.requireNonNull(valueOf, "null cannot be cast to non-null type com.discord.primitives.GuildId /* = kotlin.Long */");
return new MemberVerificationPendingViewModel(valueOf.longValue(), null, null, 6, null);
long longValue = valueOf.longValue();
Bundle arguments2 = this.this$0.getArguments();
if (arguments2 != null) {
serializable = arguments2.getSerializable("INTENT_EXTRA_DIALOG_STATE");
}
Objects.requireNonNull(serializable, "null cannot be cast to non-null type com.discord.widgets.servers.member_verification.MemberVerificationPendingViewModel.DialogState");
return new MemberVerificationPendingViewModel(longValue, (MemberVerificationPendingViewModel.DialogState) serializable, null, null, 12, null);
}
}

View File

@ -37,6 +37,7 @@ import rx.Observable;
public final class MemberVerificationPendingDialog extends AppDialog {
public static final /* synthetic */ KProperty[] $$delegatedProperties = {a.b0(MemberVerificationPendingDialog.class, "binding", "getBinding()Lcom/discord/databinding/WidgetMemberVerificationPendingDialogBinding;", 0)};
public static final Companion Companion = new Companion(null);
private static final String INTENT_EXTRA_DIALOG_STATE = "INTENT_EXTRA_DIALOG_STATE";
private static final String INTENT_EXTRA_GUILD_ID = "INTENT_EXTRA_GUILD_ID";
private final FragmentViewBindingDelegate binding$delegate = FragmentViewBindingDelegateKt.viewBinding$default(this, MemberVerificationPendingDialog$binding$2.INSTANCE, null, 2, null);
private final Lazy viewModel$delegate;
@ -50,16 +51,33 @@ public final class MemberVerificationPendingDialog extends AppDialog {
this();
}
public final void enqueue(long j, String str) {
m.checkNotNullParameter(str, "guildName");
StoreStream.Companion.getNotices().requestToShow(new StoreNotices.Notice(str, null, 0, 0, false, d0.t.m.listOf(a0.getOrCreateKotlinClass(WidgetHome.class)), 0, false, 0, new MemberVerificationPendingDialog$Companion$enqueue$memberVerificationPendingDialogNotice$1(j), FontUtils.MAX_FONT_SCALING, null));
public static /* synthetic */ void enqueue$default(Companion companion, long j, String str, MemberVerificationPendingViewModel.DialogState dialogState, int i, Object obj) {
if ((i & 4) != 0) {
dialogState = MemberVerificationPendingViewModel.DialogState.PENDING;
}
companion.enqueue(j, str, dialogState);
}
public final void show(FragmentManager fragmentManager, long j) {
public static /* synthetic */ void show$default(Companion companion, FragmentManager fragmentManager, long j, MemberVerificationPendingViewModel.DialogState dialogState, int i, Object obj) {
if ((i & 4) != 0) {
dialogState = MemberVerificationPendingViewModel.DialogState.PENDING;
}
companion.show(fragmentManager, j, dialogState);
}
public final void enqueue(long j, String str, MemberVerificationPendingViewModel.DialogState dialogState) {
m.checkNotNullParameter(str, "guildName");
m.checkNotNullParameter(dialogState, "dialogState");
StoreStream.Companion.getNotices().requestToShow(new StoreNotices.Notice(str, null, 0, 0, false, d0.t.m.listOf(a0.getOrCreateKotlinClass(WidgetHome.class)), 0, false, 0, new MemberVerificationPendingDialog$Companion$enqueue$memberVerificationPendingDialogNotice$1(j, dialogState), FontUtils.MAX_FONT_SCALING, null));
}
public final void show(FragmentManager fragmentManager, long j, MemberVerificationPendingViewModel.DialogState dialogState) {
m.checkNotNullParameter(fragmentManager, "supportFragmentManager");
m.checkNotNullParameter(dialogState, "dialogState");
MemberVerificationPendingDialog memberVerificationPendingDialog = new MemberVerificationPendingDialog();
Bundle bundle = new Bundle();
bundle.putLong("INTENT_EXTRA_GUILD_ID", j);
bundle.putSerializable(MemberVerificationPendingDialog.INTENT_EXTRA_DIALOG_STATE, dialogState);
memberVerificationPendingDialog.setArguments(bundle);
memberVerificationPendingDialog.show(fragmentManager, MemberVerificationPendingDialog.class.getSimpleName());
}
@ -71,17 +89,20 @@ public final class MemberVerificationPendingDialog extends AppDialog {
static {
MemberVerificationPendingViewModel.DialogState.values();
int[] iArr = new int[4];
int[] iArr = new int[5];
$EnumSwitchMapping$0 = iArr;
MemberVerificationPendingViewModel.DialogState dialogState = MemberVerificationPendingViewModel.DialogState.LEAVE;
MemberVerificationPendingViewModel.DialogState dialogState = MemberVerificationPendingViewModel.DialogState.CANCEL;
iArr[dialogState.ordinal()] = 1;
MemberVerificationPendingViewModel.DialogState dialogState2 = MemberVerificationPendingViewModel.DialogState.LEAVE;
iArr[dialogState2.ordinal()] = 2;
MemberVerificationPendingViewModel.DialogState.values();
int[] iArr2 = new int[4];
int[] iArr2 = new int[5];
$EnumSwitchMapping$1 = iArr2;
iArr2[MemberVerificationPendingViewModel.DialogState.PENDING.ordinal()] = 1;
iArr2[MemberVerificationPendingViewModel.DialogState.CANCEL.ordinal()] = 2;
iArr2[dialogState.ordinal()] = 3;
iArr2[MemberVerificationPendingViewModel.DialogState.UPGRADE.ordinal()] = 4;
iArr2[dialogState.ordinal()] = 2;
iArr2[MemberVerificationPendingViewModel.DialogState.REJECTED.ordinal()] = 3;
iArr2[dialogState2.ordinal()] = 4;
iArr2[MemberVerificationPendingViewModel.DialogState.UPGRADE.ordinal()] = 5;
}
}
@ -103,20 +124,18 @@ public final class MemberVerificationPendingDialog extends AppDialog {
private final void configureLoadedUI(MemberVerificationPendingViewModel.ViewState.Loaded loaded) {
ImageView imageView = getBinding().b;
m.checkNotNullExpressionValue(imageView, "binding.memberVerificationPendingImg");
int i = 0;
boolean z2 = false;
imageView.setVisibility(loaded.getShowPendingImage() ? 0 : 8);
TextView textView = getBinding().e;
m.checkNotNullExpressionValue(textView, "binding.memberVerificationTertiaryBtn");
if (!loaded.getShowTertiaryButton()) {
i = 8;
}
textView.setVisibility(i);
int themedColor = loaded.getDialogState().ordinal() != 3 ? ColorCompat.getThemedColor(getContext(), (int) R.attr.color_brand_500) : ColorCompat.getColor(getContext(), (int) R.color.status_red_500);
textView.setVisibility(loaded.getShowTertiaryButton() ? 0 : 8);
int ordinal = loaded.getDialogState().ordinal();
int color = (ordinal == 2 || ordinal == 4) ? ColorCompat.getColor(getContext(), (int) R.color.status_red_500) : ColorCompat.getThemedColor(getContext(), (int) R.attr.color_brand_500);
MaterialButton materialButton = getBinding().f1947c;
m.checkNotNullExpressionValue(materialButton, "binding.memberVerificationPrimaryBtn");
materialButton.setBackgroundTintList(ColorStateList.valueOf(themedColor));
int ordinal = loaded.getDialogState().ordinal();
if (ordinal == 0) {
materialButton.setBackgroundTintList(ColorStateList.valueOf(color));
int ordinal2 = loaded.getDialogState().ordinal();
if (ordinal2 == 0) {
getBinding().b.setImageResource(R.drawable.ic_community_update);
TextView textView2 = getBinding().g;
m.checkNotNullExpressionValue(textView2, "binding.pendingDialogTitle");
@ -130,9 +149,9 @@ public final class MemberVerificationPendingDialog extends AppDialog {
MaterialButton materialButton3 = getBinding().d;
m.checkNotNullExpressionValue(materialButton3, "binding.memberVerificationSecondaryBtn");
materialButton3.setText(getString(R.string.cancel));
getBinding().f1947c.setOnClickListener(new MemberVerificationPendingDialog$configureLoadedUI$8(this));
getBinding().d.setOnClickListener(new MemberVerificationPendingDialog$configureLoadedUI$9(this));
} else if (ordinal == 1) {
getBinding().f1947c.setOnClickListener(new MemberVerificationPendingDialog$configureLoadedUI$11(this));
getBinding().d.setOnClickListener(new MemberVerificationPendingDialog$configureLoadedUI$12(this));
} else if (ordinal2 == 1) {
getBinding().b.setImageResource(R.drawable.ic_member_verification_pending);
TextView textView4 = getBinding().g;
m.checkNotNullExpressionValue(textView4, "binding.pendingDialogTitle");
@ -142,43 +161,84 @@ public final class MemberVerificationPendingDialog extends AppDialog {
textView5.setText(getString(R.string.member_verification_pending_application_modal_desc));
MaterialButton materialButton4 = getBinding().f1947c;
m.checkNotNullExpressionValue(materialButton4, "binding.memberVerificationPrimaryBtn");
materialButton4.setText(getString(R.string.member_verification_pending_application_modal_confirm));
MaterialButton materialButton5 = getBinding().d;
m.checkNotNullExpressionValue(materialButton5, "binding.memberVerificationSecondaryBtn");
materialButton5.setText(getString(R.string.member_verification_pending_application_modal_cancel));
materialButton4.setText(getString(R.string.got_it));
getBinding().f1947c.setOnClickListener(new MemberVerificationPendingDialog$configureLoadedUI$1(this));
getBinding().d.setOnClickListener(new MemberVerificationPendingDialog$configureLoadedUI$2(this));
getBinding().e.setOnClickListener(new MemberVerificationPendingDialog$configureLoadedUI$3(this));
} else if (ordinal == 2) {
TextView textView6 = getBinding().g;
m.checkNotNullExpressionValue(textView6, "binding.pendingDialogTitle");
textView6.setText(getString(R.string.member_verification_pending_application_cancel_modal_title));
TextView textView7 = getBinding().f;
m.checkNotNullExpressionValue(textView7, "binding.pendingDialogDesc");
textView7.setText(getString(R.string.member_verification_pending_application_leave_server_modal_desc));
MaterialButton materialButton6 = getBinding().f1947c;
m.checkNotNullExpressionValue(materialButton6, "binding.memberVerificationPrimaryBtn");
materialButton6.setText(getString(R.string.member_verification_pending_application_modal_cancel));
if (loaded.isPreviewEnabled()) {
MaterialButton materialButton5 = getBinding().d;
m.checkNotNullExpressionValue(materialButton5, "binding.memberVerificationSecondaryBtn");
materialButton5.setVisibility(8);
TextView textView6 = getBinding().e;
m.checkNotNullExpressionValue(textView6, "binding.memberVerificationTertiaryBtn");
textView6.setVisibility(8);
return;
}
MaterialButton materialButton6 = getBinding().d;
m.checkNotNullExpressionValue(materialButton6, "binding.memberVerificationSecondaryBtn");
materialButton6.setVisibility(0);
MaterialButton materialButton7 = getBinding().d;
m.checkNotNullExpressionValue(materialButton7, "binding.memberVerificationSecondaryBtn");
materialButton7.setText(getString(R.string.member_verification_pending_application_modal_dismiss));
getBinding().f1947c.setOnClickListener(new MemberVerificationPendingDialog$configureLoadedUI$4(this));
getBinding().d.setOnClickListener(new MemberVerificationPendingDialog$configureLoadedUI$5(this));
} else if (ordinal == 3) {
TextView textView8 = getBinding().g;
m.checkNotNullExpressionValue(textView8, "binding.pendingDialogTitle");
textView8.setText(getString(R.string.member_verification_pending_application_leave_server_modal_title));
TextView textView9 = getBinding().f;
m.checkNotNullExpressionValue(textView9, "binding.pendingDialogDesc");
textView9.setText(getString(R.string.member_verification_pending_application_leave_server_modal_desc));
materialButton7.setText(getString(R.string.member_verification_cancel_application));
getBinding().d.setOnClickListener(new MemberVerificationPendingDialog$configureLoadedUI$2(this));
TextView textView7 = getBinding().e;
m.checkNotNullExpressionValue(textView7, "binding.memberVerificationTertiaryBtn");
textView7.setVisibility(0);
TextView textView8 = getBinding().e;
m.checkNotNullExpressionValue(textView8, "binding.memberVerificationTertiaryBtn");
textView8.setText(getString(R.string.leave_server));
getBinding().e.setOnClickListener(new MemberVerificationPendingDialog$configureLoadedUI$3(this));
} else if (ordinal2 == 2) {
TextView textView9 = getBinding().g;
m.checkNotNullExpressionValue(textView9, "binding.pendingDialogTitle");
textView9.setText(getString(R.string.member_verification_pending_application_cancel_modal_title));
TextView textView10 = getBinding().f;
m.checkNotNullExpressionValue(textView10, "binding.pendingDialogDesc");
textView10.setText(getString(R.string.member_verification_pending_application_leave_server_modal_desc));
MaterialButton materialButton8 = getBinding().f1947c;
m.checkNotNullExpressionValue(materialButton8, "binding.memberVerificationPrimaryBtn");
materialButton8.setText(getString(R.string.member_verification_pending_application_modal_leave));
materialButton8.setText(getString(R.string.member_verification_pending_application_modal_cancel));
MaterialButton materialButton9 = getBinding().d;
m.checkNotNullExpressionValue(materialButton9, "binding.memberVerificationSecondaryBtn");
materialButton9.setText(getString(R.string.member_verification_pending_application_modal_dismiss));
getBinding().f1947c.setOnClickListener(new MemberVerificationPendingDialog$configureLoadedUI$6(this));
getBinding().d.setOnClickListener(new MemberVerificationPendingDialog$configureLoadedUI$7(this));
getBinding().f1947c.setOnClickListener(new MemberVerificationPendingDialog$configureLoadedUI$4(this));
getBinding().d.setOnClickListener(new MemberVerificationPendingDialog$configureLoadedUI$5(this));
} else if (ordinal2 == 3) {
TextView textView11 = getBinding().g;
m.checkNotNullExpressionValue(textView11, "binding.pendingDialogTitle");
textView11.setText(getString(R.string.member_verification_application_rejected_title));
if (loaded.getRejectionReason() != null) {
String rejectionReason = loaded.getRejectionReason();
if (rejectionReason == null || rejectionReason.length() == 0) {
z2 = true;
}
if (!z2) {
TextView textView12 = getBinding().f;
m.checkNotNullExpressionValue(textView12, "binding.pendingDialogDesc");
textView12.setText(getString(R.string.member_verification_application_rejected_reason) + " " + loaded.getRejectionReason());
}
}
MaterialButton materialButton10 = getBinding().f1947c;
m.checkNotNullExpressionValue(materialButton10, "binding.memberVerificationPrimaryBtn");
materialButton10.setText(getString(R.string.okay));
MaterialButton materialButton11 = getBinding().d;
m.checkNotNullExpressionValue(materialButton11, "binding.memberVerificationSecondaryBtn");
materialButton11.setText(getString(R.string.member_verification_application_reapply));
getBinding().f1947c.setOnClickListener(new MemberVerificationPendingDialog$configureLoadedUI$7(this));
getBinding().d.setOnClickListener(new MemberVerificationPendingDialog$configureLoadedUI$8(this));
} else if (ordinal2 == 4) {
TextView textView13 = getBinding().g;
m.checkNotNullExpressionValue(textView13, "binding.pendingDialogTitle");
textView13.setText(getString(R.string.member_verification_pending_application_leave_server_modal_title));
TextView textView14 = getBinding().f;
m.checkNotNullExpressionValue(textView14, "binding.pendingDialogDesc");
textView14.setText(getString(R.string.member_verification_pending_application_leave_server_modal_desc));
MaterialButton materialButton12 = getBinding().f1947c;
m.checkNotNullExpressionValue(materialButton12, "binding.memberVerificationPrimaryBtn");
materialButton12.setText(getString(R.string.member_verification_pending_application_modal_leave));
MaterialButton materialButton13 = getBinding().d;
m.checkNotNullExpressionValue(materialButton13, "binding.memberVerificationSecondaryBtn");
materialButton13.setText(getString(R.string.member_verification_pending_application_modal_dismiss));
getBinding().f1947c.setOnClickListener(new MemberVerificationPendingDialog$configureLoadedUI$9(this));
getBinding().d.setOnClickListener(new MemberVerificationPendingDialog$configureLoadedUI$10(this));
}
}
@ -198,8 +258,8 @@ public final class MemberVerificationPendingDialog extends AppDialog {
return (MemberVerificationPendingViewModel) this.viewModel$delegate.getValue();
}
public static final void show(FragmentManager fragmentManager, long j) {
Companion.show(fragmentManager, j);
public static final void show(FragmentManager fragmentManager, long j, MemberVerificationPendingViewModel.DialogState dialogState) {
Companion.show(fragmentManager, j, dialogState);
}
@Override // com.discord.app.AppDialog

View File

@ -1,13 +1,19 @@
package com.discord.widgets.servers.member_verification;
import com.discord.models.guild.Guild;
import com.discord.stores.StoreGuildMemberVerificationForm;
import com.discord.widgets.servers.member_verification.MemberVerificationPendingViewModel;
import j0.k.b;
import d0.z.d.k;
import kotlin.jvm.functions.Function2;
/* compiled from: MemberVerificationPendingViewModel.kt */
public final class MemberVerificationPendingViewModel$Companion$observeStores$1<T, R> implements b<StoreGuildMemberVerificationForm.MemberVerificationFormData, MemberVerificationPendingViewModel.StoreState> {
public final /* synthetic */ class MemberVerificationPendingViewModel$Companion$observeStores$1 extends k implements Function2<StoreGuildMemberVerificationForm.MemberVerificationFormData, Guild, MemberVerificationPendingViewModel.StoreState> {
public static final MemberVerificationPendingViewModel$Companion$observeStores$1 INSTANCE = new MemberVerificationPendingViewModel$Companion$observeStores$1();
public final MemberVerificationPendingViewModel.StoreState call(StoreGuildMemberVerificationForm.MemberVerificationFormData memberVerificationFormData) {
return new MemberVerificationPendingViewModel.StoreState(memberVerificationFormData);
public MemberVerificationPendingViewModel$Companion$observeStores$1() {
super(2, MemberVerificationPendingViewModel.StoreState.class, "<init>", "<init>(Lcom/discord/stores/StoreGuildMemberVerificationForm$MemberVerificationFormData;Lcom/discord/models/guild/Guild;)V", 0);
}
public final MemberVerificationPendingViewModel.StoreState invoke(StoreGuildMemberVerificationForm.MemberVerificationFormData memberVerificationFormData, Guild guild) {
return new MemberVerificationPendingViewModel.StoreState(memberVerificationFormData, guild);
}
}

View File

@ -1,30 +0,0 @@
package com.discord.widgets.servers.member_verification;
import com.discord.widgets.servers.member_verification.MemberVerificationPendingViewModel;
import d0.z.d.o;
import kotlin.Unit;
import kotlin.jvm.functions.Function1;
import rx.subjects.PublishSubject;
/* compiled from: MemberVerificationPendingViewModel.kt */
public final class MemberVerificationPendingViewModel$cancelApplication$2 extends o implements Function1<Void, Unit> {
public final /* synthetic */ MemberVerificationPendingViewModel this$0;
/* JADX INFO: super call moved to the top of the method (can break code semantics) */
public MemberVerificationPendingViewModel$cancelApplication$2(MemberVerificationPendingViewModel memberVerificationPendingViewModel) {
super(1);
this.this$0 = memberVerificationPendingViewModel;
}
/* 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(Void r1) {
invoke(r1);
return Unit.a;
}
public final void invoke(Void r2) {
PublishSubject access$getEventSubject$p = MemberVerificationPendingViewModel.access$getEventSubject$p(this.this$0);
access$getEventSubject$p.j.onNext(MemberVerificationPendingViewModel.Event.Success.INSTANCE);
}
}

View File

@ -8,11 +8,11 @@ import kotlin.Unit;
import kotlin.jvm.functions.Function1;
import rx.subjects.PublishSubject;
/* compiled from: MemberVerificationPendingViewModel.kt */
public final class MemberVerificationPendingViewModel$cancelApplication$1 extends o implements Function1<Error, Unit> {
public final class MemberVerificationPendingViewModel$resetGuildJoinRequest$1 extends o implements Function1<Error, Unit> {
public final /* synthetic */ MemberVerificationPendingViewModel this$0;
/* JADX INFO: super call moved to the top of the method (can break code semantics) */
public MemberVerificationPendingViewModel$cancelApplication$1(MemberVerificationPendingViewModel memberVerificationPendingViewModel) {
public MemberVerificationPendingViewModel$resetGuildJoinRequest$1(MemberVerificationPendingViewModel memberVerificationPendingViewModel) {
super(1);
this.this$0 = memberVerificationPendingViewModel;
}

View File

@ -0,0 +1,28 @@
package com.discord.widgets.servers.member_verification;
import com.discord.models.domain.ModelMemberVerificationFormResponse;
import d0.z.d.o;
import kotlin.Unit;
import kotlin.jvm.functions.Function1;
/* compiled from: MemberVerificationPendingViewModel.kt */
public final class MemberVerificationPendingViewModel$resetGuildJoinRequest$2 extends o implements Function1<ModelMemberVerificationFormResponse, Unit> {
public final /* synthetic */ MemberVerificationPendingViewModel this$0;
/* JADX INFO: super call moved to the top of the method (can break code semantics) */
public MemberVerificationPendingViewModel$resetGuildJoinRequest$2(MemberVerificationPendingViewModel memberVerificationPendingViewModel) {
super(1);
this.this$0 = memberVerificationPendingViewModel;
}
/* 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(ModelMemberVerificationFormResponse modelMemberVerificationFormResponse) {
invoke(modelMemberVerificationFormResponse);
return Unit.a;
}
public final void invoke(ModelMemberVerificationFormResponse modelMemberVerificationFormResponse) {
MemberVerificationPendingViewModel.access$onResetSuccess(this.this$0);
}
}

View File

@ -0,0 +1,17 @@
package com.discord.widgets.servers.member_verification;
import kotlin.jvm.functions.Function2;
import rx.functions.Func2;
/* compiled from: MemberVerificationPendingViewModel.kt */
public final class MemberVerificationPendingViewModel$sam$rx_functions_Func2$0 implements Func2 {
private final /* synthetic */ Function2 function;
public MemberVerificationPendingViewModel$sam$rx_functions_Func2$0(Function2 function2) {
this.function = function2;
}
@Override // rx.functions.Func2
public final /* synthetic */ Object call(Object obj, Object obj2) {
return this.function.invoke(obj, obj2);
}
}

View File

@ -3,8 +3,10 @@ package com.discord.widgets.servers.member_verification;
import android.content.Context;
import androidx.annotation.MainThread;
import c.d.b.a.a;
import com.discord.api.guild.GuildFeature;
import com.discord.app.AppViewModel;
import com.discord.models.domain.ModelMemberVerificationForm;
import com.discord.models.guild.Guild;
import com.discord.stores.StoreGuildMemberVerificationForm;
import com.discord.stores.StoreStream;
import com.discord.utilities.rest.RestAPI;
@ -16,10 +18,12 @@ import kotlin.jvm.functions.Function0;
import kotlin.jvm.functions.Function1;
import kotlin.jvm.internal.DefaultConstructorMarker;
import rx.Observable;
import rx.functions.Func2;
import rx.subjects.PublishSubject;
/* compiled from: MemberVerificationPendingViewModel.kt */
public final class MemberVerificationPendingViewModel extends AppViewModel<ViewState> {
public static final Companion Companion = new Companion(null);
private final DialogState dialogState;
private final PublishSubject<Event> eventSubject;
private final long guildId;
private final RestAPI restAPI;
@ -62,10 +66,19 @@ public final class MemberVerificationPendingViewModel extends AppViewModel<ViewS
return companion.observeStores(j);
}
/* JADX WARN: Multi-variable type inference failed */
/* JADX WARNING: Unknown variable types count: 1 */
private final Observable<StoreState> observeStores(long j) {
Observable<R> F = StoreStream.Companion.getMemberVerificationForms().observeMemberVerificationFormData(j).F(MemberVerificationPendingViewModel$Companion$observeStores$1.INSTANCE);
m.checkNotNullExpressionValue(F, "StoreStream\n .g…d).map { StoreState(it) }");
return F;
StoreStream.Companion companion = StoreStream.Companion;
Observable<StoreGuildMemberVerificationForm.MemberVerificationFormData> observeMemberVerificationFormData = companion.getMemberVerificationForms().observeMemberVerificationFormData(j);
Observable<Guild> observeGuild = companion.getGuilds().observeGuild(j);
MemberVerificationPendingViewModel$Companion$observeStores$1 memberVerificationPendingViewModel$Companion$observeStores$1 = MemberVerificationPendingViewModel$Companion$observeStores$1.INSTANCE;
if (memberVerificationPendingViewModel$Companion$observeStores$1 != null) {
memberVerificationPendingViewModel$Companion$observeStores$1 = new MemberVerificationPendingViewModel$sam$rx_functions_Func2$0(memberVerificationPendingViewModel$Companion$observeStores$1);
}
Observable<StoreState> j2 = Observable.j(observeMemberVerificationFormData, observeGuild, (Func2) memberVerificationPendingViewModel$Companion$observeStores$1);
m.checkNotNullExpressionValue(j2, "Observable.combineLatest… ::StoreState\n )");
return j2;
}
}
@ -74,6 +87,7 @@ public final class MemberVerificationPendingViewModel extends AppViewModel<ViewS
UPGRADE,
PENDING,
CANCEL,
REJECTED,
LEAVE
}
@ -108,32 +122,49 @@ public final class MemberVerificationPendingViewModel extends AppViewModel<ViewS
/* compiled from: MemberVerificationPendingViewModel.kt */
public static final class StoreState {
private final Guild guild;
private final StoreGuildMemberVerificationForm.MemberVerificationFormData memberVerificationFormData;
public StoreState(StoreGuildMemberVerificationForm.MemberVerificationFormData memberVerificationFormData) {
public StoreState(StoreGuildMemberVerificationForm.MemberVerificationFormData memberVerificationFormData, Guild guild) {
this.memberVerificationFormData = memberVerificationFormData;
this.guild = guild;
}
public static /* synthetic */ StoreState copy$default(StoreState storeState, StoreGuildMemberVerificationForm.MemberVerificationFormData memberVerificationFormData, int i, Object obj) {
public static /* synthetic */ StoreState copy$default(StoreState storeState, StoreGuildMemberVerificationForm.MemberVerificationFormData memberVerificationFormData, Guild guild, int i, Object obj) {
if ((i & 1) != 0) {
memberVerificationFormData = storeState.memberVerificationFormData;
}
return storeState.copy(memberVerificationFormData);
if ((i & 2) != 0) {
guild = storeState.guild;
}
return storeState.copy(memberVerificationFormData, guild);
}
public final StoreGuildMemberVerificationForm.MemberVerificationFormData component1() {
return this.memberVerificationFormData;
}
public final StoreState copy(StoreGuildMemberVerificationForm.MemberVerificationFormData memberVerificationFormData) {
return new StoreState(memberVerificationFormData);
public final Guild component2() {
return this.guild;
}
public final StoreState copy(StoreGuildMemberVerificationForm.MemberVerificationFormData memberVerificationFormData, Guild guild) {
return new StoreState(memberVerificationFormData, guild);
}
public boolean equals(Object obj) {
if (this != obj) {
return (obj instanceof StoreState) && m.areEqual(this.memberVerificationFormData, ((StoreState) obj).memberVerificationFormData);
if (this == obj) {
return true;
}
return true;
if (!(obj instanceof StoreState)) {
return false;
}
StoreState storeState = (StoreState) obj;
return m.areEqual(this.memberVerificationFormData, storeState.memberVerificationFormData) && m.areEqual(this.guild, storeState.guild);
}
public final Guild getGuild() {
return this.guild;
}
public final StoreGuildMemberVerificationForm.MemberVerificationFormData getMemberVerificationFormData() {
@ -142,15 +173,20 @@ public final class MemberVerificationPendingViewModel extends AppViewModel<ViewS
public int hashCode() {
StoreGuildMemberVerificationForm.MemberVerificationFormData memberVerificationFormData = this.memberVerificationFormData;
if (memberVerificationFormData != null) {
return memberVerificationFormData.hashCode();
int i = 0;
int hashCode = (memberVerificationFormData != null ? memberVerificationFormData.hashCode() : 0) * 31;
Guild guild = this.guild;
if (guild != null) {
i = guild.hashCode();
}
return 0;
return hashCode + i;
}
public String toString() {
StringBuilder R = a.R("StoreState(memberVerificationFormData=");
R.append(this.memberVerificationFormData);
R.append(", guild=");
R.append(this.guild);
R.append(")");
return R.toString();
}
@ -162,19 +198,23 @@ public final class MemberVerificationPendingViewModel extends AppViewModel<ViewS
/* compiled from: MemberVerificationPendingViewModel.kt */
public static final class Loaded extends ViewState {
private final DialogState dialogState;
private final boolean isPreviewEnabled;
private final String rejectionReason;
private final boolean showPendingImage;
private final boolean showTertiaryButton;
/* JADX INFO: super call moved to the top of the method (can break code semantics) */
public Loaded(DialogState dialogState, boolean z2, boolean z3) {
public Loaded(DialogState dialogState, boolean z2, boolean z3, boolean z4, String str) {
super(null);
m.checkNotNullParameter(dialogState, "dialogState");
this.dialogState = dialogState;
this.showPendingImage = z2;
this.showTertiaryButton = z3;
this.isPreviewEnabled = z4;
this.rejectionReason = str;
}
public static /* synthetic */ Loaded copy$default(Loaded loaded, DialogState dialogState, boolean z2, boolean z3, int i, Object obj) {
public static /* synthetic */ Loaded copy$default(Loaded loaded, DialogState dialogState, boolean z2, boolean z3, boolean z4, String str, int i, Object obj) {
if ((i & 1) != 0) {
dialogState = loaded.dialogState;
}
@ -184,7 +224,13 @@ public final class MemberVerificationPendingViewModel extends AppViewModel<ViewS
if ((i & 4) != 0) {
z3 = loaded.showTertiaryButton;
}
return loaded.copy(dialogState, z2, z3);
if ((i & 8) != 0) {
z4 = loaded.isPreviewEnabled;
}
if ((i & 16) != 0) {
str = loaded.rejectionReason;
}
return loaded.copy(dialogState, z2, z3, z4, str);
}
public final DialogState component1() {
@ -199,9 +245,17 @@ public final class MemberVerificationPendingViewModel extends AppViewModel<ViewS
return this.showTertiaryButton;
}
public final Loaded copy(DialogState dialogState, boolean z2, boolean z3) {
public final boolean component4() {
return this.isPreviewEnabled;
}
public final String component5() {
return this.rejectionReason;
}
public final Loaded copy(DialogState dialogState, boolean z2, boolean z3, boolean z4, String str) {
m.checkNotNullParameter(dialogState, "dialogState");
return new Loaded(dialogState, z2, z3);
return new Loaded(dialogState, z2, z3, z4, str);
}
public boolean equals(Object obj) {
@ -212,13 +266,17 @@ public final class MemberVerificationPendingViewModel extends AppViewModel<ViewS
return false;
}
Loaded loaded = (Loaded) obj;
return m.areEqual(this.dialogState, loaded.dialogState) && this.showPendingImage == loaded.showPendingImage && this.showTertiaryButton == loaded.showTertiaryButton;
return m.areEqual(this.dialogState, loaded.dialogState) && this.showPendingImage == loaded.showPendingImage && this.showTertiaryButton == loaded.showTertiaryButton && this.isPreviewEnabled == loaded.isPreviewEnabled && m.areEqual(this.rejectionReason, loaded.rejectionReason);
}
public final DialogState getDialogState() {
return this.dialogState;
}
public final String getRejectionReason() {
return this.rejectionReason;
}
public final boolean getShowPendingImage() {
return this.showPendingImage;
}
@ -229,21 +287,39 @@ public final class MemberVerificationPendingViewModel extends AppViewModel<ViewS
public int hashCode() {
DialogState dialogState = this.dialogState;
int i = 0;
int hashCode = (dialogState != null ? dialogState.hashCode() : 0) * 31;
boolean z2 = this.showPendingImage;
int i = 1;
int i2 = 1;
if (z2) {
z2 = true;
}
int i2 = z2 ? 1 : 0;
int i3 = z2 ? 1 : 0;
int i4 = z2 ? 1 : 0;
int i5 = (hashCode + i2) * 31;
int i5 = z2 ? 1 : 0;
int i6 = (hashCode + i3) * 31;
boolean z3 = this.showTertiaryButton;
if (!z3) {
i = z3 ? 1 : 0;
if (z3) {
z3 = true;
}
return i5 + i;
int i7 = z3 ? 1 : 0;
int i8 = z3 ? 1 : 0;
int i9 = z3 ? 1 : 0;
int i10 = (i6 + i7) * 31;
boolean z4 = this.isPreviewEnabled;
if (!z4) {
i2 = z4 ? 1 : 0;
}
int i11 = (i10 + i2) * 31;
String str = this.rejectionReason;
if (str != null) {
i = str.hashCode();
}
return i11 + i;
}
public final boolean isPreviewEnabled() {
return this.isPreviewEnabled;
}
public String toString() {
@ -252,7 +328,11 @@ public final class MemberVerificationPendingViewModel extends AppViewModel<ViewS
R.append(", showPendingImage=");
R.append(this.showPendingImage);
R.append(", showTertiaryButton=");
return a.L(R, this.showTertiaryButton, ")");
R.append(this.showTertiaryButton);
R.append(", isPreviewEnabled=");
R.append(this.isPreviewEnabled);
R.append(", rejectionReason=");
return a.H(R, this.rejectionReason, ")");
}
}
@ -265,19 +345,23 @@ public final class MemberVerificationPendingViewModel extends AppViewModel<ViewS
}
/* JADX INFO: super call moved to the top of the method (can break code semantics) */
public MemberVerificationPendingViewModel(long j, RestAPI restAPI, Observable<StoreState> observable) {
public MemberVerificationPendingViewModel(long j, DialogState dialogState, RestAPI restAPI, Observable<StoreState> observable) {
super(null);
m.checkNotNullParameter(dialogState, "dialogState");
m.checkNotNullParameter(restAPI, "restAPI");
m.checkNotNullParameter(observable, "storeObservable");
this.guildId = j;
this.dialogState = dialogState;
this.restAPI = restAPI;
this.eventSubject = PublishSubject.k0();
PublishSubject<Event> k0 = PublishSubject.k0();
m.checkNotNullExpressionValue(k0, "PublishSubject.create()");
this.eventSubject = k0;
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.ui$default(ObservableExtensionsKt.computationLatest(observable), this, null, 2, null), MemberVerificationPendingViewModel.class, (Context) null, (Function1) null, (Function1) null, (Function0) null, (Function0) null, new AnonymousClass1(this), 62, (Object) null);
}
/* JADX INFO: this call moved to the top of the method (can break code semantics) */
public /* synthetic */ MemberVerificationPendingViewModel(long j, RestAPI restAPI, Observable observable, int i, DefaultConstructorMarker defaultConstructorMarker) {
this(j, (i & 2) != 0 ? RestAPI.Companion.getApi() : restAPI, (i & 4) != 0 ? Companion.access$observeStores(Companion, j) : observable);
public /* synthetic */ MemberVerificationPendingViewModel(long j, DialogState dialogState, RestAPI restAPI, Observable observable, int i, DefaultConstructorMarker defaultConstructorMarker) {
this(j, (i & 2) != 0 ? DialogState.PENDING : dialogState, (i & 4) != 0 ? RestAPI.Companion.getApi() : restAPI, (i & 8) != 0 ? Companion.access$observeStores(Companion, j) : observable);
}
public static final /* synthetic */ PublishSubject access$getEventSubject$p(MemberVerificationPendingViewModel memberVerificationPendingViewModel) {
@ -288,19 +372,28 @@ public final class MemberVerificationPendingViewModel extends AppViewModel<ViewS
memberVerificationPendingViewModel.handleStoreState(storeState);
}
public static final /* synthetic */ void access$onResetSuccess(MemberVerificationPendingViewModel memberVerificationPendingViewModel) {
memberVerificationPendingViewModel.onResetSuccess();
}
@MainThread
private final void handleStoreState(StoreState storeState) {
ModelMemberVerificationForm form;
StoreGuildMemberVerificationForm.MemberVerificationFormData memberVerificationFormData = storeState.getMemberVerificationFormData();
if (memberVerificationFormData == null || (form = memberVerificationFormData.getForm()) == null || !form.isFormOutdated()) {
updateViewState(new ViewState.Loaded(DialogState.PENDING, true, true));
} else {
updateViewState(new ViewState.Loaded(DialogState.UPGRADE, true, false));
DialogState dialogState = this.dialogState;
Guild guild = storeState.getGuild();
updateViewState(new ViewState.Loaded(dialogState, true, false, guild != null ? guild.hasFeature(GuildFeature.PREVIEW_ENABLED) : false, null));
return;
}
DialogState dialogState2 = DialogState.UPGRADE;
Guild guild2 = storeState.getGuild();
updateViewState(new ViewState.Loaded(dialogState2, true, false, guild2 != null ? guild2.hasFeature(GuildFeature.PREVIEW_ENABLED) : false, null));
}
public final void cancelApplication() {
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.ui$default(ObservableExtensionsKt.restSubscribeOn$default(this.restAPI.cancelGuildJoinRequest(this.guildId), false, 1, null), this, null, 2, null), MemberVerificationPendingViewModel.class, (Context) null, (Function1) null, new MemberVerificationPendingViewModel$cancelApplication$1(this), (Function0) null, (Function0) null, new MemberVerificationPendingViewModel$cancelApplication$2(this), 54, (Object) null);
private final void onResetSuccess() {
PublishSubject<Event> publishSubject = this.eventSubject;
publishSubject.j.onNext(Event.Success.INSTANCE);
}
public final void leaveGuild() {
@ -308,9 +401,11 @@ public final class MemberVerificationPendingViewModel extends AppViewModel<ViewS
}
public final Observable<Event> observeEvents() {
PublishSubject<Event> publishSubject = this.eventSubject;
m.checkNotNullExpressionValue(publishSubject, "eventSubject");
return publishSubject;
return this.eventSubject;
}
public final void resetGuildJoinRequest() {
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.ui$default(ObservableExtensionsKt.restSubscribeOn$default(this.restAPI.resetGuildJoinRequest(this.guildId), false, 1, null), this, null, 2, null), MemberVerificationPendingViewModel.class, (Context) null, (Function1) null, new MemberVerificationPendingViewModel$resetGuildJoinRequest$1(this), (Function0) null, (Function0) null, new MemberVerificationPendingViewModel$resetGuildJoinRequest$2(this), 54, (Object) null);
}
public final void updateDialogState(DialogState dialogState) {
@ -322,12 +417,7 @@ public final class MemberVerificationPendingViewModel extends AppViewModel<ViewS
ViewState.Loaded loaded = (ViewState.Loaded) viewState;
if (loaded != null) {
DialogState dialogState2 = DialogState.PENDING;
boolean z2 = true;
boolean z3 = dialogState == dialogState2;
if (dialogState != dialogState2) {
z2 = false;
}
updateViewState(loaded.copy(dialogState, z3, z2));
updateViewState(ViewState.Loaded.copy$default(loaded, dialogState, dialogState == dialogState2, dialogState == dialogState2 && !loaded.isPreviewEnabled(), false, null, 24, null));
}
}
}

View File

@ -1,6 +1,7 @@
package com.discord.widgets.servers.member_verification;
import com.discord.R;
import com.discord.widgets.servers.member_verification.MemberVerificationPendingDialog;
import com.discord.widgets.servers.member_verification.WidgetMemberVerificationViewModel;
import d0.z.d.m;
import d0.z.d.o;
@ -36,7 +37,7 @@ public final class WidgetMemberVerification$onViewBoundOrOnResume$2 extends o im
MemberVerificationSuccessDialog.Companion.enqueue(guildName);
}
} else if (success.getGuildId() != null && success.getGuildName() != null) {
MemberVerificationPendingDialog.Companion.enqueue(success.getGuildId().longValue(), success.getGuildName());
MemberVerificationPendingDialog.Companion.enqueue$default(MemberVerificationPendingDialog.Companion, success.getGuildId().longValue(), success.getGuildName(), null, 4, null);
}
} else if (event instanceof WidgetMemberVerificationViewModel.Event.Error) {
c.a.d.m.i(this.this$0, R.string.guild_settings_public_update_failed, 0, 4);

View File

@ -346,7 +346,7 @@ public final class WidgetSettings extends AppFragment implements OnTabSelectedLi
TextView textView = binding.f;
m.checkNotNullExpressionValue(textView, "appInfoHeader");
String string = getString(R.string.app_information);
textView.setText(string + " - 102.3 - Alpha (102203)");
textView.setText(string + " - 102.4 - Alpha (102204)");
binding.B.setOnClickListener(new WidgetSettings$onViewBound$$inlined$with$lambda$3(this));
binding.u.setOnClickListener(WidgetSettings$onViewBound$1$5.INSTANCE);
binding.q.setOnClickListener(WidgetSettings$onViewBound$1$6.INSTANCE);

View File

@ -40,7 +40,7 @@ public final class WidgetCallFullscreen$configureBottomControls$1 extends o impl
WidgetEndGuildScheduledEventBottomSheet.Companion companion2 = WidgetEndGuildScheduledEventBottomSheet.Companion;
FragmentManager parentFragmentManager2 = this.this$0.getParentFragmentManager();
m.checkNotNullExpressionValue(parentFragmentManager2, "parentFragmentManager");
companion2.show(parentFragmentManager2, "END_EVENT_REQUEST_KEY", guildScheduledEventToEndForCall$default.h());
companion2.show(parentFragmentManager2, "END_EVENT_REQUEST_KEY", guildScheduledEventToEndForCall$default.g(), guildScheduledEventToEndForCall$default.h());
}
}
}

View File

@ -768,7 +768,8 @@ public final class WidgetVoiceBottomSheet extends AppBottomSheet {
WidgetEndGuildScheduledEventBottomSheet.Companion companion3 = WidgetEndGuildScheduledEventBottomSheet.Companion;
FragmentManager parentFragmentManager3 = getParentFragmentManager();
d0.z.d.m.checkNotNullExpressionValue(parentFragmentManager3, "parentFragmentManager");
companion3.show(parentFragmentManager3, END_EVENT_REQUEST_KEY, ((WidgetVoiceBottomSheetViewModel.Event.ShowEventEnd) event).getGuildScheduledEvent().h());
WidgetVoiceBottomSheetViewModel.Event.ShowEventEnd showEventEnd = (WidgetVoiceBottomSheetViewModel.Event.ShowEventEnd) event;
companion3.show(parentFragmentManager3, END_EVENT_REQUEST_KEY, showEventEnd.getGuildScheduledEvent().g(), showEventEnd.getGuildScheduledEvent().h());
} else if (event instanceof WidgetVoiceBottomSheetViewModel.Event.EnqueueCallFeedbackSheet) {
WidgetVoiceBottomSheetViewModel.Event.EnqueueCallFeedbackSheet enqueueCallFeedbackSheet = (WidgetVoiceBottomSheetViewModel.Event.EnqueueCallFeedbackSheet) event;
CallFeedbackSheetNavigator.INSTANCE.enqueueNotice(enqueueCallFeedbackSheet.getChannelId(), enqueueCallFeedbackSheet.getRtcConnectionId(), enqueueCallFeedbackSheet.getMediaSessionId(), Long.valueOf(enqueueCallFeedbackSheet.getCallDuration()), enqueueCallFeedbackSheet.getTriggerRateDenominator());

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.cardview.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/folder_context_menu_card" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" app:cardBackgroundColor="?attr/colorBackgroundFloating" app:cardCornerRadius="4dp" app:cardElevation="4dp" app:cardUseCompatPadding="true">
<androidx.cardview.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/folder_context_menu_card" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" app:cardBackgroundColor="?attr/colorBackgroundFloating" app:cardCornerRadius="4dp" app:cardElevation="4dp">
<LinearLayout android:orientation="vertical" android:layout_width="wrap_content" android:layout_height="wrap_content" android:minWidth="240dp">
<TextView android:textSize="@dimen/uikit_textsize_large" android:textColor="?attr/colorHeaderPrimary" android:id="@+id/folder_context_menu_header" android:paddingTop="14dp" android:paddingBottom="14dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:fontFamily="?attr/font_display_bold" android:paddingStart="16dp" android:paddingEnd="16dp"/>
<View android:id="@+id/folder_context_menu_header_divider" android:background="?attr/colorBackgroundModifierAccent" android:layout_width="match_parent" android:layout_height="1dp"/>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.cardview.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/guild_context_menu_card" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" app:cardBackgroundColor="?attr/colorBackgroundFloating" app:cardCornerRadius="4dp" app:cardElevation="4dp" app:cardUseCompatPadding="true">
<androidx.cardview.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/guild_context_menu_card" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" app:cardBackgroundColor="?attr/colorBackgroundFloating" app:cardCornerRadius="4dp" app:cardElevation="4dp">
<LinearLayout android:orientation="vertical" android:layout_width="wrap_content" android:layout_height="wrap_content" android:minWidth="240dp">
<TextView android:textColor="?attr/colorHeaderPrimary" android:id="@+id/guild_context_menu_header" android:paddingTop="14dp" android:paddingBottom="14dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:fontFamily="?attr/font_display_bold" android:paddingStart="16dp" android:paddingEnd="16dp" style="@style/UiKit_TextView_H2_Bold"/>
<View android:id="@+id/guild_context_menu_header_divider" android:background="?attr/colorBackgroundModifierAccent" android:layout_width="match_parent" android:layout_height="1dp"/>

View File

@ -296,8 +296,8 @@
<string name="animate_emoji">Play animated emoji</string>
<string name="animate_emoji_note">I want emoji to move and groove.</string>
<string name="animated_emoji">Animated Emoji</string>
<string name="animated_guild_banner_tooltip_content">Servers with {tier3} can choose a GIF for their server banner under Server Settings &gt; Overview.</string>
<string name="animated_guild_banner_tooltip_content_tier_3">You can now choose a GIF for your server banner as part of your {tier3}. Try it out now under Server Settings &gt; Overview!</string>
<string name="animated_guild_banner_tooltip_content">Servers with {tier3} can choose a GIF for their server banner under **Server Settings &gt; Overview**.</string>
<string name="animated_guild_banner_tooltip_content_tier_3">You can now choose a GIF for your server banner as part of your {tier3}. Try it out now under **Server Settings &gt; Overview**!</string>
<string name="animated_guild_banner_tooltip_content_tier_3_tier_name">Boosting Level 3 perks</string>
<string name="animated_guild_banner_tooltip_content_tier_3_tier_name_repositioned">Boosting Communities plan</string>
<string name="animated_guild_banner_tooltip_content_tier_name">Boosting Level 3</string>
@ -1311,9 +1311,17 @@
<string name="channel">Channel</string>
<string name="channel_a11y_label">!!{channelName}!! (channel)</string>
<string name="channel_actions_menu_label">Channel Actions</string>
<string name="channel_banner_preview_upsell_modal_intro">Youll also help unlock more customization features and utility upgrades for everyone in the server like:</string>
<string name="channel_banner_preview_upsell_modal_subtitle">Boost your server to {targetLevelOrPlan} to use your new channel banner</string>
<string name="channel_banner_preview_upsell_modal_subtitle_repositioned">Boost your server to the {targetLevelOrPlan} plan to use your new channel banner</string>
<string name="channel_banner_preview_upsell_modal_title">This looks great!</string>
<string name="channel_banner_settings_info_1">This image will display at the top of your Channel Information sidebar.</string>
<string name="channel_banner_settings_info_2">File types accepted are .png and .jpg. The recommended minimum dimensions are 480x144 and recommended aspect ratio is 10:3. Max file size of 10MB.</string>
<string name="channel_banner_settings_title">Channel Banner Image</string>
<string name="channel_banner_settings_try_it">**NEW!** Try adding a channel banner</string>
<string name="channel_banner_settings_try_it_cta">Try it!</string>
<string name="channel_banner_settings_upsell">**NEW!** Boost to Level 3 to set a channel banner.</string>
<string name="channel_banner_settings_upsell_repositioning">**NEW!** Boost to the Communities plan to set a channel banner.</string>
<string name="channel_call_current_speaker">Currently Speaking: !!{username}!!</string>
<string name="channel_call_members_popout_header">Participants ‏‮—‬‏ {count}</string>
<string name="channel_call_overflow_menu_label">Channel Call Actions</string>
@ -2656,6 +2664,7 @@
<string name="fallback_menu_item_copy_link">Copy link</string>
<string name="fallback_menu_item_open_in_browser">Open in browser</string>
<string name="fallback_menu_item_share_link">Share link</string>
<string name="favorite_gifs_limit_reached_body">You cannot have more favorites.</string>
<string name="favorite_item">Favorite</string>
<string name="favorites_limit_reached_body">You cannot have more than {count} favorites.</string>
<string name="favorites_limit_reached_title">Oh no!</string>
@ -3556,7 +3565,7 @@
<string name="guild_folder_updated_success">Folder settings saved!</string>
<string name="guild_identity_settings_description">You can change how others see you inside this server only (!!{guildName}!!) by setting a server profile. Anything not set here will show your default user profile.</string>
<string name="guild_identity_settings_per_guild_banner">Server Profile Banner</string>
<string name="guild_identity_settings_title">Server Profile - $[](guildIconHook) !!{guildName}!!</string>
<string name="guild_identity_settings_title_2">Server Profile - $[](guildIconHook) !!{guildName}!!</string>
<string name="guild_identity_settings_upsell">Set a different avatar, profile banner, and about me in each of your servers and more with [Discord Nitro!](onAndMore)</string>
<string name="guild_identity_upsell_modal_body">Be who you want and use a different avatar, banner, and bio in each of your servers, unlock animated avatars, and more with [Discord Nitro!](onAndMore)</string>
<string name="guild_identity_upsell_modal_title">Want full access to server profiles?</string>
@ -3897,6 +3906,7 @@
<string name="guild_role_subscriptions_manage_subscriptions_button">Manage Subscriptions</string>
<string name="guild_role_subscriptions_manage_subscriptions_modal_title">Manage Premium Memberships</string>
<string name="guild_role_subscriptions_member_since">Joined {joinedDate}</string>
<string name="guild_role_subscriptions_require_approved_member">Premium tiers are available to approved server members.</string>
<string name="guild_role_subscriptions_unavailable_channel_label">Premium Channel (Locked)</string>
<string name="guild_role_subscriptions_user_settings_tab">Premium</string>
<string name="guild_role_subscriptions_user_subscriptions_header">Premium</string>
@ -3966,9 +3976,9 @@
<string name="guild_settings_action_filter_webhook_create">Create Webhook</string>
<string name="guild_settings_action_filter_webhook_delete">Delete Webhook</string>
<string name="guild_settings_action_filter_webhook_update">Update Webhook</string>
<string name="guild_settings_animated_banner_try_it">**Try an animated banner!** Choose a GIF from Tenor for your server banner</string>
<string name="guild_settings_animated_banner_upsell">**NEW!** Boost to Level 3 to unlock animated server banners.</string>
<string name="guild_settings_animated_banner_upsell_repositioning">**NEW!** Boost to the Communities plan to unlock animated server banners.</string>
<string name="guild_settings_animated_banner_try_it">**NEW!** Set an animated server banner by uploading or selecting a GIF.</string>
<string name="guild_settings_animated_banner_upsell">**NEW!** Boost to Level 3 to use an animated server banner.</string>
<string name="guild_settings_animated_banner_upsell_repositioning">**NEW!** Boost to the Communities plan to use an animated server banner.</string>
<string name="guild_settings_animated_banner_upsell_try_it_cta">Try it!</string>
<string name="guild_settings_audit_log_announcement_thread_create">$[**!!{user}!!**](userHook) created an announcement thread $[**!!{target}!!**](targetHook)</string>
<string name="guild_settings_audit_log_bot_add">$[**!!{user}!!**](userHook) added $[**!!{target}!!**](targetHook) to the server</string>
@ -4841,6 +4851,8 @@
<string name="holiday_premium_marketing_hero_restrictions">[Rules and restrictions apply.]({termsURL})</string>
<string name="holiday_premium_modal_header">Enjoy a free month on us</string>
<string name="holiday_premium_modal_plus_one">+1 month free</string>
<string name="holiday_promotion_mobile_blurb_part_1">Curious about our holiday promotion?</string>
<string name="holiday_promotion_mobile_blurb_part_2">Check it out on web or in our desktop app</string>
<string name="holiday_promotion_new_subscriber_eligible_body">A free month will automatically get added to your account. Enjoy!</string>
<string name="holiday_promotion_new_subscriber_eligible_header">You\'re getting a free month!</string>
<string name="holiday_promotion_new_subscriber_ineligible_body">Learn more about this promotion\'s [rules and restrictions]({helpdeskUrl}).</string>
@ -6087,8 +6099,8 @@
<string name="move_members_description">Members with this permission can drag other members out of this channel. They can only move members between channels both they and the member they are moving have access.</string>
<string name="move_to">Move To</string>
<string name="move_to_success">User has been moved to the selected channel.</string>
<string name="res_2131892186_msg_alert_cleared">Alert Cleared</string>
<string name="res_2131892187_msg_no_alert_showing">No Alert Showing</string>
<string name="res_2131892198_msg_alert_cleared">Alert Cleared</string>
<string name="res_2131892199_msg_no_alert_showing">No Alert Showing</string>
<string name="mtrl_badge_numberless_content_description">New notification</string>
<string name="mtrl_chip_close_icon_content_description">Remove %1$s</string>
<string name="mtrl_exceed_max_badge_number_content_description">More than %1$d new notifications</string>
@ -8309,7 +8321,6 @@
<string name="select_image_modal_title">Select Image</string>
<string name="select_image_modal_upload_file">Upload File</string>
<string name="select_image_try_animated_avatar">Try animated avatar</string>
<string name="select_image_try_animated_banner">Try animated banner</string>
<string name="select_image_try_guild_banner">Preview an image</string>
<string name="select_message">Select message</string>
<string name="select_picture">Select picture</string>
@ -9496,6 +9507,7 @@
<string name="unknown_channel_update_discord">Please update Discord to access this channel</string>
<string name="unknown_region">Unknown Region</string>
<string name="unknown_user">Unknown User</string>
<string name="unlock_guild_member_avatar">Unlock Avatar</string>
<string name="unmute">Unmute</string>
<string name="unmute_category">Unmute Category</string>
<string name="unmute_channel">Unmute **!!{name}!!**</string>

View File

@ -296,8 +296,8 @@
<string name="animate_emoji">[Þļåý åñîḿåţéð éḿöĵî one two three]</string>
<string name="animate_emoji_note">[Î ŵåñţ éḿöĵî ţö ḿöVé åñð ĝŕööVé. one two three four]</string>
<string name="animated_emoji">[Åñîḿåţéð Éḿöĵî one two three]</string>
<string name="animated_guild_banner_tooltip_content">[ŠéŕVéŕš ŵîţĥ »{tier3}« çåñ çĥööšé å ĜÎF ƒöŕ ţĥéîŕ šéŕVéŕ ɓåññéŕ ûñðéŕ ŠéŕVéŕ Šéţţîñĝš &gt; ÖVéŕVîéŵ. one two three four five six seven eight nine ten]</string>
<string name="animated_guild_banner_tooltip_content_tier_3">[Ýöû çåñ ñöŵ çĥööšé å ĜÎF ƒöŕ ýöûŕ šéŕVéŕ ɓåññéŕ åš þåŕţ öƒ ýöûŕ »{tier3}«. Ţŕý îţ öûţ ñöŵ ûñðéŕ ŠéŕVéŕ Šéţţîñĝš &gt; ÖVéŕVîéŵ¡ one two three four five six seven eight nine ten eleven twelve]</string>
<string name="animated_guild_banner_tooltip_content">[ŠéŕVéŕš ŵîţĥ »{tier3}« çåñ çĥööšé å ĜÎF ƒöŕ ţĥéîŕ šéŕVéŕ ɓåññéŕ ûñðéŕ **ŠéŕVéŕ Šéţţîñĝš &gt; ÖVéŕVîéŵ**. one two three four five six seven eight nine ten eleven twelve thirteen fourteen fiveteen sixteen]</string>
<string name="animated_guild_banner_tooltip_content_tier_3">[Ýöû çåñ ñöŵ çĥööšé å ĜÎF ƒöŕ ýöûŕ šéŕVéŕ ɓåññéŕ åš þåŕţ öƒ ýöûŕ »{tier3}«. Ţŕý îţ öûţ ñöŵ ûñðéŕ **ŠéŕVéŕ Šéţţîñĝš &gt; ÖVéŕVîéŵ**¡ one two three four five six seven eight nine ten eleven twelve thirteen fourteen fiveteen sixteen seventeen nineteen twenty]</string>
<string name="animated_guild_banner_tooltip_content_tier_3_tier_name">[βööšţîñĝ ĻéVéļ 3 þéŕķš one two three]</string>
<string name="animated_guild_banner_tooltip_content_tier_3_tier_name_repositioned">[βööšţîñĝ Çöḿḿûñîţîéš þļåñ one two three]</string>
<string name="animated_guild_banner_tooltip_content_tier_name">[βööšţîñĝ ĻéVéļ 3 one two three]</string>
@ -1311,9 +1311,17 @@
<string name="channel">[Çĥåññéļ one two]</string>
<string name="channel_a11y_label">[¡¡»{channelName}«¡¡ (çĥåññéļ) one two three]</string>
<string name="channel_actions_menu_label">[Çĥåññéļ Åçţîöñš one two three]</string>
<string name="channel_banner_preview_upsell_modal_intro">[Ýöû’ļļ åļšö ĥéļþ ûñļöçķ ḿöŕé çûšţöḿîžåţîöñ ƒéåţûŕéš åñð ûţîļîţý ûþĝŕåðéš ƒöŕ éVéŕýöñé îñ ţĥé šéŕVéŕ ļîķé: one two three four five six seven eight nine ten eleven]</string>
<string name="channel_banner_preview_upsell_modal_subtitle">[βööšţ ýöûŕ šéŕVéŕ ţö »{targetLevelOrPlan}« ţö ûšé ýöûŕ ñéŵ çĥåññéļ ɓåññéŕ one two three four five six]</string>
<string name="channel_banner_preview_upsell_modal_subtitle_repositioned">[βööšţ ýöûŕ šéŕVéŕ ţö ţĥé »{targetLevelOrPlan}« þļåñ ţö ûšé ýöûŕ ñéŵ çĥåññéļ ɓåññéŕ one two three four five six seven]</string>
<string name="channel_banner_preview_upsell_modal_title">[Ţĥîš ļööķš ĝŕéåţ¡ one two three]</string>
<string name="channel_banner_settings_info_1">[Ţĥîš îḿåĝé ŵîļļ ðîšþļåý åţ ţĥé ţöþ öƒ ýöûŕ Çĥåññéļ Îñƒöŕḿåţîöñ šîðéɓåŕ. one two three four five six seven eight]</string>
<string name="channel_banner_settings_info_2">[Fîļé ţýþéš åççéþţéð åŕé .þñĝ åñð .ĵþĝ. Ţĥé ŕéçöḿḿéñðéð ḿîñîḿûḿ ðîḿéñšîöñš åŕé 480х144 åñð ŕéçöḿḿéñðéð åšþéçţ ŕåţîö îš 10:3. Ḿåх ƒîļé šîžé öƒ 10Ḿβ. one two three four five six seven eight nine ten eleven twelve thirteen fourteen fiveteen sixteen seventeen nineteen twenty one two three four five]</string>
<string name="channel_banner_settings_title">[Çĥåññéļ βåññéŕ Îḿåĝé one two three]</string>
<string name="channel_banner_settings_try_it">[**ÑÉŴ¡** Ţŕý åððîñĝ å çĥåññéļ ɓåññéŕ one two three four five]</string>
<string name="channel_banner_settings_try_it_cta">[Ţŕý îţ¡ one two]</string>
<string name="channel_banner_settings_upsell">[**ÑÉŴ¡** βööšţ ţö ĻéVéļ 3 ţö šéţ å çĥåññéļ ɓåññéŕ. one two three four five six]</string>
<string name="channel_banner_settings_upsell_repositioning">[**ÑÉŴ¡** βööšţ ţö ţĥé Çöḿḿûñîţîéš þļåñ ţö šéţ å çĥåññéļ ɓåññéŕ. one two three four five six seven]</string>
<string name="channel_call_current_speaker">[Çûŕŕéñţļý Šþéåķîñĝ: ¡¡»{username}«¡¡ one two three]</string>
<string name="channel_call_members_popout_header">[Þåŕţîçîþåñţš — »{count}« one two three]</string>
<string name="channel_call_overflow_menu_label">[Çĥåññéļ Çåļļ Åçţîöñš one two three]</string>
@ -2656,6 +2664,7 @@
<string name="fallback_menu_item_copy_link">[Çöþý ļîñķ one two]</string>
<string name="fallback_menu_item_open_in_browser">[Öþéñ îñ ɓŕöŵšéŕ one two three]</string>
<string name="fallback_menu_item_share_link">[Šĥåŕé ļîñķ one two]</string>
<string name="favorite_gifs_limit_reached_body">[Ýöû çåññöţ ĥåVé ḿöŕé ƒåVöŕîţéš. one two three four]</string>
<string name="favorite_item">[FåVöŕîţé one two]</string>
<string name="favorites_limit_reached_body">[Ýöû çåññöţ ĥåVé ḿöŕé ţĥåñ »{count}« ƒåVöŕîţéš. one two three four five]</string>
<string name="favorites_limit_reached_title">[Öĥ ñö¡ one two]</string>
@ -3556,7 +3565,7 @@
<string name="guild_folder_updated_success">[Föļðéŕ šéţţîñĝš šåVéð¡ one two three]</string>
<string name="guild_identity_settings_description">[Ýöû çåñ çĥåñĝé ĥöŵ öţĥéŕš šéé ýöû îñšîðé ţĥîš šéŕVéŕ öñļý (¡¡»{guildName}«¡¡) ɓý šéţţîñĝ å šéŕVéŕ þŕöƒîļé. Åñýţĥîñĝ ñöţ šéţ ĥéŕé ŵîļļ šĥöŵ ýöûŕ ðéƒåûļţ ûšéŕ þŕöƒîļé. one two three four five six seven eight nine ten eleven twelve thirteen fourteen fiveteen sixteen seventeen nineteen twenty one two three four five six seven]</string>
<string name="guild_identity_settings_per_guild_banner">[ŠéŕVéŕ Þŕöƒîļé βåññéŕ one two three]</string>
<string name="guild_identity_settings_title">[ŠéŕVéŕ Þŕöƒîļé - €[](ĝûîļðÎçöñĤööķ) ¡¡»{guildName}«¡¡ one two three four five]</string>
<string name="guild_identity_settings_title_2">[ŠéŕVéŕ Þŕöƒîļé - €[](ĝûîļðÎçöñĤööķ) ¡¡»{guildName}«¡¡ one two three four five]</string>
<string name="guild_identity_settings_upsell">[Šéţ å ðéŕéñţ åVåţåŕ, þŕöƒîļé ɓåññéŕ, åñð åɓöûţ ḿé îñ éåçĥ öƒ ýöûŕ šéŕVéŕš åñð ḿöŕé ŵîţĥ [Ðîšçöŕð Ñîţŕö¡](öñÅñðḾöŕé) one two three four five six seven eight nine ten eleven twelve thirteen fourteen fiveteen sixteen seventeen nineteen twenty]</string>
<string name="guild_identity_upsell_modal_body">[βé ŵĥö ýöû ŵåñţ åñð ûšé å ðéŕéñţ åVåţåŕ, ɓåññéŕ, åñð ɓîö îñ éåçĥ öƒ ýöûŕ šéŕVéŕš, ûñļöçķ åñîḿåţéð åVåţåŕš, åñð ḿöŕé ŵîţĥ [Ðîšçöŕð Ñîţŕö¡](öñÅñðḾöŕé) one two three four five six seven eight nine ten eleven twelve thirteen fourteen fiveteen sixteen seventeen nineteen twenty one two three four five six seven]</string>
<string name="guild_identity_upsell_modal_title">[Ŵåñţ ƒûļļ åççéšš ţö šéŕVéŕ þŕöƒîļéš¿ one two three four five]</string>
@ -3897,6 +3906,7 @@
<string name="guild_role_subscriptions_manage_subscriptions_button">[Ḿåñåĝé Šûɓšçŕîþţîöñš one two three]</string>
<string name="guild_role_subscriptions_manage_subscriptions_modal_title">[Ḿåñåĝé Þŕéḿîûḿ Ḿéḿɓéŕšĥîþš one two three four]</string>
<string name="guild_role_subscriptions_member_since">[Ĵöîñéð »{joinedDate}« one two]</string>
<string name="guild_role_subscriptions_require_approved_member">[Þŕéḿîûḿ ţîéŕš åŕé åVåîļåɓļé ţö åþþŕöVéð šéŕVéŕ ḿéḿɓéŕš. one two three four five six seven]</string>
<string name="guild_role_subscriptions_unavailable_channel_label">[Þŕéḿîûḿ Çĥåññéļ (Ļöçķéð) one two three]</string>
<string name="guild_role_subscriptions_user_settings_tab">[Þŕéḿîûḿ one two]</string>
<string name="guild_role_subscriptions_user_subscriptions_header">[Þŕéḿîûḿ one two]</string>
@ -3966,9 +3976,9 @@
<string name="guild_settings_action_filter_webhook_create">[Çŕéåţé Ŵéɓĥööķ one two three]</string>
<string name="guild_settings_action_filter_webhook_delete">[Ðéļéţé Ŵéɓĥööķ one two three]</string>
<string name="guild_settings_action_filter_webhook_update">[Ûþðåţé Ŵéɓĥööķ one two three]</string>
<string name="guild_settings_animated_banner_try_it">[**Ţŕý åñ åñîḿåţéð ɓåññéŕ¡** Çĥööšé å ĜÎF ƒŕöḿ Ţéñöŕ ƒöŕ ýöûŕ šéŕVéŕ ɓåññéŕ one two three four five six seven eight]</string>
<string name="guild_settings_animated_banner_upsell">[**ÑÉŴ¡** βööšţ ţö ĻéVéļ 3 ţö ûñļöçķ åñîḿåţéð šéŕVéŕ ɓåññéŕš. one two three four five six seven]</string>
<string name="guild_settings_animated_banner_upsell_repositioning">[**ÑÉŴ¡** βööšţ ţö ţĥé Çöḿḿûñîţîéš þļåñ ţö ûñļöçķ åñîḿåţéð šéŕVéŕ ɓåññéŕš. one two three four five six seven eight]</string>
<string name="guild_settings_animated_banner_try_it">[**ÑÉŴ¡** Šéţ åñ åñîḿåţéð šéŕVéŕ ɓåññéŕ ɓý ûþļöåðîñĝ öŕ šéļéçţîñĝ å ĜÎF. one two three four five six seven eight]</string>
<string name="guild_settings_animated_banner_upsell">[**ÑÉŴ¡** βööšţ ţö ĻéVéļ 3 ţö ûšé åñ åñîḿåţéð šéŕVéŕ ɓåññéŕ. one two three four five six seven]</string>
<string name="guild_settings_animated_banner_upsell_repositioning">[**ÑÉŴ¡** βööšţ ţö ţĥé Çöḿḿûñîţîéš þļåñ ţö ûšé åñ åñîḿåţéð šéŕVéŕ ɓåññéŕ. one two three four five six seven eight]</string>
<string name="guild_settings_animated_banner_upsell_try_it_cta">[Ţŕý îţ¡ one two]</string>
<string name="guild_settings_audit_log_announcement_thread_create">[€[**¡¡»{user}«¡¡**](ûšéŕĤööķ) çŕéåţéð åñ åññöûñçéḿéñţ ţĥŕéåð €[**¡¡»{target}«¡¡**](ţåŕĝéţĤööķ) one two three four five six seven eight nine ten eleven twelve thirteen fourteen]</string>
<string name="guild_settings_audit_log_bot_add">[€[**¡¡»{user}«¡¡**](ûšéŕĤööķ) åððéð €[**¡¡»{target}«¡¡**](ţåŕĝéţĤööķ) ţö ţĥé šéŕVéŕ one two three four five six seven eight nine ten eleven twelve thirteen]</string>
@ -4841,6 +4851,8 @@
<string name="holiday_premium_marketing_hero_restrictions">[[Ŕûļéš åñð ŕéšţŕîçţîöñš åþþļý.](»{termsURL}«) one two three four]</string>
<string name="holiday_premium_modal_header">[Éñĵöý å ƒŕéé ḿöñţĥ öñ ûš one two three]</string>
<string name="holiday_premium_modal_plus_one">[+1 ḿöñţĥ ƒŕéé one two]</string>
<string name="holiday_promotion_mobile_blurb_part_1">[Çûŕîöûš åɓöûţ öûŕ ĥöļîðåý þŕöḿöţîöñ¿ one two three four five]</string>
<string name="holiday_promotion_mobile_blurb_part_2">[Çĥéçķ îţ öûţ öñ ŵéɓ öŕ îñ öûŕ ðéšķţöþ åþþ one two three four five]</string>
<string name="holiday_promotion_new_subscriber_eligible_body">[Å ƒŕéé ḿöñţĥ ŵîļļ åûţöḿåţîçåļļý ĝéţ åððéð ţö ýöûŕ åççöûñţ. Éñĵöý¡ one two three four five six seven]</string>
<string name="holiday_promotion_new_subscriber_eligible_header">[Ýöû\'ŕé ĝéţţîñĝ å ƒŕéé ḿöñţĥ¡ one two three four]</string>
<string name="holiday_promotion_new_subscriber_ineligible_body">[Ļéåŕñ ḿöŕé åɓöûţ ţĥîš þŕöḿöţîöñ\'š [ŕûļéš åñð ŕéšţŕîçţîöñš](»{helpdeskUrl}«). one two three four five six seven eight nine ten eleven twelve]</string>
@ -6087,8 +6099,8 @@
<string name="move_members_description">[Ḿéḿɓéŕš ŵîţĥ ţĥîš þéŕḿîššîöñ çåñ ðŕåĝ öţĥéŕ ḿéḿɓéŕš öûţ öƒ ţĥîš çĥåññéļ. Ţĥéý çåñ öñļý ḿöVé ḿéḿɓéŕš ɓéţŵééñ çĥåññéļš ɓöţĥ ţĥéý åñð ţĥé ḿéḿɓéŕ ţĥéý åŕé ḿöVîñĝ ĥåVé åççéšš. one two three four five six seven eight nine ten eleven twelve thirteen fourteen fiveteen]</string>
<string name="move_to">[ḾöVé Ţö one two]</string>
<string name="move_to_success">[Ûšéŕ ĥåš ɓééñ ḿöVéð ţö ţĥé šéļéçţéð çĥåññéļ. one two three four five]</string>
<string name="res_2131892186_msg_alert_cleared">[Åļéŕţ Çļéåŕéð one two]</string>
<string name="res_2131892187_msg_no_alert_showing">[Ñö Åļéŕţ Šĥöŵîñĝ one two three]</string>
<string name="res_2131892198_msg_alert_cleared">[Åļéŕţ Çļéåŕéð one two]</string>
<string name="res_2131892199_msg_no_alert_showing">[Ñö Åļéŕţ Šĥöŵîñĝ one two three]</string>
<string name="mtrl_badge_numberless_content_description">[Ñéŵ ñöţîƒîçåţîöñ one two three]</string>
<string name="mtrl_chip_close_icon_content_description">[ŔéḿöVé »%1$s« one two]</string>
<string name="mtrl_exceed_max_badge_number_content_description">[Ḿöŕé ţĥåñ %1$d ñéŵ ñöţîƒîçåţîöñš one two three four]</string>
@ -8309,7 +8321,6 @@
<string name="select_image_modal_title">[Šéļéçţ Îḿåĝé one two]</string>
<string name="select_image_modal_upload_file">[Ûþļöåð Fîļé one two]</string>
<string name="select_image_try_animated_avatar">[Ţŕý åñîḿåţéð åVåţåŕ one two three]</string>
<string name="select_image_try_animated_banner">[Ţŕý åñîḿåţéð ɓåññéŕ one two three]</string>
<string name="select_image_try_guild_banner">[ÞŕéVîéŵ åñ îḿåĝé one two three]</string>
<string name="select_message">[Šéļéçţ ḿéššåĝé one two three]</string>
<string name="select_picture">[Šéļéçţ þîçţûŕé one two three]</string>
@ -9496,6 +9507,7 @@
<string name="unknown_channel_update_discord">[Þļéåšé ûþðåţé Ðîšçöŕð ţö åççéšš ţĥîš çĥåññéļ one two three four five]</string>
<string name="unknown_region">[Ûñķñöŵñ Ŕéĝîöñ one two three]</string>
<string name="unknown_user">[Ûñķñöŵñ Ûšéŕ one two]</string>
<string name="unlock_guild_member_avatar">[Ûñļöçķ ÅVåţåŕ one two]</string>
<string name="unmute">[Ûñḿûţé one two]</string>
<string name="unmute_category">[Ûñḿûţé Çåţéĝöŕý one two three]</string>
<string name="unmute_channel">[Ûñḿûţé **¡¡»{name}«¡¡** one two three]</string>

File diff suppressed because it is too large Load Diff

View File

@ -296,8 +296,8 @@
<string name="animate_emoji">Play animated emoji</string>
<string name="animate_emoji_note">I want emoji to move and groove.</string>
<string name="animated_emoji">Animated Emoji</string>
<string name="animated_guild_banner_tooltip_content">Servers with {tier3} can choose a GIF for their server banner under Server Settings &gt; Overview.</string>
<string name="animated_guild_banner_tooltip_content_tier_3">You can now choose a GIF for your server banner as part of your {tier3}. Try it out now under Server Settings &gt; Overview!</string>
<string name="animated_guild_banner_tooltip_content">Servers with {tier3} can choose a GIF for their server banner under **Server Settings &gt; Overview**.</string>
<string name="animated_guild_banner_tooltip_content_tier_3">You can now choose a GIF for your server banner as part of your {tier3}. Try it out now under **Server Settings &gt; Overview**!</string>
<string name="animated_guild_banner_tooltip_content_tier_3_tier_name">Boosting Level 3 perks</string>
<string name="animated_guild_banner_tooltip_content_tier_3_tier_name_repositioned">Boosting Communities plan</string>
<string name="animated_guild_banner_tooltip_content_tier_name">Boosting Level 3</string>
@ -1313,9 +1313,17 @@
<string name="channel">Channel</string>
<string name="channel_a11y_label">!!{channelName}!! (channel)</string>
<string name="channel_actions_menu_label">Channel Actions</string>
<string name="channel_banner_preview_upsell_modal_intro">Youll also help unlock more customization features and utility upgrades for everyone in the server like:</string>
<string name="channel_banner_preview_upsell_modal_subtitle">Boost your server to {targetLevelOrPlan} to use your new channel banner</string>
<string name="channel_banner_preview_upsell_modal_subtitle_repositioned">Boost your server to the {targetLevelOrPlan} plan to use your new channel banner</string>
<string name="channel_banner_preview_upsell_modal_title">This looks great!</string>
<string name="channel_banner_settings_info_1">This image will display at the top of your Channel Information sidebar.</string>
<string name="channel_banner_settings_info_2">File types accepted are .png and .jpg. The recommended minimum dimensions are 480x144 and recommended aspect ratio is 10:3. Max file size of 10MB.</string>
<string name="channel_banner_settings_title">Channel Banner Image</string>
<string name="channel_banner_settings_try_it">**NEW!** Try adding a channel banner</string>
<string name="channel_banner_settings_try_it_cta">Try it!</string>
<string name="channel_banner_settings_upsell">**NEW!** Boost to Level 3 to set a channel banner.</string>
<string name="channel_banner_settings_upsell_repositioning">**NEW!** Boost to the Communities plan to set a channel banner.</string>
<string name="channel_call_current_speaker">Currently Speaking: !!{username}!!</string>
<string name="channel_call_members_popout_header">Participants — {count}</string>
<string name="channel_call_overflow_menu_label">Channel Call Actions</string>
@ -1490,7 +1498,7 @@
<string name="color_picker_title">Select a color</string>
<string name="color_picker_transparency">Transparency</string>
<string name="color_picker_use_default">Use Default</string>
<string name="res_2131887570_com_crashlytics_android_build_id">e46a8305e164499398a164eac80ee55f</string>
<string name="res_2131887578_com_crashlytics_android_build_id">d29304dcdba1428fbfcb3ab9d1458903</string>
<string name="coming_soon">Coming Soon</string>
<string name="command_accessibility_desc_app_header_item">Slash command application {applicationName}</string>
<string name="command_accessibility_desc_app_item">{applicationName} application</string>
@ -2666,6 +2674,7 @@
<string name="fallback_menu_item_copy_link">Copy link</string>
<string name="fallback_menu_item_open_in_browser">Open in browser</string>
<string name="fallback_menu_item_share_link">Share link</string>
<string name="favorite_gifs_limit_reached_body">You cannot have more favorites.</string>
<string name="favorite_item">Favorite</string>
<string name="favorites_limit_reached_body">You cannot have more than {count} favorites.</string>
<string name="favorites_limit_reached_title">Oh no!</string>
@ -3572,7 +3581,7 @@
<string name="guild_folder_updated_success">Folder settings saved!</string>
<string name="guild_identity_settings_description">You can change how others see you inside this server only (!!{guildName}!!) by setting a server profile. Anything not set here will show your default user profile.</string>
<string name="guild_identity_settings_per_guild_banner">Server Profile Banner</string>
<string name="guild_identity_settings_title">Server Profile - $[](guildIconHook) !!{guildName}!!</string>
<string name="guild_identity_settings_title_2">Server Profile - $[](guildIconHook) !!{guildName}!!</string>
<string name="guild_identity_settings_upsell">Set a different avatar, profile banner, and about me in each of your servers and more with [Discord Nitro!](onAndMore)</string>
<string name="guild_identity_upsell_modal_body">Be who you want and use a different avatar, banner, and bio in each of your servers, unlock animated avatars, and more with [Discord Nitro!](onAndMore)</string>
<string name="guild_identity_upsell_modal_title">Want full access to server profiles?</string>
@ -3913,6 +3922,7 @@
<string name="guild_role_subscriptions_manage_subscriptions_button">Manage Subscriptions</string>
<string name="guild_role_subscriptions_manage_subscriptions_modal_title">Manage Premium Memberships</string>
<string name="guild_role_subscriptions_member_since">Joined {joinedDate}</string>
<string name="guild_role_subscriptions_require_approved_member">Premium tiers are available to approved server members.</string>
<string name="guild_role_subscriptions_unavailable_channel_label">Premium Channel (Locked)</string>
<string name="guild_role_subscriptions_user_settings_tab">Premium</string>
<string name="guild_role_subscriptions_user_subscriptions_header">Premium</string>
@ -3982,9 +3992,9 @@
<string name="guild_settings_action_filter_webhook_create">Create Webhook</string>
<string name="guild_settings_action_filter_webhook_delete">Delete Webhook</string>
<string name="guild_settings_action_filter_webhook_update">Update Webhook</string>
<string name="guild_settings_animated_banner_try_it">**Try an animated banner!** Choose a GIF from Tenor for your server banner</string>
<string name="guild_settings_animated_banner_upsell">**NEW!** Boost to Level 3 to unlock animated server banners.</string>
<string name="guild_settings_animated_banner_upsell_repositioning">**NEW!** Boost to the Communities plan to unlock animated server banners.</string>
<string name="guild_settings_animated_banner_try_it">**NEW!** Set an animated server banner by uploading or selecting a GIF.</string>
<string name="guild_settings_animated_banner_upsell">**NEW!** Boost to Level 3 to use an animated server banner.</string>
<string name="guild_settings_animated_banner_upsell_repositioning">**NEW!** Boost to the Communities plan to use an animated server banner.</string>
<string name="guild_settings_animated_banner_upsell_try_it_cta">Try it!</string>
<string name="guild_settings_audit_log_announcement_thread_create">$[**!!{user}!!**](userHook) created an announcement thread $[**!!{target}!!**](targetHook)</string>
<string name="guild_settings_audit_log_bot_add">$[**!!{user}!!**](userHook) added $[**!!{target}!!**](targetHook) to the server</string>
@ -4858,6 +4868,8 @@
<string name="holiday_premium_marketing_hero_restrictions">[Rules and restrictions apply.]({termsURL})</string>
<string name="holiday_premium_modal_header">Enjoy a free month on us</string>
<string name="holiday_premium_modal_plus_one">+1 month free</string>
<string name="holiday_promotion_mobile_blurb_part_1">Curious about our holiday promotion?</string>
<string name="holiday_promotion_mobile_blurb_part_2">Check it out on web or in our desktop app</string>
<string name="holiday_promotion_new_subscriber_eligible_body">A free month will automatically get added to your account. Enjoy!</string>
<string name="holiday_promotion_new_subscriber_eligible_header">You\'re getting a free month!</string>
<string name="holiday_promotion_new_subscriber_ineligible_body">Learn more about this promotion\'s [rules and restrictions]({helpdeskUrl}).</string>
@ -6106,8 +6118,8 @@
<string name="move_members_description">Members with this permission can drag other members out of this channel. They can only move members between channels both they and the member they are moving have access.</string>
<string name="move_to">Move To</string>
<string name="move_to_success">User has been moved to the selected channel.</string>
<string name="res_2131892186_msg_alert_cleared">Alert Cleared</string>
<string name="res_2131892187_msg_no_alert_showing">No Alert Showing</string>
<string name="res_2131892198_msg_alert_cleared">Alert Cleared</string>
<string name="res_2131892199_msg_no_alert_showing">No Alert Showing</string>
<string name="mtrl_badge_numberless_content_description">New notification</string>
<string name="mtrl_chip_close_icon_content_description">Remove %1$s</string>
<string name="mtrl_exceed_max_badge_number_content_description">More than %1$d new notifications</string>
@ -8336,7 +8348,6 @@
<string name="select_image_modal_title">Select Image</string>
<string name="select_image_modal_upload_file">Upload File</string>
<string name="select_image_try_animated_avatar">Try animated avatar</string>
<string name="select_image_try_animated_banner">Try animated banner</string>
<string name="select_image_try_guild_banner">Preview an image</string>
<string name="select_message">Select message</string>
<string name="select_picture">Select picture</string>
@ -9525,6 +9536,7 @@
<string name="unknown_channel_update_discord">Please update Discord to access this channel</string>
<string name="unknown_region">Unknown Region</string>
<string name="unknown_user">Unknown User</string>
<string name="unlock_guild_member_avatar">Unlock Avatar</string>
<string name="unmute">Unmute</string>
<string name="unmute_category">Unmute Category</string>
<string name="unmute_channel">Unmute **!!{name}!!**</string>