import React, { useEffect, useState } from 'react'; import { useAuth } from '../auth/AuthContext'; import { isRescidePopupHidden, RESCIDE_DEFAULT_DOWNLOADS, RESCIDE_FEATURES, setRescidePopupHidden, } from '../rescide'; import { navigate } from '../navigation'; type Props = { /** Khi true, không hiện popup (ví dụ đang ở workspace lớp/thi). */ disabled?: boolean; }; export const RescideAnnouncePopup: React.FC = ({ disabled }) => { const { staff } = useAuth(); const [open, setOpen] = useState(false); useEffect(() => { if (disabled || !staff?.email) { setOpen(false); return; } setOpen(!isRescidePopupHidden(staff.email)); }, [staff?.email, disabled]); if (!open || !staff?.email) return null; const dismissOnce = () => setOpen(false); const dismissForever = () => { setRescidePopupHidden(staff.email, true); setOpen(false); }; const goTab = () => { setOpen(false); navigate('rescide'); }; return (
e.stopPropagation()} >

Thông báo: RESCIDE IDE

RESCIDE — IDE thi thực hành đang mở test thử để đánh giá và cải thiện chức năng. Mục đích: môi trường IDE chuyên cho kỳ thi thực hành, chống gian lận cùng RAIA DESKTOP.

    {RESCIDE_FEATURES.map((f) => (
  • {f}
  • ))}
{RESCIDE_DEFAULT_DOWNLOADS.map((d) => ( {d.name} Tải ))}
); };