Skip to content

Commit 113d9da

Browse files
committed
Deconstruct documentaion-structure
Hard coded all of versions & posts with a static route
1 parent 802992b commit 113d9da

47 files changed

Lines changed: 610 additions & 91 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

src/app/main/components/index.ts

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
1-
import { TopNavComponent } from "../components/top-nav/top-nav.component";
2-
import { SideNavComponent } from "../components/side-nav/side-nav.component";
3-
import { PostComponent } from "../components/post/post.component";
4-
import { NavigatorComponent } from "../components/navigator/navigator.component";
5-
import { SectionNavComponent } from "../components/section-nav/section-nav.component";
6-
import { FooterComponent } from "../components/footer/footer.component";
1+
import {TopNavComponent} from "../components/top-nav/top-nav.component";
2+
import {SideNavComponent} from "../components/side-nav/side-nav.component";
3+
import {PostComponent} from "../components/post/post.component";
4+
import {NavigatorComponent} from "../components/navigator/navigator.component";
5+
import {SectionNavComponent} from "../components/section-nav/section-nav.component";
6+
import {FooterComponent} from "../components/footer/footer.component";
77

88
export const COMPONENTS: any[] = [
99
TopNavComponent,
1010
SideNavComponent,
11-
PostComponent,
12-
NavigatorComponent,
13-
SectionNavComponent,
11+
// PostComponent,
12+
// NavigatorComponent,
13+
// SectionNavComponent,
1414
FooterComponent
1515
];
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
<div class="body-wrapper">
2+
<div *ngIf="version$ | async; let version" class="container-fluid">
3+
4+
<!-- Top Nav -->
5+
<app-top-nav></app-top-nav>
6+
<!-- End Top Nav -->
7+
8+
<div class="main-content d-flex flex-direction-row" id="main-content">
9+
<!-- Side Nav -->
10+
<app-side-nav [version]="version"></app-side-nav>
11+
<!-- EndSide Nav -->
12+
13+
<!-- Content Wrapper -->
14+
<div *ngIf="post$ | async let post" class="content-wrapper">
15+
16+
<!-- Post -->
17+
<app-post [post]="post" [version]="version"></app-post>
18+
<!-- End Post -->
19+
20+
<!-- Post Navigator -->
21+
<app-navigator [data]="{ version: version, post: post }"></app-navigator>
22+
<!-- End Post Navigator -->
23+
</div>
24+
<!-- End Content Wrapper -->
25+
26+
<!-- Section Nav -->
27+
<app-section-nav *ngIf="post$ | async let post" [post]="post" [version]="version"></app-section-nav>
28+
<!-- Section Nav -->
29+
</div>
30+
31+
<!-- Footer -->
32+
<app-footer></app-footer>
33+
<!-- End Footer -->
34+
</div>
35+
</div>

src/app/main/containers/layout copy/layout.component.sass

Whitespace-only changes.
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
import {Component} from "@angular/core";
2+
import {DocService} from "../../services";
3+
import {ActivatedRoute, Router} from "@angular/router";
4+
import {Observable} from "rxjs";
5+
import {tap} from "rxjs/operators";
6+
import {DocumentationVersion, Post} from "../../models";
7+
8+
@Component({
9+
selector: "app-layout",
10+
templateUrl: "./layout.component.html",
11+
styleUrls: ["./layout.component.sass"]
12+
})
13+
export class LayoutComponent {
14+
15+
private version$: Observable<DocumentationVersion>;
16+
private post$: Observable<Post>;
17+
18+
constructor (private route: ActivatedRoute, private router: Router, private docService: DocService) {
19+
20+
21+
this.route.paramMap.pipe(
22+
tap(params => {
23+
24+
const versionId = params.get("versionId");
25+
const postId = params.get("postId");
26+
27+
if (!versionId || !postId) {
28+
this.docService.GetLatestVersion().pipe(
29+
tap(version =>
30+
this.router.navigate([`/docs/${version.version}/${version.groups[0].posts[0].id}`])
31+
)
32+
).subscribe();
33+
} else {
34+
35+
if (!this.version$) {
36+
this.version$ = this.docService
37+
.GetVersion(versionId).pipe(
38+
tap(version => {
39+
if (!version) {
40+
this.router.navigate([`/docs`]);
41+
}
42+
})
43+
);
44+
}
45+
46+
this.post$ = this.docService.GetPost(versionId, postId).pipe(
47+
tap(post => {
48+
if (!post) {
49+
this.router.navigate([`/docs`]);
50+
}
51+
})
52+
);
53+
54+
}
55+
})
56+
).subscribe();
57+
}
58+
}

src/app/main/containers/layout/layout.component.html

Lines changed: 4 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,15 @@
11
<div class="body-wrapper">
2-
<div *ngIf="version$ | async; let version" class="container-fluid">
2+
<div class="container-fluid">
33

44
<!-- Top Nav -->
55
<app-top-nav></app-top-nav>
66
<!-- End Top Nav -->
77

8+
<!-- Main Content -->
89
<div class="main-content d-flex flex-direction-row" id="main-content">
9-
<!-- Side Nav -->
10-
<app-side-nav [version]="version"></app-side-nav>
11-
<!-- EndSide Nav -->
12-
13-
<!-- Content Wrapper -->
14-
<div *ngIf="post$ | async let post" class="content-wrapper">
15-
16-
<!-- Post -->
17-
<app-post [post]="post" [version]="version"></app-post>
18-
<!-- End Post -->
19-
20-
<!-- Post Navigator -->
21-
<app-navigator [data]="{ version: version, post: post }"></app-navigator>
22-
<!-- End Post Navigator -->
23-
</div>
24-
<!-- End Content Wrapper -->
25-
26-
<!-- Section Nav -->
27-
<app-section-nav *ngIf="post$ | async let post" [post]="post" [version]="version"></app-section-nav>
28-
<!-- Section Nav -->
10+
<router-outlet></router-outlet>
2911
</div>
12+
<!-- End Main Content -->
3013

