@abi-software/mapintegratedvuer 1.1.0-beta.5 → 1.1.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.
Files changed (31) hide show
  1. package/README.md +15 -2
  2. package/dist/{ContentMixin-C35Jowvp.js → ContentMixin-Belbk7R9.js} +97 -61
  3. package/dist/Flatmap-BEStr9DR.js +146 -0
  4. package/dist/{Iframe-fcNscihB.js → Iframe-CNeqS04g.js} +2 -2
  5. package/dist/{MultiFlatmap-BIT2tVyE.js → MultiFlatmap-CFF8nyw2.js} +81 -64
  6. package/dist/{Plot-B9xsWP2v.js → Plot-BpS4tvSe.js} +2 -2
  7. package/dist/{Scaffold-DYoxAJI0.js → Scaffold-BXY9_HO6.js} +10925 -10528
  8. package/dist/{Simulation-s1KOrb80.js → Simulation-Di2xaBxJ.js} +2 -2
  9. package/dist/{flatmapvuer-BM5z_95w.js → flatmapvuer-C67b_5lI.js} +11707 -11453
  10. package/dist/{index-DIFC-Q9x.js → index-CpppckRD.js} +4349 -4325
  11. package/dist/mapintegratedvuer.js +1 -1
  12. package/dist/mapintegratedvuer.umd.cjs +479 -479
  13. package/dist/style-CdEDV2B6.js +62 -0
  14. package/dist/style.css +1 -1
  15. package/package.json +7 -4
  16. package/src/App.vue +10 -1
  17. package/src/components/FlatmapContextCard.vue +22 -10
  18. package/src/components/MapContent.vue +20 -2
  19. package/src/components/SplitDialog.vue +4 -4
  20. package/src/components/SplitFlow.vue +6 -9
  21. package/src/components/viewers/Flatmap.vue +23 -5
  22. package/src/components/viewers/MultiFlatmap.vue +31 -11
  23. package/src/components/viewers/Scaffold.vue +17 -2
  24. package/src/components.d.ts +0 -1
  25. package/src/mixins/ContentMixin.js +72 -3
  26. package/src/mixins/DynamicMarkerMixin.js +44 -25
  27. package/src/services/tagging.js +3 -4
  28. package/src/stores/settings.js +5 -1
  29. package/src/stores/splitFlow.js +42 -30
  30. package/dist/Flatmap-9P71mP5D.js +0 -128
  31. package/dist/style-B-Ps72EF.js +0 -50
package/README.md CHANGED
@@ -139,12 +139,25 @@ yarn add @<your-npm-handle>/mapintegratedvuer@alpha
139
139
  yarn dev
140
140
  ```
141
141
 
142
- ## Documentation
142
+ ## API Documentation
143
143
 
144
- The documentation is developed with `vitepress` and `vuese`. Documentation pages are in the `docs` folder.
144
+ The API documentation is developed with `vitepress` and `vuese`. The API documentation pages are in the `docs` folder.
145
145
 
146
146
  ### To run in local development mode
147
147
  ```bash
148
148
  npm run docs:watch
