diff --git a/ecosystem-explorer/src/App.tsx b/ecosystem-explorer/src/App.tsx index 47e25505..96ac6e8d 100644 --- a/ecosystem-explorer/src/App.tsx +++ b/ecosystem-explorer/src/App.tsx @@ -13,10 +13,61 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import { BrowserRouter } from "react-router-dom"; -import { LegacyApp } from "@/LegacyApp"; -import { V1App } from "@/v1"; +import { lazy, Suspense } from "react"; +import { BrowserRouter, Routes, Route } from "react-router-dom"; +import { Header } from "@/components/layout/header"; +import { Footer } from "@/components/layout/footer"; import { isEnabled } from "@/lib/feature-flags"; +import { ErrorBoundary } from "@/components/ui/error-boundary"; + +const HomePage = lazy(() => + import("@/features/home/home-page").then((m) => ({ default: m.HomePage })) +); +const JavaAgentPage = lazy(() => + import("@/features/java-agent/java-agent-page").then((m) => ({ default: m.JavaAgentPage })) +); +const CollectorPage = lazy(() => import("@/features/collector/collector-page")); +const CollectorComponentsPage = lazy(() => + import("@/features/collector/collector-components-page").then((m) => ({ + default: m.CollectorComponentsPage, + })) +); +const CollectorDetailPage = lazy(() => + import("@/features/collector/collector-detail-page").then((m) => ({ + default: m.CollectorDetailPage, + })) +); +const NotFoundPage = lazy(() => + import("@/features/not-found/not-found-page").then((m) => ({ default: m.NotFoundPage })) +); +const JavaInstrumentationListPage = lazy(() => + import("@/features/java-agent/java-instrumentation-list-page").then((m) => ({ + default: m.JavaInstrumentationListPage, + })) +); +const JavaConfigurationListPage = lazy(() => + import("@/features/java-agent/java-configuration-list-page").then((m) => ({ + default: m.JavaConfigurationListPage, + })) +); +const JavaReleaseComparisonPage = lazy(() => + import("@/features/java-agent/java-release-comparison-page").then((m) => ({ + default: m.JavaReleaseComparisonPage, + })) +); +const InstrumentationDetailPage = lazy(() => + import("@/features/java-agent/instrumentation-detail-page").then((m) => ({ + default: m.InstrumentationDetailPage, + })) +); +const ConfigurationBuilderPage = lazy(() => + import("@/features/java-agent/configuration/configuration-builder-page").then((m) => ({ + default: m.ConfigurationBuilderPage, + })) +); +const AboutPage = lazy(() => + import("@/features/about/about-page").then((m) => ({ default: m.AboutPage })) +); /* * Single V1_REDESIGN boundary read. See @@ -25,5 +76,70 @@ import { isEnabled } from "@/lib/feature-flags"; * bundle selection is driven by netlify.toml's `feat/84-*` branch pattern. */ export default function App() { - return {isEnabled("V1_REDESIGN") ? : }; + return ( + +
+
+
+ + +
Loading...
+
+ } + > + + } /> + } /> + } + /> + } + /> + } + /> + } + /> + {isEnabled("JAVA_RELEASE_COMPARISON") && ( + } + /> + )} + } + /> + } /> + } /> + } + /> + } + /> + } /> + } /> + + + + +