1(function(){function init(){var desktopQuery=window.matchMedia('(min-width:1360px)');function setExpanded(button,open){if(button)button.setAttribute('aria-expanded',open?'true':'false');} 2function closeToolGroups(item,except){item.querySelectorAll('.outliyr-nav-group.is-open').forEach(function(group){if(group===except)return;group.classList.remove('is-open');setExpanded(group.querySelector(':scope > .outliyr-nav-group-label'),!1)})} 3document.querySelectorAll('.outliyr-tools-menu').forEach(function(item,index){var trigger=item.querySelector(':scope > a');var panel=item.querySelector(':scope > .sub-menu');if(!trigger||!panel)return;var desktopItem=!item.closest('.slideout-navigation');panel.id=panel.id||'outliyr-tools-panel-'+index;trigger.setAttribute('aria-controls',panel.id);trigger.setAttribute('aria-haspopup','true');function isDesktop(){return desktopQuery.matches&&!item.closest('.slideout-navigation')} 4function positionDesktopPanel(){if(!isDesktop()){panel.style.removeProperty('--olnav-panel-width');panel.style.removeProperty('--olnav-panel-left');return} 5var offsetParent=panel.offsetParent;if(!offsetParent)return;var gutter=20;var availableLeft=gutter;var sidebar=document.getElementById('outliyr-member-sidebar');if(sidebar&&document.documentElement.getAttribute('data-outliyr-member')==='true'){var sidebarRect=sidebar.getBoundingClientRect();var sidebarStyle=window.getComputedStyle(sidebar);var sidebarVisible=sidebarStyle.display!=='none'&&sidebarStyle.visibility!=='hidden'&&sidebarRect.width>0&&sidebarRect.right>0&&sidebarRect.left<window.innerWidth;if(sidebarVisible)availableLeft=Math.max(gutter,sidebarRect.right+20);} 6var availableRight=window.innerWidth-gutter;var availableWidth=Math.max(0,availableRight-availableLeft);var panelWidth=Math.min(1120,availableWidth);var panelCenter=availableLeft+(availableWidth/2);var parentRect=offsetParent.getBoundingClientRect();panel.style.setProperty('--olnav-panel-width',panelWidth+'px');panel.style.setProperty('--olnav-panel-left',(panelCenter-parentRect.left)+'px')} 7function desktopOpen(){return!item.classList.contains('is-escape-closed')&&(item.matches(':focus-within')||item.classList.contains('is-open'))} 8function sync(){positionDesktopPanel();setExpanded(trigger,isDesktop()&&desktopOpen())} 9function closeDesktop(){item.classList.remove('sfHover','toggled-on','is-open');item.classList.add('is-escape-closed');sync()} 10trigger.addEventListener('click',function(event){if(!isDesktop())return;event.preventDefault();item.classList.remove('is-escape-closed');var open=!item.classList.contains('is-open');item.classList.toggle('is-open',open);sync();if(open&&event.detail===0){var first=panel.querySelector('a[href]:not([href="#"])');if(first)window.setTimeout(function(){first.focus()},0)}});var hoverIntentTimer=0;item.addEventListener('pointerenter',function(event){if(isDesktop()&&(!event.pointerType||event.pointerType==='mouse'||event.pointerType==='pen')&&!item.classList.contains('is-escape-closed')){window.clearTimeout(hoverIntentTimer);hoverIntentTimer=window.setTimeout(function(){if(trigger.matches(':hover')&&!item.classList.contains('is-escape-closed')){item.classList.add('is-open');sync()}},100)} 11sync()});item.addEventListener('pointerleave',function(){window.clearTimeout(hoverIntentTimer);item.classList.remove('is-escape-closed','sfHover','toggled-on','is-open');if(item.contains(document.activeElement))document.activeElement.blur();sync()});item.addEventListener('focusin',sync);item.addEventListener('focusout',function(){window.setTimeout(function(){if(!item.contains(document.activeElement))item.classList.remove('is-escape-closed');sync()},0)});item.addEventListener('keydown',function(event){if(event.key==='Escape'){closeDesktop();trigger.focus()}});item.querySelectorAll('.outliyr-nav-group').forEach(function(group,groupIndex){var button=group.querySelector(':scope > .outliyr-nav-group-label');var submenu=group.querySelector(':scope > .sub-menu');if(!button||!submenu)return;submenu.id=submenu.id||'outliyr-tools-group-'+index+'-'+groupIndex;button.setAttribute('aria-controls',submenu.id);if(group.classList.contains('outliyr-nav-group--featured')&&!isDesktop()){group.classList.add('is-open');setExpanded(button,!0)} 12button.addEventListener('click',function(){if(isDesktop())return;var open=!group.classList.contains('is-open');closeToolGroups(item,group);group.classList.toggle('is-open',open);
12setExpanded(button,open)})});document.addEventListener('pointerdown',function(event){if(isDesktop()&&!item.contains(event.target))closeDesktop();});if(desktopItem){var sidebar=document.getElementById('outliyr-member-sidebar');window.addEventListener('resize',positionDesktopPanel,{passive:!0});if(desktopQuery.addEventListener)desktopQuery.addEventListener('change',positionDesktopPanel);if(sidebar){var sidebarObserver=new MutationObserver(positionDesktopPanel);sidebarObserver.observe(sidebar,{attributes:!0,attributeFilter:['class','data-oms-mode','style']});if(window.ResizeObserver){var sidebarResizeObserver=new ResizeObserver(positionDesktopPanel);sidebarResizeObserver.observe(sidebar)}} 13var memberObserver=new MutationObserver(positionDesktopPanel);memberObserver.observe(document.documentElement,{attributes:!0,attributeFilter:['data-outliyr-member']})} 14sync()});function buildDrawerChrome(){var drawer=document.querySelector('#generate-slideout-menu');if(!drawer||drawer.querySelector('.outliyr-drawer-head'))return;var inside=drawer.querySelector('.inside-navigation');if(!inside)return;var logo=document.querySelector('#masthead .site-logo img,#mobile-header .site-logo img');var head=document.createElement('div');head.className='outliyr-drawer-head';var home=document.createElement('a');home.href='/';home.setAttribute('aria-label','Outliyr home');if(logo){var image=logo.cloneNode(!0);image.removeAttribute('id');image.loading='eager';home.appendChild(image)}else{home.textContent='OUTLIYR'} 15var close=document.createElement('button');close.type='button';close.className='outliyr-drawer-close';close.setAttribute('aria-label','Close menu');close.innerHTML='<span aria-hidden="true">Ã</span>';var lastOpener=null;close.addEventListener('click',function(){var nativeClose=drawer.querySelector('.slideout-exit');if(nativeClose)nativeClose.click();else document.querySelectorAll('.menu-toggle[aria-expanded="true"]').forEach(function(button){button.click()});if(lastOpener)window.setTimeout(function(){lastOpener.focus()},80)});head.appendChild(home);head.appendChild(close);inside.insertBefore(head,inside.firstChild);var sourceAuth=document.querySelector('#masthead .olnav-auth,#mobile-header .olnav-auth');if(sourceAuth){var actions=document.createElement('div');actions.className='outliyr-drawer-actions';var clonedAuth=sourceAuth.cloneNode(!0);clonedAuth.removeAttribute('id');actions.appendChild(clonedAuth);inside.appendChild(actions)} 16document.querySelectorAll('.menu-toggle').forEach(function(button){button.addEventListener('click',function(){lastOpener=button;window.setTimeout(function(){close.focus()},180)})});var observer=new MutationObserver(function(){var visible=drawer.classList.contains('is-open')||document.body.classList.contains('slide-opened')||drawer.getAttribute('aria-hidden')==='false';if(visible)window.setTimeout(function(){close.focus()},80)});observer.observe(drawer,{attributes:!0,attributeFilter:['class','aria-hidden']});observer.observe(document.body,{attributes:!0,attributeFilter:['class']})} 17buildDrawerChrome()} 18if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init,{once:!0});else init()})() 19;
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.