120 lines
5.1 KiB
Java
120 lines
5.1 KiB
Java
|
package com.discord.utilities.string;
|
||
|
|
||
|
import android.content.Context;
|
||
|
import android.content.res.Configuration;
|
||
|
import android.content.res.Resources;
|
||
|
import android.os.Build;
|
||
|
import c.a.l.b;
|
||
|
import com.discord.utilities.locale.LocaleManager;
|
||
|
import com.discord.utils.R;
|
||
|
import d0.t.n;
|
||
|
import d0.z.d.m;
|
||
|
import java.net.IDN;
|
||
|
import java.net.URL;
|
||
|
import java.text.Normalizer;
|
||
|
import java.text.NumberFormat;
|
||
|
import java.util.Locale;
|
||
|
import kotlin.jvm.functions.Function1;
|
||
|
import kotlin.text.Regex;
|
||
|
/* compiled from: StringUtils.kt */
|
||
|
public final class StringUtilsKt {
|
||
|
private static final String STATIC_IMAGE_EXTENSION = (n.listOf(new Integer[]{28, 29}).contains(Integer.valueOf(Build.VERSION.SDK_INT)) ? "png" : "webp");
|
||
|
private static final Regex STRIP_ACCENTS_REGEX = new Regex("[\\p{InCombiningDiacriticalMarks}]");
|
||
|
|
||
|
public static final String encodeToBase32String(byte[] bArr) {
|
||
|
int i;
|
||
|
m.checkNotNullParameter(bArr, "$this$encodeToBase32String");
|
||
|
StringBuffer stringBuffer = new StringBuffer(((bArr.length + 7) * 8) / 5);
|
||
|
int i2 = 0;
|
||
|
int i3 = 0;
|
||
|
while (i2 < bArr.length) {
|
||
|
int i4 = bArr[i2] >= 0 ? bArr[i2] : bArr[i2] + 256;
|
||
|
if (i3 > 3) {
|
||
|
i2++;
|
||
|
i3 = (i3 + 5) % 8;
|
||
|
i = ((i4 & (255 >> i3)) << i3) | ((i2 < bArr.length ? bArr[i2] >= 0 ? bArr[i2] : bArr[i2] + 256 : 0) >> (8 - i3));
|
||
|
} else {
|
||
|
int i5 = i3 + 5;
|
||
|
i = (i4 >> (8 - i5)) & 31;
|
||
|
i3 = i5 % 8;
|
||
|
if (i3 == 0) {
|
||
|
i2++;
|
||
|
}
|
||
|
}
|
||
|
stringBuffer.append("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567".charAt(i));
|
||
|
}
|
||
|
String stringBuffer2 = stringBuffer.toString();
|
||
|
m.checkNotNullExpressionValue(stringBuffer2, "Base32.encodeOriginal(this)");
|
||
|
return stringBuffer2;
|
||
|
}
|
||
|
|
||
|
public static final String filenameSanitized(CharSequence charSequence) {
|
||
|
m.checkNotNullParameter(charSequence, "$this$filenameSanitized");
|
||
|
return new Regex("[/\\\\]").replace(charSequence, "_");
|
||
|
}
|
||
|
|
||
|
public static final String format(int i, Context context) {
|
||
|
m.checkNotNullParameter(context, "context");
|
||
|
String format = NumberFormat.getInstance(new LocaleManager().getPrimaryLocale(context)).format(Integer.valueOf(i));
|
||
|
m.checkNotNullExpressionValue(format, "NumberFormat.getInstance…le(context)).format(this)");
|
||
|
return format;
|
||
|
}
|
||
|
|
||
|
public static final String getSTATIC_IMAGE_EXTENSION() {
|
||
|
return STATIC_IMAGE_EXTENSION;
|
||
|
}
|
||
|
|
||
|
public static final CharSequence getStringByLocale(Context context, int i, String str) {
|
||
|
m.checkNotNullParameter(context, "$this$getStringByLocale");
|
||
|
m.checkNotNullParameter(str, "locale");
|
||
|
try {
|
||
|
Resources resources = context.getResources();
|
||
|
m.checkNotNullExpressionValue(resources, "resources");
|
||
|
Configuration configuration = new Configuration(resources.getConfiguration());
|
||
|
configuration.setLocale(new Locale(str));
|
||
|
Context createConfigurationContext = context.createConfigurationContext(configuration);
|
||
|
m.checkNotNullExpressionValue(createConfigurationContext, "createConfigurationContext(configuration)");
|
||
|
Resources resources2 = createConfigurationContext.getResources();
|
||
|
m.checkNotNullExpressionValue(resources2, "createConfigurationConte…(configuration).resources");
|
||
|
return b.h(resources2, i, new Object[0], null, 4);
|
||
|
} catch (Resources.NotFoundException unused) {
|
||
|
return null;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
public static final String stripAccents(String str) {
|
||
|
m.checkNotNullParameter(str, "$this$stripAccents");
|
||
|
String normalize = Normalizer.normalize(str, Normalizer.Form.NFKD);
|
||
|
m.checkNotNullExpressionValue(normalize, "normalizedString");
|
||
|
return STRIP_ACCENTS_REGEX.replace(normalize, "");
|
||
|
}
|
||
|
|
||
|
public static final void test(Context context, Resources resources) {
|
||
|
m.checkNotNullParameter(context, "context");
|
||
|
m.checkNotNullParameter(resources, "resources");
|
||
|
context.getString(R.a.common_google_play_services_unknown_issue, 1);
|
||
|
resources.getString(R.a.common_google_play_services_enable_button, 1);
|
||
|
}
|
||
|
|
||
|
public static final String toPunyCodeASCIIUrl(String str) {
|
||
|
m.checkNotNullParameter(str, "$this$toPunyCodeASCIIUrl");
|
||
|
URL url = new URL(str);
|
||
|
StringBuilder sb = new StringBuilder(new URL(url.getProtocol(), IDN.toASCII(url.getHost(), 1), url.getPort(), url.getFile()).toString());
|
||
|
if (url.getRef() != null) {
|
||
|
sb.append('#');
|
||
|
sb.append(url.getRef());
|
||
|
}
|
||
|
String sb2 = sb.toString();
|
||
|
m.checkNotNullExpressionValue(sb2, "safeUrlStringBuilder.toString()");
|
||
|
return sb2;
|
||
|
}
|
||
|
|
||
|
public static final String transformOrEmpty(String str, Function1<? super String, String> function1) {
|
||
|
String invoke;
|
||
|
if (!(function1 == null || (invoke = function1.invoke(str)) == null)) {
|
||
|
str = invoke;
|
||
|
}
|
||
|
return str != null ? str : "";
|
||
|
}
|
||
|
}
|