-
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