@replyke/core
Version:
Replyke: Build interactive apps with social features like comments, votes, feeds, user lists, notifications, and more.
19 lines • 816 B
JavaScript
import { useMemo } from "react";
import { useReplykeSelector } from "../../store/hooks";
import { selectAccounts, selectActiveAccountId, } from "../../store/slices/accountsSlice";
export default function useAccounts() {
const accountsMap = useReplykeSelector(selectAccounts);
const activeAccountId = useReplykeSelector(selectActiveAccountId);
return useMemo(() => {
const accountSummaries = Object.values(accountsMap).map((entry) => entry.user);
const activeAccount = activeAccountId
? accountsMap[activeAccountId]?.user ?? null
: null;
return {
accounts: accountSummaries,
activeAccount,
accountCount: accountSummaries.length,
};
}, [accountsMap, activeAccountId]);
}
//# sourceMappingURL=useAccounts.js.map