From 214cf52cf9ce46f61f5b91a2923689e35bc90972 Mon Sep 17 00:00:00 2001 From: Alex Junior Date: Wed, 2 Mar 2022 23:22:59 -0300 Subject: [PATCH] Chore: Server API types - teams.updateRoom (#3774) * chore: type the API call `teams.updateRoom` * chore: creating the interface `IServerTeamUpdateRoom` * chore: minor tweak after merge --- app/definitions/ITeam.ts | 14 ++++++++++++++ app/definitions/rest/v1/teams.ts | 5 ++++- app/lib/methods/logout.ts | 2 +- app/lib/rocketchat/services/restApi.ts | 4 +--- 4 files changed, 20 insertions(+), 5 deletions(-) diff --git a/app/definitions/ITeam.ts b/app/definitions/ITeam.ts index 3b1774054..ae5f9544c 100644 --- a/app/definitions/ITeam.ts +++ b/app/definitions/ITeam.ts @@ -1,5 +1,6 @@ import { IRocketChatRecord } from './IRocketChatRecord'; import { IUser } from './IUser'; +import { IServerRoomItem } from './IRoom'; export enum TEAM_TYPE { PUBLIC = 0, @@ -46,3 +47,16 @@ export interface ITeamStats { totalTeams: number; teamStats: Array; } + +export interface IServerTeamUpdateRoom + extends Omit< + IServerRoomItem, + 'topic' | 'joinCodeRequired' | 'description' | 'jitsiTimeout' | 'usersCount' | 'e2eKeyId' | 'avatarETag' + > { + broadcast: boolean; + msgs: number; + default: boolean; + sysMes: boolean; + teamId: string; + teamDefault: boolean; +} diff --git a/app/definitions/rest/v1/teams.ts b/app/definitions/rest/v1/teams.ts index 103989232..334aec723 100644 --- a/app/definitions/rest/v1/teams.ts +++ b/app/definitions/rest/v1/teams.ts @@ -1,10 +1,13 @@ import { IRoom } from '../../IRoom'; -import { ITeam, TEAM_TYPE } from '../../ITeam'; +import { IServerTeamUpdateRoom, ITeam, TEAM_TYPE } from '../../ITeam'; export type TeamsEndpoints = { 'teams.removeRoom': { POST: (params: { roomId: string; teamId: string }) => { room: IRoom }; }; + 'teams.updateRoom': { + POST: (params: { roomId: string; isDefault: boolean }) => { room: IServerTeamUpdateRoom }; + }; 'teams.convertToChannel': { POST: (params: { teamId: string; roomsToRemove?: string[] }) => {}; }; diff --git a/app/lib/methods/logout.ts b/app/lib/methods/logout.ts index fefd1769b..0e53ed123 100644 --- a/app/lib/methods/logout.ts +++ b/app/lib/methods/logout.ts @@ -13,7 +13,7 @@ import { E2E_PRIVATE_KEY, E2E_PUBLIC_KEY, E2E_RANDOM_PASSWORD_KEY } from '../enc import UserPreferences from '../userPreferences'; import { ICertificate, IRocketChat } from '../../definitions'; -async function removeServerKeys({ server, userId }: { server: string; userId: string | null }) { +async function removeServerKeys({ server, userId }: { server: string; userId?: string | null }) { await UserPreferences.removeItem(`${RocketChat.TOKEN_KEY}-${server}`); if (userId) { await UserPreferences.removeItem(`${RocketChat.TOKEN_KEY}-${userId}`); diff --git a/app/lib/rocketchat/services/restApi.ts b/app/lib/rocketchat/services/restApi.ts index dbf1a8de6..99afcd452 100644 --- a/app/lib/rocketchat/services/restApi.ts +++ b/app/lib/rocketchat/services/restApi.ts @@ -191,10 +191,8 @@ export const removeTeamMember = ({ teamId, userId, rooms }: { teamId: string; us ...(rooms?.length && { rooms }) }); -export const updateTeamRoom = ({ roomId, isDefault }: { roomId: string; isDefault: boolean }): any => +export const updateTeamRoom = ({ roomId, isDefault }: { roomId: string; isDefault: boolean }) => // RC 3.13.0 - // TODO: missing definitions from server - // @ts-ignore sdk.post('teams.updateRoom', { roomId, isDefault }); export const deleteTeam = ({ teamId, roomsToRemove }: { teamId: string; roomsToRemove: string[] }): any =>