UNPKG

ng-gapi

Version:
38 lines 4.9 kB
import { __decorate, __param } from "tslib"; import { Injectable, Inject } from '@angular/core'; import { GoogleApiService } from './GoogleApiService'; import { Observable, of } from 'rxjs'; import { mergeMap } from 'rxjs/operators'; let GoogleAuthService = class GoogleAuthService { constructor(googleApi) { this.googleApi = googleApi; this.GoogleAuth = undefined; this.googleApi.onLoad().subscribe(() => { this.loadGapiAuth().subscribe(); }); } getAuth(newInstance = false) { if (!this.GoogleAuth || newInstance) { return this.googleApi.onLoad() .pipe(mergeMap(() => this.loadGapiAuth())); } return of(this.GoogleAuth); } loadGapiAuth() { return new Observable((observer) => { gapi.load('auth2', () => { gapi.auth2.init(this.googleApi.getConfig().getClientConfig()).then((auth) => { this.GoogleAuth = auth; observer.next(auth); observer.complete(); }).catch((err) => observer.error(err)); }); }); } }; GoogleAuthService = __decorate([ Injectable(), __param(0, Inject(GoogleApiService)) ], GoogleAuthService); export { GoogleAuthService }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR29vZ2xlQXV0aFNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvR29vZ2xlQXV0aFNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBRXBELE9BQU8sRUFBQyxVQUFVLEVBQVksRUFBRSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQzlDLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUd4QyxJQUFhLGlCQUFpQixHQUE5QixNQUFhLGlCQUFpQjtJQUc1QixZQUE4QyxTQUEyQjtRQUEzQixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUZqRSxlQUFVLEdBQWUsU0FBUyxDQUFDO1FBR3pDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNyQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDbEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sT0FBTyxDQUFDLFdBQVcsR0FBRyxLQUFLO1FBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxJQUFJLFdBQVcsRUFBRTtZQUNuQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFO2lCQUMzQixJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDOUM7UUFDRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVPLFlBQVk7UUFDbEIsT0FBTyxJQUFJLFVBQVUsQ0FBQyxDQUFDLFFBQThCLEVBQUUsRUFBRTtZQUN2RCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUU7Z0JBQ3RCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxFQUFFLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFnQixFQUFFLEVBQUU7b0JBQ3RGLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO29CQUN2QixRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUNwQixRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ3RCLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQVEsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQzlDLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YsQ0FBQTtBQTVCWSxpQkFBaUI7SUFEN0IsVUFBVSxFQUFFO0lBSUUsV0FBQSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQTtHQUgxQixpQkFBaUIsQ0E0QjdCO1NBNUJZLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZSwgSW5qZWN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7R29vZ2xlQXBpU2VydmljZX0gZnJvbSAnLi9Hb29nbGVBcGlTZXJ2aWNlJztcbmltcG9ydCBHb29nbGVBdXRoID0gZ2FwaS5hdXRoMi5Hb29nbGVBdXRoO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBPYnNlcnZlciwgb2Z9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttZXJnZU1hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgR29vZ2xlQXV0aFNlcnZpY2Uge1xuICBwcml2YXRlIEdvb2dsZUF1dGg6IEdvb2dsZUF1dGggPSB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IoQEluamVjdChHb29nbGVBcGlTZXJ2aWNlKSBwcml2YXRlIGdvb2dsZUFwaTogR29vZ2xlQXBpU2VydmljZSkge1xuICAgIHRoaXMuZ29vZ2xlQXBpLm9uTG9hZCgpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLmxvYWRHYXBpQXV0aCgpLnN1YnNjcmliZSgpO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdldEF1dGgobmV3SW5zdGFuY2UgPSBmYWxzZSk6IE9ic2VydmFibGU8R29vZ2xlQXV0aD4ge1xuICAgIGlmICghdGhpcy5Hb29nbGVBdXRoIHx8IG5ld0luc3RhbmNlKSB7XG4gICAgICByZXR1cm4gdGhpcy5nb29nbGVBcGkub25Mb2FkKClcbiAgICAgICAgLnBpcGUobWVyZ2VNYXAoKCkgPT4gdGhpcy5sb2FkR2FwaUF1dGgoKSkpO1xuICAgIH1cbiAgICByZXR1cm4gb2YodGhpcy5Hb29nbGVBdXRoKTtcbiAgfVxuXG4gIHByaXZhdGUgbG9hZEdhcGlBdXRoKCk6IE9ic2VydmFibGU8R29vZ2xlQXV0aD4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZSgob2JzZXJ2ZXI6IE9ic2VydmVyPEdvb2dsZUF1dGg+KSA9PiB7XG4gICAgICBnYXBpLmxvYWQoJ2F1dGgyJywgKCkgPT4ge1xuICAgICAgICBnYXBpLmF1dGgyLmluaXQodGhpcy5nb29nbGVBcGkuZ2V0Q29uZmlnKCkuZ2V0Q2xpZW50Q29uZmlnKCkpLnRoZW4oKGF1dGg6IEdvb2dsZUF1dGgpID0+IHtcbiAgICAgICAgICB0aGlzLkdvb2dsZUF1dGggPSBhdXRoO1xuICAgICAgICAgIG9ic2VydmVyLm5leHQoYXV0aCk7XG4gICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcbiAgICAgICAgfSkuY2F0Y2goKGVycjogYW55KSA9PiBvYnNlcnZlci5lcnJvcihlcnIpKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG59XG4iXX0=