From 2f5ad652f85d4e8a2cab7afaa87a73584fed656c Mon Sep 17 00:00:00 2001 From: Mahmut Gundogdu Date: Mon, 27 Feb 2023 10:41:46 +0300 Subject: [PATCH] Reformat and change AbstractModel name to AuthResponse --- ...stract.model.ts => auth-response.model.ts} | 5 +-- .../core/src/lib/abstracts/auth.service.ts | 32 +++++++------- .../packages/core/src/lib/abstracts/index.ts | 2 +- .../oauth/src/lib/services/oauth.service.ts | 42 ++++++++++--------- 4 files changed, 44 insertions(+), 37 deletions(-) rename npm/ng-packs/packages/core/src/lib/abstracts/{abstract.model.ts => auth-response.model.ts} (71%) diff --git a/npm/ng-packs/packages/core/src/lib/abstracts/abstract.model.ts b/npm/ng-packs/packages/core/src/lib/abstracts/auth-response.model.ts similarity index 71% rename from npm/ng-packs/packages/core/src/lib/abstracts/abstract.model.ts rename to npm/ng-packs/packages/core/src/lib/abstracts/auth-response.model.ts index a8205a0aa6..7c8afaa3ec 100644 --- a/npm/ng-packs/packages/core/src/lib/abstracts/abstract.model.ts +++ b/npm/ng-packs/packages/core/src/lib/abstracts/auth-response.model.ts @@ -1,4 +1,4 @@ -export interface AbstractModel { +export interface AbpAuthResponse { access_token: string; id_token: string; token_type: string; @@ -6,6 +6,5 @@ export interface AbstractModel { refresh_token: string; scope: string; state?: string; - tenant_domain?:string + tenant_domain?: string; } - diff --git a/npm/ng-packs/packages/core/src/lib/abstracts/auth.service.ts b/npm/ng-packs/packages/core/src/lib/abstracts/auth.service.ts index 44ad0ccb03..3c6d62fae6 100644 --- a/npm/ng-packs/packages/core/src/lib/abstracts/auth.service.ts +++ b/npm/ng-packs/packages/core/src/lib/abstracts/auth.service.ts @@ -1,9 +1,9 @@ -import {HttpHeaders} from '@angular/common/http'; -import {Injectable} from '@angular/core'; -import {Params} from '@angular/router'; -import {Observable, of} from 'rxjs'; -import {LoginParams} from '../models/auth'; -import {AbstractModel} from "./abstract.model"; +import { HttpHeaders } from '@angular/common/http'; +import { Injectable } from '@angular/core'; +import { Params } from '@angular/router'; +import { Observable, of } from 'rxjs'; +import { LoginParams } from '../models/auth'; +import { AbpAuthResponse } from './auth-response.model'; /** * Abstract service for Authentication. @@ -12,9 +12,6 @@ import {AbstractModel} from "./abstract.model"; providedIn: 'root', }) export class AuthService implements IAuthService { - constructor() { - } - private warningMessage() { console.error('You should add @abp/ng-oauth packages or create your own auth packages.'); } @@ -34,8 +31,7 @@ export class AuthService implements IAuthService { return of(undefined); } - navigateToLogin(queryParams?: Params): void { - } + navigateToLogin(queryParams?: Params): void {} get isInternalAuth() { throw new Error('not implemented'); @@ -47,8 +43,12 @@ export class AuthService implements IAuthService { return false; } - loginUsingGrant(grantType: string, parameters: object, headers?: HttpHeaders): Promise { - console.log({grantType, parameters, headers}) + loginUsingGrant( + grantType: string, + parameters: object, + headers?: HttpHeaders, + ): Promise { + console.log({ grantType, parameters, headers }); return Promise.reject(new Error('not implemented')); } } @@ -66,5 +66,9 @@ export interface IAuthService { login(params: LoginParams): Observable; - loginUsingGrant(grantType: string, parameters: object, headers?: HttpHeaders): Promise; + loginUsingGrant( + grantType: string, + parameters: object, + headers?: HttpHeaders, + ): Promise; } diff --git a/npm/ng-packs/packages/core/src/lib/abstracts/index.ts b/npm/ng-packs/packages/core/src/lib/abstracts/index.ts index 6585e55cd1..e1ff2f106b 100644 --- a/npm/ng-packs/packages/core/src/lib/abstracts/index.ts +++ b/npm/ng-packs/packages/core/src/lib/abstracts/index.ts @@ -1,4 +1,4 @@ export * from './ng-model.component'; export * from './auth.guard'; export * from './auth.service'; -export * from './abstract.model' +export * from './auth-response.model'; diff --git a/npm/ng-packs/packages/oauth/src/lib/services/oauth.service.ts b/npm/ng-packs/packages/oauth/src/lib/services/oauth.service.ts index dceb7ac845..e929ab7c79 100644 --- a/npm/ng-packs/packages/oauth/src/lib/services/oauth.service.ts +++ b/npm/ng-packs/packages/oauth/src/lib/services/oauth.service.ts @@ -1,26 +1,27 @@ -import {Injectable, Injector} from '@angular/core'; -import {Params} from '@angular/router'; -import {from, Observable, lastValueFrom} from 'rxjs'; -import {filter, map, switchMap, take, tap} from 'rxjs/operators'; -import { AbstractModel, IAuthService, LoginParams} from '@abp/ng.core'; -import {AuthFlowStrategy} from '../strategies'; -import {EnvironmentService} from '@abp/ng.core'; -import {AUTH_FLOW_STRATEGY} from '../tokens/auth-flow-strategy'; -import {OAuthService} from "angular-oauth2-oidc"; -import {HttpHeaders} from '@angular/common/http'; +import { Injectable, Injector } from '@angular/core'; +import { Params } from '@angular/router'; +import { from, Observable, lastValueFrom } from 'rxjs'; +import { filter, map, switchMap, take, tap } from 'rxjs/operators'; +import { AbpAuthResponse, IAuthService, LoginParams } from '@abp/ng.core'; +import { AuthFlowStrategy } from '../strategies'; +import { EnvironmentService } from '@abp/ng.core'; +import { AUTH_FLOW_STRATEGY } from '../tokens/auth-flow-strategy'; +import { OAuthService } from 'angular-oauth2-oidc'; +import { HttpHeaders } from '@angular/common/http'; @Injectable({ providedIn: 'root', }) export class AbpOAuthService implements IAuthService { private strategy!: AuthFlowStrategy; - private oAuthService: OAuthService; + private readonly oAuthService: OAuthService; + get isInternalAuth() { return this.strategy.isInternalAuth; } - constructor(protected injector: Injector,) { - this.oAuthService = this.injector.get(OAuthService) + constructor(protected injector: Injector) { + this.oAuthService = this.injector.get(OAuthService); } async init() { @@ -58,21 +59,24 @@ export class AbpOAuthService implements IAuthService { return this.oAuthService.hasValidAccessToken(); } - loginUsingGrant(grantType: string, parameters: object, headers?: HttpHeaders): Promise { - - const {clientId: client_id, dummyClientSecret: client_secret} = this.oAuthService; - const access_token = this.oAuthService.getAccessToken() + loginUsingGrant( + grantType: string, + parameters: object, + headers?: HttpHeaders, + ): Promise { + const { clientId: client_id, dummyClientSecret: client_secret } = this.oAuthService; + const access_token = this.oAuthService.getAccessToken(); const p = { access_token, grant_type: grantType, client_id, - ...parameters + ...parameters, }; if (client_secret) { p['client_secret'] = client_secret; } - return this.oAuthService.fetchTokenUsingGrant(grantType, p, headers) + return this.oAuthService.fetchTokenUsingGrant(grantType, p, headers); } }