Fix organization setup flow: redirect to onboarding for incomplete setup
This commit is contained in:
41
services/firebase.ts
Normal file
41
services/firebase.ts
Normal file
@@ -0,0 +1,41 @@
|
||||
import { initializeApp, getApps } from 'firebase/app';
|
||||
import { getAuth, GoogleAuthProvider } from 'firebase/auth';
|
||||
import { getFirestore } from 'firebase/firestore';
|
||||
|
||||
const firebaseConfig = {
|
||||
apiKey: import.meta.env.VITE_FIREBASE_API_KEY,
|
||||
authDomain: import.meta.env.VITE_FIREBASE_AUTH_DOMAIN,
|
||||
projectId: import.meta.env.VITE_FIREBASE_PROJECT_ID,
|
||||
storageBucket: import.meta.env.VITE_FIREBASE_STORAGE_BUCKET,
|
||||
messagingSenderId: import.meta.env.VITE_FIREBASE_MESSAGING_SENDER_ID,
|
||||
appId: import.meta.env.VITE_FIREBASE_APP_ID,
|
||||
};
|
||||
|
||||
export const isFirebaseConfigured = Boolean(
|
||||
firebaseConfig.apiKey &&
|
||||
firebaseConfig.authDomain &&
|
||||
firebaseConfig.projectId &&
|
||||
firebaseConfig.apiKey !== 'undefined' &&
|
||||
firebaseConfig.authDomain !== 'undefined' &&
|
||||
firebaseConfig.projectId !== 'undefined' &&
|
||||
// Force demo mode on localhost for testing
|
||||
!window.location.hostname.includes('localhost')
|
||||
);
|
||||
|
||||
let app;
|
||||
let auth;
|
||||
let db;
|
||||
let googleProvider;
|
||||
|
||||
if (isFirebaseConfigured) {
|
||||
app = getApps().length === 0 ? initializeApp(firebaseConfig) : getApps()[0];
|
||||
auth = getAuth(app);
|
||||
db = getFirestore(app);
|
||||
googleProvider = new GoogleAuthProvider();
|
||||
} else {
|
||||
auth = null;
|
||||
db = null;
|
||||
googleProvider = null;
|
||||
}
|
||||
|
||||
export { auth, db, googleProvider };
|
||||
Reference in New Issue
Block a user