@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.
- package/CHANGELOG.md +14 -1
- package/dist/flatmapvuer.common.js +259 -261
- package/dist/flatmapvuer.common.js.map +1 -1
- package/dist/flatmapvuer.css +1 -1
- package/dist/flatmapvuer.umd.js +259 -261
- package/dist/flatmapvuer.umd.js.map +1 -1
- package/dist/flatmapvuer.umd.min.js +2 -2
- package/dist/flatmapvuer.umd.min.js.map +1 -1
- package/package-lock.json +116 -68
- package/package.json +3 -3
- package/src/components/AnnotationTool.vue +13 -33
- package/src/components/FlatmapVuer.vue +50 -37
- package/src/components/MultiFlatmapVuer.vue +5 -0
- package/src/components/ProvenancePopup.vue +0 -10
- package/src/components/Tooltip.vue +1 -4
- package/src/components/legends/SvgLegends.vue +1 -0
- package/src/icons/yellowstar.js +5 -0
|
@@ -191,11 +191,25 @@
|
|
|
191
191
|
>
|
|
192
192
|
<div
|
|
193
193
|
class="pathway-container"
|
|
194
|
-
:
|
|
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
|
-
|
|
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(
|
|
668
|
+
let pathFeatures = paths.map(p=>this.mapImp.featureProperties(p));
|
|
675
669
|
let toHighlight = [];
|
|
676
|
-
pathFeatures.forEach(
|
|
677
|
-
this.mapImp.nodePathModels(p.featureId).forEach(
|
|
670
|
+
pathFeatures.forEach(p=>{
|
|
671
|
+
this.mapImp.nodePathModels(p.featureId).forEach(f=>{
|
|
678
672
|
toHighlight.push(f);
|
|
679
|
-
})
|
|
680
|
-
})
|
|
681
|
-
|
|
682
|
-
this.mapImp.
|
|
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.
|
|
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" &&
|
|
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.
|
|
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:
|
|
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>';
|