bitfront-library
Version:
Angular CLI project with components and classes used by other Angular projects of the BIT foundation.
68 lines • 3.88 kB
JavaScript
;
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (this && this.__metadata) || function (k, v) {
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.RouterEffects = void 0;
var core_1 = require("@angular/core");
var router_1 = require("@angular/router");
var common_1 = require("@angular/common");
var effects_1 = require("@ngrx/effects");
var operators_1 = require("rxjs/operators");
var RouterActions = require("../actions/router.action");
var i0 = require("@angular/core");
var i1 = require("@ngrx/effects");
var i2 = require("@angular/router");
var i3 = require("@angular/common");
var RouterEffects = /** @class */ (function () {
function RouterEffects(actions$, router, location) {
var _this = this;
this.actions$ = actions$;
this.router = router;
this.location = location;
//este efecto ejecuta la navegación via router escuchando las acciones GO a la que le suministramos la información de donde ir
this.navigate$ = this.actions$.pipe(effects_1.ofType(RouterActions.GO), operators_1.map(function (action) { return action.payload; }), operators_1.tap(function (_a) {
var path = _a.path, queryParams = _a.query, extras = _a.extras;
_this.router.navigate(path, __assign({ queryParams: queryParams }, extras));
}));
this.navigateBack$ = this.actions$.pipe(effects_1.ofType(RouterActions.BACK), operators_1.tap(function () { return _this.location.back; }));
this.navigateForward$ = this.actions$.pipe(effects_1.ofType(RouterActions.FORWARD), operators_1.tap(function () { return _this.location.forward; }));
}
RouterEffects.ɵfac = function RouterEffects_Factory(t) { return new (t || RouterEffects)(i0.ɵɵinject(i1.Actions), i0.ɵɵinject(i2.Router), i0.ɵɵinject(i3.Location)); };
RouterEffects.ɵprov = i0.ɵɵdefineInjectable({ token: RouterEffects, factory: RouterEffects.ɵfac });
__decorate([
effects_1.Effect({ dispatch: false }),
__metadata("design:type", Object)
], RouterEffects.prototype, "navigate$", void 0);
__decorate([
effects_1.Effect({ dispatch: false }),
__metadata("design:type", Object)
], RouterEffects.prototype, "navigateBack$", void 0);
__decorate([
effects_1.Effect({ dispatch: false }),
__metadata("design:type", Object)
], RouterEffects.prototype, "navigateForward$", void 0);
return RouterEffects;
}());
exports.RouterEffects = RouterEffects;
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(RouterEffects, [{
type: core_1.Injectable
}], function () { return [{ type: i1.Actions }, { type: i2.Router }, { type: i3.Location }]; }, { navigate$: [], navigateBack$: [], navigateForward$: [] }); })();
//# sourceMappingURL=router.effect.js.map