diff --git a/client/src/components/Layout/DemoBanner.jsx b/client/src/components/Layout/DemoBanner.jsx index d892f36..916565e 100644 --- a/client/src/components/Layout/DemoBanner.jsx +++ b/client/src/components/Layout/DemoBanner.jsx @@ -1,5 +1,5 @@ import React, { useState, useEffect } from 'react' -import { Info, Github, Shield, Key, Users, Database, Upload, Clock } from 'lucide-react' +import { Info, Github, Shield, Key, Users, Database, Upload, Clock, Puzzle, CalendarDays, Globe, ArrowRightLeft, Map, Briefcase, ListChecks, Wallet, FileText, Plane } from 'lucide-react' import { useTranslation } from '../../i18n' const texts = { @@ -9,14 +9,25 @@ const texts = { resetIn: 'Naechster Reset in', minutes: 'Minuten', uploadNote: 'Datei-Uploads (Fotos, Dokumente, Cover) sind in der Demo deaktiviert.', - fullVersionTitle: 'In der Vollversion zusaetzlich verfuegbar:', + fullVersionTitle: 'In der Vollversion zusaetzlich:', features: [ - 'Datei-Uploads (Fotos, Dokumente, Reise-Cover)', - 'API-Schluessel verwalten (Google Maps, Wetter)', - 'Benutzer & Rechte verwalten', - 'Automatische Backups & Wiederherstellung', + 'Datei-Uploads (Fotos, Dokumente, Cover)', + 'API-Schluessel (Google Maps, Wetter)', + 'Benutzer- & Rechteverwaltung', + 'Automatische Backups', ], - selfHost: 'NOMAD ist Open Source — ', + addonsTitle: 'Modulare Addons', + addons: [ + ['Vacay', 'Urlaubsplaner mit Kalender, Feiertagen & Fusion'], + ['Atlas', 'Weltkarte mit besuchten Laendern & Reisestatistiken'], + ['Packliste', 'Checklisten pro Reise'], + ['Budget', 'Kostenplanung mit Splitting'], + ['Dokumente', 'Dateien an Reisen anhaengen'], + ['Widgets', 'Waehrungsrechner & Zeitzonen'], + ], + whatIs: 'Was ist NOMAD?', + whatIsDesc: 'Ein selbst-gehosteter Reiseplaner mit Echtzeit-Kollaboration, interaktiver Karte, OIDC Login und Dark Mode.', + selfHost: 'Open Source — ', selfHostLink: 'selbst hosten', close: 'Verstanden', }, @@ -26,20 +37,32 @@ const texts = { resetIn: 'Next reset in', minutes: 'minutes', uploadNote: 'File uploads (photos, documents, covers) are disabled in demo mode.', - fullVersionTitle: 'Additionally available in the full version:', + fullVersionTitle: 'Additionally in the full version:', features: [ - 'File uploads (photos, documents, trip covers)', + 'File uploads (photos, documents, covers)', 'API key management (Google Maps, Weather)', 'User & permission management', - 'Automatic backups & restore', + 'Automatic backups', ], - selfHost: 'NOMAD is open source — ', + addonsTitle: 'Modular Addons', + addons: [ + ['Vacay', 'Vacation planner with calendar, holidays & user fusion'], + ['Atlas', 'World map with visited countries & travel stats'], + ['Packing', 'Checklists per trip'], + ['Budget', 'Expense tracking with splitting'], + ['Documents', 'Attach files to trips'], + ['Widgets', 'Currency converter & timezones'], + ], + whatIs: 'What is NOMAD?', + whatIsDesc: 'A self-hosted travel planner with real-time collaboration, interactive maps, OIDC login and dark mode.', + selfHost: 'Open source — ', selfHostLink: 'self-host it', close: 'Got it', }, } const featureIcons = [Upload, Key, Users, Database] +const addonIcons = [CalendarDays, Globe, ListChecks, Wallet, FileText, ArrowRightLeft] export default function DemoBanner() { const [dismissed, setDismissed] = useState(false) @@ -57,85 +80,125 @@ export default function DemoBanner() { return (
+
{t.description}
-
-
{t.whatIsDesc}
++ {/* Addons */} +
+
{desc}
+
+