import { useEffect } from 'react'; import { createPortal } from 'react-dom'; import { X, ExternalLink } from 'lucide-react'; import { useTranslation } from 'react-i18next'; import { open as openExternal } from '@tauri-apps/plugin-shell'; import type { LicenseEntry } from '../utils/licensesData'; interface Props { entry: LicenseEntry | null; onClose: () => void; } export default function LicenseTextModal({ entry, onClose }: Props) { const { t } = useTranslation(); useEffect(() => { if (!entry) return; const onKey = (e: KeyboardEvent) => { if (e.key === 'Escape') onClose(); }; window.addEventListener('keydown', onKey); return () => window.removeEventListener('keydown', onKey); }, [entry, onClose]); if (!entry) return null; const repoLink = entry.repository || entry.homepage; return createPortal(
{entry.description}
)}