@abi-software/mapintegratedvuer 1.3.5-beta.0 → 1.4.0
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/dist/ContentMixin-Kgbrl_Sm.js +584 -0
- package/dist/Flatmap-CeqTJMXV.js +159 -0
- package/dist/Iframe-Dts_44jv.js +19 -0
- package/dist/MultiFlatmap-CwsjL6gP.js +332 -0
- package/dist/Plot-CONXSZVo.js +24 -0
- package/dist/Scaffold-CnBEdHaP.js +44390 -0
- package/dist/Simulation-BPZC017G.js +10622 -0
- package/dist/favicon.ico +0 -0
- package/dist/index-O_8s0SlM.js +58299 -0
- package/dist/index.html +18 -0
- package/dist/mapintegratedvuer.js +4 -0
- package/dist/mapintegratedvuer.umd.cjs +7483 -0
- package/dist/plotvuer-X4h-Lj3L.js +49187 -0
- package/dist/style-C4WSp4wW.js +98116 -0
- package/dist/style.css +1 -0
- package/package.json +6 -6
- package/src/App.vue +11 -3
- package/src/components/ContentBar.vue +1 -1
- package/src/components/ContextCard.vue +29 -8
- package/src/components/FlatmapContextCard.vue +2 -5
- package/src/components/MapContent.vue +6 -0
- package/src/components/viewers/Flatmap.vue +5 -3
- package/src/components/viewers/MultiFlatmap.vue +8 -0
- package/src/components/viewers/Scaffold.vue +7 -0
- package/src/mixins/DynamicMarkerMixin.js +9 -1
- package/src/stores/splitFlow.js +1 -1
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@abi-software/mapintegratedvuer",
|
3
|
-
"version": "1.
|
3
|
+
"version": "1.4.0",
|
4
4
|
"license": "Apache-2.0",
|
5
5
|
"scripts": {
|
6
6
|
"serve": "vite --host --force",
|
@@ -18,7 +18,7 @@
|
|
18
18
|
"release:beta": "npm version prerelease --force --preid=beta; npm publish --access public --tag beta",
|
19
19
|
"release:minor": "npm version minor --force; npm publish --access public",
|
20
20
|
"release:patch": "npm version patch --force; npm publish --access public",
|
21
|
-
"version": "npm run changelog; git add CHANGELOG.md",
|
21
|
+
"version": "npm run build-bundle; npm run changelog; git add CHANGELOG.md",
|
22
22
|
"vuese-gen": "node vuese-generator.js",
|
23
23
|
"vuese-watch": "node vuese-generator.js watch",
|
24
24
|
"docs:dev": "vitepress dev docs",
|
@@ -50,11 +50,11 @@
|
|
50
50
|
"*.js"
|
51
51
|
],
|
52
52
|
"dependencies": {
|
53
|
-
"@abi-software/flatmapvuer": "^1.
|
54
|
-
"@abi-software/map-side-bar": "^2.
|
55
|
-
"@abi-software/map-utilities": "^1.
|
53
|
+
"@abi-software/flatmapvuer": "^1.4.0",
|
54
|
+
"@abi-software/map-side-bar": "^2.4.1",
|
55
|
+
"@abi-software/map-utilities": "^1.1.0",
|
56
56
|
"@abi-software/plotvuer": "1.0.0",
|
57
|
-
"@abi-software/scaffoldvuer": "^1.
|
57
|
+
"@abi-software/scaffoldvuer": "^1.4.0",
|
58
58
|
"@abi-software/simulationvuer": "1.0.0",
|
59
59
|
"@abi-software/svg-sprite": "1.0.0",
|
60
60
|
"@element-plus/icons-vue": "^2.3.1",
|
package/src/App.vue
CHANGED
@@ -41,7 +41,8 @@
|
|
41
41
|
:useHelpModeDialog="true"
|
42
42
|
:connectivityInfoSidebar="true"
|
43
43
|
@updateShareLinkRequested="updateUUID"
|
44
|
-
@isReady="
|
44
|
+
@isReady="viewerIsReady"
|
45
|
+
@mapLoaded="mapIsLoaded"
|
45
46
|
/>
|
46
47
|
</div>
|
47
48
|
</div>
|
@@ -99,6 +100,9 @@ export default {
|
|
99
100
|
}
|
100
101
|
},
|
101
102
|
methods: {
|
103
|
+
changeViewingMode: function(modeName) {
|
104
|
+
this.$refs.map.changeViewingMode(modeName);
|
105
|
+
},
|
102
106
|
saveSettings: function() {
|
103
107
|
this.mapSettings.push(this.$refs.map.getState());
|
104
108
|
},
|
@@ -164,8 +168,12 @@ export default {
|
|
164
168
|
setSearch: function() {
|
165
169
|
this.$refs.map.openSearch([], "10.26275/1uno-tynt");
|
166
170
|
},
|
167
|
-
|
168
|
-
console.log("map is
|
171
|
+
mapIsLoaded: function(map) {
|
172
|
+
console.log("map is loaded", map)
|
173
|
+
// map.changeViewingMode('Annotation')
|
174
|
+
},
|
175
|
+
viewerIsReady: function() {
|
176
|
+
console.log("viewer is ready")
|
169
177
|
},
|
170
178
|
parseQuery: function () {
|
171
179
|
this.$router.isReady().then(() => {
|
@@ -6,11 +6,14 @@
|
|
6
6
|
<img :src="banner" class="context-image">
|
7
7
|
</div>
|
8
8
|
<div class="card-right scrollbar">
|
9
|
-
<div
|
9
|
+
<div>
|
10
10
|
<div class="title">{{contextData.heading}}</div>
|
11
11
|
<div v-html="parseMarkdown(contextData.description)"/>
|
12
|
-
<br/>
|
13
|
-
|
12
|
+
<!-- <br/> -->
|
13
|
+
</div>
|
14
|
+
</div>
|
15
|
+
<div class="card-bottom">
|
16
|
+
<div>
|
14
17
|
<!-- Show sampeles and views seperately if they do not match -->
|
15
18
|
<template v-if="!samplesUnderViews">
|
16
19
|
<div v-if="contextData.views && contextData.views.length > 0" class="subtitle">Scaffold Views</div>
|
@@ -364,28 +367,38 @@ export default {
|
|
364
367
|
display: flex;
|
365
368
|
justify-content: center;
|
366
369
|
align-items: center;
|
370
|
+
// text-align: initial; // default is justify
|
371
|
+
word-break: initial;
|
367
372
|
}
|
368
373
|
|
369
374
|
.context-card{
|
370
375
|
background-color: white;
|
371
|
-
max-height: 10 50px;
|
372
376
|
font-size: 14px;
|
373
377
|
position: relative;
|
374
378
|
display: flex;
|
379
|
+
flex-wrap: wrap;
|
380
|
+
gap: 10px;
|
375
381
|
width: 100%;
|
376
382
|
max-height: 258px;
|
383
|
+
overflow-y: auto;
|
384
|
+
scrollbar-width: thin;
|
385
|
+
box-sizing: border-box;
|
386
|
+
|
387
|
+
&:not(.context-card-container) {
|
388
|
+
padding: 10px;
|
389
|
+
}
|
377
390
|
}
|
378
391
|
|
379
392
|
.context-card-view{
|
380
393
|
cursor: pointer;
|
381
394
|
margin-bottom: 8px;
|
382
395
|
display: flex;
|
396
|
+
gap: 8px;
|
383
397
|
}
|
384
398
|
|
385
399
|
.view-image {
|
386
400
|
width: 34px;
|
387
|
-
height:
|
388
|
-
flex: 1;
|
401
|
+
height: auto;
|
389
402
|
}
|
390
403
|
|
391
404
|
.view-descriptions {
|
@@ -418,8 +431,15 @@ export default {
|
|
418
431
|
.card-right {
|
419
432
|
flex: 1.5;
|
420
433
|
word-break: normal !important;
|
421
|
-
|
422
|
-
|
434
|
+
|
435
|
+
:deep(p:last-child) {
|
436
|
+
margin-bottom: 0;
|
437
|
+
}
|
438
|
+
}
|
439
|
+
|
440
|
+
.card-bottom {
|
441
|
+
flex: 0 0 100%;
|
442
|
+
max-width: 100%;
|
423
443
|
}
|
424
444
|
|
425
445
|
.cursor-pointer {
|
@@ -442,6 +462,7 @@ export default {
|
|
442
462
|
|
443
463
|
.subtitle{
|
444
464
|
font-weight: bold;
|
465
|
+
margin-bottom: 8px;
|
445
466
|
}
|
446
467
|
|
447
468
|
.scrollbar::-webkit-scrollbar-track {
|
@@ -141,19 +141,16 @@ export default {
|
|
141
141
|
|
142
142
|
.flatmap-context-card{
|
143
143
|
background-color: white;
|
144
|
-
max-height: 10 50px;
|
145
144
|
font-size: 12px;
|
146
145
|
position: relative;
|
147
146
|
display: flex;
|
148
147
|
width: 100%;
|
149
148
|
max-height: 258px;
|
149
|
+
padding: 10px;
|
150
150
|
}
|
151
151
|
|
152
152
|
.card-right {
|
153
|
-
flex: 1
|
154
|
-
padding-left: 6px;
|
155
|
-
// overflow-y: scroll;
|
156
|
-
scrollbar-width: thin;
|
153
|
+
flex: 1;
|
157
154
|
}
|
158
155
|
|
159
156
|
.cursor-pointer {
|
@@ -326,6 +326,12 @@ export default {
|
|
326
326
|
if (!this.state) {
|
327
327
|
this.initialState = await initialState(this.startingMap, this.options.sparcApi);
|
328
328
|
}
|
329
|
+
EventBus.on("mapLoaded", (map) => {
|
330
|
+
/**
|
331
|
+
* This event emit when the map is loaded.
|
332
|
+
*/
|
333
|
+
this.$emit("mapLoaded", map);
|
334
|
+
});
|
329
335
|
this.isReady = true;
|
330
336
|
this.settingsStore.updateUseHelpModeDialog(this.useHelpModeDialog);
|
331
337
|
this.settingsStore.updateConnectivityInfoSidebar(this.connectivityInfoSidebar);
|
@@ -100,9 +100,8 @@ export default {
|
|
100
100
|
let provClone = {id: this.entry.id, prov: this.getFlatmapImp().provenance}; //create clone of provenance and add id
|
101
101
|
EventBus.emit("mapImpProv", provClone); // send clone to context card
|
102
102
|
this.$emit("flatmap-provenance-ready", provClone);
|
103
|
-
|
104
|
-
|
105
|
-
}
|
103
|
+
this.flatmapReadyForMarkerUpdates(flatmap);
|
104
|
+
EventBus.emit("mapLoaded", flatmap);
|
106
105
|
},
|
107
106
|
onPathwaySelectionChanged: function (data) {
|
108
107
|
const { label, property, checked, selectionsTitle } = data;
|
@@ -158,6 +157,9 @@ export default {
|
|
158
157
|
flatmap.clearSearchResults();
|
159
158
|
}
|
160
159
|
},
|
160
|
+
changeViewingMode: function (modeName) {
|
161
|
+
this.$refs.flatmap.changeViewingMode(modeName);
|
162
|
+
},
|
161
163
|
},
|
162
164
|
computed: {
|
163
165
|
facetSpecies() {
|
@@ -329,6 +329,7 @@ export default {
|
|
329
329
|
const flatmapImp = flatmap.mapImp;
|
330
330
|
this.flatmapMarkerUpdate(flatmapImp);
|
331
331
|
this.updateProvCard();
|
332
|
+
EventBus.emit("mapLoaded", flatmap);
|
332
333
|
}
|
333
334
|
},
|
334
335
|
getFlatmapImp: function () {
|
@@ -404,6 +405,13 @@ export default {
|
|
404
405
|
}
|
405
406
|
return false;
|
406
407
|
},
|
408
|
+
/**
|
409
|
+
* Change the view mode of the current flatmap
|
410
|
+
*/
|
411
|
+
changeViewingMode: function (modeName) {
|
412
|
+
const flatmap = this.$refs.multiflatmap.getCurrentFlatmap();
|
413
|
+
flatmap.changeViewingMode(modeName);
|
414
|
+
},
|
407
415
|
},
|
408
416
|
computed: {
|
409
417
|
facetSpecies() {
|
@@ -139,6 +139,7 @@ export default {
|
|
139
139
|
this.$refs.scaffold.toggleSyncControl(this.splitFlowStore.globalCallback, rotation);
|
140
140
|
if (this.splitFlowStore.syncMode) this.$refs.scaffold.fitWindow();
|
141
141
|
}
|
142
|
+
EventBus.emit("mapLoaded", this.$refs.scaffold);
|
142
143
|
},
|
143
144
|
requestSynchronisedEvent: function (flag) {
|
144
145
|
if (this.scaffoldLoaded) {
|
@@ -183,6 +184,12 @@ export default {
|
|
183
184
|
updateWithViewUrl: function(viewUrl) {
|
184
185
|
this.$refs.scaffold.updateViewURL(viewUrl);
|
185
186
|
},
|
187
|
+
/**
|
188
|
+
* Change the view mode of the current scaffold
|
189
|
+
*/
|
190
|
+
changeViewingMode: function (modeName) {
|
191
|
+
this.$refs.scaffold.changeViewingMode(modeName);
|
192
|
+
},
|
186
193
|
},
|
187
194
|
computed: {
|
188
195
|
warningMessage: function() {
|
@@ -47,7 +47,15 @@ export default {
|
|
47
47
|
let fmMarkers = this.removeMarkersNotOnFlatmap(flatmapImp, markers);
|
48
48
|
flatmapImp.clearMarkers();
|
49
49
|
flatmapImp.clearDatasetMarkers();
|
50
|
-
|
50
|
+
if (this.entry.resource === "FunctionalConnectivity") {
|
51
|
+
let FCMapMarkers = [];
|
52
|
+
for (let i = 0; i < fmMarkers.length; i++) {
|
53
|
+
FCMapMarkers = FCMapMarkers.concat(fmMarkers[i].terms);
|
54
|
+
}
|
55
|
+
flatmapImp.addMarkers(Array.from(new Set(FCMapMarkers)), { className: "standard-marker", cluster: false });
|
56
|
+
} else {
|
57
|
+
flatmapImp.addDatasetMarkers(fmMarkers);
|
58
|
+
}
|
51
59
|
|
52
60
|
// Set the featured markers
|
53
61
|
if (this.entry.type === "MultiFlatmap") {
|
package/src/stores/splitFlow.js
CHANGED
@@ -208,7 +208,7 @@ export const useSplitFlowStore = defineStore('splitFlow', {
|
|
208
208
|
if (this._controller) this._controller.abort();
|
209
209
|
this._controller = new AbortController();
|
210
210
|
let signal = this._controller.signal;
|
211
|
-
console.log("getAvailableTerms")
|
211
|
+
// console.log("getAvailableTerms")
|
212
212
|
fetch(`${apiLocation}get-organ-curies`, {
|
213
213
|
signal,
|
214
214
|
})
|