- switching from firestore to realtime DB

- implement debouncing tactic to sync data
- display sync indicator
This commit is contained in:
Amruth Pillai
2020-07-06 00:25:31 +05:30
parent 49a867dd37
commit 65fc779d58
15 changed files with 180 additions and 142 deletions

View File

@ -1,10 +1,29 @@
import React from "react";
import React, { useContext, useEffect, useState } from "react";
import Artboard from "../../components/builder/center/Artboard";
import LeftSidebar from "../../components/builder/left/LeftSidebar";
import RightSidebar from "../../components/builder/right/RightSidebar";
import LoadingScreen from "../../components/router/LoadingScreen";
import Wrapper from "../../components/shared/Wrapper";
import DatabaseContext from "../../contexts/DatabaseContext";
import ResumeContext from "../../contexts/ResumeContext";
const Builder = ({ user, id }) => {
const [loading, setLoading] = useState(true);
const { getResume } = useContext(DatabaseContext);
const { dispatch } = useContext(ResumeContext);
useEffect(() => {
(async () => {
const resume = await getResume(id);
dispatch({ type: "set_data", payload: resume });
setLoading(false);
})();
}, [id, getResume, dispatch]);
if (loading) {
return <LoadingScreen type="Resume" />;
}
const Builder = ({ id }) => {
return (
<Wrapper>
<div className="h-screen grid grid-cols-11">