diff --git a/src/components/orders/OrderStatusView.tsx b/src/components/orders/OrderStatusView.tsx index 281ff27..55a81f0 100644 --- a/src/components/orders/OrderStatusView.tsx +++ b/src/components/orders/OrderStatusView.tsx @@ -1,9 +1,10 @@ -import { Link, useRouter } from '@tanstack/react-router' +import { Link, useNavigate, useRouter } from '@tanstack/react-router' import { AnimatePresence, motion, useReducedMotion } from 'framer-motion' import { useState } from 'react' import type { OrderStatus } from '#/db/schema.ts' import type { OrderItemStatusView } from '#/domain/ordering.ts' +import { useBasket } from '#/lib/basket.tsx' import { advanceSimulatedKitchen, cancelOrderItem, @@ -146,6 +147,8 @@ export const OrderStatusView = ({ backTo = '/orders', }: OrderStatusViewProps) => { const router = useRouter() + const navigate = useNavigate() + const basket = useBasket() const [pendingItemId, setPendingItemId] = useState(null) const [error, setError] = useState(null) const [simulating, setSimulating] = useState(false) @@ -162,6 +165,11 @@ export const OrderStatusView = ({ ? { duration: 0 } : { duration: 0.4, ease: 'easeInOut' as const } + const buyAgain = (item: OrderItemStatusView) => { + basket.add(item.menuItemId, item.buyAgainOptionIds) + void navigate({ to: '/basket' }) + } + const toggleSteps = (orderItemId: number) => { setExpandedItemIds((current) => { const next = new Set(current) @@ -344,9 +352,7 @@ export const OrderStatusView = ({