@abi-software/flatmapvuer 0.5.9-fccb.2 → 0.5.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -191,11 +191,25 @@
191
191
  >
192
192
  <div
193
193
  class="pathway-container"
194
- :style="{ 'max-height': pathwaysMaxHeight + 'px' }"
194
+ :class="{ open: drawerOpen, close: !drawerOpen }"
195
+ :style="{ 'max-height' : pathwaysMaxHeight + 'px' }"
195
196
  v-if="pathControls"
196
197
  v-popover:checkBoxPopover
197
198
  >
198
199
  <svg-legends v-if="!isFC" class="svg-legends-container" />
200
+ <el-popover
201
+ content="Location of the featured dataset"
202
+ placement="right"
203
+ :appendToBody="false"
204
+ trigger="hover"
205
+ popper-class="flatmap-popper popper-bump-right right-popper"
206
+ v-model="hoverVisibilities[9].value"
207
+ ref="featuredMarkerPopover"
208
+ >
209
+ </el-popover>
210
+ <div v-show="showStarInLegend" v-popover:featuredMarkerPopover class="yellow-star-legend" v-html="yellowstar"></div>
211
+ <!-- The line below places the yellowstar svg on the left, and the text "Featured markers on the right" with css so they are both centered in the div -->
212
+
199
213
  <el-popover
200
214
  content="Find these markers for data"
201
215
  placement="right"
@@ -331,17 +345,6 @@
331
345
  </el-select>
332
346
  </el-row>
333
347
  <el-row class="backgroundSpacer"></el-row>
334
- <el-row class="backgroundText">HighlightTool</el-row>
335
- <el-row class="backgroundControl">
336
- <el-radio-group
337
- v-model="highlightToolOn"
338
- class="flatmap-radio"
339
- @change="setHighlightTool"
340
- >
341
- <el-radio :label="true">On</el-radio>
342
- <el-radio :label="false">Off</el-radio>
343
- </el-radio-group>
344
- </el-row>
345
348
  <el-row class="backgroundText">Organs display</el-row>
346
349
  <el-row class="backgroundControl">
347
350
  <el-radio-group
@@ -428,8 +431,6 @@
428
431
  ref="tooltip"
429
432
  class="tooltip"
430
433
  :annotationEntry="annotationEntry"
431
- @highlightConnectedPaths="highlightConnectedPaths"
432
- @onClose="closeTooltip"
433
434
  :entry="tooltipEntry"
434
435
  :annotationDisplay="viewingMode === 'Annotation'"
435
436
  />
@@ -457,10 +458,8 @@ import {
457
458
  import lang from "element-ui/lib/locale/lang/en";
458
459
  import locale from "element-ui/lib/locale";
459
460
  import flatmapMarker from "../icons/flatmap-marker";
460
- import {
461
- FlatmapQueries,
462
- findTaxonomyLabel,
463
- } from "../services/flatmapQueries.js";
461
+ import {FlatmapQueries, findTaxonomyLabel} from "../services/flatmapQueries.js";
462
+ import yellowstar from "../icons/yellowstar";
464
463
 
465
464
  locale.use(lang);
466
465
  Vue.use(Button);
@@ -594,9 +593,6 @@ export default {
594
593
  this.mapImp.setColour({ colour: flag, outline: this.outlinesRadio });
595
594
  }
596
595
  },
597
- setHighlightTool: function (flag) {
598
- this.highlightToolOn = flag;
599
- },
600
596
  /**
601
597
  * Function to toggle outlines f organs.
602
598
  */
@@ -661,25 +657,23 @@ export default {
661
657
  checkAllSCKAN: function (payload) {
662
658
  if (this.mapImp) {
663
659
  payload.keys.forEach((key) =>
664
- this.mapImp.enableSckanPath(key, payload.value)
665
- );
660
+ this.mapImp.enableSckanPath(key, payload.value));
666
661
  }
667
662
  },
