Arquivos afetados:
src/App.jsx (linhas 333-340)
src/pages/EventDetails.jsx (linhas 271-277)
src/components/UpcomingEvents.jsx (linhas 82-89)
Problema
A mesma logica condicional para renderizar o icone de modalidade (Online/Hibrido/Presencial) esta copiada em 3 componentes.
Refatoracao Proposta
Criar um componente reutilizavel:
// src/components/ModalityIcon.jsx
import { Monitor, Wifi, Video } from 'lucide-react'
const MODALITY_ICONS = {
Online: Wifi,
Hibrido: Video,
Presencial: Monitor,
}
function ModalityIcon({ modality, size = 16 }) {
const Icon = MODALITY_ICONS[modality] || Monitor
return <Icon size={size} />
}
export default ModalityIcon
Arquivos afetados:
src/App.jsx(linhas 333-340)src/pages/EventDetails.jsx(linhas 271-277)src/components/UpcomingEvents.jsx(linhas 82-89)Problema
A mesma logica condicional para renderizar o icone de modalidade (Online/Hibrido/Presencial) esta copiada em 3 componentes.
Refatoracao Proposta
Criar um componente reutilizavel: