import { useState, useContext, useEffect } from "react"; import { useNavigate } from "react-router-dom"; import { db } from "../../firebase"; import { collection, onSnapshot, query, where } from "firebase/firestore"; import Button from "../../pageElements/Button"; import { AppContext } from "../../Hooks/useContext/appContext"; import { AuthContext } from "../../Context/AuthProvider"; import ProgressBar from "../../pageElements/ProgressBar"; import ConfirmModal from "../Modals/ConfirmModal"; const AccountPage = () => { const navigate = useNavigate(); const { currentUserCreatedAt } = useContext(AuthContext); const { appState } = useContext(AppContext); const { group } = appState; console.log("group", group); const [docsGenerated, setDocsGenerated] = useState(null); const [docsAllowed, setDocsAllowed] = useState(group?.docsAllowed); const appUserId = group ? group.appUserId : null; const [showModal, setShowModal] = useState(false); const apiUrl = process.env.NODE_ENV === "development" ? process.env.REACT_APP_API_DEV : process.env.REACT_APP_API_PROD; const handleConfirmUpgrade = () => { const isUpgrade = true; const currentPlan = group?.subscriptionPlan; navigate(`/signup/${isUpgrade}/${currentPlan}`); }; function getDocumentsCount() { if (!appUserId) { return; } return onSnapshot( query(collection(db, "documents"), where("ownerId", "==", appUserId)), (snapshot) => setDocsGenerated(snapshot.docs.length) ); } useEffect(getDocumentsCount, [appUserId]); const telNumberFormat = (num) => { return `(${num.slice(0, 3)}) ${num.slice(4, 7)}-${num.slice(6, 10)}`; }; if (!group) { return null; } const handleCancelSub = async () => { setShowModal(true); try { let response = await fetch(`${apiUrl}/cancel-subscription`, { method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify({ appUserId: appUserId, }), }); } catch (err) { console.log(err); } setShowModal(false); }; const handleSupport = () => { const supReq = "5ac45d12"; navigate(`/requestpage/${supReq}`); }; return (