35 lines
1.3 KiB
TypeScript
35 lines
1.3 KiB
TypeScript
// import { initializeApp } from 'firebase/app'
|
|
import firebase from 'firebase/compat/app'
|
|
import type { User } from '@firebase/auth-types'
|
|
|
|
// import { getAnalytics } from "firebase/analytics";
|
|
// TODO: Add SDKs for Firebase products that you want to use
|
|
// https://firebase.google.com/docs/web/setup#available-libraries
|
|
|
|
// Your web app's Firebase configuration
|
|
// For Firebase JS SDK v7.20.0 and later, measurementId is optional
|
|
const firebaseConfig = {
|
|
apiKey: import.meta.env.VITE_FIREBASE_API_KEY,
|
|
authDomain: import.meta.env.VITE_FIREBASE_AUTH_DOMAIN,
|
|
databaseURL: import.meta.env.VITE_FIREBASE_DATABASE_URL,
|
|
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,
|
|
measurementId: import.meta.env.VITE_FIREBASE_MEASUREMENT_ID
|
|
}
|
|
|
|
export const user = ref<User | null>()
|
|
|
|
// Initialize Firebase
|
|
export const initializeFirebase = () => {
|
|
firebase.initializeApp(firebaseConfig)
|
|
firebase.auth().onAuthStateChanged((firebaseUser) => {
|
|
user.value = firebaseUser
|
|
})
|
|
}
|
|
|
|
export const initialized = computed(() => user.value !== undefined)
|
|
|
|
export const signOut = () => firebase.auth().signOut()
|