From 8ed719c4853555cb26bb2f8411079cd076691468 Mon Sep 17 00:00:00 2001 From: Henry Date: Wed, 4 Feb 2026 22:20:23 +0000 Subject: [PATCH] fix: support external avatar URLs in generateAvatarUrl --- packages/shared/src/utils/s3.ts | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/packages/shared/src/utils/s3.ts b/packages/shared/src/utils/s3.ts index 6ae61f19..a90fb885 100644 --- a/packages/shared/src/utils/s3.ts +++ b/packages/shared/src/utils/s3.ts @@ -71,6 +71,8 @@ export async function deleteObject(bucket: string, key: string) { /** * Generate presigned URL for an avatar image + * Returns the URL as-is if it's already a full URL (external provider) + * Returns presigned URL if it's an S3 key * Returns null if image key is missing, bucket is not configured, or URL generation fails */ export async function generateAvatarUrl( @@ -81,6 +83,10 @@ export async function generateAvatarUrl( return null; } + if (imageKey.startsWith("http://") || imageKey.startsWith("https://")) { + return imageKey; + } + const bucket = env("NEXT_PUBLIC_AVATAR_BUCKET_NAME"); if (!bucket) { return null;