Skip to content

Commit 2bac895

Browse files
committed
Stubbing out roadmap display
1 parent d9099d5 commit 2bac895

File tree

3 files changed

+54
-2
lines changed

3 files changed

+54
-2
lines changed

src/app/roadmap/BUILD.bazel

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,5 +20,6 @@ ng_ts_project(
2020
"@npm//@angular/common",
2121
"@npm//@angular/core",
2222
"@npm//@angular/router",
23+
"@npm//rxjs",
2324
],
2425
)

src/app/roadmap/roadmap.component.html

Lines changed: 32 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,35 @@
1-
<article>
1+
<ng-template #projectTpl let-project>
2+
<section
3+
class="group rounded-lg shadow-lg bg-secondary/20 dark:text-white py-8 px-4 pt-2">
4+
<h2>{{ project.title }}</h2>
5+
<p>{{ project.shortDescription }}</p>
6+
<div class="flex flex-row relative items-center px-1">
7+
<div
8+
class="rounded-full w-8 h-8 bg-success ring-2 shadow-lg ring-black dark:ring-white"></div>
9+
<div class="flex-1 border-b-2 border-white border-solid"></div>
10+
<div
11+
class="rounded-full w-8 h-8 bg-transparent ring-2 shadow-lg ring-black dark:ring-white overflow-hidden">
12+
<div
13+
class="rounded-full group-hover:animate-pulse w-full h-full bg-primary blur-lg"></div>
14+
</div>
15+
<div class="flex-1 border-b-2 border-white border-dashed"></div>
16+
<div
17+
class="rounded-full w-8 h-8 bg-transparent ring-2 shadow-lg ring-black dark:ring-white overflow-hidden"></div>
18+
</div>
19+
</section>
20+
</ng-template>
21+
22+
<article class="max-w-3xl mx-auto my-8 p-8">
23+
<ng-container *ngIf="projects$ | async as projects">
24+
<ng-container *ngFor="let project of projects">
25+
<ng-container
26+
*ngTemplateOutlet="
27+
projectTpl;
28+
context: {$implicit: project}
29+
"></ng-container>
30+
</ng-container>
31+
</ng-container>
32+
233
<h1>Roadmap Notes</h1>
334
<ul>
435
<li>Async API</li>
Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,29 @@
11
import {Component, ChangeDetectionStrategy} from '@angular/core';
2+
import {BehaviorSubject, from, Observable} from 'rxjs';
3+
4+
export interface IRoadmapProject {
5+
title: string;
6+
shortDescription: string;
7+
readme: string;
8+
}
29

310
@Component({
411
selector: 'ecsact-roadmap',
512
templateUrl: './roadmap.component.html',
613
styleUrls: ['./roadmap.component.scss'],
714
changeDetection: ChangeDetectionStrategy.OnPush,
815
})
9-
export class RoadmapComponent {}
16+
export class RoadmapComponent {
17+
readonly projects$: Observable<IRoadmapProject[]>;
18+
19+
constructor() {
20+
// TODO(zaucy): Fetch from GitHub
21+
this.projects$ = new BehaviorSubject([
22+
{
23+
title: 'Async API',
24+
shortDescription: 'TODO: Fetch description from GitHub',
25+
readme: '',
26+
},
27+
]);
28+
}
29+
}

0 commit comments

Comments
 (0)