From f81cc7d3adca573ea347f2e7ed0fb6e2eabab5f7 Mon Sep 17 00:00:00 2001 From: varutasu <104105839+varutasu@users.noreply.github.com> Date: Wed, 3 Jun 2026 16:58:06 -0500 Subject: [PATCH] Extract CardDetailDeckModal from card detail page (Brief 2). (#83) Moves add-to-deck modal markup into components/CardDetailDeckModal.js. Co-authored-by: Cursor --- components/CardDetailDeckModal.js | 75 +++++++++++++++++++++++++++++++ pages/card/[id].js | 73 ++++++------------------------ 2 files changed, 88 insertions(+), 60 deletions(-) create mode 100644 components/CardDetailDeckModal.js diff --git a/components/CardDetailDeckModal.js b/components/CardDetailDeckModal.js new file mode 100644 index 0000000..d270bda --- /dev/null +++ b/components/CardDetailDeckModal.js @@ -0,0 +1,75 @@ +export default function CardDetailDeckModal({ + isOpen, + card, + decks, + selectedDeck, + onSelectedDeckChange, + onAdd, + onClose, +}) { + if (!isOpen || !card) { + return null; + } + + return ( +
+
+

+ Add to Deck +

+
+ + +
+
+ + +
+
+
+ ); +} diff --git a/pages/card/[id].js b/pages/card/[id].js index 058b0e7..aa1b700 100644 --- a/pages/card/[id].js +++ b/pages/card/[id].js @@ -5,6 +5,7 @@ import Layout from '../../components/Layout'; import { useAuth } from '../../lib/use-auth'; import CollectionSelectionModal from '../../components/CollectionSelectionModal'; import CardDetailQuantityModal from '../../components/CardDetailQuantityModal'; +import CardDetailDeckModal from '../../components/CardDetailDeckModal'; import { ManaCost, ColorIdentity, AdvancedManaCost } from '../../components/ManaSymbols'; import ManaSymbolSettings from '../../components/ManaSymbolSettings'; import { VOCAB, collectionDisplayName } from '../../lib/collection-vocabulary.js'; @@ -801,66 +802,18 @@ export default function CardDetail() { }} /> - {/* Deck Modal */} - {showDeckModal && ( -
-
-

- Add to Deck -

-
- - -
-
- - -
-
-
- )} + { + setShowDeckModal(false); + setSelectedDeck(''); + }} + /> );