149
149
  ```
150
150
  This will start the documentation server with `vitepress` on port `:5173` and watch the `FlatmapVuer` and `MultiFlatmapVuer` components changes.
151
+
152
+
153
+ ## The HelpModeDialog
154
+
155
+ The `HelpModeDialog` is used to show help tooltips individually and one by one. This is available on Flatmap, MultiFlatmap, and Scaffold views.
156
+ To use `HelpModeDialog`, set `useHelpModeDialog` to `true`. The default value is `false`.
157
+
158
+ ```HTML
159
+ <MapContent
160
+ ...
161
+ :useHelpModeDialog="true"
162
+ />
163
+ ```
@@ -1,6 +1,6 @@
1
- import { u as _, b as y, E as m, T as g } from "./index-DIFC-Q9x.js";
1
+ import { u as _, b as y, E as f, T as g } from "./index-CpppckRD.js";
2
2
  import { mapStores as w } from "pinia";
3
- const p = [
3
+ const u = [
4
4
  {
5
5
  id: "ilxtr:neuron-type-keast-13",
6
6
  centrelines: [
@@ -204,7 +204,7 @@ const p = [
204
204
  ]
205
205
  }
206
206
  ];
207
- function u(t, a, n, s, i) {
207
+ function p(t, a, n, s, i) {
208
208
  let e = {};
209
209
  if (e.dataset = n, e.scaffold = s, e.simulations = i, a ? e.title = a : e.title = t, e.description = "", e.actions = [], t)
210
210
  switch (t) {
@@ -300,7 +300,7 @@ function N(t, a, n, s, i) {
300
300
  };
301
301
  break;
302
302
  default:
303
- e = u(t, a, n, s, i);
303
+ e = p(t, a, n, s, i);
304
304
  break;
305
305
  }
306
306
  return e;
@@ -312,7 +312,7 @@ function E(t, a, n, s, i) {
312
312
  switch (t) {
313
313
  case "UBERON:0000948":
314
314
  case "UBERON:0002080":
315
- i ? e = u(t, a, n, s, i) : (e.title = "Heart", e.description = "", e.actions = {
315
+ i ? e = p(t, a, n, s, i) : (e.title = "Heart", e.description = "", e.actions = {
316
316
  search: {
317
317
  title: "Explore data",
318
318
  label: "Heart",
@@ -438,7 +438,7 @@ function E(t, a, n, s, i) {
438
438
  };
439
439
  break;
440
440
  default:
441
- e = u(t, a, n, s, i);
441
+ e = p(t, a, n, s, i);
442
442
  break;
443
443
  }
444
444
  return e;
@@ -491,7 +491,7 @@ function b(t, a, n, s, i) {
491
491
  };
492
492
  break;
493
493
  default:
494
- e = u(t, a, n, s, i);
494
+ e = p(t, a, n, s, i);
495
495
  break;
496
496
  }
497
497
  return e;
@@ -549,7 +549,7 @@ function S(t, a, n, s, i) {
549
549
  };
550
550
  break;
551
551
  default:
552
- e = u(t, a, n, s, i);
552
+ e = p(t, a, n, s, i);
553
553
  break;
554
554
  }
555
555
  return e;
@@ -566,7 +566,7 @@ function k(t, a, n, s, i, e) {
566
566
  case "NCBITaxon:10114":
567
567
  return E(t, n, s, i, e);
568
568
  default:
569
- return u(t, a, n, s, i);
569
+ return p(t, a, n, s, i);
570
570
  }
571
571
  }
572
572
  function v() {
@@ -580,20 +580,20 @@ function v() {
580
580
  { id: "UBERON:0002107", name: "Liver", type: "simulation" }
581
581
  ];
582
582
  }
583
- function B() {
583
+ function R() {
584
584
  return v();
585
585
  }
586
586
  function h(t) {
587
587
  if (t)
588
- for (let a = 0; a < p.length; a++) {
589
- if (p[a].id == t)
590
- return p[a].centrelines;
591
- if (p[a].centrelines.find((s) => s === t))
592
- return [p[a].id];
588
+ for (let a = 0; a < u.length; a++) {
589
+ if (u[a].id == t)
590
+ return u[a].centrelines;
591
+ if (u[a].centrelines.find((s) => s === t))
592
+ return [u[a].id];
593
593
  }
594
594
  return [];
595
595
  }
596
- function R(t) {
596
+ function L(t) {
597
597
  if (t) {
598
598
  const a = t.toLowerCase();
599
599
  if (a.includes("heart"))
@@ -608,19 +608,19 @@ function R(t) {
608
608
  return { id: "UBERON:0001255", name: "Bladder" };
609
609
  }
610
610
  }
611
- function L(t, a) {
611
+ function B(t, a) {
612
612
  if (t && t.resource) {
613
613
  let n = t.resource;
614
614
  Array.isArray(n) && n[0] && (n = n[0]);
615
- let s, i, e, r, l, d = n.taxonomy;
616
- if (n.data && n.data.id ? (s = n.data.id, i = n.data.id) : n.feature && (s = n.feature.models, i = n.feature.label, e = n.feature.dataset, r = n.feature.scaffold, l = n.feature.simulations), s || i) {
617
- let c = k(s, d, i, e, r, l);
618
- if (c && c.actions)
619
- return c.actions[a];
615
+ let s, i, e, o, c, d = n.taxonomy;
616
+ if (n.data && n.data.id ? (s = n.data.id, i = n.data.id) : n.feature && (s = n.feature.models, i = n.feature.label, e = n.feature.dataset, o = n.feature.scaffold, c = n.feature.simulations), s || i) {
617
+ let l = k(s, d, i, e, o, c);
618
+ if (l && l.actions)
619
+ return l.actions[a];
620
620
  }
621
621
  }
622
622
  }
623
- let f = 7, o = 5;
623
+ let m = 7, r = 5;
624
624
  const U = [
625
625
  {
626
626
  id: "UBERON:0000948",
@@ -796,79 +796,79 @@ const U = [
796
796
  {
797
797
  id: "UBERON:0001736",
798
798
  name: "Submandibular gland",
799
- showAtZoom: f,
799
+ showAtZoom: m,
800
800
  keyword: !0
801
801
  },
802
802
  {
803
803
  id: "UBERON:0001103",
804
804
  name: "Diaphragm",
805
- showAtZoom: o,
805
+ showAtZoom: r,
806
806
  keyword: !0
807
807
  },
808
808
  {
809
809
  id: "UBERON:0001160",
810
810
  name: "Fundus of stomach",
811
- showAtZoom: o,
811
+ showAtZoom: r,
812
812
  keyword: !0
813
813
  },
814
814
  {
815
815
  id: "UBERON:0000955",
816
816
  name: "Brain",
817
- showAtZoom: o,
817
+ showAtZoom: r,
818
818
  keyword: !0
819
819
  },
820
820
  {
821
821
  id: "UBERON:0003708",
822
822
  name: "Carotid sinus",
823
- showAtZoom: f,
823
+ showAtZoom: m,
824
824
  keyword: !0
825
825
  },
826
826
  {
827
827
  id: "UBERON:0002079",
828
828
  name: "Left cardiac atrium",
829
- showAtZoom: o,
829
+ showAtZoom: r,
830
830
  keyword: !0
831
831
  },
832
832
  {
833
833
  id: "ILX:0485722",
834
834
  name: "Nodose ganglion",
835
- showAtZoom: f,
835
+ showAtZoom: m,
836
836
  keyword: !0
837
837
  },
838
838
  {
839
839
  id: "UBERON:0002078",
840
840
  name: "Right cardiac atrium",
841
- showAtZoom: o,
841
+ showAtZoom: r,
842
842
  keyword: !0
843
843
  },
844
844
  {
845
845
  id: "UBERON:0002084",
846
846
  name: "Heart left ventricle",
847
- showAtZoom: o,
847
+ showAtZoom: r,
848
848
  keyword: !0
849
849
  },
850
850
  {
851
851
  id: "UBERON:0002080",
852
852
  name: "Heart right ventricle",
853
- showAtZoom: o,
853
+ showAtZoom: r,
854
854
  keyword: !0
855
855
  },
856
856
  {
857
857
  id: "UBERON:0001508",
858
858
  name: "Arch of Aorta",
859
- showAtZoom: o,
859
+ showAtZoom: r,
860
860
  keyword: !0
861
861
  },
862
862
  {
863
863
  id: "UBERON:0001738",
864
864
  name: "Thyroid cartilage",
865
- showAtZoom: o,
865
+ showAtZoom: r,
866
866
  keyword: !0
867
867
  },
868
868
  {
869
869
  id: "UBERON:0000388",
870
870
  name: "Epiglottis",
871
- showAtZoom: o,
871
+ showAtZoom: r,
872
872
  keyword: !0
873
873
  }
874
874
  ];
@@ -876,6 +876,7 @@ function A(t) {
876
876
  return t[0].toUpperCase() + t.substring(1);
877
877
  }
878
878
  const C = {
879
+ emits: ["flatmap-provenance-ready", "resource-selected", "species-changed"],
879
880
  props: {
880
881
  /**
881
882
  * Object containing information for
@@ -895,12 +896,15 @@ const C = {
895
896
  ...w(_, y),
896
897
  syncMode() {
897
898
  return this.splitFlowStore.syncMode;
899
+ },
900
+ useHelpModeDialog() {
901
+ return this.settingsStore.useHelpModeDialog;
898
902
  }
899
903
  },
900
904
  mounted: function() {
901
- m.on("startHelp", () => {
905
+ f.on("startHelp", () => {
902
906
  this.startHelp();
903
- });
907
+ }), this.multiflatmapRef = this.$refs.multiflatmap, this.flatmapRef = this.$refs.flatmap, this.scaffoldRef = this.$refs.scaffold;
904
908
  },
905
909
  methods: {
906
910
  toggleSyncMode: function() {
@@ -908,7 +912,7 @@ const C = {
908
912
  getState: function() {
909
913
  },
910
914
  openMap: function(t) {
911
- t === "SYNC" ? (this.toggleSyncMode(), this.trackOpenMap("toggle_map_sync_mode")) : (m.emit("OpenNewMap", t), this.trackOpenMap(`open_new_${t}_map`));
915
+ t === "SYNC" ? (this.toggleSyncMode(), this.trackOpenMap("toggle_map_sync_mode")) : (f.emit("OpenNewMap", t), this.trackOpenMap(`open_new_${t}_map`));
912
916
  },
913
917
  trackOpenMap: function(t) {
914
918
  g.sendEvent({
@@ -936,11 +940,11 @@ const C = {
936
940
  */
937
941
  resourceSelected: function(t, a, n) {
938
942
  if (this.resourceHasAction(a)) {
939
- m.emit("PopoverActionClick", a);
943
+ f.emit("PopoverActionClick", a);
940
944
  return;
941
945
  }
942
946
  let s, i = "none", e = !1;
943
- const r = {
947
+ const o = {
944
948
  paneIndex: this.entry.id,
945
949
  type: t,
946
950
  resource: a,
@@ -948,10 +952,10 @@ const C = {
948
952
  eventType: void 0
949
953
  };
950
954
  if (t == "MultiFlatmap" || t == "Flatmap")
951
- if (r.internalName = this.idNamePair[a.feature.models], a.eventType == "click")
952
- if (r.eventType = "selected", a.feature.type == "marker") {
953
- let l = this.idNamePair[a.feature.models], d = U.filter(
954
- (c) => c.id === a.feature.models
955
+ if (o.internalName = this.idNamePair[a.feature.models], a.eventType == "click")
956
+ if (o.eventType = "selected", a.feature.type == "marker") {
957
+ let c = this.idNamePair[a.feature.models], d = U.filter(
958
+ (l) => l.id === a.feature.models
955
959
  );
956
960
  this.settingsStore.isFeaturedMarkerIdentifier(
957
961
  a.feature.id
@@ -961,27 +965,27 @@ const C = {
961
965
  a.feature.id
962
966
  ),
963
967
  featuredDataset: !0
964
- } : d.filter((c) => c.keyword).length > 0 ? s = {
968
+ } : d.filter((l) => l.keyword).length > 0 ? s = {
965
969
  type: "Search",
966
970
  term: "http://purl.obolibrary.org/obo/" + a.feature.models.replace(":", "_")
967
971
  } : s = {
968
972
  type: "Facet",
969
- facet: l,
973
+ facet: c,
970
974
  facetPropPath: "anatomy.organ.category.name",
971
975
  term: "Anatomical structure"
972
976
  }, e = !0, t == "MultiFlatmap" && this.$refs.multiflatmap.getCurrentFlatmap().mapImp.clearSearchResults();
973
977
  } else
974
978
  a.feature.type == "feature" && (this.syncMode ? e = !0 : i = "scaffold");
975
979
  else
976
- a.eventType == "mouseenter" && (r.eventType = "highlighted", e = !0);
980
+ a.eventType == "mouseenter" && (o.eventType = "highlighted", e = !0);
977
981
  else
978
- t == "Scaffold" && (a && a[0] && (r.internalName = a[0].data.id, a[0].data.lastActionOnMarker === !0 && (s = {
982
+ t == "Scaffold" && (a && a[0] && (o.internalName = a[0].data.id, a[0].data.lastActionOnMarker === !0 && (s = {
979
983
  type: "Facet",
980
984
  facet: A(a[0].data.id),
981
985
  facetPropPath: "anatomy.organ.category.name",
982
986
  term: "Anatomical structure"
983
- })), r.eventType = "selected", e = !0, i = "search");
984
- s === void 0 && n && (s = L(r, i)), s && m.emit("PopoverActionClick", s), e && this.$emit("resource-selected", r);
987
+ })), o.eventType = "selected", e = !0, i = "search");
988
+ s === void 0 && n && (s = B(o, i)), s && f.emit("PopoverActionClick", s), e && this.$emit("resource-selected", o);
985
989
  },
986
990
  resourceHasAction: function(t) {
987
991
  return t.type === "URL" || t.type === "Search" || t.type === "Neuron Search" || t.type == "Facet" || t.type == "Facets";
@@ -1010,7 +1014,7 @@ const C = {
1010
1014
  if (e.length > 0)
1011
1015
  return e;
1012
1016
  }
1013
- let i = R(a);
1017
+ let i = L(a);
1014
1018
  if (i)
1015
1019
  return i;
1016
1020
  if (n && t.eventType === "selected")
@@ -1045,10 +1049,10 @@ const C = {
1045
1049
  }
1046
1050
  let e;
1047
1051
  try {
1048
- let r = 0, l = !1;
1049
- for (; !l && r < n.organisms.subject.length; ) {
1050
- const d = n.organisms.subject[r];
1051
- d.species && (e = d.species.name, l = !0), r += 1;
1052
+ let o = 0, c = !1;
1053
+ for (; !c && o < n.organisms.subject.length; ) {
1054
+ const d = n.organisms.subject[o];
1055
+ d.species && (e = d.species.name, c = !0), o += 1;
1052
1056
  }
1053
1057
  } catch {
1054
1058
  e = void 0;
@@ -1110,7 +1114,7 @@ const C = {
1110
1114
  requestSynchronisedEvent: function() {
1111
1115
  },
1112
1116
  getAvailableTerms: function() {
1113
- let t = B();
1117
+ let t = R();
1114
1118
  for (let a = 0; a < t.length; a++)
1115
1119
  this.idNamePair[t[a].id] = t[a].name;
1116
1120
  if (this.apiLocation) {
@@ -1125,17 +1129,38 @@ const C = {
1125
1129
  });
1126
1130
  }
1127
1131
  },
1128
- flatmapMarkerUpdate() {
1132
+ flatmapMarkerZoomUpdate() {
1129
1133
  },
1130
1134
  onResize: function() {
1131
1135
  },
1132
1136
  startHelp: function() {
1133
- this.isInHelp === !1 && (this.helpMode = !0, window.addEventListener("mousedown", this.endHelp), this.isInHelp = !0);
1137
+ this.isInHelp === !1 && (this.helpMode = !0, window.addEventListener("mousedown", this.checkEndHelpMouseDown), this.isInHelp = !0);
1134
1138
  },
1135
1139
  endHelp: function() {
1136
- window.removeEventListener("mousedown", this.endHelp), this.helpMode = !1, setTimeout(() => {
1140
+ window.removeEventListener("mousedown", this.checkEndHelpMouseDown), this.helpMode = !1, setTimeout(() => {
1137
1141
  this.isInHelp = !1;
1138
1142
  }, 200);
1143
+ },
1144
+ onHelpModeShowNext: function() {
1145
+ this.helpModeActiveItem += 1;
1146
+ },
1147
+ onHelpModeLastItem: function(t) {
1148
+ t && (this.helpModeLastItem = !0);
1149
+ },
1150
+ onFinishHelpMode: function() {
1151
+ this.helpMode = !1, this.helpModeActiveItem = 0, this.helpModeLastItem = !1;
1152
+ },
1153
+ onTooltipShown: function() {
1154
+ this.$refs.multiflatmap && this.$refs.multiflatmapHelp && this.$refs.multiflatmapHelp.toggleTooltipHighlight(), this.$refs.flatmap && this.$refs.flatmapHelp && this.$refs.flatmapHelp.toggleTooltipHighlight(), this.$refs.scaffold && this.$refs.scaffoldHelp && this.$refs.scaffoldHelp.toggleTooltipHighlight();
1155
+ },
1156
+ onMapTooltipShown: function() {
1157
+ this.$refs.multiflatmap && this.$refs.multiflatmapHelp && this.$refs.multiflatmapHelp.toggleTooltipPinHighlight(), this.$refs.flatmap && this.$refs.flatmapHelp && this.$refs.flatmapHelp.toggleTooltipPinHighlight(), this.$refs.scaffold && this.$refs.scaffoldHelp && this.$refs.scaffoldHelp.toggleTooltipPinHighlight();
1158
+ },
1159
+ /**
1160
+ * End help-mode only if user clicks outside of help mode dialog.
1161
+ */
1162
+ checkEndHelpMouseDown: function(t) {
1163
+ t.target.closest(".help-mode-dialog") || this.endHelp();
1139
1164
  }
1140
1165
  },
1141
1166
  data: function() {
@@ -1149,6 +1174,11 @@ const C = {
1149
1174
  bottom: "0px"
1150
1175
  },
1151
1176
  helpMode: !1,
1177
+ helpModeActiveItem: 0,
1178
+ helpModeLastItem: !1,
1179
+ multiflatmapRef: null,
1180
+ flatmapRef: null,
1181
+ scaffoldRef: null,
1152
1182
  idNamePair: {},
1153
1183
  scaffoldLoaded: !1,
1154
1184
  isInHelp: !1
@@ -1156,8 +1186,14 @@ const C = {
1156
1186
  },
1157
1187
  created: function() {
1158
1188
  this.flatmapAPI = void 0, this.apiLocation = void 0, this.settingsStore.flatmapAPI && (this.flatmapAPI = this.settingsStore.flatmapAPI), this.settingsStore.sparcApi && (this.apiLocation = this.settingsStore.sparcApi);
1189
+ },
1190
+ watch: {
1191
+ helpMode: function(t) {
1192
+ t || (this.helpModeActiveItem = 0);
1193
+ }
1159
1194
  }
1160
1195
  };
1161
1196
  export {
1162
- C
1197
+ C,
1198
+ U as m
1163
1199
  };
@@ -0,0 +1,146 @@
1
+ import { U as h, B as c } from "./flatmapvuer-C67b_5lI.js";
2
+ import { _ as u, t as g, T as r, E as s } from "./index-CpppckRD.js";
3
+ import { C as M } from "./ContentMixin-Belbk7R9.js";
4
+ import { D as I } from "./style-CdEDV2B6.js";
5
+ import { resolveComponent as p, openBlock as i, createElementBlock as y, Fragment as v, createVNode as S, createBlock as F, createCommentVNode as w } from "vue";
6
+ const C = {
7
+ name: "Flatmap",
8
+ mixins: [M, I],
9
+ components: {
10
+ FlatmapVuer: h,
11
+ HelpModeDialog: c
12
+ },
13
+ methods: {
14
+ getState: function() {
15
+ return this.$refs.flatmap.getState();
16
+ },
17
+ /**
18
+ * Perform a local search on this contentvuer
19
+ */
20
+ search: function(e) {
21
+ return this.$refs.flatmap.searchAndShowResult(e);
22
+ },
23
+ getFlatmapImp() {
24
+ var e;
25
+ return (e = this.$refs.flatmap) == null ? void 0 : e.mapImp;
26
+ },
27
+ flatmaprResourceSelected: function(e, t) {
28
+ if (this.resourceSelected(
29
+ e,
30
+ t,
31
+ this.$refs.flatmap.viewingMode === "Exploration"
32
+ ), t.eventType === "click" && t.feature.type === "feature") {
33
+ const o = {
34
+ label: t.label || "",
35
+ id: t.feature.id || "",
36
+ featureId: t.feature.featureId || "",
37
+ taxonomy: t.taxonomy || "",
38
+ resources: t.resource.join(", ")
39
+ }, a = g(o);
40
+ r.sendEvent({
41
+ event: "interaction_event",
42
+ event_name: "portal_maps_connectivity",
43
+ category: a,
44
+ location: e + " " + this.$refs.flatmap.viewingMode
45
+ });
46
+ }
47
+ },
48
+ flatmapReadyCall: function(e) {
49
+ let t = { id: this.entry.id, prov: this.getFlatmapImp().provenance };
50
+ s.emit("mapImpProv", t), this.$emit("flatmap-provenance-ready", t), this.getAvailableTerms(), this.entry.resource === "FunctionalConnectivity" && this.flatmapReadyForMarkerUpdates(e);
51
+ },
52
+ onPathwaySelectionChanged: function(e) {
53
+ const { label: t, property: o, checked: a, selectionsTitle: n } = e;
54
+ r.sendEvent({
55
+ event: "interaction_event",
56
+ event_name: "portal_maps_pathway_change",
57
+ category: t + " [" + o + "] " + a,
58
+ location: n
59
+ });
60
+ },
61
+ highlightFeatures: function(e) {
62
+ let t = e.name;
63
+ const o = this.$refs.flatmap.mapImp;
64
+ if (t) {
65
+ const a = o.search(t);
66
+ a.featureIds[0] && o.highlightFeatures([
67
+ o.modelForFeature(a.featureIds[0])
68
+ ]);
69
+ }
70
+ },
71
+ /**
72
+ * Append the list of suggested terms to suggestions
73
+ */
74
+ searchSuggestions: function(e, t) {
75
+ e && this.$refs.flatmap.mapImp && this.$refs.flatmap.mapImp.search(e).__featureIds.forEach((a) => {
76
+ const n = this.$refs.flatmap.mapImp.annotation(a);
77
+ n && n.label && t.push(n.label);
78
+ });
79
+ },
80
+ zoomToFeatures: function(e, t) {
81
+ let o = e.name;
82
+ const a = this.$refs.flatmap.mapImp;
83
+ if (o) {
84
+ const n = a.search(o);
85
+ if (n.featureIds.length) {
86
+ let l = a.modelForFeature(n.featureIds[0]);
87
+ l ? (t && a.selectFeatures(l), a.zoomToFeatures(l)) : a.clearSearchResults();
88
+ }
89
+ } else
90
+ a.clearSearchResults();
91
+ }
92
+ },
93
+ computed: {
94
+ facetSpecies() {
95
+ return this.settingsStore.facets.species;
96
+ }
97
+ },
98
+ mounted: function() {
99
+ this.getAvailableTerms(), s.on("markerUpdate", () => {
100
+ this.flatmapMarkerZoomUpdate(!0, void 0);
101
+ });
102
+ }
103
+ };
104
+ function T(e, t, o, a, n, l) {
105
+ const m = p("FlatmapVuer"), f = p("HelpModeDialog");
106
+ return i(), y(v, null, [
107
+ S(m, {
108
+ state: e.entry.state,
109
+ entry: e.entry.resource,
110
+ onResourceSelected: t[0] || (t[0] = (d) => l.flatmaprResourceSelected(e.entry.type, d)),
111
+ onPanZoomCallback: e.flatmapPanZoomCallback,
112
+ name: e.entry.resource,
113
+ style: { height: "100%", width: "100%" },
114
+ minZoom: e.entry.minZoom,
115
+ helpMode: e.helpMode,
116
+ helpModeActiveItem: e.helpModeActiveItem,
117
+ helpModeInitialIndex: -1,
118
+ helpModeDialog: e.useHelpModeDialog,
119
+ onHelpModeLastItem: e.onHelpModeLastItem,
120
+ onShownTooltip: e.onTooltipShown,
121
+ onShownMapTooltip: e.onMapTooltipShown,
122
+ pathControls: !0,
123
+ ref: "flatmap",
124
+ onReady: l.flatmapReadyCall,
125
+ displayMinimap: !1,
126
+ displayWarning: !0,
127
+ enableOpenMapUI: !0,
128
+ flatmapAPI: e.flatmapAPI,
129
+ sparcAPI: e.apiLocation,
130
+ onOpenMap: e.openMap,
131
+ onPathwaySelectionChanged: l.onPathwaySelectionChanged
132
+ }, null, 8, ["state", "entry", "onPanZoomCallback", "name", "minZoom", "helpMode", "helpModeActiveItem", "helpModeDialog", "onHelpModeLastItem", "onShownTooltip", "onShownMapTooltip", "onReady", "flatmapAPI", "sparcAPI", "onOpenMap", "onPathwaySelectionChanged"]),
133
+ e.helpMode && e.useHelpModeDialog ? (i(), F(f, {
134
+ key: 0,
135
+ ref: "flatmapHelp",
136
+ flatmapRef: e.flatmapRef,
137
+ lastItem: e.helpModeLastItem,
138
+ onShowNext: e.onHelpModeShowNext,
139
+ onFinishHelpMode: e.onFinishHelpMode
140
+ }, null, 8, ["flatmapRef", "lastItem", "onShowNext", "onFinishHelpMode"])) : w("", !0)
141
+ ], 64);
142
+ }
143
+ const $ = /* @__PURE__ */ u(C, [["render", T], ["__scopeId", "data-v-7a997b4c"]]);
144
+ export {
145
+ $ as default
146
+ };
@@ -1,6 +1,6 @@
1
- import { C as r } from "./ContentMixin-C35Jowvp.js";
1
+ import { C as r } from "./ContentMixin-Belbk7R9.js";
2
2
  import { openBlock as o, createElementBlock as t, createElementVNode as s } from "vue";
3
- import { _ as n } from "./index-DIFC-Q9x.js";
3
+ import { _ as n } from "./index-CpppckRD.js";
4
4
  const a = {
5
5
  name: "Iframe",
6
6
  mixins: [r]