/** * ========================================================================= * PLATEFORME ECO-PANNEAU.FR - VERSION 1.0.0 * Paramètres du compte client - Sous-onglet : Carnet d'adresses (Équipe) * ========================================================================= */ const FallbackNull = () => null; const FallbackButton = ({ children, onClick, className, disabled, title, type = "button" }) => ( ); const FallbackCardGrid = ({children, className}) => (
{children}
); const FallbackDataCard = ({children, className, variant}) => (
{children}
); window.pano_ClientSettingsTeam = ({ data, showToast, refreshData, openLocalDialog, closeCurrentLayer, activeDialog }) => { const { useState } = React; const [isSaving, setIsSaving] = useState(false); const [confirmConfig, setConfirmConfig] = useState(null); const { UsersIcon, Trash2Icon } = window.pano_getIcons(); const Button = window.pano_Button || FallbackButton; const ConfirmModal = window.pano_ConfirmModal || FallbackNull; const CardGrid = window.pano_CardGrid || FallbackCardGrid; const DataCard = window.pano_DataCard || FallbackDataCard; const teamHistory = data.team || []; const handleRemoveGlobalCollaborator = (targetEmail) => { setConfirmConfig({ title: "Supprimer le contact", message: "Voulez-vous supprimer définitivement ce contact de votre carnet d'adresses et de votre historique ?", confirmText: "Supprimer", cancelText: "Annuler", isDestructive: true, onConfirm: async () => { closeCurrentLayer(); const d = await window.pano_apiFetch('clients/team/remove', { body: { email: targetEmail }, setLoading: setIsSaving, successMessage: "Contact supprimé de l'historique." }); if (d && refreshData) refreshData(); } }); openLocalDialog('confirm_team'); }; return (
Cet onglet liste l'intégralité des collaborateurs passés ou présents sur tous vos panneaux. La gestion des accès actifs s'effectue individuellement pour chaque panneau depuis l'onglet "Mes panneaux" (bouton "Collaborateurs").

{UsersIcon && } Carnet d'adresses global

{teamHistory.length} contact(s)
{teamHistory.length === 0 ? (
{UsersIcon && }

Aucun collaborateur dans votre historique.

Invitez des collaborateurs depuis la gestion de vos panneaux.

) : ( {teamHistory.sort((a,b) => a.company.localeCompare(b.company)).map((member, i) => (
Société / Contact

{member.company}

{member.name}

Panneaux {member.active_panels > 0 ? ( {member.active_panels} Actif(s) ) : ( Aucun )}
E-mail {member.email}
))}
)}
{activeDialog === 'confirm_team' && confirmConfig && ConfirmModal && ( { setConfirmConfig(null); closeCurrentLayer(); }} zIndex="z-[350]" /> )}
); }; /* EOF ========== [_react/_clients_settings_team.jsx] */