import { CheckBadgeIcon, XCircleIcon } from "@heroicons/react/24/solid"; import { BANNER_IDS } from "@hey/data/constants"; import { useAddPostNotInterestedMutation } from "@hey/indexer"; import type { ApolloClientError } from "@hey/types/errors"; import { useCallback } from "react"; import { toast } from "sonner"; import { Button, Card, H5 } from "@/components/Shared/UI"; import errorToast from "@/helpers/errorToast"; import { useProModalStore } from "@/store/non-persisted/modal/useProModalStore"; import { useAccountStore } from "@/store/persisted/useAccountStore"; import { useProStore } from "@/store/persisted/useProStore"; const ProBanner = () => { const { currentAccount } = useAccountStore(); const { proBannerDismissed, setProBannerDismissed } = useProStore(); const { setShow: setShowProModal } = useProModalStore(); const onError = useCallback((error: ApolloClientError) => { errorToast(error); }, []); const [dismissProBanner, { loading }] = useAddPostNotInterestedMutation({ onCompleted: () => { toast.success("Dismissed"); setProBannerDismissed(true); }, onError, variables: { request: { post: BANNER_IDS.BETA } } }); if (currentAccount?.hasSubscribed || proBannerDismissed) { return null; } const handleDismissProBanner = async () => { return await dismissProBanner(); }; return (
Join Hey Pro
Get your badge and access exclusive features.
); }; export default ProBanner;