diff --git a/kontor-angular/src/app/app.component.css b/kontor-angular/src/app/app.component.css
index 6349723..6e5ac82 100644
--- a/kontor-angular/src/app/app.component.css
+++ b/kontor-angular/src/app/app.component.css
@@ -4,6 +4,6 @@ h1 {
.app {
font-family: Arial, Helvetica, sans-serif;
- max-width: 500px;
+ /* max-width: 500px; */
margin: auto;
}
diff --git a/kontor-angular/src/app/app.config.ts b/kontor-angular/src/app/app.config.ts
index d953f4c..ae06e63 100644
--- a/kontor-angular/src/app/app.config.ts
+++ b/kontor-angular/src/app/app.config.ts
@@ -2,11 +2,13 @@ import { ApplicationConfig, provideBrowserGlobalErrorListeners, provideZoneChang
import { provideRouter } from '@angular/router';
import { routes } from './app.routes';
+import { provideHttpClient } from '@angular/common/http';
export const appConfig: ApplicationConfig = {
providers: [
provideBrowserGlobalErrorListeners(),
provideZoneChangeDetection({ eventCoalescing: true }),
- provideRouter(routes)
+ provideRouter(routes),
+ provideHttpClient(),
]
};
diff --git a/kontor-angular/src/app/app.routes.ts b/kontor-angular/src/app/app.routes.ts
index 7763476..7740668 100644
--- a/kontor-angular/src/app/app.routes.ts
+++ b/kontor-angular/src/app/app.routes.ts
@@ -1,14 +1,21 @@
import { Routes } from '@angular/router';
import { KontorComponent } from './kontor/kontor.component';
import { Login } from './common/login/login';
-import { ComicsListComponent } from './comic/comics/comics-list.component';
-import { PublisherListComponent } from './comic/publisher/publisher-list.component';
-import { ArtistListComponent } from './comic/artist/artist-list.component';
import { ComicOverviewComponent } from './comic/comic-overview/comic-overview.component';
import { MediaOverviewComponent } from './media/media-overview/media-overview.component';
-import { MediaFilesListComponent } from './media/media-files-list/media-files-list.component';
-import { MediaActorsListComponent } from './media/media-actors-list/media-actors-list.component';
-import { MediaVideosListComponent } from './media/media-videos-list/media-videos-list.component';
+import { ArtistListComponent } from './comic/artist/artist-list/artist-list.component';
+import { ComicListComponent } from './comic/comic/comic-list/comic-list.component';
+import { MediaFileListComponent } from './media/media-file/media-file-list/media-file-list.component';
+import { MediaActorListComponent } from './media/media-actor/media-actor-list/media-actor-list.component';
+import { MediaVideoListComponent } from './media/media-video/media-video-list/media-video-list.component';
+import { PublisherListComponent } from './comic/publisher/publisher-list/publisher-list.component';
+import { TyscMenuComponent } from './tysc/tysc-menu/tysc-menu.component';
+import { TeamListComponent } from './tysc/team/team-list/team-list.component';
+import { VendorListComponent } from './tysc/vendor/vendor-list/vendor-list.component';
+import { CardsetListComponent } from './tysc/cardset/cardset-list/cardset-list.component';
+import { PositionListComponent } from './tysc/position/position-list/position-list.component';
+import { PlayerListComponent } from './tysc/player/player-list/player-list.component';
+import { SportListComponent } from './tysc/sport/sport-list/sport-list.component';
export const routes: Routes = [
{ path: '', component: KontorComponent, },
@@ -16,19 +23,30 @@ export const routes: Routes = [
{
path: 'comic', component: ComicOverviewComponent,
children: [
- { path: '', component: ComicsListComponent},
- { path: 'comics', component: ComicsListComponent},
+ { path: '', component: ComicListComponent},
+ { path: 'comics', component: ComicListComponent},
{ path: 'publisher', component: PublisherListComponent},
{ path: 'artist', component: ArtistListComponent},
],
},
+ {
+ path: 'tysc', component: TyscMenuComponent,
+ children: [
+ { path: '', component: SportListComponent},
+ { path: 'team', component: TeamListComponent},
+ { path: 'player', component: PlayerListComponent},
+ { path: 'position', component: PositionListComponent},
+ { path: 'cardset', component: CardsetListComponent},
+ { path: 'vendor', component: VendorListComponent},
+ ],
+ },
{
path: 'media', component: MediaOverviewComponent,
children: [
- { path: '', component: MediaFilesListComponent},
- { path: 'mediafiles', component: MediaFilesListComponent},
- { path: 'mediaactors', component: MediaActorsListComponent},
- { path: 'mediavideos', component: MediaVideosListComponent},
+ { path: '', component: MediaFileListComponent},
+ { path: 'mediafiles', component: MediaFileListComponent},
+ { path: 'mediaactors', component: MediaActorListComponent},
+ { path: 'mediavideos', component: MediaVideoListComponent},
],
},
];
diff --git a/kontor-angular/src/app/comic/artist/artist-list.component.html b/kontor-angular/src/app/comic/artist/artist-list.component.html
deleted file mode 100644
index 5f88b01..0000000
--- a/kontor-angular/src/app/comic/artist/artist-list.component.html
+++ /dev/null
@@ -1 +0,0 @@
-
artist works!
diff --git a/kontor-angular/src/app/comic/artist/artist-list.component.css b/kontor-angular/src/app/comic/artist/artist-list/artist-list.component.css
similarity index 100%
rename from kontor-angular/src/app/comic/artist/artist-list.component.css
rename to kontor-angular/src/app/comic/artist/artist-list/artist-list.component.css
diff --git a/kontor-angular/src/app/comic/artist/artist-list/artist-list.component.html b/kontor-angular/src/app/comic/artist/artist-list/artist-list.component.html
new file mode 100644
index 0000000..42c5108
--- /dev/null
+++ b/kontor-angular/src/app/comic/artist/artist-list/artist-list.component.html
@@ -0,0 +1 @@
+artist-list works!
diff --git a/kontor-angular/src/app/comic/artist/artist-list/artist-list.component.spec.ts b/kontor-angular/src/app/comic/artist/artist-list/artist-list.component.spec.ts
new file mode 100644
index 0000000..4a58cbb
--- /dev/null
+++ b/kontor-angular/src/app/comic/artist/artist-list/artist-list.component.spec.ts
@@ -0,0 +1,23 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { ArtistListComponent } from './artist-list.component';
+
+describe('ArtistListComponent', () => {
+ let component: ArtistListComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async () => {
+ await TestBed.configureTestingModule({
+ imports: [ArtistListComponent]
+ })
+ .compileComponents();
+
+ fixture = TestBed.createComponent(ArtistListComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/kontor-angular/src/app/comic/artist/artist-list.component.ts b/kontor-angular/src/app/comic/artist/artist-list/artist-list.component.ts
similarity index 85%
rename from kontor-angular/src/app/comic/artist/artist-list.component.ts
rename to kontor-angular/src/app/comic/artist/artist-list/artist-list.component.ts
index 29318a9..ca510ad 100644
--- a/kontor-angular/src/app/comic/artist/artist-list.component.ts
+++ b/kontor-angular/src/app/comic/artist/artist-list/artist-list.component.ts
@@ -1,7 +1,7 @@
import { Component } from '@angular/core';
@Component({
- selector: 'kontor-artist-list',
+ selector: 'app-artist-list',
imports: [],
templateUrl: './artist-list.component.html',
styleUrl: './artist-list.component.css'
diff --git a/kontor-angular/src/app/comic/comic-overview/comic-overview.component.html b/kontor-angular/src/app/comic/comic-overview/comic-overview.component.html
index ee8e75f..54c8b3c 100644
--- a/kontor-angular/src/app/comic/comic-overview/comic-overview.component.html
+++ b/kontor-angular/src/app/comic/comic-overview/comic-overview.component.html
@@ -1,10 +1,16 @@
-comic-overview works!
-
+
+
+
diff --git a/kontor-angular/src/app/comic/comic-overview/comic-overview.component.ts b/kontor-angular/src/app/comic/comic-overview/comic-overview.component.ts
index dbb049a..32c15f4 100644
--- a/kontor-angular/src/app/comic/comic-overview/comic-overview.component.ts
+++ b/kontor-angular/src/app/comic/comic-overview/comic-overview.component.ts
@@ -1,9 +1,9 @@
import { Component } from '@angular/core';
-import { RouterLink, RouterOutlet } from '@angular/router';
+import { RouterLink, RouterOutlet, RouterLinkActive } from '@angular/router';
@Component({
selector: 'app-comic-overview',
- imports: [RouterLink, RouterOutlet],
+ imports: [RouterLink, RouterOutlet, RouterLinkActive],
templateUrl: './comic-overview.component.html',
styleUrl: './comic-overview.component.css'
})
diff --git a/kontor-angular/src/app/comic/comics/comics-list.component.css b/kontor-angular/src/app/comic/comic/comic-list/comic-list.component.css
similarity index 100%
rename from kontor-angular/src/app/comic/comics/comics-list.component.css
rename to kontor-angular/src/app/comic/comic/comic-list/comic-list.component.css
diff --git a/kontor-angular/src/app/comic/comic/comic-list/comic-list.component.html b/kontor-angular/src/app/comic/comic/comic-list/comic-list.component.html
new file mode 100644
index 0000000..5beb054
--- /dev/null
+++ b/kontor-angular/src/app/comic/comic/comic-list/comic-list.component.html
@@ -0,0 +1 @@
+
comic-list works!
diff --git a/kontor-angular/src/app/comic/comics/comics-list.component.spec.ts b/kontor-angular/src/app/comic/comic/comic-list/comic-list.component.spec.ts
similarity index 53%
rename from kontor-angular/src/app/comic/comics/comics-list.component.spec.ts
rename to kontor-angular/src/app/comic/comic/comic-list/comic-list.component.spec.ts
index 89f8178..6a5109e 100644
--- a/kontor-angular/src/app/comic/comics/comics-list.component.spec.ts
+++ b/kontor-angular/src/app/comic/comic/comic-list/comic-list.component.spec.ts
@@ -1,18 +1,18 @@
import { ComponentFixture, TestBed } from '@angular/core/testing';
-import { ComicsListComponent } from './comics-list.component';
+import { ComicListComponent } from './comic-list.component';
-describe('Comics', () => {
- let component: ComicsListComponent;
- let fixture: ComponentFixture
;
+describe('ComicListComponent', () => {
+ let component: ComicListComponent;
+ let fixture: ComponentFixture;
beforeEach(async () => {
await TestBed.configureTestingModule({
- imports: [ComicsListComponent]
+ imports: [ComicListComponent]
})
.compileComponents();
- fixture = TestBed.createComponent(ComicsListComponent);
+ fixture = TestBed.createComponent(ComicListComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
diff --git a/kontor-angular/src/app/comic/comic/comic-list/comic-list.component.ts b/kontor-angular/src/app/comic/comic/comic-list/comic-list.component.ts
new file mode 100644
index 0000000..a09eb12
--- /dev/null
+++ b/kontor-angular/src/app/comic/comic/comic-list/comic-list.component.ts
@@ -0,0 +1,11 @@
+import { Component } from '@angular/core';
+
+@Component({
+ selector: 'app-comic-list',
+ imports: [],
+ templateUrl: './comic-list.component.html',
+ styleUrl: './comic-list.component.css'
+})
+export class ComicListComponent {
+
+}
diff --git a/kontor-angular/src/app/comic/comics/comics-list.component.html b/kontor-angular/src/app/comic/comics/comics-list.component.html
deleted file mode 100644
index 1d67025..0000000
--- a/kontor-angular/src/app/comic/comics/comics-list.component.html
+++ /dev/null
@@ -1 +0,0 @@
-comics works!
diff --git a/kontor-angular/src/app/comic/comics/comics-list.component.ts b/kontor-angular/src/app/comic/comics/comics-list.component.ts
deleted file mode 100644
index 3c6f981..0000000
--- a/kontor-angular/src/app/comic/comics/comics-list.component.ts
+++ /dev/null
@@ -1,11 +0,0 @@
-import { Component } from '@angular/core';
-
-@Component({
- selector: 'kontor-comics-list',
- imports: [],
- templateUrl: './comics-list.component.html',
- styleUrl: './comics-list.component.css'
-})
-export class ComicsListComponent {
-
-}
diff --git a/kontor-angular/src/app/comic/publisher/publisher-list.component.html b/kontor-angular/src/app/comic/publisher/publisher-list.component.html
deleted file mode 100644
index c44a6d3..0000000
--- a/kontor-angular/src/app/comic/publisher/publisher-list.component.html
+++ /dev/null
@@ -1 +0,0 @@
-publisher works!
diff --git a/kontor-angular/src/app/comic/publisher/publisher-list.component.css b/kontor-angular/src/app/comic/publisher/publisher-list/publisher-list.component.css
similarity index 100%
rename from kontor-angular/src/app/comic/publisher/publisher-list.component.css
rename to kontor-angular/src/app/comic/publisher/publisher-list/publisher-list.component.css
diff --git a/kontor-angular/src/app/comic/publisher/publisher-list/publisher-list.component.html b/kontor-angular/src/app/comic/publisher/publisher-list/publisher-list.component.html
new file mode 100644
index 0000000..d533325
--- /dev/null
+++ b/kontor-angular/src/app/comic/publisher/publisher-list/publisher-list.component.html
@@ -0,0 +1 @@
+publisher-list works!
diff --git a/kontor-angular/src/app/comic/publisher/publisher-list/publisher-list.component.spec.ts b/kontor-angular/src/app/comic/publisher/publisher-list/publisher-list.component.spec.ts
new file mode 100644
index 0000000..00f7266
--- /dev/null
+++ b/kontor-angular/src/app/comic/publisher/publisher-list/publisher-list.component.spec.ts
@@ -0,0 +1,23 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { PublisherListComponent } from './publisher-list.component';
+
+describe('PublisherListComponent', () => {
+ let component: PublisherListComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async () => {
+ await TestBed.configureTestingModule({
+ imports: [PublisherListComponent]
+ })
+ .compileComponents();
+
+ fixture = TestBed.createComponent(PublisherListComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/kontor-angular/src/app/comic/publisher/publisher-list.component.ts b/kontor-angular/src/app/comic/publisher/publisher-list/publisher-list.component.ts
similarity index 85%
rename from kontor-angular/src/app/comic/publisher/publisher-list.component.ts
rename to kontor-angular/src/app/comic/publisher/publisher-list/publisher-list.component.ts
index a74ff7b..43daa01 100644
--- a/kontor-angular/src/app/comic/publisher/publisher-list.component.ts
+++ b/kontor-angular/src/app/comic/publisher/publisher-list/publisher-list.component.ts
@@ -1,7 +1,7 @@
import { Component } from '@angular/core';
@Component({
- selector: 'kontor-publisher-list',
+ selector: 'app-publisher-list',
imports: [],
templateUrl: './publisher-list.component.html',
styleUrl: './publisher-list.component.css'
diff --git a/kontor-angular/src/app/kontor/footer/footer.component.css b/kontor-angular/src/app/kontor/footer/footer.component.css
index e69de29..1d66ed7 100644
--- a/kontor-angular/src/app/kontor/footer/footer.component.css
+++ b/kontor-angular/src/app/kontor/footer/footer.component.css
@@ -0,0 +1,7 @@
+/* Footer */
+a {
+ padding: 20px;
+ text-align: center;
+ background: #ddd;
+ margin-top: 20px;
+}
diff --git a/kontor-angular/src/app/kontor/footer/footer.component.html b/kontor-angular/src/app/kontor/footer/footer.component.html
index e286f81..1f376c3 100644
--- a/kontor-angular/src/app/kontor/footer/footer.component.html
+++ b/kontor-angular/src/app/kontor/footer/footer.component.html
@@ -1,3 +1,3 @@
-
+
diff --git a/kontor-angular/src/app/kontor/header/header.component.css b/kontor-angular/src/app/kontor/header/header.component.css
index e69de29..b3b2fe7 100644
--- a/kontor-angular/src/app/kontor/header/header.component.css
+++ b/kontor-angular/src/app/kontor/header/header.component.css
@@ -0,0 +1,11 @@
+/* Header/Blog Title */
+.header {
+ padding: 30px;
+ text-align: center;
+ background-color: lightblue;
+}
+
+.header h1 {
+ font-size: 50px;
+}
+
diff --git a/kontor-angular/src/app/kontor/header/header.component.html b/kontor-angular/src/app/kontor/header/header.component.html
index ff00120..9c1f7a2 100644
--- a/kontor-angular/src/app/kontor/header/header.component.html
+++ b/kontor-angular/src/app/kontor/header/header.component.html
@@ -1,13 +1,19 @@
-
+
+
diff --git a/kontor-angular/src/app/kontor/header/header.component.ts b/kontor-angular/src/app/kontor/header/header.component.ts
index a0357fb..8808cc8 100644
--- a/kontor-angular/src/app/kontor/header/header.component.ts
+++ b/kontor-angular/src/app/kontor/header/header.component.ts
@@ -1,9 +1,9 @@
import { Component, signal } from '@angular/core';
-import { RouterLink } from '@angular/router';
+import { RouterLink, RouterLinkActive } from '@angular/router';
@Component({
selector: 'kontor-header',
- imports: [RouterLink],
+ imports: [RouterLink, RouterLinkActive],
templateUrl: './header.component.html',
styleUrl: './header.component.css'
})
diff --git a/kontor-angular/src/app/media/media-actors-list/media-actors-list.component.css b/kontor-angular/src/app/media/media-actor/media-actor-list/media-actor-list.component.css
similarity index 100%
rename from kontor-angular/src/app/media/media-actors-list/media-actors-list.component.css
rename to kontor-angular/src/app/media/media-actor/media-actor-list/media-actor-list.component.css
diff --git a/kontor-angular/src/app/media/media-actor/media-actor-list/media-actor-list.component.html b/kontor-angular/src/app/media/media-actor/media-actor-list/media-actor-list.component.html
new file mode 100644
index 0000000..43702b0
--- /dev/null
+++ b/kontor-angular/src/app/media/media-actor/media-actor-list/media-actor-list.component.html
@@ -0,0 +1 @@
+media-actor-list works!
diff --git a/kontor-angular/src/app/media/media-files-list/media-files-list.component.spec.ts b/kontor-angular/src/app/media/media-actor/media-actor-list/media-actor-list.component.spec.ts
similarity index 51%
rename from kontor-angular/src/app/media/media-files-list/media-files-list.component.spec.ts
rename to kontor-angular/src/app/media/media-actor/media-actor-list/media-actor-list.component.spec.ts
index 15de5c1..1eae192 100644
--- a/kontor-angular/src/app/media/media-files-list/media-files-list.component.spec.ts
+++ b/kontor-angular/src/app/media/media-actor/media-actor-list/media-actor-list.component.spec.ts
@@ -1,18 +1,18 @@
import { ComponentFixture, TestBed } from '@angular/core/testing';
-import { MediaFilesListComponent } from './media-files-list.component';
+import { MediaActorListComponent } from './media-actor-list.component';
-describe('MediaFilesList', () => {
- let component: MediaFilesListComponent;
- let fixture: ComponentFixture;
+describe('MediaActorListComponent', () => {
+ let component: MediaActorListComponent;
+ let fixture: ComponentFixture;
beforeEach(async () => {
await TestBed.configureTestingModule({
- imports: [MediaFilesListComponent]
+ imports: [MediaActorListComponent]
})
.compileComponents();
- fixture = TestBed.createComponent(MediaFilesListComponent);
+ fixture = TestBed.createComponent(MediaActorListComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
diff --git a/kontor-angular/src/app/media/media-actor/media-actor-list/media-actor-list.component.ts b/kontor-angular/src/app/media/media-actor/media-actor-list/media-actor-list.component.ts
new file mode 100644
index 0000000..f765de4
--- /dev/null
+++ b/kontor-angular/src/app/media/media-actor/media-actor-list/media-actor-list.component.ts
@@ -0,0 +1,11 @@
+import { Component } from '@angular/core';
+
+@Component({
+ selector: 'app-media-actor-list',
+ imports: [],
+ templateUrl: './media-actor-list.component.html',
+ styleUrl: './media-actor-list.component.css'
+})
+export class MediaActorListComponent {
+
+}
diff --git a/kontor-angular/src/app/media/media-actors-list/media-actors-list.component.html b/kontor-angular/src/app/media/media-actors-list/media-actors-list.component.html
deleted file mode 100644
index 633f6b1..0000000
--- a/kontor-angular/src/app/media/media-actors-list/media-actors-list.component.html
+++ /dev/null
@@ -1 +0,0 @@
-media-actors-list works!
diff --git a/kontor-angular/src/app/media/media-actors-list/media-actors-list.component.ts b/kontor-angular/src/app/media/media-actors-list/media-actors-list.component.ts
deleted file mode 100644
index 99e2ed3..0000000
--- a/kontor-angular/src/app/media/media-actors-list/media-actors-list.component.ts
+++ /dev/null
@@ -1,11 +0,0 @@
-import { Component } from '@angular/core';
-
-@Component({
- selector: 'app-media-actors-list',
- imports: [],
- templateUrl: './media-actors-list.component.html',
- styleUrl: './media-actors-list.component.css'
-})
-export class MediaActorsListComponent {
-
-}
diff --git a/kontor-angular/src/app/media/media-files-list/media-files-list.component.css b/kontor-angular/src/app/media/media-file/media-file-list/media-file-list.component.css
similarity index 100%
rename from kontor-angular/src/app/media/media-files-list/media-files-list.component.css
rename to kontor-angular/src/app/media/media-file/media-file-list/media-file-list.component.css
diff --git a/kontor-angular/src/app/media/media-file/media-file-list/media-file-list.component.html b/kontor-angular/src/app/media/media-file/media-file-list/media-file-list.component.html
new file mode 100644
index 0000000..0c46e27
--- /dev/null
+++ b/kontor-angular/src/app/media/media-file/media-file-list/media-file-list.component.html
@@ -0,0 +1 @@
+media-file-list works!
diff --git a/kontor-angular/src/app/media/media-file/media-file-list/media-file-list.component.spec.ts b/kontor-angular/src/app/media/media-file/media-file-list/media-file-list.component.spec.ts
new file mode 100644
index 0000000..331bea0
--- /dev/null
+++ b/kontor-angular/src/app/media/media-file/media-file-list/media-file-list.component.spec.ts
@@ -0,0 +1,23 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { MediaFileListComponent } from './media-file-list.component';
+
+describe('MediaFileListComponent', () => {
+ let component: MediaFileListComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async () => {
+ await TestBed.configureTestingModule({
+ imports: [MediaFileListComponent]
+ })
+ .compileComponents();
+
+ fixture = TestBed.createComponent(MediaFileListComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/kontor-angular/src/app/media/media-file/media-file-list/media-file-list.component.ts b/kontor-angular/src/app/media/media-file/media-file-list/media-file-list.component.ts
new file mode 100644
index 0000000..f64918a
--- /dev/null
+++ b/kontor-angular/src/app/media/media-file/media-file-list/media-file-list.component.ts
@@ -0,0 +1,11 @@
+import { Component } from '@angular/core';
+
+@Component({
+ selector: 'app-media-file-list',
+ imports: [],
+ templateUrl: './media-file-list.component.html',
+ styleUrl: './media-file-list.component.css'
+})
+export class MediaFileListComponent {
+
+}
diff --git a/kontor-angular/src/app/media/media-files-list/media-files-list.component.html b/kontor-angular/src/app/media/media-files-list/media-files-list.component.html
deleted file mode 100644
index 4eba07e..0000000
--- a/kontor-angular/src/app/media/media-files-list/media-files-list.component.html
+++ /dev/null
@@ -1 +0,0 @@
-media-files-list works!
diff --git a/kontor-angular/src/app/media/media-files-list/media-files-list.component.ts b/kontor-angular/src/app/media/media-files-list/media-files-list.component.ts
deleted file mode 100644
index 4abc354..0000000
--- a/kontor-angular/src/app/media/media-files-list/media-files-list.component.ts
+++ /dev/null
@@ -1,11 +0,0 @@
-import { Component } from '@angular/core';
-
-@Component({
- selector: 'app-media-files-list',
- imports: [],
- templateUrl: './media-files-list.component.html',
- styleUrl: './media-files-list.component.css'
-})
-export class MediaFilesListComponent {
-
-}
diff --git a/kontor-angular/src/app/media/media-overview/media-overview.component.html b/kontor-angular/src/app/media/media-overview/media-overview.component.html
index cf87835..4a72d42 100644
--- a/kontor-angular/src/app/media/media-overview/media-overview.component.html
+++ b/kontor-angular/src/app/media/media-overview/media-overview.component.html
@@ -1,4 +1,4 @@
-media-overview works!
+
+
+
diff --git a/kontor-angular/src/app/media/media-overview/media-overview.component.ts b/kontor-angular/src/app/media/media-overview/media-overview.component.ts
index b5584a0..ea7711b 100644
--- a/kontor-angular/src/app/media/media-overview/media-overview.component.ts
+++ b/kontor-angular/src/app/media/media-overview/media-overview.component.ts
@@ -1,9 +1,9 @@
import { Component } from '@angular/core';
-import { RouterLink, RouterOutlet } from '@angular/router';
+import { RouterLink, RouterOutlet, RouterLinkActive } from '@angular/router';
@Component({
selector: 'kontor-media-overview',
- imports: [RouterOutlet, RouterLink],
+ imports: [RouterOutlet, RouterLink, RouterLinkActive],
templateUrl: './media-overview.component.html',
styleUrl: './media-overview.component.css'
})
diff --git a/kontor-angular/src/app/media/media-videos-list/media-videos-list.component.css b/kontor-angular/src/app/media/media-video/media-video-list/media-video-list.component.css
similarity index 100%
rename from kontor-angular/src/app/media/media-videos-list/media-videos-list.component.css
rename to kontor-angular/src/app/media/media-video/media-video-list/media-video-list.component.css
diff --git a/kontor-angular/src/app/media/media-video/media-video-list/media-video-list.component.html b/kontor-angular/src/app/media/media-video/media-video-list/media-video-list.component.html
new file mode 100644
index 0000000..ae42ba1
--- /dev/null
+++ b/kontor-angular/src/app/media/media-video/media-video-list/media-video-list.component.html
@@ -0,0 +1 @@
+media-video-list works!
diff --git a/kontor-angular/src/app/media/media-actors-list/media-actors-list.component.spec.ts b/kontor-angular/src/app/media/media-video/media-video-list/media-video-list.component.spec.ts
similarity index 50%
rename from kontor-angular/src/app/media/media-actors-list/media-actors-list.component.spec.ts
rename to kontor-angular/src/app/media/media-video/media-video-list/media-video-list.component.spec.ts
index 6fcb447..e18eb84 100644
--- a/kontor-angular/src/app/media/media-actors-list/media-actors-list.component.spec.ts
+++ b/kontor-angular/src/app/media/media-video/media-video-list/media-video-list.component.spec.ts
@@ -1,18 +1,18 @@
import { ComponentFixture, TestBed } from '@angular/core/testing';
-import { MediaActorsListComponent } from './media-actors-list.component';
+import { MediaVideoListComponent } from './media-video-list.component';
-describe('MediaActorsList', () => {
- let component: MediaActorsListComponent;
- let fixture: ComponentFixture;
+describe('MediaVideoListComponent', () => {
+ let component: MediaVideoListComponent;
+ let fixture: ComponentFixture;
beforeEach(async () => {
await TestBed.configureTestingModule({
- imports: [MediaActorsListComponent]
+ imports: [MediaVideoListComponent]
})
.compileComponents();
- fixture = TestBed.createComponent(MediaActorsListComponent);
+ fixture = TestBed.createComponent(MediaVideoListComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
diff --git a/kontor-angular/src/app/media/media-video/media-video-list/media-video-list.component.ts b/kontor-angular/src/app/media/media-video/media-video-list/media-video-list.component.ts
new file mode 100644
index 0000000..bae8344
--- /dev/null
+++ b/kontor-angular/src/app/media/media-video/media-video-list/media-video-list.component.ts
@@ -0,0 +1,11 @@
+import { Component } from '@angular/core';
+
+@Component({
+ selector: 'app-media-video-list',
+ imports: [],
+ templateUrl: './media-video-list.component.html',
+ styleUrl: './media-video-list.component.css'
+})
+export class MediaVideoListComponent {
+
+}
diff --git a/kontor-angular/src/app/media/media-videos-list/media-videos-list.component.html b/kontor-angular/src/app/media/media-videos-list/media-videos-list.component.html
deleted file mode 100644
index 3802b3f..0000000
--- a/kontor-angular/src/app/media/media-videos-list/media-videos-list.component.html
+++ /dev/null
@@ -1 +0,0 @@
-media-videos-list works!
diff --git a/kontor-angular/src/app/media/media-videos-list/media-videos-list.component.spec.ts b/kontor-angular/src/app/media/media-videos-list/media-videos-list.component.spec.ts
deleted file mode 100644
index c8f4bc0..0000000
--- a/kontor-angular/src/app/media/media-videos-list/media-videos-list.component.spec.ts
+++ /dev/null
@@ -1,23 +0,0 @@
-import { ComponentFixture, TestBed } from '@angular/core/testing';
-
-import { MediaVideosListComponent } from './media-videos-list.component';
-
-describe('MediaVideosList', () => {
- let component: MediaVideosListComponent;
- let fixture: ComponentFixture;
-
- beforeEach(async () => {
- await TestBed.configureTestingModule({
- imports: [MediaVideosListComponent]
- })
- .compileComponents();
-
- fixture = TestBed.createComponent(MediaVideosListComponent);
- component = fixture.componentInstance;
- fixture.detectChanges();
- });
-
- it('should create', () => {
- expect(component).toBeTruthy();
- });
-});
diff --git a/kontor-angular/src/app/media/media-videos-list/media-videos-list.component.ts b/kontor-angular/src/app/media/media-videos-list/media-videos-list.component.ts
deleted file mode 100644
index 7c4fc7e..0000000
--- a/kontor-angular/src/app/media/media-videos-list/media-videos-list.component.ts
+++ /dev/null
@@ -1,11 +0,0 @@
-import { Component } from '@angular/core';
-
-@Component({
- selector: 'app-media-videos-list',
- imports: [],
- templateUrl: './media-videos-list.component.html',
- styleUrl: './media-videos-list.component.css'
-})
-export class MediaVideosListComponent {
-
-}
diff --git a/kontor-angular/src/app/shared/error.service.ts b/kontor-angular/src/app/shared/error.service.ts
new file mode 100644
index 0000000..7befc28
--- /dev/null
+++ b/kontor-angular/src/app/shared/error.service.ts
@@ -0,0 +1,19 @@
+import { Injectable, signal } from "@angular/core";
+
+@Injectable({
+ providedIn: 'root'
+})
+export class ErrorService {
+ private _error = signal('');
+
+ error = this._error.asReadonly();
+
+ showError(message: string) {
+ console.log(message);
+ this._error.set(message);
+ }
+
+ clearError() {
+ this._error.set('');
+ }
+}
diff --git a/kontor-angular/src/app/tysc/cardset/cardset-list/cardset-list.component.css b/kontor-angular/src/app/tysc/cardset/cardset-list/cardset-list.component.css
new file mode 100644
index 0000000..e69de29
diff --git a/kontor-angular/src/app/tysc/cardset/cardset-list/cardset-list.component.html b/kontor-angular/src/app/tysc/cardset/cardset-list/cardset-list.component.html
new file mode 100644
index 0000000..45f5e7b
--- /dev/null
+++ b/kontor-angular/src/app/tysc/cardset/cardset-list/cardset-list.component.html
@@ -0,0 +1 @@
+cardset-list works!
diff --git a/kontor-angular/src/app/tysc/cardset/cardset-list/cardset-list.component.spec.ts b/kontor-angular/src/app/tysc/cardset/cardset-list/cardset-list.component.spec.ts
new file mode 100644
index 0000000..c957e68
--- /dev/null
+++ b/kontor-angular/src/app/tysc/cardset/cardset-list/cardset-list.component.spec.ts
@@ -0,0 +1,23 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { CardsetListComponent } from './cardset-list.component';
+
+describe('CardsetListComponent', () => {
+ let component: CardsetListComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async () => {
+ await TestBed.configureTestingModule({
+ imports: [CardsetListComponent]
+ })
+ .compileComponents();
+
+ fixture = TestBed.createComponent(CardsetListComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/kontor-angular/src/app/tysc/cardset/cardset-list/cardset-list.component.ts b/kontor-angular/src/app/tysc/cardset/cardset-list/cardset-list.component.ts
new file mode 100644
index 0000000..67d92e0
--- /dev/null
+++ b/kontor-angular/src/app/tysc/cardset/cardset-list/cardset-list.component.ts
@@ -0,0 +1,11 @@
+import { Component } from '@angular/core';
+
+@Component({
+ selector: 'app-cardset-list',
+ imports: [],
+ templateUrl: './cardset-list.component.html',
+ styleUrl: './cardset-list.component.css'
+})
+export class CardsetListComponent {
+
+}
diff --git a/kontor-angular/src/app/tysc/player/player-list/player-list.component.css b/kontor-angular/src/app/tysc/player/player-list/player-list.component.css
new file mode 100644
index 0000000..e69de29
diff --git a/kontor-angular/src/app/tysc/player/player-list/player-list.component.html b/kontor-angular/src/app/tysc/player/player-list/player-list.component.html
new file mode 100644
index 0000000..66a8ec9
--- /dev/null
+++ b/kontor-angular/src/app/tysc/player/player-list/player-list.component.html
@@ -0,0 +1 @@
+player-list works!
diff --git a/kontor-angular/src/app/tysc/player/player-list/player-list.component.spec.ts b/kontor-angular/src/app/tysc/player/player-list/player-list.component.spec.ts
new file mode 100644
index 0000000..0d08ee9
--- /dev/null
+++ b/kontor-angular/src/app/tysc/player/player-list/player-list.component.spec.ts
@@ -0,0 +1,23 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { PlayerListComponent } from './player-list.component';
+
+describe('PlayerListComponent', () => {
+ let component: PlayerListComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async () => {
+ await TestBed.configureTestingModule({
+ imports: [PlayerListComponent]
+ })
+ .compileComponents();
+
+ fixture = TestBed.createComponent(PlayerListComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/kontor-angular/src/app/tysc/player/player-list/player-list.component.ts b/kontor-angular/src/app/tysc/player/player-list/player-list.component.ts
new file mode 100644
index 0000000..72646c0
--- /dev/null
+++ b/kontor-angular/src/app/tysc/player/player-list/player-list.component.ts
@@ -0,0 +1,11 @@
+import { Component } from '@angular/core';
+
+@Component({
+ selector: 'app-player-list',
+ imports: [],
+ templateUrl: './player-list.component.html',
+ styleUrl: './player-list.component.css'
+})
+export class PlayerListComponent {
+
+}
diff --git a/kontor-angular/src/app/tysc/position/position-list/position-list.component.css b/kontor-angular/src/app/tysc/position/position-list/position-list.component.css
new file mode 100644
index 0000000..e69de29
diff --git a/kontor-angular/src/app/tysc/position/position-list/position-list.component.html b/kontor-angular/src/app/tysc/position/position-list/position-list.component.html
new file mode 100644
index 0000000..652033e
--- /dev/null
+++ b/kontor-angular/src/app/tysc/position/position-list/position-list.component.html
@@ -0,0 +1 @@
+position-list works!
diff --git a/kontor-angular/src/app/tysc/position/position-list/position-list.component.spec.ts b/kontor-angular/src/app/tysc/position/position-list/position-list.component.spec.ts
new file mode 100644
index 0000000..9034de6
--- /dev/null
+++ b/kontor-angular/src/app/tysc/position/position-list/position-list.component.spec.ts
@@ -0,0 +1,23 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { PositionListComponent } from './position-list.component';
+
+describe('PositionListComponent', () => {
+ let component: PositionListComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async () => {
+ await TestBed.configureTestingModule({
+ imports: [PositionListComponent]
+ })
+ .compileComponents();
+
+ fixture = TestBed.createComponent(PositionListComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/kontor-angular/src/app/tysc/position/position-list/position-list.component.ts b/kontor-angular/src/app/tysc/position/position-list/position-list.component.ts
new file mode 100644
index 0000000..f76b808
--- /dev/null
+++ b/kontor-angular/src/app/tysc/position/position-list/position-list.component.ts
@@ -0,0 +1,11 @@
+import { Component } from '@angular/core';
+
+@Component({
+ selector: 'app-position-list',
+ imports: [],
+ templateUrl: './position-list.component.html',
+ styleUrl: './position-list.component.css'
+})
+export class PositionListComponent {
+
+}
diff --git a/kontor-angular/src/app/tysc/sport/sport-list/sport-list.component.css b/kontor-angular/src/app/tysc/sport/sport-list/sport-list.component.css
new file mode 100644
index 0000000..e69de29
diff --git a/kontor-angular/src/app/tysc/sport/sport-list/sport-list.component.html b/kontor-angular/src/app/tysc/sport/sport-list/sport-list.component.html
new file mode 100644
index 0000000..36f5c85
--- /dev/null
+++ b/kontor-angular/src/app/tysc/sport/sport-list/sport-list.component.html
@@ -0,0 +1,8 @@
+sport-list works!
+
+ @for (sport of sports(); track sport.id) {
+ -
+
{{ sport.name }}
+
+ }
+
diff --git a/kontor-angular/src/app/tysc/sport/sport-list/sport-list.component.spec.ts b/kontor-angular/src/app/tysc/sport/sport-list/sport-list.component.spec.ts
new file mode 100644
index 0000000..7a1c646
--- /dev/null
+++ b/kontor-angular/src/app/tysc/sport/sport-list/sport-list.component.spec.ts
@@ -0,0 +1,23 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { SportListComponent } from './sport-list.component';
+
+describe('SportListComponent', () => {
+ let component: SportListComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async () => {
+ await TestBed.configureTestingModule({
+ imports: [SportListComponent]
+ })
+ .compileComponents();
+
+ fixture = TestBed.createComponent(SportListComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/kontor-angular/src/app/tysc/sport/sport-list/sport-list.component.ts b/kontor-angular/src/app/tysc/sport/sport-list/sport-list.component.ts
new file mode 100644
index 0000000..a22dd75
--- /dev/null
+++ b/kontor-angular/src/app/tysc/sport/sport-list/sport-list.component.ts
@@ -0,0 +1,38 @@
+import { Component, DestroyRef, inject, OnInit, signal } from '@angular/core';
+import { Sport } from '../sport.model';
+import { SportService } from '../sport.service';
+
+@Component({
+ selector: 'app-sport-list',
+ imports: [],
+ templateUrl: './sport-list.component.html',
+ styleUrl: './sport-list.component.css'
+})
+export class SportListComponent implements OnInit {
+ sports = signal(undefined);
+ isFetching = signal(false);
+ error = signal('');
+ private sportService = inject(SportService);
+ private destroyRef = inject(DestroyRef);
+
+
+ ngOnInit() {
+ this.isFetching.set(true);
+ const subscription = this.sportService.loadSports().subscribe({
+ next: (sports) => {
+ this.sports.set(sports);
+ },
+ error: (error: Error) => {
+ this.error.set(error.message);
+ },
+ complete: () => {
+ this.isFetching.set(false);
+ },
+ });
+
+ this.destroyRef.onDestroy(() => {
+ subscription.unsubscribe();
+ });
+ }
+
+}
diff --git a/kontor-angular/src/app/tysc/sport/sport-selector/sport-selector.component.css b/kontor-angular/src/app/tysc/sport/sport-selector/sport-selector.component.css
new file mode 100644
index 0000000..e69de29
diff --git a/kontor-angular/src/app/tysc/sport/sport-selector/sport-selector.component.html b/kontor-angular/src/app/tysc/sport/sport-selector/sport-selector.component.html
new file mode 100644
index 0000000..8339199
--- /dev/null
+++ b/kontor-angular/src/app/tysc/sport/sport-selector/sport-selector.component.html
@@ -0,0 +1 @@
+sport-selector works!
diff --git a/kontor-angular/src/app/tysc/sport/sport-selector/sport-selector.component.spec.ts b/kontor-angular/src/app/tysc/sport/sport-selector/sport-selector.component.spec.ts
new file mode 100644
index 0000000..1bc65be
--- /dev/null
+++ b/kontor-angular/src/app/tysc/sport/sport-selector/sport-selector.component.spec.ts
@@ -0,0 +1,23 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { SportSelectorComponent } from './sport-selector.component';
+
+describe('SportSelectorComponent', () => {
+ let component: SportSelectorComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async () => {
+ await TestBed.configureTestingModule({
+ imports: [SportSelectorComponent]
+ })
+ .compileComponents();
+
+ fixture = TestBed.createComponent(SportSelectorComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/kontor-angular/src/app/tysc/sport/sport-selector/sport-selector.component.ts b/kontor-angular/src/app/tysc/sport/sport-selector/sport-selector.component.ts
new file mode 100644
index 0000000..896f350
--- /dev/null
+++ b/kontor-angular/src/app/tysc/sport/sport-selector/sport-selector.component.ts
@@ -0,0 +1,11 @@
+import { Component } from '@angular/core';
+
+@Component({
+ selector: 'app-sport-selector',
+ imports: [],
+ templateUrl: './sport-selector.component.html',
+ styleUrl: './sport-selector.component.css'
+})
+export class SportSelectorComponent {
+
+}
diff --git a/kontor-angular/src/app/tysc/sport/sport.model.ts b/kontor-angular/src/app/tysc/sport/sport.model.ts
new file mode 100644
index 0000000..a9bc9a2
--- /dev/null
+++ b/kontor-angular/src/app/tysc/sport/sport.model.ts
@@ -0,0 +1,4 @@
+export interface Sport {
+ id: string;
+ name: string;
+}
diff --git a/kontor-angular/src/app/tysc/sport/sport.service.ts b/kontor-angular/src/app/tysc/sport/sport.service.ts
new file mode 100644
index 0000000..31945dd
--- /dev/null
+++ b/kontor-angular/src/app/tysc/sport/sport.service.ts
@@ -0,0 +1,30 @@
+import { HttpClient } from "@angular/common/http";
+import { inject, Injectable, signal } from "@angular/core";
+import { Sport } from "./sport.model";
+import { catchError, map, throwError } from "rxjs";
+import { ErrorService } from "../../shared/error.service";
+
+@Injectable({
+ providedIn: 'root',
+})
+export class SportService {
+ private errorService = inject(ErrorService);
+ private httpClient = inject(HttpClient);
+ private sports = signal([]);
+
+ loadedSports = this.sports.asReadonly();
+
+ loadSports() {
+ return this.fetchSports('http://127.0.0.1:8800/api/tysc/sports', 'Someting went wrong fetching sports. Please try again later-');
+ }
+
+ private fetchSports(url: string, errorMessage: string) {
+ return this.httpClient.get(url).pipe(
+ map((resData) => resData),
+ catchError((error) => {
+ console.log(error);
+ return throwError(() => new Error(errorMessage));
+ })
+ );
+ }
+}
diff --git a/kontor-angular/src/app/tysc/team/team-list/team-list.component.css b/kontor-angular/src/app/tysc/team/team-list/team-list.component.css
new file mode 100644
index 0000000..e69de29
diff --git a/kontor-angular/src/app/tysc/team/team-list/team-list.component.html b/kontor-angular/src/app/tysc/team/team-list/team-list.component.html
new file mode 100644
index 0000000..5f0a00a
--- /dev/null
+++ b/kontor-angular/src/app/tysc/team/team-list/team-list.component.html
@@ -0,0 +1 @@
+team-list works!
diff --git a/kontor-angular/src/app/comic/publisher/publisher-list.component.spec.ts b/kontor-angular/src/app/tysc/team/team-list/team-list.component.spec.ts
similarity index 54%
rename from kontor-angular/src/app/comic/publisher/publisher-list.component.spec.ts
rename to kontor-angular/src/app/tysc/team/team-list/team-list.component.spec.ts
index 27bd34d..b8a8711 100644
--- a/kontor-angular/src/app/comic/publisher/publisher-list.component.spec.ts
+++ b/kontor-angular/src/app/tysc/team/team-list/team-list.component.spec.ts
@@ -1,18 +1,18 @@
import { ComponentFixture, TestBed } from '@angular/core/testing';
-import { Publisher } from './publisher-list.component';
+import { TeamListComponent } from './team-list.component';
-describe('Publisher', () => {
- let component: Publisher;
- let fixture: ComponentFixture;
+describe('TeamListComponent', () => {
+ let component: TeamListComponent;
+ let fixture: ComponentFixture;
beforeEach(async () => {
await TestBed.configureTestingModule({
- imports: [Publisher]
+ imports: [TeamListComponent]
})
.compileComponents();
- fixture = TestBed.createComponent(Publisher);
+ fixture = TestBed.createComponent(TeamListComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
diff --git a/kontor-angular/src/app/tysc/team/team-list/team-list.component.ts b/kontor-angular/src/app/tysc/team/team-list/team-list.component.ts
new file mode 100644
index 0000000..f3b7766
--- /dev/null
+++ b/kontor-angular/src/app/tysc/team/team-list/team-list.component.ts
@@ -0,0 +1,11 @@
+import { Component } from '@angular/core';
+
+@Component({
+ selector: 'app-team-list',
+ imports: [],
+ templateUrl: './team-list.component.html',
+ styleUrl: './team-list.component.css'
+})
+export class TeamListComponent {
+
+}
diff --git a/kontor-angular/src/app/tysc/tysc-menu/tysc-menu.component.css b/kontor-angular/src/app/tysc/tysc-menu/tysc-menu.component.css
new file mode 100644
index 0000000..e69de29
diff --git a/kontor-angular/src/app/tysc/tysc-menu/tysc-menu.component.html b/kontor-angular/src/app/tysc/tysc-menu/tysc-menu.component.html
new file mode 100644
index 0000000..7f5e8d2
--- /dev/null
+++ b/kontor-angular/src/app/tysc/tysc-menu/tysc-menu.component.html
@@ -0,0 +1,8 @@
+
+
diff --git a/kontor-angular/src/app/comic/artist/artist-list.component.spec.ts b/kontor-angular/src/app/tysc/tysc-menu/tysc-menu.component.spec.ts
similarity index 54%
rename from kontor-angular/src/app/comic/artist/artist-list.component.spec.ts
rename to kontor-angular/src/app/tysc/tysc-menu/tysc-menu.component.spec.ts
index 977b2ac..61baa16 100644
--- a/kontor-angular/src/app/comic/artist/artist-list.component.spec.ts
+++ b/kontor-angular/src/app/tysc/tysc-menu/tysc-menu.component.spec.ts
@@ -1,18 +1,18 @@
import { ComponentFixture, TestBed } from '@angular/core/testing';
-import { Artist } from './artist-list.component';
+import { TyscMenuComponent } from './tysc-menu.component';
-describe('Artist', () => {
- let component: Artist;
- let fixture: ComponentFixture;
+describe('TyscMenuComponent', () => {
+ let component: TyscMenuComponent;
+ let fixture: ComponentFixture;
beforeEach(async () => {
await TestBed.configureTestingModule({
- imports: [Artist]
+ imports: [TyscMenuComponent]
})
.compileComponents();
- fixture = TestBed.createComponent(Artist);
+ fixture = TestBed.createComponent(TyscMenuComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
diff --git a/kontor-angular/src/app/tysc/tysc-menu/tysc-menu.component.ts b/kontor-angular/src/app/tysc/tysc-menu/tysc-menu.component.ts
new file mode 100644
index 0000000..12710f8
--- /dev/null
+++ b/kontor-angular/src/app/tysc/tysc-menu/tysc-menu.component.ts
@@ -0,0 +1,12 @@
+import { Component } from '@angular/core';
+import { RouterLink, RouterLinkActive, RouterOutlet } from '@angular/router';
+
+@Component({
+ selector: 'app-tysc-menu',
+ imports: [RouterLink, RouterLinkActive, RouterOutlet],
+ templateUrl: './tysc-menu.component.html',
+ styleUrl: './tysc-menu.component.css'
+})
+export class TyscMenuComponent {
+
+}
diff --git a/kontor-angular/src/app/tysc/vendor/vendor-list/vendor-list.component.css b/kontor-angular/src/app/tysc/vendor/vendor-list/vendor-list.component.css
new file mode 100644
index 0000000..e69de29
diff --git a/kontor-angular/src/app/tysc/vendor/vendor-list/vendor-list.component.html b/kontor-angular/src/app/tysc/vendor/vendor-list/vendor-list.component.html
new file mode 100644
index 0000000..aedf60d
--- /dev/null
+++ b/kontor-angular/src/app/tysc/vendor/vendor-list/vendor-list.component.html
@@ -0,0 +1 @@
+vendor-list works!
diff --git a/kontor-angular/src/app/tysc/vendor/vendor-list/vendor-list.component.spec.ts b/kontor-angular/src/app/tysc/vendor/vendor-list/vendor-list.component.spec.ts
new file mode 100644
index 0000000..fc3ed2c
--- /dev/null
+++ b/kontor-angular/src/app/tysc/vendor/vendor-list/vendor-list.component.spec.ts
@@ -0,0 +1,23 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { VendorListComponent } from './vendor-list.component';
+
+describe('VendorListComponent', () => {
+ let component: VendorListComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async () => {
+ await TestBed.configureTestingModule({
+ imports: [VendorListComponent]
+ })
+ .compileComponents();
+
+ fixture = TestBed.createComponent(VendorListComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/kontor-angular/src/app/tysc/vendor/vendor-list/vendor-list.component.ts b/kontor-angular/src/app/tysc/vendor/vendor-list/vendor-list.component.ts
new file mode 100644
index 0000000..073a098
--- /dev/null
+++ b/kontor-angular/src/app/tysc/vendor/vendor-list/vendor-list.component.ts
@@ -0,0 +1,11 @@
+import { Component } from '@angular/core';
+
+@Component({
+ selector: 'app-vendor-list',
+ imports: [],
+ templateUrl: './vendor-list.component.html',
+ styleUrl: './vendor-list.component.css'
+})
+export class VendorListComponent {
+
+}
diff --git a/kontor-angular/src/index.html b/kontor-angular/src/index.html
index 84e0b4c..5bd5d34 100644
--- a/kontor-angular/src/index.html
+++ b/kontor-angular/src/index.html
@@ -2,7 +2,7 @@
- KontorAngular
+ Kontor
diff --git a/kontor-angular/src/styles.css b/kontor-angular/src/styles.css
index 90d4ee0..1d3192c 100644
--- a/kontor-angular/src/styles.css
+++ b/kontor-angular/src/styles.css
@@ -1 +1,69 @@
/* You can add global styles to this file, and also import other style files */
+* {
+ box-sizing: border-box;
+}
+
+body {
+ font-family: Arial;
+ padding: 0px;
+ background: lightgrey;
+}
+
+/* Style the top navigation bar */
+.topnav {
+ overflow: hidden;
+ background-color: darkgrey;
+}
+
+/* Style the topnav links */
+.topnav a {
+ float: left;
+ display: block;
+ color: #f2f2f2;
+ text-align: center;
+ padding: 14px 16px;
+ text-decoration: none;
+}
+
+/* Change color on hover */
+.topnav a:hover {
+ background-color: #ddd;
+ color: black;
+}
+
+.subnav {
+ overflow: hidden;
+ background-color: grey;
+}
+
+.subnav a {
+ float: left;
+ display: block;
+ color: #f2f2f2;
+ text-align: center;
+ padding: 14px 16px;
+ text-decoration: none;
+}
+
+a {
+ display: inline-block;
+ color: white;
+ background-color: dodgerblue;
+ text-align: center;
+ padding: 10px;
+ text-decoration: none;
+ border-radius: 10px;
+ margin-left: 20px;
+}
+
+/* Change the color of links on mouse-over */
+a:hover {
+ background-color: royalblue;
+ color: white;
+}
+
+/* Add a color to the active/current link */
+a.active {
+ background-color: royalblue;
+ color: white;
+}
diff --git a/kontor-api/src/main.py b/kontor-api/src/main.py
index 7650618..738b0a4 100644
--- a/kontor-api/src/main.py
+++ b/kontor-api/src/main.py
@@ -4,6 +4,7 @@ from contextlib import asynccontextmanager
from fastapi import FastAPI
from fastapi.staticfiles import StaticFiles
+from fastapi.middleware.cors import CORSMiddleware
from src.apis.base import api_router
from src.core.log_conf import LOGGING_CONFIG, logger
@@ -27,6 +28,15 @@ def include_router(app: FastAPI):
def configure_static(app: FastAPI):
app.mount("/static", StaticFiles(directory="src/static"), name="static")
+def add_middle_ware(app: FastAPI):
+ app.add_middleware(
+ CORSMiddleware,
+ allow_origins=['*'],
+ allow_credentials=True,
+ allow_methods=['*'],
+ allow_headers=['*'],
+ )
+
def create_tables():
Base.metadata.create_all(bind=engine)
@@ -35,6 +45,7 @@ def start_application(log):
app = FastAPI(title=settings.PROJECT_NAME, version=settings.PROJECT_VERSION, lifespan=lifespan)
include_router(app)
configure_static(app)
+ add_middle_ware(app)
create_tables()
return app