Commit Graph

8 Commits

Author SHA1 Message Date
gilles d6d3acd1fe ux(fab): repositionner le bouton action sur la nav bar v0.4.7
FAB déplacé sur la barre de nav (bottom: 10px) au lieu de flotter
au-dessus de la liste — liste entièrement visible sur Shopping,
Todos et Notes. paddingBottom liste réduit à 64px (hauteur nav seule).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-25 09:51:33 +02:00
gilles 880f7f2125 fix+ux(shopping): suppression via bottom sheet, majuscule auto, icône FAB v0.4.6
- Bug: décrémentation à 0 d'un article pré-chargé (existingItemId) conserve
  la sélection à qty=0 (marqué pour DELETE) → bouton ✓ devient accessible
  Visuel: fond rouge + barré + opacité 0.6 pour les articles à supprimer
- UX: première lettre en majuscule auto lors de l'ajout d'un article libre
- UX: FAB remplace '+' par fa-cart-plus pour mieux signifier l'ajout à la liste

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-25 09:39:37 +02:00
gilles a1ecd0945e feat(shopping): optimisation bottom sheet — icônes haut, tab bar couverte v0.4.5
- Boutons Annuler (fa-xmark, outline err) et Valider (fa-check, ok)
  déplacés en haut du sheet, pill shape, touch target 48px
- Suppression du bouton sticky en bas
- zIndex sheet 70 > tab bar 50 : bottom sheet couvre la nav
- maxHeight 85dvh → 92dvh pour exploiter l'espace libéré
- Poignée de drag supprimée

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-25 09:22:59 +02:00
gilles a949a22cca feat(shopping): pré-remplissage bottom sheet + toggle catalogue v0.4.4
- openAddSheet() pré-charge les articles non cochés de la liste courante
  (qty existante, PATCH si modifiée / POST si nouvel article)
- Toggle "Ajouter au catalogue" sur les articles libres nouvellement saisis
  (coché par défaut, créé via createProduct puis lié en product_id)
- Bouton "Confirmer (N)" comptant uniquement les actions réelles
  (new items + existing avec qty modifiée)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-25 09:10:46 +02:00
gilles 56f0815667 feat(shopping): bottom sheet multi-select — quantités inline +/- par article v0.4.3
- QtyControls: boutons +/- design system (var(--ok)/var(--err)/var(--bg-5))
- qty=0 → article non sélectionné, seul "+" visible (var(--ok) plein)
- qty>0 → fond teinté vert, "−" + valeur mono + "+" ; "−" retire si qty atteint 1
- Quantité transmise à addItem lors de la confirmation
- Articles libres : même comportement +/- en tête de liste

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-25 08:50:22 +02:00
gilles 8b2081764e chore: bump version v0.4.2 (UX: swipe-edit, bottom-sheet multi-select, user-select)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-25 08:08:35 +02:00
gilles 19c686b4be feat(ux): user-select global, swipe-gauche édition, clavier numérique, versionnage v0.4.0
- user-select:none global (index.css) + reset sur input/textarea/select
- ItemRow: swipe gauche → édition (fond bleu), suppression long press,
  bouton ✕ toujours visible sur mobile
- SwipeableRow: prop onSwipeLeft, révèle rightContent entre seuil/2 et seuil,
  déclenche onSwipeLeft au seuil complet
- TodosPage: onSwipeLeft → édition (remplace double-tap)
- inputMode=decimal sur tous les champs quantité et prix
- formatQty: affiche "2" au lieu de "2.000"
- Versionnage: __APP_VERSION__ injecté par Vite depuis package.json v0.4.0
- HomePage: version affichée à côté du titre (v0.4.0)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-25 07:38:23 +02:00
gilles 1877963f15 feat: scaffold frontend React 18 + Vite 5 + TypeScript
Mise en place de la structure de base du frontend HomeHub : React 18,
Vite 5, TypeScript strict, React Router v6, Tailwind CSS et vite-plugin-pwa
installés. Composants placeholder Layout et HomePage pour que le build
compile sans erreur. Build de production vérifié (dist/ généré, 0 erreur TS).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-24 05:15:21 +02:00