From f4eb4740d8d6f9e518d0b41c4233ef3aa33c6ac8 Mon Sep 17 00:00:00 2001 From: MingLiang Wang Date: Mon, 9 Jan 2023 21:56:24 +0800 Subject: [PATCH 1/2] feat: fix auth --- packages/data-center/src/datacenter.ts | 9 ++++----- packages/data-center/src/provider/affine/apis/token.ts | 1 + 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/data-center/src/datacenter.ts b/packages/data-center/src/datacenter.ts index 1021a4afb3..8cc8f80fa3 100644 --- a/packages/data-center/src/datacenter.ts +++ b/packages/data-center/src/datacenter.ts @@ -124,11 +124,10 @@ export class DataCenter { * login to all providers, it will default run all auth , * maybe need a params to control which provider to auth */ - public async login() { - this.providers.forEach(p => { - // TODO: may be add params of auth - p.auth(); - }); + public async login(providerId = 'affine') { + const provider = this.providerMap.get(providerId); + assert(provider, `provide '${providerId}' is not registered`); + provider.auth(); } /** diff --git a/packages/data-center/src/provider/affine/apis/token.ts b/packages/data-center/src/provider/affine/apis/token.ts index 3ab36adbf0..62da8def94 100644 --- a/packages/data-center/src/provider/affine/apis/token.ts +++ b/packages/data-center/src/provider/affine/apis/token.ts @@ -189,6 +189,7 @@ export const getAuthorizer = () => { return [signInWithGoogle, onAuthStateChanged] as const; } catch (e) { + getLogger('getAuthorizer')(e); return [] as const; } }; From 79a760a042fed04527b1b28f427aa67d4b72aeb7 Mon Sep 17 00:00:00 2001 From: MingLiang Wang Date: Mon, 9 Jan 2023 21:59:19 +0800 Subject: [PATCH 2/2] feat: logout --- packages/data-center/src/datacenter.ts | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/data-center/src/datacenter.ts b/packages/data-center/src/datacenter.ts index 8cc8f80fa3..79d8c81eca 100644 --- a/packages/data-center/src/datacenter.ts +++ b/packages/data-center/src/datacenter.ts @@ -127,16 +127,16 @@ export class DataCenter { public async login(providerId = 'affine') { const provider = this.providerMap.get(providerId); assert(provider, `provide '${providerId}' is not registered`); - provider.auth(); + await provider.auth(); } /** * logout from all providers */ - public async logout() { - this.providers.forEach(p => { - p.logout(); - }); + public async logout(providerId = 'affine') { + const provider = this.providerMap.get(providerId); + assert(provider, `provide '${providerId}' is not registered`); + await provider.logout(); } /**