1(()=>{const GRID_SELECTOR='.js-topics-grid';const ITEM_SELECTOR='.topics_and_news-topics__grid__item';const META_SELECTOR='.component-topic__content__meta';const ROW_TOLERANCE_PX=2;let rafId=0;function equalizeMetaHeights(grid){const items=Array.from(grid.querySelectorAll(ITEM_SELECTOR));if(!items.length)return;const metas=items.map((item)=>item.querySelector(META_SELECTOR)).filter(Boolean);for(const meta of metas){meta.style.minHeight='';meta.style.height='';} 2const rows=[];for(const item of items){const meta=item.querySelector(META_SELECTOR);if(!meta)continue;const top=item.getBoundingClientRect().top;const lastRow=rows[rows.length-1];if(!lastRow||Math.abs(top-lastRow.top)>ROW_TOLERANCE_PX){rows.push({top,metas:[meta]});}else{lastRow.metas.push(meta);}} 3for(const row of rows){let max=0;for(const meta of row.metas){const h=meta.getBoundingClientRect().height;if(h>max)max=h;} 4const px=`${Math.ceil(max)}px`;for(const meta of row.metas){meta.style.minHeight=px;}}} 5function schedule(grid){if(rafId)cancelAnimationFrame(rafId);rafId=requestAnimationFrame(()=>{rafId=0;equalizeMetaHeights(grid);});} 6function init(){const grid=document.querySelector(GRID_SELECTOR);if(!grid)return;const run=()=>schedule(grid);run();window.addEventListener('load',run,{passive:true});window.addEventListener('resize',run,{passive:true});window.addEventListener('topicsGridUpdated',run);if(document.fonts&&typeof document.fonts.ready?.then==='function'){document.fonts.ready.then(run).catch(()=>{});} 7if(window.ResizeObserver){const ro=new ResizeObserver(()=>run());ro.observe(grid);}else{let tries=0;const id=window.setInterval(()=>{run();tries+=1;if(tries>=10)window.clearInterval(id);},300);} 8if(window.MutationObserver){const mo=new MutationObserver(()=>run());mo.observe(grid,{childList:true,subtree:true});}} 9if(document.readyState==='loading'){document.addEventListener('DOMContentLoaded',init);}else{init();}})();
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.