diff --git a/pwa/app/components/molecules/Header.tsx b/pwa/app/components/molecules/Header.tsx index ef26b7b21686a4f822d4fc6ee57337c0f40fae9a..5ae00d1d79a756bd78369dd1289ed06003c4dd0e 100644 --- a/pwa/app/components/molecules/Header.tsx +++ b/pwa/app/components/molecules/Header.tsx @@ -7,20 +7,27 @@ interface HeaderProps { export default function Header({ onToggleSidebar }: HeaderProps) { return (
- -
- - +
+ +
+ + +
+
+
+
+ ACJJ +
) diff --git a/pwa/app/components/molecules/Sidebar.tsx b/pwa/app/components/molecules/Sidebar.tsx index 55710353ad47c57efda39c31f81b4c32a5e49d96..ff41ad28f1ea71a9c0a3a5204b831315524d4fef 100644 --- a/pwa/app/components/molecules/Sidebar.tsx +++ b/pwa/app/components/molecules/Sidebar.tsx @@ -1,7 +1,9 @@ +import { TrendingUp, ScatterChart, PieChart, BookOpen, FileText, ExternalLink, FileCode } from 'lucide-react' + const tabs = [ - { key: 'temporal', label: 'Temporal' }, - { key: 'points', label: 'Points' }, - { key: 'diagram', label: 'Diagram' }, + { key: 'temporal', label: 'Séries temporelles', icon: TrendingUp }, + { key: 'points', label: 'Nuage de points', icon: ScatterChart }, + { key: 'diagram', label: 'Diagramme circulaire', icon: PieChart }, ] as const export type TabKey = (typeof tabs)[number]['key'] @@ -19,8 +21,8 @@ export default function Sidebar({ activeTab, onTabChange, open }: SidebarProps)
-
-
+
+

FullStack Lab

@@ -34,16 +36,81 @@ export default function Sidebar({ activeTab, onTabChange, open }: SidebarProps) ))} + +
+

Infos

+
+ + +
+

Librairies

+
+ + +
+

API

+
+ +
) diff --git a/pwa/app/components/tabs/temporal.tsx b/pwa/app/components/tabs/temporal.tsx index e3a444222b9a1c7aa95858a4ace66bb61fd8ead8..7787da12856793de32836e0de39e90363c15376b 100644 --- a/pwa/app/components/tabs/temporal.tsx +++ b/pwa/app/components/tabs/temporal.tsx @@ -110,13 +110,17 @@ export default function Temporal({ regions }: TemporalProps) { + {startYear >= endYear && ( +

La date de début doit être antérieure à la date de fin.

+ )} + {loading && } @@ -159,6 +163,16 @@ export default function Temporal({ regions }: TemporalProps) { wrapperStyle={{ paddingTop: '20px', }} + content={({ payload }) => ( +
+ {payload?.map(entry => ( + + + {entry.value} + + ))} +
+ )} /> {visibleRegions.map(region => (