Files
bodyshop/client/src/firebase/firebase.utils.js

54 lines
1.5 KiB
JavaScript

import firebase from "firebase/app";
import "firebase/firestore";
import "firebase/auth";
import "firebase/database"
const config = {
apiKey: "AIzaSyDV9MsSHZmpLtjoaTK_ObvjFaJ-nMSd2KA",
authDomain: "bodyshop-dev-b1cb6.firebaseapp.com",
databaseURL: "https://bodyshop-dev-b1cb6.firebaseio.com",
projectId: "bodyshop-dev-b1cb6",
storageBucket: "bodyshop-dev-b1cb6.appspot.com",
messagingSenderId: "922785209028",
appId: "1:922785209028:web:96e9df15401eee5d784791",
measurementId: "G-2D5378VCHE"
};
firebase.initializeApp(config);
export const createUserProfileDocument = async (userAuth, additionalData) => {
//Needs to be redone to write to GQL database.
console.log("userAuth from firebase Utils", userAuth);
if (!userAuth) return;
const userRef = firestore.doc(`users/${userAuth.uid}`);
const snapShot = await userRef.get();
if (!snapShot.exists) {
const { displayName, email } = userAuth;
const createdAt = new Date();
try {
await userRef.set({
displayName,
email,
createdAt,
...additionalData
});
} catch (error) {
console.log("error creating user", error.message);
}
}
return userRef;
};
export const auth = firebase.auth();
export const firestore = firebase.firestore();
const provider = new firebase.auth.GoogleAuthProvider();
provider.setCustomParameters({ prompt: "select_account" });
export const signInWithGoogle = () => auth.signInWithPopup(provider);
export default firebase;