diff --git a/src/pages/restaurant/page.tsx b/src/pages/restaurant/page.tsx
index cdec5c9..5d505d8 100644
--- a/src/pages/restaurant/page.tsx
+++ b/src/pages/restaurant/page.tsx
@@ -13,12 +13,13 @@ import RestaurantServices from "./RestaurantServices";
import Ads1 from "components/Ads/Ads1";
import { Loader } from "components/Loader/Loader";
import { useRestaurant } from "hooks/useRestaurant";
-import { useParams } from "react-router-dom";
+import { useParams, Outlet, useLocation } from "react-router-dom";
import { useGetRestaurantDetailsQuery } from "redux/api/others";
import LocalStorageHandler from "../menu/components/LocalStorageHandler";
export default function RestaurantPage() {
const param = useParams();
+ const { pathname } = useLocation();
const { isRTL } = useAppSelector((state) => state.locale);
const { data: restaurant, isLoading } = useGetRestaurantDetailsQuery("595", {
skip: !param.id,
@@ -39,6 +40,8 @@ export default function RestaurantPage() {
localStorage.setItem("restaurantID", restaurant.restautantId);
}
+ if (param.id && !pathname.endsWith(param.id)) return ;
+
return (
<>
diff --git a/src/routes/routes.tsx b/src/routes/routes.tsx
index def79dc..d39927e 100644
--- a/src/routes/routes.tsx
+++ b/src/routes/routes.tsx
@@ -17,7 +17,7 @@ import SearchPage from "pages/search/page";
import SplitBillPage from "pages/split-bill/page";
import React, { ReactNode, Suspense, useEffect } from "react";
import { createHashRouter, useLocation } from "react-router-dom";
-import { Error400Page, ErrorPage } from "../pages/errors";
+import { Error400Page, ErrorPage } from "pages/errors";
const { useBreakpoint } = Grid;
@@ -58,93 +58,90 @@ export const router = createHashRouter([
element:
} />,
errorElement:
,
},
-
{
path: "/:id",
element:
} />,
errorElement:
,
- },
+ children: [
+ {
+ path: "menu",
+ element:
} />,
+ errorElement:
,
+ },
+ {
+ path: "cart",
+ element: (
+
+
+
+ }
+ />
+ ),
+ errorElement: ,
+ },
- {
- path: "/:id/menu",
- element: } />,
- errorElement: ,
- },
+ {
+ path: "address",
+ element: } />,
+ errorElement: ,
+ },
- {
- path: "/:id/cart",
- element: (
-
-
-
- }
- />
- ),
- errorElement: ,
- },
+ {
+ path: "checkout",
+ element: } />,
+ errorElement: ,
+ },
+ {
+ path: "split-bill",
+ element: } />,
+ errorElement: ,
+ },
- {
- path: "/:id/address",
- element: } />,
- errorElement: ,
- },
+ {
+ path: "product/:productId",
+ element: } />,
+ errorElement: ,
+ },
- {
- path: "/:id/checkout",
- element: } />,
- errorElement: ,
- },
+ {
+ path: "search",
+ element: } />,
+ errorElement: ,
+ },
- {
- path: "/:id/split-bill",
- element: } />,
- errorElement: ,
- },
+ {
+ path: "orders",
+ element: (
+
+
+
+ }
+ />
+ ),
+ errorElement: ,
+ },
+ {
+ path: "login",
+ element: } />,
+ errorElement: ,
+ },
- {
- path: "/:id/product/:productId",
- element: } />,
- errorElement: ,
- },
+ {
+ path: "otp",
+ element: } />,
+ errorElement: ,
+ },
- {
- path: "/:id/search",
- element: } />,
- errorElement: ,
- },
-
- {
- path: "/:id/orders",
- element: (
-
-
-
- }
- />
- ),
- errorElement: ,
- },
-
- {
- path: "/:id/login",
- element: } />,
- errorElement: ,
- },
-
- {
- path: "/:id/otp",
- element: } />,
- errorElement: ,
- },
-
- {
- path: "/:id/order/:orderId",
- element: } />,
- errorElement: ,
+ {
+ path: "order/:orderId",
+ element: } />,
+ errorElement: ,
+ },
+ ],
},
{