From 1e148fda006859c10d40d42e316b356cd342aa93 Mon Sep 17 00:00:00 2001
From: AndiMajore <andi.majore@googlemail.com>
Date: Thu, 24 Nov 2022 21:01:06 +0100
Subject: [PATCH] fixed automatic adjacent nodes loading issue; fixed
 reactiveness of extendnetworkmenu param

---
 .../download-button-inverse.component.html                  | 2 +-
 .../network-menu-left/network-menu-left.component.html      | 6 +++---
 .../download-button/download-button.component.html          | 2 +-
 .../network/network-menu/network-menu.component.html        | 6 +++---
 src/app/components/network/network.component.ts             | 6 ++----
 src/app/pages/explorer-page/explorer-page.component.ts      | 1 +
 src/app/services/network-handler/network-handler.service.ts | 4 ++--
 src/index.html                                              | 1 +
 8 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/src/app/components/network/network-menu-left/download-button-inverse/download-button-inverse.component.html b/src/app/components/network/network-menu-left/download-button-inverse/download-button-inverse.component.html
index b6e85d17..aab02583 100644
--- a/src/app/components/network/network-menu-left/download-button-inverse/download-button-inverse.component.html
+++ b/src/app/components/network/network-menu-left/download-button-inverse/download-button-inverse.component.html
@@ -20,7 +20,7 @@
     id="{{ 'controls-' + buttonId }}"
     role="menu"
     [ngClass]="{
-      'inner-dropdown': !networkHandler.activeNetwork.networkSidebarOpen
+      'inner-dropdown': !networkHandler.networkSidebarOpen
     }"
   >
     <div class="dropdown-content">
diff --git a/src/app/components/network/network-menu-left/network-menu-left.component.html b/src/app/components/network/network-menu-left/network-menu-left.component.html
index c44c0d93..7e47a55e 100644
--- a/src/app/components/network/network-menu-left/network-menu-left.component.html
+++ b/src/app/components/network/network-menu-left/network-menu-left.component.html
@@ -1,7 +1,7 @@
 <div
   class="network-footer-toolbar drgstn-box-shadow"
   [ngClass]="
-    networkHandler.activeNetwork.networkSidebarOpen ? 'opened' : 'closed'
+    networkHandler.networkSidebarOpen ? 'opened' : 'closed'
   "
   [class.no-header]="networkHandler.activeNetwork.networkType === 'analysis'"
   [class.small-sidebar]="drugstoneConfig.smallStyle"
@@ -9,7 +9,7 @@
   <a
     (click)="networkHandler.activeNetwork.toggleNetworkSidebar()"
     class="button is-small is-primary network-toolbar-toggle"
-    [ngClass]="{ 'rotated': !networkHandler.activeNetwork.networkSidebarOpen }"
+    [ngClass]="{ 'rotated': !networkHandler.networkSidebarOpen }"
   >
     <app-fa-solid-icon
       icon="angle-left"
@@ -88,7 +88,7 @@
           class="dropdown network-footer-toolbar-element"
           [class.is-active]="networkHandler.activeNetwork.expressionExpanded"
           [ngClass]="{
-            'inner-dropdown': !networkHandler.activeNetwork.networkSidebarOpen
+            'inner-dropdown': !networkHandler.networkSidebarOpen
           }"
         >
           <div class="dropdown-trigger">
diff --git a/src/app/components/network/network-menu/download-button/download-button.component.html b/src/app/components/network/network-menu/download-button/download-button.component.html
index ea5e9151..909fdd69 100644
--- a/src/app/components/network/network-menu/download-button/download-button.component.html
+++ b/src/app/components/network/network-menu/download-button/download-button.component.html
@@ -20,7 +20,7 @@
     id="{{ 'controls-' + buttonId }}"
     role="menu"
     [ngClass]="{
-      'inner-dropdown': !networkHandler.activeNetwork.networkSidebarOpen
+      'inner-dropdown': !networkHandler.networkSidebarOpen
     }"
   >
     <div class="dropdown-content">
diff --git a/src/app/components/network/network-menu/network-menu.component.html b/src/app/components/network/network-menu/network-menu.component.html
index 46340a8c..f0ed1fa9 100644
--- a/src/app/components/network/network-menu/network-menu.component.html
+++ b/src/app/components/network/network-menu/network-menu.component.html
@@ -1,7 +1,7 @@
 <div
   class="network-footer-toolbar drgstn-box-shadow"
   [ngClass]="
-    networkHandler.activeNetwork.networkSidebarOpen ? 'opened' : 'closed'
+    networkHandler.networkSidebarOpen ? 'opened' : 'closed'
   "
   [class.no-header]="networkHandler.activeNetwork.networkType === 'analysis'"
   [class.small-sidebar]="drugstoneConfig.smallStyle"
