@panoramax/web-viewer 3.2.1-develop-abd38073 → 3.2.1-develop-231013c4
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/CHANGELOG.md +1 -0
- package/build/index.js +1 -1
- package/build/index.js.map +1 -1
- package/package.json +1 -1
- package/src/utils/Widgets.js +17 -0
- package/src/viewer/Widgets.js +13 -1
- package/tests/utils/__snapshots__/Widgets.test.js.snap +1 -1
package/package.json
CHANGED
package/src/utils/Widgets.js
CHANGED
|
@@ -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");
|
package/src/viewer/Widgets.js
CHANGED
|
@@ -1001,7 +1001,7 @@ export default class Widgets {
|
|
|
1001
1001
|
* @private
|
|
1002
1002
|
*/
|
|
1003
1003
|
_initWidgetFilters(hasUserSearch, hasQualityScore) {
|
|
1004
|
-
const btnFilter = createExpandableButton("gvs-filter", faSliders, this._t.gvs.filters, this);
|
|
1004
|
+
const btnFilter = createExpandableButton("gvs-filter", faSliders, this._t.gvs.filters, this, ["gvs-filter-unset-btn"]);
|
|
1005
1005
|
const pnlFilter = createPanel(this, btnFilter, []);
|
|
1006
1006
|
pnlFilter.innerHTML = `
|
|
1007
1007
|
<form id="gvs-filter-form">
|
|
@@ -1033,6 +1033,14 @@ export default class Widgets {
|
|
|
1033
1033
|
[btnFilter, pnlFilter],
|
|
1034
1034
|
["gvs-group-large", "gvs-group-btnpanel", "gvs-only-map", "gvs-print-hidden"]
|
|
1035
1035
|
);
|
|
1036
|
+
|
|
1037
|
+
const resetBtn = btnFilter.querySelector(".gvs-filter-unset-btn");
|
|
1038
|
+
if(resetBtn) {
|
|
1039
|
+
resetBtn.addEventListener("click", e => {
|
|
1040
|
+
e.stopPropagation();
|
|
1041
|
+
form.reset();
|
|
1042
|
+
});
|
|
1043
|
+
}
|
|
1036
1044
|
|
|
1037
1045
|
if(this._viewer.isWidthSmall()) {
|
|
1038
1046
|
pnlFilter.style.width = `${this._viewer.container.offsetWidth - 70}px`;
|
|
@@ -1114,6 +1122,10 @@ export default class Widgets {
|
|
|
1114
1122
|
this,
|
|
1115
1123
|
true
|
|
1116
1124
|
);
|
|
1125
|
+
form.addEventListener("reset", () => {
|
|
1126
|
+
userSearch.classList.remove("gvs-filter-active");
|
|
1127
|
+
userSearch.resetSearch();
|
|
1128
|
+
});
|
|
1117
1129
|
input.appendChild(userSearch);
|
|
1118
1130
|
form.appendChild(input);
|
|
1119
1131
|
|
|
@@ -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
|