UNPKG

3.49 kBJavaScriptView Raw
1"use strict";
2var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3 var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4 if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5 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;
6 return c > 3 && r && Object.defineProperty(target, key, r), r;
7};
8var __metadata = (this && this.__metadata) || function (k, v) {
9 if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10};
11var core_1 = require('@angular/core');
12var router_1 = require('@angular/router');
13var rxjs_1 = require('rxjs');
14var current_tutorial_1 = require('./current-tutorial');
15var step_utils_1 = require('./step-utils');
16var TutorialNavigation = (function () {
17 function TutorialNavigation(activated, el, renderer, currentRoute, utils) {
18 var _this = this;
19 this.activated = activated;
20 this.currentRoute = currentRoute;
21 this.utils = utils;
22 rxjs_1.Observable.zip(activated.step, activated.steps, function (step, steps) {
23 return {
24 step: step,
25 steps: steps
26 };
27 }).subscribe(function (data) {
28 var step = data.step;
29 var steps = data.steps;
30 var index = steps.findIndex(function (s) {
31 return s.template === step.template;
32 });
33 if (_this.tutorialNavigation === 'next') {
34 if (index === steps.length - 1) {
35 utils.disableElement(el, renderer);
36 }
37 else {
38 var next = steps[index + 1];
39 if (next) {
40 utils.appendRouteLink(el, renderer, utils.createAbsoluteLink('../' + next.url, _this.currentRoute.firstChild));
41 }
42 else {
43 utils.disableElement(el, renderer);
44 }
45 }
46 }
47 else if (_this.tutorialNavigation === 'previous') {
48 if (index === 0) {
49 utils.disableElement(el, renderer);
50 }
51 else {
52 var previous = steps[index - 1];
53 if (previous) {
54 utils.appendRouteLink(el, renderer, utils.createAbsoluteLink('../' + previous.url, _this.currentRoute.firstChild));
55 }
56 else {
57 utils.disableElement(el, renderer);
58 }
59 }
60 }
61 });
62 }
63 __decorate([
64 core_1.Input('tutorialNavigation'),
65 __metadata('design:type', String)
66 ], TutorialNavigation.prototype, "tutorialNavigation", void 0);
67 TutorialNavigation = __decorate([
68 core_1.Directive({
69 selector: '[tutorialNavigation]'
70 }),
71 core_1.Injectable(),
72 __metadata('design:paramtypes', [current_tutorial_1.ActivatedTutorial, core_1.ElementRef, core_1.Renderer, router_1.ActivatedRoute, step_utils_1.StepsUtils])
73 ], TutorialNavigation);
74 return TutorialNavigation;
75}());
76exports.TutorialNavigation = TutorialNavigation;
77//# sourceMappingURL=tutorial-navigation.component.js.map
\No newline at end of file