@abi-software/map-side-bar 2.20.0 → 2.20.1-demo.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.
@@ -22840,14 +22840,41 @@ function jU(e, t, n, r, i, a) {
22840
22840
  d("div", AU, [m(h, { content: e.copyContent }, null, 8, ["content"])])
22841
22841
  ])])), [[g, e.loading]])], 512)], 512);
22842
22842
  }
22843
- var MU = /*#__PURE__*/ uS(bU, [["render", jU], ["__scopeId", "data-v-5541a37f"]]), NU = 12;
22844
- function PU() {
22843
+ var MU = /*#__PURE__*/ uS(bU, [["render", jU], ["__scopeId", "data-v-5541a37f"]]);
22844
+ //#endregion
22845
+ //#region src/utils/common.js
22846
+ function NU() {
22845
22847
  let e = /* @__PURE__ */ new Uint8Array(16);
22846
22848
  window.crypto.getRandomValues(e), e[6] = e[6] & 15 | 64, e[8] = e[8] & 63 | 128;
22847
22849
  let t = Array.from(e).map((e) => e.toString(16).padStart(2, "0")).join("");
22848
22850
  return `${t.slice(0, 8)}-${t.slice(8, 12)}-${t.slice(12, 16)}-${t.slice(16, 20)}-${t.slice(20)}`;
22849
22851
  }
22850
- var FU = {
22852
+ function PU(e) {
22853
+ if (!e) return "";
22854
+ let t = String(e);
22855
+ return t.charAt(0).toUpperCase() + t.slice(1);
22856
+ }
22857
+ function FU(e, { formatLines: t = !1 } = {}) {
22858
+ if (!e) return "";
22859
+ let n = String(e).replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/(https?:\/\/[^\s"<>[]+)/g, (e) => {
22860
+ let t = e.match(/^(.*?)([\].,;:!?]*)$/), n = t ? t[1] : e;
22861
+ return `<a href="${n}" target="_blank" rel="noopener noreferrer">${n}</a>${t ? t[2] : ""}`;
22862
+ }).replace(/\\n/g, "\n").replace(/\r\n/g, "\n").replace(/\r/g, "\n");
22863
+ return t ? n.split("\n").map((e) => `<div class="alert-line">${e.replace(/^\s*([A-Za-z][^:<]{0,120}:)/, "<strong>$1</strong>")}</div>`).join("\n") : n;
22864
+ }
22865
+ function IU(e, t) {
22866
+ e?.$nextTick(() => {
22867
+ let n = e?.$refs?.[t];
22868
+ n && n.scrollIntoView({
22869
+ behavior: "smooth",
22870
+ block: "start",
22871
+ inline: "nearest"
22872
+ });
22873
+ });
22874
+ }
22875
+ //#endregion
22876
+ //#region src/components/SearchHistory.vue
22877
+ var LU = 12, RU = {
22851
22878
  name: "SearchHistory",
22852
22879
  props: { localStorageKey: {
22853
22880
  type: String,
@@ -22892,7 +22919,7 @@ var FU = {
22892
22919
  saved: !1,
22893
22920
  label: n,
22894
22921
  longLabel: r,
22895
- id: PU(),
22922
+ id: NU(),
22896
22923
  updated: (/* @__PURE__ */ new Date()).getTime()
22897
22924
  };
22898
22925
  this.searchHistory.push(i), this.searchHistory = this.searchHistory.sort(this.sortSearchHistory), this.trimSearchHistory(), localStorage.setItem(this.localStorageKey, JSON.stringify(this.searchHistory));
@@ -22910,14 +22937,14 @@ var FU = {
22910
22937
  }), t.length && (this.searchHistory = this.searchHistory.filter((e) => !t.includes(e.id)));
22911
22938
  },
22912
22939
  trimSearchHistory: function() {
22913
- if (this.searchHistory.length > NU) {
22914
- let e = this.searchHistory.filter((e) => e.saved), t = this.searchHistory.filter((e) => !e.saved), n = NU - this.searchHistory.length;
22940
+ if (this.searchHistory.length > LU) {
22941
+ let e = this.searchHistory.filter((e) => e.saved), t = this.searchHistory.filter((e) => !e.saved), n = LU - this.searchHistory.length;
22915
22942
  this.searchHistory = [...e, ...t.slice(0, n)];
22916
22943
  }
22917
22944
  },
22918
22945
  updateSearchHistory: function() {
22919
22946
  this.searchHistory.forEach((e) => {
22920
- if (e.id ||= PU(), !e.label) {
22947
+ if (e.id ||= NU(), !e.label) {
22921
22948
  let { label: t, longLabel: n } = this.searchHistoryItemLabel(e.search, e.filters);
22922
22949
  e.label = t, e.longLabel = n;
22923
22950
  }
@@ -22925,8 +22952,8 @@ var FU = {
22925
22952
  }), this.searchHistory = this.searchHistory.sort(this.sortSearchHistory), this.removeDuplicateSearchHistory(), this.trimSearchHistory(), localStorage.setItem(this.localStorageKey, JSON.stringify(this.searchHistory));
22926
22953
  },
22927
22954
  getParentComponentName: function() {
22928
- let e = this.localStorageKey?.indexOf("connectivity") !== -1, t = this.localStorageKey?.indexOf("dataset") !== -1;
22929
- return e ? "connectivity" : t ? "dataset" : "";
22955
+ let e = this.localStorageKey?.indexOf("connectivity") !== -1, t = this.localStorageKey?.indexOf("dataset") !== -1, n = this.localStorageKey?.indexOf("cell-card") !== -1;
22956
+ return e ? "connectivity" : t ? "dataset" : n ? "cell_card" : "";
22930
22957
  },
22931
22958
  search: function(e) {
22932
22959
  this.$emit("search", e);
@@ -22966,22 +22993,22 @@ var FU = {
22966
22993
  });
22967
22994
  }
22968
22995
  }
22969
- }, IU = {
22996
+ }, zU = {
22970
22997
  key: 0,
22971
22998
  class: "history-container"
22972
- }, LU = {
22999
+ }, BU = {
22973
23000
  key: 0,
22974
23001
  class: "saved-search-history"
22975
- }, RU = { key: 1 }, zU = { class: "el-dropdown-select" }, BU = ["onClick"], VU = ["onClick"], HU = {
23002
+ }, VU = { key: 1 }, HU = { class: "el-dropdown-select" }, UU = ["onClick"], WU = ["onClick"], GU = {
22976
23003
  key: 0,
22977
23004
  viewBox: "0 0 24 24"
22978
- }, UU = {
23005
+ }, KU = {
22979
23006
  key: 1,
22980
23007
  viewBox: "0 0 24 24"
22981
- }, WU = { key: 0 }, GU = { key: 1 }, KU = { key: 2 };
22982
- function qU(e, n, r, i, a, o) {
23008
+ }, qU = { key: 0 }, JU = { key: 1 }, YU = { key: 2 };
23009
+ function XU(e, n, r, i, a, o) {
22983
23010
  let s = kx, f = Ug, h = Ee, g = zp, _ = Rg, v = Le, y = Kb, b = qb, x = Gb;
22984
- return a.searchHistory.length ? (L(), u("div", IU, [a.savedSearchHistory.length ? (L(), u("div", LU, [(L(!0), u(t, null, ie(a.savedSearchHistory, (e, n) => (L(), u(t, { key: e.id }, [n < 2 ? (L(), c(f, {
23011
+ return a.searchHistory.length ? (L(), u("div", zU, [a.savedSearchHistory.length ? (L(), u("div", BU, [(L(!0), u(t, null, ie(a.savedSearchHistory, (e, n) => (L(), u(t, { key: e.id }, [n < 2 ? (L(), c(f, {
22985
23012
  class: "search-tag",
22986
23013
  key: n,
22987
23014
  onClick: (t) => o.search(e),
@@ -23000,7 +23027,7 @@ function qU(e, n, r, i, a, o) {
23000
23027
  _: 2
23001
23028
  }, 1024)) : (L(), u(t, { key: 1 }, [p(U(e.label), 1)], 64))]),
23002
23029
  _: 2
23003
- }, 1032, ["onClick"])) : l("", !0)], 64))), 128))])) : (L(), u("div", RU, [...n[0] ||= [d("span", { class: "empty-saved-search" }, "No Saved Searches", -1)]])), m(x, {
23030
+ }, 1032, ["onClick"])) : l("", !0)], 64))), 128))])) : (L(), u("div", VU, [...n[0] ||= [d("span", { class: "empty-saved-search" }, "No Saved Searches", -1)]])), m(x, {
23004
23031
  trigger: "click",
23005
23032
  "hide-on-click": !1
23006
23033
  }, {
@@ -23017,14 +23044,14 @@ function qU(e, n, r, i, a, o) {
23017
23044
  reference: K(() => [d("span", {
23018
23045
  class: "dropdown-clickable-item",
23019
23046
  onClick: (t) => o.search(e)
23020
- }, U(e.label), 9, BU)]),
23047
+ }, U(e.label), 9, UU)]),
23021
23048
  default: K(() => [p(" " + U(e.longLabel), 1)]),
23022
23049
  _: 2
23023
23050
  }, 1024)) : (L(), u("span", {
23024
23051
  key: 1,
23025
23052
  class: "dropdown-clickable-item",
23026
23053
  onClick: (t) => o.search(e)
23027
- }, U(e.label), 9, VU))]), d("div", null, [m(s, {
23054
+ }, U(e.label), 9, WU))]), d("div", null, [m(s, {
23028
23055
  width: "auto",
23029
23056
  trigger: "hover",
23030
23057
  "show-after": 200,
@@ -23039,12 +23066,12 @@ function qU(e, n, r, i, a, o) {
23039
23066
  disabled: a.savedSearchHistory.length > 1 && !e.saved
23040
23067
  }, {
23041
23068
  default: K(() => [m(g, { color: "#8300BF" }, {
23042
- default: K(() => [e.saved ? (L(), u("svg", HU, [...n[2] ||= [d("path", { d: "m12 21.35-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54z" }, null, -1)]])) : (L(), u("svg", UU, [...n[3] ||= [d("path", { d: "M16.5 3c-1.74 0-3.41.81-4.5 2.09C10.91 3.81 9.24 3 7.5 3 4.42 3 2 5.42 2 8.5c0 3.78 3.4 6.86 8.55 11.54L12 21.35l1.45-1.32C18.6 15.36 22 12.28 22 8.5 22 5.42 19.58 3 16.5 3m-4.4 15.55-.1.1-.1-.1C7.14 14.24 4 11.39 4 8.5 4 6.5 5.5 5 7.5 5c1.54 0 3.04.99 3.57 2.36h1.87C13.46 5.99 14.96 5 16.5 5c2 0 3.5 1.5 3.5 3.5 0 2.89-3.14 5.74-7.9 10.05" }, null, -1)]]))]),
23069
+ default: K(() => [e.saved ? (L(), u("svg", GU, [...n[2] ||= [d("path", { d: "m12 21.35-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54z" }, null, -1)]])) : (L(), u("svg", KU, [...n[3] ||= [d("path", { d: "M16.5 3c-1.74 0-3.41.81-4.5 2.09C10.91 3.81 9.24 3 7.5 3 4.42 3 2 5.42 2 8.5c0 3.78 3.4 6.86 8.55 11.54L12 21.35l1.45-1.32C18.6 15.36 22 12.28 22 8.5 22 5.42 19.58 3 16.5 3m-4.4 15.55-.1.1-.1-.1C7.14 14.24 4 11.39 4 8.5 4 6.5 5.5 5 7.5 5c1.54 0 3.04.99 3.57 2.36h1.87C13.46 5.99 14.96 5 16.5 5c2 0 3.5 1.5 3.5 3.5 0 2.89-3.14 5.74-7.9 10.05" }, null, -1)]]))]),
23043
23070
  _: 2
23044
23071
  }, 1024)]),
23045
23072
  _: 2
23046
23073
  }, 1032, ["onClick", "disabled"])]),
23047
- default: K(() => [a.savedSearchHistory.length > 1 && !e.saved ? (L(), u("span", WU, " Limit 2: Please remove a saved search before adding another. ")) : e.saved ? (L(), u("span", GU, "Remove from saved searches.")) : (L(), u("span", KU, "Add up to two saved searches."))]),
23074
+ default: K(() => [a.savedSearchHistory.length > 1 && !e.saved ? (L(), u("span", qU, " Limit 2: Please remove a saved search before adding another. ")) : e.saved ? (L(), u("span", JU, "Remove from saved searches.")) : (L(), u("span", YU, "Add up to two saved searches."))]),
23048
23075
  _: 2
23049
23076
  }, 1024), m(s, {
23050
23077
  width: "auto",
@@ -23072,18 +23099,18 @@ function qU(e, n, r, i, a, o) {
23072
23099
  }, 1024))), 128))]),
23073
23100
  _: 1
23074
23101
  })]),
23075
- default: K(() => [d("span", zU, [n[1] ||= p(" Search history ", -1), m(g, { class: "el-icon--right" }, {
23102
+ default: K(() => [d("span", HU, [n[1] ||= p(" Search history ", -1), m(g, { class: "el-icon--right" }, {
23076
23103
  default: K(() => [m(h)]),
23077
23104
  _: 1
23078
23105
  })])]),
23079
23106
  _: 1
23080
23107
  })])) : l("", !0);
23081
23108
  }
