TelegramPWA/src/hooks/useFolderManager.ts
Alexander Zinchuk 3167a36d84 Chat Folders: Add "Read all messages" and "Edit" for the "All chats" folder (#5793)
Co-authored-by: zubiden <19638254+zubiden@users.noreply.github.com>
2025-04-24 14:21:40 +02:00

44 lines
1.2 KiB
TypeScript

import { useEffect } from '../lib/teact/teact';
import {
addChatsCountCallback,
addOrderedIdsCallback, addUnreadChatsByFolderIdCallback,
addUnreadCountersCallback,
getChatsCount,
getOrderedIds, getUnreadChatsByFolderId,
getUnreadCounters,
} from '../util/folderManager';
import useForceUpdate from './useForceUpdate';
export function useFolderManagerForOrderedIds(folderId: number) {
const forceUpdate = useForceUpdate();
useEffect(() => addOrderedIdsCallback(folderId, forceUpdate), [folderId, forceUpdate]);
return getOrderedIds(folderId);
}
export function useFolderManagerForUnreadCounters() {
const forceUpdate = useForceUpdate();
useEffect(() => addUnreadCountersCallback(forceUpdate), [forceUpdate]);
return getUnreadCounters();
}
export function useFolderManagerForChatsCount() {
const forceUpdate = useForceUpdate();
useEffect(() => addChatsCountCallback(forceUpdate), [forceUpdate]);
return getChatsCount();
}
export function useFolderManagerForUnreadChatsByFolder() {
const forceUpdate = useForceUpdate();
useEffect(() => addUnreadChatsByFolderIdCallback(forceUpdate), [forceUpdate]);
return getUnreadChatsByFolderId();
}