forked from Ivasoft/mattermost-mobile
* Multi-Server support UI * feedback review * Apply suggestions from code review Co-authored-by: Avinash Lingaloo <avinashlng1080@gmail.com> Co-authored-by: Avinash Lingaloo <avinashlng1080@gmail.com>
31 lines
975 B
TypeScript
31 lines
975 B
TypeScript
// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
|
|
// See LICENSE.txt for license information.
|
|
|
|
import {Q} from '@nozbe/watermelondb';
|
|
|
|
import {MM_TABLES} from '@constants/database';
|
|
import DatabaseManager from '@database/manager';
|
|
|
|
import type ServersModel from '@typings/database/models/app/servers';
|
|
|
|
const {SERVERS} = MM_TABLES.APP;
|
|
|
|
export const subscribeActiveServers = (observer: (servers: ServersModel[]) => void) => {
|
|
const db = DatabaseManager.appDatabase?.database;
|
|
return db?.
|
|
get(SERVERS).
|
|
query(Q.where('identifier', Q.notEq(''))).
|
|
observeWithColumns(['last_active_at']).
|
|
subscribe(observer);
|
|
};
|
|
|
|
export const subscribeAllServers = (observer: (servers: ServersModel[]) => void) => {
|
|
const db = DatabaseManager.appDatabase?.database;
|
|
return db?.
|
|
get(SERVERS).
|
|
query(Q.sortBy('display_name', Q.asc)).
|
|
observeWithColumns(['last_active_at']).
|
|
subscribe(observer);
|
|
};
|
|
|