middleware('locale') ->group(function () { // No standalone cart page — the drawer (checkout::drawer) is the cart. Route::get('checkout', [CheckoutController::class, 'show']) ->name('checkout.show'); Route::post('checkout/address', [CheckoutController::class, 'saveAddress']) ->name('checkout.address.save'); Route::post('checkout/shipping-option', [CheckoutController::class, 'selectShippingOption']) ->name('checkout.shipping-option.select'); Route::post('checkout/payment-method', [CheckoutController::class, 'selectPaymentMethod']) ->name('checkout.payment-method.select'); Route::post('checkout/place-order', [CheckoutController::class, 'placeOrder']) ->name('checkout.place-order'); Route::get('checkout/order-status', [CheckoutController::class, 'orderStatus']) ->name('checkout.order-status'); Route::get('checkout/confirmation', [CheckoutController::class, 'confirmation']) ->name('checkout.confirmation'); Route::post('cart/lines', [CartController::class, 'add']) ->name('checkout.cart.add'); Route::patch('cart/lines/{line}', [CartController::class, 'updateLine']) ->whereNumber('line') ->name('checkout.cart.update'); Route::delete('cart/lines/{line}', [CartController::class, 'remove']) ->whereNumber('line') ->name('checkout.cart.remove'); Route::post('cart/coupon', [CartController::class, 'applyCoupon']) ->name('checkout.cart.coupon.apply'); Route::delete('cart/coupon', [CartController::class, 'removeCoupon']) ->name('checkout.cart.coupon.remove'); });