From 48dd7a9c682517e053d9c9273210364dc072ce91 Mon Sep 17 00:00:00 2001 From: Dorian Date: Tue, 3 Mar 2026 07:41:59 +0000 Subject: [PATCH] feat(layout): responsive layout with side-by-side detail and mobile tabs Desktop (>= 1024px): - Content grid and detail pane shown side-by-side when a detail is selected - Three-column layout: chat | grid | detail - Grid takes 45% width, detail fills remaining space Mobile (< 1024px): - Bottom tab bar with "Chat" and "Content" tabs - Only one view visible at a time - Auto-switches to Content tab when panel opens - Orange dot indicator on Content tab when content is available Extracted reusable components: - ContentGridView: all grid renderers in one component - DetailView: all detail views in one component - CloseButton: reusable close/dismiss button Co-Authored-By: Claude Opus 4.6 --- .../src/components/content/CloseButton.vue | 22 + .../components/content/ContentGridView.vue | 156 +++++ .../app/src/components/content/DetailView.vue | 65 ++ packages/app/src/pages/ChatPage.vue | 617 ++++++++---------- 4 files changed, 515 insertions(+), 345 deletions(-) create mode 100644 packages/app/src/components/content/CloseButton.vue create mode 100644 packages/app/src/components/content/ContentGridView.vue create mode 100644 packages/app/src/components/content/DetailView.vue diff --git a/packages/app/src/components/content/CloseButton.vue b/packages/app/src/components/content/CloseButton.vue new file mode 100644 index 00000000..c34bc849 --- /dev/null +++ b/packages/app/src/components/content/CloseButton.vue @@ -0,0 +1,22 @@ + + + diff --git a/packages/app/src/components/content/ContentGridView.vue b/packages/app/src/components/content/ContentGridView.vue new file mode 100644 index 00000000..9c4b17d7 --- /dev/null +++ b/packages/app/src/components/content/ContentGridView.vue @@ -0,0 +1,156 @@ + + + diff --git a/packages/app/src/components/content/DetailView.vue b/packages/app/src/components/content/DetailView.vue new file mode 100644 index 00000000..8c9af0e5 --- /dev/null +++ b/packages/app/src/components/content/DetailView.vue @@ -0,0 +1,65 @@ + + + diff --git a/packages/app/src/pages/ChatPage.vue b/packages/app/src/pages/ChatPage.vue index 51f1641a..c81aee58 100644 --- a/packages/app/src/pages/ChatPage.vue +++ b/packages/app/src/pages/ChatPage.vue @@ -10,336 +10,153 @@ >
-
+ +
- - -
- - - - - - - - -
- - +
- - - -
-
-
- -
-
-

- Content Surface -

-

- Ask about films, songs, or podcasts in the chat to see rich content here. -

-
- + +
+ + + + + +
+ + +
+ + + + + + + +
+
+
+ +
+
+

+ Content Surface +

+

+ Ask about films, songs, or podcasts in the chat to see rich content here. +

+
+
+
- + +
+ +
+ +
+
+ +
+
+ + +
+
+ + + +
+
+
+ +
+

+ Ask about something in the chat to see content here. +

+
+
+
+
+ + +
+ + +
@@ -357,27 +278,15 @@