···2020import {useListConvosQuery} from '#/state/queries/messages/list-conversations'
2121import {useSession} from '#/state/session'
2222import {List, ListRef} from '#/view/com/util/List'
2323-import {atoms as a, useBreakpoints, useTheme, web} from '#/alf'
2323+import {ChatListLoadingPlaceholder} from '#/view/com/util/LoadingPlaceholder'
2424+import {atoms as a, useBreakpoints, useTheme} from '#/alf'
2425import {Button, ButtonIcon, ButtonText} from '#/components/Button'
2526import {DialogControlProps, useDialogControl} from '#/components/Dialog'
2627import {NewChat} from '#/components/dms/dialogs/NewChatDialog'
···3334import * as Layout from '#/components/Layout'
3435import {Link} from '#/components/Link'
3536import {ListFooter} from '#/components/Lists'
3636-import {Loader} from '#/components/Loader'
3737import {Text} from '#/components/Typography'
3838import {ChatListItem} from './components/ChatListItem'
3939import {InboxPreview} from './components/InboxPreview'
···211211 <Layout.Screen>
212212 <Header newChatControl={newChatControl} />
213213 <Layout.Center>
214214+ <InboxPreview
215215+ count={inboxPreviewConvos.length}
216216+ profiles={inboxPreviewConvos}
217217+ />
214218 {isLoading ? (
215215- <View style={[a.align_center, a.pt_3xl, web({paddingTop: '10vh'})]}>
216216- <Loader size="xl" />
217217- </View>
219219+ <ChatListLoadingPlaceholder />
218220 ) : (
219221 <>
220222 {isError ? (
···255257 </>
256258 ) : (
257259 <>
258258- <InboxPreview
259259- count={inboxPreviewConvos.length}
260260- profiles={inboxPreviewConvos}
261261- />
262260 <View style={[a.pt_3xl, a.align_center]}>
263261 <Message width={48} fill={t.palette.primary_500} />
264262 <Text style={[a.pt_md, a.pb_sm, a.text_2xl, a.font_bold]}>
+3-5
src/screens/Messages/Inbox.tsx
···2323import {useUpdateAllRead} from '#/state/queries/messages/update-all-read'
2424import {FAB} from '#/view/com/util/fab/FAB'
2525import {List} from '#/view/com/util/List'
2626+import {ChatListLoadingPlaceholder} from '#/view/com/util/LoadingPlaceholder'
2627import * as Toast from '#/view/com/util/Toast'
2727-import {atoms as a, useBreakpoints, useTheme, web} from '#/alf'
2828+import {atoms as a, useBreakpoints, useTheme} from '#/alf'
2829import {Button, ButtonIcon, ButtonText} from '#/components/Button'
2930import {useRefreshOnFocus} from '#/components/hooks/useRefreshOnFocus'
3031import {ArrowLeft_Stroke2_Corner0_Rounded as ArrowLeftIcon} from '#/components/icons/Arrow'
···3435import {Message_Stroke2_Corner0_Rounded as MessageIcon} from '#/components/icons/Message'
3536import * as Layout from '#/components/Layout'
3637import {ListFooter} from '#/components/Lists'
3737-import {Loader} from '#/components/Loader'
3838import {Text} from '#/components/Typography'
3939import {RequestListItem} from './components/RequestListItem'
4040···157157 return (
158158 <Layout.Center>
159159 {isLoading ? (
160160- <View style={[a.align_center, a.pt_3xl, web({paddingTop: '10vh'})]}>
161161- <Loader size="xl" />
162162- </View>
160160+ <ChatListLoadingPlaceholder />
163161 ) : (
164162 <>
165163 {isError ? (