PageSourceSearch

https://reshapewildfire.org/wp-content/cache/min/1/wp-content/plug…/assets/js/faq.js?ver=1789748789

js reshapewildfire.org collected 2026-10-05 03:38:47 UTC 8,758 bytes, 38 lines download raw bytes

1(function($){'use strict';const FOCUSABLE_SELECTOR=['a[href]','button:not([disabled])','input:not([disabled]):not([type="hidden"])','select:not([disabled])','textarea:not([disabled])','summary','iframe','[contenteditable="true"]','[tabindex]'].join(', ');const FALLBACK_TABINDEX_ATTRIBUTE='data-sr-a11y-saved-tabindex';const NO_TABINDEX_VALUE='__none__';let setupScheduled=!1;function uniqueId(base){let candidate=base;let suffix=2;while(document.getElementById(candidate)){candidate=base+'-'+suffix;suffix+=1}
2return candidate}
3function ensureId(element,base){if(!element.id){element.id=uniqueId(base)}
4return element.id}
5function setAttributeIfChanged(element,name,value){if(element&&element.getAttribute(name)!==value){element.setAttribute(name,value)}}
6function removeAttributeIfPresent(element,name){if(element&&element.hasAttribute(name)){element.removeAttribute(name)}}
7function isPanelOpen(entry,panel){if(!entry||!panel||panel.hidden||panel.getAttribute('aria-hidden')==='true'&&entry.classList.contains('closed')){return!1}
8if(entry.classList.contains('closed')||entry.classList.contains('dipi-faq-entry-closed')){return!1}
9if(entry.classList.contains('open')||entry.classList.contains('opened')||entry.classList.contains('active')){return!0}
10const style=window.getComputedStyle(panel);return style.display!=='none'&&style.visibility!=='hidden'&&style.contentVisibility!=='hidden'}
11function saveAndDisableFocusableDescendants(panel){panel.querySelectorAll(FOCUSABLE_SELECTOR).forEach(function(element){if(element.hasAttribute(FALLBACK_TABINDEX_ATTRIBUTE)){return}
12const original=element.hasAttribute('tabindex')?element.getAttribute('tabindex'):NO_TABINDEX_VALUE;element.setAttribute(FALLBACK_TABINDEX_ATTRIBUTE,original);element.setAttribute('tabindex','-1')})}
13function restoreFocusableDescendants(panel){panel.querySelectorAll('['+FALLBACK_TABINDEX_ATTRIBUTE+']').forEach(function(element){const original=element.getAttribute(FALLBACK_TABINDEX_ATTRIBUTE);element.removeAttribute(FALLBACK_TABINDEX_ATTRIBUTE);if(original===NO_TABINDEX_VALUE){element.removeAttribute('tabindex')}else{element.setAttribute('tabindex',original)}})}
14function setPanelInteractivity(panel,open,trigger){if(!open&&panel.contains(document.activeElement)&&trigger){trigger.focus()}
15if('inert' in panel){panel.inert=!open;if(open){removeAttributeIfPresent(panel,'inert')}else{setAttributeIfChanged(panel,'inert','')}
16restoreFocusableDescendants(panel);return}
17if(open){restoreFocusableDescendants(panel)}else{saveAndDisableFocusableDescendants(panel)}}
18function clearLegacyFocusStyles(trigger){if(!trigger){return}['border','border-color','border-style','border-width','box-shadow','outline','outline-color','outline-offset','outline-style','outline-width'].forEach(function(property){trigger.style.removeProperty(property)})}
19function clearInactiveLegacyFocusStates(activeTrigger){document.querySelectorAll('.dipi_faq .dipi-faq-entry').forEach(function(entry){const trigger=entry.querySelector('.sr-a11y-accordion-trigger');if(trigger!==activeTrigger){entry.classList.remove('dipi-faq-entry-keyboard-focus','sr-a11y-accordion-legacy-focus');if(trigger){trigger.classList.remove('keyboard-navigation-outline','dipi-faq-keyboard-trigger');clearLegacyFocusStyles(trigger)}}})}
20function ensureNativeTrigger(title,heading,accordionIndex,entryIndex){let trigger=null;Array.from(heading.children).some(function(child){if(child.matches('button.sr-a11y-accordion-trigger')){trigger=child;return!0}
21return!1});if(!trigger){trigger=document.createElement('button');trigger.type='button';trigger.className='sr-a11y-accordion-trigger';while(heading.firstChild){trigger.appendChild(heading.firstChild)}
22heading.appendChild(trigger)}
23trigger.type='button';trigger.classList.add('sr-a11y-accordion-trigger');trigger.classList.remove('keyboard-navigation-outline','dipi-faq-keyboard-trigger');ensureId(trigger,'sr-a11y-accordion-button-'+accordionIndex+'-'+entryIndex);clearLegacyFocusStyles(trigger);title.classList.add('sr-a11y-accordion-title-wrapper');removeAttributeIfPresent(title,'role');removeAttributeIfPresent(title,'tabindex');removeAttributeIfPresent(title,'aria-controls');removeAttributeIfPresent(title,'aria-expanded');title.classList.remove('dipi-faq-keyboard-trigger','keyboard-navigation-outline');heading.removeAttribute('tabindex');heading.classList.add('sr-a11y-accordion-heading');return trigger}
24function syncEntry(entry){if(!entry){return}
25const title=entry.querySelector('.dipi-faq-title');const panel=entry.querySelector('.dipi-faq-content');const trigger=title&&title.querySelector('.sr-a11y-accordion-trigger');if(!title||!panel||!trigger){return}
26const open=isPanelOpen(entry,panel);setAttributeIfChanged(trigger,'aria-expanded',open?'true':'false');
26setAttributeIfChanged(panel,'aria-hidden',open?'false':'true');setPanelInteractivity(panel,open,trigger);entry.setAttribute('data-sr-a11y-accordion-open',open?'true':'false')}
27function configurePanelLandmarks(accordion,entries){const useRegions=entries.length<=6;entries.forEach(function(entry){const title=entry.querySelector('.dipi-faq-title');const panel=entry.querySelector('.dipi-faq-content');const trigger=title&&title.querySelector('.sr-a11y-accordion-trigger');if(!panel||!trigger){return}
28if(useRegions){setAttributeIfChanged(panel,'role','region');setAttributeIfChanged(panel,'aria-labelledby',trigger.id);panel.setAttribute('data-sr-a11y-accordion-region','true')}else{if(panel.getAttribute('role')==='region'){panel.removeAttribute('role')}
29panel.removeAttribute('aria-labelledby');panel.removeAttribute('data-sr-a11y-accordion-region')}})}
30function setupAccordion(accordion,accordionIndex){const entries=Array.from(accordion.querySelectorAll('.dipi-faq-entry'));entries.forEach(function(entry,index){entry.classList.remove('dipi-faq-entry-keyboard-focus','sr-a11y-accordion-legacy-focus');const title=entry.querySelector('.dipi-faq-title');const panel=entry.querySelector('.dipi-faq-content');const heading=title&&title.querySelector('h1, h2, h3, h4, h5, h6');if(!title||!panel||!heading){return}
31const trigger=ensureNativeTrigger(title,heading,accordionIndex,index+1);ensureId(panel,'sr-a11y-accordion-panel-'+accordionIndex+'-'+(index+1));setAttributeIfChanged(trigger,'aria-controls',panel.id);entry.setAttribute('data-sr-a11y-accordion-entry','true');title.querySelectorAll('.dipi-faq-icon-open, .dipi-faq-icon-closed, [class*="dipi-faq-icon"]').forEach(function(icon){setAttributeIfChanged(icon,'aria-hidden','true');removeAttributeIfPresent(icon,'tabindex')});panel.querySelectorAll('a, button, input, select, textarea, [tabindex]:not([tabindex="-1"])').forEach(function(control){control.classList.add('keyboard-navigation-outline')});syncEntry(entry)});configurePanelLandmarks(accordion,entries);accordion.setAttribute('data-sr-a11y-accordion-ready','true')}
32function setupDipiFaqAccessibility(){document.querySelectorAll('.dipi_faq').forEach(function(accordion,index){setupAccordion(accordion,index+1)})}
33function scheduleSetup(){if(setupScheduled){return}
34setupScheduled=!0;window.requestAnimationFrame(function(){setupScheduled=!1;setupDipiFaqAccessibility()})}
35function scheduleEntrySync(entry){[0,60,180,450].forEach(function(delay){window.setTimeout(function(){syncEntry(entry)},delay)})}
36$(document).on('click','.dipi_faq .dipi-faq-title',function(){scheduleEntrySync(this.closest('.dipi-faq-entry'))});$(document).on('transitionend animationend','.dipi_faq .dipi-faq-content',function(){syncEntry(this.closest('.dipi-faq-entry'))});document.addEventListener('focusin',function(event){const activeTrigger=event.target&&event.target.closest?event.target.closest('.dipi_faq .sr-a11y-accordion-trigger'):null;window.setTimeout(function(){clearInactiveLegacyFocusStates(activeTrigger)},0)},!0);document.addEventListener('focusout',function(){window.setTimeout(function(){const active=document.activeElement&&document.activeElement.closest?document.activeElement.closest('.dipi_faq .sr-a11y-accordion-trigger'):null;clearInactiveLegacyFocusStates(active)},0)},!0);setupDipiFaqAccessibility();window.setTimeout(setupDipiFaqAccessibility,500);window.setTimeout(setupDipiFaqAccessibility,1500);const observer=new MutationObserver(function(mutations){let needsSetup=!1;const entriesToSync=new Set();mutations.forEach(function(mutation){if(mutation.type==='childList'){needsSetup=!0}
37const target=mutation.target&&mutation.target.nodeType===1?mutation.target:null;const entry=target&&target.closest?target.closest('.dipi-faq-entry'):null;if(entry){entriesToSync.add(entry)}});if(needsSetup){scheduleSetup()}
38entriesToSync.forEach(syncEntry)});observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:!0,attributeFilter:['class','style','hidden','aria-hidden']})}(jQuery))

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.