import "server-only"; import { Account, Client, Storage, TablesDB } from "appwrite"; const endpoint = process.env.NEXT_PUBLIC_APPWRITE_ENDPOINT!; const projectId = process.env.NEXT_PUBLIC_APPWRITE_PROJECT_ID!; export const DATABASE_ID = process.env.NEXT_PUBLIC_APPWRITE_DATABASE_ID!; export const MEDIA_BUCKET_ID = process.env.NEXT_PUBLIC_APPWRITE_MEDIA_BUCKET_ID ?? "kovak-yazilim-media"; export const TABLES = { contactMessages: "contact_messages", services: "services", projects: "projects", blogPosts: "blog_posts", testimonials: "testimonials", seoPages: "seo_pages", seoSettings: "seo_settings", } as const; function newClient() { return new Client().setEndpoint(endpoint).setProject(projectId); } export function publicClient() { return newClient(); } export function sessionClient(sessionSecret: string) { return newClient().setSession(sessionSecret); } export const publicDB = new TablesDB(publicClient()); export const publicStorage = new Storage(publicClient()); export const publicAccount = new Account(publicClient()); export function userDB(secret: string) { return new TablesDB(sessionClient(secret)); } export function userStorage(secret: string) { return new Storage(sessionClient(secret)); } export function userAccount(secret: string) { return new Account(sessionClient(secret)); }