import os import streamlit as st st.set_page_config( page_title="LeadRadar - Prospecção Ativa & Funil CRM", page_icon="📡", layout="wide", initial_sidebar_state="expanded" ) # Carregar CSS customizado Dark Tech Slate css_path = os.path.join(os.path.dirname(__file__), 'styles', 'style.css') if os.path.exists(css_path): with open(css_path, 'r', encoding='utf-8') as f: st.markdown(f"", unsafe_allow_html=True) from api_client import APIClient from views.login_view import render_login_view from views.radar_busca import render_radar_busca_view from views.crm_kanban import render_crm_kanban_view from views.analytical_table import render_analytical_table_view from views.admin_users import render_admin_users_view from views.profile import render_profile_view def main(): api_client = APIClient() # Verificar se o usuário está autenticado if not st.session_state.get('access_token'): render_login_view(api_client) return user_info = st.session_state.get('user', {}) is_admin = user_info.get('role') == 'admin' # Barra Lateral (Sidebar Navigation) with st.sidebar: st.markdown( f"""

📡 LeadRadar

Prospecção & Mini-CRM
""", unsafe_allow_html=True ) st.markdown( f"""
{user_info.get('nome', 'Usuário')}
{user_info.get('email', '')}
{user_info.get('role', 'user').upper()}
""", unsafe_allow_html=True ) nav_options = [ "📡 Radar de Busca", "📌 Funil CRM (Kanban)", "📊 Tabela Analítica" ] if is_admin: nav_options.append("🛡️ Usuários (Admin)") nav_options.append("👤 Meu Perfil") selected_page = st.radio("Navegação Principal", nav_options, index=0) st.markdown("---") if st.button("🚪 Sair (Logout)", use_container_width=True): api_client.logout() st.rerun() # Renderização da Página Selecionada if selected_page == "📡 Radar de Busca": render_radar_busca_view(api_client) elif selected_page == "📌 Funil CRM (Kanban)": render_crm_kanban_view(api_client) elif selected_page == "📊 Tabela Analítica": render_analytical_table_view(api_client) elif selected_page == "🛡️ Usuários (Admin)": render_admin_users_view(api_client) elif selected_page == "👤 Meu Perfil": render_profile_view(api_client) if __name__ == '__main__': main()