diff --git a/projects/fusio-sdk/package.json b/projects/fusio-sdk/package.json index ad266de..d08bd84 100644 --- a/projects/fusio-sdk/package.json +++ b/projects/fusio-sdk/package.json @@ -1,6 +1,6 @@ { "name": "ngx-fusio-sdk", - "version": "6.0.7", + "version": "6.0.8", "description": "SDK to integrate Fusio into an Angular app", "keywords": [ "Fusio", diff --git a/projects/fusio-sdk/src/lib/component/login/provider/provider.component.ts b/projects/fusio-sdk/src/lib/component/login/provider/provider.component.ts index 688bbba..d2e419f 100644 --- a/projects/fusio-sdk/src/lib/component/login/provider/provider.component.ts +++ b/projects/fusio-sdk/src/lib/component/login/provider/provider.component.ts @@ -1,5 +1,5 @@ import {Component, OnInit} from '@angular/core'; -import {CommonMessage} from "fusio-sdk"; +import {CommonMessage, CommonMessageException} from "fusio-sdk"; import {AccessToken, SessionTokenStore} from "sdkgen-client"; import {ActivatedRoute, Router} from "@angular/router"; import {UserService} from "../../../service/user.service"; @@ -34,8 +34,7 @@ export class ProviderComponent implements OnInit { scope: scope || '', }; - const store = new SessionTokenStore(); - store.persist(token); + this.fusio.getTokenStore().persist(token); await this.obtainUserInfo(); } else { @@ -47,13 +46,24 @@ export class ProviderComponent implements OnInit { } private async obtainUserInfo() { - const response = await this.fusio.getClient().consumer().account().get(); + try { + const response = await this.fusio.getClient().consumer().account().get(); - this.user.login(response); + this.user.login(response); - this.router.navigate([this.config.getHomePath()]).then(() => { - location.reload(); - }); + this.router.navigate([this.config.getHomePath()]).then(() => { + location.reload(); + }); + } catch (error) { + if (error instanceof CommonMessageException) { + this.response = error; + } else { + this.response = { + success: false, + message: String(error) + }; + } + } } }