@@ -9,7 +9,7 @@
   <a
     (click)="networkHandler.activeNetwork.toggleNetworkSidebar()"
     class="button is-small is-primary network-toolbar-toggle"
-    [ngClass]="{ 'rotated': networkHandler.activeNetwork.networkSidebarOpen }"
+    [ngClass]="{ 'rotated': networkHandler.networkSidebarOpen }"
   >
     <app-fa-solid-icon
       icon="angle-left"
@@ -85,7 +85,7 @@
           class="dropdown network-footer-toolbar-element"
           [class.is-active]="networkHandler.activeNetwork.expressionExpanded"
           [ngClass]="{
-            'inner-dropdown': !networkHandler.activeNetwork.networkSidebarOpen
+            'inner-dropdown': !networkHandler.networkSidebarOpen
           }"
         >
           <div class="dropdown-trigger">
diff --git a/src/app/components/network/network.component.ts b/src/app/components/network/network.component.ts
index 47bad6e2..18bebdfa 100644
--- a/src/app/components/network/network.component.ts
+++ b/src/app/components/network/network.component.ts
@@ -64,7 +64,7 @@ export class NetworkComponent implements OnInit {
   public selectedTissue: Tissue | null = null;
 
   // change this to true to have sidebar open per default
-  public networkSidebarOpen = false;
+  // public networkSidebarOpen = false;
 
   public queryItems: Wrapper[] = [];
 
@@ -84,7 +84,6 @@ export class NetworkComponent implements OnInit {
   public loading = false;
 
   constructor(
-    public configService: DrugstoneConfigService,
     public legendService: LegendService,
     public networkHandler: NetworkHandlerService,
     public analysis: AnalysisService,
@@ -96,7 +95,6 @@ export class NetworkComponent implements OnInit {
 
   ngOnInit(): void {
     this.networkHandler.networks[this.networkType] = this;
-    this.networkSidebarOpen = this.configService.config.expandNetworkMenu || false;
   }
 
   setLoading(bool: boolean): void {
@@ -363,7 +361,7 @@ export class NetworkComponent implements OnInit {
   }
 
   toggleNetworkSidebar() {
-    this.networkSidebarOpen = !this.networkSidebarOpen;
+    this.networkHandler.networkSidebarOpen = !this.networkHandler.networkSidebarOpen;
   }
 
   public selectTissue(tissue: Tissue | null) {
diff --git a/src/app/pages/explorer-page/explorer-page.component.ts b/src/app/pages/explorer-page/explorer-page.component.ts
index 81f61bcd..b135116c 100644
--- a/src/app/pages/explorer-page/explorer-page.component.ts
+++ b/src/app/pages/explorer-page/explorer-page.component.ts
@@ -210,6 +210,7 @@ export class ExplorerPageComponent implements OnInit, AfterViewInit {
         this.networkHandler.activeNetwork.getInteractions(configObj[key]);
       }
     }
+    this.networkHandler.networkSidebarOpen = this.drugstoneConfig.config.expandNetworkMenu;
     // trigger updates on config e.g. in legend
     if (this.drugstoneConfig.analysisConfig) {
       this.drugstoneConfig.analysisConfig = {...this.drugstoneConfig.analysisConfig};
diff --git a/src/app/services/network-handler/network-handler.service.ts b/src/app/services/network-handler/network-handler.service.ts
index cca5b2ed..e0f86236 100644
--- a/src/app/services/network-handler/network-handler.service.ts
+++ b/src/app/services/network-handler/network-handler.service.ts
@@ -18,9 +18,9 @@ export class NetworkHandlerService {
   }
 
   private change = new Subject<any>();
-
+  public networkSidebarOpen = this.drugstoneConfig.config.expandNetworkMenu || false;
   public networks: { NetworkType: NetworkComponent } | {} = {};
-  public activeNetwork: NetworkComponent = new NetworkComponent(this.drugstoneConfig, this.legendService, this.networkHandler, this.analysis, this.drugstoneConfig, this.netex, this.omnipath, this.loadingScreen);
+  public activeNetwork: NetworkComponent = new NetworkComponent(this.legendService, this.networkHandler, this.analysis, this.drugstoneConfig, this.netex, this.omnipath, this.loadingScreen);
 
   public setActiveNetwork(network: NetworkType) {
     this.triggerChange();
diff --git a/src/index.html b/src/index.html
index ccb3cefc..2929ff9f 100644
--- a/src/index.html
+++ b/src/index.html
@@ -26,6 +26,7 @@ Analysis<br>
 Screenshot button<br>
 <input type="checkbox" onclick=changeConfigStr('{"showNetworkMenuButtonExportGraphml":'+this.checked+'}') checked/> Show
 Export As Graphml Button<br>
+<input type="checkbox" onclick=changeConfigStr('{"expandNetworkMenu":'+this.checked+'}') checked/> Expand network menu<br>
 
 
 <input id="new_color" type="text"/>
-- 
GitLab