PageSourceSearch

https://runableapp.github.io/vibefilter/js/script.js?v3.2.1?v3.2.1?v3.2.1?v3.2.1

js runableapp.github.io collected 2026-10-03 09:52:28 UTC 1,369 bytes, 51 lines download raw bytes

vendor: 132 bytes, lines 1-6
1window.dataLayer = window.dataLayer || [];
2function gtag() {
3  dataLayer.push(arguments);
4}
5gtag('js', new Date());
6gtag('config', '
6G-R05N6KT4TM
vendor: 5 bytes, lines 6-7
6');
7
8// Scroll-aware nav highlight
9const sections = document.querySelectorAll('section[id]');
10const navLinks = document.querySelectorAll('nav a');
11
12function highlightNav() {
13  let current = '';
14  sections.forEach(section => {
15    const top = section.offsetTop - 80;
16    if (window.scrollY >= top) {
17      current = section.getAttribute('id');
18    }
19  });
20  navLinks.forEach(link => {
21    link.classList.toggle('active', link.getAttribute('href') === '#' + current);
22  });
23}
24
25window.addEventListener('scroll', highlightNav, { passive: true });
26highlightNav();
27
28// Screenshot lightbox
29const overlay = document.getElementById('screenshotOverlay');
30const overlayImg = document.getElementById('screenshotOverlayImg');
31
32document.querySelectorAll('.screenshot-item img').forEach(img => {
33  img.addEventListener('click', () => {
34    overlayImg.src = img.src;
35    overlayImg.alt = img.alt;
36    overlay.classList.add('active');
37  });
38});
39
40overlay.addEventListener('click', () => {
41  overlay.classList.remove('active');
42  overlayImg.src = '';
43});
44
45document.addEventListener('keydown', (e) => {
46  if (e.key === 'Escape' && overlay.classList.contains('active')) {
47    overlay.classList.remove('active');
48    overlayImg.src = '';
49  }
50});
51

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.