Files
discord-decomp/_bundle/Module588.js
T
2026-11-01 12:12:55 +02:00

67 lines
1.6 KiB
JavaScript

// Metro module 588 (f589).
export class APIError {
constructor(a0, a1, r10 = "An unexpected error occurred.") {
let r15, prototype;
L16: {
prototype = new.target.prototype;
if (typeof a0 === "string") {
r15 = {
message: a0,
code: a1
};
} else if (a0.body != null) {
L10: {
if (a0.body.message != null && !Array.isArray(a0.body.message)) {
if (a0.body.code != null && Array.isArray(a0.body.code)) {
break L10;
}
r15 = {
message: a0.body.message,
code: a0.body.code,
retryAfter: a0.body.retry_after,
status: a0.status
};
break L16;
}
}
const body = a0.body;
const r37 = body != null ? Object.values(body)[0] : null;
r15 = {
message: r37 != null ? r37[0] : void 0,
fields: body,
status: a0.status
};
} else {
r15 = {
status: a0.status
};
}
}
const message = r15.message;
let code = r15.code;
const retryAfter = r15.retryAfter;
let fields = r15.fields;
const status = r15.status;
const message2 = message || r10;
const r54 = {
__proto__: prototype
};
r54.message = message2;
r54.retryAfter = retryAfter;
if (!code) {
code = -1;
}
r54.code = code;
if (!fields) {
fields = {};
}
r54.fields = fields;
r54.status = status;
r54.error = new Error(message);
return r54;
}
getFieldMessage(a0) {
return this.fields[a0] != null ? this.fields[a0][0] : null;
}
}