import React from "react"; import { Row, Col } from "react-bootstrap"; import { TimelineInfo } from "@/services/timeline"; import { getHttpTimelineClient } from "@/http/timeline"; import TimelineBoard from "./TimelineBoard"; import OfflineBoard from "./OfflineBoard"; const BoardWithoutUser: React.FC = () => { const [publicTimelines, setPublicTimelines] = React.useState< TimelineInfo[] | "offline" | "loading" >("loading"); React.useEffect(() => { let subscribe = true; if (publicTimelines === "loading") { void getHttpTimelineClient() .listTimeline({ visibility: "Public" }) .then( (timelines) => { if (subscribe) { setPublicTimelines(timelines); } }, () => { setPublicTimelines("offline"); } ); } return () => { subscribe = false; }; }, [publicTimelines]); return ( {publicTimelines === "offline" ? ( { setPublicTimelines("loading"); }} /> ) : ( { setPublicTimelines("loading"); }} /> )} ); }; export default BoardWithoutUser;