From cd8f4c6b4c17fe7488cc8f8c3df6ce265fa9885c Mon Sep 17 00:00:00 2001 From: Lee Robinson Date: Fri, 28 Jul 2023 17:00:48 -0500 Subject: [PATCH] Fix hydration error (#1117) --------- Co-authored-by: Michael Novotny --- components/cart/add-to-cart.tsx | 21 +++-- components/product/variant-selector.tsx | 113 +++++++++--------------- 2 files changed, 56 insertions(+), 78 deletions(-) diff --git a/components/cart/add-to-cart.tsx b/components/cart/add-to-cart.tsx index 15582acc3..d737b6678 100644 --- a/components/cart/add-to-cart.tsx +++ b/components/cart/add-to-cart.tsx @@ -15,7 +15,7 @@ export function AddToCart({ variants: ProductVariant[]; availableForSale: boolean; }) { - const [selectedVariantId, setSelectedVariantId] = useState(variants[0]?.id); + const [selectedVariantId, setSelectedVariantId] = useState(undefined); const router = useRouter(); const searchParams = useSearchParams(); const [isPending, startTransition] = useTransition(); @@ -27,17 +27,24 @@ export function AddToCart({ ) ); - if (variant) { - setSelectedVariantId(variant.id); - } + setSelectedVariantId(variant?.id); }, [searchParams, variants, setSelectedVariantId]); + const title = !availableForSale + ? 'Out of stock' + : !selectedVariantId + ? 'Please select options' + : undefined; + return (