From e9fa5e65676b5e4b1df85a872c4a067030fbffed Mon Sep 17 00:00:00 2001 From: "Olomana (multica agent)" Date: Fri, 6 Nov 2026 18:24:42 -0800 Subject: [PATCH] PWS-11: Replace card download/print buttons with full-screen view Clicking a card image now enlarges it to fill the screen. Remove the download and print buttons, and restore the Front/Back label in the card image footer; only the page captions were meant to go. Co-Authored-By: Claude Opus 5.5 Co-authored-by: multica-agent --- .claude/CLAUDE.md | 4 +-- .claude/rules/architecture.md | 2 +- components/PrintCardButton.tsx | 44 ------------------------- components/RecipeCardImage.tsx | 60 ++++++++++++++++++++++++++++++++++ components/RecipeCardPanel.tsx | 45 +++++++------------------ lib/recipe-card.tsx | 4 +-- recipes/README.md | 2 +- 7 files changed, 77 insertions(+), 84 deletions(-) delete mode 100644 components/PrintCardButton.tsx create mode 100644 components/RecipeCardImage.tsx diff --git a/.claude/CLAUDE.md b/.claude/CLAUDE.md index dd329f2..943f323 100644 --- a/.claude/CLAUDE.md +++ b/.claude/CLAUDE.md @@ -39,8 +39,8 @@ components/ RecipeGridCard.tsx # Recipe grid card for listing page RecipeTabs.tsx # Tabbed recipe sections (client) RecipeMarkdown.tsx # Renders a parsed markdown tree to React (server) - RecipeCardPanel.tsx # Recipe Card tab: preview, download, print (server) - PrintCardButton.tsx # Prints card images at 5×7 in (client) + RecipeCardPanel.tsx # Recipe Card tab: card image previews (server) + RecipeCardImage.tsx # Card preview that enlarges to full screen on click (client) RecipePageLayout.tsx # Recipe detail page layout (server component) lib/ diff --git a/.claude/rules/architecture.md b/.claude/rules/architecture.md index 6e58536..a5a83af 100644 --- a/.claude/rules/architecture.md +++ b/.claude/rules/architecture.md @@ -17,5 +17,5 @@ - Paragraphs containing only images are converted to `
` elements during parsing (caption from the image title), so there's no `

` nesting - Card fonts are read from `node_modules/@fontsource/*` at build time; satori needs woff/ttf (not woff2) and doesn't support variable fonts - `lib/recipes.ts` uses Node.js `fs` — server-side only; never import in client components -- Build warnings about `` vs `` in RecipeMarkdown and RecipeCardPanel are intentional +- Build warnings about `` vs `` in RecipeMarkdown and RecipeCardImage are intentional - Never add redundant ARIA roles on semantic elements (`
`, `