diff --git a/src/app/(app)/says/page.tsx b/src/app/(app)/says/page.tsx
index 5d487c47bf..a0e7d6c385 100644
--- a/src/app/(app)/says/page.tsx
+++ b/src/app/(app)/says/page.tsx
@@ -6,9 +6,9 @@ import { NothingFound } from '~/components/modules/shared/NothingFound'
import { FullPageLoading } from '~/components/ui/loading'
export default function Page() {
- const { data, isLoading } = useSayListQuery()
+ const { data, isLoading, status } = useSayListQuery()
- if (isLoading) {
+ if (isLoading || status === 'pending') {
return
}
diff --git a/src/components/modules/say/SayMasonry.tsx b/src/components/modules/say/SayMasonry.tsx
index c6d8aea001..287aa1bd62 100644
--- a/src/components/modules/say/SayMasonry.tsx
+++ b/src/components/modules/say/SayMasonry.tsx
@@ -1,6 +1,7 @@
'use client'
import { memo, useMemo } from 'react'
+import Masonry from 'react-responsive-masonry'
import { m } from 'framer-motion'
import Markdown from 'markdown-to-jsx'
import type { SayModel } from '@mx-space/api-client'
@@ -8,7 +9,6 @@ import type { MarkdownToJSX } from 'markdown-to-jsx'
import { useIsMobile } from '~/atoms/hooks'
import { LoadMoreIndicator } from '~/components/modules/shared/LoadMoreIndicator'
-import { Masonry } from '~/components/ui/masonry'
import { RelativeTime } from '~/components/ui/relative-time'
import {
BottomToUpSoftScaleTransitionView,
@@ -39,15 +39,19 @@ export const SayMasonry = () => {
return (
<>
-
+
+ {list.map((item, index) => (
+
+ ))}
+
{hasNextPage && (
-
+
+ {placeholderData.map((item) => (
+
+ ))}
+
)}
@@ -63,7 +67,7 @@ const placeholderData = Array.from({ length: 10 }).map((_, index) => ({
}))
const SaySkeleton = memo(() => {
return (
-
+
@@ -99,7 +103,7 @@ const Item = memo<{