1/** 2 * 3 */ 4 5 6document.addEventListener('click', function (event) { 7 const link = event.target.closest('a'); 8 9 if (!link) { 10 return; 11 } 12 13 const url = new URL(link.href, window.location.href); 14 const targetId = url.hash; 15 16 if (!targetId || !targetId.startsWith('#accordion-link-')) { 17 return; 18 } 19 20 const accordion = document.querySelector(targetId); 21 22 if (!accordion) { 23 return; 24 } 25 26 event.preventDefault(); 27 28 const item = accordion.querySelector('li'); 29 const trigger = accordion.querySelector('.tb_title_accordion'); 30 const content = accordion.querySelector('.accordion-content'); 31 const closedIcon = accordion.querySelector('.accordion-icon'); 32 const openedIcon = accordion.querySelector('.accordion-active-icon'); 33 34 if (!item || !trigger || !content) { 35 return; 36 } 37 38 item.classList.add('current', 'builder-accordion-active'); 39 40 trigger.setAttribute('aria-expanded', 'true'); 41 42 content.setAttribute('aria-hidden', 'false'); 43 content.style.display = 'block'; 44 45 if (closedIcon) { 46 closedIcon.classList.add('tf_hide'); 47 } 48 49 if (openedIcon) { 50 openedIcon.classList.remove('tf_hide'); 51 } 52 53 setTimeout(function () { 54 accordion.scrollIntoView({ 55 behavior: 'smooth', 56 block: 'start' 57 }); 58 }, 50); 59 60 history.replaceState(null, '', targetId); 61});
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.