From da4dd55209b82f388fbd9bedd72641ee9dc4cce9 Mon Sep 17 00:00:00 2001 From: hsiegeln <37154749+hsiegeln@users.noreply.github.com> Date: Wed, 18 Mar 2026 10:22:23 +0100 Subject: [PATCH] =?UTF-8?q?feat:=20Cameleer3=20design=20system=20=E2=80=94?= =?UTF-8?q?=20complete=20standalone=20implementation?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Wires up all 5 routes in App.tsx (/, /metrics, /routes/:id, /exchanges/:id, /agents). Fixes pre-existing build errors: vite.config.ts now uses vitest/config defineConfig so the test property is typed correctly; removes unused imports in Collapsible.tsx and _chart-utils.ts; removes unused parameter in metrics.ts generateTimeSeries. Build: tsc -b && vite build passes clean. Test suite: 72/72 pass. Bundle: 334kB JS (101kB gzip) + 54kB CSS (10kB gzip). Co-Authored-By: Claude Opus 4.6 (1M context) --- src/App.tsx | 8 ++++++++ src/design-system/composites/_chart-utils.ts | 2 +- src/design-system/primitives/Collapsible/Collapsible.tsx | 2 +- src/mocks/metrics.ts | 1 - vite.config.ts | 2 +- 5 files changed, 11 insertions(+), 4 deletions(-) diff --git a/src/App.tsx b/src/App.tsx index 0b38c47..4ac17ca 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,10 +1,18 @@ import { Routes, Route } from 'react-router-dom' import { Dashboard } from './pages/Dashboard/Dashboard' +import { Metrics } from './pages/Metrics/Metrics' +import { RouteDetail } from './pages/RouteDetail/RouteDetail' +import { ExchangeDetail } from './pages/ExchangeDetail/ExchangeDetail' +import { AgentHealth } from './pages/AgentHealth/AgentHealth' export default function App() { return ( } /> + } /> + } /> + } /> + } /> ) } diff --git a/src/design-system/composites/_chart-utils.ts b/src/design-system/composites/_chart-utils.ts index 8add68d..da8cbe9 100644 --- a/src/design-system/composites/_chart-utils.ts +++ b/src/design-system/composites/_chart-utils.ts @@ -80,7 +80,7 @@ export function formatAxisLabel(val: number): string { return val.toFixed(1) } -export function formatXLabel(val: number | Date, totalPoints: number): string { +export function formatXLabel(val: number | Date, _totalPoints: number): string { if (val instanceof Date || (typeof val === 'number' && val > 1e10)) { const d = val instanceof Date ? val : new Date(val) return d.toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' }) diff --git a/src/design-system/primitives/Collapsible/Collapsible.tsx b/src/design-system/primitives/Collapsible/Collapsible.tsx index 52b2881..456b306 100644 --- a/src/design-system/primitives/Collapsible/Collapsible.tsx +++ b/src/design-system/primitives/Collapsible/Collapsible.tsx @@ -1,4 +1,4 @@ -import { useState, useRef, useEffect } from 'react' +import { useState, useRef } from 'react' import styles from './Collapsible.module.css' import type { ReactNode } from 'react' diff --git a/src/mocks/metrics.ts b/src/mocks/metrics.ts index 8314895..76f80c5 100644 --- a/src/mocks/metrics.ts +++ b/src/mocks/metrics.ts @@ -25,7 +25,6 @@ function generateTimeSeries( baseValue: number, variance: number, points: number, - startHour = 6, ): TimeSeriesPoint[] { const result: TimeSeriesPoint[] = [] const now = new Date('2026-03-18T09:15:00') diff --git a/vite.config.ts b/vite.config.ts index 9412ea7..d63daa4 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -1,4 +1,4 @@ -import { defineConfig } from 'vite' +import { defineConfig } from 'vitest/config' import react from '@vitejs/plugin-react' export default defineConfig({