fix: `login` when changing server

This commit is contained in:
Gerzon Z 2022-03-09 11:16:57 -04:00
parent 373da53dc3
commit 70d79d402d
2 changed files with 14 additions and 2 deletions

View File

@ -185,7 +185,13 @@ const RocketChat = {
async e2eFetchMyKeys() {
// RC 0.70.0
const result = await sdk.get('e2e.fetchMyKeys');
const currentSdk = this.shareSDK || this.sdk;
let result;
if (currentSdk) {
result = await currentSdk.get('e2e.fetchMyKeys');
} else if (sdk.current) {
result = await sdk.current.get('e2e.fetchMyKeys');
}
// snake_case -> camelCase
if (result.success) {
return {

View File

@ -260,7 +260,13 @@ function stopListener(listener: any): boolean {
async function login(credentials: ICredentials, isFromWebView = false): Promise<ILoggedUser | undefined> {
// RC 0.64.0
await sdk.current.login(credentials);
if (sdk.current) {
await sdk.current.login(credentials);
} else {
const { server } = store.getState().server;
sdk.initialize(server);
await sdk.current.login(credentials);
}
const result = sdk.current.currentLogin?.result;
if (result) {
const user: ILoggedUser = {