1 | /**
|
2 | * @fileoverview added by tsickle
|
3 | * @suppress {checkTypes} checked by tsc
|
4 | */
|
5 | import { Injectable } from '@angular/core';
|
6 | import { NacoService } from '../domains/services/naco.service';
|
7 | import { first, map } from 'rxjs/internal/operators';
|
8 | export class AuthenticatedGuard {
|
9 | /**
|
10 | * @param {?} service
|
11 | */
|
12 | constructor(service) {
|
13 | this.service = service;
|
14 | }
|
15 | /**
|
16 | * @return {?}
|
17 | */
|
18 | canActivate() {
|
19 | return this.service.getUser().pipe(first(), map((user) => {
|
20 | if (null === user) {
|
21 | let /** @type {?} */ redirectUri = document.location.protocol + '//' + document.location.hostname;
|
22 | if (document.location.port) {
|
23 | redirectUri += ':' + document.location.port;
|
24 | }
|
25 | window.location.href = this.service.login('basic email', redirectUri + '/auth');
|
26 | }
|
27 | return null !== user;
|
28 | }));
|
29 | }
|
30 | /**
|
31 | * @return {?}
|
32 | */
|
33 | canActivateChild() {
|
34 | return this.canActivate();
|
35 | }
|
36 | }
|
37 | AuthenticatedGuard.decorators = [
|
38 | { type: Injectable },
|
39 | ];
|
40 | /** @nocollapse */
|
41 | AuthenticatedGuard.ctorParameters = () => [
|
42 | { type: NacoService }
|
43 | ];
|
44 | function AuthenticatedGuard_tsickle_Closure_declarations() {
|
45 | /** @type {?} */
|
46 | AuthenticatedGuard.prototype.service;
|
47 | }
|
48 |
|
49 | //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aGVudGljYXRlZC5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuYWtlci9uYWNvLyIsInNvdXJjZXMiOlsiZ3VhcmRzL2F1dGhlbnRpY2F0ZWQuZ3VhcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQy9ELE9BQU8sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFLckQsTUFBTTs7OztnQkFDeUIsT0FBb0I7UUFBcEIsWUFBTyxHQUFQLE9BQU8sQ0FBYTs7Ozs7SUFHeEMsV0FBVztRQUNkLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQzlCLEtBQUssRUFBRSxFQUNQLEdBQUcsQ0FBQyxDQUFDLElBQWlCLEVBQUUsRUFBRTtZQUN0QixJQUFJLElBQUksS0FBSyxJQUFJLEVBQUU7Z0JBQ2YscUJBQUksV0FBVyxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUMsUUFBUSxHQUFHLElBQUksR0FBRyxRQUFRLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQztnQkFFakYsSUFBSSxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRTtvQkFDeEIsV0FBVyxJQUFJLEdBQUcsR0FBRyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztpQkFDL0M7Z0JBRUQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQ3JDLGFBQWEsRUFDYixXQUFXLEdBQUcsT0FBTyxDQUN4QixDQUFDO2FBQ0w7WUFFRCxPQUFPLElBQUksS0FBSyxJQUFJLENBQUM7U0FDeEIsQ0FBQyxDQUNMLENBQUM7Ozs7O0lBR0MsZ0JBQWdCO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDOzs7O1lBNUJqQyxVQUFVOzs7O1lBTEYsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENhbkFjdGl2YXRlLCBDYW5BY3RpdmF0ZUNoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE5hY29TZXJ2aWNlIH0gZnJvbSAnLi4vZG9tYWlucy9zZXJ2aWNlcy9uYWNvLnNlcnZpY2UnO1xuaW1wb3J0IHsgZmlyc3QsIG1hcCB9IGZyb20gJ3J4anMvaW50ZXJuYWwvb3BlcmF0b3JzJztcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuLi9kb21haW5zL21vZGVscy91c2VyJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEF1dGhlbnRpY2F0ZWRHdWFyZCBpbXBsZW1lbnRzIENhbkFjdGl2YXRlLCBDYW5BY3RpdmF0ZUNoaWxkIHtcbiAgICBwdWJsaWMgY29uc3RydWN0b3IocHJpdmF0ZSBzZXJ2aWNlOiBOYWNvU2VydmljZSkge1xuICAgIH1cblxuICAgIHB1YmxpYyBjYW5BY3RpdmF0ZSgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VydmljZS5nZXRVc2VyKCkucGlwZShcbiAgICAgICAgICAgIGZpcnN0KCksXG4gICAgICAgICAgICBtYXAoKHVzZXI6IFVzZXIgfCBudWxsKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKG51bGwgPT09IHVzZXIpIHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IHJlZGlyZWN0VXJpID0gZG9jdW1lbnQubG9jYXRpb24ucHJvdG9jb2wgKyAnLy8nICsgZG9jdW1lbnQubG9jYXRpb24uaG9zdG5hbWU7XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKGRvY3VtZW50LmxvY2F0aW9uLnBvcnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZGlyZWN0VXJpICs9ICc6JyArIGRvY3VtZW50LmxvY2F0aW9uLnBvcnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHRoaXMuc2VydmljZS5sb2dpbihcbiAgICAgICAgICAgICAgICAgICAgICAgICdiYXNpYyBlbWFpbCcsXG4gICAgICAgICAgICAgICAgICAgICAgICByZWRpcmVjdFVyaSArICcvYXV0aCcsXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIG51bGwgIT09IHVzZXI7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY2FuQWN0aXZhdGVDaGlsZCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FuQWN0aXZhdGUoKTtcbiAgICB9XG59XG4iXX0= |
\ | No newline at end of file |