3114
<!-- Footer -->
3215
<app-footer></app-footer>
Lines changed: 1 addition & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -1,58 +1,8 @@
11
import {Component} from "@angular/core";
2-
import {DocService} from "../../services";
3-
import {ActivatedRoute, Router} from "@angular/router";
4-
import {Observable} from "rxjs";
5-
import {tap} from "rxjs/operators";
6-
import {DocumentationVersion, Post} from "../../models";
72

83
@Component({
94
selector: "app-layout",
105
templateUrl: "./layout.component.html",
116
styleUrls: ["./layout.component.sass"]
127
})
13-
export class LayoutComponent {
14-
15-
private version$: Observable<DocumentationVersion>;
16-
private post$: Observable<Post>;
17-
18-
constructor (private route: ActivatedRoute, private router: Router, private docService: DocService) {
19-
20-
21-
this.route.paramMap.pipe(
22-
tap(params => {
23-
24-
const versionId = params.get("versionId");
25-
const postId = params.get("postId");
26-
27-
if (!versionId || !postId) {
28-
this.docService.GetLatestVersion().pipe(
29-
tap(version =>
30-
this.router.navigate([`/docs/${version.version}/${version.groups[0].posts[0].id}`])
31-
)
32-
).subscribe();
33-
} else {
34-
35-
if (!this.version$) {
36-
this.version$ = this.docService
37-
.GetVersion(versionId).pipe(
38-
tap(version => {
39-
if (!version) {
40-
this.router.navigate([`/docs`]);
41-
}
42-
})
43-
);
44-
}
45-
46-
this.post$ = this.docService.GetPost(versionId, postId).pipe(
47-
tap(post => {
48-
if (!post) {
49-
this.router.navigate([`/docs`]);
50-
}
51-
})
52-
);
53-
54-
}
55-
})
56-
).subscribe();
57-
}
58-
}
8+
export class LayoutComponent {}

src/app/main/main-routing.module.ts

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,18 +5,20 @@ import * as fromContainers from "./containers";
55
import * as fromComponents from "./components";
66

77
const routes: Routes = [
8-
{
9-
path: "docs/:versionId/:postId",
10-
component: fromContainers.LayoutComponent
11-
},
128
{
139
path: "docs",
14-
component: fromContainers.LayoutComponent
10+
component: fromContainers.LayoutComponent,
11+
children: [
12+
{
13+
path: "v1.0.0",
14+
loadChildren: () => import("../version1.0.0").then(m => m.Version100Module)
15+
}
16+
]
1517
},
1618
{
1719
path: "",
18-
pathMatch: "full",
19-
redirectTo: "docs"
20+
redirectTo: "docs/v1.0.0/getting-started",
21+
pathMatch: "full"
2022
}
2123
];
2224

src/app/main/main.module.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@ import {BrowserModule} from "@angular/platform-browser";
22
import {NgModule} from "@angular/core";
33
import {HttpClientModule} from "@angular/common/http";
44

5+
import {MainRoutingModule} from "./main-routing.module";
6+
57
import * as fromContainers from "./containers";
68
import * as fromComponents from "./components";
79
import * as fromServices from "./services";
810
import * as fromPipes from "./pipes";
911

10-
import {MainRoutingModule} from "./main-routing.module";
11-
1212
@NgModule({
1313
declarations: [
1414
...fromContainers.CONTAINERS,
@@ -19,7 +19,6 @@ import {MainRoutingModule} from "./main-routing.module";
1919
BrowserModule,
2020
MainRoutingModule,
2121
HttpClientModule,
22-
NgxDynamicTemplateModule.forRoot()
2322
],
2423
providers: [
2524
...fromServices.SERVICES

src/app/shared/components/index.ts

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
import {PostHeaderComponent} from "./post-header/post-header.component";
2+
import {PostSectionNavigatorComponent} from "./post-section-navigator/post-section-navigator.component";
3+
import {PostArticleComponent} from "./post-article/post-article.component";
4+
import {PostNavigatorComponent} from "./post-navigator/post-navigator.component";
5+
import {SideNavigatorGroupComponent} from "./side-navigator-group/side-navigator-group.component";
6+
import {SideNavigatorItemComponent} from "./side-navigator-item/side-navigator-item.component";
7+
8+
export * from "./post-header/post-header.component";
9+
export * from "./post-section-navigator/post-section-navigator.component";
10+
export * from "./post-article/post-article.component";
11+
export * from "./post-navigator/post-navigator.component";
12+
export * from "./side-navigator-group/side-navigator-group.component";
13+
export * from "./side-navigator-item/side-navigator-item.component";
14+
15+
export const COMPONENTS: any[] = [
16+
PostHeaderComponent,
17+
PostSectionNavigatorComponent,
18+
PostArticleComponent,
19+
PostNavigatorComponent,
20+
SideNavigatorGroupComponent,
21+
SideNavigatorItemComponent
22+
];
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
<article id="post-article">
2+
<ng-content select=".article"></ng-content>
3+
</article>

0 commit comments

Comments
 (0)