* chore: migration to SvelteKit 2 * stage 1: migrate to svelte 5 and fix rerendering issues * stage 2: fix more $: reactivity across dashboard * fix merge conflicts * chore: migrate code in main to svelte 5 * chore: update preventDefault * chore: simplify tsconfig and remove unused mobileMenuRef in MobileMenu.svelte * chore: enforce .ts across dashboard * rename from classroomio-com to website * stage-3: Replace carbon icon svelte with lucide icon * update lock file * chore: finish icon replacement * fix: settings and setup page multiple rerender * stage 3: More icon and rerendering fixes * feat: setup drizzle and better auth * fix: onboarding validation error showing translation key #586 (#593) * fix: onboarding validation error showing translation key #586 * fix: remove debug log for profile update errors * chore: add a clean command * fix: remove message from email verification response
30 lines
797 B
TypeScript
30 lines
797 B
TypeScript
import { env } from '@api/config/env';
|
|
|
|
export * from './rate-limiter';
|
|
|
|
const {
|
|
CLOUDFLARE_BUCKET_DOMAIN,
|
|
CLOUDFLARE_ACCESS_KEY,
|
|
CLOUDFLARE_SECRET_ACCESS_KEY,
|
|
CLOUDFLARE_ACCOUNT_ID,
|
|
CLOUDFLARE_RENDERING_API_KEY
|
|
} = env;
|
|
|
|
export const CLOUDFLARE = {
|
|
CONFIGS: {
|
|
BUCKET_DOMAIN: CLOUDFLARE_BUCKET_DOMAIN!,
|
|
ACCESS_KEY: CLOUDFLARE_ACCESS_KEY!,
|
|
RENDERING_API_KEY: CLOUDFLARE_RENDERING_API_KEY!,
|
|
SECRET_ACCESS_KEY: CLOUDFLARE_SECRET_ACCESS_KEY!,
|
|
ACCOUNT_ID: CLOUDFLARE_ACCOUNT_ID!
|
|
},
|
|
R2: {
|
|
BUCKET: 'videos',
|
|
BUCKET_DOMAIN: CLOUDFLARE_ACCOUNT_ID
|
|
? `https://${CLOUDFLARE_ACCOUNT_ID}.r2.cloudflarestorage.com`
|
|
: CLOUDFLARE_BUCKET_DOMAIN!,
|
|
PRESIGN_EXPIRATION_TIME: 60 * 60, // 1 hour
|
|
DOWNLOAD_EXPIRATION_TIME: 60 * 60 // 1 hour
|
|
}
|
|
} as const;
|