diff --git a/client/src/App.jsx b/client/src/App.jsx index 530a443..3894562 100644 --- a/client/src/App.jsx +++ b/client/src/App.jsx @@ -8,7 +8,6 @@ import { resetMenu, updateOrderStatus } from "./api.js"; -import AppHeader from "./components/AppHeader.jsx"; import MenuPage from "./pages/MenuPage.jsx"; import OrderPage from "./pages/OrderPage.jsx"; import QueuePage from "./pages/QueuePage.jsx"; @@ -169,23 +168,20 @@ export default function App() { return (
- { - setAdminUnlocked(false); - setView("order"); - }} - view={view} - setView={setView} - /> - {view === "order" && ( { + setAdminUnlocked(false); + setView("order"); + }} + view={view} + setView={setView} menu={menu} settings={settings} selectedCategory={selectedCategory} @@ -212,6 +208,18 @@ export default function App() { {view === "queue" && ( { + setAdminUnlocked(false); + setView("order"); + }} + view={view} + setView={setView} orders={orders} updateOrderStatus={updateOrderStatus} deleteOrder={deleteOrder} @@ -222,6 +230,18 @@ export default function App() { {view === "menu" && ( { + setAdminUnlocked(false); + setView("order"); + }} + view={view} + setView={setView} menu={menu} menuForm={menuForm} setMenuForm={setMenuForm} diff --git a/client/src/components/AppHeader.jsx b/client/src/components/PageBar.jsx similarity index 93% rename from client/src/components/AppHeader.jsx rename to client/src/components/PageBar.jsx index 976bbc8..e2ec1dc 100644 --- a/client/src/components/AppHeader.jsx +++ b/client/src/components/PageBar.jsx @@ -5,7 +5,7 @@ const tabLabels = { menu: "Menu Admin" }; -export default function AppHeader({ +export default function PageBar({ adminUnlocked, logoPressing, onLogoPointerDown, @@ -19,7 +19,7 @@ export default function AppHeader({ const visibleTabs = adminUnlocked ? ["queue", "menu"] : []; return ( -
+
+
); } diff --git a/client/src/pages/MenuPage.jsx b/client/src/pages/MenuPage.jsx index c0a5edd..03666a5 100644 --- a/client/src/pages/MenuPage.jsx +++ b/client/src/pages/MenuPage.jsx @@ -1,7 +1,17 @@ +import PageBar from "../components/PageBar.jsx"; import { formatCurrency } from "../lib/formatters.js"; import { initialBuilder } from "../lib/order.js"; export default function MenuPage({ + adminUnlocked, + logoPressing, + onLogoPointerDown, + onLogoPointerUp, + onLogoPointerLeave, + onLogoPointerCancel, + onHideAdmin, + view, + setView, menu, menuForm, setMenuForm, @@ -16,6 +26,17 @@ export default function MenuPage({ }) { return (
+
diff --git a/client/src/pages/OrderPage.jsx b/client/src/pages/OrderPage.jsx index c6aca71..45b7d70 100644 --- a/client/src/pages/OrderPage.jsx +++ b/client/src/pages/OrderPage.jsx @@ -2,6 +2,7 @@ import milkTeaBadge from "../../../assets/milk-tea-badge.png"; import fruitTeaBadge from "../../../assets/fruit-tea-badge-transparent.png"; import slushBadge from "../../../assets/slush-badge.png"; import OptionGroup from "../components/OptionGroup.jsx"; +import PageBar from "../components/PageBar.jsx"; import { categoryMonogram, HERO_CATEGORIES, @@ -18,6 +19,15 @@ const heroCategoryImages = { }; export default function OrderPage({ + adminUnlocked, + logoPressing, + onLogoPointerDown, + onLogoPointerUp, + onLogoPointerLeave, + onLogoPointerCancel, + onHideAdmin, + view, + setView, menu, settings, selectedCategory, @@ -61,6 +71,17 @@ export default function OrderPage({ return (
+ {orderMode && (
))}
diff --git a/client/src/pages/QueuePage.jsx b/client/src/pages/QueuePage.jsx index effe795..155ee36 100644 --- a/client/src/pages/QueuePage.jsx +++ b/client/src/pages/QueuePage.jsx @@ -1,9 +1,19 @@ +import PageBar from "../components/PageBar.jsx"; import SummaryCard from "../components/SummaryCard.jsx"; import { formatCurrency, formatTime, titleCase } from "../lib/formatters.js"; const queueStatuses = ["new", "making", "ready"]; export default function QueuePage({ + adminUnlocked, + logoPressing, + onLogoPointerDown, + onLogoPointerUp, + onLogoPointerLeave, + onLogoPointerCancel, + onHideAdmin, + view, + setView, orders, updateOrderStatus, deleteOrder, @@ -12,6 +22,17 @@ export default function QueuePage({ }) { return (
+
order.status !== "completed").length} /> order.status === "new").length} /> diff --git a/client/src/styles.css b/client/src/styles.css index 3c27b9b..7e4fad0 100644 --- a/client/src/styles.css +++ b/client/src/styles.css @@ -60,28 +60,23 @@ button { padding: 0.9rem 1rem 1rem; } -.topbar { +.page-bar { display: flex; justify-content: space-between; gap: 1rem; align-items: center; - margin-bottom: 0.85rem; - padding: 0.85rem 1.05rem; - border: 1px solid rgba(16, 16, 16, 0.08); - border-radius: 30px; - background: - linear-gradient(135deg, rgba(255, 252, 247, 0.96), rgba(250, 239, 214, 0.94)); - box-shadow: var(--shadow); + grid-column: 1 / -1; + margin-bottom: 0.2rem; } -.topbar h1, +.page-bar h1, .panel h2, .panel h3 { margin: 0.2rem 0 0; font-family: Georgia, "Times New Roman", serif; } -.topbar h1 { +.page-bar h1 { font-weight: 800; } @@ -292,11 +287,6 @@ button { object-fit: contain; } -.hero-category-btn span { - font-weight: 800; - letter-spacing: 0.02em; -} - .mode-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); @@ -643,7 +633,7 @@ select { } @media (max-width: 980px) { - .topbar, + .page-bar, .screen, .mode-hero, .hero-category-row, @@ -654,7 +644,7 @@ select { grid-template-columns: 1fr; } - .topbar { + .page-bar { align-items: flex-start; flex-direction: column; }