From ac58289bb7d316f50547bd979922c861c79784b6 Mon Sep 17 00:00:00 2001 From: Mathieu Date: Fri, 26 Jun 2026 13:35:39 +0200 Subject: [PATCH] feat: auto-fill mockup dimensions and family from Google Sheets - Extend Sheets read range from A1:Z to A1:AZ (52 columns) - Parse longueur, largeur, marque, famille, sousFamille, prixRemise, specificFields - Add /api/products/sheet-info endpoint to fetch product data by ref - Auto-fill family and dimensions on product selection in all 3 mockup entry points - Strengthen carrelage mockup prompt with strict tile-size consistency rules Co-Authored-By: Claude Sonnet 4.6 --- src/app/(dashboard)/mockup/page.tsx | 18 +++- src/app/api/mockup/generate/route.ts | 28 +++++-- src/app/api/products/sheet-info/route.ts | 19 +++++ src/components/mockup/MockupModal.tsx | 8 +- .../mockup/MockupModalFromImage.tsx | 13 ++- src/lib/googleSheets.ts | 83 ++++++++++++++----- src/types/sync.ts | 8 ++ 7 files changed, 142 insertions(+), 35 deletions(-) create mode 100644 src/app/api/products/sheet-info/route.ts diff --git a/src/app/(dashboard)/mockup/page.tsx b/src/app/(dashboard)/mockup/page.tsx index 202bff5..81396da 100644 --- a/src/app/(dashboard)/mockup/page.tsx +++ b/src/app/(dashboard)/mockup/page.tsx @@ -10,6 +10,9 @@ interface Product { shopifyId: string title: string ref: string + famille?: string + longueur?: string + largeur?: string } export default function MockupPage() { @@ -91,7 +94,20 @@ export default function MockupPage() {
{filtered.map(p => (