import { Box, Container, Flex, Separator, Text } from "@radix-ui/themes"; import { useQuery } from "@tanstack/react-query"; import { Interweave } from "interweave"; import { useAtomValue } from "jotai"; import { useParams } from "react-router-dom"; import { axiosLocalhost } from "../../api/axios/axios"; import { userAtom } from "../../AtomStore/AtomStore"; import AddPostToBlogDialog from "../Dialogs/AddPostToBlogDialog/AddPostToBlogDialog"; import ChangePostButton from "./ChangePostButton/ChangePostButton"; import SkeletonPostLoader from "./SkeletonLoader/SkeletonLoader"; import VoteButton, { DOWNVOTE, UPVOTE } from "./VoteButton/VoteButton"; import VoteCounter from "./VoteCounter/VoteCounter"; type TArticleViewer = { htmlToParse?: string; }; export default function ArticleViewer(props: TArticleViewer) { let queryParams = useParams(); const user = useAtomValue(userAtom); const { data, isPending } = useQuery({ queryKey: [`post_${queryParams["postId"]}`], queryFn: async () => { const response = await axiosLocalhost.get( `posts/${queryParams["postId"]}` ); return response.data; }, gcTime: 0, refetchOnMount: true, }); if (isPending) return ; return ( <>
{data.title}
); }