23082
- var JU = /*#__PURE__*/ uS(FU, [["render", qU], ["__scopeId", "data-v-884a863c"]]), YU = (e, t) => {
23109
+ var ZU = /*#__PURE__*/ uS(RU, [["render", XU], ["__scopeId", "data-v-14c013b9"]]), QU = (e, t) => {
23083
23110
  let n = e.__vccOpts || e;
23084
23111
  for (let [e, r] of t) n[e] = r;
23085
23112
  return n;
23086
- }, XU = ["xlink:href"], ZU = /*#__PURE__*/ YU({
23113
+ }, $U = ["xlink:href"], eW = /*#__PURE__*/ QU({
23087
23114
  __name: "SvgIcon",
23088
23115
  props: {
23089
23116
  icon: {
@@ -23096,9 +23123,9 @@ var JU = /*#__PURE__*/ uS(FU, [["render", qU], ["__scopeId", "data-v-884a863c"]]
23096
23123
  }
23097
23124
  },
23098
23125
  setup(e) {
23099
- return (t, n) => (L(), u("svg", { class: D(["map-icon", { "map-icon-spin": e.spin }]) }, [d("use", { "xlink:href": `#${e.icon}` }, null, 8, XU)], 2));
23126
+ return (t, n) => (L(), u("svg", { class: D(["map-icon", { "map-icon-spin": e.spin }]) }, [d("use", { "xlink:href": `#${e.icon}` }, null, 8, $U)], 2));
23100
23127
  }
23101
- }, [["__scopeId", "data-v-e172d5ff"]]), QU = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>2horpanel</title>\n <g id=\"2horpanel\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-10-Copy-4\">\n <g id=\"Group-15-Copy\" fill=\"currentColor\">\n <circle id=\"Oval-Copy\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <text id=\"?\" font-family=\"Asap-Bold, Asap\" font-size=\"16\" font-weight=\"bold\">\n <tspan x=\"8.5\" y=\"18\">?</tspan>\n </text>\n </g>\n <rect id=\"Rectangle\" stroke=\"#FFFFFF\" x=\"5\" y=\"7\" width=\"14\" height=\"10\"></rect>\n <line x1=\"18.5\" y1=\"12\" x2=\"5.5\" y2=\"12\" id=\"Line-10\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n</svg>", $U = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>2vertpanel</title>\n <g id=\"2vertpanel\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-10-Copy-3\">\n <g id=\"Group-15-Copy\" fill=\"currentColor\">\n <circle id=\"Oval-Copy\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <text id=\"?\" font-family=\"Asap-Bold, Asap\" font-size=\"16\" font-weight=\"bold\">\n <tspan x=\"8.5\" y=\"18\">?</tspan>\n </text>\n </g>\n <rect id=\"Rectangle\" stroke=\"#FFFFFF\" x=\"5\" y=\"7\" width=\"14\" height=\"10\"></rect>\n <line x1=\"12\" y1=\"7.5\" x2=\"12\" y2=\"16.5\" id=\"Line-6\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n</svg>", eW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>3panel</title>\n <g id=\"3panel\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-10-Copy\">\n <g id=\"Group-15-Copy\" fill=\"currentColor\">\n <circle id=\"Oval-Copy\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <text id=\"?\" font-family=\"Asap-Bold, Asap\" font-size=\"16\" font-weight=\"bold\">\n <tspan x=\"8.5\" y=\"18\">?</tspan>\n </text>\n </g>\n <rect id=\"Rectangle\" stroke=\"#FFFFFF\" x=\"5\" y=\"7\" width=\"14\" height=\"10\"></rect>\n <line x1=\"11.5\" y1=\"7.5\" x2=\"11.5\" y2=\"16.5\" id=\"Line-6\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n <line x1=\"18.5\" y1=\"11.5\" x2=\"11.5\" y2=\"11.5\" id=\"Line-10\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n</svg>", tW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>4panel</title>\n <g id=\"4panel\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-10-Copy-2\">\n <g id=\"Group-15-Copy\" fill=\"currentColor\">\n <circle id=\"Oval-Copy\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <text id=\"?\" font-family=\"Asap-Bold, Asap\" font-size=\"16\" font-weight=\"bold\">\n <tspan x=\"8.5\" y=\"18\">?</tspan>\n </text>\n </g>\n <rect id=\"Rectangle\" stroke=\"#FFFFFF\" x=\"5\" y=\"7\" width=\"14\" height=\"10\"></rect>\n <line x1=\"12\" y1=\"7.5\" x2=\"12\" y2=\"16.5\" id=\"Line-6\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n <line x1=\"18.5\" y1=\"12\" x2=\"5.5\" y2=\"12\" id=\"Line-10\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n</svg>", nW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>2horpanel</title>\n <g id=\"2horpanel\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-10-Copy-4\">\n <g id=\"Group-15-Copy\" fill=\"currentColor\">\n <circle id=\"Oval-Copy\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <text id=\"?\" font-family=\"Asap-Bold, Asap\" font-size=\"16\" font-weight=\"bold\">\n <tspan x=\"8.5\" y=\"18\">?</tspan>\n </text>\n </g>\n <rect id=\"Rectangle\" stroke=\"#FFFFFF\" x=\"5\" y=\"7\" width=\"14\" height=\"10\"></rect>\n <line x1=\"18.5\" y1=\"12\" x2=\"5.5\" y2=\"12\" id=\"Line-10\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n <line x1=\"12\" y1=\"12.5\" x2=\"12\" y2=\"16.5\" id=\"Line-6\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n <line x1=\"14.5\" y1=\"12\" x2=\"14.5\" y2=\"7\" id=\"Line-6\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n <line x1=\"9.5\" y1=\"12\" x2=\"9.5\" y2=\"7\" id=\"Line-6\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n</svg>", rW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>2horpanel</title>\n <g id=\"2horpanel\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-10-Copy-4\">\n <g id=\"Group-15-Copy\" fill=\"currentColor\">\n <circle id=\"Oval-Copy\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <text id=\"?\" font-family=\"Asap-Bold, Asap\" font-size=\"16\" font-weight=\"bold\">\n <tspan x=\"8.5\" y=\"18\">?</tspan>\n </text>\n </g>\n <rect id=\"Rectangle\" stroke=\"#FFFFFF\" x=\"5\" y=\"7\" width=\"14\" height=\"10\"></rect>\n <line x1=\"18.5\" y1=\"12\" x2=\"5.5\" y2=\"12\" id=\"Line-10\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n <line x1=\"14.5\" y1=\"16\" x2=\"14.5\" y2=\"7\" id=\"Line-6\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n <line x1=\"9.5\" y1=\"16\" x2=\"9.5\" y2=\"7\" id=\"Line-6\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n</svg>", iW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>4panel</title>\n <g id=\"4panel\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-10-Copy-2\">\n <g id=\"Group-15-Copy\" fill=\"currentColor\">\n <circle id=\"Oval-Copy\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <text id=\"?\" font-family=\"Asap-Bold, Asap\" font-size=\"16\" font-weight=\"bold\">\n <tspan x=\"8.5\" y=\"18\">?</tspan>\n </text>\n </g>\n <rect id=\"Rectangle\" stroke=\"#FFFFFF\" x=\"5\" y=\"7\" width=\"14\" height=\"10\"></rect>\n <line x1=\"12\" y1=\"7.5\" x2=\"12\" y2=\"16.5\" id=\"Line-6\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n <line x1=\"18.5\" y1=\"10.5\" x2=\"5.5\" y2=\"10.5\" id=\"Line-10\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n <line x1=\"18.5\" y1=\"13.8\" x2=\"5.5\" y2=\"13.8\" id=\"Line-10\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n</svg>", aW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>changeBckgd</title>\n <g id=\"changeBckgd\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-5\">\n <circle id=\"Oval-Copy\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <rect id=\"Rectangle\" stroke=\"#FFFFFF\" x=\"7\" y=\"6\" width=\"10\" height=\"7\"></rect>\n <line x1=\"12\" y1=\"13.5\" x2=\"12\" y2=\"16.5\" id=\"Line-4\" stroke=\"#FFFFFF\" stroke-width=\"2\"></line>\n <line x1=\"7\" y1=\"16.5\" x2=\"17\" y2=\"16.5\" id=\"Line\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n</svg>", oW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>close no bk</title>\n <g id=\"close-no-bk\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\" stroke-linecap=\"square\">\n <g id=\"Group-13\" transform=\"translate(12.000000, 12.000000) rotate(-315.000000) translate(-12.000000, -12.000000) translate(5.000000, 5.000000)\" stroke=\"currentColor\" stroke-width=\"2\">\n <line x1=\"0\" y1=\"7\" x2=\"14\" y2=\"7\" id=\"Line-9\"></line>\n <line x1=\"7\" y1=\"0\" x2=\"7\" y2=\"14\" id=\"Line-9\"></line>\n </g>\n </g>\n</svg>\n", sW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>close</title>\n <g id=\"close\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-9\">\n <g id=\"Group-8\" fill=\"currentColor\">\n <circle id=\"Oval\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n </g>\n <g id=\"Group-13\" transform=\"translate(12.000000, 12.000000) rotate(-315.000000) translate(-12.000000, -12.000000) translate(5.000000, 5.000000)\" stroke=\"#FFFFFF\" stroke-linecap=\"square\" stroke-width=\"2\">\n <line x1=\"0\" y1=\"7\" x2=\"14\" y2=\"7\" id=\"Line-9\"></line>\n <line x1=\"7\" y1=\"0\" x2=\"7\" y2=\"14\" id=\"Line-9\"></line>\n </g>\n </g>\n </g>\n</svg>", cW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>closeFullScreen</title>\n <g id=\"closeFullScreen\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group\">\n <circle id=\"Oval\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <polyline id=\"Line-5\" stroke=\"#FFFFFF\" stroke-width=\"1.5\" stroke-linecap=\"square\" transform=\"translate(6.750000, 7.750000) rotate(-180.000000) translate(-6.750000, -7.750000) \" points=\"5 9.5 5 6 8.5 6\"></polyline>\n <polyline id=\"Line-5\" stroke=\"#FFFFFF\" stroke-width=\"1.5\" stroke-linecap=\"square\" transform=\"translate(17.250000, 15.750000) rotate(-360.000000) translate(-17.250000, -15.750000) \" points=\"15.5 17.5 15.5 14 19 14\"></polyline>\n <polyline id=\"Line-5\" stroke=\"#FFFFFF\" stroke-width=\"1.5\" stroke-linecap=\"square\" transform=\"translate(6.750000, 15.750000) scale(1, -1) rotate(-180.000000) translate(-6.750000, -15.750000) \" points=\"5 17.5 5 14 8.5 14\"></polyline>\n <polyline id=\"Line-5\" stroke=\"#FFFFFF\" stroke-width=\"1.5\" stroke-linecap=\"square\" transform=\"translate(17.250000, 7.750000) scale(1, -1) rotate(-360.000000) translate(-17.250000, -7.750000) \" points=\"15.5 9.5 15.5 6 19 6\"></polyline>\n </g>\n </g>\n</svg>", lW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 1024 1024\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>Comment</title>\n <g id=\"Comment\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <circle id=\"Oval\" fill=\"currentColor\" cx=\"512\" cy=\"512\" r=\"512\"></circle>\n <path fill=\"#FFFFFF\" transform=\"scale(0.75, 0.75) translate(165, 215)\"\n d=\"M736 504a56 56 0 1 1 0-112 56 56 0 0 1 0 112m-224 0a56 56 0 1 1 0-112 56 56 0 0 1 0 112m-224 0a56 56 0 1 1 0-112 56 56 0 0 1 0 112M128 128v640h192v160l224-160h352V128z\" />\n </g>\n</svg>", uW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 1024 1024\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>Connection</title>\n <g id=\"Connection\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <circle id=\"Oval\" fill=\"currentColor\" cx=\"512\" cy=\"512\" r=\"512\"></circle>\n <path fill=\"#FFFFFF\" transform=\"scale(0.75, 0.75) translate(175, 175)\"\n d=\"M640 384v64H448a128 128 0 0 0-128 128v128a128 128 0 0 0 128 128h320a128 128 0 0 0 128-128V576a128 128 0 0 0-64-110.848V394.88c74.56 26.368 128 97.472 128 181.056v128a192 192 0 0 1-192 192H448a192 192 0 0 1-192-192V576a192 192 0 0 1 192-192z\" />\n <path fill=\"#FFFFFF\" transform=\"scale(0.75, 0.75) translate(175, 175)\"\n d=\"M384 640v-64h192a128 128 0 0 0 128-128V320a128 128 0 0 0-128-128H256a128 128 0 0 0-128 128v128a128 128 0 0 0 64 110.848v70.272A192.064 192.064 0 0 1 64 448V320a192 192 0 0 1 192-192h320a192 192 0 0 1 192 192v128a192 192 0 0 1-192 192z\" />\n </g>\n</svg>", dW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>dock</title>\n <g id=\"dock\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-8-Copy-2\">\n <circle id=\"Oval\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <g id=\"Group-5\" transform=\"translate(2.972940, 3.512563)\" stroke=\"#FFFFFF\" stroke-linecap=\"square\" stroke-width=\"2\">\n <line x1=\"10.7289628\" y1=\"7.03553391\" x2=\"14.9716035\" y2=\"2.79289322\" id=\"Line\"></line>\n <g id=\"Group\" transform=\"translate(14.264497, 3.500000) rotate(-315.000000) translate(-14.264497, -3.500000) translate(11.264497, 2.000000)\">\n <line x1=\"2.27373675e-13\" y1=\"2.82842712\" x2=\"2.82842712\" y2=\"0\" id=\"Line\"></line>\n <line x1=\"3\" y1=\"0\" x2=\"5.82842712\" y2=\"2.82842712\" id=\"Line\"></line>\n </g>\n <line x1=\"7.53553391\" y1=\"10.1584369\" x2=\"3.29289322\" y2=\"14.4010776\" id=\"Line\"></line>\n <g id=\"Group\" transform=\"translate(4.000000, 13.693971) rotate(-135.000000) translate(-4.000000, -13.693971) translate(1.000000, 12.193971)\">\n <line x1=\"2.27373675e-13\" y1=\"2.82842712\" x2=\"2.82842712\" y2=\"0\" id=\"Line\"></line>\n <line x1=\"3\" y1=\"0\" x2=\"5.82842712\" y2=\"2.82842712\" id=\"Line\"></line>\n </g>\n </g>\n </g>\n </g>\n</svg>", fW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>drawLine</title>\n <g id=\"drawLine\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <circle id=\"Oval\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <path fill=\"#FFFFFF\" transform=\"translate(2 2.0625)\" d=\"m13.5 3.5c-1.4 0-2.5 1.1-2.5 2.5 0 .3 0 .6.2.9l-3.8 3.8c-.3-.1-.6-.2-.9-.2-1.4 0-2.5 1.1-2.5 2.5s1.1 2.5 2.5 2.5 2.5-1.1 2.5-2.5c0-.3 0-.6-.2-.9l3.8-3.8c.3.1.6.2.9.2 1.4 0 2.5-1.1 2.5-2.5s-1.1-2.5-2.5-2.5z\" />\n </g>\n</svg>", pW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>drawPoint</title>\n <g id=\"drawPoint\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <circle id=\"Oval\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <path fill=\"#FFFFFF\" transform=\"translate(1.875 2.5)\" d=\"m10 2c-3.3 0-6 2.7-6 6s6 9 6 9 6-5.7 6-9-2.7-6-6-6zm0 2c2.1 0 3.8 1.7 3.8 3.8 0 1.5-1.8 3.9-2.9 5.2h-1.7c-1.1-1.4-2.9-3.8-2.9-5.2-.1-2.1 1.6-3.8 3.7-3.8z\" />\n </g>\n</svg>", mW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>drawPolygon</title>\n <g id=\"drawPolygon\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <circle id=\"Oval\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <path fill=\"#FFFFFF\" transform=\"translate(1.875 1.625)\" d=\"m15 12.3v-4.6c.6-.3 1-1 1-1.7 0-1.1-.9-2-2-2-.7 0-1.4.4-1.7 1h-4.6c-.3-.6-1-1-1.7-1-1.1 0-2 .9-2 2 0 .7.4 1.4 1 1.7v4.6c-.6.3-1 1-1 1.7 0 1.1.9 2 2 2 .7 0 1.4-.4 1.7-1h4.6c.3.6 1 1 1.7 1 1.1 0 2-.9 2-2 0-.7-.4-1.4-1-1.7zm-8-.3v-4l1-1h4l1 1v4l-1 1h-4z\" />\n </g>\n</svg>", hW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>drawTrash</title>\n <g id=\"drawTrash\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <circle id=\"Oval\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <path fill=\"#FFFFFF\" transform=\"translate(2 1.5)\" d=\"M10,3.4 c-0.8,0-1.5,0.5-1.8,1.2H5l-1,1v1h12v-1l-1-1h-3.2C11.5,3.9,10.8,3.4,10,3.4z M5,8v7c0,1,1,2,2,2h6c1,0,2-1,2-2V8h-2v5.5h-1.5V8h-3 v5.5H7V8H5z\" />\n </g>\n</svg>", gW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>fitWindow</title>\n <g id=\"fitWindow\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-3\">\n <g id=\"Group-8-Copy\">\n <circle id=\"Oval\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <g id=\"Group\" transform=\"translate(5.000000, 6.000000)\" stroke=\"#FFFFFF\" stroke-linecap=\"square\" stroke-width=\"1.5\">\n <polyline id=\"Line-5\" points=\"0 3.5 0 0 4.80123862 0\"></polyline>\n <polyline id=\"Line-5\" transform=\"translate(2.400619, 9.750000) scale(1, -1) translate(-2.400619, -9.750000) \" points=\"0 11.5 0 8 4.80123862 8\"></polyline>\n <polyline id=\"Line-5\" transform=\"translate(11.600619, 1.750000) scale(1, -1) rotate(-180.000000) translate(-11.600619, -1.750000) \" points=\"9.2 3.5 9.2 0 14.0012386 0\"></polyline>\n </g>\n </g>\n <g id=\"Group-12\" transform=\"translate(9.000000, 8.500000)\" stroke=\"#FFFFFF\" stroke-width=\"2\">\n <circle id=\"Oval\" cx=\"3.5\" cy=\"3.5\" r=\"3.5\"></circle>\n <line x1=\"8.75\" y1=\"8.75\" x2=\"6.25\" y2=\"6.25\" id=\"Line-8\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n </g>\n</svg>", _W = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>fullScreen</title>\n <g id=\"fullScreen\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-8-Copy\">\n <circle id=\"Oval\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <g id=\"Group\" transform=\"translate(5.000000, 6.000000)\" stroke=\"#FFFFFF\" stroke-linecap=\"square\" stroke-width=\"1.5\">\n <polyline id=\"Line-5\" points=\"7.68274333e-14 3.5 7.68274333e-14 0 4.80123862 0\"></polyline>\n <polyline id=\"Line-5\" transform=\"translate(11.600619, 9.750000) rotate(-180.000000) translate(-11.600619, -9.750000) \" points=\"9.2 11.5 9.2 8 14.0012386 8\"></polyline>\n <polyline id=\"Line-5\" transform=\"translate(2.400619, 9.750000) scale(1, -1) translate(-2.400619, -9.750000) \" points=\"7.68274333e-14 11.5 7.68274333e-14 8 4.80123862 8\"></polyline>\n <polyline id=\"Line-5\" transform=\"translate(11.600619, 1.750000) scale(1, -1) rotate(-180.000000) translate(-11.600619, -1.750000) \" points=\"9.2 3.5 9.2 0 14.0012386 0\"></polyline>\n </g>\n </g>\n </g>\n</svg>", vW = "<svg id=\"icons\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><title>DataPortal-Icons</title><circle cx=\"12\" cy=\"15.824\" r=\"0.753\"/><path d=\"M12,14.256a.75.75,0,0,1-.75-.75v-1c0-.529.419-.818.862-1.124.623-.43,1.138-.83,1.138-1.376A1.209,1.209,0,0,0,12,8.756a1.252,1.252,0,0,0-1.25,1.25.75.75,0,0,1-1.5,0A2.753,2.753,0,0,1,12,7.256a2.721,2.721,0,0,1,2.75,2.75,3.3,3.3,0,0,1-1.786,2.61c-.079.055-.152.1-.214.147v.743A.75.75,0,0,1,12,14.256Z\"/><path d=\"M12,5a7,7,0,1,1-7,7,7.008,7.008,0,0,1,7-7m0-2a9,9,0,1,0,9,9,9,9,0,0,0-9-9Z\"/></svg>", yW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>magnifyingGlass</title>\n <g id=\"magnifyingGlass\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-19-Copy\">\n <g id=\"Group-13-Copy\">\n <circle id=\"Oval-Copy-2\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <g id=\"Group-12\" transform=\"translate(5.000000, 4.000000)\" stroke=\"#FFFFFF\" stroke-width=\"2\">\n <circle id=\"Oval\" cx=\"5.5\" cy=\"5.5\" r=\"5.5\"></circle>\n <line x1=\"13.5833333\" y1=\"13.5833333\" x2=\"9.41666667\" y2=\"9.41666667\" id=\"Line-8\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n </g>\n </g>\n</svg>", bW = "<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" version=\"1.0\" x=\"0px\" y=\"0px\" viewBox=\"0 0 960 1200\" enable-background=\"new 0 0 960 960\" xml:space=\"preserve\"><g><path fill=\"#000000\" d=\"M670,499.992c0,5.5-4.5,10-10,10H300c-5.516,0-10-4.5-10-10v-40c0-5.5,4.484-10,10-10h360 c5.5,0,10,4.5,10,10V499.992z\"/><path fill=\"#000000\" d=\"M530,649.992c0,5.5-4.5,10-10,10h-80c-5.516,0-10-4.5-10-10v-40c0-5.5,4.484-10,10-10h80 c5.5,0,10,4.5,10,10V649.992z\"/><path fill=\"#000000\" d=\"M780,350.008c0,5.5-4.5,10-10,10H190c-5.516,0-10-4.5-10-10v-40c0-5.516,4.484-10,10-10h580 c5.5,0,10,4.484,10,10V350.008z\"/></g><text x=\"0\" y=\"975\" fill=\"#000000\" font-size=\"5px\" font-weight=\"bold\" font-family=\"'Helvetica Neue', Helvetica, Arial-Unicode, Arial, Sans-serif\">Created by Wahyu Prihantoro</text><text x=\"0\" y=\"980\" fill=\"#000000\" font-size=\"5px\" font-weight=\"bold\" font-family=\"'Helvetica Neue', Helvetica, Arial-Unicode, Arial, Sans-serif\">from the Noun Project</text></svg>", xW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>openMap</title>\n <g id=\"openMap\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-5-Copy\" fill=\"currentColor\">\n <circle id=\"Oval-Copy\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n </g>\n <rect id=\"Rectangle\" stroke=\"#FFFFFF\" x=\"5\" y=\"10\" width=\"10\" height=\"7\"></rect>\n <rect id=\"Rectangle-Copy\" stroke=\"#FFFFFF\" x=\"9\" y=\"6\" width=\"10\" height=\"7\"></rect>\n </g>\n</svg>", SW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>Artboard Copy 6</title>\n <g id=\"Artboard-Copy-6\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-5-Copy\" fill=\"currentColor\">\n <circle id=\"Oval-Copy\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n </g>\n <line x1=\"9\" y1=\"8\" x2=\"9\" y2=\"16\" id=\"Line-6-Copy-2\" stroke=\"#FFFFFF\" stroke-width=\"2\" stroke-linecap=\"square\"></line>\n <line x1=\"15\" y1=\"8\" x2=\"15\" y2=\"16\" id=\"Line-6-Copy-3\" stroke=\"#FFFFFF\" stroke-width=\"2\" stroke-linecap=\"square\"></line>\n </g>\n</svg>", CW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>permalink</title>\n <g id=\"permalink\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <circle id=\"Oval\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <line x1=\"12.5\" y1=\"9\" x2=\"12.5\" y2=\"15\" id=\"Line-6-Copy-2\" stroke=\"#FFFFFF\" stroke-width=\"2\" stroke-linecap=\"square\" transform=\"translate(12.500000, 12.000000) rotate(45.000000) translate(-12.500000, -12.000000) \"></line>\n <path d=\"M17,13 L17,16.5 C17,18.9852814 14.9852814,21 12.5,21 C10.0147186,21 8,18.9852814 8,16.5 L8,13 L10,13 L10,16.5 C10,17.8807119 11.1192881,19 12.5,19 C13.8254834,19 14.9100387,17.9684641 14.9946823,16.6643757 L15,16.5 L15,13 L17,13 Z M12.5,3 C14.9852814,3 17,5.01471863 17,7.5 L17,11 L15,11 L15,7.5 C15,6.11928813 13.8807119,5 12.5,5 C11.1745166,5 10.0899613,6.03153594 10.0053177,7.33562431 L10,7.5 L10,11 L8,11 L8,7.5 C8,5.01471863 10.0147186,3 12.5,3 Z\" id=\"Combined-Shape\" fill=\"#FFFFFF\" transform=\"translate(12.500000, 12.000000) rotate(45.000000) translate(-12.500000, -12.000000) \"></path>\n </g>\n</svg>", wW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>play</title>\n <g id=\"play\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-9\">\n <g id=\"Group-5-Copy\" fill=\"currentColor\">\n <circle id=\"Oval-Copy\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n </g>\n <polygon id=\"Triangle\" fill=\"#FFFFFF\" class=\"st0\" transform=\"translate(13.000000, 11.500000) rotate(-270.000000) translate(-13.000000, -11.500000) \" points=\"13 8 19 15 7 15\"></polygon>\n </g>\n </g>\n</svg>", TW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>resetZoom</title>\n <g id=\"resetZoom\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-13-Copy-2\">\n <circle id=\"Oval-Copy-2\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <g id=\"Group-12\" transform=\"translate(5.000000, 4.000000)\" stroke=\"#FFFFFF\" stroke-width=\"2\">\n <circle id=\"Oval\" cx=\"5.5\" cy=\"5.5\" r=\"5.5\"></circle>\n <line x1=\"13.5833333\" y1=\"13.5833333\" x2=\"9.41666667\" y2=\"9.41666667\" id=\"Line-8\" stroke-linecap=\"square\"></line>\n </g>\n <g id=\"Group-4\" transform=\"translate(7.500000, 7.000000)\">\n <path d=\"M3,5 C3.83613696,5 4.57640148,4.58952131 5.03027306,3.95908443 C5.19488093,3.73044075 5.32181864,3.47286529 5.40199763,3.19544657 C5.46580562,2.97467142 5.5,2.74132897 5.5,2.5 C5.5,2.26693547 5.46810753,2.04131982 5.40844867,1.82727914 C5.31560782,1.49418996 5.15552386,1.18913241 4.9437468,0.927656488 C4.48541251,0.361762414 3.78495332,0 3,0 C1.61928813,0 0.5,1.11928813 0.5,2.5 C0.5,3.88071187 1.61928813,5 3,5 Z\" id=\"Oval\" stroke=\"#FFFFFF\"></path>\n <rect id=\"Rectangle\" fill=\"currentColor\" x=\"2.5\" y=\"2\" width=\"4\" height=\"1\"></rect>\n <line x1=\"5.5\" y1=\"1.5\" x2=\"5.5\" y2=\"0.5\" id=\"Line-7\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n <line x1=\"4.5\" y1=\"1.5\" x2=\"5.5\" y2=\"1.5\" id=\"Line-7\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n </g>\n</svg>", EW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>singlepanel</title>\n <g id=\"singlepanel\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-10-Copy-5\">\n <g id=\"Group-15-Copy\" fill=\"currentColor\">\n <circle id=\"Oval-Copy\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <text id=\"?\" font-family=\"Asap-Bold, Asap\" font-size=\"16\" font-weight=\"bold\">\n <tspan x=\"8.5\" y=\"18\">?</tspan>\n </text>\n </g>\n <rect id=\"Rectangle\" stroke=\"#FFFFFF\" x=\"5\" y=\"7\" width=\"14\" height=\"10\"></rect>\n </g>\n </g>\n</svg>", DW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>tooltips</title>\n <g id=\"tooltips\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-15\">\n <circle id=\"Oval-Copy\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <path d=\"M6,5 L18,5 C19.1045695,5 20,5.8954305 20,7 L20,15.5714286 C20,16.6759981 19.1045695,17.5714286 18,17.5714286 L15.4003471,17.5714286 L15.4003471,17.5714286 L12.8157442,20.271248 C12.4338253,20.6701921 11.8008107,20.6839938 11.4018666,20.3020749 C11.3997428,20.3000417 11.3976279,20.2979991 11.3955221,20.2959473 L8.59934577,17.5714286 L8.59934577,17.5714286 L6,17.5714286 C4.8954305,17.5714286 4,16.6759981 4,15.5714286 L4,7 C4,5.8954305 4.8954305,5 6,5 Z\" id=\"Rectangle\" fill=\"#FFFFFF\"></path>\n <text id=\"?\" font-family=\"Asap-Bold, Asap\" font-size=\"16\" font-weight=\"bold\" fill=\"currentColor\">\n <tspan x=\"8.5\" y=\"18\">?</tspan>\n </text>\n </g>\n </g>\n</svg>", OW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>undock</title>\n <g id=\"undock\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-9\">\n <circle id=\"Oval\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <g id=\"Group-5\" transform=\"translate(5.500000, 6.000000)\" stroke=\"#FFFFFF\" stroke-linecap=\"square\" stroke-width=\"2\">\n <line x1=\"0.728962778\" y1=\"12.0355339\" x2=\"4.97160346\" y2=\"7.79289322\" id=\"Line\"></line>\n <g id=\"Group\" transform=\"translate(4.264497, 8.500000) rotate(-315.000000) translate(-4.264497, -8.500000) translate(1.264497, 7.000000)\">\n <line x1=\"2.27373675e-13\" y1=\"2.82842712\" x2=\"2.82842712\" y2=\"0\" id=\"Line\"></line>\n <line x1=\"3\" y1=\"0\" x2=\"5.82842712\" y2=\"2.82842712\" id=\"Line\"></line>\n </g>\n <line x1=\"12.5355339\" y1=\"0.158436893\" x2=\"8.29289322\" y2=\"4.40107758\" id=\"Line\"></line>\n <g id=\"Group\" transform=\"translate(9.000000, 3.693971) rotate(-135.000000) translate(-9.000000, -3.693971) translate(6.000000, 2.193971)\">\n <line x1=\"2.27373675e-13\" y1=\"2.82842712\" x2=\"2.82842712\" y2=\"0\" id=\"Line\"></line>\n <line x1=\"3\" y1=\"0\" x2=\"5.82842712\" y2=\"2.82842712\" id=\"Line\"></line>\n </g>\n </g>\n </g>\n </g>\n</svg>", kW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>zoomIn</title>\n <g id=\"zoomIn\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-19-Copy\">\n <g id=\"Group-13-Copy\">\n <circle id=\"Oval-Copy-2\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <g id=\"Group-12\" transform=\"translate(5.000000, 4.000000)\" stroke=\"#FFFFFF\" stroke-width=\"2\">\n <circle id=\"Oval\" cx=\"5.5\" cy=\"5.5\" r=\"5.5\"></circle>\n <line x1=\"13.5833333\" y1=\"13.5833333\" x2=\"9.41666667\" y2=\"9.41666667\" id=\"Line-8\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n <line x1=\"9\" y1=\"9.5\" x2=\"12\" y2=\"9.5\" id=\"Line-6-Copy-2\" stroke=\"#FFFFFF\" stroke-width=\"2\" stroke-linecap=\"square\"></line>\n <line x1=\"9\" y1=\"9.5\" x2=\"12\" y2=\"9.5\" id=\"Line-6-Copy-2\" stroke=\"#FFFFFF\" stroke-width=\"2\" stroke-linecap=\"square\" transform=\"translate(10.500000, 9.500000) rotate(90.000000) translate(-10.500000, -9.500000) \"></line>\n </g>\n </g>\n</svg>", AW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>zoomOut</title>\n <g id=\"zoomOut\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-19-Copy-3\">\n <g id=\"Group-13-Copy\">\n <circle id=\"Oval-Copy-2\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <g id=\"Group-12\" transform=\"translate(5.000000, 4.000000)\" stroke=\"#FFFFFF\" stroke-width=\"2\">\n <circle id=\"Oval\" cx=\"5.5\" cy=\"5.5\" r=\"5.5\"></circle>\n <line x1=\"13.5833333\" y1=\"13.5833333\" x2=\"9.41666667\" y2=\"9.41666667\" id=\"Line-8\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n <line x1=\"9\" y1=\"9.5\" x2=\"12\" y2=\"9.5\" id=\"Line-6-Copy-2\" stroke=\"#FFFFFF\" stroke-width=\"2\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n</svg>", jW = (e, t, n, r) => {
23128
+ }, [["__scopeId", "data-v-e172d5ff"]]), tW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>2horpanel</title>\n <g id=\"2horpanel\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-10-Copy-4\">\n <g id=\"Group-15-Copy\" fill=\"currentColor\">\n <circle id=\"Oval-Copy\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <text id=\"?\" font-family=\"Asap-Bold, Asap\" font-size=\"16\" font-weight=\"bold\">\n <tspan x=\"8.5\" y=\"18\">?</tspan>\n </text>\n </g>\n <rect id=\"Rectangle\" stroke=\"#FFFFFF\" x=\"5\" y=\"7\" width=\"14\" height=\"10\"></rect>\n <line x1=\"18.5\" y1=\"12\" x2=\"5.5\" y2=\"12\" id=\"Line-10\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n</svg>", nW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>2vertpanel</title>\n <g id=\"2vertpanel\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-10-Copy-3\">\n <g id=\"Group-15-Copy\" fill=\"currentColor\">\n <circle id=\"Oval-Copy\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <text id=\"?\" font-family=\"Asap-Bold, Asap\" font-size=\"16\" font-weight=\"bold\">\n <tspan x=\"8.5\" y=\"18\">?</tspan>\n </text>\n </g>\n <rect id=\"Rectangle\" stroke=\"#FFFFFF\" x=\"5\" y=\"7\" width=\"14\" height=\"10\"></rect>\n <line x1=\"12\" y1=\"7.5\" x2=\"12\" y2=\"16.5\" id=\"Line-6\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n</svg>", rW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>3panel</title>\n <g id=\"3panel\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-10-Copy\">\n <g id=\"Group-15-Copy\" fill=\"currentColor\">\n <circle id=\"Oval-Copy\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <text id=\"?\" font-family=\"Asap-Bold, Asap\" font-size=\"16\" font-weight=\"bold\">\n <tspan x=\"8.5\" y=\"18\">?</tspan>\n </text>\n </g>\n <rect id=\"Rectangle\" stroke=\"#FFFFFF\" x=\"5\" y=\"7\" width=\"14\" height=\"10\"></rect>\n <line x1=\"11.5\" y1=\"7.5\" x2=\"11.5\" y2=\"16.5\" id=\"Line-6\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n <line x1=\"18.5\" y1=\"11.5\" x2=\"11.5\" y2=\"11.5\" id=\"Line-10\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n</svg>", iW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>4panel</title>\n <g id=\"4panel\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-10-Copy-2\">\n <g id=\"Group-15-Copy\" fill=\"currentColor\">\n <circle id=\"Oval-Copy\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <text id=\"?\" font-family=\"Asap-Bold, Asap\" font-size=\"16\" font-weight=\"bold\">\n <tspan x=\"8.5\" y=\"18\">?</tspan>\n </text>\n </g>\n <rect id=\"Rectangle\" stroke=\"#FFFFFF\" x=\"5\" y=\"7\" width=\"14\" height=\"10\"></rect>\n <line x1=\"12\" y1=\"7.5\" x2=\"12\" y2=\"16.5\" id=\"Line-6\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n <line x1=\"18.5\" y1=\"12\" x2=\"5.5\" y2=\"12\" id=\"Line-10\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n</svg>", aW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>2horpanel</title>\n <g id=\"2horpanel\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-10-Copy-4\">\n <g id=\"Group-15-Copy\" fill=\"currentColor\">\n <circle id=\"Oval-Copy\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <text id=\"?\" font-family=\"Asap-Bold, Asap\" font-size=\"16\" font-weight=\"bold\">\n <tspan x=\"8.5\" y=\"18\">?</tspan>\n </text>\n </g>\n <rect id=\"Rectangle\" stroke=\"#FFFFFF\" x=\"5\" y=\"7\" width=\"14\" height=\"10\"></rect>\n <line x1=\"18.5\" y1=\"12\" x2=\"5.5\" y2=\"12\" id=\"Line-10\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n <line x1=\"12\" y1=\"12.5\" x2=\"12\" y2=\"16.5\" id=\"Line-6\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n <line x1=\"14.5\" y1=\"12\" x2=\"14.5\" y2=\"7\" id=\"Line-6\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n <line x1=\"9.5\" y1=\"12\" x2=\"9.5\" y2=\"7\" id=\"Line-6\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n</svg>", oW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>2horpanel</title>\n <g id=\"2horpanel\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-10-Copy-4\">\n <g id=\"Group-15-Copy\" fill=\"currentColor\">\n <circle id=\"Oval-Copy\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <text id=\"?\" font-family=\"Asap-Bold, Asap\" font-size=\"16\" font-weight=\"bold\">\n <tspan x=\"8.5\" y=\"18\">?</tspan>\n </text>\n </g>\n <rect id=\"Rectangle\" stroke=\"#FFFFFF\" x=\"5\" y=\"7\" width=\"14\" height=\"10\"></rect>\n <line x1=\"18.5\" y1=\"12\" x2=\"5.5\" y2=\"12\" id=\"Line-10\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n <line x1=\"14.5\" y1=\"16\" x2=\"14.5\" y2=\"7\" id=\"Line-6\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n <line x1=\"9.5\" y1=\"16\" x2=\"9.5\" y2=\"7\" id=\"Line-6\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n</svg>", sW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>4panel</title>\n <g id=\"4panel\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-10-Copy-2\">\n <g id=\"Group-15-Copy\" fill=\"currentColor\">\n <circle id=\"Oval-Copy\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <text id=\"?\" font-family=\"Asap-Bold, Asap\" font-size=\"16\" font-weight=\"bold\">\n <tspan x=\"8.5\" y=\"18\">?</tspan>\n </text>\n </g>\n <rect id=\"Rectangle\" stroke=\"#FFFFFF\" x=\"5\" y=\"7\" width=\"14\" height=\"10\"></rect>\n <line x1=\"12\" y1=\"7.5\" x2=\"12\" y2=\"16.5\" id=\"Line-6\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n <line x1=\"18.5\" y1=\"10.5\" x2=\"5.5\" y2=\"10.5\" id=\"Line-10\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n <line x1=\"18.5\" y1=\"13.8\" x2=\"5.5\" y2=\"13.8\" id=\"Line-10\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n</svg>", cW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>changeBckgd</title>\n <g id=\"changeBckgd\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-5\">\n <circle id=\"Oval-Copy\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <rect id=\"Rectangle\" stroke=\"#FFFFFF\" x=\"7\" y=\"6\" width=\"10\" height=\"7\"></rect>\n <line x1=\"12\" y1=\"13.5\" x2=\"12\" y2=\"16.5\" id=\"Line-4\" stroke=\"#FFFFFF\" stroke-width=\"2\"></line>\n <line x1=\"7\" y1=\"16.5\" x2=\"17\" y2=\"16.5\" id=\"Line\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n</svg>", lW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>close no bk</title>\n <g id=\"close-no-bk\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\" stroke-linecap=\"square\">\n <g id=\"Group-13\" transform=\"translate(12.000000, 12.000000) rotate(-315.000000) translate(-12.000000, -12.000000) translate(5.000000, 5.000000)\" stroke=\"currentColor\" stroke-width=\"2\">\n <line x1=\"0\" y1=\"7\" x2=\"14\" y2=\"7\" id=\"Line-9\"></line>\n <line x1=\"7\" y1=\"0\" x2=\"7\" y2=\"14\" id=\"Line-9\"></line>\n </g>\n </g>\n</svg>\n", uW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>close</title>\n <g id=\"close\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-9\">\n <g id=\"Group-8\" fill=\"currentColor\">\n <circle id=\"Oval\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n </g>\n <g id=\"Group-13\" transform=\"translate(12.000000, 12.000000) rotate(-315.000000) translate(-12.000000, -12.000000) translate(5.000000, 5.000000)\" stroke=\"#FFFFFF\" stroke-linecap=\"square\" stroke-width=\"2\">\n <line x1=\"0\" y1=\"7\" x2=\"14\" y2=\"7\" id=\"Line-9\"></line>\n <line x1=\"7\" y1=\"0\" x2=\"7\" y2=\"14\" id=\"Line-9\"></line>\n </g>\n </g>\n </g>\n</svg>", dW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>closeFullScreen</title>\n <g id=\"closeFullScreen\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group\">\n <circle id=\"Oval\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <polyline id=\"Line-5\" stroke=\"#FFFFFF\" stroke-width=\"1.5\" stroke-linecap=\"square\" transform=\"translate(6.750000, 7.750000) rotate(-180.000000) translate(-6.750000, -7.750000) \" points=\"5 9.5 5 6 8.5 6\"></polyline>\n <polyline id=\"Line-5\" stroke=\"#FFFFFF\" stroke-width=\"1.5\" stroke-linecap=\"square\" transform=\"translate(17.250000, 15.750000) rotate(-360.000000) translate(-17.250000, -15.750000) \" points=\"15.5 17.5 15.5 14 19 14\"></polyline>\n <polyline id=\"Line-5\" stroke=\"#FFFFFF\" stroke-width=\"1.5\" stroke-linecap=\"square\" transform=\"translate(6.750000, 15.750000) scale(1, -1) rotate(-180.000000) translate(-6.750000, -15.750000) \" points=\"5 17.5 5 14 8.5 14\"></polyline>\n <polyline id=\"Line-5\" stroke=\"#FFFFFF\" stroke-width=\"1.5\" stroke-linecap=\"square\" transform=\"translate(17.250000, 7.750000) scale(1, -1) rotate(-360.000000) translate(-17.250000, -7.750000) \" points=\"15.5 9.5 15.5 6 19 6\"></polyline>\n </g>\n </g>\n</svg>", fW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 1024 1024\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>Comment</title>\n <g id=\"Comment\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <circle id=\"Oval\" fill=\"currentColor\" cx=\"512\" cy=\"512\" r=\"512\"></circle>\n <path fill=\"#FFFFFF\" transform=\"scale(0.75, 0.75) translate(165, 215)\"\n d=\"M736 504a56 56 0 1 1 0-112 56 56 0 0 1 0 112m-224 0a56 56 0 1 1 0-112 56 56 0 0 1 0 112m-224 0a56 56 0 1 1 0-112 56 56 0 0 1 0 112M128 128v640h192v160l224-160h352V128z\" />\n </g>\n</svg>", pW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 1024 1024\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>Connection</title>\n <g id=\"Connection\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <circle id=\"Oval\" fill=\"currentColor\" cx=\"512\" cy=\"512\" r=\"512\"></circle>\n <path fill=\"#FFFFFF\" transform=\"scale(0.75, 0.75) translate(175, 175)\"\n d=\"M640 384v64H448a128 128 0 0 0-128 128v128a128 128 0 0 0 128 128h320a128 128 0 0 0 128-128V576a128 128 0 0 0-64-110.848V394.88c74.56 26.368 128 97.472 128 181.056v128a192 192 0 0 1-192 192H448a192 192 0 0 1-192-192V576a192 192 0 0 1 192-192z\" />\n <path fill=\"#FFFFFF\" transform=\"scale(0.75, 0.75) translate(175, 175)\"\n d=\"M384 640v-64h192a128 128 0 0 0 128-128V320a128 128 0 0 0-128-128H256a128 128 0 0 0-128 128v128a128 128 0 0 0 64 110.848v70.272A192.064 192.064 0 0 1 64 448V320a192 192 0 0 1 192-192h320a192 192 0 0 1 192 192v128a192 192 0 0 1-192 192z\" />\n </g>\n</svg>", mW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>dock</title>\n <g id=\"dock\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-8-Copy-2\">\n <circle id=\"Oval\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <g id=\"Group-5\" transform=\"translate(2.972940, 3.512563)\" stroke=\"#FFFFFF\" stroke-linecap=\"square\" stroke-width=\"2\">\n <line x1=\"10.7289628\" y1=\"7.03553391\" x2=\"14.9716035\" y2=\"2.79289322\" id=\"Line\"></line>\n <g id=\"Group\" transform=\"translate(14.264497, 3.500000) rotate(-315.000000) translate(-14.264497, -3.500000) translate(11.264497, 2.000000)\">\n <line x1=\"2.27373675e-13\" y1=\"2.82842712\" x2=\"2.82842712\" y2=\"0\" id=\"Line\"></line>\n <line x1=\"3\" y1=\"0\" x2=\"5.82842712\" y2=\"2.82842712\" id=\"Line\"></line>\n </g>\n <line x1=\"7.53553391\" y1=\"10.1584369\" x2=\"3.29289322\" y2=\"14.4010776\" id=\"Line\"></line>\n <g id=\"Group\" transform=\"translate(4.000000, 13.693971) rotate(-135.000000) translate(-4.000000, -13.693971) translate(1.000000, 12.193971)\">\n <line x1=\"2.27373675e-13\" y1=\"2.82842712\" x2=\"2.82842712\" y2=\"0\" id=\"Line\"></line>\n <line x1=\"3\" y1=\"0\" x2=\"5.82842712\" y2=\"2.82842712\" id=\"Line\"></line>\n </g>\n </g>\n </g>\n </g>\n</svg>", hW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>drawLine</title>\n <g id=\"drawLine\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <circle id=\"Oval\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <path fill=\"#FFFFFF\" transform=\"translate(2 2.0625)\" d=\"m13.5 3.5c-1.4 0-2.5 1.1-2.5 2.5 0 .3 0 .6.2.9l-3.8 3.8c-.3-.1-.6-.2-.9-.2-1.4 0-2.5 1.1-2.5 2.5s1.1 2.5 2.5 2.5 2.5-1.1 2.5-2.5c0-.3 0-.6-.2-.9l3.8-3.8c.3.1.6.2.9.2 1.4 0 2.5-1.1 2.5-2.5s-1.1-2.5-2.5-2.5z\" />\n </g>\n</svg>", gW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>drawPoint</title>\n <g id=\"drawPoint\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <circle id=\"Oval\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <path fill=\"#FFFFFF\" transform=\"translate(1.875 2.5)\" d=\"m10 2c-3.3 0-6 2.7-6 6s6 9 6 9 6-5.7 6-9-2.7-6-6-6zm0 2c2.1 0 3.8 1.7 3.8 3.8 0 1.5-1.8 3.9-2.9 5.2h-1.7c-1.1-1.4-2.9-3.8-2.9-5.2-.1-2.1 1.6-3.8 3.7-3.8z\" />\n </g>\n</svg>", _W = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>drawPolygon</title>\n <g id=\"drawPolygon\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <circle id=\"Oval\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <path fill=\"#FFFFFF\" transform=\"translate(1.875 1.625)\" d=\"m15 12.3v-4.6c.6-.3 1-1 1-1.7 0-1.1-.9-2-2-2-.7 0-1.4.4-1.7 1h-4.6c-.3-.6-1-1-1.7-1-1.1 0-2 .9-2 2 0 .7.4 1.4 1 1.7v4.6c-.6.3-1 1-1 1.7 0 1.1.9 2 2 2 .7 0 1.4-.4 1.7-1h4.6c.3.6 1 1 1.7 1 1.1 0 2-.9 2-2 0-.7-.4-1.4-1-1.7zm-8-.3v-4l1-1h4l1 1v4l-1 1h-4z\" />\n </g>\n</svg>", vW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>drawTrash</title>\n <g id=\"drawTrash\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <circle id=\"Oval\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <path fill=\"#FFFFFF\" transform=\"translate(2 1.5)\" d=\"M10,3.4 c-0.8,0-1.5,0.5-1.8,1.2H5l-1,1v1h12v-1l-1-1h-3.2C11.5,3.9,10.8,3.4,10,3.4z M5,8v7c0,1,1,2,2,2h6c1,0,2-1,2-2V8h-2v5.5h-1.5V8h-3 v5.5H7V8H5z\" />\n </g>\n</svg>", yW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>fitWindow</title>\n <g id=\"fitWindow\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-3\">\n <g id=\"Group-8-Copy\">\n <circle id=\"Oval\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <g id=\"Group\" transform=\"translate(5.000000, 6.000000)\" stroke=\"#FFFFFF\" stroke-linecap=\"square\" stroke-width=\"1.5\">\n <polyline id=\"Line-5\" points=\"0 3.5 0 0 4.80123862 0\"></polyline>\n <polyline id=\"Line-5\" transform=\"translate(2.400619, 9.750000) scale(1, -1) translate(-2.400619, -9.750000) \" points=\"0 11.5 0 8 4.80123862 8\"></polyline>\n <polyline id=\"Line-5\" transform=\"translate(11.600619, 1.750000) scale(1, -1) rotate(-180.000000) translate(-11.600619, -1.750000) \" points=\"9.2 3.5 9.2 0 14.0012386 0\"></polyline>\n </g>\n </g>\n <g id=\"Group-12\" transform=\"translate(9.000000, 8.500000)\" stroke=\"#FFFFFF\" stroke-width=\"2\">\n <circle id=\"Oval\" cx=\"3.5\" cy=\"3.5\" r=\"3.5\"></circle>\n <line x1=\"8.75\" y1=\"8.75\" x2=\"6.25\" y2=\"6.25\" id=\"Line-8\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n </g>\n</svg>", bW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>fullScreen</title>\n <g id=\"fullScreen\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-8-Copy\">\n <circle id=\"Oval\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <g id=\"Group\" transform=\"translate(5.000000, 6.000000)\" stroke=\"#FFFFFF\" stroke-linecap=\"square\" stroke-width=\"1.5\">\n <polyline id=\"Line-5\" points=\"7.68274333e-14 3.5 7.68274333e-14 0 4.80123862 0\"></polyline>\n <polyline id=\"Line-5\" transform=\"translate(11.600619, 9.750000) rotate(-180.000000) translate(-11.600619, -9.750000) \" points=\"9.2 11.5 9.2 8 14.0012386 8\"></polyline>\n <polyline id=\"Line-5\" transform=\"translate(2.400619, 9.750000) scale(1, -1) translate(-2.400619, -9.750000) \" points=\"7.68274333e-14 11.5 7.68274333e-14 8 4.80123862 8\"></polyline>\n <polyline id=\"Line-5\" transform=\"translate(11.600619, 1.750000) scale(1, -1) rotate(-180.000000) translate(-11.600619, -1.750000) \" points=\"9.2 3.5 9.2 0 14.0012386 0\"></polyline>\n </g>\n </g>\n </g>\n</svg>", xW = "<svg id=\"icons\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><title>DataPortal-Icons</title><circle cx=\"12\" cy=\"15.824\" r=\"0.753\"/><path d=\"M12,14.256a.75.75,0,0,1-.75-.75v-1c0-.529.419-.818.862-1.124.623-.43,1.138-.83,1.138-1.376A1.209,1.209,0,0,0,12,8.756a1.252,1.252,0,0,0-1.25,1.25.75.75,0,0,1-1.5,0A2.753,2.753,0,0,1,12,7.256a2.721,2.721,0,0,1,2.75,2.75,3.3,3.3,0,0,1-1.786,2.61c-.079.055-.152.1-.214.147v.743A.75.75,0,0,1,12,14.256Z\"/><path d=\"M12,5a7,7,0,1,1-7,7,7.008,7.008,0,0,1,7-7m0-2a9,9,0,1,0,9,9,9,9,0,0,0-9-9Z\"/></svg>", SW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>magnifyingGlass</title>\n <g id=\"magnifyingGlass\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-19-Copy\">\n <g id=\"Group-13-Copy\">\n <circle id=\"Oval-Copy-2\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <g id=\"Group-12\" transform=\"translate(5.000000, 4.000000)\" stroke=\"#FFFFFF\" stroke-width=\"2\">\n <circle id=\"Oval\" cx=\"5.5\" cy=\"5.5\" r=\"5.5\"></circle>\n <line x1=\"13.5833333\" y1=\"13.5833333\" x2=\"9.41666667\" y2=\"9.41666667\" id=\"Line-8\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n </g>\n </g>\n</svg>", CW = "<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" version=\"1.0\" x=\"0px\" y=\"0px\" viewBox=\"0 0 960 1200\" enable-background=\"new 0 0 960 960\" xml:space=\"preserve\"><g><path fill=\"#000000\" d=\"M670,499.992c0,5.5-4.5,10-10,10H300c-5.516,0-10-4.5-10-10v-40c0-5.5,4.484-10,10-10h360 c5.5,0,10,4.5,10,10V499.992z\"/><path fill=\"#000000\" d=\"M530,649.992c0,5.5-4.5,10-10,10h-80c-5.516,0-10-4.5-10-10v-40c0-5.5,4.484-10,10-10h80 c5.5,0,10,4.5,10,10V649.992z\"/><path fill=\"#000000\" d=\"M780,350.008c0,5.5-4.5,10-10,10H190c-5.516,0-10-4.5-10-10v-40c0-5.516,4.484-10,10-10h580 c5.5,0,10,4.484,10,10V350.008z\"/></g><text x=\"0\" y=\"975\" fill=\"#000000\" font-size=\"5px\" font-weight=\"bold\" font-family=\"'Helvetica Neue', Helvetica, Arial-Unicode, Arial, Sans-serif\">Created by Wahyu Prihantoro</text><text x=\"0\" y=\"980\" fill=\"#000000\" font-size=\"5px\" font-weight=\"bold\" font-family=\"'Helvetica Neue', Helvetica, Arial-Unicode, Arial, Sans-serif\">from the Noun Project</text></svg>", wW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>openMap</title>\n <g id=\"openMap\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-5-Copy\" fill=\"currentColor\">\n <circle id=\"Oval-Copy\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n </g>\n <rect id=\"Rectangle\" stroke=\"#FFFFFF\" x=\"5\" y=\"10\" width=\"10\" height=\"7\"></rect>\n <rect id=\"Rectangle-Copy\" stroke=\"#FFFFFF\" x=\"9\" y=\"6\" width=\"10\" height=\"7\"></rect>\n </g>\n</svg>", TW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>Artboard Copy 6</title>\n <g id=\"Artboard-Copy-6\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-5-Copy\" fill=\"currentColor\">\n <circle id=\"Oval-Copy\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n </g>\n <line x1=\"9\" y1=\"8\" x2=\"9\" y2=\"16\" id=\"Line-6-Copy-2\" stroke=\"#FFFFFF\" stroke-width=\"2\" stroke-linecap=\"square\"></line>\n <line x1=\"15\" y1=\"8\" x2=\"15\" y2=\"16\" id=\"Line-6-Copy-3\" stroke=\"#FFFFFF\" stroke-width=\"2\" stroke-linecap=\"square\"></line>\n </g>\n</svg>", EW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>permalink</title>\n <g id=\"permalink\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <circle id=\"Oval\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <line x1=\"12.5\" y1=\"9\" x2=\"12.5\" y2=\"15\" id=\"Line-6-Copy-2\" stroke=\"#FFFFFF\" stroke-width=\"2\" stroke-linecap=\"square\" transform=\"translate(12.500000, 12.000000) rotate(45.000000) translate(-12.500000, -12.000000) \"></line>\n <path d=\"M17,13 L17,16.5 C17,18.9852814 14.9852814,21 12.5,21 C10.0147186,21 8,18.9852814 8,16.5 L8,13 L10,13 L10,16.5 C10,17.8807119 11.1192881,19 12.5,19 C13.8254834,19 14.9100387,17.9684641 14.9946823,16.6643757 L15,16.5 L15,13 L17,13 Z M12.5,3 C14.9852814,3 17,5.01471863 17,7.5 L17,11 L15,11 L15,7.5 C15,6.11928813 13.8807119,5 12.5,5 C11.1745166,5 10.0899613,6.03153594 10.0053177,7.33562431 L10,7.5 L10,11 L8,11 L8,7.5 C8,5.01471863 10.0147186,3 12.5,3 Z\" id=\"Combined-Shape\" fill=\"#FFFFFF\" transform=\"translate(12.500000, 12.000000) rotate(45.000000) translate(-12.500000, -12.000000) \"></path>\n </g>\n</svg>", DW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>play</title>\n <g id=\"play\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-9\">\n <g id=\"Group-5-Copy\" fill=\"currentColor\">\n <circle id=\"Oval-Copy\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n </g>\n <polygon id=\"Triangle\" fill=\"#FFFFFF\" class=\"st0\" transform=\"translate(13.000000, 11.500000) rotate(-270.000000) translate(-13.000000, -11.500000) \" points=\"13 8 19 15 7 15\"></polygon>\n </g>\n </g>\n</svg>", OW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>resetZoom</title>\n <g id=\"resetZoom\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-13-Copy-2\">\n <circle id=\"Oval-Copy-2\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <g id=\"Group-12\" transform=\"translate(5.000000, 4.000000)\" stroke=\"#FFFFFF\" stroke-width=\"2\">\n <circle id=\"Oval\" cx=\"5.5\" cy=\"5.5\" r=\"5.5\"></circle>\n <line x1=\"13.5833333\" y1=\"13.5833333\" x2=\"9.41666667\" y2=\"9.41666667\" id=\"Line-8\" stroke-linecap=\"square\"></line>\n </g>\n <g id=\"Group-4\" transform=\"translate(7.500000, 7.000000)\">\n <path d=\"M3,5 C3.83613696,5 4.57640148,4.58952131 5.03027306,3.95908443 C5.19488093,3.73044075 5.32181864,3.47286529 5.40199763,3.19544657 C5.46580562,2.97467142 5.5,2.74132897 5.5,2.5 C5.5,2.26693547 5.46810753,2.04131982 5.40844867,1.82727914 C5.31560782,1.49418996 5.15552386,1.18913241 4.9437468,0.927656488 C4.48541251,0.361762414 3.78495332,0 3,0 C1.61928813,0 0.5,1.11928813 0.5,2.5 C0.5,3.88071187 1.61928813,5 3,5 Z\" id=\"Oval\" stroke=\"#FFFFFF\"></path>\n <rect id=\"Rectangle\" fill=\"currentColor\" x=\"2.5\" y=\"2\" width=\"4\" height=\"1\"></rect>\n <line x1=\"5.5\" y1=\"1.5\" x2=\"5.5\" y2=\"0.5\" id=\"Line-7\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n <line x1=\"4.5\" y1=\"1.5\" x2=\"5.5\" y2=\"1.5\" id=\"Line-7\" stroke=\"#FFFFFF\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n </g>\n</svg>", kW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>singlepanel</title>\n <g id=\"singlepanel\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-10-Copy-5\">\n <g id=\"Group-15-Copy\" fill=\"currentColor\">\n <circle id=\"Oval-Copy\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <text id=\"?\" font-family=\"Asap-Bold, Asap\" font-size=\"16\" font-weight=\"bold\">\n <tspan x=\"8.5\" y=\"18\">?</tspan>\n </text>\n </g>\n <rect id=\"Rectangle\" stroke=\"#FFFFFF\" x=\"5\" y=\"7\" width=\"14\" height=\"10\"></rect>\n </g>\n </g>\n</svg>", AW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>tooltips</title>\n <g id=\"tooltips\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-15\">\n <circle id=\"Oval-Copy\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <path d=\"M6,5 L18,5 C19.1045695,5 20,5.8954305 20,7 L20,15.5714286 C20,16.6759981 19.1045695,17.5714286 18,17.5714286 L15.4003471,17.5714286 L15.4003471,17.5714286 L12.8157442,20.271248 C12.4338253,20.6701921 11.8008107,20.6839938 11.4018666,20.3020749 C11.3997428,20.3000417 11.3976279,20.2979991 11.3955221,20.2959473 L8.59934577,17.5714286 L8.59934577,17.5714286 L6,17.5714286 C4.8954305,17.5714286 4,16.6759981 4,15.5714286 L4,7 C4,5.8954305 4.8954305,5 6,5 Z\" id=\"Rectangle\" fill=\"#FFFFFF\"></path>\n <text id=\"?\" font-family=\"Asap-Bold, Asap\" font-size=\"16\" font-weight=\"bold\" fill=\"currentColor\">\n <tspan x=\"8.5\" y=\"18\">?</tspan>\n </text>\n </g>\n </g>\n</svg>", jW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>undock</title>\n <g id=\"undock\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-9\">\n <circle id=\"Oval\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <g id=\"Group-5\" transform=\"translate(5.500000, 6.000000)\" stroke=\"#FFFFFF\" stroke-linecap=\"square\" stroke-width=\"2\">\n <line x1=\"0.728962778\" y1=\"12.0355339\" x2=\"4.97160346\" y2=\"7.79289322\" id=\"Line\"></line>\n <g id=\"Group\" transform=\"translate(4.264497, 8.500000) rotate(-315.000000) translate(-4.264497, -8.500000) translate(1.264497, 7.000000)\">\n <line x1=\"2.27373675e-13\" y1=\"2.82842712\" x2=\"2.82842712\" y2=\"0\" id=\"Line\"></line>\n <line x1=\"3\" y1=\"0\" x2=\"5.82842712\" y2=\"2.82842712\" id=\"Line\"></line>\n </g>\n <line x1=\"12.5355339\" y1=\"0.158436893\" x2=\"8.29289322\" y2=\"4.40107758\" id=\"Line\"></line>\n <g id=\"Group\" transform=\"translate(9.000000, 3.693971) rotate(-135.000000) translate(-9.000000, -3.693971) translate(6.000000, 2.193971)\">\n <line x1=\"2.27373675e-13\" y1=\"2.82842712\" x2=\"2.82842712\" y2=\"0\" id=\"Line\"></line>\n <line x1=\"3\" y1=\"0\" x2=\"5.82842712\" y2=\"2.82842712\" id=\"Line\"></line>\n </g>\n </g>\n </g>\n </g>\n</svg>", MW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>zoomIn</title>\n <g id=\"zoomIn\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-19-Copy\">\n <g id=\"Group-13-Copy\">\n <circle id=\"Oval-Copy-2\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <g id=\"Group-12\" transform=\"translate(5.000000, 4.000000)\" stroke=\"#FFFFFF\" stroke-width=\"2\">\n <circle id=\"Oval\" cx=\"5.5\" cy=\"5.5\" r=\"5.5\"></circle>\n <line x1=\"13.5833333\" y1=\"13.5833333\" x2=\"9.41666667\" y2=\"9.41666667\" id=\"Line-8\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n <line x1=\"9\" y1=\"9.5\" x2=\"12\" y2=\"9.5\" id=\"Line-6-Copy-2\" stroke=\"#FFFFFF\" stroke-width=\"2\" stroke-linecap=\"square\"></line>\n <line x1=\"9\" y1=\"9.5\" x2=\"12\" y2=\"9.5\" id=\"Line-6-Copy-2\" stroke=\"#FFFFFF\" stroke-width=\"2\" stroke-linecap=\"square\" transform=\"translate(10.500000, 9.500000) rotate(90.000000) translate(-10.500000, -9.500000) \"></line>\n </g>\n </g>\n</svg>", NW = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>zoomOut</title>\n <g id=\"zoomOut\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group-19-Copy-3\">\n <g id=\"Group-13-Copy\">\n <circle id=\"Oval-Copy-2\" fill=\"currentColor\" cx=\"12\" cy=\"12\" r=\"12\"></circle>\n <g id=\"Group-12\" transform=\"translate(5.000000, 4.000000)\" stroke=\"#FFFFFF\" stroke-width=\"2\">\n <circle id=\"Oval\" cx=\"5.5\" cy=\"5.5\" r=\"5.5\"></circle>\n <line x1=\"13.5833333\" y1=\"13.5833333\" x2=\"9.41666667\" y2=\"9.41666667\" id=\"Line-8\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n <line x1=\"9\" y1=\"9.5\" x2=\"12\" y2=\"9.5\" id=\"Line-6-Copy-2\" stroke=\"#FFFFFF\" stroke-width=\"2\" stroke-linecap=\"square\"></line>\n </g>\n </g>\n</svg>", PW = (e, t, n, r) => {
23102
23129
  let i = [
23103
23130
  "title",
23104
23131
  "desc",
@@ -23117,103 +23144,103 @@ var JU = /*#__PURE__*/ uS(FU, [["render", qU], ["__scopeId", "data-v-884a863c"]]
23117
23144
  });
23118
23145
  let c = s.innerHTML;
23119
23146
  return s = null, c;
23120
- }, MW = (e) => [
23147
+ }, FW = (e) => [
23121
23148
  [/<\?xml[\s\S]*?>/gi, ""],
23122
23149
  [/<!doctype[\s\S]*?>/gi, ""],
23123
23150
  [/<!--.*-->/gi, ""],
23124
23151
  [/\<([A-Za-z]+)([^\>]*)\/\>/g, "<$1$2></$1>"],
23125
23152
  [/\s+/g, " "],
23126
23153
  [/\> \</g, "><"]
23127
- ].reduce((e, t) => "".replace.apply(e, t), e).trim(), NW = !0, PW = !0, FW = ["fill"], IW = /* #__PURE__ */ Object.assign({
23128
- "/assets/icons/2horpanel.svg": QU,
23129
- "/assets/icons/2vertpanel.svg": $U,
23130
- "/assets/icons/3panel.svg": eW,
23131
- "/assets/icons/4panel.svg": tW,
23132
- "/assets/icons/5panel.svg": nW,
23133
- "/assets/icons/6panel.svg": rW,
23134
- "/assets/icons/6panelVertical.svg": iW,
23135
- "/assets/icons/changeBckgd.svg": aW,
23136
- "/assets/icons/close-no-bk.svg": oW,
23137
- "/assets/icons/close.svg": sW,
23138
- "/assets/icons/closeFullScreen.svg": cW,
23139
- "/assets/icons/comment.svg": lW,
23140
- "/assets/icons/connection.svg": uW,
23141
- "/assets/icons/dock.svg": dW,
23142
- "/assets/icons/drawLine.svg": fW,
23143
- "/assets/icons/drawPoint.svg": pW,
23144
- "/assets/icons/drawPolygon.svg": mW,
23145
- "/assets/icons/drawTrash.svg": hW,
23146
- "/assets/icons/fitWindow.svg": gW,
23147
- "/assets/icons/fullScreen.svg": _W,
23148
- "/assets/icons/help.svg": vW,
23149
- "/assets/icons/magnifyingGlass.svg": yW,
23150
- "/assets/icons/noun-filter.svg": bW,
23151
- "/assets/icons/openMap.svg": xW,
23152
- "/assets/icons/pause.svg": SW,
23153
- "/assets/icons/permalink.svg": CW,
23154
- "/assets/icons/play.svg": wW,
23155
- "/assets/icons/resetZoom.svg": TW,
23156
- "/assets/icons/singlepanel.svg": EW,
23157
- "/assets/icons/tooltips.svg": DW,
23158
- "/assets/icons/undock.svg": OW,
23159
- "/assets/icons/zoomIn.svg": kW,
23160
- "/assets/icons/zoomOut.svg": AW
23154
+ ].reduce((e, t) => "".replace.apply(e, t), e).trim(), IW = !0, LW = !0, RW = ["fill"], zW = /* #__PURE__ */ Object.assign({
23155
+ "/assets/icons/2horpanel.svg": tW,
23156
+ "/assets/icons/2vertpanel.svg": nW,
23157
+ "/assets/icons/3panel.svg": rW,
23158
+ "/assets/icons/4panel.svg": iW,
23159
+ "/assets/icons/5panel.svg": aW,
23160
+ "/assets/icons/6panel.svg": oW,
23161
+ "/assets/icons/6panelVertical.svg": sW,
23162
+ "/assets/icons/changeBckgd.svg": cW,
23163
+ "/assets/icons/close-no-bk.svg": lW,
23164
+ "/assets/icons/close.svg": uW,
23165
+ "/assets/icons/closeFullScreen.svg": dW,
23166
+ "/assets/icons/comment.svg": fW,
23167
+ "/assets/icons/connection.svg": pW,
23168
+ "/assets/icons/dock.svg": mW,
23169
+ "/assets/icons/drawLine.svg": hW,
23170
+ "/assets/icons/drawPoint.svg": gW,
23171
+ "/assets/icons/drawPolygon.svg": _W,
23172
+ "/assets/icons/drawTrash.svg": vW,
23173
+ "/assets/icons/fitWindow.svg": yW,
23174
+ "/assets/icons/fullScreen.svg": bW,
23175
+ "/assets/icons/help.svg": xW,
23176
+ "/assets/icons/magnifyingGlass.svg": SW,
23177
+ "/assets/icons/noun-filter.svg": CW,
23178
+ "/assets/icons/openMap.svg": wW,
23179
+ "/assets/icons/pause.svg": TW,
23180
+ "/assets/icons/permalink.svg": EW,
23181
+ "/assets/icons/play.svg": DW,
23182
+ "/assets/icons/resetZoom.svg": OW,
23183
+ "/assets/icons/singlepanel.svg": kW,
23184
+ "/assets/icons/tooltips.svg": AW,
23185
+ "/assets/icons/undock.svg": jW,
23186
+ "/assets/icons/zoomIn.svg": MW,
23187
+ "/assets/icons/zoomOut.svg": NW
23161
23188
  });
23162
- Object.keys(IW).map((e) => {
23163
- let t = jW(IW[e], NW, PW, FW), n = e.replace(/^.+\/(\w+).svg$/, "$1");
23164
- return MW(t).replace("<svg", `<symbol id="${n}"`).replace("svg>", "symbol>");
23189
+ Object.keys(zW).map((e) => {
23190
+ let t = PW(zW[e], IW, LW, RW), n = e.replace(/^.+\/(\w+).svg$/, "$1");
23191
+ return FW(t).replace("<svg", `<symbol id="${n}"`).replace("svg>", "symbol>");
23165
23192
  }).join("\n");
23166
- var LW = !0, RW = !0, zW = /* #__PURE__ */ Object.assign({
23167
- "/assets/icons/2horpanel.svg": QU,
23168
- "/assets/icons/2vertpanel.svg": $U,
23169
- "/assets/icons/3panel.svg": eW,
23170
- "/assets/icons/4panel.svg": tW,
23171
- "/assets/icons/5panel.svg": nW,
23172
- "/assets/icons/6panel.svg": rW,
23173
- "/assets/icons/6panelVertical.svg": iW,
23174
- "/assets/icons/changeBckgd.svg": aW,
23175
- "/assets/icons/close-no-bk.svg": oW,
23176
- "/assets/icons/close.svg": sW,
23177
- "/assets/icons/closeFullScreen.svg": cW,
23178
- "/assets/icons/comment.svg": lW,
23179
- "/assets/icons/connection.svg": uW,
23180
- "/assets/icons/dock.svg": dW,
23181
- "/assets/icons/drawLine.svg": fW,
23182
- "/assets/icons/drawPoint.svg": pW,
23183
- "/assets/icons/drawPolygon.svg": mW,
23184
- "/assets/icons/drawTrash.svg": hW,
23185
- "/assets/icons/fitWindow.svg": gW,
23186
- "/assets/icons/fullScreen.svg": _W,
23187
- "/assets/icons/help.svg": vW,
23188
- "/assets/icons/magnifyingGlass.svg": yW,
23189
- "/assets/icons/noun-filter.svg": bW,
23190
- "/assets/icons/openMap.svg": xW,
23191
- "/assets/icons/pause.svg": SW,
23192
- "/assets/icons/permalink.svg": CW,
23193
- "/assets/icons/play.svg": wW,
23194
- "/assets/icons/resetZoom.svg": TW,
23195
- "/assets/icons/singlepanel.svg": EW,
23196
- "/assets/icons/tooltips.svg": DW,
23197
- "/assets/icons/undock.svg": OW,
23198
- "/assets/icons/zoomIn.svg": kW,
23199
- "/assets/icons/zoomOut.svg": AW
23200
- }), BW = {
23193
+ var BW = !0, VW = !0, HW = /* #__PURE__ */ Object.assign({
23194
+ "/assets/icons/2horpanel.svg": tW,
23195
+ "/assets/icons/2vertpanel.svg": nW,
23196
+ "/assets/icons/3panel.svg": rW,
23197
+ "/assets/icons/4panel.svg": iW,
23198
+ "/assets/icons/5panel.svg": aW,
23199
+ "/assets/icons/6panel.svg": oW,
23200
+ "/assets/icons/6panelVertical.svg": sW,
23201
+ "/assets/icons/changeBckgd.svg": cW,
23202
+ "/assets/icons/close-no-bk.svg": lW,
23203
+ "/assets/icons/close.svg": uW,
23204
+ "/assets/icons/closeFullScreen.svg": dW,
23205
+ "/assets/icons/comment.svg": fW,
23206
+ "/assets/icons/connection.svg": pW,
23207
+ "/assets/icons/dock.svg": mW,
23208
+ "/assets/icons/drawLine.svg": hW,
23209
+ "/assets/icons/drawPoint.svg": gW,
23210
+ "/assets/icons/drawPolygon.svg": _W,
23211
+ "/assets/icons/drawTrash.svg": vW,
23212
+ "/assets/icons/fitWindow.svg": yW,
23213
+ "/assets/icons/fullScreen.svg": bW,
23214
+ "/assets/icons/help.svg": xW,
23215
+ "/assets/icons/magnifyingGlass.svg": SW,
23216
+ "/assets/icons/noun-filter.svg": CW,
23217
+ "/assets/icons/openMap.svg": wW,
23218
+ "/assets/icons/pause.svg": TW,
23219
+ "/assets/icons/permalink.svg": EW,
23220
+ "/assets/icons/play.svg": DW,
23221
+ "/assets/icons/resetZoom.svg": OW,
23222
+ "/assets/icons/singlepanel.svg": kW,
23223
+ "/assets/icons/tooltips.svg": AW,
23224
+ "/assets/icons/undock.svg": jW,
23225
+ "/assets/icons/zoomIn.svg": MW,
23226
+ "/assets/icons/zoomOut.svg": NW
23227
+ }), UW = {
23201
23228
  name: "MapSvgSpriteColor",
23202
- svgContext: zW,
23203
- svgSprite: Object.keys(zW).map((e) => {
23204
- let t = jW(zW[e], LW, RW), n = e.replace(/^.+\/(\w+).svg$/, "$1");
23205
- return MW(t).replace("<svg", `<symbol id="${n}"`).replace("svg>", "symbol>");
23229
+ svgContext: HW,
23230
+ svgSprite: Object.keys(HW).map((e) => {
23231
+ let t = PW(HW[e], BW, VW), n = e.replace(/^.+\/(\w+).svg$/, "$1");
23232
+ return FW(t).replace("<svg", `<symbol id="${n}"`).replace("svg>", "symbol>");
23206
23233
  }).join("\n")
23207
- }, VW = ["innerHTML"];
23208
- function HW(e, t, n, r, i, a) {
23234
+ }, WW = ["innerHTML"];
23235
+ function GW(e, t, n, r, i, a) {
23209
23236
  return L(), u("svg", {
23210
23237
  width: "0",
23211
23238
  height: "0",
23212
23239
  style: { display: "none" },
23213
23240
  innerHTML: e.$options.svgSprite
23214
- }, null, 8, VW);
23241
+ }, null, 8, WW);
23215
23242
  }
23216
- var UW = /*#__PURE__*/ YU(BW, [["render", HW]]), WW = /* @__PURE__ */ dt((/* @__PURE__ */ ct(((e, t) => {
23243
+ var KW = /*#__PURE__*/ QU(UW, [["render", GW]]), qW = /* @__PURE__ */ dt((/* @__PURE__ */ ct(((e, t) => {
23217
23244
  (function(n, r) {
23218
23245
  typeof e == "object" && t !== void 0 ? t.exports = r() : typeof define == "function" && define.amd ? define(r) : (n ||= self).algoliasearch = r();
23219
23246
  })(e, (function() {
@@ -25017,7 +25044,7 @@ var UW = /*#__PURE__*/ YU(BW, [["render", HW]]), WW = /* @__PURE__ */ dt((/* @__
25017
25044
  }
25018
25045
  return Pt.version = "4.26.0", Pt;
25019
25046
  }));
25020
- })))(), 1), GW = (e, t) => {
25047
+ })))(), 1), JW = (e, t) => {
25021
25048
  let n = {};
25022
25049
  return e.forEach((e) => {
25023
25050
  let r = e.split(".");
@@ -25025,9 +25052,9 @@ var UW = /*#__PURE__*/ YU(BW, [["render", HW]]), WW = /* @__PURE__ */ dt((/* @__
25025
25052
  let i = e.substring(0, e.lastIndexOf(".")), a = r[r.length - 1];
25026
25053
  Object.keys(n).includes(i) ? n[i].push(a) : n[i] = [a];
25027
25054
  }), n;
25028
- }, KW = class {
25055
+ }, YW = class {
25029
25056
  constructor(e, t, n = "https://api.pennsieve.io") {
25030
- this.client = (0, WW.default)(e, t), this.PENNSIEVE_API_LOCATION = n;
25057
+ this.client = (0, qW.default)(e, t), this.PENNSIEVE_API_LOCATION = n;
25031
25058
  }
25032
25059
  initIndex(e) {
25033
25060
  this.index = this.client.initIndex(e);
@@ -25044,7 +25071,7 @@ var UW = /*#__PURE__*/ YU(BW, [["render", HW]]), WW = /* @__PURE__ */ dt((/* @__
25044
25071
  var o = [];
25045
25072
  let s = n.facets;
25046
25073
  if (s === void 0) return;
25047
- let c = s[t] == null ? {} : s[t], l = a && s[a.facetSubpropPath] ? Object.keys(s[a.facetSubpropPath]) : [], u = a && a.facetSubsubpropPath && s[a.facetSubsubpropPath] ? Object.keys(s[a.facetSubsubpropPath]) : [], d = GW(l, 2), f = GW(u, 3);
25074
+ let c = s[t] == null ? {} : s[t], l = a && s[a.facetSubpropPath] ? Object.keys(s[a.facetSubpropPath]) : [], u = a && a.facetSubsubpropPath && s[a.facetSubsubpropPath] ? Object.keys(s[a.facetSubsubpropPath]) : [], d = JW(l, 2), f = JW(u, 3);
25048
25075
  Object.keys(c).map((e) => {
25049
25076
  let n = [];
25050
25077
  Object.keys(d).includes(e) && d[e].forEach((t) => {
@@ -25227,7 +25254,7 @@ var UW = /*#__PURE__*/ YU(BW, [["render", HW]]), WW = /* @__PURE__ */ dt((/* @__
25227
25254
  });
25228
25255
  }), t;
25229
25256
  }
25230
- }, qW = [
25257
+ }, XW = [
25231
25258
  {
25232
25259
  label: "Data Type",
25233
25260
  id: "item.types",
@@ -25273,17 +25300,17 @@ var UW = /*#__PURE__*/ YU(BW, [["render", HW]]), WW = /* @__PURE__ */ dt((/* @__
25273
25300
  facetSubpropPath: "supportingAwards.consortium.subcategory.name"
25274
25301
  }
25275
25302
  ];
25276
- function JW(e = void 0) {
25303
+ function ZW(e = void 0) {
25277
25304
  if (e === void 0) return "NOT item.published.status:embargo";
25278
25305
  e.forEach((e) => {
25279
25306
  e.label = e.facet3 ? e.facet3 : e.facet2 ? e.facet2 : e.facet;
25280
25307
  });
25281
- let t = YW(e);
25308
+ let t = QW(e);
25282
25309
  t.forEach((e) => {
25283
25310
  e.facet3 && e.facet3 === "Non specific" && (e.label = e.facet2);
25284
25311
  });
25285
25312
  let n = "NOT item.published.status:embargo";
25286
- return n = `(${n}) AND `, qW.map((e) => [e.facetPropPath, e.facetFilterPath]).map(([e, r]) => {
25313
+ return n = `(${n}) AND `, XW.map((e) => [e.facetPropPath, e.facetFilterPath]).map(([e, r]) => {
25287
25314
  let i = t.filter((t) => t.facetPropPath == e), a = "", o = "";
25288
25315
  i.map((t) => {
25289
25316
  let n = t.facetSubPropPath ? t.facetSubPropPath : r || e;
@@ -25291,21 +25318,19 @@ function JW(e = void 0) {
25291
25318
  }), (a != "" || o != "") && (a = `(${a.substring(0, a.lastIndexOf(" OR "))})`, n += `${a + o} AND `, n = n.split("()AND ").join(""));
25292
25319
  }), n.substring(0, n.lastIndexOf(" AND "));
25293
25320
  }
25294
- function YW(e) {
25321
+ function QW(e) {
25295
25322
  return e.filter((e) => e.label !== "Show all");
25296
25323
  }
25297
25324
  //#endregion
25298
25325
  //#region src/components/SearchFilters.vue
25299
- var XW = function(e) {
25300
- return e.charAt(0).toUpperCase() + e.slice(1);
25301
- }, ZW = function(e) {
25326
+ var $W = function(e) {
25302
25327
  let t = e.toLowerCase();
25303
- return yz[t] ? XW(yz[t]) : e === e.toUpperCase() ? e : XW(t);
25304
- }, QW = {
25328
+ return yz[t] ? PU(yz[t]) : e === e.toUpperCase() ? e : PU(t);
25329
+ }, eG = {
25305
25330
  name: "SearchFilters",
25306
25331
  components: {
25307
- MapSvgIcon: ZU,
25308
- MapSvgSpriteColor: UW
25332
+ MapSvgIcon: eW,
25333
+ MapSvgSpriteColor: KW
25309
25334
  },
25310
25335
  props: {
25311
25336
  entry: Object,
@@ -25391,14 +25416,15 @@ var XW = function(e) {
25391
25416
  return t;
25392
25417
  },
25393
25418
  createChildrenCascaderValue: function(e, t, n) {
25394
- if (e?.length) for (let r = 0; r < e.length; r++) {
25395
- let i = e[r];
25396
- if (e[r].facetPropPath !== "supportingAwards.consortium.name" && (e[r].label = ZW(i.label)), i.key && t.key.includes("flatmap.connectivity.source.")) {
25397
- let n = i.key, a = t.key, o = n.replace(`${a}.`, "");
25398
- e[r].value = this.createCascaderItemValue([t.label, o]);
25419
+ let r = t.key;
25420
+ if (e?.length) for (let i = 0; i < e.length; i++) {
25421
+ let a = e[i];
25422
+ if (e[i].facetPropPath !== "supportingAwards.consortium.name" && (r === "sourceNomenclatureLabel" ? e[i].label = a.label : e[i].label = $W(a.label)), a.key && r.includes("flatmap.connectivity.source.")) {
25423
+ let n = a.key.replace(`${r}.`, "");
25424
+ e[i].value = this.createCascaderItemValue([t.label, n]);
25399
25425
  } else {
25400
- let a = n.slice();
25401
- a.push(i.label), e[r].value = this.createCascaderItemValue(a), this.createChildrenCascaderValue(i.children, t, a);
25426
+ let r = n.slice();
25427
+ r.push(a.label), e[i].value = this.createCascaderItemValue(r), this.createChildrenCascaderValue(a.children, t, r);
25402
25428
  }
25403
25429
  }
25404
25430
  },
@@ -25414,7 +25440,7 @@ var XW = function(e) {
25414
25440
  processOptions: function() {
25415
25441
  let e = JSON.parse(JSON.stringify(this.options));
25416
25442
  e.forEach((t, n) => {
25417
- e[n].total = this.countTotalFacet(t), e[n].label = ZW(t.label), e[n].value = this.createCascaderItemValue([t.key]), e[n].children.find((e) => e.label === "Show all") || e[n].children.unshift({
25443
+ e[n].total = this.countTotalFacet(t), e[n].label = $W(t.label), e[n].value = this.createCascaderItemValue([t.key]), e[n].children.find((e) => e.label === "Show all") || e[n].children.unshift({
25418
25444
  value: this.createCascaderItemValue(["Show all"]),
25419
25445
  label: "Show all"
25420
25446
  }), t.key.includes("flatmap.connectivity.source") && e[n].children.unshift({
@@ -25428,7 +25454,7 @@ var XW = function(e) {
25428
25454
  return this.entry.options ? new Promise((e) => {
25429
25455
  this.facets = this.entry.options, this.options = this.entry.options, this.processOptions(), e();
25430
25456
  }) : new Promise((e) => {
25431
- this.algoliaClient.getAlgoliaFacets(qW).then((e) => {
25457
+ this.algoliaClient.getAlgoliaFacets(XW).then((e) => {
25432
25458
  this.facets = e, vz.emit("available-facets", e), this.options = e, this.processOptions();
25433
25459
  }).finally(() => {
25434
25460
  e();
@@ -25617,13 +25643,13 @@ var XW = function(e) {
25617
25643
  setCascader: function(e) {
25618
25644
  if (this.cascaderIsReady && e && e.length != 0) {
25619
25645
  let t = (e) => {
25620
- let t = [e.facetPropPath, this.createCascaderItemValue([XW(e.term), e.facet])];
25646
+ let t = [e.facetPropPath, this.createCascaderItemValue([PU(e.term), e.facet])];
25621
25647
  return e.facet2 && (t.push(this.createCascaderItemValue([
25622
- XW(e.term),
25648
+ PU(e.term),
25623
25649
  e.facet,
25624
25650
  e.facet2
25625
25651
  ])), e.facet3 && t.push(this.createCascaderItemValue([
25626
- XW(e.term),
25652
+ PU(e.term),
25627
25653
  e.facet,
25628
25654
  e.facet2,
25629
25655
  e.facet3
@@ -25747,25 +25773,25 @@ var XW = function(e) {
25747
25773
  }
25748
25774
  },
25749
25775
  mounted: function() {
25750
- this.entry.options || (this.algoliaClient = w(new KW(this.envVars.ALGOLIA_ID, this.envVars.ALGOLIA_KEY, this.envVars.PENNSIEVE_API_LOCATION)), this.algoliaClient.initIndex(this.envVars.ALGOLIA_INDEX), this.algoliaClient.setLocalStorageForTermMapping()), this.populateCascader().then(() => {
25776
+ this.entry.options || (this.algoliaClient = w(new YW(this.envVars.ALGOLIA_ID, this.envVars.ALGOLIA_KEY, this.envVars.PENNSIEVE_API_LOCATION)), this.algoliaClient.initIndex(this.envVars.ALGOLIA_INDEX), this.algoliaClient.setLocalStorageForTermMapping()), this.populateCascader().then(() => {
25751
25777
  this.cascaderIsReady = !0, this.checkShowAllBoxes(), this.setCascader(this.entry.filterFacets), this.$emit("cascaderReady");
25752
25778
  });
25753
25779
  }
25754
- }, $W = { class: "filters" }, eG = { key: 0 }, tG = {
25780
+ }, tG = { class: "filters" }, nG = { key: 0 }, rG = {
25755
25781
  key: 0,
25756
25782
  class: "cascader-tag"
25757
- }, nG = { class: "el-tags-container" }, rG = { class: "el-tags-container" }, iG = { class: "search-filters transition-box" }, aG = { key: 0 }, oG = { class: "sidebar-cascader-search el-input" }, sG = { class: "el-input__wrapper" }, cG = ["value", "onInput"], lG = { key: 1 }, uG = {
25783
+ }, iG = { class: "el-tags-container" }, aG = { class: "el-tags-container" }, oG = { class: "search-filters transition-box" }, sG = { key: 0 }, cG = { class: "sidebar-cascader-search el-input" }, lG = { class: "el-input__wrapper" }, uG = ["value", "onInput"], dG = { key: 1 }, fG = {
25758
25784
  key: 0,
25759
25785
  class: "sr-only"
25760
- }, dG = {
25786
+ }, pG = {
25761
25787
  key: 0,
25762
25788
  class: "filter-default-value"
25763
- }, fG = { class: "dataset-shown" }, pG = { class: "dataset-results-feedback" };
25764
- function mG(e, n, r, i, a, o) {
25789
+ }, mG = { class: "dataset-shown" }, hG = { class: "dataset-results-feedback" };
25790
+ function gG(e, n, r, i, a, o) {
25765
25791
  let s = H("MapSvgSpriteColor"), f = Ug, h = kx, g = Cy, _ = Sy, v = vy, y = H("MapSvgIcon"), b = x_, x = b_, S = Bx;
25766
- return L(), u("div", $W, [
25792
+ return L(), u("div", tG, [
25767
25793
  m(s),
25768
- o.showFilters && e.options.length > 0 ? (L(), u("div", eG, [e.presentTags.length > 0 ? (L(), u("div", tG, [m(f, {
25794
+ o.showFilters && e.options.length > 0 ? (L(), u("div", nG, [e.presentTags.length > 0 ? (L(), u("div", rG, [m(f, {
25769
25795
  class: "ml-2",
25770
25796
  type: "info",
25771
25797
  closable: "",
@@ -25780,7 +25806,7 @@ function mG(e, n, r, i, a, o) {
25780
25806
  trigger: "hover",
25781
25807
  "popper-class": "cascade-tags-popover"
25782
25808
  }, {
25783
- default: K(() => [d("div", nG, [(L(!0), u(t, null, ie(e.presentTags.slice(1), (e, t) => (L(), c(f, {
25809
+ default: K(() => [d("div", iG, [(L(!0), u(t, null, ie(e.presentTags.slice(1), (e, t) => (L(), c(f, {
25784
25810
  key: t,
25785
25811
  class: D(["ml-2", o.modifyCascaderTagStyle(e)]),
25786
25812
  type: "info",
@@ -25790,7 +25816,7 @@ function mG(e, n, r, i, a, o) {
25790
25816
  default: K(() => [p(U(e), 1)]),
25791
25817
  _: 2
25792
25818
  }, 1032, ["class", "onClose"]))), 128))])]),
25793
- reference: K(() => [d("div", rG, [e.presentTags.length > 1 ? (L(), c(f, {
25819
+ reference: K(() => [d("div", aG, [e.presentTags.length > 1 ? (L(), c(f, {
25794
25820
  key: 0,
25795
25821
  class: "ml-2",
25796
25822
  type: "info"
@@ -25799,7 +25825,7 @@ function mG(e, n, r, i, a, o) {
25799
25825
  _: 1
25800
25826
  })) : l("", !0)])]),
25801
25827
  _: 1
25802
- })) : l("", !0)])) : l("", !0), Ce((L(), u("span", iG, [
25828
+ })) : l("", !0)])) : l("", !0), Ce((L(), u("span", oG, [
25803
25829
  m(v, {
25804
25830
  class: "cascader",
25805
25831
  ref: "cascader",
@@ -25816,7 +25842,7 @@ function mG(e, n, r, i, a, o) {
25816
25842
  "show-all-levels": !0,
25817
25843
  "popper-class": "sidebar-cascader-popper"
25818
25844
  }, {
25819
- default: K(({ node: t, data: r }) => [o.isFlatmapConnectionsFilterNode(t) ? (L(), u("div", aG, [d("div", oG, [d("div", sG, [d("input", {
25845
+ default: K(({ node: t, data: r }) => [o.isFlatmapConnectionsFilterNode(t) ? (L(), u("div", sG, [d("div", cG, [d("div", lG, [d("input", {
25820
25846
  class: "el-input__inner",
25821
25847
  ref: "searchInput_" + t.pathValues[0],
25822
25848
  value: e.searchInputs[t.pathValues[0]],
@@ -25826,7 +25852,7 @@ function mG(e, n, r, i, a, o) {
25826
25852
  style: { width: "100%" },
25827
25853
  autocomplete: "off",
25828
25854
  placeholder: "Search"
25829
- }, null, 40, cG)])])])) : (L(), u("div", lG, [m(_, null, {
25855
+ }, null, 40, uG)])])])) : (L(), u("div", dG, [m(_, null, {
25830
25856
  default: K(() => [o.hasLineStyles(r) ? (L(), c(g, {
25831
25857
  key: 0,
25832
25858
  span: 4
@@ -25837,7 +25863,7 @@ function mG(e, n, r, i, a, o) {
25837
25863
  }, null, 4)]),
25838
25864
  _: 2
25839
25865
  }, 1024)) : l("", !0), m(g, { span: 20 }, {
25840
- default: K(() => [o.isFlatmapConnectionsNode(t) ? (L(), u("span", uG, U(o.getNodeKey(t.value)), 1)) : l("", !0), d("div", { style: k(o.getBackgroundStyles(r)) }, U(r.label), 5)]),
25866
+ default: K(() => [o.isFlatmapConnectionsNode(t) ? (L(), u("span", fG, U(o.getNodeKey(t.value)), 1)) : l("", !0), d("div", { style: k(o.getBackgroundStyles(r)) }, U(r.label), 5)]),
25841
25867
  _: 2
25842
25868
  }, 1024)]),
25843
25869
  _: 2
@@ -25849,7 +25875,7 @@ function mG(e, n, r, i, a, o) {
25849
25875
  "props",
25850
25876
  "onExpandChange"
25851
25877
  ]),
25852
- e.showFiltersText ? (L(), u("div", dG, "Filters")) : l("", !0),
25878
+ e.showFiltersText ? (L(), u("div", pG, "Filters")) : l("", !0),
25853
25879
  m(h, {
25854
25880
  title: "How do filters work?",
25855
25881
  width: "250",
@@ -25875,7 +25901,7 @@ function mG(e, n, r, i, a, o) {
25875
25901
  _: 1
25876
25902
  })
25877
25903
  ])), [[S, !e.cascaderIsReady]])])) : l("", !0),
25878
- d("div", fG, [d("span", pG, U(o.numberOfResultsText), 1), m(x, {
25904
+ d("div", mG, [d("span", hG, U(o.numberOfResultsText), 1), m(x, {
25879
25905
  class: "number-shown-select",
25880
25906
  modelValue: e.numberShown,
25881
25907
  "onUpdate:modelValue": n[5] ||= (t) => e.numberShown = t,
@@ -25891,13 +25917,13 @@ function mG(e, n, r, i, a, o) {
25891
25917
  }, 8, ["modelValue"])])
25892
25918
  ]);
25893
25919
  }
25894
- var hG = /*#__PURE__*/ uS(QW, [["render", mG], ["__scopeId", "data-v-0a744116"]]), gG = async function(e) {
25920
+ var _G = /*#__PURE__*/ uS(eG, [["render", gG], ["__scopeId", "data-v-30ec8d0a"]]), vG = async function(e) {
25895
25921
  if (!e.ok) {
25896
25922
  let t = await e.json();
25897
25923
  throw Error(t ? t.message : e);
25898
25924
  }
25899
25925
  return e;
25900
- }, _G = {
25926
+ }, yG = {
25901
25927
  searchInput: "",
25902
25928
  lastSearch: "",
25903
25929
  results: [],
@@ -25910,12 +25936,12 @@ var hG = /*#__PURE__*/ uS(QW, [["render", mG], ["__scopeId", "data-v-0a744116"]]
25910
25936
  start: 0,
25911
25937
  hasSearched: !1,
25912
25938
  contextCardEnabled: !1
25913
- }, vG = {
25939
+ }, bG = {
25914
25940
  components: {
25915
- SearchFilters: hG,
25941
+ SearchFilters: _G,
25916
25942
  DatasetCard: MU,
25917
- SearchHistory: JU,
25918
- MapSvgIcon: ZU
25943
+ SearchHistory: ZU,
25944
+ MapSvgIcon: eW
25919
25945
  },
25920
25946
  name: "DatasetExplorer",
25921
25947
  props: {
@@ -25929,7 +25955,7 @@ var hG = /*#__PURE__*/ uS(QW, [["render", mG], ["__scopeId", "data-v-0a744116"]]
25929
25955
  },
25930
25956
  entry: {
25931
25957
  type: Object,
25932
- default: () => _G
25958
+ default: () => yG
25933
25959
  },
25934
25960
  envVars: {
25935
25961
  type: Object,
@@ -26020,9 +26046,9 @@ var hG = /*#__PURE__*/ uS(QW, [["render", mG], ["__scopeId", "data-v-0a744116"]]
26020
26046
  this.$refs.searchHistory.selectValue = "Search history", (e.length || t?.trim()) && this.$refs.searchHistory.addSearchToHistory(e, t);
26021
26047
  },
26022
26048
  searchAlgolia(e, t = "") {
26023
- this.loadingCards = !0, this.algoliaClient.anatomyInSearch(JW(e), t).then((e) => {
26049
+ this.loadingCards = !0, this.algoliaClient.anatomyInSearch(ZW(e), t).then((e) => {
26024
26050
  vz.emit("anatomy-in-datasets", e.forFlatmap), vz.emit("number-of-datasets-for-anatomies", e.forScaffold);
26025
- }), this.algoliaClient.search(JW(e), t, this.numberPerPage, this.page).then((e) => {
26051
+ }), this.algoliaClient.search(ZW(e), t, this.numberPerPage, this.page).then((e) => {
26026
26052
  this.numberOfHits = e.total, this.discoverIds = e.discoverIds, this._dois = e.dois, this.results = e.items, this.loadingCards = !1, this.scrollToTop(), this.$emit("search-changed", {
26027
26053
  value: this.searchInput,
26028
26054
  tabType: "dataset",
@@ -26111,11 +26137,11 @@ var hG = /*#__PURE__*/ uS(QW, [["render", mG], ["__scopeId", "data-v-0a744116"]]
26111
26137
  callSciCrunch: function(e, t = {}, n) {
26112
26138
  return new Promise((e, r) => {
26113
26139
  let i = this.envVars.API_LOCATION + this.searchEndpoint + "?" + this.createfilterParams(t);
26114
- fetch(i, { signal: n }).then(gG).then((e) => e.json()).then((t) => e(t)).catch((e) => r(e));
26140
+ fetch(i, { signal: n }).then(vG).then((e) => e.json()).then((t) => e(t)).catch((e) => r(e));
26115
26141
  });
26116
26142
  },
26117
26143
  getAlgoliaFacets: async function() {
26118
- return await this.algoliaClient.getAlgoliaFacets(qW);
26144
+ return await this.algoliaClient.getAlgoliaFacets(XW);
26119
26145
  },
26120
26146
  searchHistorySearch: function(e) {
26121
26147
  this.searchInput = e.search, this.filter = e.filters, this.openSearch([...e.filters], e.search);
@@ -26128,25 +26154,25 @@ var hG = /*#__PURE__*/ uS(QW, [["render", mG], ["__scopeId", "data-v-0a744116"]]
26128
26154
  }
26129
26155
  },
26130
26156
  mounted: function() {
26131
- this.algoliaClient = w(new KW(this.envVars.ALGOLIA_ID, this.envVars.ALGOLIA_KEY, this.envVars.PENNSIEVE_API_LOCATION)), this.algoliaClient.initIndex(this.envVars.ALGOLIA_INDEX), this.openSearch(this.filter, this.searchInput);
26157
+ this.algoliaClient = w(new YW(this.envVars.ALGOLIA_ID, this.envVars.ALGOLIA_KEY, this.envVars.PENNSIEVE_API_LOCATION)), this.algoliaClient.initIndex(this.envVars.ALGOLIA_INDEX), this.openSearch(this.filter, this.searchInput);
26132
26158
  },
26133
26159
  created: function() {
26134
26160
  this.searchEndpoint = "dataset_info/using_multiple_dois/";
26135
26161
  }
26136
- }, yG = { class: "header" }, bG = {
26162
+ }, xG = { class: "header" }, SG = {
26137
26163
  class: "content scrollbar",
26138
26164
  ref: "content"
26139
- }, xG = {
26165
+ }, CG = {
26140
26166
  key: 0,
26141
26167
  class: "error-feedback"
26142
26168
  };
26143
- function SG(e, n, r, i, a, o) {
26144
- let s = Oh, f = H("MapSvgIcon"), h = kx, g = Rg, _ = hG, v = JU, y = MU, b = wx, x = C_, S = Bx;
26169
+ function wG(e, n, r, i, a, o) {
26170
+ let s = Oh, f = H("MapSvgIcon"), h = kx, g = Rg, _ = _G, v = ZU, y = MU, b = wx, x = C_, S = Bx;
26145
26171
  return L(), c(x, {
26146
26172
  "body-style": e.bodyStyle,
26147
26173
  class: "content-card"
26148
26174
  }, {
26149
- header: K(() => [d("div", yG, [
26175
+ header: K(() => [d("div", xG, [
26150
26176
  d("div", { class: D(["search-input-container", { "is-focus": e.searchInput }]) }, [m(s, {
26151
26177
  class: "search-input",
26152
26178
  placeholder: "Search",
@@ -26240,8 +26266,8 @@ function SG(e, n, r, i, a, o) {
26240
26266
  localStorageKey: "sparc.science-dataset-search-history",
26241
26267
  onSearch: o.searchHistorySearch
26242
26268
  }, null, 8, ["onSearch"]),
26243
- Ce((L(), u("div", bG, [
26244
- e.results.length === 0 && !e.loadingCards ? (L(), u("div", xG, " No results found - Please change your search / filter criteria. ")) : l("", !0),
26269
+ Ce((L(), u("div", SG, [
26270
+ e.results.length === 0 && !e.loadingCards ? (L(), u("div", CG, " No results found - Please change your search / filter criteria. ")) : l("", !0),
26245
26271
  (L(!0), u(t, null, ie(e.results, (e) => (L(), u("div", {
26246
26272
  key: e.doi,
26247
26273
  class: "step-item"
@@ -26277,7 +26303,894 @@ function SG(e, n, r, i, a, o) {
26277
26303
  _: 1
26278
26304
  }, 8, ["body-style"]);
26279
26305
  }
26280
- var CG = /*#__PURE__*/ uS(vG, [["render", SG], ["__scopeId", "data-v-96a11064"]]), wG = {
26306
+ var TG = /*#__PURE__*/ uS(bG, [["render", wG], ["__scopeId", "data-v-96a11064"]]), EG = {}, DG = {
26307
+ viewBox: "0 0 24 24",
26308
+ xmlns: "http://www.w3.org/2000/svg",
26309
+ "aria-hidden": "true",
26310
+ focusable: "false"
26311
+ };
26312
+ function OG(e, t) {
26313
+ return L(), u("svg", DG, [...t[0] ||= [d("g", {
26314
+ stroke: "none",
26315
+ "stroke-width": "1",
26316
+ fill: "none",
26317
+ "fill-rule": "evenodd"
26318
+ }, [
26319
+ d("polygon", {
26320
+ fill: "currentColor",
26321
+ "fill-rule": "nonzero",
26322
+ transform: "translate(15.500000, 8.878680) rotate(225.000000) translate(-15.500000, -8.878680)",
26323
+ points: "16.25 4.12867966 16.25 13.6286797 14.75 13.6286797 14.75 4.12867966"
26324
+ }),
26325
+ d("polygon", {
26326
+ fill: "currentColor",
26327
+ "fill-rule": "nonzero",
26328
+ transform: "translate(17.500000, 6.918996) rotate(225.000000) translate(-17.500000, -6.918996)",
26329
+ points: "20.9294459 3.82036868 22.058311 4.80812559 17.5 10.0176239 12.941689 4.80812559 14.0705541 3.82036868 17.5 7.739"
26330
+ }),
26331
+ d("polygon", {
26332
+ fill: "currentColor",
26333
+ "fill-rule": "nonzero",
26334
+ points: "11.6570511 7.25 11.6570511 8.75 5.75 8.75 5.75 16.25 15.25 16.25 15.25 11.2267933 16.75 11.2267933 16.75 17.75 4.25 17.75 4.25 7.25"
26335
+ })
26336
+ ], -1)]]);
26337
+ }
26338
+ var kG = /*#__PURE__*/ uS(EG, [["render", OG]]), AG = {
26339
+ soma_tg: "trigeminal ganglion",
26340
+ soma_drg: "dorsal root ganglion"
26341
+ }, jG = {
26342
+ name: "CellCard",
26343
+ components: {
26344
+ CopyToClipboard: $e,
26345
+ IconOpenExternal: kG
26346
+ },
26347
+ props: {
26348
+ cellType: {
26349
+ type: Object,
26350
+ required: !0
26351
+ },
26352
+ isActive: {
26353
+ type: Boolean,
26354
+ default: !1
26355
+ }
26356
+ },
26357
+ emits: [
26358
+ "open",
26359
+ "close",
26360
+ "soma-location-hovered",
26361
+ "dataset-search",
26362
+ "connectivity-search",
26363
+ "related-cell-click"
26364
+ ],
26365
+ data() {
26366
+ return {
26367
+ cardElement: null,
26368
+ activeSearchPopoverLocationId: null
26369
+ };
26370
+ },
26371
+ mounted: function() {
26372
+ this.cardElement = this.$refs.cardElementRef;
26373
+ },
26374
+ computed: {
26375
+ cardStyleVars: function() {
26376
+ return { "--cell-card-source-color": this.cellType?.sourceColor || this.cellType?.color || "#8300bf" };
26377
+ },
26378
+ formattedMarkerGenes: function() {
26379
+ return (this.cellType?.markerGenes || []).map((e, t) => {
26380
+ let n = String(e?.name || "").trim(), r = String(e?.expression || "").trim(), i = this.sanitizeMarkerGeneUri(e?.uri, r);
26381
+ return !n || !i ? null : {
26382
+ key: `${n}-${r || "none"}-${t}`,
26383
+ name: n,
26384
+ expression: r,
26385
+ uri: i
26386
+ };
26387
+ }).filter(Boolean);
26388
+ },
26389
+ updatedCopyContent: function() {
26390
+ let { preferredLabel: e, entity: t, species: n, somaLocations: r, circuitRole: i, creLine: a, geneExpressionString: o, fiberTypeString: s, physiologyString: c, relatedCells: l, alertNotes: u, curatorNotes: d, sourceNomenclature: f, sourceNomenclatureLabel: p } = this.cellType, m = [];
26391
+ if (e && m.push(`<div><strong>Cell Type:</strong> ${e}</div>`), t && m.push(`<div><strong>Entity:</strong> ${t}</div>`), n && m.push(`<div><strong>Species:</strong> ${n}</div>`), r?.length) {
26392
+ let e = r.map((e) => `<li>${e}</li>`).join("");
26393
+ m.push(`<div><strong>Soma Locations:</strong><ul>${e}</ul></div>`);
26394
+ }
26395
+ if (i && m.push(`<div><strong>Circuit Role:</strong> ${i}</div>`), a && m.push(`<div><strong>Cre Line:</strong> ${a}</div>`), o && m.push(`<div><strong>Marker Genes:</strong> ${o}</div>`), s && m.push(`<div><strong>Axon Phenotype:</strong> ${s}</div>`), c && m.push(`<div><strong>Physiology:</strong> ${c}</div>`), l?.length) {
26396
+ let e = l.map((e) => e?.label).filter(Boolean).map((e) => `<li>${e}</li>`).join("");
26397
+ e && m.push(`<div><strong>Related Species Variants:</strong><ul>${e}</ul></div>`);
26398
+ }
26399
+ if (p) {
26400
+ let e = f ? `${p} (<a href="${f}">${f}</a>)` : p;
26401
+ m.push(`<div><strong>Source Publication:</strong> ${e}</div>`);
26402
+ }
26403
+ if (u?.length) {
26404
+ let e = u.map((e) => FU(e)).join("\n");
26405
+ m.push(`<div><strong>Alert Notes:</strong></div>\n${e}`);
26406
+ }
26407
+ if (d?.length) {
26408
+ let e = d.map((e) => FU(e)).join("\n");
26409
+ m.push(`<div><strong>Curator Notes:</strong></div>\n${e}`);
26410
+ }
26411
+ return m.join("\n");
26412
+ },
26413
+ somaLocations: function() {
26414
+ return this.cellType.somaLocations.map((e) => {
26415
+ let t = Object.keys(AG).find((t) => AG[t] === e) || "";
26416
+ return this.cellType.clusterAttributes?.[t] ? {
26417
+ name: PU(e),
26418
+ id: t
26419
+ } : !1;
26420
+ });
26421
+ }
26422
+ },
26423
+ methods: {
26424
+ sanitizeMarkerGeneUri: function(e, t = "") {
26425
+ let n = String(e || "").trim(), r = String(t || "").trim();
26426
+ if (!n) return "";
26427
+ if (r) {
26428
+ let e = r.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
26429
+ n = n.replace(RegExp(`\\s+${e}$`, "i"), "");
26430
+ }
26431
+ return n.trim();
26432
+ },
26433
+ transformString: function(e) {
26434
+ return e ? e.replace(/\^(\w+)/g, "<sup>$1</sup>") : "";
26435
+ },
26436
+ onCopied: function() {
26437
+ vz.emit("trackEvent", {
26438
+ event_name: "portal_maps_cell_card_copy",
26439
+ category: this.cellType.preferredLabel || "",
26440
+ location: "map_sidebar_cell_card"
26441
+ });
26442
+ },
26443
+ openCard: function() {
26444
+ this.$emit("open", this.cellType.id), vz.emit("trackEvent", {
26445
+ event_name: "portal_maps_cell_card_open",
26446
+ category: this.cellType.id || "",
26447
+ location: "map_sidebar_cell_card"
26448
+ });
26449
+ },
26450
+ closeCard: function() {
26451
+ this.$emit("close"), vz.emit("trackEvent", {
26452
+ event_name: "portal_maps_cell_card_close",
26453
+ category: this.cellType.id || "",
26454
+ location: "map_sidebar_cell_card"
26455
+ });
26456
+ },
26457
+ showSomaLocation: function(e) {
26458
+ this.$emit("soma-location-hovered", e);
26459
+ },
26460
+ openDatasetSearch: function(e) {
26461
+ this.$emit("dataset-search", {
26462
+ species: PU(this.cellType?.species),
26463
+ location: e
26464
+ });
26465
+ },
26466
+ openConnectivitySearch: function(e) {
26467
+ let t = localStorage.getItem("available-name-curie-mapping"), n = t ? JSON.parse(t) : {}, r = Object.keys(n).find((t) => n[t].toLowerCase() === e.toLowerCase()), i = r ? [{
26468
+ facet: `["${r}",[]]`,
26469
+ facetPropPath: "flatmap.connectivity.source.all",
26470
+ tagLabel: e,
26471
+ term: "All"
26472
+ }] : [];
26473
+ this.$emit("connectivity-search", {
26474
+ facets: i,
26475
+ query: ""
26476
+ });
26477
+ },
26478
+ onSearchPopoverShow: function(e) {
26479
+ this.activeSearchPopoverLocationId = e;
26480
+ },
26481
+ onSearchPopoverHide: function(e) {
26482
+ this.activeSearchPopoverLocationId === e && (this.activeSearchPopoverLocationId = null);
26483
+ },
26484
+ showAlertMessage: function() {
26485
+ IU(this, "alertElement");
26486
+ },
26487
+ formatAlertText: function(e) {
26488
+ return FU(e);
26489
+ }
26490
+ }
26491
+ }, MG = { class: "title-content" }, NG = { class: "card-title" }, PG = { class: "card-keywords" }, FG = { class: "card-chips" }, IG = {
26492
+ key: 0,
26493
+ class: "source-publication-chip"
26494
+ }, LG = { class: "card-details" }, RG = { class: "card-details-inner" }, zG = {
26495
+ key: 0,
26496
+ class: "card-section"
26497
+ }, BG = {
26498
+ key: 1,
26499
+ class: "card-section"
26500
+ }, VG = {
26501
+ key: 2,
26502
+ class: "card-section"
26503
+ }, HG = { class: "card-list-items" }, UG = ["onMouseenter"], WG = { class: "card-list-search" }, GG = { class: "search-action-list" }, KG = ["onClick"], qG = ["onClick"], JG = {
26504
+ key: 3,
26505
+ class: "card-section"
26506
+ }, YG = {
26507
+ key: 4,
26508
+ class: "card-section"
26509
+ }, XG = {
26510
+ key: 5,
26511
+ class: "card-section"
26512
+ }, ZG = { class: "marker-genes-list" }, QG = ["href"], $G = { key: 0 }, eK = {
26513
+ key: 6,
26514
+ class: "card-section"
26515
+ }, tK = { class: "card-section-content" }, nK = {
26516
+ key: 7,
26517
+ class: "card-section"
26518
+ }, rK = { class: "card-section-content success" }, iK = {
26519
+ key: 8,
26520
+ class: "card-section"
26521
+ }, aK = { class: "related-cell-list" }, oK = ["onClick"], sK = {
26522
+ key: 9,
26523
+ class: "card-section source-publication-section"
26524
+ }, cK = ["href"], lK = {
26525
+ key: 10,
26526
+ class: "card-section",
26527
+ ref: "alertElement"
26528
+ }, uK = { class: "alert-block" }, dK = {
26529
+ key: 0,
26530
+ class: "alert-block-section"
26531
+ }, fK = ["innerHTML"], pK = {
26532
+ key: 1,
26533
+ class: "alert-block-section"
26534
+ }, mK = ["innerHTML"];
26535
+ function hK(e, n, r, i, a, o) {
26536
+ let s = Ke, f = zp, h = Rg, g = H("CopyToClipboard"), _ = Pe, v = kx, y = Ue, b = kG;
26537
+ return L(), u("div", {
26538
+ ref: "cardElementRef",
26539
+ class: D(["card", { active: r.isActive }]),
26540
+ style: k(o.cardStyleVars)
26541
+ }, [d("div", {
26542
+ class: "card-header",
26543
+ onClick: n[1] ||= (...e) => o.openCard && o.openCard(...e)
26544
+ }, [d("div", MG, [
26545
+ d("div", NG, U(r.cellType.preferredLabel), 1),
26546
+ d("div", PG, [
26547
+ d("span", null, U(r.cellType.species), 1),
26548
+ d("div", FG, [(L(!0), u(t, null, ie(r.cellType.somaLocations, (e) => (L(), u("span", {
26549
+ class: "card-chip",
26550
+ key: e
26551
+ }, U(e), 1))), 128))]),
26552
+ r.cellType.sourceNomenclature ? (L(), u("span", IG, U(r.cellType.sourceNomenclatureLabel), 1)) : l("", !0)
26553
+ ]),
26554
+ r.isActive && (r.cellType.alertNotes?.length || r.cellType.curatorNotes?.length) ? (L(), c(h, {
26555
+ key: 0,
26556
+ round: "",
26557
+ size: "small",
26558
+ class: "alert-chip",
26559
+ onClick: Te(o.showAlertMessage, ["stop"])
26560
+ }, {
26561
+ default: K(() => [m(f, { class: "alert" }, {
26562
+ default: K(() => [m(s)]),
26563
+ _: 1
26564
+ }), n[3] ||= p(" Notes ", -1)]),
26565
+ _: 1
26566
+ }, 8, ["onClick"])) : l("", !0)
26567
+ ]), d("div", {
26568
+ class: "title-buttons",
26569
+ onClick: n[0] ||= Te(() => {}, ["stop"])
26570
+ }, [m(g, {
26571
+ onCopied: o.onCopied,
26572
+ content: o.updatedCopyContent
26573
+ }, null, 8, ["onCopied", "content"]), m(v, {
26574
+ width: "auto",
26575
+ trigger: "hover",
26576
+ teleported: !1,
26577
+ "popper-class": "popover-map-pin"
26578
+ }, {
26579
+ reference: K(() => [m(h, {
26580
+ class: "button-circle",
26581
+ circle: "",
26582
+ onClick: o.closeCard
26583
+ }, {
26584
+ default: K(() => [m(f, { color: "white" }, {
26585
+ default: K(() => [m(_)]),
26586
+ _: 1
26587
+ })]),
26588
+ _: 1
26589
+ }, 8, ["onClick"])]),
26590
+ default: K(() => [n[4] ||= d("span", null, "Close", -1)]),
26591
+ _: 1
26592
+ })])]), d("div", LG, [d("div", RG, [
26593
+ r.cellType.entity ? (L(), u("div", zG, [n[5] ||= d("div", { class: "card-section-title" }, "Entity", -1), d("span", null, U(r.cellType.entity), 1)])) : l("", !0),
26594
+ r.cellType.species ? (L(), u("div", BG, [n[6] ||= d("div", { class: "card-section-title" }, "Species", -1), d("span", null, U(r.cellType.species), 1)])) : l("", !0),
26595
+ r.cellType.somaLocations?.length ? (L(), u("div", VG, [n[7] ||= d("div", { class: "card-section-title" }, "Soma Location", -1), d("div", HG, [(L(!0), u(t, null, ie(o.somaLocations, (e) => (L(), u("div", {
26596
+ class: "card-list-item",
26597
+ key: e.id,
26598
+ onMouseenter: (t) => o.showSomaLocation(e.name),
26599
+ onMouseleave: n[2] ||= (e) => o.showSomaLocation()
26600
+ }, [d("span", null, U(e.name), 1), d("div", WG, [m(v, {
26601
+ width: "180",
26602
+ trigger: "hover",
26603
+ teleported: !0,
26604
+ "append-to": a.cardElement,
26605
+ "popper-class": "popover-origin-help popover-search-actions",
26606
+ onShow: (t) => o.onSearchPopoverShow(e.id),
26607
+ onHide: (t) => o.onSearchPopoverHide(e.id)
26608
+ }, {
26609
+ reference: K(() => [m(f, { class: D(["status-search-icon", { "is-visible": a.activeSearchPopoverLocationId === e.id }]) }, {
26610
+ default: K(() => [m(y)]),
26611
+ _: 1
26612
+ }, 8, ["class"])]),
26613
+ default: K(() => [d("div", GG, [d("button", {
26614
+ type: "button",
26615
+ class: "search-action-button",
26616
+ onClick: (t) => o.openDatasetSearch(e.name)
26617
+ }, " Search dataset ", 8, KG), d("button", {
26618
+ type: "button",
26619
+ class: "search-action-button",
26620
+ onClick: (t) => o.openConnectivitySearch(e.name)
26621
+ }, " Search connectivity ", 8, qG)])]),
26622
+ _: 2
26623
+ }, 1032, [
26624
+ "append-to",
26625
+ "onShow",
26626
+ "onHide"
26627
+ ])])], 40, UG))), 128))])])) : l("", !0),
26628
+ r.cellType.circuitRole ? (L(), u("div", JG, [n[8] ||= d("div", { class: "card-section-title" }, "Circuit Role", -1), d("span", null, U(r.cellType.circuitRole), 1)])) : l("", !0),
26629
+ r.cellType.creLine ? (L(), u("div", YG, [n[9] ||= d("div", { class: "card-section-title" }, "Cre Line", -1), d("span", null, U(r.cellType.creLine), 1)])) : l("", !0),
26630
+ o.formattedMarkerGenes.length ? (L(), u("div", XG, [n[10] ||= d("div", { class: "card-section-title" }, "Marker Genes", -1), d("div", ZG, [(L(!0), u(t, null, ie(o.formattedMarkerGenes, (e) => (L(), u("a", {
26631
+ key: e.key,
26632
+ class: "marker-gene-link",
26633
+ href: e.uri,
26634
+ target: "_blank",
26635
+ rel: "noopener noreferrer"
26636
+ }, [
26637
+ d("span", null, U(e.name), 1),
26638
+ e.expression ? (L(), u("sup", $G, U(e.expression), 1)) : l("", !0),
26639
+ m(b, { class: "external-link-icon" })
26640
+ ], 8, QG))), 128))])])) : l("", !0),
26641
+ r.cellType.fiberTypeString ? (L(), u("div", eK, [n[11] ||= d("div", { class: "card-section-title" }, "Axon Phenotype", -1), d("div", tK, U(r.cellType.fiberTypeString), 1)])) : l("", !0),
26642
+ r.cellType.physiologyString ? (L(), u("div", nK, [n[12] ||= d("div", { class: "card-section-title" }, "Physiology", -1), d("div", rK, U(r.cellType.physiologyString), 1)])) : l("", !0),
26643
+ r.cellType.relatedCells?.length ? (L(), u("div", iK, [n[13] ||= d("div", { class: "card-section-title" }, "Related Species Variants", -1), d("ul", aK, [(L(!0), u(t, null, ie(r.cellType.relatedCells, (t) => (L(), u("li", { key: t }, [d("button", {
26644
+ class: "related-cell-item",
26645
+ onClick: Te((n) => e.$emit("related-cell-click", t), ["stop"]),
26646
+ title: "Click to view this cell type"
26647
+ }, U(t.label), 9, oK)]))), 128))])])) : l("", !0),
26648
+ r.cellType.sourceNomenclature ? (L(), u("div", sK, [n[14] ||= d("div", { class: "card-section-title" }, "Source Publication", -1), d("p", null, [d("a", {
26649
+ class: "source-publication-link",
26650
+ href: r.cellType.sourceNomenclature,
26651
+ target: "_blank",
26652
+ rel: "noopener noreferrer"
26653
+ }, [p(U(r.cellType.sourceNomenclatureLabel) + " ", 1), m(b, { class: "external-link-icon" })], 8, cK)])])) : l("", !0),
26654
+ r.cellType.alertNotes?.length || r.cellType.curatorNotes?.length ? (L(), u("div", lK, [n[17] ||= d("div", { class: "card-section-title" }, "Notes", -1), d("div", uK, [r.cellType.alertNotes?.length ? (L(), u("div", dK, [n[15] ||= d("div", { class: "alert-block-title" }, "Alert Notes:", -1), (L(!0), u(t, null, ie(r.cellType.alertNotes, (e, t) => (L(), u("div", {
26655
+ key: `alert-${t}`,
26656
+ innerHTML: o.formatAlertText(e),
26657
+ class: "alert-block-note"
26658
+ }, null, 8, fK))), 128))])) : l("", !0), r.cellType.curatorNotes?.length ? (L(), u("div", pK, [n[16] ||= d("div", { class: "alert-block-title" }, "Curator Notes:", -1), (L(!0), u(t, null, ie(r.cellType.curatorNotes, (e, t) => (L(), u("div", {
26659
+ key: `curator-${t}`,
26660
+ innerHTML: o.formatAlertText(e),
26661
+ class: "alert-block-note"
26662
+ }, null, 8, mK))), 128))])) : l("", !0)])], 512)) : l("", !0)
26663
+ ])])], 6);
26664
+ }
26665
+ var gK = /*#__PURE__*/ uS(jG, [["render", hK], ["__scopeId", "data-v-f5dc9340"]]), _K = null, vK = null, yK = {
26666
+ components: {
26667
+ SearchFilters: _G,
26668
+ SearchHistory: ZU,
26669
+ CellCard: gK,
26670
+ MapSvgIcon: eW
26671
+ },
26672
+ name: "CellCardExplorer",
26673
+ emits: [
26674
+ "soma-location-hovered",
26675
+ "dataset-search",
26676
+ "connectivity-search",
26677
+ "soma-locations-ready"
26678
+ ],
26679
+ props: {
26680
+ envVars: {
26681
+ type: Object,
26682
+ default: () => {}
26683
+ },
26684
+ activeSpecies: {
26685
+ type: Array,
26686
+ default: () => []
26687
+ }
26688
+ },
26689
+ data: function() {
26690
+ return {
26691
+ bodyStyle: {
26692
+ flex: "1 1 auto",
26693
+ "flex-flow": "column",
26694
+ display: "flex"
26695
+ },
26696
+ allCellTypes: [],
26697
+ cellTypes: [],
26698
+ filterOptions: [],
26699
+ activeFilters: [],
26700
+ searchInput: "",
26701
+ numberPerPage: 10,
26702
+ page: 1,
26703
+ start: 0,
26704
+ totalFilteredCount: 0,
26705
+ loadingCards: !1,
26706
+ activeCardId: null,
26707
+ cascaderIsReady: !1,
26708
+ geneBaseToDisplay: {},
26709
+ geneDisplayToBase: {}
26710
+ };
26711
+ },
26712
+ computed: { filterEntry: function() {
26713
+ return {
26714
+ numberOfHits: this.totalFilteredCount,
26715
+ filterFacets: this.activeFilters,
26716
+ showFilters: !0,
26717
+ options: this.filterOptions,
26718
+ helper: {
26719
+ within: "'mouse' OR 'human'",
26720
+ between: "'species' AND 'soma location'"
26721
+ }
26722
+ };
26723
+ } },
26724
+ watch: { activeSpecies: {
26725
+ deep: !0,
26726
+ immediate: !0,
26727
+ handler: "syncActiveSpeciesFilters"
26728
+ } },
26729
+ mounted: function() {
26730
+ this.fetchCellTypes(this.envVars.CELL_CARDS_API);
26731
+ },
26732
+ methods: {
26733
+ syncCascaderFromActiveFilters: function() {
26734
+ if (!(!this.cascaderIsReady || !this.$refs.filtersRef)) {
26735
+ if (this.activeFilters.length) {
26736
+ this.$refs.filtersRef.setCascader(this.activeFilters);
26737
+ return;
26738
+ }
26739
+ this.$refs.filtersRef.checkShowAllBoxes();
26740
+ }
26741
+ },
26742
+ syncActiveSpeciesFilters: function() {
26743
+ this.page = 1, this.start = 0;
26744
+ let e = this.getValidatedActiveSpecies(), t = this.activeFilters.filter((e) => e?.term?.toLowerCase() !== "species"), n = e.map((e) => ({
26745
+ facetPropPath: "species",
26746
+ facet: PU(e),
26747
+ term: "Species",
26748
+ tagLabel: PU(e)
26749
+ }));
26750
+ this.activeFilters = [...t, ...n], this.syncCascaderFromActiveFilters(), this.applyFilters(this.activeFilters), this.emitSomaLocations(this.filterOptions);
26751
+ },
26752
+ getCellCardsData: async function(e) {
26753
+ return _K || (vK ||= fetch(e).then((e) => {
26754
+ if (!e.ok) throw Error(`HTTP error! status: ${e.status}`);
26755
+ return e.json();
26756
+ }).then((e) => (_K = e, e)).finally(() => {
26757
+ vK = null;
26758
+ }), vK);
26759
+ },
26760
+ fetchCellTypes: async function(e) {
26761
+ if (e) {
26762
+ this.loadingCards = !0;
26763
+ try {
26764
+ let t = await this.getCellCardsData(e);
26765
+ if (t.DEFAULT_CELL_TYPES) {
26766
+ let e = t.DEFAULT_CELL_TYPES.map((e) => ({
26767
+ ...e,
26768
+ id: NU()
26769
+ }));
26770
+ this.setGeneMappings(t.DEFAULT_GENES), this.allCellTypes = e, this.filterOptions = this.buildFilterOptions(e), this.emitSomaLocations(this.filterOptions), this.syncActiveSpeciesFilters();
26771
+ }
26772
+ } catch (e) {
26773
+ console.error("Error fetching cell types:", e);
26774
+ } finally {
26775
+ this.loadingCards = !1;
26776
+ }
26777
+ }
26778
+ },
26779
+ activateCard: function(e) {
26780
+ this.activeCardId = this.activeCardId === e ? null : e;
26781
+ },
26782
+ openCard: function(e) {
26783
+ this.activeCardId = e;
26784
+ },
26785
+ closeCard: function() {
26786
+ this.activeCardId = null;
26787
+ },
26788
+ openSearch: function(e, t) {
26789
+ this.page = 1, this.start = 0, this.searchInput = String(t || "").trim();
26790
+ let n = e.map((e) => ({
26791
+ facetPropPath: "somaLocations",
26792
+ facet: PU(e.facet || ""),
26793
+ term: e.term || "",
26794
+ tagLabel: PU(e.facet || "")
26795
+ })), r = this.getValidatedActiveSpecies().map((e) => ({
26796
+ facetPropPath: "species",
26797
+ facet: PU(e),
26798
+ term: "Species",
26799
+ tagLabel: PU(e)
26800
+ }));
26801
+ this.activeFilters = [...n, ...r], this.syncCascaderFromActiveFilters(), this.applyFilters(this.activeFilters), this.emitSomaLocations(this.filterOptions), this.searchHistoryUpdate(this.activeFilters, this.searchInput), this.$nextTick(() => this.scrollToTop());
26802
+ },
26803
+ clearSearchClicked: function() {
26804
+ this.searchInput = "", this.searchAndFilterUpdate();
26805
+ },
26806
+ searchEvent: function(e = !1) {
26807
+ (e.keyCode === 13 || e instanceof MouseEvent) && (this.searchInput = this.searchInput.trim(), this.searchAndFilterUpdate());
26808
+ },
26809
+ onResetClick: function() {
26810
+ this.searchInput = "", this.activeFilters = [], this.page = 1, this.start = 0, this.$refs.filtersRef?.checkShowAllBoxes(), this.$refs.searchHistory && (this.$refs.searchHistory.selectValue = "Search history"), this.applyFilters(this.activeFilters), this.emitSomaLocations(this.filterOptions), vz.emit("trackEvent", {
26811
+ event_name: "portal_maps_action_filter",
26812
+ category: "reset",
26813
+ location: "map_sidebar_cell_card_explorer"
26814
+ });
26815
+ },
26816
+ searchAndFilterUpdate: function() {
26817
+ this.page = 1, this.start = 0, this.applyFilters(this.activeFilters), this.emitSomaLocations(this.filterOptions), this.searchHistoryUpdate(this.activeFilters, this.searchInput);
26818
+ },
26819
+ filterUpdate: function(e) {
26820
+ this.activeFilters = [...e], this.page = 1, this.start = 0, this.applyFilters(this.activeFilters), this.emitSomaLocations(this.filterOptions), this.searchHistoryUpdate(this.activeFilters, this.searchInput), this.loadingCards = !1;
26821
+ },
26822
+ numberPerPageUpdate: function(e) {
26823
+ this.numberPerPage = parseInt(e, 10) || 10, vz.emit("trackEvent", {
26824
+ event_name: "portal_maps_cell_card_perPage",
26825
+ category: e + "",
26826
+ location: "map_sidebar_cell_card_explorer"
26827
+ });
26828
+ let t = this.page === 1;
26829
+ this.pageChange(1, t);
26830
+ },
26831
+ pageChange: function(e, t = !1) {
26832
+ this.page = e, this.start = (e - 1) * this.numberPerPage, this.applyFilters(this.activeFilters), this.scrollToTop(), t || vz.emit("trackEvent", {
26833
+ event_name: "portal_maps_cell_card_pagination",
26834
+ category: `page_${this.page}`,
26835
+ location: "map_sidebar_cell_card_explorer"
26836
+ });
26837
+ },
26838
+ scrollToTop: function() {
26839
+ this.$refs.content && this.$refs.content.scroll({
26840
+ top: 0,
26841
+ behavior: "smooth"
26842
+ });
26843
+ },
26844
+ filtersLoading: function() {},
26845
+ searchHistoryUpdate: function(e, t) {
26846
+ this.$refs.searchHistory && (this.$refs.searchHistory.selectValue = "Search history", (e.length || t?.trim()) && this.$refs.searchHistory.addSearchToHistory(e, t));
26847
+ },
26848
+ searchHistorySearch: function(e) {
26849
+ this.searchInput = e.search || "", this.activeFilters = Array.isArray(e.filters) ? [...e.filters] : [], this.page = 1, this.start = 0, this.applyFilters(this.activeFilters), this.$refs.filtersRef && (this.activeFilters.length ? this.$refs.filtersRef.setCascader(this.activeFilters) : this.$refs.filtersRef.checkShowAllBoxes()), this.emitSomaLocations(this.filterOptions);
26850
+ },
26851
+ cascaderReady: function() {
26852
+ this.cascaderIsReady = !0, this.syncCascaderFromActiveFilters();
26853
+ },
26854
+ normalizeFacetValue: function(e) {
26855
+ return String(e || "").trim().toLowerCase();
26856
+ },
26857
+ getSelectedSomaLocationFilters: function() {
26858
+ return (this.activeFilters || []).filter((e) => this.normalizeFacetValue(e?.term) === "soma location" && this.normalizeFacetValue(e?.facet) !== "show all").map((e) => this.normalizeFacetValue(e?.facet)).filter(Boolean);
26859
+ },
26860
+ getAvailableSpeciesSet: function() {
26861
+ let e = /* @__PURE__ */ new Set();
26862
+ return this.allCellTypes.forEach((t) => {
26863
+ let n = this.normalizeFacetValue(t?.species);
26864
+ n && e.add(n);
26865
+ }), e;
26866
+ },
26867
+ getValidatedActiveSpecies: function() {
26868
+ let e = this.getAvailableSpeciesSet(), t = this.activeSpecies.map((e) => this.normalizeActiveSpeciesFilterTerm(e)).filter(Boolean);
26869
+ return [...new Set(t)].filter((t) => e.has(t));
26870
+ },
26871
+ getCellTypesForActiveSpecies: function() {
26872
+ let e = this.getValidatedActiveSpecies();
26873
+ if (!e.length) return this.allCellTypes;
26874
+ let t = new Set(e);
26875
+ return this.allCellTypes.filter((e) => {
26876
+ let n = this.normalizeActiveSpeciesFilterTerm(e?.species);
26877
+ return t.has(n);
26878
+ });
26879
+ },
26880
+ normalizeActiveSpeciesFilterTerm: function(e) {
26881
+ let t = this.normalizeFacetValue(e);
26882
+ return t === "human male" || t === "human female" ? "human" : t;
26883
+ },
26884
+ setGeneMappings: function(e) {
26885
+ let t = {}, n = {};
26886
+ (Array.isArray(e) ? e : []).forEach((e) => {
26887
+ let r = this.normalizeFacetValue(e?.base), i = String(e?.display || "").trim(), a = this.normalizeFacetValue(i);
26888
+ if (r) {
26889
+ if (i) {
26890
+ t[r] = i, n[a] = r;
26891
+ return;
26892
+ }
26893
+ t[r] = r;
26894
+ }
26895
+ }), this.geneBaseToDisplay = t, this.geneDisplayToBase = n;
26896
+ },
26897
+ normalizeSearchTerms: function(e) {
26898
+ return String(e || "").split(",").map((e) => e.trim().toLowerCase()).filter(Boolean);
26899
+ },
26900
+ getCellTypeSearchText: function(e) {
26901
+ let t = (e.relatedCells || []).map((e) => e.label).filter(Boolean).join(" ");
26902
+ return [
26903
+ e.preferredLabel,
26904
+ e.entity,
26905
+ e.species,
26906
+ (e.somaLocations || []).join(" "),
26907
+ e.circuitRole,
26908
+ e.creLine,
26909
+ e.geneExpressionString,
26910
+ e.fiberTypeString,
26911
+ e.physiologyString,
26912
+ e.sourceNomenclatureLabel,
26913
+ t
26914
+ ].filter(Boolean).join(" ").toLowerCase();
26915
+ },
26916
+ matchSearchQuery: function(e, t) {
26917
+ if (!t.length) return !0;
26918
+ let n = this.getCellTypeSearchText(e);
26919
+ return t.some((e) => n.includes(e));
26920
+ },
26921
+ buildFacetChildren: function(e, t) {
26922
+ let n = /* @__PURE__ */ new Set();
26923
+ return e.forEach((e) => {
26924
+ let r = e[t];
26925
+ if (Array.isArray(r)) {
26926
+ r.forEach((e) => {
26927
+ let t = String(e || "").trim();
26928
+ t && n.add(t);
26929
+ });
26930
+ return;
26931
+ }
26932
+ let i = String(r || "").trim();
26933
+ i && n.add(i);
26934
+ }), [...n].sort((e, t) => e.localeCompare(t, void 0, { sensitivity: "base" })).map((e) => ({ label: e }));
26935
+ },
26936
+ buildFilterOptions: function(e) {
26937
+ return [
26938
+ {
26939
+ key: "species",
26940
+ label: "Species",
26941
+ children: this.buildFacetChildren(e, "species")
26942
+ },
26943
+ {
26944
+ key: "somaLocations",
26945
+ label: "Soma location",
26946
+ children: this.buildFacetChildren(e, "somaLocations")
26947
+ },
26948
+ {
26949
+ key: "geneBaseNames",
26950
+ label: "Gene",
26951
+ children: this.buildGeneFacetChildren(e)
26952
+ },
26953
+ {
26954
+ key: "sourceNomenclatureLabel",
26955
+ label: "Source",
26956
+ children: this.buildFacetChildren(e, "sourceNomenclatureLabel")
26957
+ },
26958
+ {
26959
+ key: "notes",
26960
+ label: "Notes",
26961
+ children: [{ label: "with notes" }, { label: "without notes" }]
26962
+ }
26963
+ ].filter((e) => e.children.length > 0);
26964
+ },
26965
+ emitSomaLocations: function(e) {
26966
+ let t = (e || []).find((e) => e.key === "somaLocations"), n = localStorage.getItem("available-name-curie-mapping"), r = n ? JSON.parse(n) : {}, i = this.getSelectedSomaLocationFilters(), a = (this.activeFilters || []).length > 0 && i.length > 0, o = new Set(i), s = this.getFilteredCellTypes(this.activeFilters, this.searchInput).reduce((e, t) => ((Array.isArray(t?.somaLocations) ? t.somaLocations : []).forEach((t) => {
26967
+ let n = String(t || "").trim().toLowerCase();
26968
+ n && e.set(n, (e.get(n) || 0) + 1);
26969
+ }), e), /* @__PURE__ */ new Map()), c = (t?.children || []).map((e) => String(e?.label || "").trim()).filter(Boolean).filter((e) => !a || o.has(e.toLowerCase())).map((e) => ({
26970
+ label: e,
26971
+ curie: Object.keys(r).find((t) => String(r[t] || "").toLowerCase() === e.toLowerCase()) || "",
26972
+ count: s.get(e.toLowerCase()) || 0
26973
+ })), l = [...new Map(c.map((e) => [e.label.toLowerCase(), e])).values()];
26974
+ this.$emit("soma-locations-ready", l);
26975
+ },
26976
+ buildGeneFacetChildren: function(e) {
26977
+ let t = /* @__PURE__ */ new Set();
26978
+ return e.forEach((e) => {
26979
+ (e.geneBaseNames || []).forEach((e) => {
26980
+ let n = this.normalizeFacetValue(e);
26981
+ n && t.add(n);
26982
+ });
26983
+ }), [...t].sort((e, t) => e.localeCompare(t, void 0, { sensitivity: "base" })).map((e) => ({ label: this.geneBaseToDisplay[e] || e }));
26984
+ },
26985
+ matchFieldFilter: function(e, t) {
26986
+ let n = this.normalizeFacetValue(t.facet), r = this.normalizeFacetValue(t.term);
26987
+ if (!n || n === "show all") return !0;
26988
+ if (r === "species") return this.normalizeFacetValue(e.species) === n;
26989
+ if (r === "soma location") return (e.somaLocations || []).some((e) => this.normalizeFacetValue(e) === n);
26990
+ if (r === "gene") {
26991
+ let t = this.geneDisplayToBase[n] || n;
26992
+ return (e.geneBaseNames || []).some((e) => this.normalizeFacetValue(e) === t);
26993
+ }
26994
+ if (r === "circuit role") return this.normalizeFacetValue(e.circuitRole) === n;
26995
+ if (r === "source") return this.normalizeFacetValue(e.sourceNomenclatureLabel) === n;
26996
+ if (r === "notes") {
26997
+ let t = e.alertNotes?.length > 0 || e.curatorNotes?.length > 0;
26998
+ return n === "with notes" ? t : n === "without notes" && !t;
26999
+ }
27000
+ return !1;
27001
+ },
27002
+ getFilteredCellTypes: function(e = this.activeFilters, t = this.searchInput) {
27003
+ let n = this.normalizeSearchTerms(t), r = (e || []).filter((e) => e?.term && e?.facet && this.normalizeFacetValue(e.facet) !== "show all").reduce((e, t) => {
27004
+ let n = this.normalizeFacetValue(t.term);
27005
+ return e[n] || (e[n] = []), e[n].push(t), e;
27006
+ }, {}), i = Object.values(r);
27007
+ return this.allCellTypes.filter((e) => i.every((t) => t.some((t) => this.matchFieldFilter(e, t)))).filter((e) => this.matchSearchQuery(e, n));
27008
+ },
27009
+ applyFilters: function(e) {
27010
+ let t = this.getFilteredCellTypes(e, this.searchInput);
27011
+ this.totalFilteredCount = t.length, this.cellTypes = t.slice(this.start, this.start + this.numberPerPage), this.cellTypes.some((e) => e.id === this.activeCardId) || (this.activeCardId = null), this.$emit("search-changed", {
27012
+ query: this.searchInput,
27013
+ filter: e,
27014
+ tabType: "cellType"
27015
+ });
27016
+ },
27017
+ onRelatedCellClick: function(e) {
27018
+ let t = e.species, n = e.label, r = this.normalizeActiveSpeciesFilterTerm(t);
27019
+ !this.activeFilters.some(function(e) {
27020
+ return this.normalizeFacetValue(e.term) === "species" && this.normalizeFacetValue(e.facet) === this.normalizeFacetValue(r);
27021
+ }, this) && r && this.activeFilters.push({
27022
+ facetPropPath: "species",
27023
+ facet: PU(r),
27024
+ term: "Species",
27025
+ tagLabel: PU(r)
27026
+ }), this.searchInput = "", this.page = 1, this.start = 0, this.applyFilters(this.activeFilters), this.syncCascaderFromActiveFilters(), this.emitSomaLocations(this.filterOptions);
27027
+ let i = this.allCellTypes.find(function(e) {
27028
+ return (e.preferredLabel || "").toLowerCase() === (n || "").toLowerCase();
27029
+ });
27030
+ i && (this.activeCardId = i.id), this.$nextTick(function() {
27031
+ this.scrollToTop();
27032
+ });
27033
+ },
27034
+ showSomaLocation: function(e) {
27035
+ this.$emit("soma-location-hovered", e);
27036
+ },
27037
+ onDatasetSearch: function(e) {
27038
+ this.$emit("dataset-search", e);
27039
+ },
27040
+ onConnectivitySearch: function(e) {
27041
+ this.$emit("connectivity-search", e);
27042
+ },
27043
+ getSearch: function() {
27044
+ return this.searchInput;
27045
+ },
27046
+ getFilters: function() {
27047
+ return this.activeFilters.some((e) => e.facet.toLowerCase() !== "show all") ? this.activeFilters : [];
27048
+ }
27049
+ }
27050
+ }, bK = { class: "header" }, xK = {
27051
+ class: "content scrollbar",
27052
+ ref: "content"
27053
+ };
27054
+ function SK(e, n, r, i, a, o) {
27055
+ let s = Oh, l = H("MapSvgIcon"), f = kx, h = Rg, g = _G, _ = ZU, v = gK, y = wx, b = C_, x = Bx;
27056
+ return L(), c(b, {
27057
+ "body-style": e.bodyStyle,
27058
+ class: "content-card"
27059
+ }, {
27060
+ header: K(() => [d("div", bK, [
27061
+ d("div", { class: D(["search-input-container", { "is-focus": e.searchInput }]) }, [m(s, {
27062
+ class: "search-input",
27063
+ placeholder: "Search",
27064
+ modelValue: e.searchInput,
27065
+ "onUpdate:modelValue": n[0] ||= (t) => e.searchInput = t,
27066
+ onKeyup: o.searchEvent,
27067
+ clearable: "",
27068
+ onClear: o.clearSearchClicked
27069
+ }, null, 8, [
27070
+ "modelValue",
27071
+ "onKeyup",
27072
+ "onClear"
27073
+ ]), m(f, {
27074
+ width: "350",
27075
+ trigger: "hover",
27076
+ "popper-class": "filter-help-popover"
27077
+ }, {
27078
+ reference: K(() => [m(l, {
27079
+ icon: "help",
27080
+ class: "help"
27081
+ })]),
27082
+ default: K(() => [n[2] ||= d("div", null, [
27083
+ d("strong", null, "Search rules:"),
27084
+ d("ul", null, [d("li", null, [
27085
+ d("strong", null, "Multiple Terms:"),
27086
+ p(" Separate terms with a comma ( "),
27087
+ d("code", null, ","),
27088
+ p(" ). This will find cell cards that match any of the terms (an \"OR\" search). ")
27089
+ ]), d("li", null, [d("strong", null, "Exact Phrase:"), p(" Terms within a comma block will be matched as an exact phrase. ")])]),
27090
+ d("br"),
27091
+ d("strong", null, "Examples:"),
27092
+ d("ul", null, [d("li", null, [
27093
+ d("strong", null, "To find by exact phrase:"),
27094
+ p(" Searching for "),
27095
+ d("code", null, "soma location"),
27096
+ p(" will find any card containing "),
27097
+ d("code", null, "\"soma location\""),
27098
+ p(" . ")
27099
+ ]), d("li", null, [
27100
+ d("strong", null, "To find by multiple terms:"),
27101
+ p(" Searching for "),
27102
+ d("code", null, "mouse, vagal"),
27103
+ p(" will find cards that contain either "),
27104
+ d("code", null, "mouse"),
27105
+ p(" OR "),
27106
+ d("code", null, "vagal"),
27107
+ p(" . ")
27108
+ ])])
27109
+ ], -1)]),
27110
+ _: 1
27111
+ })], 2),
27112
+ m(h, {
27113
+ type: "primary",
27114
+ class: "button",
27115
+ onClick: o.searchEvent,
27116
+ size: "large"
27117
+ }, {
27118
+ default: K(() => [...n[3] ||= [p(" Search ", -1)]]),
27119
+ _: 1
27120
+ }, 8, ["onClick"]),
27121
+ m(h, {
27122
+ link: "",
27123
+ class: "el-button-link",
27124
+ onClick: o.onResetClick,
27125
+ size: "large"
27126
+ }, {
27127
+ default: K(() => [...n[4] ||= [p("Reset", -1)]]),
27128
+ _: 1
27129
+ }, 8, ["onClick"])
27130
+ ])]),
27131
+ default: K(() => [
27132
+ m(g, {
27133
+ class: "filters",
27134
+ ref: "filtersRef",
27135
+ entry: o.filterEntry,
27136
+ envVars: r.envVars,
27137
+ onFilterResults: o.filterUpdate,
27138
+ onNumberPerPage: o.numberPerPageUpdate,
27139
+ onLoading: o.filtersLoading,
27140
+ onCascaderReady: o.cascaderReady
27141
+ }, null, 8, [
27142
+ "entry",
27143
+ "envVars",
27144
+ "onFilterResults",
27145
+ "onNumberPerPage",
27146
+ "onLoading",
27147
+ "onCascaderReady"
27148
+ ]),
27149
+ m(_, {
27150
+ ref: "searchHistory",
27151
+ localStorageKey: "sparc.science-cell-card-search-history",
27152
+ onSearch: o.searchHistorySearch
27153
+ }, null, 8, ["onSearch"]),
27154
+ Ce((L(), u("div", xK, [(L(!0), u(t, null, ie(e.cellTypes, (t) => (L(), c(v, {
27155
+ key: t.id,
27156
+ cellType: t,
27157
+ isActive: e.activeCardId === t.id,
27158
+ onOpen: (e) => o.openCard(t.id),
27159
+ onClose: o.closeCard,
27160
+ onDatasetSearch: o.onDatasetSearch,
27161
+ onConnectivitySearch: o.onConnectivitySearch,
27162
+ onSomaLocationHovered: o.showSomaLocation,
27163
+ onRelatedCellClick: o.onRelatedCellClick
27164
+ }, null, 8, [
27165
+ "cellType",
27166
+ "isActive",
27167
+ "onOpen",
27168
+ "onClose",
27169
+ "onDatasetSearch",
27170
+ "onConnectivitySearch",
27171
+ "onSomaLocationHovered",
27172
+ "onRelatedCellClick"
27173
+ ]))), 128)), m(y, {
27174
+ class: "pagination",
27175
+ "current-page": e.page,
27176
+ "onUpdate:currentPage": n[1] ||= (t) => e.page = t,
27177
+ "hide-on-single-page": "",
27178
+ large: "",
27179
+ layout: "prev, pager, next",
27180
+ "page-size": e.numberPerPage,
27181
+ total: e.totalFilteredCount,
27182
+ onCurrentChange: o.pageChange
27183
+ }, null, 8, [
27184
+ "current-page",
27185
+ "page-size",
27186
+ "total",
27187
+ "onCurrentChange"
27188
+ ])])), [[x, e.loadingCards]])
27189
+ ]),
27190
+ _: 1
27191
+ }, 8, ["body-style"]);
27192
+ }
27193
+ var CK = /*#__PURE__*/ uS(yK, [["render", SK], ["__scopeId", "data-v-47788c18"]]), wK = {
26281
27194
  name: "ContributorItem",
26282
27195
  props: { contributor: {
26283
27196
  type: Object,
@@ -26291,22 +27204,22 @@ var CG = /*#__PURE__*/ uS(vG, [["render", SG], ["__scopeId", "data-v-96a11064"]]
26291
27204
  return this.contributor.url.indexOf("RRID:") > -1 ? "RRID:" + this.contributor.url.split("RRID:")[1] : "";
26292
27205
  }
26293
27206
  }
26294
- }, TG = { class: "contributor-item" }, EG = { class: "popover-content" }, DG = { class: "popover-name" }, OG = {
27207
+ }, TK = { class: "contributor-item" }, EK = { class: "popover-content" }, DK = { class: "popover-name" }, OK = {
26295
27208
  key: 0,
26296
27209
  class: "popover-url"
26297
- }, kG = ["href"], AG = {
27210
+ }, kK = ["href"], AK = {
26298
27211
  key: 1,
26299
27212
  class: "popover-url"
26300
- }, jG = ["href"], MG = {
27213
+ }, jK = ["href"], MK = {
26301
27214
  key: 2,
26302
27215
  class: "popover-organization"
26303
- }, NG = {
27216
+ }, NK = {
26304
27217
  key: 3,
26305
27218
  class: "popover-role"
26306
27219
  };
26307
- function PG(e, t, n, r, i, a) {
27220
+ function PK(e, t, n, r, i, a) {
26308
27221
  let o = kx;
26309
- return L(), u("div", TG, [m(o, {
27222
+ return L(), u("div", TK, [m(o, {
26310
27223
  placement: "top-start",
26311
27224
  width: "320",
26312
27225
  trigger: "hover",
@@ -26314,33 +27227,31 @@ function PG(e, t, n, r, i, a) {
26314
27227
  teleported: !1
26315
27228
  }, {
26316
27229
  reference: K(() => [d("span", null, U(n.contributor.name), 1)]),
26317
- default: K(() => [d("div", EG, [
26318
- d("div", DG, U(n.contributor.name), 1),
26319
- n.contributor.orcidId ? (L(), u("div", OG, [
27230
+ default: K(() => [d("div", EK, [
27231
+ d("div", DK, U(n.contributor.name), 1),
27232
+ n.contributor.orcidId ? (L(), u("div", OK, [
26320
27233
  t[0] ||= d("strong", null, "ORCID iD", -1),
26321
27234
  t[1] ||= p(" : ", -1),
26322
27235
  d("a", {
26323
27236
  href: n.contributor.url,
26324
27237
  target: "_blank"
26325
- }, U(a.orcidId), 9, kG)
27238
+ }, U(a.orcidId), 9, kK)
26326
27239
  ])) : l("", !0),
26327
- a.rrid ? (L(), u("div", AG, [
27240
+ a.rrid ? (L(), u("div", AK, [
26328
27241
  t[2] ||= d("strong", null, "RRID", -1),
26329
27242
  t[3] ||= p(" : ", -1),
26330
27243
  d("a", {
26331
27244
  href: n.contributor.url,
26332
27245
  target: "_blank"
26333
- }, U(a.rrid), 9, jG)
27246
+ }, U(a.rrid), 9, jK)
26334
27247
  ])) : l("", !0),
26335
- n.contributor.organization ? (L(), u("div", MG, [t[4] ||= d("strong", null, "Organization", -1), p(" : " + U(n.contributor.organization), 1)])) : l("", !0),
26336
- n.contributor.role ? (L(), u("div", NG, [t[5] ||= d("strong", null, "Title", -1), p(" : " + U(n.contributor.role), 1)])) : l("", !0)
27248
+ n.contributor.organization ? (L(), u("div", MK, [t[4] ||= d("strong", null, "Organization", -1), p(" : " + U(n.contributor.organization), 1)])) : l("", !0),
27249
+ n.contributor.role ? (L(), u("div", NK, [t[5] ||= d("strong", null, "Title", -1), p(" : " + U(n.contributor.role), 1)])) : l("", !0)
26337
27250
  ])]),
26338
27251
  _: 1
26339
27252
  })]);
26340
27253
  }
26341
- var FG = /*#__PURE__*/ uS(wG, [["render", PG], ["__scopeId", "data-v-fe8a4738"]]), IG = (e) => e.replace(/\w\S*/g, (e) => e.charAt(0).toUpperCase() + e.substr(1).toLowerCase()), LG = function(e) {
26342
- return e ? e.charAt(0).toUpperCase() + e.slice(1) : "";
26343
- }, RG = {
27254
+ var FK = /*#__PURE__*/ uS(wK, [["render", PK], ["__scopeId", "data-v-fe8a4738"]]), IK = (e) => e.replace(/\w\S*/g, (e) => e.charAt(0).toUpperCase() + e.substr(1).toLowerCase()), LK = {
26344
27255
  name: "ConnectivityInfo",
26345
27256
  components: {
26346
27257
  ElIconWarning: qe,
@@ -26353,7 +27264,7 @@ var FG = /*#__PURE__*/ uS(wG, [["render", PG], ["__scopeId", "data-v-fe8a4738"]]
26353
27264
  ConnectivityGraph: Xe,
26354
27265
  ConnectivityList: Ze,
26355
27266
  ConnectivityReconciliationList: Qe,
26356
- ContributorItem: FG
27267
+ ContributorItem: FK
26357
27268
  },
26358
27269
  props: {
26359
27270
  connectivityEntry: {
@@ -26483,10 +27394,10 @@ var FG = /*#__PURE__*/ uS(wG, [["render", PG], ["__scopeId", "data-v-fe8a4738"]]
26483
27394
  },
26484
27395
  methods: {
26485
27396
  titleCase: function(e) {
26486
- return IG(e);
27397
+ return IK(e);
26487
27398
  },
26488
27399
  capitalise: function(e) {
26489
- return LG(e);
27400
+ return PU(e);
26490
27401
  },
26491
27402
  toggleTitleExpansion: function() {
26492
27403
  this.isTitleExpanded = !this.isTitleExpanded, this.isTitleExpanded || this.$nextTick(() => {
@@ -26568,7 +27479,7 @@ var FG = /*#__PURE__*/ uS(wG, [["render", PG], ["__scopeId", "data-v-fe8a4738"]]
26568
27479
  },
26569
27480
  getUpdateCopyContent: function(e) {
26570
27481
  if (!this.entry) return "";
26571
- let t = [], n = this.entry?.title || "", r = this.entryData?.["long-label"] || this.entry?.["long-label"] || "", i = this.entry.featureId, a = [], o = LG(r || n);
27482
+ let t = [], n = this.entry?.title || "", r = this.entryData?.["long-label"] || this.entry?.["long-label"] || "", i = this.entry.featureId, a = [], o = PU(r || n);
26572
27483
  o && a.push(`<div><strong>${o}</strong></div>`), i?.length && (typeof i == "object" ? a.push(`<div><strong>Id:</strong> ${i[0]}</div>`) : a.push(`<div><strong>Id:</strong> ${i}</div>`)), t.push(`<div>${a.join("\n")}</div>`), this.entry.provenanceTaxonomyLabel?.length && t.push(`<div>${this.provSpeciesDescription}</div>`), this.entry.paths && t.push(`<div>${this.entry.paths}</div>`);
26573
27484
  let s = !1, c = !1;
26574
27485
  function l(e, t, n = []) {
@@ -26577,7 +27488,7 @@ var FG = /*#__PURE__*/ uS(wG, [["render", PG], ["__scopeId", "data-v-fe8a4738"]]
26577
27488
  let t = [];
26578
27489
  e.split(",").forEach((e) => {
26579
27490
  let r = n.find((t) => t.name === e.trim());
26580
- r ? t.push(`${LG(e)} (${r.id})`) : t.push(`${LG(e)}`);
27491
+ r ? t.push(`${PU(e)} (${r.id})`) : t.push(`${PU(e)}`);
26581
27492
  }), i.push(t.join(","));
26582
27493
  });
26583
27494
  let a = i.map((e) => `<li>${e}</li>`).join("\n");
@@ -26593,12 +27504,12 @@ var FG = /*#__PURE__*/ uS(wG, [["render", PG], ["__scopeId", "data-v-fe8a4738"]]
26593
27504
  return typeof t == "string" ? t : t?.[0] || null;
26594
27505
  }, a = r.map((e) => {
26595
27506
  if (e?.sckanId && e?.mapId && JSON.stringify(e.sckanId) === JSON.stringify(e.mapId)) {
26596
- let t = i(e.mapId), n = LG(e.sckanLabel || e.mapLabel || "-");
27507
+ let t = i(e.mapId), n = PU(e.sckanLabel || e.mapLabel || "-");
26597
27508
  return t ? `${n} (${t})` : n;
26598
27509
  }
26599
- let t = e?.sckanLabel ? LG(e.sckanLabel) : "-", n = i(e.sckanId), r = n ? `${t} (${n})` : t;
27510
+ let t = e?.sckanLabel ? PU(e.sckanLabel) : "-", n = i(e.sckanId), r = n ? `${t} (${n})` : t;
26600
27511
  if (!e?.mapId?.length || !e?.mapLabel) return s = !0, `<s>${r}</s> (unavailable on <strong>Map</strong>) *`;
26601
- let a = LG(e.mapLabel), o = i(e.mapId), l = o ? `${a} (${o})` : a;
27512
+ let a = PU(e.mapLabel), o = i(e.mapId), l = o ? `${a} (${o})` : a;
26602
27513
  return c = !0, `<s>${r}</s> (<strong>Map:</strong> ${l}) **`;
26603
27514
  }).map((e) => `<li>${e}</li>`).join("\n");
26604
27515
  return n += "\n", n += `<ul>${a}</ul>`, n;
@@ -26784,7 +27695,7 @@ var FG = /*#__PURE__*/ uS(wG, [["render", PG], ["__scopeId", "data-v-fe8a4738"]]
26784
27695
  getConnectivityError: function(e) {
26785
27696
  let { errorData: t, errorMessage: n } = e;
26786
27697
  return {
26787
- errorConnectivities: t.map((e) => LG(e.label)).join(", ").replace(/, ([^,]*)$/, " and $1"),
27698
+ errorConnectivities: t.map((e) => PU(e.label)).join(", ").replace(/, ([^,]*)$/, " and $1"),
26788
27699
  errorMessage: n
26789
27700
  };
26790
27701
  },
@@ -26832,20 +27743,10 @@ var FG = /*#__PURE__*/ uS(wG, [["render", PG], ["__scopeId", "data-v-fe8a4738"]]
26832
27743
  vz.emit("trackEvent", e);
26833
27744
  },
26834
27745
  showAlertMessage: function() {
26835
- this.$nextTick(() => {
26836
- let e = this.$refs.alertElement;
26837
- e && e.scrollIntoView({
26838
- behavior: "smooth",
26839
- block: "start",
26840
- inline: "nearest"
26841
- });
26842
- });
27746
+ IU(this, "alertElement");
26843
27747
  },
26844
27748
  formatAlertText: function(e) {
26845
- return e ? e.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/(https?:\/\/[^\s"<>[]+)/g, (e) => {
26846
- let t = e.match(/^(.*?)([\].,;:!?]*)$/), n = t ? t[1] : e;
26847
- return `<a href="${n}" target="_blank" rel="noopener noreferrer">${n}</a>${t ? t[2] : ""}`;
26848
- }).replace(/\\n/g, "\n").replace(/\r\n/g, "\n").replace(/\r/g, "\n").split("\n").map((e) => `<div class="alert-line">${e.replace(/^\s*([A-Za-z][^:<]{0,120}:)/, "<strong>$1</strong>")}</div>`).join("\n") : "";
27749
+ return FU(e, { formatLines: !0 });
26849
27750
  }
26850
27751
  },
26851
27752
  mounted: function() {
@@ -26854,55 +27755,55 @@ var FG = /*#__PURE__*/ uS(wG, [["render", PG], ["__scopeId", "data-v-fe8a4738"]]
26854
27755
  this.connectivityError = { ...t };
26855
27756
  });
26856
27757
  }
26857
- }, zG = {
27758
+ }, RK = {
26858
27759
  key: 0,
26859
27760
  class: "main"
26860
- }, BG = { class: "connectivity-info-title" }, VG = { class: "title-content" }, HG = {
27761
+ }, zK = { class: "connectivity-info-title" }, BK = { class: "title-content" }, VK = {
26861
27762
  key: 0,
26862
27763
  class: "block"
26863
- }, UG = { class: "title-group" }, WG = { class: "subtitle" }, GG = { class: "id-tag" }, KG = {
27764
+ }, HK = { class: "title-group" }, UK = { class: "subtitle" }, WK = { class: "id-tag" }, GK = {
26864
27765
  key: 0,
26865
27766
  class: "subtitle"
26866
- }, qG = {
27767
+ }, KK = {
26867
27768
  key: 1,
26868
27769
  class: "block"
26869
- }, JG = { class: "title" }, YG = { class: "title-buttons" }, XG = { class: "block attribute-title-container" }, ZG = {
27770
+ }, qK = { class: "title" }, JK = { class: "title-buttons" }, YK = { class: "block attribute-title-container" }, XK = {
26870
27771
  key: 0,
26871
27772
  style: { "word-break": "keep-all" }
26872
- }, QG = {
27773
+ }, ZK = {
26873
27774
  key: 1,
26874
27775
  style: { "word-break": "keep-all" }
26875
- }, $G = {
27776
+ }, QK = {
26876
27777
  key: 2,
26877
27778
  class: "connectivity-legends"
26878
- }, eK = { class: "block buttons-row" }, tK = {
27779
+ }, $K = { class: "block buttons-row" }, eq = {
26879
27780
  key: 0,
26880
27781
  class: "population-details-source"
26881
- }, nK = {
27782
+ }, tq = {
26882
27783
  key: 0,
26883
27784
  class: "block"
26884
- }, rK = ["origin-item-label"], iK = ["origin-item-label", "onMouseenter"], aK = { class: "content-container content-container-connectivity" }, oK = { class: "content-container content-container-connectivity" }, sK = {
27785
+ }, nq = ["origin-item-label"], rq = ["origin-item-label", "onMouseenter"], iq = { class: "content-container content-container-connectivity" }, aq = { class: "content-container content-container-connectivity" }, oq = {
26885
27786
  key: 1,
26886
27787
  class: "content-container content-container-references"
26887
- }, cK = {
27788
+ }, sq = {
26888
27789
  key: 2,
26889
27790
  ref: "alertElement",
26890
27791
  class: "content-container content-container-alert"
26891
- }, lK = { class: "block" }, uK = ["innerHTML"], dK = {
27792
+ }, cq = { class: "block" }, lq = ["innerHTML"], uq = {
26892
27793
  key: 3,
26893
27794
  class: "content-container"
26894
- }, fK = { class: "block consultant-block" }, pK = {
27795
+ }, dq = { class: "block consultant-block" }, fq = {
26895
27796
  key: 1,
26896
27797
  class: "consultant-loading"
26897
- }, mK = {
27798
+ }, pq = {
26898
27799
  key: 2,
26899
27800
  class: "consultant-error"
26900
- }, hK = { key: 0 }, gK = { key: 1 }, _K = ["onClick"];
26901
- function vK(e, n, r, i, a, o) {
26902
- let s = ke, f = Ee, h = zp, g = Ke, _ = Rg, v = Ve, y = kx, b = H("CopyToClipboard"), x = Pe, S = qe, C = Jv, w = Yv, T = Ue, E = H("connectivity-reconciliation-list"), O = H("connectivity-list"), k = H("connectivity-graph"), A = H("ExternalResourceCard"), j = FG, M = Bx;
26903
- return o.entry ? (L(), u("div", zG, [
26904
- d("div", BG, [d("div", VG, [o.entry.title ? (L(), u("div", HG, [
26905
- d("div", UG, [d("div", {
27801
+ }, mq = { key: 0 }, hq = { key: 1 }, gq = ["onClick"];
27802
+ function _q(e, n, r, i, a, o) {
27803
+ let s = ke, f = Ee, h = zp, g = Ke, _ = Rg, v = Ve, y = kx, b = H("CopyToClipboard"), x = Pe, S = qe, C = Jv, w = Yv, T = Ue, E = H("connectivity-reconciliation-list"), O = H("connectivity-list"), k = H("connectivity-graph"), A = H("ExternalResourceCard"), j = FK, M = Bx;
27804
+ return o.entry ? (L(), u("div", RK, [
27805
+ d("div", zK, [d("div", BK, [o.entry.title ? (L(), u("div", VK, [
27806
+ d("div", HK, [d("div", {
26906
27807
  ref: "titleElement",
26907
27808
  class: D(["title", { "title--clamped": !e.isTitleExpanded }]),
26908
27809
  onClick: n[0] ||= (...e) => o.toggleTitleExpansion && o.toggleTitleExpansion(...e)
@@ -26915,7 +27816,7 @@ function vK(e, n, r, i, a, o) {
26915
27816
  default: K(() => [e.isTitleExpanded ? (L(), c(s, { key: 0 })) : (L(), c(f, { key: 1 }))]),
26916
27817
  _: 1
26917
27818
  })])) : l("", !0)]),
26918
- d("div", WG, [d("span", GG, U(o.entry.featureId[0]), 1), o.entry.featuresAlert?.length ? (L(), c(_, {
27819
+ d("div", UK, [d("span", WK, U(o.entry.featureId[0]), 1), o.entry.featuresAlert?.length ? (L(), c(_, {
26919
27820
  key: 0,
26920
27821
  round: "",
26921
27822
  size: "small",
@@ -26928,8 +27829,8 @@ function vK(e, n, r, i, a, o) {
26928
27829
  }), n[6] ||= p(" Notes ", -1)]),
26929
27830
  _: 1
26930
27831
  }, 8, ["onClick"])) : l("", !0)]),
26931
- o.hasProvenanceTaxonomyLabel ? (L(), u("div", KG, U(o.provSpeciesDescription), 1)) : l("", !0)
26932
- ])) : (L(), u("div", qG, [d("div", JG, U(o.entry.featureId), 1)]))]), d("div", YG, [
27832
+ o.hasProvenanceTaxonomyLabel ? (L(), u("div", GK, U(o.provSpeciesDescription), 1)) : l("", !0)
27833
+ ])) : (L(), u("div", KK, [d("div", qK, U(o.entry.featureId), 1)]))]), d("div", JK, [
26933
27834
  m(y, {
26934
27835
  width: "auto",
26935
27836
  trigger: "hover",
@@ -26976,7 +27877,7 @@ function vK(e, n, r, i, a, o) {
26976
27877
  _: 1
26977
27878
  })) : l("", !0)
26978
27879
  ])]),
26979
- d("div", { class: D(["content-container population-details", { "flex-row": o.hasSingleConnectivityList }]) }, [d("div", XG, [n[10] ||= d("span", { class: "attribute-title" }, "Population Details", -1), e.activeView === "listView" ? (L(), c(y, {
27880
+ d("div", { class: D(["content-container population-details", { "flex-row": o.hasSingleConnectivityList }]) }, [d("div", YK, [n[10] ||= d("span", { class: "attribute-title" }, "Population Details", -1), e.activeView === "listView" ? (L(), c(y, {
26980
27881
  key: 0,
26981
27882
  width: "250",
26982
27883
  trigger: "hover",
@@ -26987,14 +27888,14 @@ function vK(e, n, r, i, a, o) {
26987
27888
  default: K(() => [m(S)]),
26988
27889
  _: 1
26989
27890
  })]),
26990
- default: K(() => [o.hasSingleConnectivityList ? (L(), u("span", ZG, " This list is ordered alphabetically. Switch to graph view for path details, and use the legend below for reconciliation status. ")) : (L(), u("span", QG, " This list is ordered alphabetically, switch to graph view for path details. ")), o.hasSingleConnectivityList ? (L(), u("div", $G, [...n[9] ||= [
27891
+ default: K(() => [o.hasSingleConnectivityList ? (L(), u("span", XK, " This list is ordered alphabetically. Switch to graph view for path details, and use the legend below for reconciliation status. ")) : (L(), u("span", ZK, " This list is ordered alphabetically, switch to graph view for path details. ")), o.hasSingleConnectivityList ? (L(), u("div", QK, [...n[9] ||= [
26991
27892
  d("div", { class: "legend-title" }, "Legend", -1),
26992
27893
  d("span", { class: "legend-item" }, [d("span", { class: "legend-color differ" }), p(" SCKAN feature alias to Map feature ")], -1),
26993
27894
  d("span", { class: "legend-item" }, [d("span", { class: "legend-color unavailable" }), p(" SCKAN feature unavailable on Map ")], -1),
26994
27895
  d("span", { class: "legend-item" }, [d("span", { class: "legend-color mapped" }), p(" SCKAN feature available on Map ")], -1)
26995
27896
  ]])) : l("", !0)]),
26996
27897
  _: 1
26997
- })) : l("", !0)]), d("div", eK, [o.hasSingleConnectivityList ? l("", !0) : (L(), u("div", tK, [d("span", null, [n[12] ||= p(" Connectivity from: ", -1), m(y, {
27898
+ })) : l("", !0)]), d("div", $K, [o.hasSingleConnectivityList ? l("", !0) : (L(), u("div", eq, [d("span", null, [n[12] ||= p(" Connectivity from: ", -1), m(y, {
26998
27899
  width: "320",
26999
27900
  trigger: "hover",
27000
27901
  teleported: !1,
@@ -27041,11 +27942,11 @@ function vK(e, n, r, i, a, o) {
27041
27942
  default: K(() => [...n[16] ||= [p(" Graph view ", -1)]]),
27042
27943
  _: 1
27043
27944
  }, 8, ["class"])], 2)])], 2),
27044
- o.entry["nerve-label"] ? (L(), u("div", nK, [n[18] ||= d("div", { class: "attribute-title-container" }, [d("span", { class: "attribute-title" }, "Nerves")], -1), (L(!0), u(t, null, ie(o.entry["nerve-label"], (e, r) => (L(), u("div", { key: r }, [(L(), u("div", {
27945
+ o.entry["nerve-label"] ? (L(), u("div", tq, [n[18] ||= d("div", { class: "attribute-title-container" }, [d("span", { class: "attribute-title" }, "Nerves")], -1), (L(!0), u(t, null, ie(o.entry["nerve-label"], (e, r) => (L(), u("div", { key: r }, [(L(), u("div", {
27045
27946
  class: "attribute-content",
27046
27947
  "origin-item-label": e.nerve,
27047
27948
  key: e.nerve
27048
- }, [d("span", null, U(o.capitalise(e.nerve)), 1)], 8, rK)), (L(!0), u(t, null, ie(e.subNerves, (e) => (L(), u("div", {
27949
+ }, [d("span", null, U(o.capitalise(e.nerve)), 1)], 8, nq)), (L(!0), u(t, null, ie(e.subNerves, (e) => (L(), u("div", {
27049
27950
  class: "attribute-content",
27050
27951
  style: { "margin-left": "1rem" },
27051
27952
  "origin-item-label": e,
@@ -27067,8 +27968,8 @@ function vK(e, n, r, i, a, o) {
27067
27968
  }, 8, ["onClick"])]),
27068
27969
  default: K(() => [n[17] ||= d("span", null, "Search sub nerve", -1)]),
27069
27970
  _: 2
27070
- }, 1024), d("span", null, U(o.capitalise(e)), 1)], 40, iK))), 128))]))), 128))])) : l("", !0),
27071
- Ce(d("div", aK, [o.hasSingleConnectivityList ? Ce((L(), c(E, {
27971
+ }, 1024), d("span", null, U(o.capitalise(e)), 1)], 40, rq))), 128))]))), 128))])) : l("", !0),
27972
+ Ce(d("div", iq, [o.hasSingleConnectivityList ? Ce((L(), c(E, {
27072
27973
  key: `${o.connectivityKey}list`,
27073
27974
  entry: o.entry,
27074
27975
  origins: o.origins,
@@ -27129,7 +28030,7 @@ function vK(e, n, r, i, a, o) {
27129
28030
  "onConnectivityClicked",
27130
28031
  "onConnectivityActionClick"
27131
28032
  ])), [[M, e.connectivityLoading]])], 512), [[be, e.activeView === "listView"]]),
27132
- Ce(d("div", oK, [e.graphViewLoaded ? (L(), u(t, { key: 0 }, [m(_, {
28033
+ Ce(d("div", aq, [e.graphViewLoaded ? (L(), u(t, { key: 0 }, [m(_, {
27133
28034
  class: "button",
27134
28035
  onClick: o.openGraphInViewer
27135
28036
  }, {
@@ -27171,7 +28072,7 @@ function vK(e, n, r, i, a, o) {
27171
28072
  "hasSingleConnectivityList",
27172
28073
  "onTapNode"
27173
28074
  ])), [[M, e.connectivityLoading]])], 64)) : l("", !0)], 512), [[be, e.activeView === "graphView"]]),
27174
- o.resources.length ? (L(), u("div", sK, [m(A, {
28075
+ o.resources.length ? (L(), u("div", oq, [m(A, {
27175
28076
  resources: o.resources,
27176
28077
  onReferencesLoaded: o.onReferencesLoaded,
27177
28078
  onShowReferenceConnectivities: o.onShowReferenceConnectivities,
@@ -27182,25 +28083,25 @@ function vK(e, n, r, i, a, o) {
27182
28083
  "onShowReferenceConnectivities",
27183
28084
  "onTrackEvent"
27184
28085
  ])])) : l("", !0),
27185
- o.entry.featuresAlert?.length ? (L(), u("div", cK, [n[20] ||= d("div", { class: "block attribute-title-container" }, [d("span", { class: "attribute-title" }, "Notes")], -1), d("div", lK, [(L(!0), u(t, null, ie(o.entry.featuresAlert, (e, t) => (L(), u("div", {
28086
+ o.entry.featuresAlert?.length ? (L(), u("div", sq, [n[20] ||= d("div", { class: "block attribute-title-container" }, [d("span", { class: "attribute-title" }, "Notes")], -1), d("div", cq, [(L(!0), u(t, null, ie(o.entry.featuresAlert, (e, t) => (L(), u("div", {
27186
28087
  class: "alert-block",
27187
28088
  key: t,
27188
28089
  innerHTML: o.formatAlertText(e)
27189
- }, null, 8, uK))), 128))])], 512)) : l("", !0),
27190
- e.expertConsultants.length ? (L(), u("div", dK, [n[23] ||= d("div", { class: "block attribute-title-container" }, [d("span", { class: "attribute-title" }, "Expert Consultants")], -1), d("ul", fK, [(L(!0), u(t, null, ie(e.expertConsultants, (e) => (L(), u("li", { key: e.url }, [e.name ? (L(), c(j, {
28090
+ }, null, 8, lq))), 128))])], 512)) : l("", !0),
28091
+ e.expertConsultants.length ? (L(), u("div", uq, [n[23] ||= d("div", { class: "block attribute-title-container" }, [d("span", { class: "attribute-title" }, "Expert Consultants")], -1), d("ul", dq, [(L(!0), u(t, null, ie(e.expertConsultants, (e) => (L(), u("li", { key: e.url }, [e.name ? (L(), c(j, {
27191
28092
  key: 0,
27192
28093
  contributor: e
27193
- }, null, 8, ["contributor"])) : e.error ? l("", !0) : (L(), u("div", pK, [d("span", null, "Loading " + U(e.url), 1)])), e.error ? (L(), u("div", mK, [e.errorMessage ? (L(), u("span", hK, U(e.errorMessage), 1)) : (L(), u("span", gK, "Sorry, something went wrong.")), e.refreshable ? (L(), u(t, { key: 2 }, [
28094
+ }, null, 8, ["contributor"])) : e.error ? l("", !0) : (L(), u("div", fq, [d("span", null, "Loading " + U(e.url), 1)])), e.error ? (L(), u("div", pq, [e.errorMessage ? (L(), u("span", mq, U(e.errorMessage), 1)) : (L(), u("span", hq, "Sorry, something went wrong.")), e.refreshable ? (L(), u(t, { key: 2 }, [
27194
28095
  n[21] ||= d("br", null, null, -1),
27195
28096
  n[22] ||= p(" Please try again. ", -1),
27196
28097
  d("span", {
27197
28098
  class: "reload-button",
27198
28099
  onClick: (t) => o.reloadConsultant(e)
27199
- }, "Reload", 8, _K)
28100
+ }, "Reload", 8, gq)
27200
28101
  ], 64)) : l("", !0)])) : l("", !0)]))), 128))])])) : l("", !0)
27201
28102
  ])) : l("", !0);
27202
28103
  }
27203
- var yK = /*#__PURE__*/ uS(RG, [["render", vK], ["__scopeId", "data-v-cbf988e3"]]), bK = {
28104
+ var vq = /*#__PURE__*/ uS(LK, [["render", _q], ["__scopeId", "data-v-f693e136"]]), yq = {
27204
28105
  name: "ConnectivityCard",
27205
28106
  data() {
27206
28107
  return { displayFields: ["id", "nerve-label"] };
@@ -27231,7 +28132,7 @@ var yK = /*#__PURE__*/ uS(RG, [["render", vK], ["__scopeId", "data-v-cbf988e3"]]
27231
28132
  },
27232
28133
  methods: {
27233
28134
  capitalise: function(e) {
27234
- return e ? e.charAt(0).toUpperCase() + e.slice(1) : "";
28135
+ return PU(e);
27235
28136
  },
27236
28137
  cardClicked: function(e) {
27237
28138
  this.loading || (this.$emit("open-connectivity", e), vz.emit("trackEvent", {
@@ -27241,28 +28142,28 @@ var yK = /*#__PURE__*/ uS(RG, [["render", vK], ["__scopeId", "data-v-cbf988e3"]]
27241
28142
  }));
27242
28143
  }
27243
28144
  }
27244
- }, xK = {
28145
+ }, bq = {
27245
28146
  class: "connectivity-card-container",
27246
28147
  ref: "container"
27247
- }, SK = {
28148
+ }, xq = {
27248
28149
  class: "connectivity-card",
27249
28150
  ref: "card"
27250
- }, CK = { class: "card-title" }, wK = {
28151
+ }, Sq = { class: "card-title" }, Cq = {
27251
28152
  key: 0,
27252
28153
  class: "card-details"
27253
- }, TK = {
28154
+ }, wq = {
27254
28155
  key: 0,
27255
28156
  class: "card-tags"
27256
- }, EK = {
28157
+ }, Tq = {
27257
28158
  key: 1,
27258
28159
  class: "id-tag"
27259
28160
  };
27260
- function DK(e, n, r, i, a, o) {
28161
+ function Eq(e, n, r, i, a, o) {
27261
28162
  let s = Ug, f = Bx;
27262
- return L(), u("div", xK, [d("div", SK, [n[1] ||= d("div", { class: "seperator-path" }, null, -1), Ce((L(), u("div", {
28163
+ return L(), u("div", bq, [d("div", xq, [n[1] ||= d("div", { class: "seperator-path" }, null, -1), Ce((L(), u("div", {
27263
28164
  class: "card-content",
27264
28165
  onClick: n[0] ||= (e) => o.cardClicked(r.entry)
27265
- }, [d("div", CK, U(o.capitalise(o.displayTitle)), 1), (L(!0), u(t, null, ie(a.displayFields, (e) => (L(), u(t, { key: e }, [r.entry[e] ? (L(), u("div", wK, [e === "nerve-label" ? (L(), u("div", TK, [(L(!0), u(t, null, ie(r.entry[e], (e) => (L(), u("div", { key: e.nerve }, [m(s, {
28166
+ }, [d("div", Sq, U(o.capitalise(o.displayTitle)), 1), (L(!0), u(t, null, ie(a.displayFields, (e) => (L(), u(t, { key: e }, [r.entry[e] ? (L(), u("div", Cq, [e === "nerve-label" ? (L(), u("div", wq, [(L(!0), u(t, null, ie(r.entry[e], (e) => (L(), u("div", { key: e.nerve }, [m(s, {
27266
28167
  type: "primary",
27267
28168
  size: "small"
27268
28169
  }, {
@@ -27275,9 +28176,9 @@ function DK(e, n, r, i, a, o) {
27275
28176
  }, {
27276
28177
  default: K(() => [p(U(e), 1)]),
27277
28178
  _: 2
27278
- }, 1024))), 128))]))), 128))])) : (L(), u("span", EK, U(r.entry[e]), 1))])) : l("", !0)], 64))), 128))])), [[f, o.loading]])], 512)], 512);
28179
+ }, 1024))), 128))]))), 128))])) : (L(), u("span", Tq, U(r.entry[e]), 1))])) : l("", !0)], 64))), 128))])), [[f, o.loading]])], 512)], 512);
27279
28180
  }
27280
- var OK = /*#__PURE__*/ uS(bK, [["render", DK], ["__scopeId", "data-v-c6589a24"]]), kK = {
28181
+ var Dq = /*#__PURE__*/ uS(yq, [["render", Eq], ["__scopeId", "data-v-1ef041fb"]]), Oq = {
27281
28182
  searchInput: "",
27282
28183
  lastSearch: "",
27283
28184
  results: [],
@@ -27287,14 +28188,14 @@ var OK = /*#__PURE__*/ uS(bK, [["render", DK], ["__scopeId", "data-v-c6589a24"]]
27287
28188
  numberPerPage: 10,
27288
28189
  page: 1,
27289
28190
  start: 0
27290
- }, AK = {
28191
+ }, kq = {
27291
28192
  components: {
27292
- SearchFilters: hG,
27293
- SearchHistory: JU,
27294
- ConnectivityCard: OK,
27295
- ConnectivityInfo: yK,
27296
- MapSvgIcon: ZU,
27297
- MapSvgSpriteColor: UW
28193
+ SearchFilters: _G,
28194
+ SearchHistory: ZU,
28195
+ ConnectivityCard: Dq,
28196
+ ConnectivityInfo: vq,
28197
+ MapSvgIcon: eW,
28198
+ MapSvgSpriteColor: KW
27298
28199
  },
27299
28200
  name: "ConnectivityExplorer",
27300
28201
  props: {
@@ -27304,7 +28205,7 @@ var OK = /*#__PURE__*/ uS(bK, [["render", DK], ["__scopeId", "data-v-c6589a24"]]
27304
28205
  },
27305
28206
  entry: {
27306
28207
  type: Object,
27307
- default: () => kK
28208
+ default: () => Oq
27308
28209
  },
27309
28210
  envVars: {
27310
28211
  type: Object,
@@ -27552,20 +28453,20 @@ var OK = /*#__PURE__*/ uS(bK, [["render", DK], ["__scopeId", "data-v-c6589a24"]]
27552
28453
  this.expanded = "", this.expandedData = null;
27553
28454
  });
27554
28455
  }
27555
- }, jK = { class: "header" }, MK = {
28456
+ }, Aq = { class: "header" }, jq = {
27556
28457
  key: 0,
27557
28458
  class: "visibility-filter"
27558
- }, NK = {
28459
+ }, Mq = {
27559
28460
  key: 0,
27560
28461
  class: "error-feedback"
27561
- }, PK = ["onMouseenter"];
27562
- function FK(e, n, r, i, a, o) {
27563
- let s = H("MapSvgSpriteColor"), f = Oh, h = H("MapSvgIcon"), g = kx, _ = Rg, v = Mv, y = hG, b = JU, x = OK, S = yK, C = wx, w = C_, T = Bx;
28462
+ }, Nq = ["onMouseenter"];
28463
+ function Pq(e, n, r, i, a, o) {
28464
+ let s = H("MapSvgSpriteColor"), f = Oh, h = H("MapSvgIcon"), g = kx, _ = Rg, v = Mv, y = _G, b = ZU, x = Dq, S = vq, C = wx, w = C_, T = Bx;
27564
28465
  return L(), c(w, {
27565
28466
  "body-style": e.bodyStyle,
27566
28467
  class: "content-card"
27567
28468
  }, {
27568
- header: K(() => [d("div", jK, [
28469
+ header: K(() => [d("div", Aq, [
27569
28470
  d("div", { class: D(["search-input-container", { "is-focus": e.inputFocus }]) }, [m(f, {
27570
28471
  class: "search-input",
27571
28472
  placeholder: "Search",
@@ -27656,7 +28557,7 @@ function FK(e, n, r, i, a, o) {
27656
28557
  default: K(() => [...n[7] ||= [p("Reset", -1)]]),
27657
28558
  _: 1
27658
28559
  }, 8, ["onClick"]),
27659
- r.showVisibilityFilter ? (L(), u("div", MK, [m(v, {
28560
+ r.showVisibilityFilter ? (L(), u("div", jq, [m(v, {
27660
28561
  modelValue: e.filterVisibility,
27661
28562
  "onUpdate:modelValue": n[1] ||= (t) => e.filterVisibility = t
27662
28563
  }, {
@@ -27714,7 +28615,7 @@ function FK(e, n, r, i, a, o) {
27714
28615
  ref: "content",
27715
28616
  onMouseleave: n[4] ||= (e) => o.onHoverChanged(e, void 0)
27716
28617
  }, [
27717
- e.results.length === 0 && !e.loadingCards ? (L(), u("div", NK, " No results found - Please change your search / filter criteria. ")) : l("", !0),
28618
+ e.results.length === 0 && !e.loadingCards ? (L(), u("div", Mq, " No results found - Please change your search / filter criteria. ")) : l("", !0),
27718
28619
  (L(!0), u(t, null, ie(o.paginatedResults, (t) => (L(), u("div", {
27719
28620
  key: t.id,
27720
28621
  ref_for: !0,
@@ -27760,7 +28661,7 @@ function FK(e, n, r, i, a, o) {
27760
28661
  "onConnectivityClicked",
27761
28662
  "onLoaded",
27762
28663
  "onCloseConnectivity"
27763
- ])) : l("", !0)], 40, PK))), 128)),
28664
+ ])) : l("", !0)], 40, Nq))), 128)),
27764
28665
  m(C, {
27765
28666
  class: "pagination",
27766
28667
  "current-page": e.page,
@@ -27782,7 +28683,7 @@ function FK(e, n, r, i, a, o) {
27782
28683
  _: 1
27783
28684
  }, 8, ["body-style"]);
27784
28685
  }
27785
- var IK = /*#__PURE__*/ uS(AK, [["render", FK], ["__scopeId", "data-v-3eee4b39"]]), LK = {
28686
+ var Fq = /*#__PURE__*/ uS(kq, [["render", Pq], ["__scopeId", "data-v-3eee4b39"]]), Iq = {
27786
28687
  name: "AnnotationTool",
27787
28688
  components: {
27788
28689
  AnnotationPopup: Ye,
@@ -27801,13 +28702,13 @@ var IK = /*#__PURE__*/ uS(AK, [["render", FK], ["__scopeId", "data-v-3eee4b39"]]
27801
28702
  annotationPopupData: null
27802
28703
  };
27803
28704
  }
27804
- }, RK = { class: "annotation-tool scrollbar" }, zK = {
28705
+ }, Lq = { class: "annotation-tool scrollbar" }, Rq = {
27805
28706
  key: 1,
27806
28707
  class: "delete-container"
27807
28708
  };
27808
- function BK(e, t, n, r, i, a) {
28709
+ function zq(e, t, n, r, i, a) {
27809
28710
  let o = H("CreateTooltipContent"), s = H("annotation-popup"), d = Cy, f = Rg, h = Sy;
27810
- return L(), u("div", RK, [
28711
+ return L(), u("div", Lq, [
27811
28712
  Ce(m(o, {
27812
28713
  createData: n.createData,
27813
28714
  onConfirmCreate: t[0] ||= (t) => e.$emit("confirm-create", t),
@@ -27822,7 +28723,7 @@ function BK(e, t, n, r, i, a) {
27822
28723
  onHoverChanged: t[3] ||= (t) => e.$emit("hover-changed", t),
27823
28724
  onTrackEvent: t[4] ||= (t) => e.$emit("trackEvent", t)
27824
28725
  }, null, 8, ["annotationEntry"])) : l("", !0),
27825
- n.createData && n.createData.toBeDeleted ? (L(), u("div", zK, [m(h, null, {
28726
+ n.createData && n.createData.toBeDeleted ? (L(), u("div", Rq, [m(h, null, {
27826
28727
  default: K(() => [
27827
28728
  m(d, {
27828
28729
  offset: 1,
@@ -27863,7 +28764,7 @@ function BK(e, t, n, r, i, a) {
27863
28764
  })])) : l("", !0)
27864
28765
  ]);
27865
28766
  }
27866
- var VK = /*#__PURE__*/ uS(LK, [["render", BK], ["__scopeId", "data-v-5ab1d8ef"]]), HK = {
28767
+ var Bq = /*#__PURE__*/ uS(Iq, [["render", zq], ["__scopeId", "data-v-5ab1d8ef"]]), Vq = {
27867
28768
  name: "Tabs",
27868
28769
  components: { ElIconClose: Pe },
27869
28770
  props: {
@@ -27904,30 +28805,34 @@ var VK = /*#__PURE__*/ uS(LK, [["render", BK], ["__scopeId", "data-v-5ab1d8ef"]]
27904
28805
  });
27905
28806
  }
27906
28807
  }
27907
- }, UK = { class: "tabs-container" }, WK = ["onClick"], GK = { class: "tab-title" };
27908
- function KK(e, n, r, i, a, o) {
28808
+ }, Hq = { class: "tabs-container" }, Uq = ["onClick"], Wq = { class: "tab-title" };
28809
+ function Gq(e, n, r, i, a, o) {
27909
28810
  let s = Pe, f = zp;
27910
- return L(), u("div", UK, [(L(!0), u(t, null, ie(o.tabs, (e) => (L(), u("div", {
27911
- class: D(["tab", { "active-tab": e.id == r.activeId }]),
28811
+ return L(), u("div", Hq, [(L(!0), u(t, null, ie(o.tabs, (e) => (L(), u("div", {
28812
+ class: D(["tab", {
28813
+ "active-tab": e.id == r.activeId,
28814
+ "closable-tab": e.closable
28815
+ }]),
27912
28816
  key: e.id,
27913
28817
  onClick: (t) => o.tabClicked(e)
27914
- }, [d("span", GK, U(e.title), 1), e.closable ? (L(), c(f, {
28818
+ }, [d("span", Wq, U(e.title), 1), e.closable ? (L(), c(f, {
27915
28819
  key: 0,
27916
28820
  onClick: Te((t) => o.tabClosed(e), ["stop"]),
27917
28821
  class: "tab-close-icon"
27918
28822
  }, {
27919
28823
  default: K(() => [m(s)]),
27920
28824
  _: 1
27921
- }, 8, ["onClick"])) : l("", !0)], 10, WK))), 128))]);
28825
+ }, 8, ["onClick"])) : l("", !0)], 10, Uq))), 128))]);
27922
28826
  }
27923
- var qK = /*#__PURE__*/ uS(HK, [["render", KK], ["__scopeId", "data-v-5dc8af1d"]]), JK = {
28827
+ var Kq = /*#__PURE__*/ uS(Vq, [["render", Gq], ["__scopeId", "data-v-82b26025"]]), qq = {
27924
28828
  components: {
27925
- DatasetExplorer: CG,
27926
- Tabs: qK,
28829
+ DatasetExplorer: TG,
28830
+ Tabs: Kq,
27927
28831
  ElIconArrowLeft: De,
27928
28832
  ElIconArrowRight: Oe,
27929
- AnnotationTool: VK,
27930
- ConnectivityExplorer: IK
28833
+ AnnotationTool: Bq,
28834
+ ConnectivityExplorer: Fq,
28835
+ CellCardExplorer: CK
27931
28836
  },
27932
28837
  name: "SideBar",
27933
28838
  props: {
@@ -27951,6 +28856,12 @@ var qK = /*#__PURE__*/ uS(HK, [["render", KK], ["__scopeId", "data-v-5dc8af1d"]]
27951
28856
  id: 3,
27952
28857
  type: "annotation",
27953
28858
  closable: !0
28859
+ },
28860
+ {
28861
+ title: "Cell Card Explorer",
28862
+ id: 4,
28863
+ type: "cellCardExplorer",
28864
+ closable: !1
27954
28865
  }
27955
28866
  ]
27956
28867
  },
@@ -27999,6 +28910,10 @@ var qK = /*#__PURE__*/ uS(HK, [["render", KK], ["__scopeId", "data-v-5dc8af1d"]]
27999
28910
  showLongLabel: {
28000
28911
  type: Boolean,
28001
28912
  default: !1
28913
+ },
28914
+ showCellCards: {
28915
+ type: Boolean,
28916
+ default: !1
28002
28917
  }
28003
28918
  },
28004
28919
  data: function() {
@@ -28008,6 +28923,7 @@ var qK = /*#__PURE__*/ uS(HK, [["render", KK], ["__scopeId", "data-v-5dc8af1d"]]
28008
28923
  activeTabId: 1,
28009
28924
  activeAnnotationData: { tabType: "annotation" },
28010
28925
  activeConnectivityData: { tabType: "connectivity" },
28926
+ activeSpeciesForEntries: [],
28011
28927
  state: {
28012
28928
  dataset: {
28013
28929
  search: "",
@@ -28017,6 +28933,10 @@ var qK = /*#__PURE__*/ uS(HK, [["render", KK], ["__scopeId", "data-v-5dc8af1d"]]
28017
28933
  search: "",
28018
28934
  filters: []
28019
28935
  },
28936
+ cellCards: {
28937
+ search: "",
28938
+ filters: []
28939
+ },
28020
28940
  connectivityEntries: [],
28021
28941
  annotationEntries: [],
28022
28942
  activeTabId: this.activeTabId
@@ -28038,6 +28958,12 @@ var qK = /*#__PURE__*/ uS(HK, [["render", KK], ["__scopeId", "data-v-5dc8af1d"]]
28038
28958
  let n = this.getActiveTabTypeById(e);
28039
28959
  n === "connectivityExplorer" && (this.activeConnectivityData = t), n === "annotation" && (this.activeAnnotationData = t);
28040
28960
  },
28961
+ showSomaLocation: function(e) {
28962
+ this.$emit("soma-location-hovered", e);
28963
+ },
28964
+ onSomaLocationsReady: function(e) {
28965
+ this.$emit("soma-locations-ready", e);
28966
+ },
28041
28967
  showConnectivity: function(e) {
28042
28968
  this.$emit("show-connectivity", e);
28043
28969
  },
@@ -28074,6 +29000,29 @@ var qK = /*#__PURE__*/ uS(HK, [["render", KK], ["__scopeId", "data-v-5dc8af1d"]]
28074
29000
  this.getTabRef(void 0, "datasetExplorer", !0).openSearch(e, t);
28075
29001
  });
28076
29002
  },
29003
+ openCellCardExplorerSearch: function(e, t) {
29004
+ this.drawerOpen = !0, this.$nextTick(() => {
29005
+ let n = this.getTabRef(void 0, "cellCardExplorer", !0);
29006
+ n && typeof n.openSearch == "function" && n.openSearch(e, t);
29007
+ });
29008
+ },
29009
+ openDatasetSearchFromCellCard: function(e) {
29010
+ if (!e || typeof e != "object") {
29011
+ this.openSearch([], e);
29012
+ return;
29013
+ }
29014
+ let t = [];
29015
+ e.species && t.push({
29016
+ facet: e.species,
29017
+ term: "Species",
29018
+ facetPropPath: "organisms.primary.species.name"
29019
+ }), e.location && t.push({
29020
+ facet: e.location,
29021
+ term: "Anatomical structure",
29022
+ facetPropPath: "anatomy.organ.category.name",
29023
+ AND: !0
29024
+ }), this.openSearch(t, "");
29025
+ },
28077
29026
  getTabRef: function(e, t, n = !1) {
28078
29027
  let r = this.tabEntries.filter((n) => (e === void 0 || n.id === e) && (t === void 0 || n.type === t)), i = r.length ? r : this.tabEntries, a = i[0].type + "Tab_" + i[0].id;
28079
29028
  return n && this.setActiveTab({
@@ -28141,18 +29090,24 @@ var qK = /*#__PURE__*/ uS(HK, [["render", KK], ["__scopeId", "data-v-5dc8af1d"]]
28141
29090
  updateState: function() {
28142
29091
  this.state.activeTabId = this.activeTabId;
28143
29092
  let e = this.getTabRef(void 0, "datasetExplorer");
28144
- e && (this.state.dataset.search = e.getSearch(), this.state.dataset.filters = YW(e.getFilters()));
29093
+ e && (this.state.dataset.search = e.getSearch(), this.state.dataset.filters = QW(e.getFilters()));
28145
29094
  let t = this.getTabRef(void 0, "connectivityExplorer");
28146
- t && (this.state.connectivity.search = t.getSearch(), this.state.connectivity.filters = t.getFilters()), this.connectivityEntry && this.connectivityEntry.length > 0 && (this.state.connectivityEntries = this.connectivityEntry.map((e) => e.id)), this.annotationEntry && this.annotationEntry.length > 0 && (this.state.annotationEntries = this.annotationEntry.map((e) => e.models));
29095
+ t && (this.state.connectivity.search = t.getSearch(), this.state.connectivity.filters = t.getFilters());
29096
+ let n = this.getTabRef(void 0, "cellCardExplorer");
29097
+ n && (this.state.cellCards.search = n.getSearch(), this.state.cellCards.filters = n.getFilters()), this.connectivityEntry && this.connectivityEntry.length > 0 && (this.state.connectivityEntries = this.connectivityEntry.map((e) => e.id)), this.annotationEntry && this.annotationEntry.length > 0 && (this.state.annotationEntries = this.annotationEntry.map((e) => e.models));
28147
29098
  },
28148
29099
  getState: function() {
28149
29100
  return this.updateState(), this.state;
28150
29101
  },
28151
29102
  setState: function(e) {
28152
29103
  if (!e || !e.dataset || !e.connectivity) return;
28153
- this.state = JSON.parse(JSON.stringify(e));
28154
- let t = e.dataset.filters, n = e.connectivity.filters, r = e.dataset.search, i = e.connectivity.search;
28155
- (t.length || r) && this.openSearch(t, r), (n.length || i) && this.openConnectivitySearch(n, i), e.activeTabId && this.$nextTick(() => {
29104
+ let t = JSON.parse(JSON.stringify(e));
29105
+ this.state = {
29106
+ ...this.state,
29107
+ ...t
29108
+ };
29109
+ let n = this.state.dataset.filters, r = this.state.connectivity.filters, i = this.state.dataset.search, a = this.state.connectivity.search, o = this.state.cellCards.filters || [], s = this.state.cellCards.search || "";
29110
+ (n.length || i) && this.openSearch(n, i), (r.length || a) && this.openConnectivitySearch(r, a), (o.length || s) && this.openCellCardExplorerSearch(o, s), e.activeTabId && this.$nextTick(() => {
28156
29111
  this.tabEntries.find((t) => t.id === e.activeTabId) && (this.activeTabId = e.activeTabId);
28157
29112
  });
28158
29113
  },
@@ -28163,10 +29118,14 @@ var qK = /*#__PURE__*/ uS(HK, [["render", KK], ["__scopeId", "data-v-5dc8af1d"]]
28163
29118
  ...e
28164
29119
  };
28165
29120
  this.$emit("trackEvent", t);
29121
+ },
29122
+ updateActiveSpeciesForEntries: function(e) {
29123
+ let t = Array.isArray(e) ? e : [e];
29124
+ this.activeSpeciesForEntries = [...new Set(t.filter(Boolean))];
28166
29125
  }
28167
29126
  },
28168
29127
  computed: { tabEntries: function() {
28169
- return this.tabs.filter((e) => e.type === "datasetExplorer" || e.type === "connectivityExplorer" || e.type === "annotation" && this.annotationEntry && this.annotationEntry.length > 0);
29128
+ return this.tabs.filter((e) => e.type === "datasetExplorer" || e.type === "connectivityExplorer" || e.type === "annotation" && this.annotationEntry && this.annotationEntry.length > 0 || e.type === "cellCardExplorer" && this.showCellCards);
28170
29129
  } },
28171
29130
  created: function() {
28172
29131
  this.drawerOpen = this.openAtStart;
@@ -28197,20 +29156,20 @@ var qK = /*#__PURE__*/ uS(HK, [["render", KK], ["__scopeId", "data-v-5dc8af1d"]]
28197
29156
  this.trackEvent(e);
28198
29157
  });
28199
29158
  }
28200
- }, YK = { ref: "container" }, XK = { class: "box-card" }, ZK = { class: "sidebar-container" };
28201
- function QK(e, n, r, i, a, o) {
28202
- let s = De, f = zp, p = Oe, h = qK, g = VK, _ = IK, v = CG, y = Uy;
28203
- return L(), u("div", YK, [e.drawerOpen ? l("", !0) : (L(), u("div", {
29159
+ }, Jq = { ref: "container" }, Yq = { class: "box-card" }, Xq = { class: "sidebar-container" };
29160
+ function Zq(e, n, r, i, a, o) {
29161
+ let s = De, f = zp, p = Oe, h = Kq, g = Bq, _ = Fq, v = CK, y = TG, b = Uy;
29162
+ return L(), u("div", Jq, [e.drawerOpen ? l("", !0) : (L(), u("div", {
28204
29163
  key: 0,
28205
29164
  onClick: n[0] ||= (...e) => o.toggleDrawer && o.toggleDrawer(...e),
28206
29165
  class: "open-tab"
28207
29166
  }, [m(f, null, {
28208
29167
  default: K(() => [m(s)]),
28209
29168
  _: 1
28210
- })])), m(y, {
29169
+ })])), m(b, {
28211
29170
  class: "side-bar my-drawer",
28212
29171
  modelValue: e.drawerOpen,
28213
- "onUpdate:modelValue": n[7] ||= (t) => e.drawerOpen = t,
29172
+ "onUpdate:modelValue": n[9] ||= (t) => e.drawerOpen = t,
28214
29173
  teleported: !1,
28215
29174
  "modal-append-to-body": !1,
28216
29175
  size: "584",
@@ -28221,14 +29180,14 @@ function QK(e, n, r, i, a, o) {
28221
29180
  "z-index": 10,
28222
29181
  "lock-scroll": !1
28223
29182
  }, {
28224
- default: K(() => [d("div", XK, [e.drawerOpen ? (L(), u("div", {
29183
+ default: K(() => [d("div", Yq, [e.drawerOpen ? (L(), u("div", {
28225
29184
  key: 0,
28226
29185
  onClick: n[1] ||= (...e) => o.close && o.close(...e),
28227
29186
  class: "close-tab"
28228
29187
  }, [m(f, null, {
28229
29188
  default: K(() => [m(p)]),
28230
29189
  _: 1
28231
- })])) : l("", !0), d("div", ZK, [o.tabEntries.length > 1 ? (L(), c(h, {
29190
+ })])) : l("", !0), d("div", Xq, [o.tabEntries.length > 1 ? (L(), c(h, {
28232
29191
  key: 0,
28233
29192
  tabEntries: o.tabEntries,
28234
29193
  activeId: e.activeTabId,
@@ -28292,8 +29251,26 @@ function QK(e, n, r, i, a, o) {
28292
29251
  "onConnectivityHovered",
28293
29252
  "onConnectivityCollapseChange",
28294
29253
  "onConnectivityItemClose"
28295
- ])), [[be, i.id === e.activeTabId]]) : Ce((L(), c(v, {
29254
+ ])), [[be, i.id === e.activeTabId]]) : i.type === "cellCardExplorer" && r.showCellCards ? Ce((L(), c(v, {
28296
29255
  key: 2,
29256
+ ref_for: !0,
29257
+ ref: "cellCardExplorerTab_" + i.id,
29258
+ class: "sidebar-content-container",
29259
+ envVars: r.envVars,
29260
+ activeSpecies: e.activeSpeciesForEntries,
29261
+ onSearchChanged: (e) => o.searchChanged(i.id, e),
29262
+ onDatasetSearch: n[7] ||= (e) => o.openDatasetSearchFromCellCard(e),
29263
+ onConnectivitySearch: n[8] ||= (e) => o.openConnectivitySearch(e.facets, e.query),
29264
+ onSomaLocationHovered: o.showSomaLocation,
29265
+ onSomaLocationsReady: o.onSomaLocationsReady
29266
+ }, null, 8, [
29267
+ "envVars",
29268
+ "activeSpecies",
29269
+ "onSearchChanged",
29270
+ "onSomaLocationHovered",
29271
+ "onSomaLocationsReady"
29272
+ ])), [[be, i.id === e.activeTabId]]) : Ce((L(), c(y, {
29273
+ key: 3,
28297
29274
  class: "sidebar-content-container",
28298
29275
  contextCardEntry: i.contextCard,
28299
29276
  envVars: r.envVars,
@@ -28310,6 +29287,6 @@ function QK(e, n, r, i, a, o) {
28310
29287
  _: 1
28311
29288
  }, 8, ["modelValue"])], 512);
28312
29289
  }
28313
- var $K = /*#__PURE__*/ uS(JK, [["render", QK], ["__scopeId", "data-v-e2911198"]]);
29290
+ var Qq = /*#__PURE__*/ uS(qq, [["render", Zq], ["__scopeId", "data-v-0489e799"]]);
28314
29291
  //#endregion
28315
- export { $K as SideBar };
29292
+ export { Qq as SideBar };