UNPKG

@terminus/ngx-tools

Version:

[![CircleCI][circle-badge]][circle-link] [![codecov][codecov-badge]][codecov-project] [![semantic-release][semantic-release-badge]][semantic-release] [![MIT License][license-image]][license-url] <br> [![NPM version][npm-version-image]][npm-url] [![Github

35 lines 5.17 kB
import { __decorate, __read } from "tslib"; import { Injectable } from '@angular/core'; import { select, Store, } from '@ngrx/store'; import { filter, map, tap, withLatestFrom, } from 'rxjs/operators'; import { FailedToActivateRoute } from '../actions'; import { getDefaultToken, getJwtTokenRoot, } from '../selectors'; var DefaultTokenRequired = /** @class */ (function () { function DefaultTokenRequired( // eslint-disable-next-line @typescript-eslint/no-explicit-any store) { this.store = store; this.currentLoadState = this.store.pipe(select(getJwtTokenRoot()), map(function (s) { return (s && s.jwtTokens.initialTokenStatus) || 'uninitialized'; })); this.currentToken = this.store.pipe(select(getDefaultToken()), map(function (s) { return s || ''; })); } DefaultTokenRequired.prototype.canActivate = function () { var _this = this; return this.currentLoadState.pipe(filter(function (s) { return s !== 'uninitialized'; }), withLatestFrom(this.currentToken), map(function (_a) { var _b = __read(_a, 2), _ = _b[0], token = _b[1]; return token.length > 0; }), tap(function (result) { if (!result) { _this.store.dispatch(new FailedToActivateRoute()); } })); }; DefaultTokenRequired.ctorParameters = function () { return [ { type: Store } ]; }; DefaultTokenRequired = __decorate([ Injectable() ], DefaultTokenRequired); return DefaultTokenRequired; }()); export { DefaultTokenRequired }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdFRva2VuUmVxdWlyZWQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGVybWludXMvbmd4LXRvb2xzL2p3dC8iLCJzb3VyY2VzIjpbImp3dC10b2tlbi1tYW5hZ21lbnQvZ3VhcmRzL2RlZmF1bHRUb2tlblJlcXVpcmVkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFDTCxNQUFNLEVBQ04sS0FBSyxHQUNOLE1BQU0sYUFBYSxDQUFDO0FBRXJCLE9BQU8sRUFDTCxNQUFNLEVBQ04sR0FBRyxFQUNILEdBQUcsRUFDSCxjQUFjLEdBQ2YsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDbkQsT0FBTyxFQUNMLGVBQWUsRUFDZixlQUFlLEdBQ2hCLE1BQU0sY0FBYyxDQUFDO0FBSXRCO0lBV0U7SUFDRSw4REFBOEQ7SUFDdkQsS0FBaUI7UUFBakIsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQVpuQixxQkFBZ0IsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDdkMsTUFBTSxDQUFDLGVBQWUsRUFBRSxDQUFDLEVBQ3pCLEdBQUcsQ0FBQyxVQUFBLENBQUMsSUFBSSxPQUFBLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUMsa0JBQWtCLENBQUMsSUFBSSxlQUFlLEVBQXhELENBQXdELENBQUMsQ0FDbkUsQ0FBQztRQUVLLGlCQUFZLEdBQXVCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUN2RCxNQUFNLENBQUMsZUFBZSxFQUFFLENBQUMsRUFDekIsR0FBRyxDQUFDLFVBQUEsQ0FBQyxJQUFJLE9BQUEsQ0FBQyxJQUFJLEVBQUUsRUFBUCxDQUFPLENBQUMsQ0FDbEIsQ0FBQztJQUtDLENBQUM7SUFFRywwQ0FBVyxHQUFsQjtRQUFBLGlCQVdDO1FBVkMsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUMvQixNQUFNLENBQUMsVUFBQSxDQUFDLElBQUksT0FBQSxDQUFDLEtBQUssZUFBZSxFQUFyQixDQUFxQixDQUFDLEVBQ2xDLGNBQWMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQ2pDLEdBQUcsQ0FBQyxVQUFDLEVBQVU7Z0JBQVYsa0JBQVUsRUFBVCxTQUFDLEVBQUUsYUFBSztZQUFNLE9BQUEsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDO1FBQWhCLENBQWdCLENBQUMsRUFDckMsR0FBRyxDQUFDLFVBQUEsTUFBTTtZQUNSLElBQUksQ0FBQyxNQUFNLEVBQUU7Z0JBQ1gsS0FBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxxQkFBcUIsRUFBRSxDQUFDLENBQUM7YUFDbEQ7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQzs7Z0JBZGUsS0FBSzs7SUFiVixvQkFBb0I7UUFEaEMsVUFBVSxFQUFFO09BQ0Esb0JBQW9CLENBNEJoQztJQUFELDJCQUFDO0NBQUEsQUE1QkQsSUE0QkM7U0E1Qlksb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2FuQWN0aXZhdGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtcbiAgc2VsZWN0LFxuICBTdG9yZSxcbn0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgZmlsdGVyLFxuICBtYXAsXG4gIHRhcCxcbiAgd2l0aExhdGVzdEZyb20sXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgRmFpbGVkVG9BY3RpdmF0ZVJvdXRlIH0gZnJvbSAnLi4vYWN0aW9ucyc7XG5pbXBvcnQge1xuICBnZXREZWZhdWx0VG9rZW4sXG4gIGdldEp3dFRva2VuUm9vdCxcbn0gZnJvbSAnLi4vc2VsZWN0b3JzJztcblxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRGVmYXVsdFRva2VuUmVxdWlyZWQgaW1wbGVtZW50cyBDYW5BY3RpdmF0ZSB7XG4gIHB1YmxpYyBjdXJyZW50TG9hZFN0YXRlID0gdGhpcy5zdG9yZS5waXBlKFxuICAgIHNlbGVjdChnZXRKd3RUb2tlblJvb3QoKSksXG4gICAgbWFwKHMgPT4gKHMgJiYgcy5qd3RUb2tlbnMuaW5pdGlhbFRva2VuU3RhdHVzKSB8fCAndW5pbml0aWFsaXplZCcpLFxuICApO1xuXG4gIHB1YmxpYyBjdXJyZW50VG9rZW46IE9ic2VydmFibGU8c3RyaW5nPiA9IHRoaXMuc3RvcmUucGlwZShcbiAgICBzZWxlY3QoZ2V0RGVmYXVsdFRva2VuKCkpLFxuICAgIG1hcChzID0+IHMgfHwgJycpLFxuICApO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgcHVibGljIHN0b3JlOiBTdG9yZTxhbnk+LFxuICApIHt9XG5cbiAgcHVibGljIGNhbkFjdGl2YXRlKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLmN1cnJlbnRMb2FkU3RhdGUucGlwZShcbiAgICAgIGZpbHRlcihzID0+IHMgIT09ICd1bmluaXRpYWxpemVkJyksXG4gICAgICB3aXRoTGF0ZXN0RnJvbSh0aGlzLmN1cnJlbnRUb2tlbiksXG4gICAgICBtYXAoKFtfLCB0b2tlbl0pID0+IHRva2VuLmxlbmd0aCA+IDApLFxuICAgICAgdGFwKHJlc3VsdCA9PiB7XG4gICAgICAgIGlmICghcmVzdWx0KSB7XG4gICAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgRmFpbGVkVG9BY3RpdmF0ZVJvdXRlKCkpO1xuICAgICAgICB9XG4gICAgICB9KSxcbiAgICApO1xuICB9XG59XG4iXX0=