diff --git a/README.md b/README.md index 8117cbbb..15a3e9ec 100644 --- a/README.md +++ b/README.md @@ -97,7 +97,7 @@ pnpm dev | `S3_ACCESS_KEY_ID` | S3 access key | For file uploads | `xxx` | | `S3_SECRET_ACCESS_KEY` | S3 secret key | For file uploads | `xxx` | | `NEXT_PUBLIC_STORAGE_URL` | Storage service URL | For file uploads | `https://storage.kanbn.com` | -| `NEXT_PUBLIC_STORAGE_DOMAIN` | Storage domain name | For file uploads | `storage.kanbn.com` | +| `NEXT_PUBLIC_STORAGE_DOMAIN` | Storage domain name | For file uploads | `kanbn.com` | | `NEXT_PUBLIC_AVATAR_BUCKET_NAME` | S3 bucket name for avatars | For file uploads | `avatars` | See `.env.example` for a complete list of supported environment variables. diff --git a/apps/web/next.config.js b/apps/web/next.config.js index 295d9485..25400187 100644 --- a/apps/web/next.config.js +++ b/apps/web/next.config.js @@ -26,7 +26,16 @@ const config = { typescript: { ignoreBuildErrors: true }, images: { - domains: [env("NEXT_PUBLIC_STORAGE_DOMAIN") ?? ""], + remotePatterns: [ + { + protocol: "https", + hostname: `*.${env("NEXT_PUBLIC_STORAGE_DOMAIN")}`, + }, + { + protocol: "https", + hostname: "*.googleusercontent.com", + }, + ], }, experimental: { instrumentationHook: true, diff --git a/apps/web/public/__ENV.js b/apps/web/public/__ENV.js index 8bd6b347..63d887ed 100644 --- a/apps/web/public/__ENV.js +++ b/apps/web/public/__ENV.js @@ -1 +1 @@ -window.__ENV = {"NEXT_PUBLIC_UMAMI_ID":"aaed1f55-25e2-4223-b918-e429c390be35","NEXT_PUBLIC_KAN_ENV":"cloud","NEXT_PUBLIC_BASE_URL":"http://localhost:3000","NEXT_PUBLIC_AVATAR_BUCKET_NAME":"avatars","NEXT_PUBLIC_STORAGE_DOMAIN":"storage.kanbn.com","NEXT_PUBLIC_STORAGE_URL":"https://storage.kanbn.com"}; \ No newline at end of file +window.__ENV = {"NEXT_PUBLIC_UMAMI_ID":"aaed1f55-25e2-4223-b918-e429c390be35","NEXT_PUBLIC_KAN_ENV":"cloud","NEXT_PUBLIC_BASE_URL":"http://localhost:3000","NEXT_PUBLIC_AVATAR_BUCKET_NAME":"avatars","NEXT_PUBLIC_STORAGE_DOMAIN":"kanbn.com","NEXT_PUBLIC_STORAGE_URL":"https://storage.kanbn.com"}; \ No newline at end of file diff --git a/apps/web/src/utils/helpers.ts b/apps/web/src/utils/helpers.ts index 672ac162..9db6af73 100644 --- a/apps/web/src/utils/helpers.ts +++ b/apps/web/src/utils/helpers.ts @@ -45,6 +45,10 @@ export const formatMemberDisplayName = ( return localPart.replace(/[_-]/g, "."); }; -export const getAvatarUrl = (key: string) => { - return `${env("NEXT_PUBLIC_STORAGE_URL")}/${env("NEXT_PUBLIC_AVATAR_BUCKET_NAME")}/${key}`; +export const getAvatarUrl = (imageOrKey: string) => { + if (imageOrKey.startsWith("http://") || imageOrKey.startsWith("https://")) { + return imageOrKey; + } + + return `${env("NEXT_PUBLIC_STORAGE_URL")}/${env("NEXT_PUBLIC_AVATAR_BUCKET_NAME")}/${imageOrKey}`; };