/** * ========================================================================= * PLATEFORME ECO-PANNEAU.FR - VERSION 1.0.0 * Composant Socle : Modale d'aperçu interactif (Mobile et A1) * ========================================================================= */ const { useState } = React; window.pano_PreviewModal = ({ panneau, interactions = [], onClose, showToast, refreshData, isAdmin = false, onValidate, onContactClient, onSuspend, onDelete, onReactivate }) => { const [previewMode, setPreviewMode] = useState('mobile'); const [showAdminMenu, setShowAdminMenu] = useState(false); const { XIcon, CheckCircleIcon, MessageSquareIcon, PowerIcon, Trash2Icon } = window.pano_getIcons(); const Button = window.pano_Button || (() => null); const ModalOverlay = window.pano_ModalOverlay || (({ children }) =>
{children}
); return (
e.stopPropagation()} >
setPreviewMode('mobile')} className={`px-4 py-2 sm:py-2.5 rounded-xl text-xs sm:text-sm font-bold transition-all duration-200 cursor-pointer ${previewMode === 'mobile' ? 'bg-white text-slate-900 shadow-sm' : 'text-slate-400 hover:text-white hover:bg-white/10'}`} > Mode Smartphone
setPreviewMode('a1')} className={`px-4 py-2 sm:py-2.5 rounded-xl text-xs sm:text-sm font-bold transition-all duration-200 cursor-pointer ${previewMode === 'a1' ? 'bg-white text-slate-900 shadow-sm' : 'text-slate-400 hover:text-white hover:bg-white/10'}`} > Panneau Physique (A1)
{ if (e.target === e.currentTarget) { onClose(); } }} > {previewMode === 'mobile' ? (
e.stopPropagation()}>
{ e.stopPropagation(); if (isAdmin) setShowAdminMenu(true); }} >
{isAdmin && previewMode === 'mobile' && (
Admin
)}
{showAdminMenu && (
{ e.stopPropagation(); setShowAdminMenu(false); }}>
e.stopPropagation()}>
Actions modérateur
{!panneau.admin_seen && panneau.status === 'Actif' && ( )} {panneau.status === 'Actif' && ( )} {panneau.status === 'Suspendu' && ( )}
)} {window.pano_RiverainView ? ( ) : (
Le module d'aperçu n'a pas pu être chargé.
)}
) : (
e.stopPropagation()}> {window.pano_PrintA1View ? ( ) : (
Le module de rendu A1 n'a pas pu être chargé.
)}
)}
); }; /* EOF ========== [_react/_socle_modals_preview.jsx] */