UNPKG

3.96 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 current_tutorial_1 = require('./current-tutorial');
14var dynamic_base_module_1 = require('./dynamic-base-module');
15var page_title_service_1 = require('./page-title.service');
16var TutorialPage = (function () {
17 function TutorialPage(route, compiler, viewContainerRef, currentTutorial, seo) {
18 this.route = route;
19 this.compiler = compiler;
20 this.viewContainerRef = viewContainerRef;
21 this.currentTutorial = currentTutorial;
22 this.seo = seo;
23 }
24 TutorialPage.prototype.ngOnInit = function () {
25 var _this = this;
26 this.route.data.subscribe(function (data) {
27 var routeData = data;
28 _this.tutorial = routeData.tutorialObject;
29 _this.step = routeData.stepObject;
30 _this.steps = routeData.steps;
31 _this.currentTutorial.updateCurrentTutorial(_this.tutorial);
32 _this.currentTutorial.updateCurrentStep(_this.step);
33 _this.currentTutorial.updateCurrentSteps(_this.steps);
34 var htmlContent = data.resolveData.step;
35 _this.seo.setSeoDescription(htmlContent);
36 _this.seo.addKeywords(_this.step.name.split(' ') || []);
37 var DynamicComponent = (function () {
38 function DynamicComponent() {
39 }
40 DynamicComponent = __decorate([
41 core_1.Component({
42 selector: 'tutorial-container',
43 template: htmlContent
44 }),
45 __metadata('design:paramtypes', [])
46 ], DynamicComponent);
47 return DynamicComponent;
48 }());
49 var DynamicModule = (function () {
50 function DynamicModule() {
51 }
52 DynamicModule = __decorate([
53 core_1.NgModule({
54 imports: [dynamic_base_module_1.DummyModule],
55 declarations: [DynamicComponent]
56 }),
57 __metadata('design:paramtypes', [])
58 ], DynamicModule);
59 return DynamicModule;
60 }());
61 var factories = _this.compiler.compileModuleAndAllComponentsSync(DynamicModule);
62 var compFactory = factories.componentFactories.find(function (x) { return x.componentType === DynamicComponent; });
63 var injector = core_1.ReflectiveInjector.fromResolvedProviders([], _this.viewContainerRef.parentInjector);
64 _this.viewContainerRef.createComponent(compFactory, 0, injector, []);
65 });
66 };
67 TutorialPage = __decorate([
68 core_1.Injectable(),
69 core_1.Component({
70 selector: 'tutorial-page',
71 template: "<div class='tutorial-container'></div>"
72 }),
73 __metadata('design:paramtypes', [router_1.ActivatedRoute, core_1.Compiler, core_1.ViewContainerRef, current_tutorial_1.ActivatedTutorial, page_title_service_1.PageTitleService])
74 ], TutorialPage);
75 return TutorialPage;
76}());
77exports.TutorialPage = TutorialPage;
78//# sourceMappingURL=tutorial-page.component.js.map
\No newline at end of file