From 47d15e8f7e0de5ed0b09b5881dd8b21f3494b5d1 Mon Sep 17 00:00:00 2001 From: Matt Isenhower Date: Sat, 30 Nov 2024 09:59:08 -0500 Subject: [PATCH] Fix Bluesky image ratios --- app/social/clients/BlueskyClient.mjs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/app/social/clients/BlueskyClient.mjs b/app/social/clients/BlueskyClient.mjs index a9fc6cd..a0e88f4 100644 --- a/app/social/clients/BlueskyClient.mjs +++ b/app/social/clients/BlueskyClient.mjs @@ -37,13 +37,16 @@ export default class BlueskyClient extends Client let images = await Promise.all( status.media.map(async m => { // We have to convert the PNG to a JPG for Bluesky because of size limits - let jpeg = await sharp(m.file).jpeg().toBuffer(); + let jpeg = sharp(m.file).jpeg(); + let metadata = await jpeg.metadata(); + let buffer = await jpeg.toBuffer(); - let response = await this.#agent.uploadBlob(jpeg, { encoding: 'image/jpeg' }); + let response = await this.#agent.uploadBlob(buffer, { encoding: 'image/jpeg' }); return { image: response.data.blob, alt: m.altText || '', + aspectRatio: { width: metadata.width, height: metadata.height }, }; }), );