use-following-data
This commit is contained in:
parent
79961b7f47
commit
aeb42de908
|
@ -29,18 +29,16 @@ export const ProfileSubscriptions = () => {
|
|||
const [searchQuery, setSearchQuery] = createSignal('')
|
||||
|
||||
createEffect(() => {
|
||||
if (subscriptions()) {
|
||||
const { authors, topics } = subscriptions()
|
||||
const fdata = [...authors, ...topics]
|
||||
if (fdata) {
|
||||
setFollowing(fdata)
|
||||
if (subscriptionFilter() === 'authors') {
|
||||
setFiltered(fdata.filter((s) => 'name' in s))
|
||||
} else if (subscriptionFilter() === 'topics') {
|
||||
setFiltered(fdata.filter((s) => 'title' in s))
|
||||
} else {
|
||||
setFiltered(fdata)
|
||||
}
|
||||
const { authors, topics } = subscriptions
|
||||
if (authors || topics) {
|
||||
const fdata = [...(authors || []), ...(topics || [])]
|
||||
setFollowing(fdata)
|
||||
if (subscriptionFilter() === 'authors') {
|
||||
setFiltered(fdata.filter((s) => 'name' in s))
|
||||
} else if (subscriptionFilter() === 'topics') {
|
||||
setFiltered(fdata.filter((s) => 'title' in s))
|
||||
} else {
|
||||
setFiltered(fdata)
|
||||
}
|
||||
}
|
||||
})
|
||||
|
|
|
@ -10,7 +10,7 @@ interface FollowingContextType {
|
|||
loading: Accessor<boolean>
|
||||
followers: Accessor<Array<Author>>
|
||||
subscriptions: AuthorFollowsResult
|
||||
setSubscriptions: (subscriptions: AuthorFollows) => void
|
||||
setSubscriptions: (subscriptions: AuthorFollowsResult) => void
|
||||
setFollowing: (what: FollowingEntity, slug: string, value: boolean) => void
|
||||
loadSubscriptions: () => void
|
||||
follow: (what: FollowingEntity, slug: string) => Promise<void>
|
||||
|
@ -33,7 +33,7 @@ const EMPTY_SUBSCRIPTIONS: AuthorFollowsResult = {
|
|||
export const FollowingProvider = (props: { children: JSX.Element }) => {
|
||||
const [loading, setLoading] = createSignal<boolean>(false)
|
||||
const [followers, setFollowers] = createSignal<Array<Author>>([])
|
||||
const [subscriptions, setSubscriptions] = createStore<AuthorFollows>(EMPTY_SUBSCRIPTIONS)
|
||||
const [subscriptions, setSubscriptions] = createStore<AuthorFollowsResult>(EMPTY_SUBSCRIPTIONS)
|
||||
const { author, session } = useSession()
|
||||
|
||||
const fetchData = async () => {
|
||||
|
|
Loading…
Reference in New Issue
Block a user