UNPKG

7.63 kBJavaScriptView Raw
1/**
2 * @fileoverview added by tsickle
3 * @suppress {checkTypes} checked by tsc
4 */
5import { Injectable } from '@angular/core';
6import { NacoService } from '../domains/services/naco.service';
7import { first, map } from 'rxjs/internal/operators';
8import { Storage } from '@ubud/storage';
9import { PlatformLocation } from '@angular/common';
10var AuthenticatedGuard = /** @class */ (function () {
11 function AuthenticatedGuard(naco, storage, platformLocation) {
12 this.naco = naco;
13 this.storage = storage;
14 this.platformLocation = platformLocation;
15 }
16 /**
17 * @param {?} route
18 * @return {?}
19 */
20 AuthenticatedGuard.prototype.canActivate = /**
21 * @param {?} route
22 * @return {?}
23 */
24 function (route) {
25 var _this = this;
26 return this.naco.getUser().pipe(first(), map(function (user) {
27 if (null === user) {
28 var /** @type {?} */ base = _this.rtrim((/** @type {?} */ (_this.platformLocation)).location.href);
29 var /** @type {?} */ uri = _this.naco.buildNestedUri(route.root);
30 var /** @type {?} */ next = base.replace(uri, '') + '/' + _this.ltrim(uri);
31 var /** @type {?} */ origin_1 = (/** @type {?} */ (_this.platformLocation)).location.origin;
32 _this.storage.set('naco_intended_url', next).then(function () {
33 window.location.href = _this.naco.login('basic email', origin_1 + '/auth');
34 });
35 }
36 return !!user;
37 }));
38 };
39 /**
40 * @param {?} route
41 * @return {?}
42 */
43 AuthenticatedGuard.prototype.canActivateChild = /**
44 * @param {?} route
45 * @return {?}
46 */
47 function (route) {
48 return this.canActivate(route);
49 };
50 /**
51 * @param {?} text
52 * @return {?}
53 */
54 AuthenticatedGuard.prototype.ltrim = /**
55 * @param {?} text
56 * @return {?}
57 */
58 function (text) {
59 return text.replace(/^\/+/, '');
60 };
61 /**
62 * @param {?} text
63 * @return {?}
64 */
65 AuthenticatedGuard.prototype.rtrim = /**
66 * @param {?} text
67 * @return {?}
68 */
69 function (text) {
70 return text.replace(/\/+$/, '');
71 };
72 AuthenticatedGuard.decorators = [
73 { type: Injectable },
74 ];
75 /** @nocollapse */
76 AuthenticatedGuard.ctorParameters = function () { return [
77 { type: NacoService },
78 { type: Storage },
79 { type: PlatformLocation }
80 ]; };
81 return AuthenticatedGuard;
82}());
83export { AuthenticatedGuard };
84function AuthenticatedGuard_tsickle_Closure_declarations() {
85 /** @type {?} */
86 AuthenticatedGuard.prototype.naco;
87 /** @type {?} */
88 AuthenticatedGuard.prototype.storage;
89 /** @type {?} */
90 AuthenticatedGuard.prototype.platformLocation;
91}
92
93//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aGVudGljYXRlZC5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuYWtlci9uYWNvLyIsInNvdXJjZXMiOlsiZ3VhcmRzL2F1dGhlbnRpY2F0ZWQuZ3VhcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQy9ELE9BQU8sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHckQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV4QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Z0NBSXBCLElBQWlCLEVBQVUsT0FBZ0IsRUFBVSxnQkFBa0M7UUFBdkYsU0FBSSxHQUFKLElBQUksQ0FBYTtRQUFVLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFBVSxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCOzs7Ozs7SUFHM0csd0NBQVc7Ozs7Y0FBQyxLQUE2Qjs7UUFDNUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FDM0IsS0FBSyxFQUFFLEVBQ1AsR0FBRyxDQUFDLFVBQUMsSUFBaUI7WUFDbEIsSUFBSSxJQUFJLEtBQUssSUFBSSxFQUFFO2dCQUNmLHFCQUFNLElBQUksR0FBRyxLQUFJLENBQUMsS0FBSyxDQUFDLG1CQUFDLEtBQUksQ0FBQyxnQkFBdUIsRUFBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDdEUscUJBQU0sR0FBRyxHQUFHLEtBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDakQscUJBQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEdBQUcsR0FBRyxLQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUMzRCxxQkFBTSxRQUFNLEdBQUcsbUJBQUMsS0FBSSxDQUFDLGdCQUF1QixFQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztnQkFFOUQsS0FBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDO29CQUM3QyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxLQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FDbEMsYUFBYSxFQUNiLFFBQU0sR0FBRyxPQUFPLENBQ25CLENBQUM7aUJBQ0wsQ0FBQyxDQUFDO2FBQ047WUFFRCxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUM7U0FDakIsQ0FBQyxDQUNMLENBQUM7Ozs7OztJQUdDLDZDQUFnQjs7OztjQUFDLEtBQTZCO1FBQ2pELE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQzs7Ozs7O0lBRzNCLGtDQUFLOzs7O2NBQUMsSUFBWTtRQUN0QixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFDLEVBQUUsQ0FBQyxDQUFDOzs7Ozs7SUFHM0Isa0NBQUs7Ozs7Y0FBQyxJQUFZO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUMsRUFBRSxDQUFDLENBQUM7OztnQkFyQ3RDLFVBQVU7Ozs7Z0JBUkYsV0FBVztnQkFJWCxPQUFPO2dCQUVQLGdCQUFnQjs7NkJBUnpCOztTQVdhLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENhbkFjdGl2YXRlLCBDYW5BY3RpdmF0ZUNoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE5hY29TZXJ2aWNlIH0gZnJvbSAnLi4vZG9tYWlucy9zZXJ2aWNlcy9uYWNvLnNlcnZpY2UnO1xuaW1wb3J0IHsgZmlyc3QsIG1hcCB9IGZyb20gJ3J4anMvaW50ZXJuYWwvb3BlcmF0b3JzJztcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuLi9kb21haW5zL21vZGVscy91c2VyJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFN0b3JhZ2UgfSBmcm9tICdAdWJ1ZC9zdG9yYWdlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlU25hcHNob3QgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXIvc3JjL3JvdXRlcl9zdGF0ZSc7XG5pbXBvcnQgeyBQbGF0Zm9ybUxvY2F0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEF1dGhlbnRpY2F0ZWRHdWFyZCBpbXBsZW1lbnRzIENhbkFjdGl2YXRlLCBDYW5BY3RpdmF0ZUNoaWxkIHtcbiAgICBwdWJsaWMgY29uc3RydWN0b3IocHJpdmF0ZSBuYWNvOiBOYWNvU2VydmljZSwgcHJpdmF0ZSBzdG9yYWdlOiBTdG9yYWdlLCBwcml2YXRlIHBsYXRmb3JtTG9jYXRpb246IFBsYXRmb3JtTG9jYXRpb24pIHtcbiAgICB9XG5cbiAgICBwdWJsaWMgY2FuQWN0aXZhdGUocm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMubmFjby5nZXRVc2VyKCkucGlwZShcbiAgICAgICAgICAgIGZpcnN0KCksXG4gICAgICAgICAgICBtYXAoKHVzZXI6IFVzZXIgfCBudWxsKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKG51bGwgPT09IHVzZXIpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgYmFzZSA9IHRoaXMucnRyaW0oKHRoaXMucGxhdGZvcm1Mb2NhdGlvbiBhcyBhbnkpLmxvY2F0aW9uLmhyZWYpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB1cmkgPSB0aGlzLm5hY28uYnVpbGROZXN0ZWRVcmkocm91dGUucm9vdCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IG5leHQgPSBiYXNlLnJlcGxhY2UodXJpLCAnJykgKyAnLycgKyB0aGlzLmx0cmltKHVyaSk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IG9yaWdpbiA9ICh0aGlzLnBsYXRmb3JtTG9jYXRpb24gYXMgYW55KS5sb2NhdGlvbi5vcmlnaW47XG5cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdG9yYWdlLnNldCgnbmFjb19pbnRlbmRlZF91cmwnLCBuZXh0KS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gdGhpcy5uYWNvLmxvZ2luKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdiYXNpYyBlbWFpbCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3JpZ2luICsgJy9hdXRoJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHJldHVybiAhIXVzZXI7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY2FuQWN0aXZhdGVDaGlsZChyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jYW5BY3RpdmF0ZShyb3V0ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBsdHJpbSh0ZXh0OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGV4dC5yZXBsYWNlKC9eXFwvKy8sJycpO1xuICAgIH1cblxuICAgIHByaXZhdGUgcnRyaW0odGV4dDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRleHQucmVwbGFjZSgvXFwvKyQvLCcnKTtcbiAgICB9XG59XG4iXX0=
\No newline at end of file