diff --git a/server/env.ts b/server/env.ts index 6190bece2..9bb1a114a 100644 --- a/server/env.ts +++ b/server/env.ts @@ -568,6 +568,22 @@ export class Environment { public AWS_S3_UPLOAD_MAX_SIZE = this.toOptionalNumber(process.env.AWS_S3_UPLOAD_MAX_SIZE) ?? 100000000; + /** + * Optional AWS S3 endpoint URL for file attachments. + */ + @IsOptional() + public AWS_S3_ACCELERATE_URL = this.toOptionalString( + process.env.AWS_S3_ACCELERATE_URL + ); + + /** + * Optional AWS S3 endpoint URL for file attachments. + */ + @IsOptional() + public AWS_S3_UPLOAD_BUCKET_URL = this.toOptionalString( + process.env.AWS_S3_UPLOAD_BUCKET_URL + ); + /** * Set default AWS S3 ACL for file attachments. */ diff --git a/server/presenters/env.ts b/server/presenters/env.ts index 69746ea49..a34414e17 100644 --- a/server/presenters/env.ts +++ b/server/presenters/env.ts @@ -10,8 +10,8 @@ export default function present( ): PublicEnv { return { URL: env.URL.replace(/\/$/, ""), - AWS_S3_UPLOAD_BUCKET_URL: process.env.AWS_S3_UPLOAD_BUCKET_URL || "", - AWS_S3_ACCELERATE_URL: process.env.AWS_S3_ACCELERATE_URL || "", + AWS_S3_UPLOAD_BUCKET_URL: env.AWS_S3_UPLOAD_BUCKET_URL || "", + AWS_S3_ACCELERATE_URL: env.AWS_S3_ACCELERATE_URL || "", CDN_URL: (env.CDN_URL || "").replace(/\/$/, ""), COLLABORATION_URL: (env.COLLABORATION_URL || env.URL) .replace(/\/$/, "") diff --git a/server/utils/prefetchTags.tsx b/server/utils/prefetchTags.tsx index cd21aadb5..83410c4b0 100644 --- a/server/utils/prefetchTags.tsx +++ b/server/utils/prefetchTags.tsx @@ -7,14 +7,27 @@ const isProduction = env.ENVIRONMENT === "production"; const prefetchTags = []; -if (process.env.AWS_S3_UPLOAD_BUCKET_URL) { +if (env.AWS_S3_ACCELERATE_URL) { prefetchTags.push( ); +} else if (env.AWS_S3_UPLOAD_BUCKET_URL) { + prefetchTags.push( + + ); +} +if (env.CDN_URL) { + prefetchTags.push( + + ); } if (isProduction) {