feat(navigator): reactive favourites via fine-grained store (P3)

Move favourite room ids out of the useBetween navigator store into a
dedicated Zustand store. useNavigatorFavourite(roomId) subscribes only
to s.ids.has(roomId) (a boolean), so a FavouriteChangedEvent for one
room no longer re-renders every favourite-aware view. apply() returns
the same state reference when membership is unchanged.
This commit is contained in:
simoleo89
2026-05-31 01:03:31 +02:00
parent 641593c3ef
commit e610cfeef4
9 changed files with 103 additions and 41 deletions
+1
View File
@@ -1,4 +1,5 @@
export { useNavigatorData } from './useNavigatorData';
export { useNavigatorFavourite } from './useNavigatorFavourite';
export { useNavigatorSearch } from './useNavigatorSearch';
export { useNavigatorUiState } from './useNavigatorUiState';
export { useNavigatorUiStore } from './navigatorUiStore';