diff --git a/.gitignore b/.gitignore
index f21e3db1..7ecf8651 100644
--- a/.gitignore
+++ b/.gitignore
@@ -9,6 +9,7 @@ dist-ssr
server/dist
public/dist
.yarn/install-state.gz
+yarn.lock
.pnp
.pnp.js
diff --git a/.yarn/cache/react-toastify-npm-11.0.5-6e5a4fd835-50f5b81323.zip b/.yarn/cache/react-toastify-npm-11.0.5-6e5a4fd835-50f5b81323.zip
new file mode 100644
index 00000000..afacc668
Binary files /dev/null and b/.yarn/cache/react-toastify-npm-11.0.5-6e5a4fd835-50f5b81323.zip differ
diff --git a/apps/nowait-admin/tsconfig.app.tsbuildinfo b/apps/nowait-admin/tsconfig.app.tsbuildinfo
index 695e97be..4056a50e 100644
--- a/apps/nowait-admin/tsconfig.app.tsbuildinfo
+++ b/apps/nowait-admin/tsconfig.app.tsbuildinfo
@@ -1 +1 @@
-{"root":["./src/App.tsx","./src/main.tsx","./src/vite-env.d.ts","./src/components/AdminSidebar.tsx","./src/components/ImageBox.tsx","./src/components/MenuItem.tsx","./src/components/MobileMenuBar.tsx","./src/components/RedBadge.tsx","./src/components/closeButton.tsx","./src/hooks/usePostAdminLogin.tsx","./src/hooks/useWindowWidth.tsx","./src/layout/AdminLayout.tsx","./src/pages/AdminAnalytics/AdminAnalytics.tsx","./src/pages/AdminAuth/AdminAuth.tsx","./src/pages/AdminHome/AdminHome.tsx","./src/pages/AdminHome/components/CardBox.tsx","./src/pages/AdminHome/components/RoundTabButton.tsx","./src/pages/AdminHome/components/WaitingCard.tsx","./src/pages/AdminOrders/AdminOrders.tsx","./src/pages/AdminOrders/CookedPage.tsx","./src/pages/AdminOrders/OrderCard.tsx","./src/pages/LoingPage/LoginPage.tsx","./src/pages/NotFound/NotFound.tsx","./src/utils/UserApi.tsx"],"version":"5.8.3"}
+{"root":["./src/App.tsx","./src/main.tsx","./src/vite-env.d.ts","./src/components/AdminSidebar.tsx","./src/components/ImageBox.tsx","./src/components/MenuItem.tsx","./src/components/MobileMenuBar.tsx","./src/components/RedBadge.tsx","./src/components/closeButton.tsx","./src/hooks/useGetReservationList.tsx","./src/hooks/usePostAdminLogin.tsx","./src/hooks/useWindowWidth.tsx","./src/layout/AdminLayout.tsx","./src/pages/AdminAnalytics/AdminAnalytics.tsx","./src/pages/AdminAuth/AdminAuth.tsx","./src/pages/AdminHome/AdminHome.tsx","./src/pages/AdminHome/components/CardBox.tsx","./src/pages/AdminHome/components/RoundTabButton.tsx","./src/pages/AdminHome/components/WaitingCard.tsx","./src/pages/AdminOrders/AdminOrders.tsx","./src/pages/AdminOrders/CookedPage.tsx","./src/pages/AdminOrders/OrderCard.tsx","./src/pages/LoingPage/LoginPage.tsx","./src/pages/NotFound/NotFound.tsx","./src/utils/UserApi.tsx"],"errors":true,"version":"5.8.3"}
\ No newline at end of file
diff --git a/apps/nowait-user/package.json b/apps/nowait-user/package.json
index bf266d2a..86052587 100644
--- a/apps/nowait-user/package.json
+++ b/apps/nowait-user/package.json
@@ -18,6 +18,7 @@
"react": "^19.1.0",
"react-dom": "^19.1.0",
"react-router-dom": "^7.6.2",
+ "react-toastify": "^11.0.5",
"zustand": "^5.0.6"
},
"devDependencies": {
diff --git a/apps/nowait-user/src/App.tsx b/apps/nowait-user/src/App.tsx
index 37a97a5f..ef11c3fa 100644
--- a/apps/nowait-user/src/App.tsx
+++ b/apps/nowait-user/src/App.tsx
@@ -1,6 +1,8 @@
import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
import Router from "./routes/Router";
import { BrowserRouter } from "react-router-dom";
+import GlobalToast from "./components/common/toast/Toast";
+import 'react-toastify/dist/ReactToastify.css';
function App() {
const queryClient = new QueryClient();
@@ -9,6 +11,7 @@ function App() {
+
);
diff --git a/apps/nowait-user/src/assets/icon/minus.svg b/apps/nowait-user/src/assets/icon/minus.svg
index 065671b3..f11159e6 100644
--- a/apps/nowait-user/src/assets/icon/minus.svg
+++ b/apps/nowait-user/src/assets/icon/minus.svg
@@ -1,3 +1,3 @@
diff --git a/apps/nowait-user/src/components/SmallActionButton.tsx b/apps/nowait-user/src/components/SmallActionButton.tsx
new file mode 100644
index 00000000..4c9cc4e4
--- /dev/null
+++ b/apps/nowait-user/src/components/SmallActionButton.tsx
@@ -0,0 +1,30 @@
+interface PropsType {
+ type?: "button" | "submit" | "reset";
+ ariaLabel: string;
+ children: React.ReactNode;
+ onClick: () => void;
+ icon?: React.ReactNode;
+ iconPosition?: "left" | "right";
+ className?: string;
+}
+export const SmallActionButton = ({
+ type = "button",
+ children,
+ onClick,
+ ariaLabel,
+
+ className,
+}: PropsType) => {
+ return (
+
+ );
+};
diff --git a/apps/nowait-user/src/components/MenuList.tsx b/apps/nowait-user/src/components/common/MenuList.tsx
similarity index 58%
rename from apps/nowait-user/src/components/MenuList.tsx
rename to apps/nowait-user/src/components/common/MenuList.tsx
index 87a32fac..5d19807f 100644
--- a/apps/nowait-user/src/components/MenuList.tsx
+++ b/apps/nowait-user/src/components/common/MenuList.tsx
@@ -1,5 +1,5 @@
import { useNavigate, useParams } from "react-router-dom";
-import type { MenuType } from "../types/order/menu";
+import type { MenuType } from "../../types/order/menu";
const dummyData: MenuType[] = [
{
@@ -25,9 +25,25 @@ const dummyData: MenuType[] = [
price: 9000,
image: "",
},
+ {
+ id: "4",
+ name: "파인애플 샤베트2",
+ description:
+ "시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.",
+ price: 9000,
+ image: "",
+ },
+ {
+ id: "5",
+ name: "파인애플 샤베트3",
+ description:
+ "시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.시원한 파인애플 샤베트 입니다.",
+ price: 9000,
+ image: "",
+ },
];
-const MenuList = ({ mode } : { mode: string }) => {
+const MenuList = ({ mode }: { mode: string }) => {
const navigate = useNavigate();
const { storeId } = useParams();
return (
@@ -39,7 +55,9 @@ const MenuList = ({ mode } : { mode: string }) => {