diff --git a/moneymgr_web/src/App.tsx b/moneymgr_web/src/App.tsx index 0d96867..ab9733e 100644 --- a/moneymgr_web/src/App.tsx +++ b/moneymgr_web/src/App.tsx @@ -15,6 +15,7 @@ import { BaseAuthenticatedPage } from "./widgets/BaseAuthenticatedPage"; import { BaseLoginPage } from "./widgets/BaseLoginPage"; import { TokensRoute } from "./routes/TokensRoute"; import { AccountsRoute } from "./routes/AccountsRoute"; +import { AccountRoute } from "./routes/AccountRoute"; interface AuthContext { signedIn: boolean; @@ -41,6 +42,7 @@ export function App() { } /> } /> } /> + } /> } /> diff --git a/moneymgr_web/src/routes/AccountRoute.tsx b/moneymgr_web/src/routes/AccountRoute.tsx new file mode 100644 index 0000000..eed86b4 --- /dev/null +++ b/moneymgr_web/src/routes/AccountRoute.tsx @@ -0,0 +1,27 @@ +import { useParams } from "react-router-dom"; +import { MoneyMgrWebRouteContainer } from "../widgets/MoneyMgrWebRouteContainer"; +import { useAccounts } from "../hooks/AccountsListProvider"; +import { NotFoundRoute } from "./NotFound"; +import { AccountWidget } from "../widgets/AccountWidget"; + +export function AccountRoute(): React.ReactElement { + const { accountId } = useParams(); + + const accounts = useAccounts(); + const account = accounts.get(Number(accountId)); + + if (account === null) return ; + + return ( + + +  {account.name} + + } + > + TODO : table + + ); +} diff --git a/moneymgr_web/src/widgets/MoneyMgrWebRouteContainer.tsx b/moneymgr_web/src/widgets/MoneyMgrWebRouteContainer.tsx index f3bdccd..4d0db30 100644 --- a/moneymgr_web/src/widgets/MoneyMgrWebRouteContainer.tsx +++ b/moneymgr_web/src/widgets/MoneyMgrWebRouteContainer.tsx @@ -3,7 +3,7 @@ import React, { PropsWithChildren } from "react"; export function MoneyMgrWebRouteContainer( p: { - label: string; + label: string | React.ReactElement; actions?: React.ReactElement; } & PropsWithChildren ): React.ReactElement {