1 | "use strict";
|
2 | var __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 | };
|
8 | var __metadata = (this && this.__metadata) || function (k, v) {
|
9 | if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
10 | };
|
11 | var core_1 = require('@angular/core');
|
12 | var router_1 = require('@angular/router');
|
13 | var current_tutorial_1 = require('./current-tutorial');
|
14 | var dynamic_base_module_1 = require('./dynamic-base-module');
|
15 | var page_title_service_1 = require('./page-title.service');
|
16 | var 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 | }());
|
77 | exports.TutorialPage = TutorialPage;
|
78 |
|
\ | No newline at end of file |