summaryrefslogtreecommitdiff
path: root/packages/aml-backoffice-ui/src/App.tsx
blob: d461934c081582ad822559ca606e98cdd324eced (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import { TranslationProvider } from "@gnu-taler/web-util/browser";
import { h, VNode } from "preact";
import { ExchangeAmlFrame } from "./Dashboard.js";
import "./scss/main.css";
import { ExchangeApiProvider } from "./context/config.js";
import { getInitialBackendBaseURL } from "./hooks/useBackend.js";
import { HashPathProvider, Router } from "./route.js";
import { Pages } from "./pages.js";

const pageList = Object.values(Pages);


export function App(): VNode {
  const baseUrl = getInitialBackendBaseURL();
  return (
    <TranslationProvider source={{}}>
      <ExchangeApiProvider baseUrl={baseUrl} frameOnError={ExchangeAmlFrame}>
        <HashPathProvider>
          <ExchangeAmlFrame>
            <Router
              pageList={pageList}
              onNotFound={() => {
                window.location.href = Pages.cases.url
                return <div>not found</div>;
              }}
            />
          </ExchangeAmlFrame>
        </HashPathProvider>
      </ExchangeApiProvider>
    </TranslationProvider>
  );
}