Browse Source

Fix bug while setting value to RememberMeService and enhancement for IAuthService interface

pull/18983/head
Sinan Öztürk 3 years ago
parent
commit
4eb9a393e8
  1. 11
      npm/ng-packs/packages/core/src/lib/abstracts/auth.service.ts
  2. 8
      npm/ng-packs/packages/oauth/src/lib/services/oauth.service.ts
  3. 8
      npm/ng-packs/packages/oauth/src/lib/utils/auth-utils.ts

11
npm/ng-packs/packages/core/src/lib/abstracts/auth.service.ts

@ -16,6 +16,15 @@ export class AuthService implements IAuthService {
console.error('You should add @abp/ng-oauth packages or create your own auth packages.'); console.error('You should add @abp/ng-oauth packages or create your own auth packages.');
} }
get oidc(): boolean {
this.warningMessage();
return false;
}
set oidc(value: boolean) {
this.warningMessage();
}
init(): Promise<any> { init(): Promise<any> {
this.warningMessage(); this.warningMessage();
return Promise.resolve(undefined); return Promise.resolve(undefined);
@ -73,6 +82,8 @@ export class AuthService implements IAuthService {
} }
export interface IAuthService { export interface IAuthService {
oidc: boolean;
get isInternalAuth(): boolean; get isInternalAuth(): boolean;
get isAuthenticated(): boolean; get isAuthenticated(): boolean;

8
npm/ng-packs/packages/oauth/src/lib/services/oauth.service.ts

@ -16,6 +16,14 @@ export class AbpOAuthService implements IAuthService {
private strategy!: AuthFlowStrategy; private strategy!: AuthFlowStrategy;
private readonly oAuthService: OAuthService; private readonly oAuthService: OAuthService;
get oidc() {
return this.oAuthService.oidc;
}
set oidc(value) {
this.oAuthService.oidc = value;
}
get isInternalAuth() { get isInternalAuth() {
return this.strategy.isInternalAuth; return this.strategy.isInternalAuth;
} }

8
npm/ng-packs/packages/oauth/src/lib/utils/auth-utils.ts

@ -3,6 +3,7 @@ import { Router } from '@angular/router';
import { pipe } from 'rxjs'; import { pipe } from 'rxjs';
import { switchMap, tap } from 'rxjs/operators'; import { switchMap, tap } from 'rxjs/operators';
import { import {
AuthService,
ConfigStateService, ConfigStateService,
LoginParams, LoginParams,
PipeToLoginFn, PipeToLoginFn,
@ -16,10 +17,15 @@ export const pipeToLogin: PipeToLoginFn = function (
const configState = injector.get(ConfigStateService); const configState = injector.get(ConfigStateService);
const router = injector.get(Router); const router = injector.get(Router);
const rememberMeService = injector.get(RememberMeService); const rememberMeService = injector.get(RememberMeService);
const authService = injector.get(AuthService);
return pipe( return pipe(
switchMap(() => configState.refreshAppState()), switchMap(() => configState.refreshAppState()),
tap(() => { tap(() => {
rememberMeService.set(params.rememberMe); rememberMeService.set(
params.rememberMe ||
rememberMeService.get() ||
rememberMeService.getFromToken(authService.getAccessToken())
);
if (params.redirectUrl) router.navigate([params.redirectUrl]); if (params.redirectUrl) router.navigate([params.redirectUrl]);
}), }),
); );

Loading…
Cancel
Save