93.4 - Alpha (93204)

This commit is contained in:
Juby210 2021-09-17 08:25:50 +02:00
parent 3376eda39d
commit d72b8adfab
48 changed files with 7638 additions and 7576 deletions

View File

@ -10,8 +10,8 @@ android {
applicationId 'com.discord'
minSdkVersion 21
targetSdkVersion 29
versionCode 93203
versionName "93.3 - Alpha"
versionCode 93204
versionName "93.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="93203" android:versionName="93.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="93204" android:versionName="93.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="29"/>
<uses-feature android:name="android.hardware.camera" android:required="false"/>
<uses-feature android:name="android.hardware.camera.autofocus" android:required="false"/>

View File

@ -13,7 +13,6 @@ import com.discord.utilities.logging.Logger;
import d0.z.d.k;
import d0.z.d.m;
import f0.e0.c;
import java.util.Iterator;
import java.util.Map;
import java.util.Objects;
import kotlin.Pair;
@ -29,8 +28,6 @@ public final /* synthetic */ class a extends k implements Function1<Stats, Unit>
/* JADX DEBUG: Method arguments types fixed to match base method, original types: [java.lang.Object] */
@Override // kotlin.jvm.functions.Function1
public Unit invoke(Stats stats) {
e eVar;
Throwable th;
long j;
OutboundRtpVideo outboundRtpVideo;
ReceiverReport[] receiverReports;
@ -42,112 +39,87 @@ public final /* synthetic */ class a extends k implements Function1<Stats, Unit>
dVar.a.removeFirst();
}
dVar.f.update(stats2);
e eVar2 = dVar.g;
synchronized (eVar2) {
try {
m.checkNotNullParameter(stats2, "stats");
long currentTimeMillis = eVar2.q.currentTimeMillis();
Transport transport = stats2.getTransport();
eVar2.f(null, Integer.valueOf((transport == null || (receiverReports = transport.getReceiverReports()) == null) ? 0 : receiverReports.length), currentTimeMillis);
if (!eVar2.k.a() && (outboundRtpVideo = stats2.getOutboundRtpVideo()) != null) {
eVar2.a(eVar2.l, new e.h((long) outboundRtpVideo.getResolution().getHeight(), currentTimeMillis, new e.a(outboundRtpVideo.getFramesEncoded(), outboundRtpVideo.getFramesSent(), outboundRtpVideo.getPacketsSent(), (long) outboundRtpVideo.getPacketsLost(), 0, outboundRtpVideo.getBytesSent(), outboundRtpVideo.getNackCount(), outboundRtpVideo.getPliCount())));
if (eVar2.l.d == null && outboundRtpVideo.getFramesEncoded() > 0) {
eVar2.e.notifyAsync(g.i);
eVar2.l.d = Long.valueOf(currentTimeMillis - eVar2.g);
Logger.i$default(eVar2.p, "VideoQuality: outboundStats.timeToFirstFrame: " + eVar2.l.d, null, 2, null);
}
eVar2.b(outboundRtpVideo.getBitrateTarget());
e eVar = dVar.g;
synchronized (eVar) {
m.checkNotNullParameter(stats2, "stats");
long currentTimeMillis = eVar.q.currentTimeMillis();
Transport transport = stats2.getTransport();
eVar.g(null, Integer.valueOf((transport == null || (receiverReports = transport.getReceiverReports()) == null) ? 0 : receiverReports.length), currentTimeMillis);
if (!eVar.k.a() && (outboundRtpVideo = stats2.getOutboundRtpVideo()) != null) {
eVar.a(eVar.l, new e.h((long) outboundRtpVideo.getResolution().getHeight(), currentTimeMillis, new e.a(outboundRtpVideo.getFramesEncoded(), outboundRtpVideo.getFramesSent(), outboundRtpVideo.getPacketsSent(), (long) outboundRtpVideo.getPacketsLost(), 0, outboundRtpVideo.getBytesSent(), outboundRtpVideo.getNackCount(), outboundRtpVideo.getPliCount(), outboundRtpVideo.getQpSum())));
if (eVar.l.d == null && outboundRtpVideo.getFramesEncoded() > 0) {
eVar.e.notifyAsync(g.i);
eVar.l.d = Long.valueOf(currentTimeMillis - eVar.g);
Logger.i$default(eVar.p, "VideoQuality: outboundStats.timeToFirstFrame: " + eVar.l.d, null, 2, null);
}
if (!eVar2.i.a()) {
Iterator<Map.Entry<String, InboundRtpVideo>> it = stats2.getInboundRtpVideo().entrySet().iterator();
while (it.hasNext()) {
Map.Entry<String, InboundRtpVideo> next = it.next();
String key = next.getKey();
InboundRtpVideo value = next.getValue();
Map<String, e.C0043e> map = eVar2.m;
e.C0043e eVar3 = map.get(key);
if (eVar3 == null) {
eVar3 = new e.C0043e();
map.put(key, eVar3);
}
e.C0043e eVar4 = eVar3;
eVar.b(outboundRtpVideo.getBitrateTarget());
}
if (!eVar.i.a()) {
for (Map.Entry<String, InboundRtpVideo> entry : stats2.getInboundRtpVideo().entrySet()) {
String key = entry.getKey();
InboundRtpVideo value = entry.getValue();
Map<String, e.C0043e> map = eVar.m;
e.C0043e eVar2 = map.get(key);
if (eVar2 == null) {
eVar2 = new e.C0043e();
map.put(key, eVar2);
}
e.C0043e eVar3 = eVar2;
eVar.a(eVar3, eVar.f(value, currentTimeMillis));
if (eVar3.d == null && value.getFramesDecoded() > 0) {
byte[] bArr = c.a;
m.checkParameterIsNotNull(key, "$this$toLongOrDefault");
try {
eVar = eVar2;
try {
eVar.a(eVar4, new e.h((long) value.getResolution().getHeight(), currentTimeMillis, new e.a((long) value.getFramesDecoded(), (long) value.getFramesReceived(), (long) value.getPacketsReceived(), (long) value.getPacketsLost(), (long) value.getFramesDropped(), value.getBytesReceived(), value.getNackCount(), value.getPliCount())));
if (eVar4.d == null && value.getFramesDecoded() > 0) {
byte[] bArr = c.a;
m.checkParameterIsNotNull(key, "$this$toLongOrDefault");
try {
j = Long.parseLong(key);
} catch (NumberFormatException unused) {
j = 0;
}
Long l = eVar.n.get(Long.valueOf(value.getSsrc()));
if (l != null) {
eVar.e.notifyAsync(new h(value));
eVar4.d = Long.valueOf(currentTimeMillis - l.longValue());
Logger.i$default(eVar.p, "VideoQuality: inbound.timeToFirstFrame: " + eVar4.d + " (userId: " + j + ", ssrc: " + value.getSsrc() + ')', null, 2, null);
} else {
Logger.e$default(eVar.p, "VideoQuality: inbound.timeToFirstFrame: Unable to locate start time. (userId: " + j + ", ssrc: " + value.getSsrc() + ')', null, null, 6, null);
}
}
eVar2 = eVar;
it = it;
stats2 = stats2;
dVar = dVar;
currentTimeMillis = currentTimeMillis;
} catch (Throwable th2) {
th = th2;
throw th;
}
} catch (Throwable th3) {
th = th3;
eVar = eVar2;
throw th;
j = Long.parseLong(key);
} catch (NumberFormatException unused) {
j = 0;
}
Long l = eVar.n.get(Long.valueOf(value.getSsrc()));
if (l != null) {
eVar.e.notifyAsync(new h(value));
eVar3.d = Long.valueOf(currentTimeMillis - l.longValue());
Logger.i$default(eVar.p, "VideoQuality: inbound.timeToFirstFrame: " + eVar3.d + " (userId: " + j + ", ssrc: " + value.getSsrc() + ')', null, 2, null);
} else {
Logger.e$default(eVar.p, "VideoQuality: inbound.timeToFirstFrame: Unable to locate start time. (userId: " + j + ", ssrc: " + value.getSsrc() + ')', null, null, 6, null);
}
}
}
KrispOveruseDetector krispOveruseDetector = dVar.h;
Objects.requireNonNull(krispOveruseDetector);
m.checkNotNullParameter(stats2, "stats");
if (krispOveruseDetector.d.getType() == MediaEngineConnection.Type.DEFAULT && krispOveruseDetector.d.b()) {
OutboundRtpAudio outboundRtpAudio = stats2.getOutboundRtpAudio();
if (outboundRtpAudio != null && outboundRtpAudio.getNoiseCancellerIsEnabled()) {
OutboundRtpAudio outboundRtpAudio2 = krispOveruseDetector.b;
if (outboundRtpAudio2 != null) {
Pair<Boolean, Long> a = krispOveruseDetector.a(outboundRtpAudio2, stats2.getOutboundRtpAudio(), 8.0d);
boolean booleanValue = a.component1().booleanValue();
long longValue = a.component2().longValue();
if (booleanValue) {
krispOveruseDetector.d.f(KrispOveruseDetector.Status.CPU_OVERUSE);
} else if (longValue == 0) {
int i = krispOveruseDetector.f2152c + 1;
krispOveruseDetector.f2152c = i;
if (i > 2) {
krispOveruseDetector.d.f(KrispOveruseDetector.Status.FAILED);
}
} else {
krispOveruseDetector.f2152c = 0;
}
}
krispOveruseDetector.b = stats2.getOutboundRtpAudio();
}
OutboundRtpAudio outboundRtpAudio3 = stats2.getOutboundRtpAudio();
if (outboundRtpAudio3 != null && outboundRtpAudio3.getVoiceActivityDetectorIsEnabled()) {
OutboundRtpAudio outboundRtpAudio4 = krispOveruseDetector.a;
if (outboundRtpAudio4 != null && krispOveruseDetector.a(outboundRtpAudio4, stats2.getOutboundRtpAudio(), 4.0d).component1().booleanValue()) {
krispOveruseDetector.d.f(KrispOveruseDetector.Status.VAD_CPU_OVERUSE);
}
krispOveruseDetector.a = stats2.getOutboundRtpAudio();
}
}
return Unit.a;
} catch (Throwable th4) {
th = th4;
eVar = eVar2;
throw th;
}
}
KrispOveruseDetector krispOveruseDetector = dVar.h;
Objects.requireNonNull(krispOveruseDetector);
m.checkNotNullParameter(stats2, "stats");
if (krispOveruseDetector.d.getType() == MediaEngineConnection.Type.DEFAULT && krispOveruseDetector.d.b()) {
OutboundRtpAudio outboundRtpAudio = stats2.getOutboundRtpAudio();
if (outboundRtpAudio != null && outboundRtpAudio.getNoiseCancellerIsEnabled()) {
OutboundRtpAudio outboundRtpAudio2 = krispOveruseDetector.b;
if (outboundRtpAudio2 != null) {
Pair<Boolean, Long> a = krispOveruseDetector.a(outboundRtpAudio2, stats2.getOutboundRtpAudio(), 8.0d);
boolean booleanValue = a.component1().booleanValue();
long longValue = a.component2().longValue();
if (booleanValue) {
krispOveruseDetector.d.f(KrispOveruseDetector.Status.CPU_OVERUSE);
} else if (longValue == 0) {
int i = krispOveruseDetector.f2152c + 1;
krispOveruseDetector.f2152c = i;
if (i > 2) {
krispOveruseDetector.d.f(KrispOveruseDetector.Status.FAILED);
}
} else {
krispOveruseDetector.f2152c = 0;
}
}
krispOveruseDetector.b = stats2.getOutboundRtpAudio();
}
OutboundRtpAudio outboundRtpAudio3 = stats2.getOutboundRtpAudio();
if (outboundRtpAudio3 != null && outboundRtpAudio3.getVoiceActivityDetectorIsEnabled()) {
OutboundRtpAudio outboundRtpAudio4 = krispOveruseDetector.a;
if (outboundRtpAudio4 != null && krispOveruseDetector.a(outboundRtpAudio4, stats2.getOutboundRtpAudio(), 4.0d).component1().booleanValue()) {
krispOveruseDetector.d.f(KrispOveruseDetector.Status.VAD_CPU_OVERUSE);
}
krispOveruseDetector.a = stats2.getOutboundRtpAudio();
}
}
return Unit.a;
}
}

View File

@ -1,6 +1,8 @@
package c.a.q.o0;
import androidx.annotation.AnyThread;
import androidx.core.app.FrameMetricsAggregator;
import co.discord.media_engine.InboundRtpVideo;
import com.discord.utilities.collections.Histogram;
import com.discord.utilities.collections.ListenerCollection;
import com.discord.utilities.collections.ListenerCollectionSubject;
@ -57,12 +59,13 @@ public final class e {
public long f;
public long g;
public long h;
public long i;
public a() {
this(0, 0, 0, 0, 0, 0, 0, 0, 255);
this(0, 0, 0, 0, 0, 0, 0, 0, 0, FrameMetricsAggregator.EVERY_DURATION);
}
public a(long j, long j2, long j3, long j4, long j5, long j6, long j7, long j8) {
public a(long j, long j2, long j3, long j4, long j5, long j6, long j7, long j8, long j9) {
this.a = j;
this.b = j2;
this.f230c = j3;
@ -71,11 +74,12 @@ public final class e {
this.f = j6;
this.g = j7;
this.h = j8;
this.i = j9;
}
/* JADX INFO: this call moved to the top of the method (can break code semantics) */
public /* synthetic */ a(long j, long j2, long j3, long j4, long j5, long j6, long j7, long j8, int i) {
this((i & 1) != 0 ? 0 : j, (i & 2) != 0 ? 0 : j2, (i & 4) != 0 ? 0 : j3, (i & 8) != 0 ? 0 : j4, (i & 16) != 0 ? 0 : j5, (i & 32) != 0 ? 0 : j6, (i & 64) != 0 ? 0 : j7, (i & 128) == 0 ? j8 : 0);
public /* synthetic */ a(long j, long j2, long j3, long j4, long j5, long j6, long j7, long j8, long j9, int i) {
this((i & 1) != 0 ? 0 : j, (i & 2) != 0 ? 0 : j2, (i & 4) != 0 ? 0 : j3, (i & 8) != 0 ? 0 : j4, (i & 16) != 0 ? 0 : j5, (i & 32) != 0 ? 0 : j6, (i & 64) != 0 ? 0 : j7, (i & 128) != 0 ? 0 : j8, (i & 256) == 0 ? j9 : 0);
}
public boolean equals(Object obj) {
@ -86,7 +90,7 @@ public final class e {
return false;
}
a aVar = (a) obj;
return this.a == aVar.a && this.b == aVar.b && this.f230c == aVar.f230c && this.d == aVar.d && this.e == aVar.e && this.f == aVar.f && this.g == aVar.g && this.h == aVar.h;
return this.a == aVar.a && this.b == aVar.b && this.f230c == aVar.f230c && this.d == aVar.d && this.e == aVar.e && this.f == aVar.f && this.g == aVar.g && this.h == aVar.h && this.i == aVar.i;
}
public int hashCode() {
@ -96,7 +100,8 @@ public final class e {
int a4 = a0.a.a.b.a(this.e);
int a5 = a0.a.a.b.a(this.f);
int a6 = a0.a.a.b.a(this.g);
return a0.a.a.b.a(this.h) + ((a6 + ((a5 + ((a4 + ((a3 + ((a2 + ((a + (a0.a.a.b.a(this.a) * 31)) * 31)) * 31)) * 31)) * 31)) * 31)) * 31);
int a7 = a0.a.a.b.a(this.h);
return a0.a.a.b.a(this.i) + ((a7 + ((a6 + ((a5 + ((a4 + ((a3 + ((a2 + ((a + (a0.a.a.b.a(this.a) * 31)) * 31)) * 31)) * 31)) * 31)) * 31)) * 31)) * 31);
}
public String toString() {
@ -115,7 +120,9 @@ public final class e {
P.append(", nackCount=");
P.append(this.g);
P.append(", pliCount=");
return c.d.b.a.a.A(P, this.h, ")");
P.append(this.h);
P.append(", qpSum=");
return c.d.b.a.a.A(P, this.i, ")");
}
}
@ -182,7 +189,7 @@ public final class e {
/* renamed from: c reason: collision with root package name */
public final Histogram f231c = new Histogram(25600, 0, 2, null);
public Long d;
public a e = new a(0, 0, 0, 0, 0, 0, 0, 0, 255);
public a e = new a(0, 0, 0, 0, 0, 0, 0, 0, 0, FrameMetricsAggregator.EVERY_DURATION);
public long f;
public Map<Integer, Float> g = new LinkedHashMap();
public Map<Integer, Float> h = new LinkedHashMap();
@ -227,7 +234,7 @@ public final class e {
public final a f232c;
public h() {
this(0, 0, new a(0, 0, 0, 0, 0, 0, 0, 0, 255));
this(0, 0, new a(0, 0, 0, 0, 0, 0, 0, 0, 0, FrameMetricsAggregator.EVERY_DURATION));
}
public h(long j, long j2, a aVar) {
@ -335,6 +342,7 @@ public final class e {
aVar.f = fVar.a(aVar2.f, aVar3.f) + aVar.f;
aVar.g = fVar.a(aVar2.g, aVar3.g) + aVar.g;
aVar.h = fVar.a(aVar2.h, aVar3.h) + aVar.h;
aVar.i = fVar.a(aVar2.i, aVar3.i) + aVar.i;
a aVar4 = hVar2.f232c;
long j = aVar4.f;
long j2 = aVar4.a;
@ -465,7 +473,7 @@ public final class e {
a aVar = eVar.e;
long a2 = i2 > 0 ? b.a(bVar, Float.valueOf(((float) (aVar.f * ((long) 8))) / f2)) : 0;
long a3 = i2 > 0 ? b.a(bVar, Float.valueOf(((float) aVar.a) / f2)) : 0;
Pair[] pairArr = new Pair[10];
Pair[] pairArr = new Pair[11];
pairArr[0] = d0.o.to("avg_bitrate", Long.valueOf(a2));
pairArr[1] = d0.o.to("avg_fps", Long.valueOf(a3));
pairArr[2] = d0.o.to("num_bytes", Long.valueOf(aVar.f));
@ -477,10 +485,15 @@ public final class e {
pairArr[7] = d0.o.to("num_frames_dropped", Long.valueOf(aVar.e));
pairArr[8] = d0.o.to("num_nacks", Long.valueOf(aVar.g));
pairArr[9] = d0.o.to("num_plis", Long.valueOf(aVar.h));
pairArr[10] = d0.o.to("qp_sum", Long.valueOf(aVar.i));
return h0.plus(mapOf, h0.mapOf(pairArr));
}
public final void f(Boolean bool, Integer num, long j) {
public final h f(InboundRtpVideo inboundRtpVideo, long j) {
return new h((long) inboundRtpVideo.getResolution().getHeight(), j, new a((long) inboundRtpVideo.getFramesDecoded(), (long) inboundRtpVideo.getFramesReceived(), (long) inboundRtpVideo.getPacketsReceived(), (long) inboundRtpVideo.getPacketsLost(), (long) inboundRtpVideo.getFramesDropped(), inboundRtpVideo.getBytesReceived(), inboundRtpVideo.getNackCount(), inboundRtpVideo.getPliCount(), inboundRtpVideo.getQpSum()));
}
public final void g(Boolean bool, Integer num, long j) {
boolean z2 = false;
if (num != null) {
this.j.b(num.intValue() == 0, j);

View File

@ -9,6 +9,7 @@ import d0.z.d.m;
public final class TrackDeepLinkClicked implements AnalyticsSchema, TrackBaseReceiver {
private final transient String analyticsSchemaTypeName = "deep_link_clicked";
private final CharSequence attemptId = null;
private final CharSequence destination = null;
private final Long fingerprint = null;
private final CharSequence guildTemplateCode = null;
private final CharSequence inviteCode = null;
@ -28,7 +29,7 @@ public final class TrackDeepLinkClicked implements AnalyticsSchema, TrackBaseRec
return false;
}
TrackDeepLinkClicked trackDeepLinkClicked = (TrackDeepLinkClicked) obj;
return m.areEqual(this.fingerprint, trackDeepLinkClicked.fingerprint) && m.areEqual(this.attemptId, trackDeepLinkClicked.attemptId) && m.areEqual(this.source, trackDeepLinkClicked.source) && m.areEqual(this.inviteCode, trackDeepLinkClicked.inviteCode) && m.areEqual(this.guildTemplateCode, trackDeepLinkClicked.guildTemplateCode);
return m.areEqual(this.fingerprint, trackDeepLinkClicked.fingerprint) && m.areEqual(this.attemptId, trackDeepLinkClicked.attemptId) && m.areEqual(this.source, trackDeepLinkClicked.source) && m.areEqual(this.inviteCode, trackDeepLinkClicked.inviteCode) && m.areEqual(this.guildTemplateCode, trackDeepLinkClicked.guildTemplateCode) && m.areEqual(this.destination, trackDeepLinkClicked.destination);
}
public int hashCode() {
@ -42,10 +43,12 @@ public final class TrackDeepLinkClicked implements AnalyticsSchema, TrackBaseRec
CharSequence charSequence3 = this.inviteCode;
int hashCode4 = (hashCode3 + (charSequence3 != null ? charSequence3.hashCode() : 0)) * 31;
CharSequence charSequence4 = this.guildTemplateCode;
if (charSequence4 != null) {
i = charSequence4.hashCode();
int hashCode5 = (hashCode4 + (charSequence4 != null ? charSequence4.hashCode() : 0)) * 31;
CharSequence charSequence5 = this.destination;
if (charSequence5 != null) {
i = charSequence5.hashCode();
}
return hashCode4 + i;
return hashCode5 + i;
}
public String toString() {
@ -58,6 +61,8 @@ public final class TrackDeepLinkClicked implements AnalyticsSchema, TrackBaseRec
P.append(", inviteCode=");
P.append(this.inviteCode);
P.append(", guildTemplateCode=");
return a.D(P, this.guildTemplateCode, ")");
P.append(this.guildTemplateCode);
P.append(", destination=");
return a.D(P, this.destination, ")");
}
}

View File

@ -0,0 +1,51 @@
package com.discord.analytics.generated.events;
import c.d.b.a.a;
import com.discord.analytics.generated.traits.TrackBase;
import com.discord.analytics.generated.traits.TrackBaseReceiver;
import com.discord.analytics.generated.traits.TrackLocationMetadata;
import com.discord.analytics.generated.traits.TrackLocationMetadataReceiver;
import com.discord.api.science.AnalyticsSchema;
import d0.z.d.m;
/* compiled from: TrackMarkAsRead.kt */
public final class TrackMarkAsRead implements AnalyticsSchema, TrackBaseReceiver, TrackLocationMetadataReceiver {
private final transient String analyticsSchemaTypeName = "mark_as_read";
private final CharSequence source = null;
private TrackBase trackBase;
private TrackLocationMetadata trackLocationMetadata;
private final CharSequence type = null;
@Override // com.discord.api.science.AnalyticsSchema
public String b() {
return this.analyticsSchemaTypeName;
}
public boolean equals(Object obj) {
if (this == obj) {
return true;
}
if (!(obj instanceof TrackMarkAsRead)) {
return false;
}
TrackMarkAsRead trackMarkAsRead = (TrackMarkAsRead) obj;
return m.areEqual(this.type, trackMarkAsRead.type) && m.areEqual(this.source, trackMarkAsRead.source);
}
public int hashCode() {
CharSequence charSequence = this.type;
int i = 0;
int hashCode = (charSequence != null ? charSequence.hashCode() : 0) * 31;
CharSequence charSequence2 = this.source;
if (charSequence2 != null) {
i = charSequence2.hashCode();
}
return hashCode + i;
}
public String toString() {
StringBuilder P = a.P("TrackMarkAsRead(type=");
P.append(this.type);
P.append(", source=");
return a.D(P, this.source, ")");
}
}

View File

@ -0,0 +1,6 @@
package com.discord.analytics.generated.events;
import com.discord.api.science.AnalyticsSchema;
/* compiled from: TrackMarkAsRead.kt */
public interface TrackMarkAsReadReceiver extends AnalyticsSchema {
}

View File

@ -4,6 +4,7 @@ import c.d.b.a.a;
import d0.z.d.m;
/* compiled from: TrackEmail.kt */
public final class TrackEmail {
private final CharSequence category = null;
private final CharSequence emailId = null;
private final CharSequence emailType = null;
private final CharSequence subjectType = null;
@ -16,7 +17,7 @@ public final class TrackEmail {
return false;
}
TrackEmail trackEmail = (TrackEmail) obj;
return m.areEqual(this.emailType, trackEmail.emailType) && m.areEqual(this.subjectType, trackEmail.subjectType) && m.areEqual(this.emailId, trackEmail.emailId);
return m.areEqual(this.emailType, trackEmail.emailType) && m.areEqual(this.subjectType, trackEmail.subjectType) && m.areEqual(this.emailId, trackEmail.emailId) && m.areEqual(this.category, trackEmail.category);
}
public int hashCode() {
@ -26,10 +27,12 @@ public final class TrackEmail {
CharSequence charSequence2 = this.subjectType;
int hashCode2 = (hashCode + (charSequence2 != null ? charSequence2.hashCode() : 0)) * 31;
CharSequence charSequence3 = this.emailId;
if (charSequence3 != null) {
i = charSequence3.hashCode();
int hashCode3 = (hashCode2 + (charSequence3 != null ? charSequence3.hashCode() : 0)) * 31;
CharSequence charSequence4 = this.category;
if (charSequence4 != null) {
i = charSequence4.hashCode();
}
return hashCode2 + i;
return hashCode3 + i;
}
public String toString() {
@ -38,6 +41,8 @@ public final class TrackEmail {
P.append(", subjectType=");
P.append(this.subjectType);
P.append(", emailId=");
return a.D(P, this.emailId, ")");
P.append(this.emailId);
P.append(", category=");
return a.D(P, this.category, ")");
}
}

View File

@ -94,13 +94,13 @@ public final class GuildMember {
return getColor(guildMember != null ? guildMember.getColor() : ViewCompat.MEASURED_STATE_MASK, i);
}
public final GuildRole getHighestRole(List<Long> list, Map<Long, GuildRole> map) {
public final GuildRole getHighestRoleIconRole(List<Long> list, Map<Long, GuildRole> map) {
GuildRole guildRole;
m.checkNotNullParameter(list, "roles");
GuildRole guildRole2 = null;
for (Long l : list) {
long longValue = l.longValue();
if (map != null && (guildRole = map.get(Long.valueOf(longValue))) != null && !RoleUtils.isDefaultColor(guildRole) && RoleUtils.rankIsHigher(guildRole, guildRole2)) {
if (!(map == null || (guildRole = map.get(Long.valueOf(longValue))) == null || guildRole.d() == null || !RoleUtils.rankIsHigher(guildRole, guildRole2))) {
guildRole2 = guildRole;
}
}

View File

@ -61,7 +61,7 @@ public final class GuildScheduledEventUtilitiesKt {
public static final GuildScheduledEventTiming getEventTiming(long j) {
int minutesRelativeToTime = minutesRelativeToTime(j);
return minutesRelativeToTime <= -60 ? GuildScheduledEventTiming.EXPIRED : minutesRelativeToTime <= 0 ? GuildScheduledEventTiming.NOW : minutesRelativeToTime <= 30 ? GuildScheduledEventTiming.SOON : DateUtils.isToday(j) ? GuildScheduledEventTiming.TODAY : DateUtils.isToday(j - 86400000) ? GuildScheduledEventTiming.TOMORROW : GuildScheduledEventTiming.LATER;
return minutesRelativeToTime <= -60 ? GuildScheduledEventTiming.EXPIRED : minutesRelativeToTime <= 0 ? GuildScheduledEventTiming.NOW : minutesRelativeToTime <= 15 ? GuildScheduledEventTiming.SOON : DateUtils.isToday(j) ? GuildScheduledEventTiming.TODAY : DateUtils.isToday(j - 86400000) ? GuildScheduledEventTiming.TOMORROW : GuildScheduledEventTiming.LATER;
}
public static final GuildScheduledEventTiming getEventTiming(GuildScheduledEvent guildScheduledEvent) {

View File

@ -604,12 +604,12 @@ public final class WidgetChatListAdapterItemMessage extends WidgetChatListItem {
if (author5 == null || (list = author5.getRoles()) == null) {
list = n.emptyList();
}
GuildRole highestRole = companion2.getHighestRole(list, companion.getGuilds().getRoles().get(channel != null ? Long.valueOf(channel.f()) : null));
GuildRole highestRoleIconRole = companion2.getHighestRoleIconRole(list, companion.getGuilds().getRoles().get(channel != null ? Long.valueOf(channel.f()) : null));
RoleIconView roleIconView = this.itemRoleIcon;
if (channel != null) {
l = Long.valueOf(channel.f());
}
roleIconView.setRole(highestRole, l);
roleIconView.setRole(highestRoleIconRole, l);
}
if (this.failedUploadList != null) {
List<LocalAttachment> localAttachments = message.getLocalAttachments();

View File

@ -161,6 +161,7 @@ public final class WidgetChangeGuildIdentity extends AppFragment {
Editable editable = null;
ViewExtensions.setEnabledAndAlpha$default(textInputLayout, loaded.getCanChangeNickname(), 0.0f, 2, null);
textInputLayout.setHint(loaded.getCanChangeNickname() ? getString(R.string.nickname) : getString(R.string.change_identity_modal_change_nickname_disabled));
textInputLayout.setPlaceholderText(loaded.getMeUser().getUsername());
ViewExtensions.addBindedTextWatcher(textInputLayout, this, new WidgetChangeGuildIdentity$configureNickname$$inlined$also$lambda$1(this, loaded));
textInputLayout.setEndIconOnClickListener(new WidgetChangeGuildIdentity$configureNickname$$inlined$also$lambda$2(this, loaded));
TextInputLayout textInputLayout2 = getBinding().g;
@ -216,6 +217,7 @@ public final class WidgetChangeGuildIdentity extends AppFragment {
}
private final boolean handleBackPressed(WidgetChangeGuildIdentityViewModel.ViewState.Loaded loaded) {
hideKeyboard(getBinding().g);
if (!loaded.isDirty() || this.discardConfirmed.get()) {
return false;
}
@ -300,6 +302,9 @@ public final class WidgetChangeGuildIdentity extends AppFragment {
setActionBarTitle(R.string.change_identity);
AppFragment.setActionBarDisplayHomeAsUpEnabled$default(this, false, 1, null);
getBinding().f.setOnClickListener(new WidgetChangeGuildIdentity$onViewBound$2(this, view));
TextInputLayout textInputLayout = getBinding().g;
m.checkNotNullExpressionValue(textInputLayout, "binding.setNicknameText");
showKeyboard(textInputLayout);
}
@Override // com.discord.app.AppFragment

View File

@ -323,7 +323,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 + " - 93.3 - Alpha (93203)");
textView.setText(string + " - 93.4 - Alpha (93204)");
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

@ -381,7 +381,17 @@ public final class WidgetUserSheet extends AppBottomSheet {
}
}
/* JADX WARNING: Removed duplicated region for block: B:17:0x0054 */
/* JADX WARNING: Removed duplicated region for block: B:18:0x0056 */
/* JADX WARNING: Removed duplicated region for block: B:26:0x0091 */
/* JADX WARNING: Removed duplicated region for block: B:27:0x0093 */
/* JADX WARNING: Removed duplicated region for block: B:30:0x00a5 */
/* JADX WARNING: Removed duplicated region for block: B:31:0x00a7 */
/* JADX WARNING: Removed duplicated region for block: B:34:0x00ae A[RETURN] */
/* JADX WARNING: Removed duplicated region for block: B:35:0x00af */
private final void configureProfileActionButtons(WidgetUserSheetViewModel.ViewState.Loaded loaded) {
boolean z2;
boolean z3;
boolean isMe = loaded.isMe();
Long currentGuildId = loaded.getCurrentGuildId();
FlexboxLayout flexboxLayout = getBinding().D;
@ -391,60 +401,83 @@ public final class WidgetUserSheet extends AppBottomSheet {
getBinding().C.setOnClickListener(new WidgetUserSheet$configureProfileActionButtons$1(this));
MaterialButton materialButton = getBinding().F;
m.checkNotNullExpressionValue(materialButton, "binding.userSheetProfileIdentityButton");
boolean z2 = true;
materialButton.setVisibility(isMe && currentGuildId != null && loaded.getInGuildAvatarExperiment() ? 0 : 8);
boolean z4 = true;
if (isMe) {
if ((currentGuildId != null ? currentGuildId.longValue() : 0) > 0 && loaded.getInGuildAvatarExperiment()) {
z2 = true;
materialButton.setVisibility(!z2 ? 0 : 8);
getBinding().F.setOnClickListener(new WidgetUserSheet$configureProfileActionButtons$2(currentGuildId));
boolean isBot = loaded.getUser().isBot();
boolean isSystemUser = loaded.getUser().isSystemUser();
int userRelationshipType = loaded.getUserRelationshipType();
z3 = isMe && !isSystemUser;
View view = getBinding().B;
m.checkNotNullExpressionValue(view, "binding.userSheetProfileActionsDivider");
view.setVisibility(!z3 ? 0 : 8);
LinearLayout linearLayout = getBinding().A;
m.checkNotNullExpressionValue(linearLayout, "binding.userSheetProfileActionsContainer");
linearLayout.setVisibility(!z3 ? 0 : 8);
if (!z3) {
Button button = getBinding().u;
m.checkNotNullExpressionValue(button, "binding.userSheetMessageActionButton");
Channel channel = loaded.getChannel();
button.setVisibility(channel == null || channel.A() != 1 ? 0 : 8);
getBinding().u.setOnClickListener(new WidgetUserSheet$configureProfileActionButtons$3(this, loaded));
getBinding().i.setOnClickListener(new WidgetUserSheet$configureProfileActionButtons$4(this));
getBinding().L.setOnClickListener(new WidgetUserSheet$configureProfileActionButtons$5(this));
if (userRelationshipType == 0) {
Button button2 = getBinding().f;
m.checkNotNullExpressionValue(button2, "binding.userSheetAddFriendActionButton");
button2.setVisibility(0);
Button button3 = getBinding().f2080z;
m.checkNotNullExpressionValue(button3, "binding.userSheetPendingFriendRequestActionButton");
button3.setVisibility(8);
} else if (userRelationshipType == 3 || userRelationshipType == 4) {
Button button4 = getBinding().f;
m.checkNotNullExpressionValue(button4, "binding.userSheetAddFriendActionButton");
button4.setVisibility(8);
Button button5 = getBinding().f2080z;
m.checkNotNullExpressionValue(button5, "binding.userSheetPendingFriendRequestActionButton");
button5.setVisibility(0);
} else {
Button button6 = getBinding().f;
m.checkNotNullExpressionValue(button6, "binding.userSheetAddFriendActionButton");
button6.setVisibility(8);
Button button7 = getBinding().f2080z;
m.checkNotNullExpressionValue(button7, "binding.userSheetPendingFriendRequestActionButton");
button7.setVisibility(8);
}
if (isMe || isBot || userRelationshipType != 0) {
z4 = false;
}
Button button8 = getBinding().f;
m.checkNotNullExpressionValue(button8, "binding.userSheetAddFriendActionButton");
if (z4) {
i = 0;
}
button8.setVisibility(i);
getBinding().f.setOnClickListener(new WidgetUserSheet$configureProfileActionButtons$6(this, loaded));
getBinding().f2080z.setOnClickListener(new WidgetUserSheet$configureProfileActionButtons$7(this, userRelationshipType, loaded));
return;
}
return;
}
}
z2 = false;
materialButton.setVisibility(!z2 ? 0 : 8);
getBinding().F.setOnClickListener(new WidgetUserSheet$configureProfileActionButtons$2(currentGuildId));
boolean isBot = loaded.getUser().isBot();
boolean isSystemUser = loaded.getUser().isSystemUser();
int userRelationshipType = loaded.getUserRelationshipType();
boolean z3 = !isMe && !isSystemUser;
if (isMe) {
}
View view = getBinding().B;
m.checkNotNullExpressionValue(view, "binding.userSheetProfileActionsDivider");
view.setVisibility(z3 ? 0 : 8);
view.setVisibility(!z3 ? 0 : 8);
LinearLayout linearLayout = getBinding().A;
m.checkNotNullExpressionValue(linearLayout, "binding.userSheetProfileActionsContainer");
linearLayout.setVisibility(z3 ? 0 : 8);
if (z3) {
Button button = getBinding().u;
m.checkNotNullExpressionValue(button, "binding.userSheetMessageActionButton");
Channel channel = loaded.getChannel();
button.setVisibility(channel == null || channel.A() != 1 ? 0 : 8);
getBinding().u.setOnClickListener(new WidgetUserSheet$configureProfileActionButtons$3(this, loaded));
getBinding().i.setOnClickListener(new WidgetUserSheet$configureProfileActionButtons$4(this));
getBinding().L.setOnClickListener(new WidgetUserSheet$configureProfileActionButtons$5(this));
if (userRelationshipType == 0) {
Button button2 = getBinding().f;
m.checkNotNullExpressionValue(button2, "binding.userSheetAddFriendActionButton");
button2.setVisibility(0);
Button button3 = getBinding().f2080z;
m.checkNotNullExpressionValue(button3, "binding.userSheetPendingFriendRequestActionButton");
button3.setVisibility(8);
} else if (userRelationshipType == 3 || userRelationshipType == 4) {
Button button4 = getBinding().f;
m.checkNotNullExpressionValue(button4, "binding.userSheetAddFriendActionButton");
button4.setVisibility(8);
Button button5 = getBinding().f2080z;
m.checkNotNullExpressionValue(button5, "binding.userSheetPendingFriendRequestActionButton");
button5.setVisibility(0);
} else {
Button button6 = getBinding().f;
m.checkNotNullExpressionValue(button6, "binding.userSheetAddFriendActionButton");
button6.setVisibility(8);
Button button7 = getBinding().f2080z;
m.checkNotNullExpressionValue(button7, "binding.userSheetPendingFriendRequestActionButton");
button7.setVisibility(8);
}
if (isMe || isBot || userRelationshipType != 0) {
z2 = false;
}
Button button8 = getBinding().f;
m.checkNotNullExpressionValue(button8, "binding.userSheetAddFriendActionButton");
if (z2) {
i = 0;
}
button8.setVisibility(i);
getBinding().f.setOnClickListener(new WidgetUserSheet$configureProfileActionButtons$6(this, loaded));
getBinding().f2080z.setOnClickListener(new WidgetUserSheet$configureProfileActionButtons$7(this, userRelationshipType, loaded));
linearLayout.setVisibility(!z3 ? 0 : 8);
if (!z3) {
}
}

View File

@ -8,7 +8,7 @@
<TextView android:layout_marginLeft="16dp" android:layout_marginTop="16dp" android:layout_marginRight="16dp" android:text="@string/change_identity_modal_description" android:layout_marginHorizontal="16dp" style="@style/UiKit_TextView"/>
<androidx.cardview.widget.CardView android:id="@+id/nickname_editor_card" android:layout_marginTop="24dp" style="@style/UserProfile_Section_Card">
<com.google.android.material.textfield.TextInputLayout android:id="@+id/set_nickname_text" android:hint="@string/nickname" app:endIconContentDescription="@string/reset_nickname" app:endIconDrawable="@drawable/ic_close_circle_nova_grey_24dp" app:endIconMode="-1" app:endIconTint="?attr/colorInteractiveNormal" style="@style/UiKit_TextInputLayout">
<com.google.android.material.textfield.TextInputEditText android:maxLength="128" android:inputType="text" android:imeOptions="actionDone" style="@style/UiKit_TextInputLayout_EditText_SingleLine_Username">
<com.google.android.material.textfield.TextInputEditText android:maxLength="128" android:inputType="text" android:imeOptions="actionDone" style="@style/UiKit_TextInputLayout_EditText_SingleLine">
<requestFocus/>
</com.google.android.material.textfield.TextInputEditText>
</com.google.android.material.textfield.TextInputLayout>
@ -24,7 +24,7 @@
</androidx.cardview.widget.CardView>
<LinearLayout android:orientation="vertical" android:id="@+id/upsell_section" android:visibility="gone" android:layout_width="match_parent" android:layout_height="wrap_content" style="@style/UserProfile_Section">
<TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginBottom="12dp" android:text="@string/change_identity_mobile_upsell" style="@style/UiKit_TextView"/>
<com.discord.views.premium.ShinyButton android:id="@+id/get_premium_button" android:layout_width="match_parent" android:layout_height="32dp" app:sb_drawable_start="@drawable/ic_nitro_badge_white" app:sb_text="@string/user_settings_customization_upsell"/>
<com.discord.views.premium.ShinyButton android:id="@+id/get_premium_button" android:layout_width="match_parent" android:layout_height="wrap_content" app:sb_drawable_start="@drawable/ic_nitro_badge_white" app:sb_text="@string/user_settings_customization_upsell"/>
</LinearLayout>
</LinearLayout>
</androidx.core.widget.NestedScrollView>

View File

@ -8,7 +8,7 @@
<TextView android:layout_marginLeft="16dp" android:layout_marginTop="16dp" android:layout_marginRight="16dp" android:text="@string/change_identity_modal_description" style="@style/UiKit_TextView"/>
<androidx.cardview.widget.CardView android:id="@+id/nickname_editor_card" android:layout_marginTop="24dp" style="@style/UserProfile_Section_Card">
<com.google.android.material.textfield.TextInputLayout android:id="@+id/set_nickname_text" android:hint="@string/nickname" app:endIconContentDescription="@string/reset_nickname" app:endIconDrawable="@drawable/ic_close_circle_nova_grey_24dp" app:endIconMode="-1" app:endIconTint="?attr/colorInteractiveNormal" style="@style/UiKit_TextInputLayout">
<com.google.android.material.textfield.TextInputEditText android:maxLength="128" android:inputType="text" android:imeOptions="actionDone" style="@style/UiKit_TextInputLayout_EditText_SingleLine_Username">
<com.google.android.material.textfield.TextInputEditText android:maxLength="128" android:inputType="text" android:imeOptions="actionDone" style="@style/UiKit_TextInputLayout_EditText_SingleLine">
<requestFocus/>
</com.google.android.material.textfield.TextInputEditText>
</com.google.android.material.textfield.TextInputLayout>
@ -24,7 +24,7 @@
</androidx.cardview.widget.CardView>
<LinearLayout android:orientation="vertical" android:id="@+id/upsell_section" android:visibility="gone" android:layout_width="match_parent" android:layout_height="wrap_content" style="@style/UserProfile_Section">
<TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginBottom="12dp" android:text="@string/change_identity_mobile_upsell" style="@style/UiKit_TextView"/>
<com.discord.views.premium.ShinyButton android:id="@+id/get_premium_button" android:layout_width="match_parent" android:layout_height="32dp" app:sb_drawable_start="@drawable/ic_nitro_badge_white" app:sb_text="@string/user_settings_customization_upsell"/>
<com.discord.views.premium.ShinyButton android:id="@+id/get_premium_button" android:layout_width="match_parent" android:layout_height="wrap_content" app:sb_drawable_start="@drawable/ic_nitro_badge_white" app:sb_text="@string/user_settings_customization_upsell"/>
</LinearLayout>
</LinearLayout>
</androidx.core.widget.NestedScrollView>

View File

@ -2240,6 +2240,10 @@
<string name="elevated_permissions_sound_request_access_button">Grant Access</string>
<string name="elevated_permissions_sound_title">Sound Permissions</string>
<string name="email">Email</string>
<string name="email_category_manage_setting_label">Manage your user settings.</string>
<string name="email_category_unsubscribe_email_body">You have unsubscribed from: {category}. To change your email notification settings, visit user settings.</string>
<string name="email_category_unsubscribe_header">Youre unsubscribed</string>
<string name="email_category_unsubscribe_marketing_email_body">To unsubscribe from all marketing emails, visit user settings.</string>
<string name="email_invalid">The email entered is not valid, please update it and try again.</string>
<string name="email_required">A valid email is required.</string>
<string name="email_verification_instructions_body">We sent instructions to change your password to **!!{email}!!**, please check both your inbox and spam folder.</string>
@ -3297,6 +3301,7 @@
<string name="guild_event_delete_confirm_body">Are you sure you want to delete this event?</string>
<string name="guild_event_delete_confirm_header">Delete Event?</string>
<string name="guild_event_end_date_before_start_date">The end time must be after the start time.</string>
<string name="guild_event_end_prompt_body">It will eventually end automatically when it feels like it.</string>
<string name="guild_event_end_prompt_cancel">No, just disconnect</string>
<string name="guild_event_end_prompt_confirm">Yes, end the event</string>
<string name="guild_event_end_prompt_title">Do you want to also end the event?</string>
@ -3558,6 +3563,7 @@
<string name="guild_role_subscription_tier_detail_custom_image_a11y_label">Select Image</string>
<string name="guild_role_subscription_tier_detail_custom_image_button">Upload Image</string>
<string name="guild_role_subscription_tier_detail_custom_image_description">We recommend an image that\'s at least 500 pixels square.</string>
<string name="guild_role_subscription_tier_detail_custom_image_edit_button">Edit Image</string>
<string name="guild_role_subscription_tier_detail_custom_image_label">Custom Image</string>
<string name="guild_role_subscription_tier_detail_description_label">Description</string>
<string name="guild_role_subscription_tier_detail_description_placeholder">Gotta make you understand</string>
@ -5321,6 +5327,8 @@
<string name="localized_pricing_not_canceled_not_missing_payment_notice_button_text">Manage Plan</string>
<string name="localized_pricing_not_canceled_not_missing_payment_notice_text">We\'ve lowered Nitro pricing in your area. See if you save with your local currency.</string>
<string name="localized_pricing_on_change_payment_method">Changing your payment method will change your subscription price and currency to {newCurrencyAndPrice}. [Click here]({helpCenterLink}) to learn more about how we determine what you pay.</string>
<string name="localized_pricing_post_churn_notice_button_text">Manage Plan</string>
<string name="localized_pricing_post_churn_notice_text">We\'ve lowered Nitro pricing in some areas. Reactivate your Nitro subscription and see if you can save.</string>
<string name="localized_pricing_use_local_payment_method">**Tip**: Use a payment method local to {country} to pay for your subscription in {currency}! [Click here]({helpCenterLink}) to learn more about how we determine price and currency.</string>
<string name="localized_pricing_using_local_payment_method">**Hooray!** As a resident of {country}, you\'re now paying the discounted price of {newPrice} for Nitro! [Learn More]({helpCenterLink}).</string>
<string name="login">Login</string>
@ -5714,8 +5722,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_2131891815_msg_alert_cleared">Alert Cleared</string>
<string name="res_2131891816_msg_no_alert_showing">No Alert Showing</string>
<string name="res_2131891823_msg_alert_cleared">Alert Cleared</string>
<string name="res_2131891824_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>
@ -6923,8 +6931,8 @@
<string name="premium_subscription_plan_adjustment">{planName} Adjustment</string>
<string name="premium_subscription_policy_hint_ios">See subscription and auto-renewal details below</string>
<string name="premium_subscription_policy_ios">By purchasing a Nitro subscription, you agree to our [Terms of Service]({termsURL}) and [Privacy Policy]({privacyURL}). Payment will be charged to your Apple ID account at the confirmation of purchase. Subscription automatically renews unless it is canceled at least 24 hours before the end of the current period. Your account will be charged for renewal within 24 hours prior to the end of the current period. You can manage and cancel your subscriptions by going to your account settings on the App Store after purchase.</string>
<string name="premium_subscription_reactivation_notice_button_text">Learn More</string>
<string name="premium_subscription_reactivation_notice_text">Reactivate Nitro to regain access to larger file uploads, animated avatars &amp; more.</string>
<string name="premium_subscription_reactivation_notice_button_text">Manage Plan</string>
<string name="premium_subscription_reactivation_notice_text">Your Nitro subscription has ended. Reactivate to regain access to larger file uploads and more.</string>
<string name="premium_subscription_renewal_footer">Any eligible subscription credit will be applied until it runs out. Your subscription will renew for **{rate}** on **{renewalDate}**. Have questions? [Contact our support team]({contactLink}) or [check out our subscription FAQ]({helpdeskArticle}).</string>
<string name="premium_subscription_renewal_footer_trial">Your free month credit will be applied until it runs out, and we\'ll send you a reminder email **{days}** before your free period ends. Have questions? [Check out our offer FAQ]({helpdeskArticle}) or [contact our support team]({contactLink}).</string>
<string name="premium_subscription_required_body">Hold up! You need Nitro to get this loot.</string>
@ -9211,7 +9219,7 @@
<string name="user_settings_open_on_startup_label">Open Discord</string>
<string name="user_settings_privacy_terms">Check out our [Terms of Service]({termsLink}) and [Privacy Policy]({privacyLink}).</string>
<string name="user_settings_profile_banner">Profile Banner</string>
<string name="user_settings_profile_color_beta">Profile Color is currently available to a limited number of people</string>
<string name="user_settings_profile_color">Profile Color</string>
<string name="user_settings_profile_color_custom">Custom</string>
<string name="user_settings_profile_color_custom_button">Use a custom profile color. Selected: {colorHex}</string>
<string name="user_settings_profile_color_default">Default</string>
@ -9220,7 +9228,6 @@
<string name="user_settings_profile_color_desc_mobile">Visible when no image is set.</string>
<string name="user_settings_profile_color_mobile">Banner Color</string>
<string name="user_settings_profile_color_select_color">Select custom color</string>
<string name="user_settings_profle_color">Profile Color</string>
<string name="user_settings_remove_avatar">Remove Avatar</string>
<string name="user_settings_remove_banner">Remove Banner</string>
<string name="user_settings_remove_profile_banner">Remove Profile Banner</string>

View File

@ -8453,10 +8453,8 @@
<string name="user_settings_open_on_startup_label">Отваряне на Discord</string>
<string name="user_settings_privacy_terms">Виж нашите [Условия за ползване]({termsLink}) и [Политика за поверителност]({privacyLink}).</string>
<string name="user_settings_profile_banner">Банер на профила</string>
<string name="user_settings_profile_color_beta">В момента цвят на профила се предлага само за ограничен брой хора</string>
<string name="user_settings_profile_color_custom">Персонализирани</string>
<string name="user_settings_profile_color_default">По подразбиране</string>
<string name="user_settings_profle_color">Цвят на профил</string>
<string name="user_settings_remove_avatar">Премахване на аватар</string>
<string name="user_settings_remove_banner">Премахване на банер</string>
<string name="user_settings_remove_profile_banner">Премахване на банер на профила</string>

View File

@ -8459,10 +8459,8 @@
<string name="user_settings_open_on_startup_label">Otevřít Discord</string>
<string name="user_settings_privacy_terms">Přečti si [Podmínky využívání služeb]({termsLink}) a [Zásady na ochranu osobních údajů]({privacyLink}).</string>
<string name="user_settings_profile_banner">Banner profilu</string>
<string name="user_settings_profile_color_beta">Barva profilu je momentálně dostupná jen omezenému počtu lidí</string>
<string name="user_settings_profile_color_custom">Vlastní</string>
<string name="user_settings_profile_color_default">Výchozí</string>
<string name="user_settings_profle_color">Barva profilu</string>
<string name="user_settings_remove_avatar">Odebrat avatar</string>
<string name="user_settings_remove_banner">Odebrat banner</string>
<string name="user_settings_remove_profile_banner">Odebrat banner profilu</string>

View File

@ -8441,10 +8441,8 @@
<string name="user_settings_open_on_startup_label">Åbn Discord</string>
<string name="user_settings_privacy_terms">Læs vores [Betingelser]({termsLink}) og [beskyttelse af privatlivets fred]({privacyLink}).</string>
<string name="user_settings_profile_banner">Profilbanner</string>
<string name="user_settings_profile_color_beta">Profilfarve er i øjeblikket kun tilgængelig for et begrænset antal personer</string>
<string name="user_settings_profile_color_custom">Brugertilpasset</string>
<string name="user_settings_profile_color_default">Standard</string>
<string name="user_settings_profle_color">Profilfarve</string>
<string name="user_settings_remove_avatar">Fjern avatar</string>
<string name="user_settings_remove_banner">Fjern banner</string>
<string name="user_settings_remove_profile_banner">Fjern profilbanner</string>

View File

@ -8531,10 +8531,8 @@
<string name="user_settings_open_on_startup_label">Discord öffnen</string>
<string name="user_settings_privacy_terms">Sieh dir unsere [Nutzungsbedingungen]({termsLink}) und [Datenschutzerklärung]({privacyLink}) an.</string>
<string name="user_settings_profile_banner">Profilbanner</string>
<string name="user_settings_profile_color_beta">Profilfarben stehen derzeit nur einer begrenzten Anzahl an Nutzern zur Verfügung.</string>
<string name="user_settings_profile_color_custom">Benutzerdefiniert</string>
<string name="user_settings_profile_color_default">Standard</string>
<string name="user_settings_profle_color">Profilfarbe</string>
<string name="user_settings_remove_avatar">Avatar entfernen</string>
<string name="user_settings_remove_banner">Banner entfernen</string>
<string name="user_settings_remove_profile_banner">Profilbanner entfernen</string>

View File

@ -8454,10 +8454,8 @@
<string name="user_settings_open_on_startup_label">Ανοίξτε το Discord</string>
<string name="user_settings_privacy_terms">Δείτε τους [Όρους Παροχής Υπηρεσιών]({termsLink}) και την [Πολιτική Απορρήτου]({privacyLink}).</string>
<string name="user_settings_profile_banner">Banner προφίλ</string>
<string name="user_settings_profile_color_beta">Το χρώμα προφίλ προς το παρόν είναι διαθέσιμο σε περιορισμένο αριθμό ατόμων</string>
<string name="user_settings_profile_color_custom">Προσαρμογή</string>
<string name="user_settings_profile_color_default">Προεπιλογή</string>
<string name="user_settings_profle_color">Χρώμα προφίλ</string>
<string name="user_settings_remove_avatar">Αφαίρεση άβαταρ</string>
<string name="user_settings_remove_banner">Αφαίρεση banner</string>
<string name="user_settings_remove_profile_banner">Αφαίρεση banner προφίλ</string>

View File

@ -2240,6 +2240,10 @@
<string name="elevated_permissions_sound_request_access_button">[Ĝŕåñţ Åççéšš one two]</string>
<string name="elevated_permissions_sound_title">[Šöûñð Þéŕḿîššîöñš one two three]</string>
<string name="email">[Éḿåîļ one]</string>
<string name="email_category_manage_setting_label">[Ḿåñåĝé ýöûŕ ûšéŕ šéţţîñĝš. one two three four]</string>
<string name="email_category_unsubscribe_email_body">[Ýöû ĥåVé ûñšûɓšçŕîɓéð ƒŕöḿ: »{category}«. Ţö çĥåñĝé ýöûŕ éḿåîļ ñöţîƒîçåţîöñ šéţţîñĝš, Vîšîţ ûšéŕ šéţţîñĝš. one two three four five six seven eight nine ten eleven twelve thirteen fourteen fiveteen sixteen]</string>
<string name="email_category_unsubscribe_header">[Ýöû’ŕé ûñšûɓšçŕîɓéð one two three]</string>
<string name="email_category_unsubscribe_marketing_email_body">[Ţö ûñšûɓšçŕîɓé ƒŕöḿ åļļ ḿåŕķéţîñĝ éḿåîļš, Vîšîţ ûšéŕ šéţţîñĝš. one two three four five six seven]</string>
<string name="email_invalid">[Ţĥé éḿåîļ éñţéŕéð îš ñöţ Våļîð, þļéåšé ûþðåţé îţ åñð ţŕý åĝåîñ. one two three four five six seven]</string>
<string name="email_required">[Å Våļîð éḿåîļ îš ŕéQûîŕéð. one two three four]</string>
<string name="email_verification_instructions_body">[Ŵé šéñţ îñšţŕûçţîöñš ţö çĥåñĝé ýöûŕ þåššŵöŕð ţö **¡¡»{email}«¡¡**, þļéåšé çĥéçķ ɓöţĥ ýöûŕ îñɓöх åñð šþåḿ ƒöļðéŕ. one two three four five six seven eight nine ten eleven]</string>
@ -3297,6 +3301,7 @@
<string name="guild_event_delete_confirm_body">[Åŕé ýöû šûŕé ýöû ŵåñţ ţö ðéļéţé ţĥîš éVéñţ¿ one two three four five]</string>
<string name="guild_event_delete_confirm_header">[Ðéļéţé ÉVéñţ¿ one two]</string>
<string name="guild_event_end_date_before_start_date">[Ţĥé éñð ţîḿé ḿûšţ ɓé åƒţéŕ ţĥé šţåŕţ ţîḿé. one two three four five]</string>
<string name="guild_event_end_prompt_body">[Îţ ŵîļļ éVéñţûåļļý éñð åûţöḿåţîçåļļý ŵĥéñ îţ ƒééļš ļîķé îţ. one two three four five six seven]</string>
<string name="guild_event_end_prompt_cancel">[Ñö, ĵûšţ ðîšçöññéçţ one two three]</string>
<string name="guild_event_end_prompt_confirm">[Ýéš, éñð ţĥé éVéñţ one two three]</string>
<string name="guild_event_end_prompt_title">[Ðö ýöû ŵåñţ ţö åļšö éñð ţĥé éVéñţ¿ one two three four]</string>
@ -3558,6 +3563,7 @@
<string name="guild_role_subscription_tier_detail_custom_image_a11y_label">[Šéļéçţ Îḿåĝé one two]</string>
<string name="guild_role_subscription_tier_detail_custom_image_button">[Ûþļöåð Îḿåĝé one two]</string>
<string name="guild_role_subscription_tier_detail_custom_image_description">[Ŵé ŕéçöḿḿéñð åñ îḿåĝé ţĥåţ\'š åţ ļéåšţ 500 þîхéļš šQûåŕé. one two three four five six seven]</string>
<string name="guild_role_subscription_tier_detail_custom_image_edit_button">[Éðîţ Îḿåĝé one two]</string>
<string name="guild_role_subscription_tier_detail_custom_image_label">[Çûšţöḿ Îḿåĝé one two]</string>
<string name="guild_role_subscription_tier_detail_description_label">[Ðéšçŕîþţîöñ one two]</string>
<string name="guild_role_subscription_tier_detail_description_placeholder">[Ĝöţţå ḿåķé ýöû ûñðéŕšţåñð one two three]</string>
@ -5321,6 +5327,8 @@
<string name="localized_pricing_not_canceled_not_missing_payment_notice_button_text">[Ḿåñåĝé Þļåñ one two]</string>
<string name="localized_pricing_not_canceled_not_missing_payment_notice_text">[Ŵé\'Vé ļöŵéŕéð Ñîţŕö þŕîçîñĝ îñ ýöûŕ åŕéå. Šéé îƒ ýöû šåVé ŵîţĥ ýöûŕ ļöçåļ çûŕŕéñçý. one two three four five six seven eight nine]</string>
<string name="localized_pricing_on_change_payment_method">[Çĥåñĝîñĝ ýöûŕ þåýḿéñţ ḿéţĥöð ŵîļļ çĥåñĝé ýöûŕ šûɓšçŕîþţîöñ þŕîçé åñð çûŕŕéñçý ţö »{newCurrencyAndPrice}«. [Çļîçķ ĥéŕé](»{helpCenterLink}«) ţö ļéåŕñ ḿöŕé åɓöûţ ĥöŵ ŵé ðéţéŕḿîñé ŵĥåţ ýöû þåý. 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]</string>
<string name="localized_pricing_post_churn_notice_button_text">[Ḿåñåĝé Þļåñ one two]</string>
<string name="localized_pricing_post_churn_notice_text">[Ŵé\'Vé ļöŵéŕéð Ñîţŕö þŕîçîñĝ îñ šöḿé åŕéåš. ŔéåçţîVåţé ýöûŕ Ñîţŕö šûɓšçŕîþţîöñ åñð šéé îƒ ýöû çåñ šåVé. one two three four five six seven eight nine ten eleven]</string>
<string name="localized_pricing_use_local_payment_method">[**Ţîþ**: Ûšé å þåýḿéñţ ḿéţĥöð ļöçåļ ţö »{country}« ţö þåý ƒöŕ ýöûŕ šûɓšçŕîþţîöñ îñ »{currency}«¡ [Çļîçķ ĥéŕé](»{helpCenterLink}«) ţö ļéåŕñ ḿöŕé åɓöûţ ĥöŵ ŵé ðéţéŕḿîñé þŕîçé åñð çûŕŕéñçý. 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="localized_pricing_using_local_payment_method">[**Ĥööŕåý¡** Åš å ŕéšîðéñţ öƒ »{country}«, ýöû\'ŕé ñöŵ þåýîñĝ ţĥé ðîšçöûñţéð þŕîçé öƒ »{newPrice}« ƒöŕ Ñîţŕö¡ [Ļéåŕñ Ḿöŕé](»{helpCenterLink}«). one two three four five six seven eight nine ten eleven twelve thirteen fourteen fiveteen sixteen seventeen]</string>
<string name="login">[Ļöĝîñ one]</string>
@ -5714,8 +5722,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_2131891815_msg_alert_cleared">[Åļéŕţ Çļéåŕéð one two]</string>
<string name="res_2131891816_msg_no_alert_showing">[Ñö Åļéŕţ Šĥöŵîñĝ one two three]</string>
<string name="res_2131891823_msg_alert_cleared">[Åļéŕţ Çļéåŕéð one two]</string>
<string name="res_2131891824_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>
@ -6923,8 +6931,8 @@
<string name="premium_subscription_plan_adjustment">[»{planName}« Åðĵûšţḿéñţ one two]</string>
<string name="premium_subscription_policy_hint_ios">[Šéé šûɓšçŕîþţîöñ åñð åûţö-ŕéñéŵåļ ðéţåîļš ɓéļöŵ one two three four five six]</string>
<string name="premium_subscription_policy_ios">[βý þûŕçĥåšîñĝ å Ñîţŕö šûɓšçŕîþţîöñ, ýöû åĝŕéé ţö öûŕ [Ţéŕḿš öƒ ŠéŕVîçé](»{termsURL}«) åñð [ÞŕîVåçý Þöļîçý](»{privacyURL}«). Þåýḿéñţ ŵîļļ ɓé çĥåŕĝéð ţö ýöûŕ Åþþļé ÎÐ åççöûñţ åţ ţĥé çöñƒîŕḿåţîöñ öƒ þûŕçĥåšé. Šûɓšçŕîþţîöñ åûţöḿåţîçåļļý ŕéñéŵš ûñļéšš îţ îš çåñçéļéð åţ ļéåšţ 24 ĥöûŕš ɓéƒöŕé ţĥé éñð öƒ ţĥé çûŕŕéñţ þéŕîöð. Ýöûŕ åççöûñţ ŵîļļ ɓé çĥåŕĝéð ƒöŕ ŕéñéŵåļ ŵîţĥîñ 24 ĥöûŕš þŕîöŕ ţö ţĥé éñð öƒ ţĥé çûŕŕéñţ þéŕîöð. Ýöû çåñ ḿåñåĝé åñð çåñçéļ ýöûŕ šûɓšçŕîþţîöñš ɓý ĝöîñĝ ţö ýöûŕ åççöûñţ šéţţîñĝš öñ ţĥé Åþþ Šţöŕé åƒţéŕ þûŕçĥåšé. 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 eight nine ten eleven twelve thirteen fourteen fiveteen sixteen seventeen nineteen twenty 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 eight nine ten eleven twelve thirteen fourteen fiveteen sixteen seventeen nineteen twenty one two]</string>
<string name="premium_subscription_reactivation_notice_button_text">[Ļéåŕñ Ḿöŕé one two]</string>
<string name="premium_subscription_reactivation_notice_text">[ŔéåçţîVåţé Ñîţŕö ţö ŕéĝåîñ åççéšš ţö ļåŕĝéŕ ƒîļé ûþļöåðš, åñîḿåţéð åVåţåŕš &amp; ḿöŕé. one two three four five six seven eight nine]</string>
<string name="premium_subscription_reactivation_notice_button_text">[Ḿåñåĝé Þļåñ one two]</string>
<string name="premium_subscription_reactivation_notice_text">[Ýöûŕ Ñîţŕö šûɓšçŕîþţîöñ ĥåš éñðéð. ŔéåçţîVåţé ţö ŕéĝåîñ åççéšš ţö ļåŕĝéŕ ƒîļé ûþļöåðš åñð ḿöŕé. one two three four five six seven eight nine ten]</string>
<string name="premium_subscription_renewal_footer">[Åñý éļîĝîɓļé šûɓšçŕîþţîöñ çŕéðîţ ŵîļļ ɓé åþþļîéð ûñţîļ îţ ŕûñš öûţ. Ýöûŕ šûɓšçŕîþţîöñ ŵîļļ ŕéñéŵ ƒöŕ **»{rate}«** öñ **»{renewalDate}«**. ĤåVé Qûéšţîöñš¿ [Çöñţåçţ öûŕ šûþþöŕţ ţéåḿ](»{contactLink}«) öŕ [çĥéçķ öûţ öûŕ šûɓšçŕîþţîöñ FÅq](»{helpdeskArticle}«). 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 eight nine ten eleven twelve thirteen fourteen]</string>
<string name="premium_subscription_renewal_footer_trial">[Ýöûŕ ƒŕéé ḿöñţĥ çŕéðîţ ŵîļļ ɓé åþþļîéð ûñţîļ îţ ŕûñš öûţ, åñð ŵé\'ļļ šéñð ýöû å ŕéḿîñðéŕ éḿåîļ **»{days}«** ɓéƒöŕé ýöûŕ ƒŕéé þéŕîöð éñðš. ĤåVé Qûéšţîöñš¿ [Çĥéçķ öûţ öûŕ öƒƒéŕ FÅq](»{helpdeskArticle}«) öŕ [çöñţåçţ öûŕ šûþþöŕţ ţéåḿ](»{contactLink}«). 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 eight nine ten eleven twelve thirteen fourteen fiveteen]</string>
<string name="premium_subscription_required_body">[Ĥöļð ûþ¡ Ýöû ñééð Ñîţŕö ţö ĝéţ ţĥîš ļööţ. one two three four five]</string>
@ -9211,7 +9219,7 @@
<string name="user_settings_open_on_startup_label">[Öþéñ Ðîšçöŕð one two]</string>
<string name="user_settings_privacy_terms">[Çĥéçķ öûţ öûŕ [Ţéŕḿš öƒ ŠéŕVîçé](»{termsLink}«) åñð [ÞŕîVåçý Þöļîçý](»{privacyLink}«). one two three four five six seven eight nine ten eleven twelve]</string>
<string name="user_settings_profile_banner">[Þŕöƒîļé βåññéŕ one two three]</string>
<string name="user_settings_profile_color_beta">[Þŕöƒîļé Çöļöŕ îš çûŕŕéñţļý åVåîļåɓļé ţö å ļîḿîţéð ñûḿɓéŕ öƒ þéöþļé one two three four five six seven eight]</string>
<string name="user_settings_profile_color">[Þŕöƒîļé Çöļöŕ one two]</string>
<string name="user_settings_profile_color_custom">[Çûšţöḿ one two]</string>
<string name="user_settings_profile_color_custom_button">[Ûšé å çûšţöḿ þŕöƒîļé çöļöŕ. Šéļéçţéð: »{colorHex}« one two three four five]</string>
<string name="user_settings_profile_color_default">[Ðéƒåûļţ one two]</string>
@ -9220,7 +9228,6 @@
<string name="user_settings_profile_color_desc_mobile">[νîšîɓļé ŵĥéñ ñö îḿåĝé îš šéţ. one two three four]</string>
<string name="user_settings_profile_color_mobile">[βåññéŕ Çöļöŕ one two]</string>
<string name="user_settings_profile_color_select_color">[Šéļéçţ çûšţöḿ çöļöŕ one two three]</string>
<string name="user_settings_profle_color">[Þŕöƒîļé Çöļöŕ one two]</string>
<string name="user_settings_remove_avatar">[ŔéḿöVé ÅVåţåŕ one two]</string>
<string name="user_settings_remove_banner">[ŔéḿöVé βåññéŕ one two]</string>
<string name="user_settings_remove_profile_banner">[ŔéḿöVé Þŕöƒîļé βåññéŕ one two three]</string>

View File

@ -8362,10 +8362,8 @@
<string name="user_settings_open_on_startup_label">Abrir Discord</string>
<string name="user_settings_privacy_terms">Echa un vistazo a nuestras [Condiciones del Servicio]({termsLink}) y [Política de Privacidad]({privacyLink}).</string>
<string name="user_settings_profile_banner">Cartel de perfil</string>
<string name="user_settings_profile_color_beta">El color del perfil está disponible para un número limitado de personas</string>
<string name="user_settings_profile_color_custom">Personalizados</string>
<string name="user_settings_profile_color_default">Predeterminado</string>
<string name="user_settings_profle_color">Color del perfil</string>
<string name="user_settings_remove_avatar">Eliminar avatar</string>
<string name="user_settings_remove_banner">Eliminar cartel</string>
<string name="user_settings_remove_profile_banner">Eliminar cartel del perfil</string>

View File

@ -8458,10 +8458,8 @@
<string name="user_settings_open_on_startup_label">Avaa Discord</string>
<string name="user_settings_privacy_terms">Katso [palveluehtomme]({termsLink}) ja [tietosuojakäytäntömme]({privacyLink}).</string>
<string name="user_settings_profile_banner">Profiilibanneri</string>
<string name="user_settings_profile_color_beta">Profiiliväri on tällä hetkellä rajoitetun käyttäjäjoukon käytettävissä</string>
<string name="user_settings_profile_color_custom">Mukautettu</string>
<string name="user_settings_profile_color_default">Oletus</string>
<string name="user_settings_profle_color">Profiiliväri</string>
<string name="user_settings_remove_avatar">Poista avatar</string>
<string name="user_settings_remove_banner">Poista banneri</string>
<string name="user_settings_remove_profile_banner">Poista profiilibanneri</string>

View File

@ -8525,10 +8525,8 @@
<string name="user_settings_open_on_startup_label">Ouvrir Discord</string>
<string name="user_settings_privacy_terms">Consulte nos [Conditions d\'Utilisation]({termsLink}) et notre [Politique de Confidentialité]({privacyLink}).</string>
<string name="user_settings_profile_banner">Bannière de profil</string>
<string name="user_settings_profile_color_beta">La couleur de profil est accessible à un nombre limité de personnes pour le moment</string>
<string name="user_settings_profile_color_custom">Personnalisés</string>
<string name="user_settings_profile_color_default">Par défaut</string>
<string name="user_settings_profle_color">Couleur de profil</string>
<string name="user_settings_remove_avatar">Supprimer l\'avatar</string>
<string name="user_settings_remove_banner">Supprimer la bannière</string>
<string name="user_settings_remove_profile_banner">Supprimer la bannière de profil</string>

View File

@ -8454,10 +8454,8 @@
<string name="user_settings_open_on_startup_label">Discord खोलें</string>
<string name="user_settings_privacy_terms">हमारी [सेवा की शर्तें]({termsLink})और [निजता नीति]({privacyLink}) को देखें.</string>
<string name="user_settings_profile_banner">प्रोफाइल बैनर</string>
<string name="user_settings_profile_color_beta">प्रोफ़ाइल कलर फ़िलहाल कुछ लोगों के लिए ही उपलब्ध है</string>
<string name="user_settings_profile_color_custom">कस्टम</string>
<string name="user_settings_profile_color_default">डिफ़ॉल्ट</string>
<string name="user_settings_profle_color">प्रोफ़ाइल कलर</string>
<string name="user_settings_remove_avatar">अवतार रिमूव करें</string>
<string name="user_settings_remove_banner">बैनर रिमूव करें</string>
<string name="user_settings_remove_profile_banner">प्रोफाइल बैनर रिमूव करें</string>

View File

@ -8454,10 +8454,8 @@
<string name="user_settings_open_on_startup_label">Otvori Discord</string>
<string name="user_settings_privacy_terms">Pogledaj naše [Uvjete pružanja usluge]({termsLink}) i [Pravila zaštite osobnih podataka]({privacyLink}).</string>
<string name="user_settings_profile_banner">Banner profila</string>
<string name="user_settings_profile_color_beta">Boja profila trenutačno je omogućena tek za ograničeni broj ljudi</string>
<string name="user_settings_profile_color_custom">Prilagođeno</string>
<string name="user_settings_profile_color_default">Zadano</string>
<string name="user_settings_profle_color">Boja profila</string>
<string name="user_settings_remove_avatar">Ukloni avatar</string>
<string name="user_settings_remove_banner">Ukloni banner</string>
<string name="user_settings_remove_profile_banner">Ukloni banner profila</string>

View File

@ -8454,10 +8454,8 @@
<string name="user_settings_open_on_startup_label">A Discord megnyitása</string>
<string name="user_settings_privacy_terms">Nézd meg a [Szolgáltatási feltételeket]({termsLink}) és az [Adatvédelmi szabályzatot]({privacyLink}).</string>
<string name="user_settings_profile_banner">Profilbanner</string>
<string name="user_settings_profile_color_beta">A profilszín jelenleg korlátozott számú felhasználó számára érhető el.</string>
<string name="user_settings_profile_color_custom">Egyedi</string>
<string name="user_settings_profile_color_default">Alapértelmezett</string>
<string name="user_settings_profle_color">Profilszín</string>
<string name="user_settings_remove_avatar">Profilkép eltávolítása</string>
<string name="user_settings_remove_banner">Banner eltávolítása</string>
<string name="user_settings_remove_profile_banner">Profilbanner eltávolítása</string>

View File

@ -8525,10 +8525,8 @@
<string name="user_settings_open_on_startup_label">Apri Discord</string>
<string name="user_settings_privacy_terms">Controlla i nostri [Termini di Servizio]({termsLink}) e [Informativa sulla privacy]({privacyLink}).</string>
<string name="user_settings_profile_banner">Banner del profilo</string>
<string name="user_settings_profile_color_beta">Il colore del Profilo è al momento disponibile per un numero limitato di persone</string>
<string name="user_settings_profile_color_custom">Personalizzato</string>
<string name="user_settings_profile_color_default">Predefinito</string>
<string name="user_settings_profle_color">Colore del Profilo</string>
<string name="user_settings_remove_avatar">Rimuovi avatar</string>
<string name="user_settings_remove_banner">Rimuovi banner</string>
<string name="user_settings_remove_profile_banner">Rimuovi banner del profilo</string>

View File

@ -8528,10 +8528,8 @@
<string name="user_settings_open_on_startup_label">Discordを開く</string>
<string name="user_settings_privacy_terms">[サービス利用規約]({termsLink}) 及び [プライバシーポリシー]({privacyLink}) を確認してください。</string>
<string name="user_settings_profile_banner">プロフィールバナー</string>
<string name="user_settings_profile_color_beta">プロフィールカラーは現在、一部のユーザー限定の機能となっています</string>
<string name="user_settings_profile_color_custom">カスタム</string>
<string name="user_settings_profile_color_default">既定値</string>
<string name="user_settings_profle_color">プロフィールカラー</string>
<string name="user_settings_remove_avatar">アバター削除</string>
<string name="user_settings_remove_banner">バナー削除</string>
<string name="user_settings_remove_profile_banner">プロフィールバナーを削除</string>

View File

@ -8525,10 +8525,8 @@
<string name="user_settings_open_on_startup_label">Discord 열기</string>
<string name="user_settings_privacy_terms">[이용 약관]({termsLink})과 [개인정보 보호 정책]({privacyLink})을 확인하세요.</string>
<string name="user_settings_profile_banner">프로필 배너</string>
<string name="user_settings_profile_color_beta">프로필 색상은 현재 일부 사용자들만 사용할 수 있어요</string>
<string name="user_settings_profile_color_custom">사용자 지정</string>
<string name="user_settings_profile_color_default">기본</string>
<string name="user_settings_profle_color">프로필 색상</string>
<string name="user_settings_remove_avatar">아바타 제거</string>
<string name="user_settings_remove_banner">배너 제거</string>
<string name="user_settings_remove_profile_banner">프로필 배너 제거</string>

View File

@ -8454,10 +8454,8 @@
<string name="user_settings_open_on_startup_label">Atidaryti Discord</string>
<string name="user_settings_privacy_terms">Peržiūrėk mūsų [Paslaugų teikimo sąlygas]({termsLink}) ir [Privatumo politiką]({privacyLink}).</string>
<string name="user_settings_profile_banner">Profilio reklamjuostė</string>
<string name="user_settings_profile_color_beta">Šiuo metu profilio spalva pasiekiama ribotam žmonių skaičiui</string>
<string name="user_settings_profile_color_custom">Pritaikytas</string>
<string name="user_settings_profile_color_default">Numatytasis</string>
<string name="user_settings_profle_color">Profilio spalva</string>
<string name="user_settings_remove_avatar">Šalinti pseudoportretą</string>
<string name="user_settings_remove_banner">Šalinti reklamjuostę</string>
<string name="user_settings_remove_profile_banner">Šalinti profilio reklamjuostę</string>

View File

@ -8525,10 +8525,8 @@
<string name="user_settings_open_on_startup_label">Discord openen</string>
<string name="user_settings_privacy_terms">Lees onze [Servicevoorwaarden]({termsLink}) en ons [Privacybeleid]({privacyLink}).</string>
<string name="user_settings_profile_banner">Profielbanner</string>
<string name="user_settings_profile_color_beta">Profielkleur is op dit moment beschikbaar voor een beperkt aantal mensen</string>
<string name="user_settings_profile_color_custom">Persoonlijk</string>
<string name="user_settings_profile_color_default">Standaard</string>
<string name="user_settings_profle_color">Profielkleur</string>
<string name="user_settings_remove_avatar">Avatar verwijderen</string>
<string name="user_settings_remove_banner">Banner verwijderen</string>
<string name="user_settings_remove_profile_banner">Profielbanner verwijderen</string>

View File

@ -8295,10 +8295,8 @@
<string name="user_settings_open_on_startup_label">Åpne Discord</string>
<string name="user_settings_privacy_terms">Sjekk [Vilkår for bruk]({termsLink}) og [Personvernerklæring]({privacyLink}).</string>
<string name="user_settings_profile_banner">Profilbanner</string>
<string name="user_settings_profile_color_beta">Profilfarge er for øyeblikket tilgjengelig for et begrenset antall personer</string>
<string name="user_settings_profile_color_custom">Egendefinert</string>
<string name="user_settings_profile_color_default">Standard</string>
<string name="user_settings_profle_color">Profilfarge</string>
<string name="user_settings_remove_avatar">Fjern Avatar</string>
<string name="user_settings_remove_banner">Fjern banner</string>
<string name="user_settings_remove_profile_banner">Fjern profilbanner</string>

View File

@ -8526,10 +8526,8 @@
<string name="user_settings_open_on_startup_label">Otwórz Discorda</string>
<string name="user_settings_privacy_terms">Przyjrzyj się naszym [Warunkom Korzystania z Usługi]({termsLink}) i [Polityce prywatności]({privacyLink}).</string>
<string name="user_settings_profile_banner">Baner profilu</string>
<string name="user_settings_profile_color_beta">Kolor profilu jest obecnie dostępny tylko dla ograniczonej liczby osób</string>
<string name="user_settings_profile_color_custom">Własny</string>
<string name="user_settings_profile_color_default">Domyślny</string>
<string name="user_settings_profle_color">Kolor profilu</string>
<string name="user_settings_remove_avatar">Usuń awatar</string>
<string name="user_settings_remove_banner">Usuń baner</string>
<string name="user_settings_remove_profile_banner">Usuń baner profilu</string>

View File

@ -8407,10 +8407,8 @@
<string name="user_settings_open_on_startup_label">Abrir o Discord</string>
<string name="user_settings_privacy_terms">Veja nossos [Termos de Serviço]({termsLink}) e [Política de Privacidade]({privacyLink}).</string>
<string name="user_settings_profile_banner">Faixa do perfil</string>
<string name="user_settings_profile_color_beta">No momento, cores no perfil estão disponíveis para um número limitado de pessoas.</string>
<string name="user_settings_profile_color_custom">Personalizadas</string>
<string name="user_settings_profile_color_default">Padrão</string>
<string name="user_settings_profle_color">Cor do perfil</string>
<string name="user_settings_remove_avatar">Remover avatar</string>
<string name="user_settings_remove_banner">Remover faixa</string>
<string name="user_settings_remove_profile_banner">Remover faixa do perfil</string>

View File

@ -8454,10 +8454,8 @@
<string name="user_settings_open_on_startup_label">Deschide Discord</string>
<string name="user_settings_privacy_terms">Consultă [Condițiile de Prestare a Serviciilor]({termsLink}) și [Politica de confidențialitate]({privacyLink}).</string>
<string name="user_settings_profile_banner">Banner pentru profil</string>
<string name="user_settings_profile_color_beta">Culoarea de profil este momentan disponibilă doar pentru un număr limitat de persoane</string>
<string name="user_settings_profile_color_custom">Personalizată</string>
<string name="user_settings_profile_color_default">Implicită</string>
<string name="user_settings_profle_color">Culoare de profil</string>
<string name="user_settings_remove_avatar">Elimină avatarul</string>
<string name="user_settings_remove_banner">Elimină bannerul</string>
<string name="user_settings_remove_profile_banner">Elimină bannerul pentru profil</string>

View File

@ -8526,10 +8526,8 @@
<string name="user_settings_open_on_startup_label">Открыть Discord</string>
<string name="user_settings_privacy_terms">Ознакомьтесь с [Условиями Использования]({termsLink}) и [Политикой конфиденциальности]({privacyLink}).</string>
<string name="user_settings_profile_banner">Баннер профиля</string>
<string name="user_settings_profile_color_beta">На текущий момент выбор цвета профиля доступен ограниченному кругу пользователей.</string>
<string name="user_settings_profile_color_custom">Пользовательские</string>
<string name="user_settings_profile_color_default">По умолчанию</string>
<string name="user_settings_profle_color">Цвет профиля</string>
<string name="user_settings_remove_avatar">Удалить аватар</string>
<string name="user_settings_remove_banner">Удалить баннер</string>
<string name="user_settings_remove_profile_banner">Удалить баннер профиля</string>

View File

@ -8362,10 +8362,8 @@
<string name="user_settings_open_on_startup_label">Öppna Discord</string>
<string name="user_settings_privacy_terms">Kolla in [Användarvillkoren]({termsLink}) och [Sekretesspolicyn]({privacyLink}).</string>
<string name="user_settings_profile_banner">Profilbanner</string>
<string name="user_settings_profile_color_beta">Profilfärg finns för närvarande bara för ett begränsat antal personer.</string>
<string name="user_settings_profile_color_custom">Anpassad</string>
<string name="user_settings_profile_color_default">Standard</string>
<string name="user_settings_profle_color">Profilfärg</string>
<string name="user_settings_remove_avatar">Ta bort avatar</string>
<string name="user_settings_remove_banner">Ta bort banner</string>
<string name="user_settings_remove_profile_banner">Ta bort profilbanner</string>

View File

@ -8454,10 +8454,8 @@
<string name="user_settings_open_on_startup_label">เปิด Discord</string>
<string name="user_settings_privacy_terms">ตรวจสอบ [เงื่อนไขการให้บริการ]({termsLink}) และ [นโยบายความเป็นส่วนตัว]({privacyLink}) ของเรา</string>
<string name="user_settings_profile_banner">แบนเนอร์โปรไฟล์</string>
<string name="user_settings_profile_color_beta">ในตอนนี้ สีโปรไฟล์เปิดให้ใช้งานแล้ว แต่จำกัดจำนวนผู้ใช้</string>
<string name="user_settings_profile_color_custom">กำหนดเอง</string>
<string name="user_settings_profile_color_default">ค่าเดิม</string>
<string name="user_settings_profle_color">สีโปรไฟล์</string>
<string name="user_settings_remove_avatar">ลบสัญลักษณ์ประจำตัว</string>
<string name="user_settings_remove_banner">ลบแบนเนอร์</string>
<string name="user_settings_remove_profile_banner">ลบแบนเนอร์โปรไฟล์</string>

View File

@ -8527,10 +8527,8 @@
<string name="user_settings_open_on_startup_label">Discord\'u Aç</string>
<string name="user_settings_privacy_terms">[Hizmet Koşullarına]({termsLink}) ve [Gizlilik Politikasına]({privacyLink}) göz at.</string>
<string name="user_settings_profile_banner">Profil Afişi</string>
<string name="user_settings_profile_color_beta">Profil Rengi şimdilik sınırlı sayıda kişi tarafından kullanılabilir</string>
<string name="user_settings_profile_color_custom">Özel</string>
<string name="user_settings_profile_color_default">Varsayılan</string>
<string name="user_settings_profle_color">Profil Rengi</string>
<string name="user_settings_remove_avatar">Avatarı Kaldır</string>
<string name="user_settings_remove_banner">Afişi Kaldır</string>
<string name="user_settings_remove_profile_banner">Profil Afişini Kaldır</string>

View File

@ -8454,10 +8454,8 @@
<string name="user_settings_open_on_startup_label">Відкрити Discord</string>
<string name="user_settings_privacy_terms">Ознайомся з нашими [Умовами надання послуг]({termsLink}) та [Політикою конфіденційності]({privacyLink}).</string>
<string name="user_settings_profile_banner">Банер для профілю</string>
<string name="user_settings_profile_color_beta">Колір профілю наразі доступний обмеженій кількості людей</string>
<string name="user_settings_profile_color_custom">Спеціальні</string>
<string name="user_settings_profile_color_default">Типові</string>
<string name="user_settings_profle_color">Колір профілю</string>
<string name="user_settings_remove_avatar">Прибрати аватар</string>
<string name="user_settings_remove_banner">Прибрати банер</string>
<string name="user_settings_remove_profile_banner">Прибрати банер профілю</string>

View File

@ -8453,10 +8453,8 @@
<string name="user_settings_open_on_startup_label">Mở Discord</string>
<string name="user_settings_privacy_terms">Hãy đọc [Điều Khoản Dịch Vụ]({termsLink}) và [Chính Sách Bảo Mật]({privacyLink}) của chúng tôi.</string>
<string name="user_settings_profile_banner">Biểu Ngữ Hồ Sơ</string>
<string name="user_settings_profile_color_beta">Hiện nay, tính năng Màu Hồ Sơ chỉ được cung cấp cho một số lượng người dùng có hạn</string>
<string name="user_settings_profile_color_custom">Tùy biến</string>
<string name="user_settings_profile_color_default">Mặc định</string>
<string name="user_settings_profle_color">Màu Hồ Sơ</string>
<string name="user_settings_remove_avatar">Xóa Ảnh Đại Diện</string>
<string name="user_settings_remove_banner">Xóa Biểu Ngữ</string>
<string name="user_settings_remove_profile_banner">Xóa Biểu Ngữ Hồ Sơ</string>

View File

@ -8518,10 +8518,8 @@
<string name="user_settings_open_on_startup_label">打开 Discord</string>
<string name="user_settings_privacy_terms">快阅读一下我们的[服务条款]({termsLink})和[隐私权政策]({privacyLink})吧。</string>
<string name="user_settings_profile_banner">个人资料横幅</string>
<string name="user_settings_profile_color_beta">个人资料颜色当前仅对部分用户开放</string>
<string name="user_settings_profile_color_custom">自定义</string>
<string name="user_settings_profile_color_default">默认​​​​​</string>
<string name="user_settings_profle_color">个人资料颜色</string>
<string name="user_settings_remove_avatar">移除头像</string>
<string name="user_settings_remove_banner">移除横幅</string>
<string name="user_settings_remove_profile_banner">移除个人资料横幅</string>

View File

@ -8520,10 +8520,8 @@
<string name="user_settings_open_on_startup_label">開啟 Discord</string>
<string name="user_settings_privacy_terms">查看我們的 [服務條款]({termsLink}) 與 [隱私權政策]({privacyLink})。</string>
<string name="user_settings_profile_banner">個人資料橫幅</string>
<string name="user_settings_profile_color_beta">個人資料顏色目前僅開放給部分使用者</string>
<string name="user_settings_profile_color_custom">自訂</string>
<string name="user_settings_profile_color_default">預設</string>
<string name="user_settings_profle_color">個人資料顏色</string>
<string name="user_settings_remove_avatar">移除頭像</string>
<string name="user_settings_remove_banner">移除橫幅</string>
<string name="user_settings_remove_profile_banner">移除個人資料橫幅</string>

File diff suppressed because it is too large Load Diff

View File

@ -1414,7 +1414,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_2131887495_com_crashlytics_android_build_id">6019786de6784d718a643a86efe78cfc</string>
<string name="res_2131887495_com_crashlytics_android_build_id">18becc1b1fed48b9a18aa75e021884cb</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>
@ -2246,6 +2246,10 @@
<string name="elevated_permissions_sound_request_access_button">Grant Access</string>
<string name="elevated_permissions_sound_title">Sound Permissions</string>
<string name="email">Email</string>
<string name="email_category_manage_setting_label">Manage your user settings.</string>
<string name="email_category_unsubscribe_email_body">You have unsubscribed from: {category}. To change your email notification settings, visit user settings.</string>
<string name="email_category_unsubscribe_header">Youre unsubscribed</string>
<string name="email_category_unsubscribe_marketing_email_body">To unsubscribe from all marketing emails, visit user settings.</string>
<string name="email_invalid">The email entered is not valid, please update it and try again.</string>
<string name="email_required">A valid email is required.</string>
<string name="email_verification_instructions_body">We sent instructions to change your password to **!!{email}!!**, please check both your inbox and spam folder.</string>
@ -3313,6 +3317,7 @@
<string name="guild_event_delete_confirm_body">Are you sure you want to delete this event?</string>
<string name="guild_event_delete_confirm_header">Delete Event?</string>
<string name="guild_event_end_date_before_start_date">The end time must be after the start time.</string>
<string name="guild_event_end_prompt_body">It will eventually end automatically when it feels like it.</string>
<string name="guild_event_end_prompt_cancel">No, just disconnect</string>
<string name="guild_event_end_prompt_confirm">Yes, end the event</string>
<string name="guild_event_end_prompt_title">Do you want to also end the event?</string>
@ -3574,6 +3579,7 @@
<string name="guild_role_subscription_tier_detail_custom_image_a11y_label">Select Image</string>
<string name="guild_role_subscription_tier_detail_custom_image_button">Upload Image</string>
<string name="guild_role_subscription_tier_detail_custom_image_description">We recommend an image that\'s at least 500 pixels square.</string>
<string name="guild_role_subscription_tier_detail_custom_image_edit_button">Edit Image</string>
<string name="guild_role_subscription_tier_detail_custom_image_label">Custom Image</string>
<string name="guild_role_subscription_tier_detail_description_label">Description</string>
<string name="guild_role_subscription_tier_detail_description_placeholder">Gotta make you understand</string>
@ -5338,6 +5344,8 @@
<string name="localized_pricing_not_canceled_not_missing_payment_notice_button_text">Manage Plan</string>
<string name="localized_pricing_not_canceled_not_missing_payment_notice_text">We\'ve lowered Nitro pricing in your area. See if you save with your local currency.</string>
<string name="localized_pricing_on_change_payment_method">Changing your payment method will change your subscription price and currency to {newCurrencyAndPrice}. [Click here]({helpCenterLink}) to learn more about how we determine what you pay.</string>
<string name="localized_pricing_post_churn_notice_button_text">Manage Plan</string>
<string name="localized_pricing_post_churn_notice_text">We\'ve lowered Nitro pricing in some areas. Reactivate your Nitro subscription and see if you can save.</string>
<string name="localized_pricing_use_local_payment_method">**Tip**: Use a payment method local to {country} to pay for your subscription in {currency}! [Click here]({helpCenterLink}) to learn more about how we determine price and currency.</string>
<string name="localized_pricing_using_local_payment_method">**Hooray!** As a resident of {country}, you\'re now paying the discounted price of {newPrice} for Nitro! [Learn More]({helpCenterLink}).</string>
<string name="login">Login</string>
@ -5733,8 +5741,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_2131891815_msg_alert_cleared">Alert Cleared</string>
<string name="res_2131891816_msg_no_alert_showing">No Alert Showing</string>
<string name="res_2131891823_msg_alert_cleared">Alert Cleared</string>
<string name="res_2131891824_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>
@ -6949,8 +6957,8 @@
<string name="premium_subscription_plan_adjustment">{planName} Adjustment</string>
<string name="premium_subscription_policy_hint_ios">See subscription and auto-renewal details below</string>
<string name="premium_subscription_policy_ios">By purchasing a Nitro subscription, you agree to our [Terms of Service]({termsURL}) and [Privacy Policy]({privacyURL}). Payment will be charged to your Apple ID account at the confirmation of purchase. Subscription automatically renews unless it is canceled at least 24 hours before the end of the current period. Your account will be charged for renewal within 24 hours prior to the end of the current period. You can manage and cancel your subscriptions by going to your account settings on the App Store after purchase.</string>
<string name="premium_subscription_reactivation_notice_button_text">Learn More</string>
<string name="premium_subscription_reactivation_notice_text">Reactivate Nitro to regain access to larger file uploads, animated avatars &amp; more.</string>
<string name="premium_subscription_reactivation_notice_button_text">Manage Plan</string>
<string name="premium_subscription_reactivation_notice_text">Your Nitro subscription has ended. Reactivate to regain access to larger file uploads and more.</string>
<string name="premium_subscription_renewal_footer">Any eligible subscription credit will be applied until it runs out. Your subscription will renew for **{rate}** on **{renewalDate}**. Have questions? [Contact our support team]({contactLink}) or [check out our subscription FAQ]({helpdeskArticle}).</string>
<string name="premium_subscription_renewal_footer_trial">Your free month credit will be applied until it runs out, and we\'ll send you a reminder email **{days}** before your free period ends. Have questions? [Check out our offer FAQ]({helpdeskArticle}) or [contact our support team]({contactLink}).</string>
<string name="premium_subscription_required_body">Hold up! You need Nitro to get this loot.</string>
@ -9240,7 +9248,7 @@
<string name="user_settings_open_on_startup_label">Open Discord</string>
<string name="user_settings_privacy_terms">Check out our [Terms of Service]({termsLink}) and [Privacy Policy]({privacyLink}).</string>
<string name="user_settings_profile_banner">Profile Banner</string>
<string name="user_settings_profile_color_beta">Profile Color is currently available to a limited number of people</string>
<string name="user_settings_profile_color">Profile Color</string>
<string name="user_settings_profile_color_custom">Custom</string>
<string name="user_settings_profile_color_custom_button">Use a custom profile color. Selected: {colorHex}</string>
<string name="user_settings_profile_color_default">Default</string>
@ -9249,7 +9257,6 @@
<string name="user_settings_profile_color_desc_mobile">Visible when no image is set.</string>
<string name="user_settings_profile_color_mobile">Banner Color</string>
<string name="user_settings_profile_color_select_color">Select custom color</string>
<string name="user_settings_profle_color">Profile Color</string>
<string name="user_settings_remove_avatar">Remove Avatar</string>
<string name="user_settings_remove_banner">Remove Banner</string>
<string name="user_settings_remove_profile_banner">Remove Profile Banner</string>