Files
mattermost-mobile/app/store/team_load_store.ts
Daniel Espino García 191a640007 Show loading only when team channels are being loaded (#6872)
* Show loading only when team channels are being loaded

* Fix tests

* Remove unneeded event

* Refactor into using hooks
2022-12-19 12:25:23 +01:00

18 lines
655 B
TypeScript

// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
// See LICENSE.txt for license information.
import {BehaviorSubject} from 'rxjs';
const loadingTeamChannels: {[serverUrl: string]: BehaviorSubject<number>} = {};
export const getLoadingTeamChannelsSubject = (serverUrl: string) => {
if (!loadingTeamChannels[serverUrl]) {
loadingTeamChannels[serverUrl] = new BehaviorSubject(0);
}
return loadingTeamChannels[serverUrl];
};
export const setTeamLoading = (serverUrl: string, loading: boolean) => {
const subject = getLoadingTeamChannelsSubject(serverUrl);
subject.next(subject.value + (loading ? 1 : -1));
};