diff --git a/packages/app/src/components/chat/ChatMessage.vue b/packages/app/src/components/chat/ChatMessage.vue index 535d3666..4fd4da9f 100644 --- a/packages/app/src/components/chat/ChatMessage.vue +++ b/packages/app/src/components/chat/ChatMessage.vue @@ -57,6 +57,15 @@ /> +
+ +
+
View all {{ inlineImages.length }} images → +
diff --git a/packages/app/src/components/content/FileTreeNode.vue b/packages/app/src/components/content/FileTreeNode.vue new file mode 100644 index 00000000..ec6ebebc --- /dev/null +++ b/packages/app/src/components/content/FileTreeNode.vue @@ -0,0 +1,79 @@ + + + diff --git a/packages/app/src/components/content/MagazineGrid.vue b/packages/app/src/components/content/MagazineGrid.vue index 45b9389a..e4b9ea64 100644 --- a/packages/app/src/components/content/MagazineGrid.vue +++ b/packages/app/src/components/content/MagazineGrid.vue @@ -14,17 +14,38 @@
- -
-

- In response to -

-

- {{ headlineText }} -

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

+ In response to +

+

+ {{ headlineText }} +

+
@@ -59,7 +80,7 @@ :class="isDark ? 'bg-[#0a0a0a] hover:bg-white/[0.03]' : 'bg-[#faf9f6] hover:bg-black/[0.02]'" - @click="tile.section?.url && openLink(tile.section.url)"> + @click="tile.section && openTile(tile.section)">

@@ -91,7 +112,7 @@ ? isDark ? 'bg-white/[0.04]' : 'bg-black/[0.04]' : '' ]" - @click="tile.section?.url && openLink(tile.section.url)"> + @click="tile.section && openTile(tile.section)">

@@ -127,8 +148,7 @@ diff --git a/packages/app/src/components/content/NewsGrid.vue b/packages/app/src/components/content/NewsGrid.vue index 50419311..d50eee5e 100644 --- a/packages/app/src/components/content/NewsGrid.vue +++ b/packages/app/src/components/content/NewsGrid.vue @@ -122,7 +122,6 @@ import { ref, computed } from 'vue' import type { WebSearchResult } from '@aiui/core/types/message' import { useTheme } from '@/composables/useTheme' import { useContentPanel } from '@/composables/useContentPanel' -import { useArticleOverlayStore } from '@/stores/articleOverlay' const props = withDefaults(defineProps<{ articles: WebSearchResult[] @@ -138,8 +137,7 @@ const props = withDefaults(defineProps<{ }) const { isDark } = useTheme() -const { openArticleDetail } = useContentPanel() -const overlayStore = useArticleOverlayStore() +const { openArticleDetail, openWebsiteDetail } = useContentPanel() const search = ref('') const failedImgs = ref>(new Set()) @@ -172,7 +170,7 @@ function faviconUrl(url: string): string | null { function openArticle(article: WebSearchResult) { if (props.variant === 'websites') { - overlayStore.open(article.url, article.title, undefined, article.imgSrc) + openWebsiteDetail(article) } else { openArticleDetail(article) } diff --git a/packages/app/src/components/content/PlaceCard.vue b/packages/app/src/components/content/PlaceCard.vue new file mode 100644 index 00000000..6f9b84d1 --- /dev/null +++ b/packages/app/src/components/content/PlaceCard.vue @@ -0,0 +1,68 @@ + + + diff --git a/packages/app/src/components/content/PlaceDetail.vue b/packages/app/src/components/content/PlaceDetail.vue new file mode 100644 index 00000000..270be57a --- /dev/null +++ b/packages/app/src/components/content/PlaceDetail.vue @@ -0,0 +1,197 @@ + + + diff --git a/packages/app/src/components/content/PlaceGrid.vue b/packages/app/src/components/content/PlaceGrid.vue new file mode 100644 index 00000000..2d91a689 --- /dev/null +++ b/packages/app/src/components/content/PlaceGrid.vue @@ -0,0 +1,142 @@ + + + diff --git a/packages/app/src/components/content/ProjectGrid.vue b/packages/app/src/components/content/ProjectGrid.vue new file mode 100644 index 00000000..59bf5f10 --- /dev/null +++ b/packages/app/src/components/content/ProjectGrid.vue @@ -0,0 +1,140 @@ + + + diff --git a/packages/app/src/components/content/WebsiteDetail.vue b/packages/app/src/components/content/WebsiteDetail.vue new file mode 100644 index 00000000..a665ffa8 --- /dev/null +++ b/packages/app/src/components/content/WebsiteDetail.vue @@ -0,0 +1,76 @@ +