feat(cooking-session): déplie une recette de l'onglet Recettes au lieu de rediriger #28

Merged
kyuno merged 1 commit from feat/cooking-recipes-inline-detail into main 2026-09-04 23:20:42 +02:00
Owner

Contexte

Sur l'onglet Recettes de /cuisiner, cliquer une recette naviguait vers /recettes/:id — on quittait la session de cuisine en cours pour ça.

Changement

  • La ligne devient un <button> (cooking-recipes__row, aria-expanded) qui déplie désormais le détail complet de la recette directement sous elle, chargé à la demande via GET /recipes/:id.
  • Réutilise RecipeDetailPanel tel quel (showActions={false}, même traitement "aperçu" que RecipePickerDialog) plutôt que de réimplémenter une seconde vue "lire une recette".
  • Un seul dépliant ouvert à la fois — même logique que le sous-menu Paramètres de la sidebar (AppLayout's SettingsMenu), cliquer une autre recette referme la précédente.
  • RecipesTab est désormais key-é par semaine comme PlanTab, pour qu'un changement de semaine referme un dépliant devenu obsolète plutôt que de le laisser ouvert sur une recette qui n'est plus la bonne.
  • Clé i18n cookingSession.recipesTab.viewRecipe supprimée (plus d'appelant).

Tests

  • cooking-session-page.cy.ts : nouveau test dédié — déplier/replier, aucune navigation, un seul dépliant ouvert à la fois (cliquer une 2ᵉ recette referme la 1ʳᵉ).
  • cooking-session.feature : nouveau scénario Gherkin dédié.
  • pnpm lint + pnpm --filter web build clean. Suite cooking-session-page.cy.ts + cooking-session.feature : 16/16 passing (Chrome headless).

🤖 Generated with Claude Code

## Contexte Sur l'onglet **Recettes** de `/cuisiner`, cliquer une recette naviguait vers `/recettes/:id` — on quittait la session de cuisine en cours pour ça. ## Changement - La ligne devient un `<button>` (`cooking-recipes__row`, `aria-expanded`) qui déplie désormais le détail complet de la recette **directement sous elle**, chargé à la demande via `GET /recipes/:id`. - Réutilise `RecipeDetailPanel` tel quel (`showActions={false}`, même traitement "aperçu" que `RecipePickerDialog`) plutôt que de réimplémenter une seconde vue "lire une recette". - Un seul dépliant ouvert à la fois — même logique que le sous-menu Paramètres de la sidebar (`AppLayout`'s `SettingsMenu`), cliquer une autre recette referme la précédente. - `RecipesTab` est désormais `key`-é par semaine comme `PlanTab`, pour qu'un changement de semaine referme un dépliant devenu obsolète plutôt que de le laisser ouvert sur une recette qui n'est plus la bonne. - Clé i18n `cookingSession.recipesTab.viewRecipe` supprimée (plus d'appelant). ## Tests - `cooking-session-page.cy.ts` : nouveau test dédié — déplier/replier, aucune navigation, un seul dépliant ouvert à la fois (cliquer une 2ᵉ recette referme la 1ʳᵉ). - `cooking-session.feature` : nouveau scénario Gherkin dédié. - `pnpm lint` + `pnpm --filter web build` clean. Suite `cooking-session-page.cy.ts` + `cooking-session.feature` : **16/16** passing (Chrome headless). 🤖 Generated with [Claude Code](https://claude.com/claude-code)
kyuno added 1 commit 2026-09-04 23:09:38 +02:00
feat(cooking-session): déplie une recette de l'onglet Recettes au lieu de rediriger
Some checks failed
CI / lint (push) Successful in 52s
CI / build (push) Successful in 1m40s
CI / intent-service-test (push) Successful in 3m57s
CI / e2e (push) Successful in 6m32s
CI / test (push) Failing after 13m50s
bdc1b4c9e9
Cliquer sur une recette de l'onglet Recettes de /cuisiner naviguait vers
/recettes/:id, quittant la session de cuisine en cours. La ligne devient un
bouton qui déplie désormais le détail complet de la recette directement
sous elle (RecipeDetailPanel, showActions=false — même traitement "aperçu"
que RecipePickerDialog), chargé à la demande via GET /recipes/:id, un seul
dépliant ouvert à la fois (même logique que le sous-menu Paramètres de la
sidebar). RecipesTab est désormais keyed par semaine comme PlanTab, pour
que changer de semaine referme un dépliant devenu obsolète.

Clé i18n recipesTab.viewRecipe supprimée (plus d'appelant).

Tests : cooking-session-page.cy.ts (déplier/replier, un seul ouvert à la
fois) + cooking-session.feature (scénario dédié). pnpm lint + pnpm --filter
web build clean ; 16/16 tests passants (Chrome headless).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
kyuno merged commit cb43c9c6c5 into main 2026-09-04 23:20:42 +02:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: kyuno/batchCooking#28
No description provided.