1document.addEventListener('DOMContentLoaded',()=>{const elements=document.querySelectorAll('[data-load="defer"]');if(!document.getElementById('inline-spinner-style')){const style=document.createElement('style');style.id='inline-spinner-style';style.innerHTML=` 2 @keyframes spin { 3 to { transform: rotate(360deg); } 4 } 5 `;document.head.appendChild(style)} 6elements.forEach((el)=>{const slug=el.getAttribute('data-slug');const post_id=el.getAttribute('data-post_id');const name=el.getAttribute('data-name');el.removeAttribute('data-slug');el.removeAttribute('data-name');el.removeAttribute('data-load');el.innerHTML=` 7 <div role="presentation" aria-hidden="true" 8 style=" 9 display: flex; 10 justify-content: center; 11 align-items: center; 12 min-height: 60px; 13 height: 100%; 14 "> 15 <div style=" 16 width: 24px; 17 height: 24px; 18 border: 3px solid #ccc; 19 border-top-color: #333; 20 border-radius: 50%; 21 animation: spin 1s linear infinite; 22 "></div> 23 </div> 24 `;fetch(nova.admin_ajax,{method:'POST',headers:{'Content-Type':'application/x-www-form-urlencoded',},body:new URLSearchParams({action:'nova_defer_load_template_part',slug:slug,name:name,post_id:post_id,}),}).then((response)=>response.text()).then((html)=>{el.innerHTML=html;el.removeAttribute('style');el.setAttribute('aria-busy','false')}).catch((err)=>{console.error('AJAX load error:',err);el.innerHTML='<p role="alert">Error loading content.</p>'})})})
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.