diff --git a/src/main.module.ts b/src/main.module.ts index 65fb34a1c9fea9eaea21643664308bb84c8c0983..0c274937627d74c3498016649b6aab73c2b5f55c 100644 --- a/src/main.module.ts +++ b/src/main.module.ts @@ -258,7 +258,6 @@ export const GET_STATE_SNAPSHOT_TOKEN = new InjectionToken('GET_STATE_SNAPSHOT_T * TODO * once nehubacontainer is separated into viewer + overlay, migrate to nehubaContainer module */ - DatabrowserService, { provide: API_SERVICE_SET_VIEWER_HANDLE_TOKEN, useFactory: setViewerHandleFactory, diff --git a/src/services/state/viewerState.store.ts b/src/services/state/viewerState.store.ts index fa8c727a694309929c2babd04b67caecd2085a73..63fefee549b4b6366197ef7e66e19d0a249f1379 100644 --- a/src/services/state/viewerState.store.ts +++ b/src/services/state/viewerState.store.ts @@ -24,6 +24,7 @@ import { viewerStateMouseOverCustomLandmarkInPerspectiveView, viewerStateNewViewer } from './viewerState.store.helper'; +import { cvtNehubaConfigToNavigationObj } from 'src/ui/viewerStateController/viewerState.useEffect'; export interface StateInterface { fetchedTemplates: any[] @@ -136,17 +137,22 @@ export const getStateStore = ({ state = defaultState } = {}) => (prevState: Part } case NEWVIEWER: { - const { selectParcellation: parcellation } = action + const { + selectParcellation: parcellation, + navigation, + selectTemplate, + } = action + const navigationFromTemplateSelected = cvtNehubaConfigToNavigationObj(selectTemplate?.nehubaConfig?.dataset?.initialNgState) return { ...prevState, - templateSelected : action.selectTemplate, + templateSelected : selectTemplate, parcellationSelected : parcellation, // taken care of by effect.ts // regionsSelected : [], // taken care of by effect.ts // landmarksSelected : [], - navigation : action.navigation, + navigation : navigation || navigationFromTemplateSelected, dedicatedView : null, } } diff --git a/src/services/state/viewerState/actions.ts b/src/services/state/viewerState/actions.ts index 7cea8db4873cc7a453bbb4e2c7be96f101f34879..4da8446635f964488249447df68329d4b77d1d57 100644 --- a/src/services/state/viewerState/actions.ts +++ b/src/services/state/viewerState/actions.ts @@ -6,7 +6,7 @@ export const viewerStateNewViewer = createAction( props<{ selectTemplate: any selectParcellation: any - navigation: any + navigation?: any }>() ) diff --git a/src/ui/viewerStateController/viewerState.useEffect.spec.ts b/src/ui/viewerStateController/viewerState.useEffect.spec.ts index e15a18fb8311bff09d50ecce5109a1366cc8f2e4..b1eeb09408029608558233406555263d33cf6f73 100644 --- a/src/ui/viewerStateController/viewerState.useEffect.spec.ts +++ b/src/ui/viewerStateController/viewerState.useEffect.spec.ts @@ -104,7 +104,6 @@ describe('> viewerState.useEffect.ts', () => { a: viewerStateNewViewer({ selectTemplate: reconstitutedColin, selectParcellation: reconstitutedColin.parcellations[0], - navigation: {} }) } ) @@ -133,7 +132,6 @@ describe('> viewerState.useEffect.ts', () => { a: viewerStateNewViewer({ selectTemplate: reconstitutedColin, selectParcellation: reconstitutedColin.parcellations[0], - navigation: {} }) } ) @@ -162,7 +160,6 @@ describe('> viewerState.useEffect.ts', () => { a: viewerStateNewViewer({ selectTemplate: reconstitutedColin, selectParcellation: reconstitutedColin.parcellations[0], - navigation: {} }) } ) @@ -190,7 +187,6 @@ describe('> viewerState.useEffect.ts', () => { a: viewerStateNewViewer({ selectTemplate: reconstitutedColin, selectParcellation: reconstitutedColin.parcellations[0], - navigation: {} }) } ) @@ -224,7 +220,6 @@ describe('> viewerState.useEffect.ts', () => { a: viewerStateNewViewer({ selectTemplate: updatedColin, selectParcellation: updatedColin.parcellations[0], - navigation: {} }) } ) diff --git a/src/ui/viewerStateController/viewerState.useEffect.ts b/src/ui/viewerStateController/viewerState.useEffect.ts index 75f613cca3292a9392184b366df4c12cddd6f3e6..292d47435e236ea0c07a8f2c8bea00f7b108cf26 100644 --- a/src/ui/viewerStateController/viewerState.useEffect.ts +++ b/src/ui/viewerStateController/viewerState.useEffect.ts @@ -210,9 +210,8 @@ export class ViewerStateControllerUseEffect implements OnDestroy { */ if (!lastSelectedTemplate) { return of(viewerStateNewViewer({ - navigation: {}, selectParcellation, - selectTemplate + selectTemplate, })) } @@ -228,9 +227,8 @@ export class ViewerStateControllerUseEffect implements OnDestroy { */ if (status === 'error') { return viewerStateNewViewer({ - navigation: {}, selectParcellation, - selectTemplate + selectTemplate, }) } @@ -258,7 +256,6 @@ export class ViewerStateControllerUseEffect implements OnDestroy { return viewerStateNewViewer({ selectTemplate: deepCopiedState, selectParcellation, - navigation: {} }) }) )