diff --git a/src/atlasViewer/atlasViewer.apiService.service.spec.ts b/src/atlasViewer/atlasViewer.apiService.service.spec.ts index 4f4d4c0de6d513a0ebad97e81bb8a9f107a201a7..e1164b83f9064702177f8763def8feeffdab47db 100644 --- a/src/atlasViewer/atlasViewer.apiService.service.spec.ts +++ b/src/atlasViewer/atlasViewer.apiService.service.spec.ts @@ -1,55 +1,60 @@ -import {} from 'jasmine' -import {AtlasViewerAPIServices} from "src/atlasViewer/atlasViewer.apiService.service"; -import {async, TestBed} from "@angular/core/testing"; -import {provideMockActions} from "@ngrx/effects/testing"; -import {provideMockStore} from "@ngrx/store/testing"; -import {defaultRootState} from "src/services/stateStore.service"; -import {Observable, of} from "rxjs"; -import {Action} from "@ngrx/store"; -import {AngularMaterialModule} from "src/ui/sharedModules/angularMaterial.module"; -const actions$: Observable<Action> = of({type: 'TEST'}) - +import { } from 'jasmine' +import { AtlasViewerAPIServices } from "src/atlasViewer/atlasViewer.apiService.service"; +import { async, TestBed } from "@angular/core/testing"; +import { provideMockActions } from "@ngrx/effects/testing"; +import { provideMockStore } from "@ngrx/store/testing"; +import { defaultRootState } from "src/services/stateStore.service"; +import { Observable, of } from "rxjs"; +import { Action } from "@ngrx/store"; +import { AngularMaterialModule } from "src/ui/sharedModules/angularMaterial.module"; +import { HttpClientModule } from '@angular/common/http'; +import { WidgetModule } from './widgetUnit/widget.module'; +import { PluginModule } from './pluginUnit/plugin.module'; +const actions$: Observable<Action> = of({ type: 'TEST' }) describe('atlasViewer.apiService.service.ts', () => { - describe('getUserToSelectARegion', () => { + describe('getUserToSelectARegion', () => { - beforeEach(async(() => { - TestBed.configureTestingModule({ - imports: [ - AngularMaterialModule, - ], - providers: [ - AtlasViewerAPIServices, - provideMockActions(() => actions$), - provideMockStore({initialState: defaultRootState}) - ] - }) - })) + beforeEach(async(() => { + TestBed.configureTestingModule({ + imports: [ + AngularMaterialModule, + HttpClientModule, + WidgetModule, + PluginModule, + ], + providers: [ + AtlasViewerAPIServices, + provideMockActions(() => actions$), + provideMockStore({ initialState: defaultRootState }) + ] + }).compileComponents() + })) - it('should return value on resolve', async () => { - const regionToSend = 'test-region' - let sentData: any - const apiService = TestBed.get(AtlasViewerAPIServices) - const callApi = apiService.interactiveViewer.uiHandle.getUserToSelectARegion('selecting Region mode message') - apiService.getUserToSelectARegionResolve(regionToSend) - await callApi.then(r => { - sentData = r - }) - expect(sentData).toEqual(regionToSend) - }) + it('should return value on resolve', async () => { + const regionToSend = 'test-region' + let sentData: any + const apiService = TestBed.get(AtlasViewerAPIServices) + const callApi = apiService.interactiveViewer.uiHandle.getUserToSelectARegion('selecting Region mode message') + apiService.getUserToSelectARegionResolve(regionToSend) + await callApi.then(r => { + sentData = r + }) + expect(sentData).toEqual(regionToSend) + }) - it('pluginRegionSelectionEnabled should false after resolve', async () => { - const { uiState } = defaultRootState - const regionToSend = 'test-region' - let sentData: any - const apiService = TestBed.get(AtlasViewerAPIServices) - const callApi = apiService.interactiveViewer.uiHandle.getUserToSelectARegion('selecting Region mode message') - apiService.getUserToSelectARegionResolve(regionToSend) - await callApi.then(r => { - sentData = r - }) - expect(uiState.pluginRegionSelectionEnabled).toBe(false) - }) + it('pluginRegionSelectionEnabled should false after resolve', async () => { + const { uiState } = defaultRootState + const regionToSend = 'test-region' + let sentData: any + const apiService = TestBed.get(AtlasViewerAPIServices) + const callApi = apiService.interactiveViewer.uiHandle.getUserToSelectARegion('selecting Region mode message') + apiService.getUserToSelectARegionResolve(regionToSend) + await callApi.then(r => { + sentData = r + }) + expect(uiState.pluginRegionSelectionEnabled).toBe(false) }) + }) }) \ No newline at end of file diff --git a/src/atlasViewer/atlasViewer.apiService.service.ts b/src/atlasViewer/atlasViewer.apiService.service.ts index 9be4720ba7d95a1f743d5fdc913c8bd33dffcc0c..b88de47aff1dfd79bff2e3df1d4b7dc1eb0f243f 100644 --- a/src/atlasViewer/atlasViewer.apiService.service.ts +++ b/src/atlasViewer/atlasViewer.apiService.service.ts @@ -12,7 +12,7 @@ import { } from "src/services/stateStore.service"; import { ModalHandler } from "../util/pluginHandlerClasses/modalHandler"; import { ToastHandler } from "../util/pluginHandlerClasses/toastHandler"; -import { IPluginManifest, PluginServices } from "./atlasViewer.pluginService.service"; +import { IPluginManifest, PluginServices } from "./pluginUnit"; import { ENABLE_PLUGIN_REGION_SELECTION } from "src/services/state/uiState.store"; declare let window diff --git a/src/atlasViewer/atlasViewer.constantService.service.ts b/src/atlasViewer/atlasViewer.constantService.service.ts index 0f4302f2eb877084511118620c525b0028172365..d198eaa62087796d64fd18e31bb829800022071d 100644 --- a/src/atlasViewer/atlasViewer.constantService.service.ts +++ b/src/atlasViewer/atlasViewer.constantService.service.ts @@ -3,7 +3,7 @@ import { Injectable, OnDestroy } from "@angular/core"; import { select, Store } from "@ngrx/store"; import { merge, Observable, of, Subscription, throwError, fromEvent, forkJoin } from "rxjs"; import { catchError, map, shareReplay, switchMap, tap, filter, take } from "rxjs/operators"; -import { LoggingService } from "src/services/logging.service"; +import { LoggingService } from "src/logging"; import { SNACKBAR_MESSAGE } from "src/services/state/uiState.store"; import { IavRootStoreInterface } from "../services/stateStore.service"; import { AtlasWorkerService } from "./atlasViewer.workerService.service"; diff --git a/src/atlasViewer/atlasViewer.pluginService.service.spec.ts b/src/atlasViewer/pluginUnit/atlasViewer.pluginService.service.spec.ts similarity index 100% rename from src/atlasViewer/atlasViewer.pluginService.service.spec.ts rename to src/atlasViewer/pluginUnit/atlasViewer.pluginService.service.spec.ts diff --git a/src/atlasViewer/atlasViewer.pluginService.service.ts b/src/atlasViewer/pluginUnit/atlasViewer.pluginService.service.ts similarity index 96% rename from src/atlasViewer/atlasViewer.pluginService.service.ts rename to src/atlasViewer/pluginUnit/atlasViewer.pluginService.service.ts index b8d5903db5bdd5c4ad353090560bc8c4101e446b..aa46be49522122079e696d2f606629f8e3905032 100644 --- a/src/atlasViewer/atlasViewer.pluginService.service.ts +++ b/src/atlasViewer/pluginUnit/atlasViewer.pluginService.service.ts @@ -2,17 +2,17 @@ import { HttpClient } from '@angular/common/http' import { ComponentFactory, ComponentFactoryResolver, Injectable, ViewContainerRef } from "@angular/core"; import { PLUGINSTORE_ACTION_TYPES } from "src/services/state/pluginState.store"; import { IavRootStoreInterface, isDefined } from 'src/services/stateStore.service' -import { PluginUnit } from "./pluginUnit/pluginUnit.component"; -import { WidgetServices } from "./widgetUnit/widgetService.service"; - +import { PluginUnit } from "./pluginUnit.component"; +import { WidgetServices } from "../widgetUnit/widgetService.service"; import { select, Store } from "@ngrx/store"; import { BehaviorSubject, merge, Observable, of } from "rxjs"; import { filter, map, shareReplay } from "rxjs/operators"; -import { LoggingService } from 'src/services/logging.service'; +import { LoggingService } from 'src/logging'; import { PluginHandler } from 'src/util/pluginHandler'; -import '../res/css/plugin_styles.css' -import { AtlasViewerConstantsServices } from "./atlasViewer.constantService.service"; -import { WidgetUnit } from "./widgetUnit/widgetUnit.component"; +import { AtlasViewerConstantsServices } from "../atlasViewer.constantService.service"; +import { WidgetUnit } from "../widgetUnit/widgetUnit.component"; + +import './plugin_styles.css' @Injectable({ providedIn : 'root', diff --git a/src/atlasViewer/pluginUnit/index.ts b/src/atlasViewer/pluginUnit/index.ts new file mode 100644 index 0000000000000000000000000000000000000000..cc1c5058b8b8133b2d2c1e8547b6c9c51404a752 --- /dev/null +++ b/src/atlasViewer/pluginUnit/index.ts @@ -0,0 +1 @@ +export { PluginServices, IPluginManifest } from './atlasViewer.pluginService.service' \ No newline at end of file diff --git a/src/atlasViewer/pluginUnit/plugin.module.ts b/src/atlasViewer/pluginUnit/plugin.module.ts new file mode 100644 index 0000000000000000000000000000000000000000..88198bfe685c2613faee04332ae417ffd6e9ee1c --- /dev/null +++ b/src/atlasViewer/pluginUnit/plugin.module.ts @@ -0,0 +1,27 @@ +import { NgModule } from "@angular/core"; +import { PluginUnit } from "./pluginUnit.component"; +import { PluginServices } from "./atlasViewer.pluginService.service"; +import { PluginFactoryDirective } from "./pluginFactory.directive"; +import { LoggingModule } from "src/logging"; + +@NgModule({ + imports:[ + LoggingModule, + ], + declarations: [ + PluginUnit, + PluginFactoryDirective + ], + entryComponents: [ + PluginUnit + ], + exports: [ + PluginUnit, + PluginFactoryDirective + ], + providers: [ + PluginServices + ] +}) + +export class PluginModule{} \ No newline at end of file diff --git a/src/util/directives/pluginFactory.directive.ts b/src/atlasViewer/pluginUnit/pluginFactory.directive.ts similarity index 95% rename from src/util/directives/pluginFactory.directive.ts rename to src/atlasViewer/pluginUnit/pluginFactory.directive.ts index 5ca5401d638cd8f9a46f8eb40fab485c9cc3ef4b..65081f45eb78a0506b9997b171975f7026c31cb1 100644 --- a/src/util/directives/pluginFactory.directive.ts +++ b/src/atlasViewer/pluginUnit/pluginFactory.directive.ts @@ -1,7 +1,7 @@ import { Directive, Renderer2, ViewContainerRef } from "@angular/core"; import { SUPPORT_LIBRARY_MAP } from "src/atlasViewer/atlasViewer.constantService.service"; -import { PluginServices } from "src/atlasViewer/atlasViewer.pluginService.service"; -import { LoggingService } from "src/services/logging.service"; +import { PluginServices } from "./atlasViewer.pluginService.service"; +import { LoggingService } from "src/logging"; @Directive({ selector: '[pluginFactoryDirective]', diff --git a/src/res/css/plugin_styles.css b/src/atlasViewer/pluginUnit/plugin_styles.css similarity index 100% rename from src/res/css/plugin_styles.css rename to src/atlasViewer/pluginUnit/plugin_styles.css diff --git a/src/atlasViewer/widgetUnit/widget.module.ts b/src/atlasViewer/widgetUnit/widget.module.ts new file mode 100644 index 0000000000000000000000000000000000000000..ff312e2f72b07d0cfa7ecd6473db542bef7763e4 --- /dev/null +++ b/src/atlasViewer/widgetUnit/widget.module.ts @@ -0,0 +1,28 @@ +import { NgModule } from "@angular/core"; +import { WidgetUnit } from "./widgetUnit.component"; +import { WidgetServices } from "./widgetService.service"; +import { AngularMaterialModule } from "src/ui/sharedModules/angularMaterial.module"; +import { CommonModule } from "@angular/common"; +import { ComponentsModule } from "src/components/components.module"; + +@NgModule({ + imports:[ + AngularMaterialModule, + CommonModule, + ComponentsModule, + ], + declarations: [ + WidgetUnit + ], + entryComponents: [ + WidgetUnit + ], + providers: [ + WidgetServices + ], + exports: [ + WidgetUnit + ] +}) + +export class WidgetModule{} \ No newline at end of file diff --git a/src/atlasViewer/widgetUnit/widgetService.service.ts b/src/atlasViewer/widgetUnit/widgetService.service.ts index 6a9ff82d54ebc76424bed0534190e62137d39d6c..9214e722159589e5a3ecd4371837b313a4776e96 100644 --- a/src/atlasViewer/widgetUnit/widgetService.service.ts +++ b/src/atlasViewer/widgetUnit/widgetService.service.ts @@ -1,6 +1,6 @@ import { ComponentFactory, ComponentFactoryResolver, ComponentRef, Injectable, Injector, OnDestroy, ViewContainerRef } from "@angular/core"; import { BehaviorSubject, Subscription } from "rxjs"; -import { LoggingService } from "src/services/logging.service"; +import { LoggingService } from "src/logging"; import { AtlasViewerConstantsServices } from "../atlasViewer.constantService.service"; import { WidgetUnit } from "./widgetUnit.component"; diff --git a/src/logging/index.ts b/src/logging/index.ts new file mode 100644 index 0000000000000000000000000000000000000000..991cc7ba5496b778cc58b0c816e6bbdf46627e03 --- /dev/null +++ b/src/logging/index.ts @@ -0,0 +1,2 @@ +export { LoggingModule } from './logging.module' +export { LoggingService } from './logging.service' \ No newline at end of file diff --git a/src/logging/logging.module.ts b/src/logging/logging.module.ts new file mode 100644 index 0000000000000000000000000000000000000000..b6725602fc209543040e17663c2804154bcf4e32 --- /dev/null +++ b/src/logging/logging.module.ts @@ -0,0 +1,10 @@ +import { NgModule } from "@angular/core"; +import { LoggingService } from "./logging.service"; + +@NgModule({ + providers:[ + LoggingService + ] +}) + +export class LoggingModule{} \ No newline at end of file diff --git a/src/services/logging.service.ts b/src/logging/logging.service.ts similarity index 100% rename from src/services/logging.service.ts rename to src/logging/logging.service.ts diff --git a/src/main.module.ts b/src/main.module.ts index d6900a592448a1150595b7c840dc5ee139b493c9..3b911d31fd2d5a0b27f52f69aed3d589c6288bd2 100644 --- a/src/main.module.ts +++ b/src/main.module.ts @@ -12,16 +12,13 @@ import { UIModule } from "./ui/ui.module"; import { GetNamePipe } from "./util/pipes/getName.pipe"; import { GetNamesPipe } from "./util/pipes/getNames.pipe"; -import {HttpClientModule} from "@angular/common/http"; +import { HttpClientModule } from "@angular/common/http"; import { EffectsModule } from "@ngrx/effects"; -import {CaptureClickListenerDirective} from "src/util/directives/captureClickListener.directive"; +import { CaptureClickListenerDirective } from "src/util/directives/captureClickListener.directive"; import { AtlasViewerAPIServices } from "./atlasViewer/atlasViewer.apiService.service"; import { AtlasWorkerService } from "./atlasViewer/atlasViewer.workerService.service"; import { ModalUnit } from "./atlasViewer/modalUnit/modalUnit.component"; import { TransformOnhoverSegmentPipe } from "./atlasViewer/onhoverSegment.pipe"; -import { PluginUnit } from "./atlasViewer/pluginUnit/pluginUnit.component"; -import { WidgetServices } from './atlasViewer/widgetUnit/widgetService.service' -import { WidgetUnit } from "./atlasViewer/widgetUnit/widgetUnit.component"; import { ConfirmDialogComponent } from "./components/confirmDialog/confirmDialog.component"; import { DialogComponent } from "./components/dialog/dialog.component"; import { AuthService } from "./services/auth.service"; @@ -39,21 +36,22 @@ import { DockedContainerDirective } from "./util/directives/dockedContainer.dire import { DragDropDirective } from "./util/directives/dragDrop.directive"; import { FloatingContainerDirective } from "./util/directives/floatingContainer.directive"; import { FloatingMouseContextualContainerDirective } from "./util/directives/floatingMouseContextualContainer.directive"; -import { PluginFactoryDirective } from "./util/directives/pluginFactory.directive"; import { NewViewerDisctinctViewToLayer } from "./util/pipes/newViewerDistinctViewToLayer.pipe"; import { UtilModule } from "./util/util.module"; -import 'hammerjs' +import { UiStateUseEffect } from "src/services/state/uiState.store"; +import { AtlasViewerHistoryUseEffect } from "./atlasViewer/atlasViewer.history.service"; +import { PluginServiceUseEffect } from './services/effect/pluginUseEffect'; +import { TemplateCoordinatesTransformation } from "src/services/templateCoordinatesTransformation.service"; +import { NewTemplateUseEffect } from './services/effect/newTemplate.effect'; +import { WidgetModule } from './atlasViewer/widgetUnit/widget.module'; +import { PluginModule } from './atlasViewer/pluginUnit/plugin.module'; +import { LoggingModule } from './logging/logging.module'; +import 'hammerjs' import 'src/res/css/extra_styles.css' import 'src/res/css/version.css' -import {UiStateUseEffect} from "src/services/state/uiState.store"; import 'src/theme.scss' -import { AtlasViewerHistoryUseEffect } from "./atlasViewer/atlasViewer.history.service"; -import { PluginServiceUseEffect } from './services/effect/pluginUseEffect'; -import { LoggingService } from "./services/logging.service"; -import {TemplateCoordinatesTransformation} from "src/services/templateCoordinatesTransformation.service"; -import { NewTemplateUseEffect } from './services/effect/newTemplate.effect'; @NgModule({ imports : [ @@ -66,6 +64,9 @@ import { NewTemplateUseEffect } from './services/effect/newTemplate.effect'; DatabrowserModule, AngularMaterialModule, UtilModule, + WidgetModule, + PluginModule, + LoggingModule, EffectsModule.forRoot([ DataBrowserUseEffect, @@ -92,14 +93,11 @@ import { NewTemplateUseEffect } from './services/effect/newTemplate.effect'; ], declarations : [ AtlasViewer, - WidgetUnit, ModalUnit, - PluginUnit, /* directives */ DockedContainerDirective, FloatingContainerDirective, - PluginFactoryDirective, FloatingMouseContextualContainerDirective, DragDropDirective, CaptureClickListenerDirective, @@ -111,21 +109,17 @@ import { NewTemplateUseEffect } from './services/effect/newTemplate.effect'; NewViewerDisctinctViewToLayer, ], entryComponents : [ - WidgetUnit, ModalUnit, - PluginUnit, DialogComponent, ConfirmDialogComponent, ], providers : [ - WidgetServices, AtlasViewerAPIServices, AtlasWorkerService, AuthService, LocalFileService, DialogService, UIService, - LoggingService, TemplateCoordinatesTransformation, /** diff --git a/src/services/effect/effect.ts b/src/services/effect/effect.ts index 21d0fa53fed58f5dcb7a3a6dfd5131dd5285d73d..500e42d8c03b79ca8328cb8b020a92360a6a074c 100644 --- a/src/services/effect/effect.ts +++ b/src/services/effect/effect.ts @@ -3,9 +3,9 @@ import { Actions, Effect, ofType } from "@ngrx/effects"; import { select, Store } from "@ngrx/store"; import { merge, Observable, Subscription } from "rxjs"; import { filter, map, shareReplay, switchMap, take, withLatestFrom, mapTo } from "rxjs/operators"; -import { LoggingService } from "../logging.service"; -import { ADD_TO_REGIONS_SELECTION_WITH_IDS, DESELECT_REGIONS, NEWVIEWER, CHANGE_NAVIGATION, SELECT_PARCELLATION, SELECT_REGIONS, SELECT_REGIONS_WITH_ID, SELECT_LANDMARKS } from "../state/viewerState.store"; -import { generateLabelIndexId, getNgIdLabelIndexFromId, IavRootStoreInterface, recursiveFindRegionWithLabelIndexId, getMultiNgIdsRegionsLabelIndexMap, GENERAL_ACTION_TYPES } from '../stateStore.service'; +import { LoggingService } from "src/logging"; +import { ADD_TO_REGIONS_SELECTION_WITH_IDS, DESELECT_REGIONS, NEWVIEWER, SELECT_PARCELLATION, SELECT_REGIONS, SELECT_REGIONS_WITH_ID, SELECT_LANDMARKS } from "../state/viewerState.store"; +import { generateLabelIndexId, getNgIdLabelIndexFromId, IavRootStoreInterface, recursiveFindRegionWithLabelIndexId } from '../stateStore.service'; @Injectable({ providedIn: 'root', diff --git a/src/services/effect/pluginUseEffect.spec.ts b/src/services/effect/pluginUseEffect.spec.ts index 0775ef163b96455b1d585fb5b5f0be46b9058d32..2bd9efda5c25597914f82dcaf0acbd38fa18f288 100644 --- a/src/services/effect/pluginUseEffect.spec.ts +++ b/src/services/effect/pluginUseEffect.spec.ts @@ -9,7 +9,7 @@ import { defaultRootState } from "../stateStore.service"; import { PLUGINSTORE_CONSTANTS, PLUGINSTORE_ACTION_TYPES } from '../state/pluginState.store' import { Injectable } from "@angular/core"; import { getRandomHex } from 'common/util' -import { PluginServices } from "src/atlasViewer/atlasViewer.pluginService.service"; +import { PluginServices } from "src/atlasViewer/pluginUnit"; import { AngularMaterialModule } from "src/ui/sharedModules/angularMaterial.module"; import { hot } from "jasmine-marbles"; diff --git a/src/services/effect/pluginUseEffect.ts b/src/services/effect/pluginUseEffect.ts index 4b65c4d3807d0d0a7df59d7c7a70bbcab8dd605a..5a28ace68c9c20e5867d70ebff2ad8e46e983e6e 100644 --- a/src/services/effect/pluginUseEffect.ts +++ b/src/services/effect/pluginUseEffect.ts @@ -4,9 +4,9 @@ import { select, Store } from "@ngrx/store" import { Observable, forkJoin } from "rxjs" import { filter, map, startWith, switchMap } from "rxjs/operators" import { AtlasViewerConstantsServices } from "src/atlasViewer/atlasViewer.constantService.service" -import { PluginServices } from "src/atlasViewer/atlasViewer.pluginService.service" +import { PluginServices } from "src/atlasViewer/pluginUnit" import { PLUGINSTORE_ACTION_TYPES, PLUGINSTORE_CONSTANTS } from 'src/services/state/pluginState.store' -import { LoggingService } from "../logging.service" +import { LoggingService } from "src/logging" import { IavRootStoreInterface } from "../stateStore.service" import { HttpClient } from "@angular/common/http" diff --git a/src/services/state/viewerState.store.ts b/src/services/state/viewerState.store.ts index 2c4089380ff0841dc8f82361f5ce6e53e3040eda..32aa245885a85a13db77008022d6e11834896c98 100644 --- a/src/services/state/viewerState.store.ts +++ b/src/services/state/viewerState.store.ts @@ -6,7 +6,7 @@ import { distinctUntilChanged, filter, map, shareReplay, startWith, withLatestFr import { IUserLandmark } from 'src/atlasViewer/atlasViewer.apiService.service'; import { INgLayerInterface } from 'src/atlasViewer/atlasViewer.component'; import { getViewer } from 'src/util/fn'; -import { LoggingService } from '../logging.service'; +import { LoggingService } from 'src/logging'; import { generateLabelIndexId, IavRootStoreInterface, viewerState } from '../stateStore.service'; import { GENERAL_ACTION_TYPES } from '../stateStore.service' import { MOUSEOVER_USER_LANDMARK, CLOSE_SIDE_PANEL } from './uiState.store'; diff --git a/src/ui/databrowserModule/databrowser.service.ts b/src/ui/databrowserModule/databrowser.service.ts index de480e44d03abed477e4df8a4699fd2de6f9a34a..2bb4c828b61241c778a4014834f2390766afc428 100644 --- a/src/ui/databrowserModule/databrowser.service.ts +++ b/src/ui/databrowserModule/databrowser.service.ts @@ -6,7 +6,7 @@ import { catchError, debounceTime, distinctUntilChanged, filter, map, shareRepla import { AtlasViewerConstantsServices } from "src/atlasViewer/atlasViewer.constantService.service"; import { AtlasWorkerService } from "src/atlasViewer/atlasViewer.workerService.service"; import { WidgetUnit } from "src/atlasViewer/widgetUnit/widgetUnit.component"; -import { LoggingService } from "src/services/logging.service"; +import { LoggingService } from "src/logging"; import { DATASETS_ACTIONS_TYPES } from "src/services/state/dataStore.store"; import { SHOW_KG_TOS } from "src/services/state/uiState.store"; import { FETCHED_DATAENTRIES, FETCHED_SPATIAL_DATA, IavRootStoreInterface, IDataEntry, safeFilter } from "src/services/stateStore.service"; diff --git a/src/ui/databrowserModule/databrowser.useEffect.ts b/src/ui/databrowserModule/databrowser.useEffect.ts index 00e9e3a347a1ce9398659e3f7bda214f9c873586..add27a5bf5e2947a0ebc7bb25764cd7d20bcd6e8 100644 --- a/src/ui/databrowserModule/databrowser.useEffect.ts +++ b/src/ui/databrowserModule/databrowser.useEffect.ts @@ -3,7 +3,7 @@ import { Actions, Effect, ofType } from "@ngrx/effects"; import { select, Store } from "@ngrx/store"; import { from, merge, Observable, of, Subscription, forkJoin, combineLatest } from "rxjs"; import { filter, map, scan, switchMap, withLatestFrom, mapTo, shareReplay, startWith, distinctUntilChanged } from "rxjs/operators"; -import { LoggingService } from "src/services/logging.service"; +import { LoggingService } from "src/logging"; import { DATASETS_ACTIONS_TYPES, IDataEntry, ViewerPreviewFile } from "src/services/state/dataStore.store"; import { IavRootStoreInterface, ADD_NG_LAYER, CHANGE_NAVIGATION } from "src/services/stateStore.service"; import { LOCAL_STORAGE_CONST, DS_PREVIEW_URL } from "src/util/constants"; diff --git a/src/ui/databrowserModule/databrowser/databrowser.component.ts b/src/ui/databrowserModule/databrowser/databrowser.component.ts index 2dd92a75a3889871bf8d00f6ec71b30f8011c630..39cfcff1dcc554485cb3d8ee267af93de7ac69f1 100644 --- a/src/ui/databrowserModule/databrowser/databrowser.component.ts +++ b/src/ui/databrowserModule/databrowser/databrowser.component.ts @@ -1,6 +1,6 @@ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, Input, OnChanges, OnDestroy, OnInit, Output, ViewChild } from "@angular/core"; import { merge, Observable, Subscription } from "rxjs"; -import { LoggingService } from "src/services/logging.service"; +import { LoggingService } from "src/logging"; import { IDataEntry } from "src/services/stateStore.service"; import { CountedDataModality, DatabrowserService } from "../databrowser.service"; import { ModalityPicker } from "../modalityPicker/modalityPicker.component"; diff --git a/src/ui/layerbrowser/layerbrowser.component.ts b/src/ui/layerbrowser/layerbrowser.component.ts index e4058dbe89db9ad207a30ff0941df5f6ce80af92..cc14ee88c2db83da83bb2e9daa5990a50fd77abc 100644 --- a/src/ui/layerbrowser/layerbrowser.component.ts +++ b/src/ui/layerbrowser/layerbrowser.component.ts @@ -3,12 +3,12 @@ import { select, Store } from "@ngrx/store"; import { combineLatest, Observable, Subscription } from "rxjs"; import { debounceTime, distinctUntilChanged, filter, map, shareReplay } from "rxjs/operators"; import { AtlasViewerConstantsServices } from "src/atlasViewer/atlasViewer.constantService.service"; -import { LoggingService } from "src/services/logging.service"; +import { LoggingService } from "src/logging"; import { NG_VIEWER_ACTION_TYPES } from "src/services/state/ngViewerState.store"; import { getViewer } from "src/util/fn"; import { INgLayerInterface } from "../../atlasViewer/atlasViewer.component"; import { FORCE_SHOW_SEGMENT, getNgIds, isDefined, REMOVE_NG_LAYER, safeFilter, ViewerStateInterface } from "../../services/stateStore.service"; -import {MatSliderChange} from "@angular/material/slider"; +import { MatSliderChange } from "@angular/material/slider"; @Component({ selector : 'layer-browser', diff --git a/src/ui/nehubaContainer/nehubaContainer.component.ts b/src/ui/nehubaContainer/nehubaContainer.component.ts index 9dd4431b64b488c3cae0ce9725de120e050d2d12..c48e166f73673beee11964086742e44ac0330b19 100644 --- a/src/ui/nehubaContainer/nehubaContainer.component.ts +++ b/src/ui/nehubaContainer/nehubaContainer.component.ts @@ -21,17 +21,15 @@ import { throttleTime, withLatestFrom } from "rxjs/operators"; -import { LoggingService } from "src/services/logging.service"; +import { LoggingService } from "src/logging"; import { FOUR_PANEL, H_ONE_THREE, NEHUBA_READY, NG_VIEWER_ACTION_TYPES, SINGLE_PANEL, V_ONE_THREE } from "src/services/state/ngViewerState.store"; -import { MOUSE_OVER_SEGMENTS } from "src/services/state/uiState.store"; -import { NEHUBA_LAYER_CHANGED, SELECT_REGIONS_WITH_ID, VIEWERSTATE_ACTION_TYPES } from "src/services/state/viewerState.store"; -import { ADD_NG_LAYER, CHANGE_NAVIGATION, generateLabelIndexId, getMultiNgIdsRegionsLabelIndexMap, getNgIds, ILandmark, IOtherLandmarkGeometry, IPlaneLandmarkGeometry, IPointLandmarkGeometry, isDefined, MOUSE_OVER_LANDMARK, NgViewerStateInterface, REMOVE_NG_LAYER, safeFilter, ViewerStateInterface } from "src/services/stateStore.service"; +import { SELECT_REGIONS_WITH_ID, VIEWERSTATE_ACTION_TYPES } from "src/services/state/viewerState.store"; +import { ADD_NG_LAYER, generateLabelIndexId, getMultiNgIdsRegionsLabelIndexMap, getNgIds, ILandmark, IOtherLandmarkGeometry, IPlaneLandmarkGeometry, IPointLandmarkGeometry, isDefined, MOUSE_OVER_LANDMARK, NgViewerStateInterface, REMOVE_NG_LAYER, safeFilter, ViewerStateInterface } from "src/services/stateStore.service"; import { getExportNehuba, isSame } from "src/util/fn"; import { AtlasViewerAPIServices, IUserLandmark } from "../../atlasViewer/atlasViewer.apiService.service"; import { AtlasViewerConstantsServices } from "../../atlasViewer/atlasViewer.constantService.service"; -import { timedValues } from "../../util/generator"; import { computeDistance, NehubaViewerUnit } from "./nehubaViewer/nehubaViewer.component"; -import { getFourPanel, getHorizontalOneThree, getSinglePanel, getVerticalOneThree, getNavigationStateFromConfig, calculateSliceZoomFactor } from "./util"; +import { getFourPanel, getHorizontalOneThree, getSinglePanel, getVerticalOneThree, calculateSliceZoomFactor } from "./util"; import { NehubaViewerContainerDirective } from "./nehubaViewerInterface/nehubaViewerInterface.directive"; const isFirstRow = (cell: HTMLElement) => { diff --git a/src/ui/nehubaContainer/nehubaViewer/nehubaViewer.component.ts b/src/ui/nehubaContainer/nehubaViewer/nehubaViewer.component.ts index f35f83d03f7be8a942f6a33268a81e43f6a63e54..f86c403ce72df183cc704a283c059967bee5dca7 100644 --- a/src/ui/nehubaContainer/nehubaViewer/nehubaViewer.component.ts +++ b/src/ui/nehubaContainer/nehubaViewer/nehubaViewer.component.ts @@ -8,7 +8,7 @@ import { StateInterface as ViewerConfiguration } from "src/services/state/viewer import { getNgIdLabelIndexFromId } from "src/services/stateStore.service"; import { takeOnePipe } from "../nehubaContainer.component"; -import { LoggingService } from "src/services/logging.service"; +import { LoggingService } from "src/logging"; import { getExportNehuba, getViewer, setNehubaViewer } from "src/util/fn"; import 'third_party/export_nehuba/chunk_worker.bundle.js' import 'third_party/export_nehuba/main.bundle.js' diff --git a/src/ui/nehubaContainer/statusCard/statusCard.component.ts b/src/ui/nehubaContainer/statusCard/statusCard.component.ts index 6bd0f103a75687c934b7c173516e96d13bde0eb5..5dd2b1116da0cd8e70ff95add9b1db9cbdf82f74 100644 --- a/src/ui/nehubaContainer/statusCard/statusCard.component.ts +++ b/src/ui/nehubaContainer/statusCard/statusCard.component.ts @@ -1,10 +1,10 @@ -import {Component, Input, OnInit} from "@angular/core"; -import {select, Store} from "@ngrx/store"; -import { LoggingService } from "src/services/logging.service"; -import {CHANGE_NAVIGATION, IavRootStoreInterface, ViewerStateInterface} from "src/services/stateStore.service"; +import { Component, Input, OnInit } from "@angular/core"; +import { select, Store } from "@ngrx/store"; +import { LoggingService } from "src/logging"; +import { CHANGE_NAVIGATION, IavRootStoreInterface, ViewerStateInterface } from "src/services/stateStore.service"; import { NehubaViewerUnit } from "../nehubaViewer/nehubaViewer.component"; -import {Observable, Subscription} from "rxjs"; -import {distinctUntilChanged, shareReplay} from "rxjs/operators"; +import { Observable, Subscription } from "rxjs"; +import { distinctUntilChanged, shareReplay } from "rxjs/operators"; @Component({ selector : 'ui-status-card', diff --git a/src/ui/pluginBanner/pluginBanner.component.ts b/src/ui/pluginBanner/pluginBanner.component.ts index 930cec72eb9055a802842143dff7aa4fe2de1857..20b225c21ad0975620968c3d42b51b6c6f650e5a 100644 --- a/src/ui/pluginBanner/pluginBanner.component.ts +++ b/src/ui/pluginBanner/pluginBanner.component.ts @@ -1,5 +1,5 @@ import { Component } from "@angular/core"; -import { IPluginManifest, PluginServices } from "src/atlasViewer/atlasViewer.pluginService.service"; +import { IPluginManifest, PluginServices } from "src/atlasViewer/pluginUnit"; @Component({ selector : 'plugin-banner', diff --git a/src/ui/viewerStateController/regionSearch/regionSearch.component.ts b/src/ui/viewerStateController/regionSearch/regionSearch.component.ts index 01cdf6d3745179591209349a536e84073d79944c..f21d4f11f399b0f79ba28f2a5be9107981c392aa 100644 --- a/src/ui/viewerStateController/regionSearch/regionSearch.component.ts +++ b/src/ui/viewerStateController/regionSearch/regionSearch.component.ts @@ -8,9 +8,9 @@ import { VIEWER_STATE_ACTION_TYPES } from "src/services/effect/effect"; import { ADD_TO_REGIONS_SELECTION_WITH_IDS, CHANGE_NAVIGATION, SELECT_REGIONS } from "src/services/state/viewerState.store"; import { generateLabelIndexId, getMultiNgIdsRegionsLabelIndexMap, IavRootStoreInterface } from "src/services/stateStore.service"; import { VIEWERSTATE_CONTROLLER_ACTION_TYPES } from "../viewerState.base"; -import { LoggingService } from "src/services/logging.service"; -import {MatDialog} from "@angular/material/dialog"; -import {MatAutocompleteSelectedEvent} from "@angular/material/autocomplete"; +import { LoggingService } from "src/logging"; +import { MatDialog } from "@angular/material/dialog"; +import { MatAutocompleteSelectedEvent } from "@angular/material/autocomplete"; const filterRegionBasedOnText = searchTerm => region => region.name.toLowerCase().includes(searchTerm.toLowerCase()) || (region.relatedAreas && region.relatedAreas.some(relatedArea => relatedArea.name && relatedArea.name.toLowerCase().includes(searchTerm.toLowerCase()))) diff --git a/src/ui/viewerStateController/viewerState.useEffect.spec.ts b/src/ui/viewerStateController/viewerState.useEffect.spec.ts index 8fc55ccd958cf7bcc5414662b822cf971022af17..42e006f8ca438a247ce8edf9f50678494bcd3774 100644 --- a/src/ui/viewerStateController/viewerState.useEffect.spec.ts +++ b/src/ui/viewerStateController/viewerState.useEffect.spec.ts @@ -1,6 +1,6 @@ import { ViewerStateControllerUseEffect } from './viewerState.useEffect' import { Observable, of } from 'rxjs' -import { TestBed } from '@angular/core/testing' +import { TestBed, async } from '@angular/core/testing' import { provideMockActions } from '@ngrx/effects/testing' import { provideMockStore } from '@ngrx/store/testing' import { defaultRootState, NEWVIEWER } from 'src/services/stateStore.service' @@ -10,6 +10,8 @@ import { hot } from 'jasmine-marbles' import { VIEWERSTATE_CONTROLLER_ACTION_TYPES } from './viewerState.base' import { AngularMaterialModule } from '../sharedModules/angularMaterial.module' import { HttpClientModule } from '@angular/common/http' +import { WidgetModule } from 'src/atlasViewer/widgetUnit/widget.module' +import { PluginModule } from 'src/atlasViewer/pluginUnit/plugin.module' const bigbrainJson = require('!json-loader!src/res/ext/bigbrain.json') const colinJson = require('!json-loader!src/res/ext/colin.json') @@ -49,7 +51,7 @@ describe('viewerState.useEffect.ts', () => { describe('ViewerStateControllerUseEffect', () => { let actions$: Observable<any> let spy: any - beforeEach(() => { + beforeEach(async(() => { const mock = new MockCoordXformService() spy = spyOn(mock, 'getPointCoordinatesForTemplate').and.callThrough() @@ -67,7 +69,9 @@ describe('viewerState.useEffect.ts', () => { TestBed.configureTestingModule({ imports: [ AngularMaterialModule, - HttpClientModule + HttpClientModule, + WidgetModule, + PluginModule, ], providers: [ ViewerStateControllerUseEffect, @@ -78,8 +82,8 @@ describe('viewerState.useEffect.ts', () => { useValue: mock } ] - }) - }) + }).compileComponents() + })) describe('selectTemplateWithName$', () => { diff --git a/src/util/directives/mouseOver.directive.ts b/src/util/directives/mouseOver.directive.ts index 56402863cc100ac51df759bf4a1529752de5d110..c3eccd363f7add28ae9630b12c8231466d3c412f 100644 --- a/src/util/directives/mouseOver.directive.ts +++ b/src/util/directives/mouseOver.directive.ts @@ -4,7 +4,7 @@ import { select, Store } from "@ngrx/store"; import { combineLatest, merge, Observable } from "rxjs"; import { distinctUntilChanged, filter, map, scan, shareReplay, startWith, withLatestFrom } from "rxjs/operators"; import { TransformOnhoverSegmentPipe } from "src/atlasViewer/onhoverSegment.pipe"; -import { LoggingService } from "src/services/logging.service"; +import { LoggingService } from "src/logging"; import { getNgIdLabelIndexFromId, IavRootStoreInterface } from "src/services/stateStore.service"; /** diff --git a/src/util/util.module.ts b/src/util/util.module.ts index 5594549241c4bf0c48f0c95ad07813d6875717af..e8af338f0ab9d60806b3f190d4854152cd91499c 100644 --- a/src/util/util.module.ts +++ b/src/util/util.module.ts @@ -33,6 +33,8 @@ import { SafeResourcePipe } from "./pipes/safeResource.pipe"; IncludesPipe, SafeResourcePipe, ], + providers: [ + ] }) export class UtilModule {