Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

42 lines
1.2KB

  1. import { PageID } from "codes/page";
  2. import { AppContextProvider } from "contexts/AppContext";
  3. import SimpleLayout from "layouts/simple";
  4. import { lazy, useMemo } from "react";
  5. import { RouteObject } from "react-router-dom";
  6. import { Loadable } from "routes";
  7. import { getRoute } from "routes/path";
  8. export default function AppRoutes(): RouteObject {
  9. const ReceiptIssuingOrder = Loadable(
  10. lazy(() => import("pages/app/ReceiptIssuingOrder"))
  11. );
  12. const MailOrder = Loadable(lazy(() => import("pages/app/MailOrder")));
  13. const EmailOrder = Loadable(lazy(() => import("pages/app/EmailOrder")));
  14. const children: RouteObject[] = useMemo(() => {
  15. return [
  16. {
  17. path: getRoute(PageID.APP_RECEIPT_ISSUING_ORDER_INDEX),
  18. element: <ReceiptIssuingOrder />,
  19. },
  20. {
  21. path: getRoute(PageID.APP_RECEIPT_ISSUING_ORDER_MAIL_ORDER),
  22. element: <MailOrder />,
  23. },
  24. {
  25. path: getRoute(PageID.APP_RECEIPT_ISSUING_ORDER_EMAIL_ORDER),
  26. element: <EmailOrder />,
  27. },
  28. ];
  29. }, []);
  30. return {
  31. element: (
  32. <AppContextProvider>
  33. <SimpleLayout />
  34. </AppContextProvider>
  35. ),
  36. children,
  37. };
  38. }