668
663
  highlightConnectedPaths: function (payload) {
669
- console.log('highlightConnectedPaths', payload)
670
664
  if (this.mapImp) {
671
665
  let paths = [...this.mapImp.pathModelNodes(payload)];
672
666
  // The line below matches the paths to the annIdToFeatureId map to get the feature ids
673
667
 
674
- let pathFeatures = paths.map((p) => this.mapImp.featureProperties(p));
668
+ let pathFeatures = paths.map(p=>this.mapImp.featureProperties(p));
675
669
  let toHighlight = [];
676
- pathFeatures.forEach((p) => {
677
- this.mapImp.nodePathModels(p.featureId).forEach((f) => {
670
+ pathFeatures.forEach(p=>{
671
+ this.mapImp.nodePathModels(p.featureId).forEach(f=>{
678
672
  toHighlight.push(f);
679
- });
680
- });
681
-
682
- this.mapImp.highlightFeatures(toHighlight);
673
+ })
674
+ })
675
+ // display connected paths
676
+ this.mapImp.zoomToFeatures(toHighlight, {noZoomIn: true});
683
677
  }
684
678
  },
685
679
  systemSelected: function (payload) {
@@ -757,19 +751,20 @@ export default {
757
751
  : undefined,
758
752
  };
759
753
  if (eventType === "click") {
760
- if (this.highlightToolOn) {
754
+ if (this.viewingMode === "Network Discovery") {
761
755
  this.highlightConnectedPaths([data.models]);
762
756
  } else {
763
757
  this.currentActive = data.models ? data.models : "";
764
758
  }
765
- } else if (eventType === "mouseenter" && !this.highlightToolOn) {
759
+ } else if (eventType === "mouseenter" &&
760
+ !(this.viewingMode === "Network Discovery")) {
766
761
  this.currentHover = data.models ? data.models : "";
767
762
  }
768
763
  if (
769
764
  data &&
770
765
  data.type !== "marker" &&
771
766
  eventType === "click" &&
772
- !this.highlightToolOn
767
+ !(this.viewingMode === "Network Discovery")
773
768
  ) {
774
769
  this.checkAndCreatePopups(payload);
775
770
  }
@@ -1235,6 +1230,10 @@ export default {
1235
1230
  ];
1236
1231
  },
1237
1232
  },
1233
+ showStarInLegend: {
1234
+ type: Boolean,
1235
+ default: false
1236
+ },
1238
1237
  isLegacy: {
1239
1238
  type: Boolean,
1240
1239
  default: false,
@@ -1305,13 +1304,14 @@ export default {
1305
1304
  { value: false },
1306
1305
  { value: false },
1307
1306
  { value: false },
1307
+ { value: false },
1308
1308
  ],
1309
+ yellowstar: yellowstar,
1309
1310
  isFC: false,
1310
1311
  inHelp: false,
1311
1312
  currentBackground: "white",
1312
1313
  availableBackground: ["white", "lightskyblue", "black"],
1313
1314
  loading: false,
1314
- highlightToolOn: false,
1315
1315
  flatmapMarker: flatmapMarker,
1316
1316
  tooltipEntry: createUnfilledTooltipData(),
1317
1317
  connectivityTooltipVisible: false,
@@ -1324,7 +1324,7 @@ export default {
1324
1324
  currentActive: "",
1325
1325
  currentHover: "",
1326
1326
  viewingMode: "Exploration",
1327
- viewingModes: ["Annotation", "Exploration"],
1327
+ viewingModes: ["Annotation", "Exploration", "Network Discovery"],
1328
1328
  };
1329
1329
  },
