"use client"; import { acceptCookies, dismissCookies, getCookieChoice, rejectCookies } from "@/_utils/analytics/client"; import { Dismiss24Regular } from "@fluentui/react-icons"; import React, { useCallback, useEffect, useState } from "react"; import Button from "./Button"; import cls from "./CookieBanner.module.scss"; const CookieBanner: React.FC<{ askForConsent: boolean; }> = props => { const [visible, setVisible] = useState(false); useEffect(() => { if (navigator.doNotTrack === "1") return; const choice = getCookieChoice(); setVisible(choice === "none"); // Since Clarity cookies expiration dates extend well beyond 60 days, // we need to terminate them manually once our consent tracking cookie expired. if (choice !== "accepted") window.clarity?.("consent", false); }, []); const accept = useCallback(() => { acceptCookies(); setVisible(false); }, []); const reject = useCallback(() => { rejectCookies(); setVisible(false); }, []); const dismiss = useCallback(() => { dismissCookies(); setVisible(false); }, []); if (!visible) return null; return (