// lib/firebase.ts import { initializeApp } from "firebase/app"; import { getAuth } from "firebase/auth"; import { initializeFirestore, persistentLocalCache, persistentMultipleTabManager } from "firebase/firestore"; // Firebase config object const firebaseConfig = { apiKey: process.env.NEXT_PUBLIC_FIREBASE_API_KEY, authDomain: process.env.NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN, projectId: process.env.NEXT_PUBLIC_FIREBASE_PROJECT_ID, storageBucket: process.env.NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET, messagingSenderId: process.env.NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID, appId: process.env.NEXT_PUBLIC_FIREBASE_APP_ID, }; // Initialize Firebase app const app = initializeApp(firebaseConfig); // Initialize Firebase Auth export const auth = getAuth(app); // Initialize Firestore with offline persistence export const db = initializeFirestore(app, { localCache: persistentLocalCache({ tabManager: persistentMultipleTabManager(), }), });