about summary refs log tree commit diff
path: root/src/state/queries/threadgate
diff options
context:
space:
mode:
Diffstat (limited to 'src/state/queries/threadgate')
-rw-r--r--src/state/queries/threadgate/types.ts1
-rw-r--r--src/state/queries/threadgate/util.ts4
2 files changed, 5 insertions, 0 deletions
diff --git a/src/state/queries/threadgate/types.ts b/src/state/queries/threadgate/types.ts
index 0cbea311c..56eadabcd 100644
--- a/src/state/queries/threadgate/types.ts
+++ b/src/state/queries/threadgate/types.ts
@@ -3,4 +3,5 @@ export type ThreadgateAllowUISetting =
   | {type: 'nobody'}
   | {type: 'mention'}
   | {type: 'following'}
+  | {type: 'followers'}
   | {type: 'list'; list: unknown}
diff --git a/src/state/queries/threadgate/util.ts b/src/state/queries/threadgate/util.ts
index 09ae0a0c1..4459eddbe 100644
--- a/src/state/queries/threadgate/util.ts
+++ b/src/state/queries/threadgate/util.ts
@@ -43,6 +43,8 @@ export function threadgateRecordToAllowUISetting(
         setting = {type: 'mention'}
       } else if (allow.$type === 'app.bsky.feed.threadgate#followingRule') {
         setting = {type: 'following'}
+      } else if (allow.$type === 'app.bsky.feed.threadgate#followerRule') {
+        setting = {type: 'followers'}
       } else if (allow.$type === 'app.bsky.feed.threadgate#listRule') {
         setting = {type: 'list', list: allow.list}
       }
@@ -79,6 +81,8 @@ export function threadgateAllowUISettingToAllowRecordValue(
         allow.push({$type: 'app.bsky.feed.threadgate#mentionRule'})
       } else if (rule.type === 'following') {
         allow.push({$type: 'app.bsky.feed.threadgate#followingRule'})
+      } else if (rule.type === 'followers') {
+        allow.push({$type: 'app.bsky.feed.threadgate#followerRule'})
       } else if (rule.type === 'list') {
         allow.push({
           $type: 'app.bsky.feed.threadgate#listRule',