import { Box, Grid } from "@mui/material";
import { useEffect } from "react";
import { connect } from "react-redux";
import { Navigate, Route, Routes, useLocation, useParams } from "react-router-dom";
import { actionGoodById } from "../../actions/actionGoodById";
import { actionGoodsPopular } from "../../actions/actionGoodsPopular";
import { actionOrders } from "../../actions/actionOrders";
import { AdminLayoutPage } from "../admin/AdminLayoutPage";
import { CCartPage } from "../CartPage";
import { CProtectedRoute } from "../common/ProtectedRoute";
import { CDashboardPage } from "../DashboardPage";
import { GoodPage } from "../GoodPage";
import { Aside } from "../layout/Aside";
import Content from "../layout/Content";
import { Footer } from "../layout/Footer";
import { Header } from "../layout/Header";
import { MainPage } from "../MainPage";
import { CAdminGoodsPageContainer } from "./GoodsPageContainer";
import { CAdminGoodsSearchPageContainer } from "./GoodsSearchPageContainer";
const GoodPageContainer = ({ onLoad, onUnmount }) => {
const params = useParams();
useEffect(() => {
onLoad({ _id: params._id });
return () => {
onUnmount && onUnmount();
};
}, []);
return ;
};
const CGoodPageContainer = connect(null, {
onLoad: ({ _id }) => actionGoodById({ _id }),
})(GoodPageContainer);
const DashboardPageContainer = ({ onLoad }) => {
useEffect(() => {
onLoad();
}, []);
return ;
};
const CDashboardPageContainer = connect(null, {
onLoad: () => actionOrders(),
})(DashboardPageContainer);
const MainPageContainer = ({ onLoad, goods }) => {
useEffect(() => {
onLoad();
}, []);
return ;
};
const CMainPageContainer = connect((state) => ({ goods: state.promise?.goodsPopular?.payload || [] }), {
onLoad: () => actionGoodsPopular(),
})(MainPageContainer);
export const LayoutPage = () => {
const location = useLocation();
return (
{!!location.pathname.match(/(\/categor)|(\/good)|(\/order)|(\/admin)+/) && (
)}
} />
}
/>
{/* } exact /> */}
} />
} />
} />
}
/>
}
/>
} />
);
};