@abi-software/mapintegratedvuer 1.9.0-beta.1 → 1.9.0-beta.2

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@abi-software/mapintegratedvuer",
3
- "version": "1.9.0-beta.1",
3
+ "version": "1.9.0-beta.2",
4
4
  "license": "Apache-2.0",
5
5
  "scripts": {
6
6
  "serve": "vite --host --force",
@@ -50,11 +50,11 @@
50
50
  "*.js"
51
51
  ],
52
52
  "dependencies": {
53
- "@abi-software/flatmapvuer": "^1.9.0-beta.0",
54
- "@abi-software/map-side-bar": "^2.7.3-beta.0",
55
- "@abi-software/map-utilities": "^1.5.0-beta.0",
53
+ "@abi-software/flatmapvuer": "^1.9.0-beta.2",
54
+ "@abi-software/map-side-bar": "^2.7.3-beta.3",
55
+ "@abi-software/map-utilities": "^1.5.0-beta.2",
56
56
  "@abi-software/plotvuer": "^1.0.3",
57
- "@abi-software/scaffoldvuer": "^1.9.0-beta.0",
57
+ "@abi-software/scaffoldvuer": "^1.9.0-beta.1",
58
58
  "@abi-software/simulationvuer": "1.0.1",
59
59
  "@abi-software/sparc-annotation": "0.3.2",
60
60
  "@abi-software/svg-sprite": "^1.0.1",
package/src/App.vue CHANGED
@@ -23,8 +23,6 @@
23
23
  <el-button @click="setWholebody()" size="small">Set to Wholebody</el-button>
24
24
  <el-button @click="setFlatmap()" size="small">Set Flatmap</el-button>
25
25
  <el-button @click="setSearch()" size="small">Set Search</el-button>
26
- <el-button @click="toggleHighlightConnectedPaths()" size="small">Toggle Highlight Connected Paths</el-button>
27
- <el-button @click="toggleHighlightDOIPaths()" size="small">Toggle Highlight DOI Paths</el-button>
28
26
  </div>
29
27
  </div>
30
28
  <template #reference>
@@ -43,7 +41,7 @@
43
41
  :shareLink="shareLink"
44
42
  :useHelpModeDialog="true"
45
43
  :connectivityInfoSidebar="true"
46
- :hoverHighlightOptions="hoverHighlightOptions"
44
+ :allClosable="false"
47
45
  @updateShareLinkRequested="updateUUID"
48
46
  @isReady="viewerIsReady"
49
47
  @mapLoaded="mapIsLoaded"
@@ -153,10 +151,6 @@ export default {
153
151
  mapSettings: [],
154
152
  startingMap: "AC",
155
153
  ElIconSetting: shallowRef(ElIconSetting),
156
- hoverHighlightOptions: {
157
- highlightConnectedPaths: true,
158
- highlightDOIPaths: false,
159
- },
160
154
  }
161
155
  },
162
156
  computed: {
@@ -277,12 +271,6 @@ export default {
277
271
  setSearch: function() {
278
272
  this.$refs.map.openSearch([], "10.26275/1uno-tynt");
279
273
  },
280
- toggleHighlightConnectedPaths: function () {
281
- this.hoverHighlightOptions.highlightConnectedPaths = !this.hoverHighlightOptions.highlightConnectedPaths;
282
- },
283
- toggleHighlightDOIPaths: function () {
284
- this.hoverHighlightOptions.highlightDOIPaths = !this.hoverHighlightOptions.highlightDOIPaths;
285
- },
286
274
  mapIsLoaded: function(map) {
287
275
  console.log("map is loaded", map)
288
276
  // map.changeViewingMode('Annotation')
@@ -40,6 +40,13 @@
40
40
  background-color: #f3ecf6;
41
41
  }
42
42
  }
43
+
44
+ &.el-icon {
45
+ margin: 0;
46
+ color: white;
47
+ background-color: $app-primary-color;
48
+ border-radius: 50% 50%;
49
+ }
43
50
  }
44
51
 
45
52
  .header-icon.disabled,
