Commit Graph

  • 3aa770321c feat(plan5): creationSheets — lecture lignes en attente (TDD) C_Ma_For 2026-06-09 09:40:23 +02:00
  • 2e9df3659f feat(plan5): types création + modèle Prisma ProductCreation C_Ma_For 2026-06-09 09:33:11 +02:00
  • 1e48ca142f fix: remplacer status=any par deux appels active+draft (API REST Shopify) C_Ma_For 2026-06-09 00:05:53 +02:00
  • c89ab1c818 feat: lire tous les onglets Google Sheets (un onglet par famille de produits) C_Ma_For 2026-06-08 23:56:22 +02:00
  • 4263b8afd0 fix: onglet Google Sheets par défaut MATRICE au lieu de Produits C_Ma_For 2026-06-08 23:52:09 +02:00
  • 4db43f833b feat(plan4): page /parametres avec onglets Connexions + Utilisateurs plan4-deployed C_Ma_For 2026-06-08 23:29:32 +02:00
  • 4e4268d678 feat(plan4): composants ConnectionStatus + UsersManager C_Ma_For 2026-06-08 23:28:29 +02:00
  • 1934d0b655 feat(plan4): page /produits avec catalogue Shopify + filtres C_Ma_For 2026-06-08 23:26:41 +02:00
  • 119123e006 feat(plan4): composants ProductFiltersBar + ProductTable C_Ma_For 2026-06-08 23:26:01 +02:00
  • 5825640105 feat(plan4): API GET /api/admin/connections/test C_Ma_For 2026-06-08 23:23:53 +02:00
  • f27b62a403 feat(plan4): API CRUD /api/admin/users (TDD) C_Ma_For 2026-06-08 23:23:10 +02:00
  • 9303aab78e feat(plan4): API GET /api/products/list avec filtre statut (TDD) C_Ma_For 2026-06-08 23:21:18 +02:00
  • 6dd6dc301e feat(plan4): types CatalogProduct, ProductFilters, ProductListResponse C_Ma_For 2026-06-08 23:18:29 +02:00
  • e576df334a fix: fusionner imports next/server dupliqués C_Ma_For 2026-06-08 23:05:51 +02:00
  • dc88e56f49 fix: supprimer API_VERSION inutilisé + eslint-disable _req C_Ma_For 2026-06-08 22:59:30 +02:00
  • e04e286111 fix: API Key Google Sheets (remplace service account) + signatures routes GET C_Ma_For 2026-06-08 22:52:40 +02:00
  • abf5210de6 fix: corriger erreurs ESLint sync (apostrophes, imports inutilisés) plan3-deployed C_Ma_For 2026-06-08 22:37:54 +02:00
  • 97f011a24b feat: module Sync Sheets complet — stepper 4 étapes, diff, streaming, historique C_Ma_For 2026-06-08 22:26:37 +02:00
  • cdbddddaec feat: composant SyncHistory C_Ma_For 2026-06-08 22:07:10 +02:00
  • 94993c3cbc feat: composant SyncProgress C_Ma_For 2026-06-08 22:07:04 +02:00
  • 9c3ec2a953 feat: composant DiffTable C_Ma_For 2026-06-08 22:06:53 +02:00
  • e6a670c67b feat: composant SyncStepper C_Ma_For 2026-06-08 22:06:46 +02:00
  • e9d4f9dc20 feat: API route GET /api/sync/history (TDD) C_Ma_For 2026-06-08 21:04:45 +02:00
  • 16fece8ca9 feat: API route POST /api/sync/execute (NDJSON streaming) C_Ma_For 2026-06-08 21:04:45 +02:00
  • d4b54efa17 feat: API route GET /api/sync/preview (TDD) C_Ma_For 2026-06-08 21:04:00 +02:00
  • 2988ecab0b feat: logique diff Sheets/Shopify (TDD) C_Ma_For 2026-06-08 20:51:21 +02:00
  • f415138103 feat: client Shopify sync (fetch all products + CRUD) C_Ma_For 2026-06-08 20:47:35 +02:00
  • c4010e8c5e feat: client Google Sheets + parseSheetRows (TDD) C_Ma_For 2026-06-08 20:44:26 +02:00
  • 1daf9bda72 feat: types sync + dépendance googleapis C_Ma_For 2026-06-08 20:42:00 +02:00
  • cf5bbf91d5 feat: module Images complet — drop, traitement IA, Shopify, upload plan2-deployed C_Ma_For 2026-06-08 20:00:20 +02:00
  • fe9c3b9ccb fix: inclure 'uploading' dans le compteur processing de GlobalActions C_Ma_For 2026-06-08 19:18:40 +02:00
  • 568fe0d38e feat: composants Lightbox plein écran + GlobalActions barre d'upload C_Ma_For 2026-06-08 17:45:22 +02:00
  • 683db58f4b feat: composant ImageCard avec miniatures avant/après, feather, rotation, upload C_Ma_For 2026-06-08 17:44:45 +02:00
  • 4c1cf73435 feat: composant DropZone drag & drop HEIC/JPG/PNG/ZIP C_Ma_For 2026-06-08 17:43:40 +02:00
  • 901199c45d feat: hook useImages — pipeline HEIC→IA→feather→rotation→search→upload C_Ma_For 2026-06-08 17:41:00 +02:00
  • 50469700d0 feat: utilitaires client heicConverter, bgRemover, imageRotator, zipImporter (TS) C_Ma_For 2026-06-08 17:30:01 +02:00
  • a5ced27e93 feat: API route POST /api/images/upload (TDD) C_Ma_For 2026-06-08 17:25:40 +02:00
  • c9422be78e feat: API route GET /api/products/search (TDD) C_Ma_For 2026-06-08 17:15:58 +02:00
  • 53008d1d43 fix: valider data.image.src dans uploadProductImage C_Ma_For 2026-06-08 17:10:26 +02:00
  • 9675366db9 feat: client Shopify Admin REST API (search + upload) C_Ma_For 2026-06-08 16:21:55 +02:00
  • c97a7faaa9 feat: types ImageItem + dépendances heic2any jszip C_Ma_For 2026-06-08 15:47:34 +02:00
  • b25a712a69 fix: correct adapter import name PrismaBetterSqlite3 in seed.mjs C_Ma_For 2026-06-07 11:42:57 +02:00
  • ee70ea377f fix: use better-sqlite3 adapter in seed.mjs (Prisma 7 requirement) C_Ma_For 2026-06-07 11:41:42 +02:00
  • 8bd49050f6 fix: add .dockerignore to exclude .env files from build context (was overriding DATABASE_URL) C_Ma_For 2026-06-07 02:00:21 +02:00
  • 79ebb6ced3 fix: use npm ci --omit=dev in runner (resolves all transitive prisma deps) C_Ma_For 2026-06-07 01:37:03 +02:00
  • d80e50e9de fix: recreate .bin/prisma as symlink in runner (preserves __dirname for WASM resolution) C_Ma_For 2026-06-07 01:32:37 +02:00
  • f022238a40 fix: copy full node_modules/prisma package for WASM files in runner stage C_Ma_For 2026-06-07 01:28:41 +02:00
  • f23c954ecd chore: add public/ directory (required by Next.js standalone build) C_Ma_For 2026-06-07 01:25:00 +02:00
  • 96700ae252 fix: eslint disable-next-line for required any casts (NextAuth v4 limitation) C_Ma_For 2026-06-07 01:22:07 +02:00
  • 99c3380d00 feat: dockerfile + docker-compose + déploiement VPS gestion.materiaux-destock.fr C_Ma_For 2026-06-07 00:27:16 +02:00
  • 51f87c0672 feat: app shell avec sidebar, header et pages placeholder C_Ma_For 2026-06-07 00:20:57 +02:00
  • 8d06706a24 feat: page login avec gestion erreurs et rate limiting C_Ma_For 2026-06-07 00:20:36 +02:00
  • 44b3b4dd8d fix: improve type safety in NextAuth callbacks (remove any, add explanatory comments) C_Ma_For 2026-06-07 00:08:11 +02:00
  • 38dc6efc09 feat: middleware protection routes + restriction admin /parametres C_Ma_For 2026-06-07 00:05:28 +02:00
  • f9a14b009a feat: NextAuth credentials + JWT 8h + rate limiting C_Ma_For 2026-06-07 00:05:14 +02:00
  • 2acf899465 feat: rate limiting connexion (5 essais / 15 min) C_Ma_For 2026-06-06 17:24:19 +02:00
  • dbb155cb3a fix: remove hardcoded seed password from package.json (use SEED_ADMIN_PASSWORD env var) C_Ma_For 2026-06-06 17:22:25 +02:00
  • 192def9008 feat: prisma schema User + SyncRun + seed admin C_Ma_For 2026-06-06 17:15:54 +02:00
  • 1b60fd79f7 chore: replace boilerplate page.tsx with minimal placeholder C_Ma_For 2026-06-06 16:21:34 +02:00
  • f435b1f6cc chore: scaffold Next.js 14 app C_Ma_For 2026-06-06 16:04:15 +02:00