5180 fichiers 38.5 Mo 0 téléchargements 249 vues mis à jour il y a 5 heures ui
nitro-v36-with-renderer-v36 / src / hooks / friends / friendBarNotificationsStore.ts
friendBarNotificationsStore.ts 1.1 Ko Télécharger le fichier
import { createOctaneStore } from '../../state/createOctaneStore';
import {
    dismissViewedNotifications,
    emptyFriendBarNotifications,
    FriendBarNotificationsState,
    pruneFriendNotifications,
    receiveFriendNotification
} from './friendBarNotifications.helpers';

interface FriendBarNotificationsStore extends FriendBarNotificationsState {
    receive: (friendId: number, type: number, message: string) => void;
    dismissViewed: (friendId: number) => void;
    prune: (onlineIds: ReadonlyArray<number>) => void;
    reset: () => void;
}

/** The friend bar activity of AIR `HabboFriendBarData` (fed by `useFriendBarNotificationEvents`). */
export const useFriendBarNotificationsStore = createOctaneStore<FriendBarNotificationsStore>()((set) => ({
    ...emptyFriendBarNotifications,
    receive: (friendId, type, message) => set((state) => receiveFriendNotification(state, friendId, type, message)),
    dismissViewed: (friendId) => set((state) => dismissViewedNotifications(state, friendId)),
    prune: (onlineIds) => set((state) => pruneFriendNotifications(state, onlineIds)),
    reset: () => set(emptyFriendBarNotifications)
}));
15Sujets
1Dépôts
20Membres
2En ligne
Profile
Inscrit
Dernière visite
Messages
0
Votes positifs
0
Votes négatifs
0

Nous utilisons des cookies pour assurer le bon fonctionnement du site et améliorer votre expérience. en savoir plus

Autoriser