@@ -65,7 +65,7 @@
65
65
  :teleported=false trigger="hover" popper-class="header-popper" >
66
66
  <template #reference>
67
67
  <map-svg-icon icon="close" class="header-icon"
68
- v-show="(activeView !== 'singlepanel') && (entry.mode !== 'main')"
68
+ v-show="(activeView !== 'singlepanel') && ((entry.mode !== 'main') || allClosable )"
69
69
  @click="closeAndRemove()"/>
70
70
  </template>
71
71
  </el-popover>
@@ -131,6 +131,9 @@ export default {
131
131
  },
132
132
  computed: {
133
133
  ...mapStores(useEntriesStore, useSettingsStore, useSplitFlowStore),
134
+ allClosable() {
135
+ return this.settingsStore.allClosable;
136
+ },
134
137
  helpDelay() {
135
138
  return this.settingsStore.helpDelay;
136
139
  },
@@ -240,7 +243,6 @@ export default {
240
243
  target: value
241
244
  });
242
245
  this.$nextTick(() => {
243
- EventBus.emit('connectivity-info-close');
244
246
  setTimeout(() => {
245
247
  this.$emit("chooser-changed");
246
248
  }, 1200);
@@ -209,6 +209,62 @@
209
209
  <map-svg-icon icon="close" class="header-icon" @click="close" v-show="showIcons"/>
210
210
  </template>
211
211
  </el-popover>
212
+ <!--
213
+ <el-popover
214
+ v-if="globalSettingRef"
215
+ :virtual-ref="globalSettingRef"
216
+ ref="settingPopover"
217
+ placement="bottom"
218
+ width="133"
219
+ :teleported=false
220
+ trigger="click"
221
+ popper-class="setting-popover"
222
+ virtual-triggering
223
+ >
224
+ <el-row :gutter="20">
225
+ <el-col :span="20">
226
+ <el-checkbox
227
+ v-model="globalSettings.displayMarkers"
228
+ @change="updateGlobalSettings"
229
+ >
230
+ Display Map Markers
231
+ </el-checkbox>
232
+ <p>Card Hover</p>
233
+ <el-checkbox
234
+ v-model="globalSettings.highlightConnectedPaths"
235
+ @change="updateGlobalSettings"
236
+ >
237
+ Highlight Connected Paths
238
+ </el-checkbox>
239
+ <el-checkbox
240
+ v-model="globalSettings.highlightDOIPaths"
241
+ @change="updateGlobalSettings"
242
+ >
243
+ Highlight DOI Paths
244
+ </el-checkbox>
245
+ <p>Interactive Mode</p>
246
+ <el-radio-group
247
+ v-model="globalSettings.interactiveMode"
248
+ @change="updateGlobalSettings"
249
+ >
250
+ <el-radio value="dataset">Dataset Exploration</el-radio>
251
+ <el-radio value="connectivity">Connectivity Exploration</el-radio>
252
+ <el-radio value="multiscale">Multiscale Model</el-radio>
253
+ </el-radio-group>
254
+ </el-col>
255
+ </el-row>
256
+ </el-popover>
257
+ <el-popover class="tooltip" content="Global Settings" placement="bottom-end"
258
+ :show-after="helpDelay" :teleported=false trigger="hover"
259
+ popper-class="header-popper"
260
+ >
261
+ <template #reference>
262
+ <el-icon class="header-icon" ref="globalSettingRef">
263
+ <el-icon-more-filled />
264
+ </el-icon>
265
+ </template>
266
+ </el-popover>
267
+ -->
212
268
  </el-row>
213
269
  </div>
214
270
  </template>
@@ -226,6 +282,7 @@ import { MapSvgIcon, MapSvgSpriteColor } from '@abi-software/svg-sprite';
226
282
  import SearchControls from './SearchControls.vue';
227
283
  import {
228
284
  CopyDocument as ElIconCopyDocument,
285
+ MoreFilled as ElIconMoreFilled,
229
286
  } from '@element-plus/icons-vue';
230
287
  import {
231
288
  ElButton as Button,
@@ -233,6 +290,8 @@ import {
233
290
  ElIcon as Icon,
234
291
  ElInput as Input,
235
292
  ElPopover as Popover,
293
+ ElRadio as Radio,
294
+ ElRadioGroup as RadioGroup,
236
295
  ElRow as Row,
237
296
  ElSwitch as Switch,
238
297
  } from "element-plus";
@@ -248,6 +307,8 @@ export default {
248
307
  Icon,
249
308
  Input,
250
309
  Popover,
310
+ Radio,
311
+ RadioGroup,
251
312
  Row,
252
313
  Switch,
253
314
  MapSvgIcon,
@@ -306,7 +367,7 @@ export default {
306
367
  let flag = !(value === true);
307
368
  if (flag !== this.independent)
308
369
  this.independent = flag;
309
- }
370
+ },
310
371
  },
311
372
  data: function() {
312
373
  return {
@@ -317,23 +378,32 @@ export default {
317
378
  failedSearch: undefined,
318
379
  activeViewRef: undefined,
319
380
  permalinkRef: undefined,
381
+ globalSettingRef: undefined,
320
382
  ElIconCopyDocument: shallowRef(ElIconCopyDocument),
383
+ globalSettings: {},
321
384
  }
322
385
  },
323
386
  methods: {
324
- updateGlobalSettings: function(globalSettings) {
325
- this.settingsStore.updateGlobalSettings(globalSettings)
387
+ loadGlobalSettings: function () {
388
+ this.globalSettings = {
389
+ ...this.globalSettings,
390
+ ...this.settingsStore.globalSettings
391
+ };
326
392
  },
327
- setDisplayMarkerFlag: function(displayMarker) {
328
- if (displayMarker !== undefined) {
329
- let incomingSettings = { displayMarker };
330
- const updatedSettings = this.settingsStore.getUpdatedGlobalSettingsKey(incomingSettings);
331
- if (updatedSettings.includes('displayMarker')) {
332
- this.settingsStore.updateGlobalSettings(incomingSettings);
333
- EventBus.emit("markerUpdate");
334
- }
393
+ /**
394
+ updateGlobalSettings: function() {
395
+ const updatedSettings = this.settingsStore.getUpdatedGlobalSettingsKey(this.globalSettings);
396
+ this.settingsStore.updateGlobalSettings(this.globalSettings);
397
+
398
+ // display marker update
399
+ if (updatedSettings.includes('displayMarkers')) {
400
+ EventBus.emit('markerUpdate');
401
+ }
402
+ if (updatedSettings.includes('interactiveMode')) {
403
+ EventBus.emit('modeUpdate', this.globalSettings.interactiveMode);
335
404
  }
336
405
  },
406
+ */
337
407
  titleClicked: function(id) {
338
408
  this.$emit("titleClicked", id);
339
409
  },
@@ -387,8 +457,11 @@ export default {
387
457
  mounted: function () {
388
458
  this.activeViewRef = shallowRef(this.$refs.activeViewRef);
389
459
  this.permalinkRef = shallowRef(this.$refs.permalinkRef);
460
+ this.globalSettingRef = shallowRef(this.$refs.globalSettingRef);
390
461
 
391
462
  document.addEventListener('fullscreenchange', this.onFullscreenEsc);
463
+
464
+ this.loadGlobalSettings();
392
465
  },
393
466
  unmounted: function () {
394
467
  document.removeEventListener('fullscreenchange', this.onFullscreenEsc);
@@ -515,7 +588,8 @@ export default {
515
588
  padding-top:7px;
516
589
  }
517
590
 
518
- :deep(.view-icon-popover.el-popper) {
591
+ :deep(.view-icon-popover.el-popper),
592
+ :deep(.setting-popover.el-popper ) {
519
593
  border: 1px solid $app-primary-color;
520
594
  box-shadow: 0px 2px 12px 0px rgba(0, 0, 0, 0.06);
521
595
  padding: 4px 8px 12px 8px;
@@ -563,5 +637,4 @@ export default {
563
637
  top: 0px;
564
638
  scale: 0.7;
565
639
  }
566
-
567
- </style>
640
+ </style>
@@ -100,15 +100,12 @@ export default {
100
100
  default: true,
101
101
  },
102
102
  /**
103
- * The options to highlight features and paths on maps and scaffolds
104
- * when hover over the dataset cards on sidebar.
103
+ * All panes including primary default viewer will be closable
104
+ * when this is set to true.
105
105
  */
106
- hoverHighlightOptions: {
107
- type: Object,
108
- default: () => ({
109
- highlightConnectedPaths: false,
110
- highlightDOIPaths: false,
111
- }),
106
+ allClosable: {
107
+ type: Boolean,
108
+ default: true,
112
109
  },
113
110
  },
114
111
  data: function () {
@@ -270,7 +267,7 @@ export default {
270
267
  // biologicalSex - biological sex to be displayed (PATO)
271
268
  // organ - Target organ, flatmap will conduct a local search
272
269
  // using this
273
-
270
+
274
271
  //Look for the key in the available species array,
275
272
  //it will use the taxo and biologicalSex as hints.
276
273
  const key = findSpeciesKey(state);
@@ -360,15 +357,16 @@ export default {
360
357
  beforeMount: function() {
361
358
  if (this.options) {
362
359
  // Split options prop up to commit to the store
363
- this.options.sparcApi ? this.settingsStore.updateSparcAPI(this.options.sparcApi) : null
364
- this.options.algoliaIndex ? this.settingsStore.updateAlgoliaIndex(this.options.algoliaIndex) : null
365
- this.options.algoliaKey ? this.settingsStore.updateAlgoliaKey(this.options.algoliaKey) : null
366
- this.options.algoliaId ? this.settingsStore.updateAlgoliaId(this.options.algoliaId) : null
367
- this.options.pennsieveApi ? this.settingsStore.updatePennsieveApi(this.options.pennsieveApi) : null
368
- this.options.flatmapAPI ? this.settingsStore.updateFlatmapAPI(this.options.flatmapAPI) : null,
369
- this.options.nlLinkPrefix ? this.settingsStore.updateNLLinkPrefix(this.options.nlLinkPrefix) : null
370
- this.options.rootUrl ? this.settingsStore.updateRootUrl(this.options.rootUrl) : null
360
+ this.options.sparcApi ? this.settingsStore.updateSparcAPI(this.options.sparcApi) : null;
361
+ this.options.algoliaIndex ? this.settingsStore.updateAlgoliaIndex(this.options.algoliaIndex) : null;
362
+ this.options.algoliaKey ? this.settingsStore.updateAlgoliaKey(this.options.algoliaKey) : null;
363
+ this.options.algoliaId ? this.settingsStore.updateAlgoliaId(this.options.algoliaId) : null;
364
+ this.options.pennsieveApi ? this.settingsStore.updatePennsieveApi(this.options.pennsieveApi) : null;
365
+ this.options.flatmapAPI ? this.settingsStore.updateFlatmapAPI(this.options.flatmapAPI) : null;
366
+ this.options.nlLinkPrefix ? this.settingsStore.updateNLLinkPrefix(this.options.nlLinkPrefix) : null;
367
+ this.options.rootUrl ? this.settingsStore.updateRootUrl(this.options.rootUrl) : null;
371
368
  }
369
+ this.settingsStore.updateAllClosable(this.allClosable);
372
370
  this.splitFlowStore?.reset();
373
371
  this.splitFlowStore?.getAvailableTerms(this.settingsStore.sparcApi);
374
372
  },
@@ -398,7 +396,6 @@ export default {
398
396
  this.settingsStore.updateUseHelpModeDialog(this.useHelpModeDialog);
399
397
  this.settingsStore.updateConnectivityInfoSidebar(this.connectivityInfoSidebar);
400
398
  this.settingsStore.updateAnnotationSidebar(this.annotationSidebar);
401
- this.settingsStore.updateHoverHighlightOptions(this.hoverHighlightOptions);
402
399
  }
403
400
  }
404
401