PageSourceSearch

https://www.digitalhomesystems.com/media/com_jchoptimize/cache/js/…28526da4539bfd6cae0fe9d0e1e13294e3b5fb00.js

js digitalhomesystems.com collected 2026-10-08 03:57:28 UTC 2,883 bytes, 11 lines download raw bytes

1(function(){'use strict';const ROOT_MARGIN='200px 0px';const SCRIPT_TIMEOUT_MS=12000;function scheduleTask(){return new Promise((resolve)=>{if('requestIdleCallback'in window){window.requestIdleCallback(resolve,{timeout:700});}else{setTimeout(resolve,0);}});}
2function createRunnableScript(oldScript){const s=document.createElement('script');for(const a of['src','nonce','integrity','crossorigin','referrerpolicy','fetchpriority']){const v=oldScript.getAttribute(a);if(v!==null)s.setAttribute(a,v);}
3s.async=false;if(oldScript.src&&oldScript.getAttribute('src')){}else if(oldScript.textContent&&oldScript.textContent.trim()!==''){s.textContent=oldScript.textContent;}
4for(const{name,value}of Array.from(oldScript.attributes)){if((name.startsWith('data-')||name==='id'||name==='class')&&!s.hasAttribute(name)){s.setAttribute(name,value);}}
5return s;}
6async function runScriptsIn(container){const scripts=Array.from(container.querySelectorAll('script'));if(scripts.length===0)return;for(const oldScript of scripts){await scheduleTask();const newScript=createRunnableScript(oldScript);if(!newScript.src){oldScript.replaceWith(newScript);continue;}
7await new Promise((resolve)=>{let settled=false;let timer=setTimeout(()=>{if(settled)return;settled=true;resolve();},SCRIPT_TIMEOUT_MS);const finish=()=>{if(settled)return;settled=true;if(timer)clearTimeout(timer);resolve();};newScript.addEventListener('load',finish,{once:true});newScript.addEventListener('error',finish,{once:true});oldScript.replaceWith(newScript);});}}
8async function activateBlock(target,observer){const template=target.querySelector(':scope > template.jchoptimize-reduce-dom__template');if(!template){observer.unobserve(target);return;}
9const frag=template.content.cloneNode(true);await scheduleTask();template.replaceWith(frag);await scheduleTask();target.classList.remove('jchoptimize-reduce-dom');target.classList.add('jchoptimize-reduce-dom_loaded');target.querySelectorAll('.jchoptimize-reduce-dom').forEach((inner)=>observer.observe(inner));await runScriptsIn(target);document.dispatchEvent(new Event('onJchDomLoaded'));document.dispatchEvent(new CustomEvent('jch:domBlockLoaded',{detail:{target}}));observer.unobserve(target);}
10function lazyLoadHtml(){let activationQueue=Promise.resolve();const enqueueActivation=(target,observer)=>{activationQueue=activationQueue.then(()=>activateBlock(target,observer)).catch(()=>{observer.unobserve(target);});};const callback=(entries,observer)=>{entries.forEach((entry)=>{if(!entry.isIntersecting)return;enqueueActivation(entry.target,observer);});};const observer=new IntersectionObserver(callback,{root:null,rootMargin:ROOT_MARGIN,threshold:0});document.querySelectorAll('.jchoptimize-reduce-dom').forEach((t)=>observer.observe(t));}
11if(document.readyState==='loading'){window.addEventListener('DOMContentLoaded',lazyLoadHtml,{once:true});}else{lazyLoadHtml();}}());

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.