From 5f0cad7cb750cbc0d65ccef10a4f61c729c76bc9 Mon Sep 17 00:00:00 2001
From: Xiao Gui <xgui3783@gmail.com>
Date: Wed, 9 Jun 2021 21:15:18 +0200
Subject: [PATCH] WIP bugfix ebrains features

---
 .../kgRegionalFeature/kgRegList/kgRegList.component.ts      | 4 ++--
 .../kgRegionalFeature/kgRegList/kgReglist.directive.ts      | 4 ++--
 .../kgRegSummary/kgRegSummary.component.ts                  | 4 ++--
 .../regionalFeatures/bsFeatures/kgRegionalFeature/type.ts   | 2 ++
 src/atlasComponents/regionalFeatures/bsFeatures/type.ts     | 6 +++---
 5 files changed, 11 insertions(+), 9 deletions(-)

diff --git a/src/atlasComponents/regionalFeatures/bsFeatures/kgRegionalFeature/kgRegList/kgRegList.component.ts b/src/atlasComponents/regionalFeatures/bsFeatures/kgRegionalFeature/kgRegList/kgRegList.component.ts
index dff9eda00..2623472ab 100644
--- a/src/atlasComponents/regionalFeatures/bsFeatures/kgRegionalFeature/kgRegList/kgRegList.component.ts
+++ b/src/atlasComponents/regionalFeatures/bsFeatures/kgRegionalFeature/kgRegList/kgRegList.component.ts
@@ -4,7 +4,7 @@ import { filter, switchMap, tap } from "rxjs/operators";
 import { TCountedDataModality } from '../../kgDataset'
 import { BsRegionInputBase } from "../../bsRegionInputBase";
 import { BsFeatureService } from "../../service";
-import { TBSDetail, TBSSummary } from "../type";
+import { KG_REGIONAL_FEATURE_KEY, TBSDetail, TBSSummary } from "../type";
 import { ARIA_LABELS } from 'common/constants'
 import { filterKgFeatureByModailty } from "../../kgDataset/util";
 
