diff --git a/matsen-tool/package-lock.json b/matsen-tool/package-lock.json index 2713e15..d169938 100644 --- a/matsen-tool/package-lock.json +++ b/matsen-tool/package-lock.json @@ -22,6 +22,7 @@ "@ngx-translate/core": "^15.0.0", "@ngx-translate/http-loader": "^8.0.0", "@popperjs/core": "^2.11.8", + "@types/node": "^20.11.5", "bootstrap": "^5.3.2", "bootstrap-icons": "^1.11.2", "rxjs": "~7.8.0", @@ -4635,10 +4636,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "20.10.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.5.tgz", - "integrity": "sha512-nNPsNE65wjMxEKI93yOP+NPGGBJz/PoN3kZsVLee0XMiJolxSekEVD8wRwBUBqkwc7UWop0edW50yrCQW4CyRw==", - "dev": true, + "version": "20.11.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz", + "integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==", "dependencies": { "undici-types": "~5.26.4" } @@ -13408,8 +13408,7 @@ "node_modules/undici-types": { "version": "5.26.5", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", - "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", - "dev": true + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==" }, "node_modules/unicode-canonical-property-names-ecmascript": { "version": "2.0.0", diff --git a/matsen-tool/package.json b/matsen-tool/package.json index 0c94b3e..59cf71b 100644 --- a/matsen-tool/package.json +++ b/matsen-tool/package.json @@ -25,6 +25,7 @@ "@ngx-translate/core": "^15.0.0", "@ngx-translate/http-loader": "^8.0.0", "@popperjs/core": "^2.11.8", + "@types/node": "^20.11.5", "bootstrap": "^5.3.2", "bootstrap-icons": "^1.11.2", "rxjs": "~7.8.0", diff --git a/matsen-tool/src/app/app-routing.module.ts b/matsen-tool/src/app/app-routing.module.ts index 902fb58..b5910c0 100644 --- a/matsen-tool/src/app/app-routing.module.ts +++ b/matsen-tool/src/app/app-routing.module.ts @@ -1,23 +1,56 @@ -import { NgModule } from '@angular/core'; -import { Routes, RouterModule } from '@angular/router'; +import {NgModule} from '@angular/core'; +import {Routes, RouterModule} from '@angular/router'; -import { HomeComponent } from './home'; -import { AuthGuard } from './_helpers'; +import {HomeComponent} from './home'; +import {AuthGuard} from './_helpers'; +import {PartnersComponent} from "@app/partners/partners.component"; +import {TwoColumnComponent} from "@app/layout/two-column/two-column.component"; +import {PartnersDetailComponent} from "@app/partners/partners-detail/partners-detail.component"; const accountModule = () => import('./account/account.module').then(x => x.AccountModule); const usersModule = () => import('./users/users.module').then(x => x.UsersModule); const routes: Routes = [ - { path: '', component: HomeComponent, canActivate: [AuthGuard] }, - { path: 'users', loadChildren: usersModule, canActivate: [AuthGuard] }, - { path: 'account', loadChildren: accountModule }, + {path: '', component: HomeComponent, canActivate: [AuthGuard]}, + {path: 'users', loadChildren: usersModule, canActivate: [AuthGuard]}, + {path: 'account', loadChildren: accountModule}, + { + path: 'customers', + component: TwoColumnComponent, + canActivate: [AuthGuard], + children: [ + {path: '', component: PartnersComponent, data: {dataType: 'customer'}}, + {path: 'detail', component: PartnersDetailComponent, data: {dataType: 'customer-detail'}}, + ] + }, + { + path: 'suppliers', + component: TwoColumnComponent, + canActivate: [AuthGuard], + children: [ + {path: '', component: PartnersComponent, data: {dataType: 'supplier'}}, + ] + }, + { + path: 'service', + component: TwoColumnComponent, + canActivate: [AuthGuard], + children: [ + {path: '', component: PartnersComponent, data: {dataType: 'service'}}, + ] + }, + + // { path: 'customers', component: PartnersComponent, data: { dataType: 'customer' } }, + // { path: 'suppliers', component: PartnersComponent, data: { dataType: 'supplier' } }, + // { path: 'service', component: PartnersComponent, data: { dataType: 'service' } }, // otherwise redirect to home - { path: '**', redirectTo: '' } + {path: '**', redirectTo: ''} ]; @NgModule({ imports: [RouterModule.forRoot(routes)], exports: [RouterModule] }) -export class AppRoutingModule { } \ No newline at end of file +export class AppRoutingModule { +} diff --git a/matsen-tool/src/app/app.config.server.ts b/matsen-tool/src/app/app.config.server.ts index b4d57c9..be361ce 100644 --- a/matsen-tool/src/app/app.config.server.ts +++ b/matsen-tool/src/app/app.config.server.ts @@ -1,11 +1,11 @@ -import { mergeApplicationConfig, ApplicationConfig } from '@angular/core'; -import { provideServerRendering } from '@angular/platform-server'; -import { appConfig } from './app.config'; +import {mergeApplicationConfig, ApplicationConfig} from '@angular/core'; +import {provideServerRendering} from '@angular/platform-server'; +import {appConfig} from './app.config'; const serverConfig: ApplicationConfig = { - providers: [ - provideServerRendering() - ] + providers: [ + provideServerRendering() + ] }; export const config = mergeApplicationConfig(appConfig, serverConfig); diff --git a/matsen-tool/src/app/app.module.ts b/matsen-tool/src/app/app.module.ts index 92402ff..fcc7a8b 100644 --- a/matsen-tool/src/app/app.module.ts +++ b/matsen-tool/src/app/app.module.ts @@ -18,6 +18,10 @@ import {MatCardModule} from "@angular/material/card"; import {TranslateLoader, TranslateModule} from "@ngx-translate/core"; import {TranslateHttpLoader} from "@ngx-translate/http-loader"; import {NgOptimizedImage} from "@angular/common"; +import {PartnersComponent} from './partners/partners.component'; +import {BrowserAnimationsModule} from "@angular/platform-browser/animations"; +import {TwoColumnComponent} from './layout/two-column/two-column.component'; +import {PartnersDetailComponent} from './partners/partners-detail/partners-detail.component'; export function apiConfigFactory(): Configuration { const params: ConfigurationParameters = { @@ -36,6 +40,7 @@ export function HttpLoaderFactory(http: HttpClient) { imports: [ ApiModule.forRoot(apiConfigFactory), BrowserModule, + BrowserAnimationsModule, TranslateModule.forRoot({ defaultLanguage: 'de', loader: { @@ -49,12 +54,15 @@ export function HttpLoaderFactory(http: HttpClient) { NgbModule, AppRoutingModule, MatCardModule, - NgOptimizedImage + NgOptimizedImage, + PartnersComponent ], declarations: [ AppComponent, AlertComponent, - HomeComponent + HomeComponent, + TwoColumnComponent, + PartnersDetailComponent ], providers: [ {provide: HTTP_INTERCEPTORS, useClass: JwtInterceptor, multi: true}, diff --git a/matsen-tool/src/app/home/home.component.html b/matsen-tool/src/app/home/home.component.html index cad9fe8..24b3c80 100644 --- a/matsen-tool/src/app/home/home.component.html +++ b/matsen-tool/src/app/home/home.component.html @@ -9,21 +9,21 @@
partners-detail works!
diff --git a/matsen-tool/src/app/partners/partners-detail/partners-detail.component.scss b/matsen-tool/src/app/partners/partners-detail/partners-detail.component.scss new file mode 100644 index 0000000..e69de29 diff --git a/matsen-tool/src/app/partners/partners-detail/partners-detail.component.spec.ts b/matsen-tool/src/app/partners/partners-detail/partners-detail.component.spec.ts new file mode 100644 index 0000000..1d33321 --- /dev/null +++ b/matsen-tool/src/app/partners/partners-detail/partners-detail.component.spec.ts @@ -0,0 +1,23 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { PartnersDetailComponent } from './partners-detail.component'; + +describe('PartnersDetailComponent', () => { + let component: PartnersDetailComponent; + let fixture: ComponentFixture| + Nr. + | +{{element.position}} | ++ Partner + | +{{element.partner}} | ++ Adresse + | + {{element.street}} {{element.street_no}} {{element.zip}} {{element.city}} |
+ + Website + | +{{element.website}} | +
|---|