Bluesky app fork with some witchin' additions 💫

Select, don't mutate (#4541)

authored by

Eric Bailey and committed by
GitHub
f5f3bd81 ba2fadb6

+21 -19
+21 -19
src/state/queries/feed.ts
··· 234 234 data: InfiniteData<AppBskyUnspeccedGetPopularFeedGenerators.OutputSchema>, 235 235 ) => { 236 236 const {savedFeeds, hasSession: hasSessionInner} = selectArgs 237 - data?.pages.map(page => { 238 - page.feeds = page.feeds.filter(feed => { 239 - if ( 240 - !hasSessionInner && 241 - KNOWN_AUTHED_ONLY_FEEDS.includes(feed.uri) 242 - ) { 243 - return false 244 - } 245 - const alreadySaved = Boolean( 246 - savedFeeds?.find(f => { 247 - return f.value === feed.uri 237 + return { 238 + ...data, 239 + pages: data.pages.map(page => { 240 + return { 241 + ...page, 242 + feeds: page.feeds.filter(feed => { 243 + if ( 244 + !hasSessionInner && 245 + KNOWN_AUTHED_ONLY_FEEDS.includes(feed.uri) 246 + ) { 247 + return false 248 + } 249 + const alreadySaved = Boolean( 250 + savedFeeds?.find(f => { 251 + return f.value === feed.uri 252 + }), 253 + ) 254 + return !alreadySaved 248 255 }), 249 - ) 250 - return !alreadySaved 251 - }) 252 - 253 - return page 254 - }) 255 - 256 - return data 256 + } 257 + }), 258 + } 257 259 }, 258 260 [selectArgs /* Don't change. Everything needs to go into selectArgs. */], 259 261 ),