@@ -31,7 +31,7 @@ export class KgRegionalFeaturesList extends BsRegionInputBase implements OnDestr
   public kgRegionalFeatures$ = this.region$.pipe(
     filter(v => !!v),
     // must not use switchmapto here
-    switchMap(() => this.getFeatureInstancesList('KgRegionalFeature'))
+    switchMap(() => this.getFeatureInstancesList(KG_REGIONAL_FEATURE_KEY))
   )
   constructor(private cdr: ChangeDetectorRef, svc: BsFeatureService){
     super(svc)
diff --git a/src/atlasComponents/regionalFeatures/bsFeatures/kgRegionalFeature/kgRegList/kgReglist.directive.ts b/src/atlasComponents/regionalFeatures/bsFeatures/kgRegionalFeature/kgRegList/kgReglist.directive.ts
index 5ffd978ad..78e73c9e3 100644
--- a/src/atlasComponents/regionalFeatures/bsFeatures/kgRegionalFeature/kgRegList/kgReglist.directive.ts
+++ b/src/atlasComponents/regionalFeatures/bsFeatures/kgRegionalFeature/kgRegList/kgReglist.directive.ts
@@ -1,5 +1,5 @@
 import { Directive, OnDestroy } from "@angular/core";
-import { TBSSummary } from "../type";
+import { KG_REGIONAL_FEATURE_KEY, TBSSummary } from "../type";
 import { BsFeatureService } from "../../service";
 import { BsRegionInputBase } from "../../bsRegionInputBase";
 import { Subscription } from "rxjs";
@@ -15,7 +15,7 @@ export class KgRegionalFeaturesListDirective extends BsRegionInputBase implement
   public kgRegionalFeatures$ = this.region$.pipe(
     filter(v => !!v),
     // must not use switchmapto here
-    switchMap(() => this.getFeatureInstancesList('KgRegionalFeature')),
+    switchMap(() => this.getFeatureInstancesList(KG_REGIONAL_FEATURE_KEY)),
     startWith([])
   )
   constructor(svc: BsFeatureService){
diff --git a/src/atlasComponents/regionalFeatures/bsFeatures/kgRegionalFeature/kgRegSummary/kgRegSummary.component.ts b/src/atlasComponents/regionalFeatures/bsFeatures/kgRegionalFeature/kgRegSummary/kgRegSummary.component.ts
index b97485be8..841226ad6 100644
--- a/src/atlasComponents/regionalFeatures/bsFeatures/kgRegionalFeature/kgRegSummary/kgRegSummary.component.ts
+++ b/src/atlasComponents/regionalFeatures/bsFeatures/kgRegionalFeature/kgRegSummary/kgRegSummary.component.ts
@@ -1,7 +1,7 @@
 import { Component, EventEmitter, Input, OnChanges, Output } from "@angular/core";
 import { BsRegionInputBase } from "../../bsRegionInputBase";
 import { BsFeatureService } from "../../service";
-import { TBSDetail, TBSSummary } from '../type'
+import { KG_REGIONAL_FEATURE_KEY, TBSDetail, TBSSummary } from '../type'
 
 @Component({
   selector: 'kg-regional-feature-summary',
@@ -40,7 +40,7 @@ export class KgRegSummaryCmp extends BsRegionInputBase implements OnChanges{
         return
       }
       this.loadingDetail = true
-      this.getFeatureInstance('KgRegionalFeature', this.summary["@id"]).subscribe(
+      this.getFeatureInstance(KG_REGIONAL_FEATURE_KEY, this.summary["@id"]).subscribe(
         detail => {
           this.detail = detail
           this.loadedDetail.emit(detail)
diff --git a/src/atlasComponents/regionalFeatures/bsFeatures/kgRegionalFeature/type.ts b/src/atlasComponents/regionalFeatures/bsFeatures/kgRegionalFeature/type.ts
index 8e1c7d60e..371a926c2 100644
--- a/src/atlasComponents/regionalFeatures/bsFeatures/kgRegionalFeature/type.ts
+++ b/src/atlasComponents/regionalFeatures/bsFeatures/kgRegionalFeature/type.ts
@@ -1,3 +1,5 @@
 export {
   TBSDetail, TBSSummary
 } from '../kgDataset'
+
+export const KG_REGIONAL_FEATURE_KEY = 'EbrainsRegionalDataset'
diff --git a/src/atlasComponents/regionalFeatures/bsFeatures/type.ts b/src/atlasComponents/regionalFeatures/bsFeatures/type.ts
index 5e24c0712..ff20d84d7 100644
--- a/src/atlasComponents/regionalFeatures/bsFeatures/type.ts
+++ b/src/atlasComponents/regionalFeatures/bsFeatures/type.ts
@@ -1,6 +1,6 @@
 import { IHasId } from "src/util/interfaces";
 import { TBSDetail as TReceptorDetail, TBSSummary as TReceptorSummary } from "./receptor/type";
-import { TBSDetail as TKGDetail, TBSSummary as TKGSummary } from './kgRegionalFeature/type'
+import { KG_REGIONAL_FEATURE_KEY, TBSDetail as TKGDetail, TBSSummary as TKGSummary } from './kgRegionalFeature/type'
 
 /**
  * change KgRegionalFeature -> EbrainsRegionalDataset in prod
@@ -8,12 +8,12 @@ import { TBSDetail as TKGDetail, TBSSummary as TKGSummary } from './kgRegionalFe
 
 export interface IBSSummaryResponse {
   'ReceptorDistribution': TReceptorSummary
-  'KgRegionalFeature': TKGSummary
+  [KG_REGIONAL_FEATURE_KEY]: TKGSummary
 }
 
 export interface IBSDetailResponse {
   'ReceptorDistribution': TReceptorDetail
-  'KgRegionalFeature': TKGDetail
+  [KG_REGIONAL_FEATURE_KEY]: TKGDetail
 }
 
 export type TRegion = {
-- 
GitLab