package com.discord.utilities.rest; import a0.a.a.b; import android.content.ContentResolver; import android.content.Context; import androidx.annotation.MainThread; import c.d.b.a.a; import com.discord.restapi.RestAPIParams; import com.discord.utilities.attachments.AttachmentUtilsKt; import com.discord.utilities.error.Error; import com.lytefast.flexinput.model.Attachment; import d0.t.o; import d0.t.u; import d0.z.d.m; import j0.l.a.q; import j0.l.e.j; import java.util.ArrayList; import java.util.List; import kotlin.Unit; import kotlin.jvm.functions.Function0; import kotlin.jvm.functions.Function1; import kotlin.jvm.internal.DefaultConstructorMarker; import kotlinx.coroutines.CoroutineDispatcher; import okhttp3.MultipartBody; import rx.Emitter; import rx.Observable; import s.a.a.n; import s.a.j0; import s.a.w0; /* compiled from: SendUtils.kt */ public final class SendUtils { public static final SendUtils INSTANCE = new SendUtils(); public static final int MAX_MESSAGE_CHARACTER_COUNT = 2000; public static final int MAX_MESSAGE_CHARACTER_COUNT_PREMIUM = 4000; /* compiled from: SendUtils.kt */ public static final class FileUpload { public static final Companion Companion = new Companion(null); public static final long SIZE_UNKNOWN = -1; private final Observable bytesWrittenObservable; private final long contentLength; private final String mimeType; private final String name; private final MultipartBody.Part part; /* compiled from: SendUtils.kt */ public static final class Companion { private Companion() { } public /* synthetic */ Companion(DefaultConstructorMarker defaultConstructorMarker) { this(); } } public FileUpload(String str, long j, MultipartBody.Part part, String str2, Observable observable) { m.checkNotNullParameter(str, "name"); m.checkNotNullParameter(part, "part"); m.checkNotNullParameter(str2, "mimeType"); m.checkNotNullParameter(observable, "bytesWrittenObservable"); this.name = str; this.contentLength = j; this.part = part; this.mimeType = str2; this.bytesWrittenObservable = observable; } /* JADX DEBUG: Multi-variable search result rejected for r4v0, resolved type: com.discord.utilities.rest.SendUtils$FileUpload */ /* JADX WARN: Multi-variable type inference failed */ public static /* synthetic */ FileUpload copy$default(FileUpload fileUpload, String str, long j, MultipartBody.Part part, String str2, Observable observable, int i, Object obj) { if ((i & 1) != 0) { str = fileUpload.name; } if ((i & 2) != 0) { j = fileUpload.contentLength; } if ((i & 4) != 0) { part = fileUpload.part; } if ((i & 8) != 0) { str2 = fileUpload.mimeType; } if ((i & 16) != 0) { observable = fileUpload.bytesWrittenObservable; } return fileUpload.copy(str, j, part, str2, observable); } public final String component1() { return this.name; } public final long component2() { return this.contentLength; } public final MultipartBody.Part component3() { return this.part; } public final String component4() { return this.mimeType; } public final Observable component5() { return this.bytesWrittenObservable; } public final FileUpload copy(String str, long j, MultipartBody.Part part, String str2, Observable observable) { m.checkNotNullParameter(str, "name"); m.checkNotNullParameter(part, "part"); m.checkNotNullParameter(str2, "mimeType"); m.checkNotNullParameter(observable, "bytesWrittenObservable"); return new FileUpload(str, j, part, str2, observable); } public boolean equals(Object obj) { if (this == obj) { return true; } if (!(obj instanceof FileUpload)) { return false; } FileUpload fileUpload = (FileUpload) obj; return m.areEqual(this.name, fileUpload.name) && this.contentLength == fileUpload.contentLength && m.areEqual(this.part, fileUpload.part) && m.areEqual(this.mimeType, fileUpload.mimeType) && m.areEqual(this.bytesWrittenObservable, fileUpload.bytesWrittenObservable); } public final Observable getBytesWrittenObservable() { return this.bytesWrittenObservable; } public final long getContentLength() { return this.contentLength; } public final String getMimeType() { return this.mimeType; } public final String getName() { return this.name; } public final MultipartBody.Part getPart() { return this.part; } public int hashCode() { String str = this.name; int i = 0; int a = (b.a(this.contentLength) + ((str != null ? str.hashCode() : 0) * 31)) * 31; MultipartBody.Part part = this.part; int hashCode = (a + (part != null ? part.hashCode() : 0)) * 31; String str2 = this.mimeType; int hashCode2 = (hashCode + (str2 != null ? str2.hashCode() : 0)) * 31; Observable observable = this.bytesWrittenObservable; if (observable != null) { i = observable.hashCode(); } return hashCode2 + i; } public String toString() { StringBuilder L = a.L("FileUpload(name="); L.append(this.name); L.append(", contentLength="); L.append(this.contentLength); L.append(", part="); L.append(this.part); L.append(", mimeType="); L.append(this.mimeType); L.append(", bytesWrittenObservable="); L.append(this.bytesWrittenObservable); L.append(")"); return L.toString(); } } /* compiled from: SendUtils.kt */ public static abstract class SendPayload { /* compiled from: SendUtils.kt */ public static final class Preprocessing extends SendPayload { private final String mimeType; private final String name; private final int numFiles; public Preprocessing(int i, String str, String str2) { super(null); this.numFiles = i; this.name = str; this.mimeType = str2; } public static /* synthetic */ Preprocessing copy$default(Preprocessing preprocessing, int i, String str, String str2, int i2, Object obj) { if ((i2 & 1) != 0) { i = preprocessing.numFiles; } if ((i2 & 2) != 0) { str = preprocessing.name; } if ((i2 & 4) != 0) { str2 = preprocessing.mimeType; } return preprocessing.copy(i, str, str2); } public final int component1() { return this.numFiles; } public final String component2() { return this.name; } public final String component3() { return this.mimeType; } public final Preprocessing copy(int i, String str, String str2) { return new Preprocessing(i, str, str2); } public boolean equals(Object obj) { if (this == obj) { return true; } if (!(obj instanceof Preprocessing)) { return false; } Preprocessing preprocessing = (Preprocessing) obj; return this.numFiles == preprocessing.numFiles && m.areEqual(this.name, preprocessing.name) && m.areEqual(this.mimeType, preprocessing.mimeType); } public final String getMimeType() { return this.mimeType; } public final String getName() { return this.name; } public final int getNumFiles() { return this.numFiles; } public int hashCode() { int i = this.numFiles * 31; String str = this.name; int i2 = 0; int hashCode = (i + (str != null ? str.hashCode() : 0)) * 31; String str2 = this.mimeType; if (str2 != null) { i2 = str2.hashCode(); } return hashCode + i2; } public String toString() { StringBuilder L = a.L("Preprocessing(numFiles="); L.append(this.numFiles); L.append(", name="); L.append(this.name); L.append(", mimeType="); return a.D(L, this.mimeType, ")"); } } /* compiled from: SendUtils.kt */ public static final class ReadyToSend extends SendPayload { private final RestAPIParams.Message message; private final List uploads; /* JADX INFO: super call moved to the top of the method (can break code semantics) */ public ReadyToSend(RestAPIParams.Message message, List list) { super(null); m.checkNotNullParameter(message, "message"); m.checkNotNullParameter(list, "uploads"); this.message = message; this.uploads = list; } /* JADX DEBUG: Multi-variable search result rejected for r0v0, resolved type: com.discord.utilities.rest.SendUtils$SendPayload$ReadyToSend */ /* JADX WARN: Multi-variable type inference failed */ public static /* synthetic */ ReadyToSend copy$default(ReadyToSend readyToSend, RestAPIParams.Message message, List list, int i, Object obj) { if ((i & 1) != 0) { message = readyToSend.message; } if ((i & 2) != 0) { list = readyToSend.uploads; } return readyToSend.copy(message, list); } public final RestAPIParams.Message component1() { return this.message; } public final List component2() { return this.uploads; } public final ReadyToSend copy(RestAPIParams.Message message, List list) { m.checkNotNullParameter(message, "message"); m.checkNotNullParameter(list, "uploads"); return new ReadyToSend(message, list); } public boolean equals(Object obj) { if (this == obj) { return true; } if (!(obj instanceof ReadyToSend)) { return false; } ReadyToSend readyToSend = (ReadyToSend) obj; return m.areEqual(this.message, readyToSend.message) && m.areEqual(this.uploads, readyToSend.uploads); } public final RestAPIParams.Message getMessage() { return this.message; } public final List getUploads() { return this.uploads; } public int hashCode() { RestAPIParams.Message message = this.message; int i = 0; int hashCode = (message != null ? message.hashCode() : 0) * 31; List list = this.uploads; if (list != null) { i = list.hashCode(); } return hashCode + i; } public String toString() { StringBuilder L = a.L("ReadyToSend(message="); L.append(this.message); L.append(", uploads="); return a.E(L, this.uploads, ")"); } } private SendPayload() { } public /* synthetic */ SendPayload(DefaultConstructorMarker defaultConstructorMarker) { this(); } } private SendUtils() { } private final Observable getPart(Attachment attachment, ContentResolver contentResolver, String str) { return Observable.n(new SendUtils$getPart$1(attachment, str, contentResolver), Emitter.BackpressureMode.BUFFER); } /* JADX DEBUG: Multi-variable search result rejected for r1v0, resolved type: com.discord.utilities.rest.SendUtils */ /* JADX WARN: Multi-variable type inference failed */ public static /* synthetic */ void handleSendError$default(SendUtils sendUtils, Error error, Context context, Function0 function0, Function0 function02, int i, Object obj) { if ((i & 4) != 0) { function0 = null; } if ((i & 8) != 0) { function02 = null; } sendUtils.handleSendError(error, context, function0, function02); } public final void compressImageAttachments(Context context, List> list, Function1>, Unit> function1) { m.checkNotNullParameter(context, "context"); m.checkNotNullParameter(list, "attachments"); m.checkNotNullParameter(function1, "onCompressed"); w0 w0Var = w0.i; CoroutineDispatcher coroutineDispatcher = j0.a; c.q.a.k.a.G(w0Var, n.b, null, new SendUtils$compressImageAttachments$1(list, context, function1, null), 2, null); } public final Observable getSendPayload(ContentResolver contentResolver, RestAPIParams.Message message, List> list) { SendPayload.Preprocessing preprocessing; RestAPIParams.Message message2 = message; m.checkNotNullParameter(contentResolver, "contentResolver"); m.checkNotNullParameter(message2, "apiParamMessage"); if (list == null) { j jVar = new j(new SendPayload.ReadyToSend(message2, d0.t.n.emptyList())); m.checkNotNullExpressionValue(jVar, "Observable.just(SendPayl…ramMessage, emptyList()))"); return jVar; } List> extractLinks = AttachmentUtilsKt.extractLinks(list, contentResolver); String content = message.getContent(); if (content == null) { content = ""; } String appendLinks = AttachmentUtilsKt.appendLinks(content, extractLinks); if (!m.areEqual(appendLinks, message.getContent())) { message2 = RestAPIParams.Message.copy$default(message, appendLinks, null, null, null, null, null, null, 126, null); } List minus = u.minus((Iterable) list, (Iterable) extractLinks); if (!minus.isEmpty()) { if (minus.size() != 1) { preprocessing = new SendPayload.Preprocessing(minus.size(), null, null); } else { Attachment attachment = (Attachment) u.first((List) minus); preprocessing = new SendPayload.Preprocessing(1, attachment.getDisplayName(), AttachmentUtilsKt.getMimeType(contentResolver, attachment.getUri(), attachment.getDisplayName())); } j jVar2 = new j(preprocessing); ArrayList arrayList = new ArrayList(o.collectionSizeOrDefault(minus, 10)); int i = 0; for (Object obj : minus) { int i2 = i + 1; if (i < 0) { d0.t.n.throwIndexOverflow(); } arrayList.add(INSTANCE.getPart((Attachment) obj, contentResolver, a.l("file", i))); i = i2; } Observable m = Observable.m(jVar2, Observable.l(Observable.i0(new q(arrayList))).g0().G(new SendUtils$getSendPayload$2(message2))); m.checkNotNullExpressionValue(m, "Observable.concat(\n …)\n }\n )"); return m; } j jVar3 = new j(new SendPayload.ReadyToSend(message2, d0.t.n.emptyList())); m.checkNotNullExpressionValue(jVar3, "Observable.just(SendPayl…ramMessage, emptyList()))"); return jVar3; } @MainThread public final void handleSendError(Error error, Context context, Function0 function0, Function0 function02) { m.checkNotNullParameter(error, "error"); m.checkNotNullParameter(context, "context"); error.setShowErrorToasts(false); Error.Response response = error.getResponse(); m.checkNotNullExpressionValue(response, "error.response"); Integer abortCodeMessageResId = RestAPIAbortMessages.getAbortCodeMessageResId(response.getCode()); if (abortCodeMessageResId != null) { c.a.d.o.g(context, abortCodeMessageResId.intValue(), 0, null, 12); } else if (error.getType() == Error.Type.REQUEST_TOO_LARGE) { if (function0 != null) { function0.mo1invoke(); } } else if (error.getType() != Error.Type.FORBIDDEN_DISCORD) { Error.Response response2 = error.getResponse(); m.checkNotNullExpressionValue(response2, "error.response"); if (response2.isKnownResponse() || error.getType() == Error.Type.NETWORK) { error.setShowErrorToasts(true); } else { c.a.d.o.g(context, 2131891320, 0, null, 12); } } else if (function02 != null) { function02.mo1invoke(); } error.showToasts(context); } }