PageSourceSearch

https://eshikhon.com.bd/wp-content/themes/wplms_gutenberg/js/app.js?ver=1839

js eshikhon.com.bd collected 2026-10-09 21:24:23 UTC 14,213 bytes, 305 lines download raw bytes

1(() => {
2  // assets/js/app.js
3  document.addEventListener("DOMContentLoaded", () => {
4    if (document.querySelector(".dark_light_switch")) {
5      if (localStorage.getItem("dark_theme")) {
6        document.querySelector("body").classList.add("dark_theme");
7      }
8      document.querySelector(".dark_light_switch").addEventListener("click", () => {
9        if (document.querySelector("body").classList.contains("dark_theme")) {
10          document.querySelector("body").classList.remove("dark_theme");
11          localStorage.removeItem("dark_theme");
12        } else {
13          document.querySelector("body").classList.add("dark_theme");
14          localStorage.setItem("minimise_side_header", 1);
15        }
16      });
17    }
18    if (document.querySelector(".searchbox")) {
19      document.querySelector(".searchbox svg").addEventListener("click", (e) => {
20        e.preventDefault();
21        if (document.querySelector(".searchbox").classList.contains("active")) {
22          document.querySelector(".searchbox").classList.remove("active");
23        } else {
24          document.querySelector(".searchbox").classList.add("active");
25        }
26      });
27    }
28    if (document.querySelector(".ajax-badge")) {
29    }
30  });
31  var reframe = (target, cName) => {
32    var _a, _b;
33    var frames = typeof target === "string" ? document.querySelectorAll(target) : target;
34    var c = cName || "js-reframe";
35    if (!("length" in frames))
36      frames = [frames];
37    for (var i = 0; i < frames.length; i += 1) {
38      var frame = frames[i];
39      var hasClass = frame.className.split(" ").indexOf(c) !== -1;
40      if (hasClass || frame.style.width.indexOf("%") > -1) {
41        return;
42      }
43      var height = frame.getAttribute("height") || frame.offsetHeight;
44      var width = frame.getAttribute("width") || frame.offsetWidth;
45      var heightNumber = typeof height === "string" ? parseInt(height) : height;
46      var widthNumber = typeof width === "string" ? parseInt(width) : width;
47      var padding = heightNumber / widthNumber * 100;
48      var div = document.createElement("div");
49      div.className = c;
50      var divStyles = div.style;
51      divStyles.position = "relative";
52      divStyles.width = "100%";
53      divStyles.paddingTop = "".concat(padding, "%");
54      var frameStyle = frame.style;
55      frameStyle.position = "absolute";
56      frameStyle.width = "100%";
57      frameStyle.height = "100%";
58      frameStyle.left = "0";
59      frameStyle.top = "0";
60      (_a = frame.parentNode) === null || _a === void 0 ? void 0 : _a.insertBefore(div, frame);
61      (_b = frame.parentNode) === null || _b === void 0 ? void 0 : _b.removeChild(frame);
62      div.appendChild(frame);
63    }
64  };
65  var wplms_gutneberg_resize = () => {
66    document.querySelectorAll("#main-menu > ul > li > .sub-menu >li").forEach((el) => {
67      el.addEventListener("mouseenter", function(el2) {
68        if (!el2.target.parentNode.classList.contains("openleft")) {
69          let dimensions = el2.target.getBoundingClientRect();
70          if (dimensions.right > window.innerWidth) {
71            el2.target.parentNode.classList.add("openleft");
72          }
73        }
74      });
75    });
76    document.querySelectorAll(".menu_icon_item").forEach((el) => {
77      let icon = atob(el.getAttribute("data-icon"));
78      if (icon.length < 400) {
79        icon.split(" ").map((i) => el.classList.add(i));
80      } else {
81        el.innerHTML = icon;
82      }
83    });
84    if (document.querySelector("header.site-header nav")) {
85      let currentMenuitem = document.querySelector("#main-menu>ul>li");
86      if (document.querySelector("#main-menu>ul>li.current-menu-item")) {
87        currentMenuitem = document.querySelector("#main-menu>ul>li.current-menu-item");
88      } else if (document.querySelector("#main-menu>ul>li.current-menu-ancestor")) {
89        currentMenuitem = document.querySelector("#main-menu>ul>li.current-menu-ancestor");
90      } else if (document.querySelector("#main-menu>ul>li.current_page_item")) {
91        currentMenuitem = document.querySelector("#main-menu>ul>li.current_page_item");
92      }
93      document.querySelectorAll("#main-menu>ul>li").forEach((el, i) => {
94        if (window.innerWidth > 960) {
95          let rect = null;
96          el.addEventListener("mouseenter", () => {
97            rect = el.getBoundingClientRect();
98            document.querySelector(".mega_menu_root_active_highlight").style.left = "calc(" + rect.x + "px - 0.5rem)";
99            document.querySelector(".mega_menu_root_active_highlight").style.width = "calc(" + rect.width + "px + 1rem)";
100          });
101          el.addEventListener("mouseleave", () => {
102            rect = currentMenuitem.getBoundingClientRect();
103            document.querySelector(".mega_menu_root_active_highlight").style.left = "calc(" + rect.x + "px - 0.5rem)";
104            document.querySelector(".mega_menu_root_active_highlight").style.width = "calc(" + rect.width + "px + 1rem)";
105          });
106        }
107      });
108      if (currentMenuitem) {
109        let rect = currentMenuitem.getBoundingClientRect();
110        currentMenuitem.classList.add("active");
111        document.querySelector(".mega_menu_root_active_highlight").style.left = "calc(" + rect.x + "px - 0.5rem)";
112        document.querySelector(".mega_menu_root_active_highlight").style.width = "calc(" + rect.width + "px + 1rem)";
113      }
114    }
115    sticky_block();
116    reframe("iframe");
117  };
118  var sticky_block = function() {
119    if (document.querySelector("#vibebpmember")) {
120      document.querySelectorAll(".sticky_block").forEach(function(el) {
121        var w = Math.max(document.documentElement.clientWidth, window.innerWidth || 0);
122        if (w > 768) {
123          var cwidth = el.offsetWidth;
124          var contentHeight = document.querySelector("#vibebpmember").offsetHeight;
125          var top = 0;
126          var etop = el.getBoundingClientRect().top;
127          var endheight = top + contentHeight - el.offsetHeight - etop;
128          el.style.width = cwidth + "px";
129          window.addEventListener("scroll", function(event) {
130            var st = window.pageYOffset;
131            if (st < endheight) {
132              if (st > etop) {
133                el.style.transform = "translateY(" + st + "px)";
134              } else {
135                el.style.transform = "none";
136              }
137            }
138          }, false);
139        }
140      });
141    }
142  };
143  window.addEventListener("scroll", (event) => {
144    document.querySelectorAll(".vibe_animate").forEach((el) => {
145      if (isInViewport(el)) {
146        el.classList.add("loaded");
147        if (document.querySelector("." + el.getAttribute("id"))) {
148          document.querySelector("." + el.getAttribute("id")).classList.add("active");
149        }
150      }
151    });
152  }, false);
153  document.addEventListener("DOMContentLoaded", () => {
154    setTimeout(() => {
155      wplms_gutneberg_resize();
156    }, 100);
157    if (document.querySelectorAll("header.site-header nav .menu-item")) {
158      document.querySelectorAll("header.site-header nav .menu-item").forEach(function(el) {
159        if (el.querySelector(".megadrop")) {
160          el.classList.add("hasmegamenu");
161          el.style.position = "static";
162          var attr = el.querySelector(".megadrop").getAttribute("data-width");
163          if (attr != "100%" && attr != "container") {
164            el.style.position = "relative";
165            let nattr = parseInt(attr.replace("px", ""));
166            if (!isNaN(nattr)) {
167              el.querySelector(".sub-menu").style.left = "-" + (Math.round(nattr / 2, 2) - 30) + "px";
168            }
169          }
170          el.querySelector(".sub-menu").style.width = attr;
171        }
172      });
173      if (document.querySelector(".mega_sub_posts_menu")) {
174        document.querySelector(".mega_menu_term").classList.add("active");
175        document.querySelector(".mega_sub_posts_menu").classList.add("active");
176        document.querySelectorAll(".mega_menu_term").forEach((el) => {
177          el.addEventListener("mouseenter", () => {
178            if (document.querySelector("." + el.getAttribute("data-id") + "_posts")) {
179              if (el.parentNode.querySelector(".mega_menu_term.active")) {
180                el.parentNode.querySelector(".mega_menu_term.active").classList.remove("active");
181              }
182              el.classList.add("active");
183              if (el.parentNode.parentNode.querySelector(".mega_sub_posts_menu.active")) {
184                el.parentNode.parentNode.querySelector(".mega_sub_posts_menu.active").classList.remove("active");
185              }
186              el.parentNode.parentNode.querySelector("." + el.getAttribute("data-id") + "_posts").classList.add("active");
187            }
188          });
189        });
190      }
191    }
192    if (document.querySelector(".menu-item-has-children") && window.innerWidth < 768) {
193      document.querySelectorAll(".menu-item-has-children").forEach((el) => {
194        el.addEventListener("click", function(e) {
195          if (e.target.nodeName == "LI") {
196            e.preventDefault();
197            el.classList.toggle("active");
198            e.stopPropagation();
199          }
200        });
201      });
202    }
203  });
204  window.addEventListener("resize", wplms_gutneberg_resize);
205  document.addEventListener("userLoaded", wplms_gutneberg_resize);
206  var CountUp = class {
207    constructor(el) {
208      const counter = el.querySelector(".counter");
209      const trigger = el.querySelector(".start-counter");
210      let num = 0;
211      const decimals = counter.dataset.decimals;
212      let increment = counter.dataset.increment;
213      const countUp = () => {
214        if (num < counter.dataset.stop)
215          if (decimals) {
216            if (!increment) {
217              increment = 0.01;
218            }
219            num += increment;
220            counter.textContent = new Intl.NumberFormat("en-GB", {
221              minimumFractionDigits: 2,
222              maximumFractionDigits: 2
223            }).format(num);
224          } else {
225            if (!increment) {
226              increment = 1;
227            }
228            num = num + increment;
229            counter.textContent = num;
230          }
231      };
232      const observer = new IntersectionObserver((el2) => {
233        if (el2[0].isIntersecting) {
234          const interval = setInterval(() => {
235            num < counter.dataset.stop ? countUp() : clearInterval(interval);
236          }, counter.dataset.speed);
237        }
238      }, { threshold: [0] });
239      observer.observe(trigger);
240    }
241  };
242  var vibetabs = () => {
243    if (document.querySelector(".vibe_tabs")) {
244      document.querySelectorAll(".vibe_tabs").forEach((vts) => {
245        if (!vts.querySelector(".vibe_tabs_list > li.active")) {
246          let activeli = vts.querySelector(".vibe_tabs_list > li:first-child");
247          vts.querySelector(".vibe_tab." + activeli.classList[0]).classList.add("active");
248          activeli.classList.add("active");
249        }
250        vts.querySelectorAll(".vibe_tabs_list > li").forEach((li) => {
251          li.addEventListener("click", () => {
252            if (!li.classList.contains("active")) {
253              vts.querySelector(".vibe_tabs_list > li.active").classList.remove("active");
254              li.classList.add("active");
255              let classes = li.classList;
256              if (vts.querySelector(".vibe_tab." + classes[0])) {
257                vts.querySelector(".vibe_tab.active").classList.remove("active");
258                vts.querySelector(".vibe_tab." + classes[0]).classList.add("active");
259                document.dispatchEvent(new Event("VibeBP_Editor_Content"));
260              }
261            }
262          });
263        });
264      });
265    }
266  };
267  document.addEventListener("DOMContentLoaded", () => {
268    vibetabs();
269    if (document.querySelector("#open_menu_toggle")) {
270      document.querySelector("#open_menu_toggle").addEventListener("click", (e) => {
271        e.preventDefault();
272        document.querySelector(".site_mobile_menu").classList.toggle("hidden");
273        setTimeout(() => {
274          document.querySelector(".site_mobile_menu").classList.toggle("active");
275        }, 300);
276      });
277    }
278    if (document.querySelector("#close_menu_toggle")) {
279      document.querySelector("#close_menu_toggle").addEventListener("click", (e) => {
280        e.preventDefault();
281        document.querySelector(".site_mobile_menu").classList.toggle("active");
282        setTimeout(() => {
283          document.querySelector(".site_mobile_menu").classList.toggle("hidden");
284        }, 300);
285      });
286    }
287    if (document.querySelector(".white_bg")) {
288      document.querySelectorAll(".white_bg").forEach((el) => {
289        var newContent = "<div class='squares'> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> </div>";
290        el.insertAdjacentHTML("beforeend", newContent);
291      });
292    }
293    if (document.querySelector(".particles_bg")) {
294      document.querySelectorAll(".particles_bg").forEach((el) => {
295        var newContent = '<div class="particles_container"><div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div> <div class="particle"></div></div>';
296        el.insertAdjacentHTML("beforeend", newContent);
297      });
298    }
299    if (document.querySelector(".counter_wrap")) {
300      document.querySelectorAll(".counter_wrap").forEach((el) => {
301        new CountUp(el);
302      });
303    }
304  });
305})();

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.