mirror of
https://github.com/rowyio/rowy.git
synced 2025-12-29 00:16:39 +01:00
fix user doc not being created
This commit is contained in:
@@ -83,7 +83,7 @@ export const AppProvider: React.FC = ({ children }) => {
|
||||
);
|
||||
|
||||
// Store matching userDoc
|
||||
const [userDoc, dispatchUserDoc] = useDoc({});
|
||||
const [userDoc, dispatchUserDoc] = useDoc({}, { createIfMissing: true });
|
||||
// Get userDoc
|
||||
useEffect(() => {
|
||||
if (currentUser) {
|
||||
@@ -95,12 +95,18 @@ export const AppProvider: React.FC = ({ children }) => {
|
||||
|
||||
// Set userDoc if it doesn’t exist
|
||||
useEffect(() => {
|
||||
if (!userDoc.doc && !userDoc.loading && userDoc.path && currentUser) {
|
||||
if (
|
||||
(!userDoc.doc || !userDoc.doc.user) &&
|
||||
!userDoc.loading &&
|
||||
userDoc.path &&
|
||||
currentUser
|
||||
) {
|
||||
const userFields = ["email", "displayName", "photoURL", "phoneNumber"];
|
||||
const user = userFields.reduce((acc, curr) => {
|
||||
if (currentUser[curr]) return { ...acc, [curr]: currentUser[curr] };
|
||||
return acc;
|
||||
}, {});
|
||||
console.log("create user", userDoc.path, user);
|
||||
db.doc(userDoc.path).set({ user }, { merge: true });
|
||||
}
|
||||
}, [userDoc, currentUser]);
|
||||
|
||||
Reference in New Issue
Block a user