1330
1330
  watch: {
@@ -1454,6 +1454,14 @@ export default {
1454
1454
  overflow-x: hidden;
1455
1455
  scrollbar-width: thin;
1456
1456
 
1457
+ transition: all 1s ease;
1458
+ &.open {
1459
+ opacity: 1;
1460
+ }
1461
+ &.close {
1462
+ opacity: 0;
1463
+ }
1464
+
1457
1465
  &::-webkit-scrollbar {
1458
1466
  width: 4px;
1459
1467
  }
@@ -1613,6 +1621,11 @@ export default {
1613
1621
  padding-left: 8px;
1614
1622
  }
1615
1623
 
1624
+ .yellow-star-legend {
1625
+ width: 130px;
1626
+ cursor: pointer;
1627
+ }
1628
+
1616
1629
  .settings-group {
1617
1630
  bottom: 16px;
1618
1631
  position: absolute;
@@ -1630,7 +1643,7 @@ export default {
1630
1643
  background-color: #ffffff;
1631
1644
  border: 1px solid $app-primary-color;
1632
1645
  box-shadow: 0px 2px 12px 0px rgba(0, 0, 0, 0.06);
1633
- height: 330px;
1646
+ height: 270px;
1634
1647
  width: 175px;
1635
1648
  min-width: 175px;
1636
1649
  &.el-popper[x-placement^="top"] {
@@ -53,6 +53,7 @@
53
53
  :helpMode="helpMode"
54
54
  :renderAtMounted="renderAtMounted"
55
55
  :displayMinimap="displayMinimap"
56
+ :showStarInLegend="showStarInLegend"
56
57
  style="height:100%"
57
58
  :flatmapAPI="flatmapAPI"
58
59
  :sparcAPI="sparcAPI"
@@ -386,6 +387,10 @@ export default {
386
387
  type: Boolean,
387
388
  default: false
388
389
  },
390
+ showStarInLegend: {
391
+ type: Boolean,
392
+ default: false
393
+ },
389
394
  /**
390
395
  * Flag to determine rather open map UI should be
391
396
  * presented or not.
@@ -5,9 +5,6 @@
5
5
  <div v-if="entry.provenanceTaxonomyLabel && entry.provenanceTaxonomyLabel.length > 0" class="subtitle">
6
6
  {{provSpeciesDescription}}
7
7
  </div>
8
- <el-button @click="showConnectedPaths">
9
- Show connected paths
10
- </el-button>
11
8
  </div>
12
9
  <div class="block" v-else>
13
10
  <span class="title">{{entry.featureId}}</span>
@@ -182,16 +179,9 @@ export default {
182
179
  titleCase: function(title){
183
180
  return titleCase(title)
184
181
  },
185
- showConnectedPaths(){
186
- this.$emit('highlightConnectedPaths', this.entry.featureId)
187
- this.$emit('onClose')
188
- },
189
182
  capitalise: function(text){
190
183
  return capitalise(text)
191
184
  },
192
- onClose: function() {
193
- this.$emit("onClose")
194
- },
195
185
  openUrl: function(url){
196
186
  window.open(url, '_blank')
197
187
  },
@@ -4,10 +4,7 @@
4
4
  <annotation-tool :annotationEntry="annotationEntry"/>
5
5
  </template>
6
6
  <template v-else>
7
- <provenance-popup :entry="entry"
8
- @highlightConnectedPaths="$emit('highlightConnectedPaths', $event)"
9
- @onClose="$emit('onClose')"
10
- />
7
+ <provenance-popup :entry="entry"/>
11
8
  </template>
12
9
  </div>
13
10
  </template>
@@ -17,6 +17,7 @@
17
17
  <text transform="matrix(0.9908 0 0 1 118.0903 345.5266)" class="st3 st4 st5" style="white-space: pre;">Ganglia</text>
18
18
  <text transform="matrix(0.9908 0 0 1 118.0903 433.1613)" class="st3 st4 st5" style="white-space: pre;">Ganglionated nerve plexus</text>
19
19
  </svg>
20
+ <svg width="72px" height="72px" viewBox="0 0 24 24" fill="yellow"></svg>
20
21
  </div>
21
22
  </template>
22
23
 
@@ -0,0 +1,5 @@
1
+ export default '<svg width="160px" height="24px" viewBox="0 0 160 24" fill="yellow">' +
2
+ '<path d="M22.0748 3.25583C22.4141 2.42845 23.5859 2.42845 23.9252 3.25583L25.6493 7.45955C25.793 7.80979 26.1221 8.04889 26.4995 8.07727L31.0303 8.41798C31.922 8.48504 32.2841 9.59942 31.6021 10.1778L28.1369 13.1166C27.8482 13.3614 27.7225 13.7483 27.8122 14.1161L28.8882 18.5304C29.1 19.3992 28.152 20.0879 27.3912 19.618L23.5255 17.2305C23.2034 17.0316 22.7966 17.0316 22.4745 17.2305L18.60881 19.618C17.84796 20.0879 16.9 19.3992 17.1118 18.5304L18.18785 14.1161C18.2775 13.7483 18.1518 13.3614 17.86309 13.1166L14.3979 10.1778C13.71588 9.59942 14.07796 8.48504 14.96971 8.41798L19.50046 8.07727C19.87794 8.04889 20.20704 7.80979 20.35068 7.45955L22.0748 3.25583Z" stroke="#000000" stroke-width="2"/>' +
3
+ // Adjusting the x attribute and adding padding for the text element
4
+ '<text x="42" y="50%" dominant-baseline="middle" text-anchor="start" font-family="Asap, sans-serif" font-size="12" fill="#000000">Featured marker</text>' +
5
+ '</svg>';