From d8e4cbfb9a44eed565079211acdab9c2c766c708 Mon Sep 17 00:00:00 2001 From: Thomas Peetz Date: Wed, 1 Oct 2025 21:06:12 +0200 Subject: [PATCH] display Comics as Artists --- .../comic-artists.component.html | 2 +- .../comic-comics/comic-comics.component.html | 38 ++++++++++++------- .../comic-comics/comic-comics.component.ts | 4 +- .../src/app/kontor/comic/comic.model.ts | 8 ++++ kontor-angular/src/styles.css | 20 ++++++++++ 5 files changed, 57 insertions(+), 15 deletions(-) diff --git a/kontor-angular/src/app/kontor/comic/comic-artists/comic-artists.component.html b/kontor-angular/src/app/kontor/comic/comic-artists/comic-artists.component.html index 94bf2b1..041fe37 100644 --- a/kontor-angular/src/app/kontor/comic/comic-artists/comic-artists.component.html +++ b/kontor-angular/src/app/kontor/comic/comic-artists/comic-artists.component.html @@ -1,4 +1,3 @@ -

artists works!

@@ -34,3 +33,4 @@ }
+ diff --git a/kontor-angular/src/app/kontor/comic/comic-comics/comic-comics.component.html b/kontor-angular/src/app/kontor/comic/comic-comics/comic-comics.component.html index cc60f9f..455589b 100644 --- a/kontor-angular/src/app/kontor/comic/comic-comics/comic-comics.component.html +++ b/kontor-angular/src/app/kontor/comic/comic-comics/comic-comics.component.html @@ -1,14 +1,26 @@ -
-
- -
-
-
- @if (comic()) { -

{{ comic().title }}

- } @else { -

Comic Details

- } -
-
+
+
+ +
+
+ @if (comic()) { +
+

{{ comic().title }}

+ {{ comic().title }} +
+ @for (work of comic().works; track work.worktype.id) { +
+ + @for (artist of work.artists; track artist.id) { +
+ +
+ } +
+ } + } @else { +

Comic Details

+ } +
+ diff --git a/kontor-angular/src/app/kontor/comic/comic-comics/comic-comics.component.ts b/kontor-angular/src/app/kontor/comic/comic-comics/comic-comics.component.ts index 89a983f..e1caf57 100644 --- a/kontor-angular/src/app/kontor/comic/comic-comics/comic-comics.component.ts +++ b/kontor-angular/src/app/kontor/comic/comic-comics/comic-comics.component.ts @@ -3,10 +3,12 @@ import { ComicComicsListComponent } from "../comic-comics-list/comic-comics-list import { ComicDetails } from '../comic.model'; import { ActivatedRouteSnapshot, ResolveFn, RouterStateSnapshot } from '@angular/router'; import { ComicService } from './comic.service'; +import { ComicWorktypeComponent } from '../comic-worktype/comic-worktype.component'; +import { ComicArtistComponent } from '../comic-artist/comic-artist.component'; @Component({ selector: 'app-comic-comics', - imports: [ComicComicsListComponent], + imports: [ComicComicsListComponent, ComicWorktypeComponent, ComicArtistComponent], templateUrl: './comic-comics.component.html', styleUrl: './comic-comics.component.css' }) diff --git a/kontor-angular/src/app/kontor/comic/comic.model.ts b/kontor-angular/src/app/kontor/comic/comic.model.ts index 70df33b..5eb3e9f 100644 --- a/kontor-angular/src/app/kontor/comic/comic.model.ts +++ b/kontor-angular/src/app/kontor/comic/comic.model.ts @@ -30,10 +30,17 @@ export interface Issue { volume: Volume | undefined } + export interface ComicWork { worktype: string; } + +export interface ComicWorktypeArtists { + worktype: Worktype; + artists: Artist[]; +} + export interface ComicDetails { id: string; created: string; @@ -45,6 +52,7 @@ export interface ComicDetails { volumes: [ name: string, ]; + works: ComicWorktypeArtists[]; } export interface ArtistWorktypeComics { diff --git a/kontor-angular/src/styles.css b/kontor-angular/src/styles.css index 1d3192c..d8c6b3a 100644 --- a/kontor-angular/src/styles.css +++ b/kontor-angular/src/styles.css @@ -67,3 +67,23 @@ a.active { background-color: royalblue; color: white; } + +.grid-container { + display: grid; + grid-template-columns: 1fr 1fr; + grid-gap: 20px; +} + +section { + margin-left: 10px; + padding: 10px; + background-color: darkgrey; + border-radius: 10px; + margin-bottom: 10px; +} + +article { + margin-left: 10px; + padding: 5px; +} +