UNPKG

angular-auth-oidc-client

Version:

An OpenID Connect Code Flow with PKCE,Implicit Flow client for Angular

75 lines 5.13 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Injectable } from '@angular/core'; import { LoggerService } from './oidc.logger.service'; export class IFrameService { /** * @param {?} loggerService */ constructor(loggerService) { this.loggerService = loggerService; } /** * @param {?} identifier * @return {?} */ getExistingIFrame(identifier) { /** @type {?} */ const iFrameOnParent = this.getIFrameFromParentWindow(identifier); if (iFrameOnParent) { return iFrameOnParent; } return this.getIFrameFromWindow(identifier); } /** * @param {?} identifier * @return {?} */ addIFrameToWindowBody(identifier) { /** @type {?} */ const sessionIframe = window.document.createElement('iframe'); sessionIframe.id = identifier; this.loggerService.logDebug(sessionIframe); sessionIframe.style.display = 'none'; window.document.body.appendChild(sessionIframe); return sessionIframe; } /** * @private * @param {?} identifier * @return {?} */ getIFrameFromParentWindow(identifier) { try { return window.parent.document.getElementById(identifier); } catch (e) { return null; } } /** * @private * @param {?} identifier * @return {?} */ getIFrameFromWindow(identifier) { return window.document.getElementById(identifier); } } IFrameService.decorators = [ { type: Injectable } ]; /** @nocollapse */ IFrameService.ctorParameters = () => [ { type: LoggerService } ]; if (false) { /** * @type {?} * @private */ IFrameService.prototype.loggerService; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhpc3RpbmctaWZyYW1lLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLWF1dGgtb2lkYy1jbGllbnQvIiwic291cmNlcyI6WyJsaWIvc2VydmljZXMvZXhpc3RpbmctaWZyYW1lLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBR3RELE1BQU0sT0FBTyxhQUFhOzs7O0lBQ3RCLFlBQW9CLGFBQTRCO1FBQTVCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO0lBQUcsQ0FBQzs7Ozs7SUFFcEQsaUJBQWlCLENBQUMsVUFBa0I7O2NBQzFCLGNBQWMsR0FBRyxJQUFJLENBQUMseUJBQXlCLENBQUMsVUFBVSxDQUFDO1FBRWpFLElBQUksY0FBYyxFQUFFO1lBQ2hCLE9BQU8sY0FBYyxDQUFDO1NBQ3pCO1FBRUQsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDaEQsQ0FBQzs7Ozs7SUFFRCxxQkFBcUIsQ0FBQyxVQUFrQjs7Y0FDOUIsYUFBYSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQztRQUM3RCxhQUFhLENBQUMsRUFBRSxHQUFHLFVBQVUsQ0FBQztRQUM5QixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUMzQyxhQUFhLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFDckMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2hELE9BQU8sYUFBYSxDQUFDO0lBQ3pCLENBQUM7Ozs7OztJQUVPLHlCQUF5QixDQUFDLFVBQWtCO1FBQ2hELElBQUk7WUFDQSxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUM1RDtRQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1IsT0FBTyxJQUFJLENBQUM7U0FDZjtJQUNMLENBQUM7Ozs7OztJQUVPLG1CQUFtQixDQUFDLFVBQWtCO1FBQzFDLE9BQU8sTUFBTSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDdEQsQ0FBQzs7O1lBakNKLFVBQVU7Ozs7WUFGRixhQUFhOzs7Ozs7O0lBSU4sc0NBQW9DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTG9nZ2VyU2VydmljZSB9IGZyb20gJy4vb2lkYy5sb2dnZXIuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBJRnJhbWVTZXJ2aWNlIHtcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGxvZ2dlclNlcnZpY2U6IExvZ2dlclNlcnZpY2UpIHt9XG5cbiAgICBnZXRFeGlzdGluZ0lGcmFtZShpZGVudGlmaWVyOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgaUZyYW1lT25QYXJlbnQgPSB0aGlzLmdldElGcmFtZUZyb21QYXJlbnRXaW5kb3coaWRlbnRpZmllcik7XG5cbiAgICAgICAgaWYgKGlGcmFtZU9uUGFyZW50KSB7XG4gICAgICAgICAgICByZXR1cm4gaUZyYW1lT25QYXJlbnQ7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5nZXRJRnJhbWVGcm9tV2luZG93KGlkZW50aWZpZXIpO1xuICAgIH1cblxuICAgIGFkZElGcmFtZVRvV2luZG93Qm9keShpZGVudGlmaWVyOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3Qgc2Vzc2lvbklmcmFtZSA9IHdpbmRvdy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdpZnJhbWUnKTtcbiAgICAgICAgc2Vzc2lvbklmcmFtZS5pZCA9IGlkZW50aWZpZXI7XG4gICAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dEZWJ1ZyhzZXNzaW9uSWZyYW1lKTtcbiAgICAgICAgc2Vzc2lvbklmcmFtZS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xuICAgICAgICB3aW5kb3cuZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChzZXNzaW9uSWZyYW1lKTtcbiAgICAgICAgcmV0dXJuIHNlc3Npb25JZnJhbWU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRJRnJhbWVGcm9tUGFyZW50V2luZG93KGlkZW50aWZpZXI6IHN0cmluZykge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgcmV0dXJuIHdpbmRvdy5wYXJlbnQuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWRlbnRpZmllcik7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRJRnJhbWVGcm9tV2luZG93KGlkZW50aWZpZXI6IHN0cmluZykge1xuICAgICAgICByZXR1cm4gd2luZG93LmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkZW50aWZpZXIpO1xuICAgIH1cbn1cbiJdfQ==