diff --git a/tools/rum/elements/facetsidebar.js b/tools/rum/elements/facetsidebar.js index 329ba677..2c09fa15 100644 --- a/tools/rum/elements/facetsidebar.js +++ b/tools/rum/elements/facetsidebar.js @@ -75,4 +75,30 @@ export default class FacetSidebar extends HTMLElement { if (facetEl) this.elems.facetsElement.append(facetEl); }); } + + enableFacets() { + const existingFacetElements = Array.from(this.elems.facetsElement.children); + existingFacetElements.forEach((facet) => { + if (facet.enable) { + facet.enable(); + } else { + facet.querySelectorAll('input').forEach((input) => { + input.disabled = false; + }); + } + }); + } + + disableFacets() { + const existingFacetElements = Array.from(this.elems.facetsElement.children); + existingFacetElements.forEach((facet) => { + if (facet.disable) { + facet.disable(); + } else { + facet.querySelectorAll('input').forEach((input) => { + input.disabled = true; + }); + } + }); + } } diff --git a/tools/rum/slicer.js b/tools/rum/slicer.js index e8f346a3..3236ab53 100644 --- a/tools/rum/slicer.js +++ b/tools/rum/slicer.js @@ -340,6 +340,7 @@ export function updateState() { export async function refresh(state = true) { herochart.loading(); + elems.sidebar.disableFacets(); let reload = true; if (state) { @@ -351,6 +352,7 @@ export async function refresh(state = true) { } draw(); + elems.sidebar.enableFacets(); } const section = document.querySelector('main > div');