PageSourceSearch

https://anothertab.xyz/assets/app.js?v=2

js anothertab.xyz collected 2026-10-02 02:10:51 UTC 1,888 bytes, 48 lines download raw bytes

1(() => {
2  const STORE_URL = "https://chromewebstore.google.com/detail/another-tab-%E2%80%94-compare-tic/cmfhblfcoijdaffmclmbdjafnmiepblm";
3  const isRussian = document.documentElement.lang.toLowerCase().startsWith("ru");
4
5  document.querySelectorAll("[data-store-link]").forEach((link) => {
6    const url = new URL(STORE_URL);
7    url.searchParams.set("utm_source", "anothertab_xyz");
8    url.searchParams.set("utm_medium", "landing");
9    url.searchParams.set("utm_campaign", "main_site");
10    url.searchParams.set("utm_content", isRussian ? `ru_${link.dataset.placement || "cta"}` : `en_${link.dataset.placement || "cta"}`);
11    link.href = url.toString();
12    link.target = "_blank";
13    link.rel = "noopener noreferrer";
14
15    link.addEventListener("click", () => {
16      if (typeof window.gtag === "function") {
17        window.gtag("event", "store_click", {
18          placement: link.dataset.placement || "unknown",
19          language: isRussian ? "ru" : "en",
20        });
21      }
22    });
23  });
24
25  document.querySelectorAll("[data-current-year]").forEach((node) => {
26    node.textContent = String(new Date().getFullYear());
27  });
28
29  const topbar = document.querySelector(".topbar");
30  const updateTopbar = () => topbar?.classList.toggle("isScrolled", window.scrollY > 12);
31  updateTopbar();
32  window.addEventListener("scroll", updateTopbar, { passive: true });
33
34  const menuButton = document.querySelector(".menuButton");
35  const navigation = document.querySelector(".nav");
36
37  menuButton?.addEventListener("click", () => {
38    const isOpen = navigation?.classList.toggle("isOpen") || false;
39    menuButton.setAttribute("aria-expanded", String(isOpen));
40  });
41
42  navigation?.querySelectorAll("a").forEach((link) => {
43    link.addEventListener("click", () => {
44      navigation.classList.remove("isOpen");
45      menuButton?.setAttribute("aria-expanded", "false");
46    });
47  });
48})();

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.