UNPKG

@spartacus/cdc

Version:

Customer Data Cloud Integration library for Spartacus

43 lines 6.73 kB
import { HttpParams } from '@angular/common/http'; import { Injectable } from '@angular/core'; import { throwError } from 'rxjs'; import { catchError } from 'rxjs/operators'; import * as i0 from "@angular/core"; import * as i1 from "@angular/common/http"; import * as i2 from "@spartacus/core"; export class CdcUserAuthenticationTokenService { constructor(http, authConfigService) { this.http = http; this.authConfigService = authConfigService; } /** * Load User token using custom oauth flow * * @param UID - UID received from CDC on login event * @param UIDSignature - UIDSignature received from CDC on login event * @param signatureTimestamp - signatureTimestamp received from CDC on login event * @param idToken - idToken received from CDC on login event * @param baseSite - baseSite received from CDC on login event */ loadTokenUsingCustomFlow(UID, UIDSignature, signatureTimestamp, idToken, baseSite) { const url = this.authConfigService.getTokenEndpoint(); const params = new HttpParams() .set('client_id', this.authConfigService.getClientId()) .set('client_secret', this.authConfigService.getClientSecret()) .set('grant_type', 'custom') .set('UID', encodeURIComponent(UID)) .set('UIDSignature', encodeURIComponent(UIDSignature)) .set('signatureTimestamp', encodeURIComponent(signatureTimestamp)) .set('id_token', encodeURIComponent(idToken)) .set('baseSite', encodeURIComponent(baseSite)); return this.http .post(url, params) .pipe(catchError((error) => throwError(error))); } } CdcUserAuthenticationTokenService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: CdcUserAuthenticationTokenService, deps: [{ token: i1.HttpClient }, { token: i2.AuthConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); CdcUserAuthenticationTokenService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: CdcUserAuthenticationTokenService }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: CdcUserAuthenticationTokenService, decorators: [{ type: Injectable }], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.AuthConfigService }]; } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RjLXVzZXItYXV0aGVudGljYXRpb24tdG9rZW4uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2ludGVncmF0aW9uLWxpYnMvY2RjL2NvcmUvYXV0aC9zZXJ2aWNlcy91c2VyLWF1dGhlbnRpY2F0aW9uL2NkYy11c2VyLWF1dGhlbnRpY2F0aW9uLXRva2VuLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzlELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFHNUMsTUFBTSxPQUFPLGlDQUFpQztJQUM1QyxZQUNZLElBQWdCLEVBQ2hCLGlCQUFvQztRQURwQyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7SUFDN0MsQ0FBQztJQUVKOzs7Ozs7OztPQVFHO0lBQ0gsd0JBQXdCLENBQ3RCLEdBQVcsRUFDWCxZQUFvQixFQUNwQixrQkFBMEIsRUFDMUIsT0FBZSxFQUNmLFFBQWdCO1FBRWhCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3RELE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFO2FBQzVCLEdBQUcsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsRUFBRSxDQUFDO2FBQ3RELEdBQUcsQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsRUFBRSxDQUFDO2FBQzlELEdBQUcsQ0FBQyxZQUFZLEVBQUUsUUFBUSxDQUFDO2FBQzNCLEdBQUcsQ0FBQyxLQUFLLEVBQUUsa0JBQWtCLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDbkMsR0FBRyxDQUFDLGNBQWMsRUFBRSxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsQ0FBQzthQUNyRCxHQUFHLENBQUMsb0JBQW9CLEVBQUUsa0JBQWtCLENBQUMsa0JBQWtCLENBQUMsQ0FBQzthQUNqRSxHQUFHLENBQUMsVUFBVSxFQUFFLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxDQUFDO2FBQzVDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsa0JBQWtCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUVqRCxPQUFPLElBQUksQ0FBQyxJQUFJO2FBQ2IsSUFBSSxDQUErQyxHQUFHLEVBQUUsTUFBTSxDQUFDO2FBQy9ELElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxLQUFVLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDekQsQ0FBQzs7OEhBcENVLGlDQUFpQztrSUFBakMsaUNBQWlDOzJGQUFqQyxpQ0FBaUM7a0JBRDdDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXV0aENvbmZpZ1NlcnZpY2UsIEF1dGhUb2tlbiB9IGZyb20gJ0BzcGFydGFjdXMvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQ2RjVXNlckF1dGhlbnRpY2F0aW9uVG9rZW5TZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgcHJvdGVjdGVkIGF1dGhDb25maWdTZXJ2aWNlOiBBdXRoQ29uZmlnU2VydmljZVxuICApIHt9XG5cbiAgLyoqXG4gICAqIExvYWQgVXNlciB0b2tlbiB1c2luZyBjdXN0b20gb2F1dGggZmxvd1xuICAgKlxuICAgKiBAcGFyYW0gVUlEIC0gVUlEIHJlY2VpdmVkIGZyb20gQ0RDIG9uIGxvZ2luIGV2ZW50XG4gICAqIEBwYXJhbSBVSURTaWduYXR1cmUgLSBVSURTaWduYXR1cmUgcmVjZWl2ZWQgZnJvbSBDREMgb24gbG9naW4gZXZlbnRcbiAgICogQHBhcmFtIHNpZ25hdHVyZVRpbWVzdGFtcCAtIHNpZ25hdHVyZVRpbWVzdGFtcCByZWNlaXZlZCBmcm9tIENEQyBvbiBsb2dpbiBldmVudFxuICAgKiBAcGFyYW0gaWRUb2tlbiAtIGlkVG9rZW4gcmVjZWl2ZWQgZnJvbSBDREMgb24gbG9naW4gZXZlbnRcbiAgICogQHBhcmFtIGJhc2VTaXRlIC0gYmFzZVNpdGUgcmVjZWl2ZWQgZnJvbSBDREMgb24gbG9naW4gZXZlbnRcbiAgICovXG4gIGxvYWRUb2tlblVzaW5nQ3VzdG9tRmxvdyhcbiAgICBVSUQ6IHN0cmluZyxcbiAgICBVSURTaWduYXR1cmU6IHN0cmluZyxcbiAgICBzaWduYXR1cmVUaW1lc3RhbXA6IHN0cmluZyxcbiAgICBpZFRva2VuOiBzdHJpbmcsXG4gICAgYmFzZVNpdGU6IHN0cmluZ1xuICApOiBPYnNlcnZhYmxlPFBhcnRpYWw8QXV0aFRva2VuPiAmIHsgZXhwaXJlc19pbj86IG51bWJlciB9PiB7XG4gICAgY29uc3QgdXJsID0gdGhpcy5hdXRoQ29uZmlnU2VydmljZS5nZXRUb2tlbkVuZHBvaW50KCk7XG4gICAgY29uc3QgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKVxuICAgICAgLnNldCgnY2xpZW50X2lkJywgdGhpcy5hdXRoQ29uZmlnU2VydmljZS5nZXRDbGllbnRJZCgpKVxuICAgICAgLnNldCgnY2xpZW50X3NlY3JldCcsIHRoaXMuYXV0aENvbmZpZ1NlcnZpY2UuZ2V0Q2xpZW50U2VjcmV0KCkpXG4gICAgICAuc2V0KCdncmFudF90eXBlJywgJ2N1c3RvbScpXG4gICAgICAuc2V0KCdVSUQnLCBlbmNvZGVVUklDb21wb25lbnQoVUlEKSlcbiAgICAgIC5zZXQoJ1VJRFNpZ25hdHVyZScsIGVuY29kZVVSSUNvbXBvbmVudChVSURTaWduYXR1cmUpKVxuICAgICAgLnNldCgnc2lnbmF0dXJlVGltZXN0YW1wJywgZW5jb2RlVVJJQ29tcG9uZW50KHNpZ25hdHVyZVRpbWVzdGFtcCkpXG4gICAgICAuc2V0KCdpZF90b2tlbicsIGVuY29kZVVSSUNvbXBvbmVudChpZFRva2VuKSlcbiAgICAgIC5zZXQoJ2Jhc2VTaXRlJywgZW5jb2RlVVJJQ29tcG9uZW50KGJhc2VTaXRlKSk7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAucG9zdDxQYXJ0aWFsPEF1dGhUb2tlbj4gJiB7IGV4cGlyZXNfaW4/OiBudW1iZXIgfT4odXJsLCBwYXJhbXMpXG4gICAgICAucGlwZShjYXRjaEVycm9yKChlcnJvcjogYW55KSA9PiB0aHJvd0Vycm9yKGVycm9yKSkpO1xuICB9XG59XG4iXX0=