From aaafdb323fddfa4654117b84b371ba49de3dd433 Mon Sep 17 00:00:00 2001 From: crupest Date: Sat, 23 Feb 2019 23:55:04 +0800 Subject: Add icon of todo list and redesign the page. --- Timeline/ClientApp/src/app/app.module.ts | 4 ++- .../src/app/todo-item/todo-item.component.css | 27 ++++++++++++++++++++ .../src/app/todo-item/todo-item.component.html | 11 ++++++++ .../src/app/todo-item/todo-item.component.spec.ts | 25 +++++++++++++++++++ .../src/app/todo-item/todo-item.component.ts | 14 +++++++++++ .../app/todo-list-page/todo-list-color-block.css | 7 ++++++ .../todo-list-page/todo-list-page.component.css | 29 +++++----------------- .../todo-list-page/todo-list-page.component.html | 19 +++++++------- .../app/todo-list-page/todo-list-page.component.ts | 2 +- 9 files changed, 103 insertions(+), 35 deletions(-) create mode 100644 Timeline/ClientApp/src/app/todo-item/todo-item.component.css create mode 100644 Timeline/ClientApp/src/app/todo-item/todo-item.component.html create mode 100644 Timeline/ClientApp/src/app/todo-item/todo-item.component.spec.ts create mode 100644 Timeline/ClientApp/src/app/todo-item/todo-item.component.ts create mode 100644 Timeline/ClientApp/src/app/todo-list-page/todo-list-color-block.css (limited to 'Timeline/ClientApp/src') diff --git a/Timeline/ClientApp/src/app/app.module.ts b/Timeline/ClientApp/src/app/app.module.ts index 3247cf92..86511be8 100644 --- a/Timeline/ClientApp/src/app/app.module.ts +++ b/Timeline/ClientApp/src/app/app.module.ts @@ -12,12 +12,14 @@ import { import { AppComponent } from './app.component'; import { HomeComponent } from './home/home.component'; import { TodoListPageComponent } from './todo-list-page/todo-list-page.component'; +import { TodoItemComponent } from './todo-item/todo-item.component'; @NgModule({ declarations: [ AppComponent, HomeComponent, - TodoListPageComponent + TodoListPageComponent, + TodoItemComponent ], imports: [ BrowserModule.withServerTransition({ appId: 'ng-cli-universal' }), diff --git a/Timeline/ClientApp/src/app/todo-item/todo-item.component.css b/Timeline/ClientApp/src/app/todo-item/todo-item.component.css new file mode 100644 index 00000000..ef952a04 --- /dev/null +++ b/Timeline/ClientApp/src/app/todo-item/todo-item.component.css @@ -0,0 +1,27 @@ +.item-card { + padding: 0; + display: flex; + overflow: hidden; +} + +.item-color-block { + width: 15px; + align-self: stretch; + flex: 0 0 auto; +} + +.item-icon { + width: 1.2em; + height: 1.2em; + vertical-align: -0.25em; +} + +.item-title { + vertical-align: middle; +} + +.item-detail-button { + width: unset; + height: unset; + line-height: unset; +} diff --git a/Timeline/ClientApp/src/app/todo-item/todo-item.component.html b/Timeline/ClientApp/src/app/todo-item/todo-item.component.html new file mode 100644 index 00000000..624586cb --- /dev/null +++ b/Timeline/ClientApp/src/app/todo-item/todo-item.component.html @@ -0,0 +1,11 @@ + + + +
+ + {{ item.id }}. {{ item.title }} + + arrow_forward + +
+
diff --git a/Timeline/ClientApp/src/app/todo-item/todo-item.component.spec.ts b/Timeline/ClientApp/src/app/todo-item/todo-item.component.spec.ts new file mode 100644 index 00000000..7ec7d768 --- /dev/null +++ b/Timeline/ClientApp/src/app/todo-item/todo-item.component.spec.ts @@ -0,0 +1,25 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { TodoItemComponent } from './todo-item.component'; + +describe('TodoItemComponent', () => { + let component: TodoItemComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [ TodoItemComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(TodoItemComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/Timeline/ClientApp/src/app/todo-item/todo-item.component.ts b/Timeline/ClientApp/src/app/todo-item/todo-item.component.ts new file mode 100644 index 00000000..27d57e28 --- /dev/null +++ b/Timeline/ClientApp/src/app/todo-item/todo-item.component.ts @@ -0,0 +1,14 @@ +import { Component, OnInit, Input } from '@angular/core'; +import { WorkItem } from '../todo-list-page/todo-list.service'; + +@Component({ + selector: 'app-todo-item', + templateUrl: './todo-item.component.html', + styleUrls: ['./todo-item.component.css', '../todo-list-page/todo-list-color-block.css'] +}) +export class TodoItemComponent { + + @Input() item: WorkItem; + + +} diff --git a/Timeline/ClientApp/src/app/todo-list-page/todo-list-color-block.css b/Timeline/ClientApp/src/app/todo-list-page/todo-list-color-block.css new file mode 100644 index 00000000..5e0d4ba9 --- /dev/null +++ b/Timeline/ClientApp/src/app/todo-list-page/todo-list-color-block.css @@ -0,0 +1,7 @@ +.color-block-open { + background: red; +} + +.color-block-closed { + background: green; +} diff --git a/Timeline/ClientApp/src/app/todo-list-page/todo-list-page.component.css b/Timeline/ClientApp/src/app/todo-list-page/todo-list-page.component.css index ed260d5c..754b786e 100644 --- a/Timeline/ClientApp/src/app/todo-list-page/todo-list-page.component.css +++ b/Timeline/ClientApp/src/app/todo-list-page/todo-list-page.component.css @@ -5,29 +5,20 @@ .item-box { display: flex; width: 100%; - padding: 5px; box-sizing: border-box; } .first-item-box { justify-content: space-between; + padding: 0 0 5px 5px; } -.item-card { - display: flex; - align-items: center; -} - -.item-img { - padding: 1px; - background: white; - border-radius: 3px; +.non-first-item-box { + padding: 5px; } -.item-title { - padding-left: 5px; - color: black; - text-decoration: none; +.space { + flex: 1 4 20px; } .sample-box { @@ -35,7 +26,7 @@ align-self: flex-start; } -.sample-container { +.sample-item { display: flex; align-items: center; } @@ -46,11 +37,3 @@ height: 1em; margin-right: 2px; } - -.sample-color-block-open { - background: tomato; -} - -.sample-color-block-closed { - background: mediumspringgreen; -} diff --git a/Timeline/ClientApp/src/app/todo-list-page/todo-list-page.component.html b/Timeline/ClientApp/src/app/todo-list-page/todo-list-page.component.html index 0dcc8a94..3b4809ae 100644 --- a/Timeline/ClientApp/src/app/todo-list-page/todo-list-page.component.html +++ b/Timeline/ClientApp/src/app/todo-list-page/todo-list-page.component.html @@ -2,18 +2,17 @@ -
- - - {{item.id}} {{item.title}} - +
+ +
-
- means working now. +
+ + means working now.
-
- means completed. +
+ + means completed.
click on item to see details.
diff --git a/Timeline/ClientApp/src/app/todo-list-page/todo-list-page.component.ts b/Timeline/ClientApp/src/app/todo-list-page/todo-list-page.component.ts index 06f49923..e58cca7d 100644 --- a/Timeline/ClientApp/src/app/todo-list-page/todo-list-page.component.ts +++ b/Timeline/ClientApp/src/app/todo-list-page/todo-list-page.component.ts @@ -4,7 +4,7 @@ import { TodoListService, WorkItem } from './todo-list.service'; @Component({ selector: 'app-todo-list-page', templateUrl: './todo-list-page.component.html', - styleUrls: ['./todo-list-page.component.css'] + styleUrls: ['./todo-list-page.component.css', './todo-list-color-block.css'] }) export class TodoListPageComponent implements OnInit { -- cgit v1.2.3