about summary refs log tree commit diff
path: root/src/screens
diff options
context:
space:
mode:
Diffstat (limited to 'src/screens')
-rw-r--r--src/screens/Messages/Conversation/ChatDisabled.tsx26
-rw-r--r--src/screens/Messages/Conversation/MessagesList.tsx17
2 files changed, 38 insertions, 5 deletions
diff --git a/src/screens/Messages/Conversation/ChatDisabled.tsx b/src/screens/Messages/Conversation/ChatDisabled.tsx
new file mode 100644
index 000000000..e7453bfd8
--- /dev/null
+++ b/src/screens/Messages/Conversation/ChatDisabled.tsx
@@ -0,0 +1,26 @@
+import React from 'react'
+import {View} from 'react-native'
+import {Trans} from '@lingui/macro'
+
+import {atoms as a, useTheme} from '#/alf'
+import {Text} from '#/components/Typography'
+
+export function ChatDisabled() {
+  const t = useTheme()
+  return (
+    <View style={[a.p_md]}>
+      <View style={[a.p_xl, a.rounded_md, t.atoms.bg_contrast_25]}>
+        <Text
+          style={[a.text_md, a.font_bold, a.pb_sm, t.atoms.text_contrast_high]}>
+          <Trans>Your chats have been disabled</Trans>
+        </Text>
+        <Text style={[a.text_sm, a.leading_snug, t.atoms.text_contrast_medium]}>
+          <Trans>
+            Our moderators have reviewed reports and decided to disable your
+            access to chats on Bluesky.
+          </Trans>
+        </Text>
+      </View>
+    </View>
+  )
+}
diff --git a/src/screens/Messages/Conversation/MessagesList.tsx b/src/screens/Messages/Conversation/MessagesList.tsx
index ef0cc55d2..1f9147c57 100644
--- a/src/screens/Messages/Conversation/MessagesList.tsx
+++ b/src/screens/Messages/Conversation/MessagesList.tsx
@@ -16,11 +16,12 @@ import {AppBskyRichtextFacet, RichText} from '@atproto/api'
 import {shortenLinks} from '#/lib/strings/rich-text-manip'
 import {isIOS, isNative} from '#/platform/detection'
 import {useConvoActive} from '#/state/messages/convo'
-import {ConvoItem} from '#/state/messages/convo/types'
+import {ConvoItem, ConvoStatus} from '#/state/messages/convo/types'
 import {useAgent} from '#/state/session'
 import {ScrollProvider} from 'lib/ScrollContext'
 import {isWeb} from 'platform/detection'
 import {List} from 'view/com/util/List'
+import {ChatDisabled} from '#/screens/Messages/Conversation/ChatDisabled'
 import {MessageInput} from '#/screens/Messages/Conversation/MessageInput'
 import {MessageListError} from '#/screens/Messages/Conversation/MessageListError'
 import {atoms as a} from '#/alf'
@@ -296,10 +297,16 @@ export function MessagesList({
         />
       </ScrollProvider>
       {!blocked ? (
-        <MessageInput
-          onSendMessage={onSendMessage}
-          scrollToEnd={scrollToEndNow}
-        />
+        <>
+          {convoState.status === ConvoStatus.Disabled ? (
+            <ChatDisabled />
+          ) : (
+            <MessageInput
+              onSendMessage={onSendMessage}
+              scrollToEnd={scrollToEndNow}
+            />
+          )}
+        </>
       ) : (
         footer
       )}