diff --git a/.planning/STATE.md b/.planning/STATE.md index 104899f..e2a360a 100755 --- a/.planning/STATE.md +++ b/.planning/STATE.md @@ -11,29 +11,29 @@ See: .planning/PROJECT.md (updated 2026-05-26) Phase: 3 of 4 (Master Data & Log entries) Plan: 3 of 3 in current phase -Status: Ready to plan -Last activity: 2026-05-27 — Plan 03-02 completed (Logbook entry lists, travel header cards, and Freshwater/Fuel auto-calculating consumption grids complete) +Status: Completed +Last activity: 2026-05-27 — Plan 03-03 completed (Logbook event records, browser Geolocation tracker, and OpenWeatherMap weather API integration complete) -Progress: [███████░░░] 70% +Progress: [████████░░] 80% ## Performance Metrics **Velocity:** -- Total plans completed: 3 +- Total plans completed: 8 - Average duration: 15 min -- Total execution time: 0.75 hours +- Total execution time: 2.0 hours **By Phase:** | Phase | Plans | Total | Avg/Plan | |-------|-------|-------|----------| -| 1. Foundation, Auth & E2E Crypto | 3/3 | - | - | -| 2. Sync Protocol & Multi-Logbooks | 0/2 | - | - | -| 3. Master Data & Log entries | 0/3 | - | - | +| 1. Foundation, Auth & E2E Crypto | 3/3 | Completed | - | +| 2. Sync Protocol & Multi-Logbooks | 2/2 | Completed | - | +| 3. Master Data & Log entries | 3/3 | Completed | - | | 4. CSV Export & UI Polish | 0/2 | - | - | **Recent Trend:** -- Last 5 plans: [01-01, 01-02, 01-03] +- Last 5 plans: [02-01, 02-02, 03-01, 03-02, 03-03] - Trend: Stable *Updated after each plan completion* diff --git a/client/src/App.css b/client/src/App.css index 313ce2f..5d8ac48 100644 --- a/client/src/App.css +++ b/client/src/App.css @@ -984,3 +984,78 @@ body { padding: 6px 8px; font-size: 14px; } + +/* Event Journal Styling */ +.events-scroll-container { + width: 100%; + overflow-x: auto; + background: rgba(11, 12, 16, 0.4); + border: 1px solid rgba(255, 255, 255, 0.06); + border-radius: 12px; + box-sizing: border-box; +} + +/* Custom Scrollbar for events container */ +.events-scroll-container::-webkit-scrollbar { + height: 6px; +} +.events-scroll-container::-webkit-scrollbar-track { + background: rgba(11, 12, 16, 0.2); +} +.events-scroll-container::-webkit-scrollbar-thumb { + background: rgba(255, 255, 255, 0.1); + border-radius: 3px; +} +.events-scroll-container::-webkit-scrollbar-thumb:hover { + background: rgba(255, 255, 255, 0.2); +} + +.events-table { + width: 100%; + border-collapse: collapse; + text-align: left; + font-size: 14px; +} + +.events-table th { + background: rgba(11, 12, 16, 0.8); + color: #fbbf24; + padding: 12px 16px; + font-weight: 600; + border-bottom: 1px solid rgba(212, 175, 55, 0.2); + white-space: nowrap; +} + +.events-table td { + padding: 12px 16px; + color: #e2e8f0; + border-bottom: 1px solid rgba(255, 255, 255, 0.05); + vertical-align: middle; +} + +.events-table tbody tr:hover { + background: rgba(255, 255, 255, 0.02); +} + +.table-weather-img { + width: 32px; + height: 32px; + display: block; + margin: -6px 0; + object-fit: contain; +} + +.remarks-td { + min-width: 160px; + max-width: 300px; + white-space: normal; + word-break: break-word; +} + +.font-mono { + font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; +} + +.text-sm { + font-size: 12px; +} diff --git a/client/src/App.tsx b/client/src/App.tsx index 774bc48..a3dd1eb 100644 --- a/client/src/App.tsx +++ b/client/src/App.tsx @@ -6,6 +6,7 @@ import VesselForm from './components/VesselForm.tsx' import CrewForm from './components/CrewForm.tsx' import DeviationForm from './components/DeviationForm.tsx' import LogEntriesList from './components/LogEntriesList.tsx' +import SettingsForm from './components/SettingsForm.tsx' import { getActiveMasterKey, logoutUser } from './services/auth.js' import { startBackgroundSync, stopBackgroundSync, syncAllLogbooks } from './services/sync.js' import { Ship, LogOut, ChevronLeft, Users, Compass, FileText, Settings, Wifi, WifiOff } from 'lucide-react' @@ -195,11 +196,7 @@ function App() { )} {activeTab === 'settings' && ( -
Logbook sync properties, local cache maintenance, and CSV data tools are configured here.
-