some abaddon compat
This commit is contained in:
parent
45e7d763cf
commit
496cfc8ea1
@ -144,44 +144,46 @@ router.get(
|
||||
|
||||
const endpoint = Config.get().cdn.endpointPublic;
|
||||
|
||||
return res.json(
|
||||
messages.map((x: Partial<Message>) => {
|
||||
(x.reactions || []).forEach((y: Partial<Reaction>) => {
|
||||
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
||||
//@ts-ignore
|
||||
if ((y.user_ids || []).includes(req.user_id)) y.me = true;
|
||||
delete y.user_ids;
|
||||
});
|
||||
if (!x.author)
|
||||
x.author = User.create({
|
||||
id: "4",
|
||||
discriminator: "0000",
|
||||
username: "Spacebar Ghost",
|
||||
public_flags: 0,
|
||||
});
|
||||
x.attachments?.forEach((y: Attachment) => {
|
||||
// dynamically set attachment proxy_url in case the endpoint changed
|
||||
const uri = y.proxy_url.startsWith("http")
|
||||
? y.proxy_url
|
||||
: `https://example.org${y.proxy_url}`;
|
||||
y.proxy_url = `${endpoint == null ? "" : endpoint}${
|
||||
new URL(uri).pathname
|
||||
}`;
|
||||
});
|
||||
const ret = messages.map((x: Message) => {
|
||||
x = x.toJSON();
|
||||
|
||||
/**
|
||||
(x.reactions || []).forEach((y: Partial<Reaction>) => {
|
||||
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
||||
//@ts-ignore
|
||||
if ((y.user_ids || []).includes(req.user_id)) y.me = true;
|
||||
delete y.user_ids;
|
||||
});
|
||||
if (!x.author)
|
||||
x.author = User.create({
|
||||
id: "4",
|
||||
discriminator: "0000",
|
||||
username: "Spacebar Ghost",
|
||||
public_flags: 0,
|
||||
});
|
||||
x.attachments?.forEach((y: Attachment) => {
|
||||
// dynamically set attachment proxy_url in case the endpoint changed
|
||||
const uri = y.proxy_url.startsWith("http")
|
||||
? y.proxy_url
|
||||
: `https://example.org${y.proxy_url}`;
|
||||
y.proxy_url = `${endpoint == null ? "" : endpoint}${
|
||||
new URL(uri).pathname
|
||||
}`;
|
||||
});
|
||||
|
||||
/**
|
||||
Some clients ( discord.js ) only check if a property exists within the response,
|
||||
which causes errors when, say, the `application` property is `null`.
|
||||
**/
|
||||
|
||||
// for (var curr in x) {
|
||||
// if (x[curr] === null)
|
||||
// delete x[curr];
|
||||
// }
|
||||
// for (var curr in x) {
|
||||
// if (x[curr] === null)
|
||||
// delete x[curr];
|
||||
// }
|
||||
|
||||
return x;
|
||||
}),
|
||||
);
|
||||
return x;
|
||||
});
|
||||
|
||||
return res.json(ret);
|
||||
},
|
||||
);
|
||||
|
||||
@ -307,9 +309,11 @@ router.post(
|
||||
embeds,
|
||||
channel_id,
|
||||
attachments,
|
||||
edited_timestamp: undefined,
|
||||
timestamp: new Date(),
|
||||
});
|
||||
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
||||
//@ts-ignore dont care2
|
||||
message.edited_timestamp = null;
|
||||
|
||||
channel.last_message_id = message.id;
|
||||
|
||||
|
@ -193,7 +193,7 @@ export class Message extends BaseClass {
|
||||
};
|
||||
|
||||
@Column({ nullable: true })
|
||||
flags?: string;
|
||||
flags?: number;
|
||||
|
||||
@Column({ type: "simple-json", nullable: true })
|
||||
message_reference?: {
|
||||
@ -217,6 +217,30 @@ export class Message extends BaseClass {
|
||||
|
||||
@Column({ type: "simple-json", nullable: true })
|
||||
components?: MessageComponent[];
|
||||
|
||||
toJSON(): Message {
|
||||
return {
|
||||
...this,
|
||||
author_id: undefined,
|
||||
member_id: undefined,
|
||||
guild_id: undefined,
|
||||
webhook_id: undefined,
|
||||
application_id: undefined,
|
||||
nonce: undefined,
|
||||
|
||||
tts: this.tts ?? false,
|
||||
guild: this.guild ?? undefined,
|
||||
webhook: this.webhook ?? undefined,
|
||||
interaction: this.interaction ?? undefined,
|
||||
reactions: this.reactions ?? undefined,
|
||||
sticker_items: this.sticker_items ?? undefined,
|
||||
message_reference: this.message_reference ?? undefined,
|
||||
author: this.author?.toPublicUser() ?? undefined,
|
||||
activity: this.activity ?? undefined,
|
||||
application: this.application ?? undefined,
|
||||
components: this.components ?? undefined,
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
export interface MessageComponent {
|
||||
|
@ -29,7 +29,7 @@ export interface MessageCreateSchema {
|
||||
nonce?: string;
|
||||
channel_id?: string;
|
||||
tts?: boolean;
|
||||
flags?: string;
|
||||
flags?: number;
|
||||
embeds?: Embed[];
|
||||
embed?: Embed;
|
||||
// TODO: ^ embed is deprecated in favor of embeds (https://discord.com/developers/docs/resources/channel#message-object)
|
||||
|
Loading…
x
Reference in New Issue
Block a user