@panoramax/web-viewer 3.2.1-develop-abd38073 → 3.2.1-develop-189fbe63

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@panoramax/web-viewer",
3
- "version": "3.2.1-develop-abd38073",
3
+ "version": "3.2.1-develop-189fbe63",
4
4
  "description": "Panoramax web viewer for geolocated pictures",
5
5
  "main": "build/index.js",
6
6
  "author": "Panoramax team",
@@ -56,6 +56,12 @@ export function createExpandableButton(id, icon, label, container, classes = [])
56
56
  btn.appendChild(fa(icon));
57
57
  if(!container._viewer.isWidthSmall()) {
58
58
  btn.appendChild(document.createTextNode(label));
59
+ if(classes.includes("gvs-filter-unset-btn")) {
60
+ const resetIcon = fa(faXmark, { classes: ["gvs-filter-unset-btn"]});
61
+ resetIcon.style.display = "none";
62
+ btn.appendChild(resetIcon);
63
+ classes = classes.filter(v => v !== "gvs-filter-unset-btn");
64
+ }
59
65
  btn.appendChild(fa(faChevronDown));
60
66
  }
61
67
  else {
@@ -64,15 +70,25 @@ export function createExpandableButton(id, icon, label, container, classes = [])
64
70
  btn.classList.add("gvs-btn", "gvs-widget-bg", "gvs-btn-expandable", ...classes);
65
71
  btn.setActive = val => {
66
72
  let span = btn.querySelector(".gvs-filters-active");
73
+ const resetIcon = btn.querySelector(".gvs-filter-unset-btn");
74
+ const downIcon = btn.querySelector(".fa-chevron-down");
67
75
  if(val && !span) {
68
76
  span = document.createElement("span");
69
77
  span.classList.add("gvs-filters-active");
70
78
  const svg = btn.querySelector("svg");
71
79
  if(svg.nextSibling) { btn.insertBefore(span, svg.nextSibling); }
72
80
  else { btn.appendChild(span); }
81
+ if(resetIcon) {
82
+ resetIcon.style.display = null;
83
+ downIcon.style.display = "none";
84
+ }
73
85
  }
74
86
  else if(!val && span) {
75
87
  span.remove();
88
+ if(resetIcon) {
89
+ resetIcon.style.display = "none";
90
+ downIcon.style.display = null;
91
+ }
76
92
  }
77
93
  };
78
94
  return btn;
@@ -112,6 +128,7 @@ export function createSearchBar(
112
128
  input.type = "text";
113
129
  input.placeholder = placeholder;
114
130
  input.id = `${id}-input`;
131
+ input.setAttribute("autocomplete", "off");
115
132
  bar.appendChild(input);
116
133
  const extendInput = () => {
117
134
  bar.classList.remove("gvs-search-bar-reduced");
@@ -984,7 +984,9 @@ export default class Widgets {
984
984
  */
985
985
  _onMapThemeChange() {
986
986
  const fMapTheme = document.getElementById("gvs-map-theme");
987
+ const layerBtn = document.getElementById("gvs-map-layers");
987
988
  const t = fMapTheme.value;
989
+ layerBtn.setActive(t !== "default");
988
990
  for(let d of document.getElementsByClassName("gvs-map-theme-legend")) {
989
991
  if(d.id == "gvs-map-theme-legend-"+t) {
990
992
  d.classList.remove("gvs-hidden");
@@ -1001,7 +1003,7 @@ export default class Widgets {
1001
1003
  * @private
1002
1004
  */
1003
1005
  _initWidgetFilters(hasUserSearch, hasQualityScore) {
1004
- const btnFilter = createExpandableButton("gvs-filter", faSliders, this._t.gvs.filters, this);
1006
+ const btnFilter = createExpandableButton("gvs-filter", faSliders, this._t.gvs.filters, this, ["gvs-filter-unset-btn"]);
1005
1007
  const pnlFilter = createPanel(this, btnFilter, []);
1006
1008
  pnlFilter.innerHTML = `
1007
1009
  <form id="gvs-filter-form">
@@ -1033,6 +1035,14 @@ export default class Widgets {
1033
1035
  [btnFilter, pnlFilter],
1034
1036
  ["gvs-group-large", "gvs-group-btnpanel", "gvs-only-map", "gvs-print-hidden"]
1035
1037
  );
1038
+
1039
+ const resetBtn = btnFilter.querySelector(".gvs-filter-unset-btn");
1040
+ if(resetBtn) {
1041
+ resetBtn.addEventListener("click", e => {
1042
+ e.stopPropagation();
1043
+ form.reset();
1044
+ });
1045
+ }
1036
1046
 
1037
1047
  if(this._viewer.isWidthSmall()) {
1038
1048
  pnlFilter.style.width = `${this._viewer.container.offsetWidth - 70}px`;
@@ -1114,6 +1124,10 @@ export default class Widgets {
1114
1124
  this,
1115
1125
  true
1116
1126
  );
1127
+ form.addEventListener("reset", () => {
1128
+ userSearch.classList.remove("gvs-filter-active");
1129
+ userSearch.resetSearch();
1130
+ });
1117
1131
  input.appendChild(userSearch);
1118
1132
  form.appendChild(input);
1119
1133
 
@@ -21,7 +21,7 @@ Array [
21
21
  ]
22
22
  `;
23
23
 
24
- exports[`createSearchBar works 1`] = `"<input type=\\"text\\" placeholder=\\"no res\\" id=\\"mysrch-input\\"><span class=\\"gvs-search-bar-icon\\"><svg aria-hidden=\\"true\\" focusable=\\"false\\" data-prefix=\\"fas\\" data-icon=\\"magnifying-glass\\" class=\\"svg-inline--fa fa-magnifying-glass\\" role=\\"img\\" xmlns=\\"http://www.w3.org/2000/svg\\" viewBox=\\"0 0 512 512\\"><path fill=\\"currentColor\\" d=\\"M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z\\"></path></svg></span><div id=\\"mysrch-panel\\" class=\\"gvs-panel gvs-widget-bg gvs-hidden gvs-search-bar-results\\"></div>"`;
24
+ exports[`createSearchBar works 1`] = `"<input type=\\"text\\" placeholder=\\"no res\\" id=\\"mysrch-input\\" autocomplete=\\"off\\"><span class=\\"gvs-search-bar-icon\\"><svg aria-hidden=\\"true\\" focusable=\\"false\\" data-prefix=\\"fas\\" data-icon=\\"magnifying-glass\\" class=\\"svg-inline--fa fa-magnifying-glass\\" role=\\"img\\" xmlns=\\"http://www.w3.org/2000/svg\\" viewBox=\\"0 0 512 512\\"><path fill=\\"currentColor\\" d=\\"M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z\\"></path></svg></span><div id=\\"mysrch-panel\\" class=\\"gvs-panel gvs-widget-bg gvs-hidden gvs-search-bar-results\\"></div>"`;
25
25
 
26
26
  exports[`fa works 1`] = `
27
27
  <svg