Reorganize custom feeds in the view layer
This commit is contained in:
parent
b672006f7e
commit
3d09008bfd
9 changed files with 11 additions and 15 deletions
27
src/lib/hooks/useCustomFeed.ts
Normal file
27
src/lib/hooks/useCustomFeed.ts
Normal file
|
@ -0,0 +1,27 @@
|
|||
import {useEffect, useState} from 'react'
|
||||
import {useStores} from 'state/index'
|
||||
import {CustomFeedModel} from 'state/models/feeds/custom-feed'
|
||||
|
||||
export function useCustomFeed(uri: string) {
|
||||
const store = useStores()
|
||||
const [item, setItem] = useState<CustomFeedModel>()
|
||||
useEffect(() => {
|
||||
async function fetchView() {
|
||||
const res = await store.agent.app.bsky.feed.getFeedGenerator({
|
||||
feed: uri,
|
||||
})
|
||||
const view = res.data.view
|
||||
return view
|
||||
}
|
||||
async function buildFeedItem() {
|
||||
const view = await fetchView()
|
||||
if (view) {
|
||||
const temp = new CustomFeedModel(store, view)
|
||||
setItem(temp)
|
||||
}
|
||||
}
|
||||
buildFeedItem()
|
||||
}, [store, uri])
|
||||
|
||||
return item
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue