about summary refs log tree commit diff
path: root/src/state/userActionHistory.ts
diff options
context:
space:
mode:
authordan <dan.abramov@gmail.com>2024-08-08 15:49:34 +0100
committerGitHub <noreply@github.com>2024-08-08 15:49:34 +0100
commit2174feed441459448668934015810fe0eb876dde (patch)
tree6e77a24911816b5d139164755e71388dec8c6ebc /src/state/userActionHistory.ts
parentf1031d100b583fa289e654c5dfba6d251ea85272 (diff)
downloadvoidsky-2174feed441459448668934015810fe0eb876dde.tar.zst
Include follow-based suggestions in interstitial (#4889)
Diffstat (limited to 'src/state/userActionHistory.ts')
-rw-r--r--src/state/userActionHistory.ts13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/state/userActionHistory.ts b/src/state/userActionHistory.ts
index d82b3723a..8ffe7241e 100644
--- a/src/state/userActionHistory.ts
+++ b/src/state/userActionHistory.ts
@@ -2,6 +2,7 @@ import React from 'react'
 
 const LIKE_WINDOW = 100
 const FOLLOW_WINDOW = 100
+const FOLLOW_SUGGESTION_WINDOW = 100
 const SEEN_WINDOW = 100
 
 export type SeenPost = {
@@ -22,6 +23,10 @@ export type UserActionHistory = {
    * The last 100 DIDs the user has followed
    */
   follows: string[]
+  /*
+   * The last 100 DIDs of suggested follows based on last follows
+   */
+  followSuggestions: string[]
   /**
    * The last 100 post URIs the user has seen from the Discover feed only
    */
@@ -31,6 +36,7 @@ export type UserActionHistory = {
 const userActionHistory: UserActionHistory = {
   likes: [],
   follows: [],
+  followSuggestions: [],
   seen: [],
 }
 
@@ -58,6 +64,13 @@ export function follow(dids: string[]) {
     .concat(dids)
     .slice(-FOLLOW_WINDOW)
 }
+
+export function followSuggestion(dids: string[]) {
+  userActionHistory.followSuggestions = userActionHistory.followSuggestions
+    .concat(dids)
+    .slice(-FOLLOW_SUGGESTION_WINDOW)
+}
+
 export function unfollow(dids: string[]) {
   userActionHistory.follows = userActionHistory.follows.filter(
     uri => !dids.includes(uri),