import React, { Suspense } from "react"; import { createBrowserRouter, RouterProvider, RouteObject, } from "react-router-dom"; import { EntranceCard } from "./components/EntranceCard"; import { AppContextProvider } from "../react-app/src/contexts/AppContext"; import mock from "@/mock"; // @ts-ignore const pages = import.meta.glob(`../react-app/src/pages/*/App.tsx`, { eager: true, }); const routesList = Object.entries(pages).map(([path, component]) => { const name = path.split("/").slice(-2)[0]; return { path: `/${name}`, name, mockProps: mock[name], // the mock props from lwc component. for local development. Component: (component as any).default as React.ComponentType, }; }); function Home() { return (

Available Entrances

{routesList.map(({ path, name }) => (
))}
); } const router = createBrowserRouter( [ { path: "/", element: , }, ...routesList.map(({ path, Component, mockProps }) => ({ path, element: (
), })), ] satisfies RouteObject[], { future: { v7_relativeSplatPath: true, }, } ); export default function App() { return ( Loading...}> ); }