bananas-commerce-admin
Version:
What's this, an admin for apes?
32 lines • 1.98 kB
JavaScript
import React from "react";
import { BrowserRouter } from "react-router-dom";
import { Stack } from "@mui/material";
import NavRail from "./components/NavRail";
import LoadingScreen from "./containers/LoadingScreen";
import { useApi } from "./contexts/ApiContext";
import DialogContextProvider, { BcomDialog } from "./contexts/DialogContext";
import { useI18n } from "./contexts/I18nContext";
import { RouterContextProvider } from "./contexts/RouterContext";
import { useUser } from "./contexts/UserContext";
import LoginPage from "./pages/LoginPage";
import { Router } from "./router/Router";
export const Admin = ({ logo, logoSymbol, loginLogoHeight, title, subtitle, version, navigation, extensions, dashboard, basename, basepath, }) => {
const api = useApi();
const i18n = useI18n();
const { hasTriedToFetchUser, user } = useUser();
const hasLoaded = Boolean(api != null && i18n != null);
const hasUser = user != null;
return (React.createElement(Stack, { sx: {
minWidth: "100%",
minHeight: "100%",
bgcolor: "background.default",
} }, !hasLoaded || !hasTriedToFetchUser ? (React.createElement(LoadingScreen, null)) : !hasUser ? (React.createElement(LoginPage, { logo: logo, logoHeight: loginLogoHeight, title: title })) : (React.createElement(BrowserRouter, { basename: basename },
React.createElement(RouterContextProvider, { basename: basename, stripPathPrefix: basepath },
React.createElement(DialogContextProvider, null,
React.createElement(BcomDialog, null),
React.createElement(Stack, { direction: { xs: "column", sm: "row" } },
React.createElement(NavRail, { logo: logoSymbol ?? logo, navigation: navigation, subtitle: subtitle, title: title, version: version }),
React.createElement(Router, { dashboard: dashboard, extensions: extensions }))))))));
};
export default Admin;
//# sourceMappingURL=Admin.js.map