Guilherme Silberfarb Costa commited on
Commit
225c9ff
·
1 Parent(s): 9e7c650

ajuste estetico

Browse files
Files changed (1) hide show
  1. frontend/src/App.jsx +84 -92
frontend/src/App.jsx CHANGED
@@ -34,8 +34,6 @@ export default function App() {
34
  const [modelosRouteRequest, setModelosRouteRequest] = useState(null)
35
  const [trabalhosRouteRequest, setTrabalhosRouteRequest] = useState(null)
36
  const [pendingDeepLinkIntent, setPendingDeepLinkIntent] = useState(null)
37
- const [modelosModoImersivo, setModelosModoImersivo] = useState(false)
38
- const [trabalhosModoImersivo, setTrabalhosModoImersivo] = useState(false)
39
 
40
  const [authLoading, setAuthLoading] = useState(true)
41
  const [authUser, setAuthUser] = useState(null)
@@ -123,8 +121,6 @@ export default function App() {
123
  setModelosRouteRequest(null)
124
  setTrabalhosRouteRequest(null)
125
  setPendingDeepLinkIntent(null)
126
- setModelosModoImersivo(false)
127
- setTrabalhosModoImersivo(false)
128
  setLogsStatus(null)
129
  setLogsOpen(false)
130
  setLogsEvents([])
@@ -611,99 +607,97 @@ export default function App() {
611
 
612
  return (
613
  <div className="app-shell">
614
- {!(modelosModoImersivo || trabalhosModoImersivo) ? (
615
- <header ref={headerRef} className={authUser ? 'app-header app-header-logged' : 'app-header app-header-logo-only'}>
616
- <div className="brand-mark" aria-hidden="true">
617
- <img src={`${import.meta.env.BASE_URL}logo_mesa.png`} alt="MESA" />
618
- </div>
619
- {authUser ? (
620
- <div className="app-top-actions">
621
- <nav className="tabs" aria-label="Navegação principal">
622
- {TABS.map((tab) => {
623
- const active = tab.key === activeTab
624
- return (
625
- <button
626
- key={tab.key}
627
- className={active ? 'tab-pill active' : 'tab-pill'}
628
- onClick={() => {
629
- setActiveTab(tab.key)
630
- setShowStartupIntro(false)
631
- setLogsOpen(false)
632
- setSettingsOpen(false)
633
- const slug = getAppTabSlugFromKey(tab.key)
634
- if (slug === 'modelos') {
635
- syncRouteIntent(lastModelosRouteRef.current || { tab: 'modelos' })
636
- return
637
- }
638
- if (slug === 'trabalhos') {
639
- syncRouteIntent(lastTrabalhosRouteRef.current || { tab: 'trabalhos' })
640
- return
641
- }
642
- if (slug === 'avaliacao') {
643
- syncRouteIntent(lastAvaliacaoRouteRef.current || { tab: 'avaliacao' })
644
- return
645
- }
646
- if (slug === 'elaboracao') {
647
- syncRouteIntent(lastElaboracaoRouteRef.current || { tab: 'elaboracao' })
648
- }
649
- }}
650
- type="button"
651
- >
652
- <strong>{tab.label}</strong>
653
- </button>
654
- )
655
- })}
656
- </nav>
657
-
658
- <div ref={settingsMenuRef} className={`settings-menu${settingsOpen ? ' is-open' : ''}`}>
659
- <button
660
- type="button"
661
- className="settings-gear-btn"
662
- aria-haspopup="menu"
663
- aria-expanded={settingsOpen}
664
- aria-label="Abrir configurações"
665
- onClick={() => setSettingsOpen((prev) => !prev)}
666
- title="Configurações"
667
- >
668
- &#9881;
669
- </button>
670
- {settingsOpen ? (
671
- <div className="settings-menu-panel" role="menu" aria-label="Configurações do usuário">
672
- <div className="settings-user-summary">
673
- Usuário: <strong>{authUser.nome || authUser.usuario}</strong> ({authUser.perfil || 'viewer'})
674
- </div>
675
- <div className="settings-menu-actions">
676
- {isAdmin ? (
677
- <button
678
- type="button"
679
- className="settings-menu-btn"
680
- onClick={() => {
681
- void onToggleLogs()
682
- setSettingsOpen(false)
683
- }}
684
- disabled={logsStatusLoading || (!logsEnabled && !logsOpen)}
685
- title={logsOpen ? 'Fechar visualização de logs' : !logsEnabled ? logsDisabledReason : 'Abrir leitura de logs'}
686
- >
687
- {logsOpen ? 'Fechar logs' : 'Abrir logs'}
688
- </button>
689
- ) : null}
690
  <button
691
  type="button"
692
- className="settings-menu-btn settings-menu-btn-danger"
693
- onClick={() => void onLogout()}
 
 
 
 
 
694
  >
695
- Sair
696
  </button>
697
- </div>
 
 
 
 
 
 
 
698
  </div>
699
- ) : null}
700
- </div>
701
  </div>
702
- ) : null}
703
- </header>
704
- ) : null}
705
 
706
- {authUser && showScrollHomeBtn && !(modelosModoImersivo || trabalhosModoImersivo) ? (
707
  <button
708
  type="button"
709
  className="scroll-home-btn"
@@ -888,7 +882,6 @@ export default function App() {
888
  onAbrirModeloNoRepositorio={onAbrirModeloNoRepositorio}
889
  routeRequest={modelosRouteRequest}
890
  onRouteChange={onModelosRouteChange}
891
- onModoImersivoChange={setModelosModoImersivo}
892
  />
893
  </div>
894
 
@@ -909,7 +902,6 @@ export default function App() {
909
  routeRequest={trabalhosRouteRequest}
910
  onRouteChange={onTrabalhosRouteChange}
911
  onVoltarAoMapaPesquisa={onVoltarAoMapaPesquisa}
912
- onModoImersivoChange={setTrabalhosModoImersivo}
913
  />
914
  </div>
915
 
 
34
  const [modelosRouteRequest, setModelosRouteRequest] = useState(null)
35
  const [trabalhosRouteRequest, setTrabalhosRouteRequest] = useState(null)
36
  const [pendingDeepLinkIntent, setPendingDeepLinkIntent] = useState(null)
 
 
37
 
38
  const [authLoading, setAuthLoading] = useState(true)
39
  const [authUser, setAuthUser] = useState(null)
 
121
  setModelosRouteRequest(null)
122
  setTrabalhosRouteRequest(null)
123
  setPendingDeepLinkIntent(null)
 
 
124
  setLogsStatus(null)
125
  setLogsOpen(false)
126
  setLogsEvents([])
 
607
 
608
  return (
609
  <div className="app-shell">
610
+ <header ref={headerRef} className={authUser ? 'app-header app-header-logged' : 'app-header app-header-logo-only'}>
611
+ <div className="brand-mark" aria-hidden="true">
612
+ <img src={`${import.meta.env.BASE_URL}logo_mesa.png`} alt="MESA" />
613
+ </div>
614
+ {authUser ? (
615
+ <div className="app-top-actions">
616
+ <nav className="tabs" aria-label="Navegação principal">
617
+ {TABS.map((tab) => {
618
+ const active = tab.key === activeTab
619
+ return (
620
+ <button
621
+ key={tab.key}
622
+ className={active ? 'tab-pill active' : 'tab-pill'}
623
+ onClick={() => {
624
+ setActiveTab(tab.key)
625
+ setShowStartupIntro(false)
626
+ setLogsOpen(false)
627
+ setSettingsOpen(false)
628
+ const slug = getAppTabSlugFromKey(tab.key)
629
+ if (slug === 'modelos') {
630
+ syncRouteIntent(lastModelosRouteRef.current || { tab: 'modelos' })
631
+ return
632
+ }
633
+ if (slug === 'trabalhos') {
634
+ syncRouteIntent(lastTrabalhosRouteRef.current || { tab: 'trabalhos' })
635
+ return
636
+ }
637
+ if (slug === 'avaliacao') {
638
+ syncRouteIntent(lastAvaliacaoRouteRef.current || { tab: 'avaliacao' })
639
+ return
640
+ }
641
+ if (slug === 'elaboracao') {
642
+ syncRouteIntent(lastElaboracaoRouteRef.current || { tab: 'elaboracao' })
643
+ }
644
+ }}
645
+ type="button"
646
+ >
647
+ <strong>{tab.label}</strong>
648
+ </button>
649
+ )
650
+ })}
651
+ </nav>
652
+
653
+ <div ref={settingsMenuRef} className={`settings-menu${settingsOpen ? ' is-open' : ''}`}>
654
+ <button
655
+ type="button"
656
+ className="settings-gear-btn"
657
+ aria-haspopup="menu"
658
+ aria-expanded={settingsOpen}
659
+ aria-label="Abrir configurações"
660
+ onClick={() => setSettingsOpen((prev) => !prev)}
661
+ title="Configurações"
662
+ >
663
+ &#9881;
664
+ </button>
665
+ {settingsOpen ? (
666
+ <div className="settings-menu-panel" role="menu" aria-label="Configurações do usuário">
667
+ <div className="settings-user-summary">
668
+ Usuário: <strong>{authUser.nome || authUser.usuario}</strong> ({authUser.perfil || 'viewer'})
669
+ </div>
670
+ <div className="settings-menu-actions">
671
+ {isAdmin ? (
 
 
 
 
 
 
 
 
 
 
 
 
 
 
672
  <button
673
  type="button"
674
+ className="settings-menu-btn"
675
+ onClick={() => {
676
+ void onToggleLogs()
677
+ setSettingsOpen(false)
678
+ }}
679
+ disabled={logsStatusLoading || (!logsEnabled && !logsOpen)}
680
+ title={logsOpen ? 'Fechar visualização de logs' : !logsEnabled ? logsDisabledReason : 'Abrir leitura de logs'}
681
  >
682
+ {logsOpen ? 'Fechar logs' : 'Abrir logs'}
683
  </button>
684
+ ) : null}
685
+ <button
686
+ type="button"
687
+ className="settings-menu-btn settings-menu-btn-danger"
688
+ onClick={() => void onLogout()}
689
+ >
690
+ Sair
691
+ </button>
692
  </div>
693
+ </div>
694
+ ) : null}
695
  </div>
696
+ </div>
697
+ ) : null}
698
+ </header>
699
 
700
+ {authUser && showScrollHomeBtn ? (
701
  <button
702
  type="button"
703
  className="scroll-home-btn"
 
882
  onAbrirModeloNoRepositorio={onAbrirModeloNoRepositorio}
883
  routeRequest={modelosRouteRequest}
884
  onRouteChange={onModelosRouteChange}
 
885
  />
886
  </div>
887
 
 
902
  routeRequest={trabalhosRouteRequest}
903
  onRouteChange={onTrabalhosRouteChange}
904
  onVoltarAoMapaPesquisa={onVoltarAoMapaPesquisa}
 
905
  />
906
  </div>
907