MCPcopy Create free account
hub / github.com/pmndrs/postprocessing / SidebarManager

Class SidebarManager

manual/assets/js/src/components/SidebarManager.js:7–45  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

5 */
6
7export class SidebarManager {
8
9 initialize() {
10
11 const sidebar = document.querySelector(".sidebar");
12 const sidebarButtonOpen = document.querySelector(".sidebar-button-open");
13 const sidebarButtonClose = document.querySelector(".sidebar-button-close");
14
15 sidebarButtonOpen.addEventListener("click", () => {
16
17 sidebar.classList.add("active");
18 sidebarButtonOpen.classList.add("hidden");
19
20 });
21
22 sidebarButtonClose.addEventListener("click", () => {
23
24 sidebar.classList.remove("active");
25 sidebarButtonOpen.classList.remove("hidden");
26
27 });
28
29 document.body.addEventListener("click", (event) => {
30
31 const node = event.target;
32 const closeButtonVisible = (sidebarButtonClose.offsetParent !== null);
33
34 if(closeButtonVisible && node !== sidebarButtonOpen && !sidebar.contains(node)) {
35
36 sidebar.classList.remove("active");
37 sidebarButtonOpen.classList.remove("hidden");
38
39 }
40
41 });
42
43 }
44
45}

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…