diff --git "a/src/api/routes/webhooks/\043webhook_id/\043token/index.ts" "b/src/api/routes/webhooks/\043webhook_id/\043token/index.ts" index 1dd2dac..9c31bf9 100644 --- "a/src/api/routes/webhooks/\043webhook_id/\043token/index.ts" +++ "b/src/api/routes/webhooks/\043webhook_id/\043token/index.ts" @@ -66,6 +66,7 @@ }, route({ requestBody: "WebhookExecuteSchema", + stripNulls: true, query: { wait: { type: "boolean", diff --git a/src/api/util/handlers/Message.ts b/src/api/util/handlers/Message.ts index be40f75..c6bad9c 100644 --- a/src/api/util/handlers/Message.ts +++ b/src/api/util/handlers/Message.ts @@ -773,6 +773,7 @@ const linkMatches = content?.match(LINK_REGEX) || []; message.clean_data(); const data = { ...message.toJSON() }; + console.log(message); const currentNormalizedUrls = new Set(); for (const link of linkMatches) { diff --git a/src/api/util/handlers/route.ts b/src/api/util/handlers/route.ts index 1750152..0dd4a4b 100644 --- a/src/api/util/handlers/route.ts +++ b/src/api/util/handlers/route.ts @@ -52,7 +52,7 @@ body?: string; }; }; - stripNulls?: stripNulls; + stripNulls?: stripNulls | true; event?: EVENT | EVENT[]; summary?: string; description?: string; @@ -75,7 +75,6 @@ // }; } export function stripNull(obj: object) { - console.log(Object.entries(obj)); for (const [key, value] of Object.entries(obj)) { if (value instanceof Object || (value && !value.__proto__)) { stripNull(value); @@ -137,11 +136,12 @@ if (validate && !ignoredRequestSchemas.includes(opts.requestBody!)) { if (opts.stripNulls) { - followNullPath(req.body, opts.stripNulls); + if (opts.stripNulls === true) stripNull(req.body); + else followNullPath(req.body, opts.stripNulls); } const valid = validate(req.body); if (!valid) { - console.log(JSON.stringify(req.body)); + //console.log(JSON.stringify(req.body)); const fields: Record = {}; validate.errors?.forEach( (x) => diff --git a/src/util/entities/Attachment.ts b/src/util/entities/Attachment.ts index 4dced10..2ab7358 100644 --- a/src/util/entities/Attachment.ts +++ b/src/util/entities/Attachment.ts @@ -67,9 +67,11 @@ url: getUrlSignature(new NewUrlSignatureData({ ...data, url: this.url })) .applyToUrl(this.url) .toString(), - proxy_url: getUrlSignature(new NewUrlSignatureData({ ...data, url: this.proxy_url })) - .applyToUrl(this.proxy_url) - .toString(), + proxy_url: this.proxy_url + ? getUrlSignature(new NewUrlSignatureData({ ...data, url: this.proxy_url })) + .applyToUrl(this.proxy_url) + .toString() + : this.proxy_url, }; } } diff --git a/src/util/entities/Message.ts b/src/util/entities/Message.ts index 448510a..42f79ee 100644 --- a/src/util/entities/Message.ts +++ b/src/util/entities/Message.ts @@ -134,17 +134,14 @@ mention_everyone?: boolean; @JoinTable({ name: "message_user_mentions" }) - @JsonRemoveEmpty @ManyToMany(() => User) mentions: User[]; @JoinTable({ name: "message_role_mentions" }) - @JsonRemoveEmpty @ManyToMany(() => Role) mention_roles: Role[]; @JoinTable({ name: "message_channel_mentions" }) - @JsonRemoveEmpty @ManyToMany(() => Channel) mention_channels: Channel[]; @@ -156,11 +153,9 @@ cascade: true, orphanedRowAction: "delete", }) - @JsonRemoveEmpty attachments?: Attachment[]; @Column({ type: "simple-json" }) - @JsonRemoveEmpty embeds: Embed[]; @Column({ type: "simple-json" })