diff --git a/src/components/home/HomeFeed.tsx b/src/components/home/HomeFeed.tsx
index c103d982..496cbcd0 100644
--- a/src/components/home/HomeFeed.tsx
+++ b/src/components/home/HomeFeed.tsx
@@ -19,6 +19,7 @@ import { useDate } from "~/hooks/useDate"
import { useTranslation } from "~/lib/i18n/client"
import { getStorage, setStorage } from "~/lib/storage"
import { ExpandedNote } from "~/lib/types"
+import { cn } from "~/lib/utils"
import type { FeedType, SearchType } from "~/models/home.model"
import { useGetFeed } from "~/queries/home"
@@ -26,10 +27,12 @@ import { EmptyState } from "../ui/EmptyState"
const Post = ({
post,
+ previousPost,
filtering,
keyword,
}: {
post: ExpandedNote
+ previousPost?: ExpandedNote
filtering: number
keyword?: string
}) => {
@@ -45,50 +48,54 @@ const Post = ({
return
}
+ let simple = post.characterId === previousPost?.characterId
+
return (
-
-
-
-
+ {!simple && (
+
+
+
+
+
+
+
+ {post.character?.metadata?.content?.name ||
+ post.character?.handle}
+
+
+
+
+ ·
+
+ {t("ago", {
+ time: date.dayjs
+ .duration(
+ date.dayjs(post?.createdAt).diff(date.dayjs(), "minute"),
+ "minute",
+ )
+ .humanize(),
+ })}
+
+
+ )}
-
+
{post.metadata?.content?.title}
-
- {!!post.metadata?.content?.tags?.filter(
- (tag) => tag !== "post" && tag !== "page",
- ).length && (
-
- {post.metadata?.content?.tags
- ?.filter((tag) => tag !== "post" && tag !== "page")
- .map((tag, index) => (
- {
- e.preventDefault()
- router.push(`/tag/${tag}`)
- }}
- >
- #{tag}
-
- ))}
-
- )}
- {post.stat?.viewDetailCount && (
-
-
- {post.stat?.viewDetailCount}
-
- )}
-
+ {!simple && (
+
+ {!!post.metadata?.content?.tags?.filter(
+ (tag) => tag !== "post" && tag !== "page",
+ ).length && (
+
+ {post.metadata?.content?.tags
+ ?.filter((tag) => tag !== "post" && tag !== "page")
+ .map((tag, index) => (
+ {
+ e.preventDefault()
+ router.push(`/tag/${tag}`)
+ }}
+ >
+ #{tag}
+
+ ))}
+
+ )}
+ {post.stat?.viewDetailCount && (
+
+
+ {post.stat?.viewDetailCount}
+
+ )}
+
+ )}
-
+ {!simple && }
)
@@ -314,11 +331,16 @@ export const HomeFeed: React.FC<{
if (!posts?.list.length) return
return (
- {posts?.list.map((post) => {
+ {posts?.list.map((post, index, array) => {
return (
= 1
+ ? array[index - 1]
+ : undefined
+ }
filtering={aiFiltering ? 60 : 0}
keyword={searchParams?.get("q") || undefined}
/>