From 20db32538d84d7892546e8d17f81c351ec069d00 Mon Sep 17 00:00:00 2001 From: Jodie Muramoto Date: Mon, 9 Jul 2018 10:20:00 -0700 Subject: [PATCH 1/6] feature/SHIBUI-574: Routing dashboard tabs, initial checkin, broken code --- .../component/dashboard-providers-list.component.html | 1 + .../component/dashboard-providers-list.component.ts | 9 +++++++++ .../component/dashboard-resolvers-list.component.html | 1 + .../component/dashboard-resolvers-list.component.ts | 9 +++++++++ .../metadata/manager/container/manager.component.html | 9 +++++++++ ui/src/app/metadata/manager/manager.module.ts | 6 +++++- ui/src/app/metadata/metadata.routing.ts | 7 ++++++- 7 files changed, 40 insertions(+), 2 deletions(-) create mode 100644 ui/src/app/metadata/manager/component/dashboard-providers-list.component.html create mode 100644 ui/src/app/metadata/manager/component/dashboard-providers-list.component.ts create mode 100644 ui/src/app/metadata/manager/component/dashboard-resolvers-list.component.html create mode 100644 ui/src/app/metadata/manager/component/dashboard-resolvers-list.component.ts diff --git a/ui/src/app/metadata/manager/component/dashboard-providers-list.component.html b/ui/src/app/metadata/manager/component/dashboard-providers-list.component.html new file mode 100644 index 000000000..f429f1e6c --- /dev/null +++ b/ui/src/app/metadata/manager/component/dashboard-providers-list.component.html @@ -0,0 +1 @@ +Metadata providers diff --git a/ui/src/app/metadata/manager/component/dashboard-providers-list.component.ts b/ui/src/app/metadata/manager/component/dashboard-providers-list.component.ts new file mode 100644 index 000000000..afa91580b --- /dev/null +++ b/ui/src/app/metadata/manager/component/dashboard-providers-list.component.ts @@ -0,0 +1,9 @@ +import { Component } from '@angular/core'; + +@Component({ + templateUrl: './dashboard-providers-list.component.html' +}) + +export class DashboardProvidersListComponent { + +} diff --git a/ui/src/app/metadata/manager/component/dashboard-resolvers-list.component.html b/ui/src/app/metadata/manager/component/dashboard-resolvers-list.component.html new file mode 100644 index 000000000..634e521e8 --- /dev/null +++ b/ui/src/app/metadata/manager/component/dashboard-resolvers-list.component.html @@ -0,0 +1 @@ +Metadata resolvers diff --git a/ui/src/app/metadata/manager/component/dashboard-resolvers-list.component.ts b/ui/src/app/metadata/manager/component/dashboard-resolvers-list.component.ts new file mode 100644 index 000000000..7cb4c2f15 --- /dev/null +++ b/ui/src/app/metadata/manager/component/dashboard-resolvers-list.component.ts @@ -0,0 +1,9 @@ +import { Component } from '@angular/core'; + +@Component({ + templateUrl: './dashboard-resolvers-list.component.html' +}) + +export class DashboardResolversListComponent { + +} diff --git a/ui/src/app/metadata/manager/container/manager.component.html b/ui/src/app/metadata/manager/container/manager.component.html index 10df850b2..6f87f50c6 100644 --- a/ui/src/app/metadata/manager/container/manager.component.html +++ b/ui/src/app/metadata/manager/container/manager.component.html @@ -15,6 +15,15 @@
+ + - -
- - -
+
diff --git a/ui/src/app/metadata/manager/container/manager.component.ts b/ui/src/app/metadata/manager/container/manager.component.ts index 0fe3a8a42..6a3331584 100644 --- a/ui/src/app/metadata/manager/container/manager.component.ts +++ b/ui/src/app/metadata/manager/container/manager.component.ts @@ -16,7 +16,6 @@ import { RemoveDraftRequest } from '../../resolver/action/draft.action'; @Component({ selector: 'manager-page', - changeDetection: ChangeDetectionStrategy.OnPush, templateUrl: './manager.component.html', styleUrls: ['./manager.component.scss'] }) diff --git a/ui/src/app/metadata/manager/manager.module.ts b/ui/src/app/metadata/manager/manager.module.ts index 1b5253d20..ed29e36c9 100644 --- a/ui/src/app/metadata/manager/manager.module.ts +++ b/ui/src/app/metadata/manager/manager.module.ts @@ -10,8 +10,8 @@ import { EffectsModule } from '@ngrx/effects'; import { ManagerComponent } from './container/manager.component'; import { EntityItemComponent } from './component/entity-item.component'; import { ProviderSearchComponent } from './component/provider-search.component'; -import { DashboardResolversListComponent } from './component/dashboard-resolvers-list.component'; -import { DashboardProvidersListComponent } from './component/dashboard-providers-list.component'; +import { DashboardResolversListComponent } from './container/dashboard-resolvers-list.component'; +import { DashboardProvidersListComponent } from './container/dashboard-providers-list.component'; import { reducers } from './reducer'; import { SearchEffects } from './effect/search.effects'; import { DeleteDialogComponent } from './component/delete-dialog.component'; diff --git a/ui/src/app/metadata/manager/manager.routing.ts b/ui/src/app/metadata/manager/manager.routing.ts new file mode 100644 index 000000000..1a6deb204 --- /dev/null +++ b/ui/src/app/metadata/manager/manager.routing.ts @@ -0,0 +1,19 @@ +import { Routes } from '@angular/router'; +import { DashboardResolversListComponent } from './container/dashboard-resolvers-list.component'; +import { DashboardProvidersListComponent } from './container/dashboard-providers-list.component'; +import { ManagerComponent } from './container/manager.component'; + +export const ManagerRoutes: Routes = [ + { path: '', redirectTo: 'manager', pathMatch: 'prefix' }, + { + path: 'manager', + component: ManagerComponent, + children: [ + { path: '', redirectTo: 'resolvers', pathMatch: 'prefix' }, + { path: 'resolvers', component: DashboardResolversListComponent }, + { path: 'providers', component: DashboardProvidersListComponent }, + ] + } +]; + + diff --git a/ui/src/app/metadata/metadata.routing.ts b/ui/src/app/metadata/metadata.routing.ts index 102b1f56f..c9423fdbf 100644 --- a/ui/src/app/metadata/metadata.routing.ts +++ b/ui/src/app/metadata/metadata.routing.ts @@ -1,24 +1,17 @@ import { NgModule } from '@angular/core'; import { Routes, RouterModule } from '@angular/router'; - -import { ManagerComponent } from './manager/container/manager.component'; -import { DashboardResolversListComponent } from './manager/component/dashboard-resolvers-list.component'; -import { DashboardProvidersListComponent } from './manager/component/dashboard-providers-list.component'; import { MetadataPageComponent } from './metadata.component'; import { ResolverRoutes } from './resolver/resolver.routing'; import { ProviderRoutes } from './provider/provider.routing'; +import { ManagerRoutes } from './manager/manager.routing'; const routes: Routes = [ { path: '', component: MetadataPageComponent, children: [ - { path: '', component: ManagerComponent, children: [ - { path: '', redirectTo: 'resolvers', pathMatch: 'full' }, - { path: 'resolvers', component: DashboardResolversListComponent }, - { path: 'providers', component: DashboardProvidersListComponent }, - ] }, + ...ManagerRoutes, ...ResolverRoutes, ...ProviderRoutes ], From 85c1018cee9c3afd32e1be3cdc4a820146a53f19 Mon Sep 17 00:00:00 2001 From: Ryan Mathis Date: Mon, 9 Jul 2018 12:58:58 -0700 Subject: [PATCH 4/6] SHIBUI-574 Added providers$ observable to dashboard list page --- .../container/dashboard-providers-list.component.html | 2 ++ .../container/dashboard-providers-list.component.ts | 11 +++++++++++ 2 files changed, 13 insertions(+) diff --git a/ui/src/app/metadata/manager/container/dashboard-providers-list.component.html b/ui/src/app/metadata/manager/container/dashboard-providers-list.component.html index f429f1e6c..455706a97 100644 --- a/ui/src/app/metadata/manager/container/dashboard-providers-list.component.html +++ b/ui/src/app/metadata/manager/container/dashboard-providers-list.component.html @@ -1 +1,3 @@ Metadata providers + +
{{ providers$ | async | json }}
\ No newline at end of file diff --git a/ui/src/app/metadata/manager/container/dashboard-providers-list.component.ts b/ui/src/app/metadata/manager/container/dashboard-providers-list.component.ts index 7e8b4daaf..fd43e20c6 100644 --- a/ui/src/app/metadata/manager/container/dashboard-providers-list.component.ts +++ b/ui/src/app/metadata/manager/container/dashboard-providers-list.component.ts @@ -1,4 +1,8 @@ import { Component } from '@angular/core'; +import { MetadataProvider } from '../../domain/model'; +import { Observable } from '../../../../../node_modules/rxjs'; +import { Store } from '@ngrx/store'; +import { ProviderState, getAllProviders } from '../../provider/reducer'; @Component({ selector: 'dashboard-providers-list', @@ -7,4 +11,11 @@ import { Component } from '@angular/core'; export class DashboardProvidersListComponent { + providers$: Observable; + + constructor( + private store: Store + ) { + this.providers$ = this.store.select(getAllProviders); + } } From a64faed0a163af06e1f016901f088c862f1c49bd Mon Sep 17 00:00:00 2001 From: Ryan Mathis Date: Mon, 9 Jul 2018 13:20:10 -0700 Subject: [PATCH 5/6] Added routerLinkActive to active nav links --- ui/src/app/metadata/manager/container/manager.component.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ui/src/app/metadata/manager/container/manager.component.html b/ui/src/app/metadata/manager/container/manager.component.html index 9a88f5ec8..26cc154eb 100644 --- a/ui/src/app/metadata/manager/container/manager.component.html +++ b/ui/src/app/metadata/manager/container/manager.component.html @@ -17,10 +17,10 @@
From 6c3060003d5a4b0ad263cb88c90cdd15fecdc2bd Mon Sep 17 00:00:00 2001 From: Ryan Mathis Date: Mon, 9 Jul 2018 14:27:13 -0700 Subject: [PATCH 6/6] Cleanup --- .../manager/container/dashboard-providers-list.component.html | 2 +- ui/src/app/metadata/manager/manager.routing.ts | 2 -- ui/src/app/metadata/provider/effect/collection.effect.ts | 2 +- ui/src/app/metadata/provider/reducer/collection.reducer.ts | 3 +-- 4 files changed, 3 insertions(+), 6 deletions(-) diff --git a/ui/src/app/metadata/manager/container/dashboard-providers-list.component.html b/ui/src/app/metadata/manager/container/dashboard-providers-list.component.html index 455706a97..b30d2702a 100644 --- a/ui/src/app/metadata/manager/container/dashboard-providers-list.component.html +++ b/ui/src/app/metadata/manager/container/dashboard-providers-list.component.html @@ -1,3 +1,3 @@ Metadata providers -
{{ providers$ | async | json }}
\ No newline at end of file +
{{ providers$ | async | json }}
diff --git a/ui/src/app/metadata/manager/manager.routing.ts b/ui/src/app/metadata/manager/manager.routing.ts index 1a6deb204..9f9c21179 100644 --- a/ui/src/app/metadata/manager/manager.routing.ts +++ b/ui/src/app/metadata/manager/manager.routing.ts @@ -15,5 +15,3 @@ export const ManagerRoutes: Routes = [ ] } ]; - - diff --git a/ui/src/app/metadata/provider/effect/collection.effect.ts b/ui/src/app/metadata/provider/effect/collection.effect.ts index 5a471dfdd..1a737839e 100644 --- a/ui/src/app/metadata/provider/effect/collection.effect.ts +++ b/ui/src/app/metadata/provider/effect/collection.effect.ts @@ -21,7 +21,7 @@ import { MetadataProviderService } from '../../domain/service/provider.service'; export class CollectionEffects { @Effect() - loadFilters$ = this.actions$.pipe( + loadProviders$ = this.actions$.pipe( ofType(ProviderCollectionActionTypes.LOAD_PROVIDER_REQUEST), switchMap(() => this.providerService diff --git a/ui/src/app/metadata/provider/reducer/collection.reducer.ts b/ui/src/app/metadata/provider/reducer/collection.reducer.ts index 9a625fa79..6bc1af8e7 100644 --- a/ui/src/app/metadata/provider/reducer/collection.reducer.ts +++ b/ui/src/app/metadata/provider/reducer/collection.reducer.ts @@ -24,12 +24,11 @@ export const initialState: CollectionState = adapter.getInitialState({ export function reducer(state = initialState, action: ProviderCollectionActionsUnion): CollectionState { switch (action.type) { case ProviderCollectionActionTypes.LOAD_PROVIDER_SUCCESS: { - let s = adapter.addAll(action.payload, { + return adapter.addAll(action.payload, { ...state, selectedProviderId: state.selectedProviderId, loaded: true }); - return s; } case ProviderCollectionActionTypes.UPDATE_PROVIDER_SUCCESS: {