import { CloudWatchLogsClient } from "@aws-sdk/client-cloudwatch-logs"; import { SecretsManagerClient } from "@aws-sdk/client-secrets-manager"; import { S3Client } from "@aws-sdk/client-s3"; export const PORT = Number(process.env.PORT || 3334); export const SES_ENDPOINT = process.env.SES_VIEWER_ENDPOINT || "http://localhost:4566/_aws/ses"; export const FETCH_TIMEOUT_MS = Number(process.env.SES_VIEWER_FETCH_TIMEOUT_MS || 5000); export const DEFAULT_REFRESH_MS = Number(process.env.SES_VIEWER_REFRESH_MS || 10000); export const CLOUDWATCH_ENDPOINT = process.env.CLOUDWATCH_VIEWER_ENDPOINT || "http://localhost:4566"; export const CLOUDWATCH_REGION = process.env.CLOUDWATCH_VIEWER_REGION || process.env.AWS_DEFAULT_REGION || "ca-central-1"; export const CLOUDWATCH_DEFAULT_GROUP = process.env.CLOUDWATCH_VIEWER_LOG_GROUP || "development"; export const CLOUDWATCH_DEFAULT_WINDOW_MS = Number(process.env.CLOUDWATCH_VIEWER_WINDOW_MS || 15 * 60 * 1000); export const CLOUDWATCH_DEFAULT_LIMIT = Number(process.env.CLOUDWATCH_VIEWER_LIMIT || 200); export const SECRETS_ENDPOINT = process.env.SECRETS_VIEWER_ENDPOINT || CLOUDWATCH_ENDPOINT; export const SECRETS_REGION = process.env.SECRETS_VIEWER_REGION || CLOUDWATCH_REGION; export const S3_ENDPOINT = process.env.S3_VIEWER_ENDPOINT || CLOUDWATCH_ENDPOINT; export const S3_REGION = process.env.S3_VIEWER_REGION || CLOUDWATCH_REGION; export const S3_DEFAULT_BUCKET = process.env.S3_VIEWER_BUCKET || ""; export const S3_PREVIEW_MAX_BYTES = Number(process.env.S3_VIEWER_PREVIEW_BYTES || 256 * 1024); export const S3_IMAGE_PREVIEW_MAX_BYTES = Number(process.env.S3_VIEWER_IMAGE_PREVIEW_BYTES || 1024 * 1024); export const LOCALSTACK_CREDENTIALS = { accessKeyId: process.env.AWS_ACCESS_KEY_ID || "test", secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY || "test" }; export const cloudWatchLogsClient = new CloudWatchLogsClient({ region: CLOUDWATCH_REGION, endpoint: CLOUDWATCH_ENDPOINT, credentials: LOCALSTACK_CREDENTIALS }); export const secretsManagerClient = new SecretsManagerClient({ region: SECRETS_REGION, endpoint: SECRETS_ENDPOINT, credentials: LOCALSTACK_CREDENTIALS }); export const s3Client = new S3Client({ region: S3_REGION, endpoint: S3_ENDPOINT, credentials: LOCALSTACK_CREDENTIALS, forcePathStyle: true });