1/* @license GPL-2.0-or-later https://www.drupal.org/licensing/faq */ 2(function(Drupal){"use strict";Drupal.behaviors.geolocationMapTypeControl={attach:function(context,drupalSettings){Drupal.geolocation.executeFeatureOnAllMaps("control_maptype",function(map,featureSettings){map.addPopulatedCallback(function(map){var options={mapTypeControlOptions:{position:google.maps.ControlPosition[featureSettings.position],style:google.maps.MapTypeControlStyle[featureSettings.style]}};if(featureSettings.behavior==="always")options.mapTypeControl=true;else options.mapTypeControl=undefined;map.googleMap.setOptions(options);});return true;},drupalSettings);},detach:function(context,drupalSettings){}};})(Drupal);; 3(function(Drupal){"use strict";Drupal.behaviors.geolocationStreetViewControl={attach:function(context,drupalSettings){Drupal.geolocation.executeFeatureOnAllMaps("control_streetview",function(map,featureSettings){map.addPopulatedCallback(function(map){var options={streetViewControlOptions:{position:google.maps.ControlPosition[featureSettings.position]}};if(featureSettings.behavior==="always")options.streetViewControl=true;else options.streetViewControl=undefined;map.googleMap.setOptions(options);});return true;},drupalSettings);},detach:function(context,drupalSettings){}};})(Drupal);; 4(function(Drupal){"use strict";Drupal.behaviors.geolocationZoomControl={attach:function(context,drupalSettings){Drupal.geolocation.executeFeatureOnAllMaps("control_zoom",function(map,featureSettings){map.addPopulatedCallback(function(map){var options={zoomControlOptions:{position:google.maps.ControlPosition[featureSettings.position],style:google.maps.ZoomControlStyle[featureSettings.style]}};if(featureSettings.behavior==="always")options.zoomControl=true;else options.zoomControl=undefined;map.googleMap.setOptions(options);});return true;},drupalSettings);},detach:function(context,drupalSettings){}};})(Drupal);; 5(function(Drupal){"use strict";Drupal.behaviors.geolocationMarkerIcon={attach:function(context,drupalSettings){Drupal.geolocation.executeFeatureOnAllMaps("marker_icon",function(map,featureSettings){map.addMarkerAddedCallback(function(currentMarker){var newIcon={};var currentIcon=currentMarker.getIcon();if(typeof currentIcon==="undefined")if(typeof featureSettings.markerIconPath==="string")newIcon.url=featureSettings.markerIconPath;else return;else if(typeof currentIcon==="string")newIcon.url=currentIcon;else{if(typeof currentIcon.url==="string")newIcon.url=currentIcon.url;}var anchorX=currentMarker.locationWrapper.data("marker-icon-anchor-x")||featureSettings.anchor.x;var anchorY=currentMarker.locationWrapper.data("marker-icon-anchor-y")||featureSettings.anchor.y;var labelOriginX=currentMarker.locationWrapper.data("marker-icon-label-origin-x")||featureSettings.labelOrigin.x;var labelOriginY=currentMarker.locationWrapper.data("marker-icon-label-origin-y")||featureSettings.labelOrigin.y;var originX=currentMarker.locationWrapper.data("marker-icon-origin-x")||featureSettings.origin.x;var originY=currentMarker.locationWrapper.data("marker-icon-origin-y")||featureSettings.origin.y;var sizeWidth=currentMarker.locationWrapper.data("marker-icon-size-width")||featureSettings.size.width;var sizeHeight=currentMarker.locationWrapper.data("marker-icon-size-height")||featureSettings.size.height;var scaledSizeWidth=currentMarker.locationWrapper.data("marker-icon-scaled-size-width")||featureSettings.scaledSize.width;var scaledSizeHeight=currentMarker.locationWrapper.data("marker-icon-scaled-size-height")||featureSettings.scaledSize.height;if(anchorX!==null&&anchorY!==null)newIcon.anchor=new google.maps.Point(anchorX,anchorY);if(labelOriginX!==null&&labelOriginY!==null)newIcon.labelOrigin=new google.maps.Point(labelOriginX,labelOriginY);if(originX!==null&&originY!==null)newIcon.origin=new google.maps.Point(originX,originY);if(sizeWidth!==null&&sizeHeight!==null)newIcon.size=new google.maps.Size(sizeWidth,sizeHeight);if(scaledSizeWidth!==null&&scaledSizeHeight!==null)newIcon.scaledSize=new google.maps.Size(scaledSizeWidth,scaledSizeHeight);currentMarker.setIcon(newIcon);});return true;},drupalSettings);},detach:function(context,drupalSettings){}};})(Drupal);; 6(function(Drupal){"use strict";Drupal.behaviors.geolocationMarkerInfoWindow={attach:function(context,drupalSettings){Drupal.geolocation.executeFeatureOnAllMaps("marker_infowindow",function(map,featureSettings){map.addMarkerAddedCallback(function(currentMarker){if(typeof currentMarker.locationWrapper==="undefined")return;var content=currentMarker.locationWrapper.find(".location-content");
6if(content.length<1)return;content=content.html();var markerInfoWindow={content:content.toString(),disableAutoPan:featureSettings.disableAutoPan};if(featureSettings.maxWidth>0)markerInfoWindow.maxWidth=featureSettings.maxWidth;var currentInfoWindow=new google.maps.InfoWindow(markerInfoWindow);currentMarker.addListener("click",function(){if(featureSettings.infoWindowSolitary){if(typeof map.infoWindow!=="undefined")map.infoWindow.close();map.infoWindow=currentInfoWindow;}currentInfoWindow.open(map.googleMap,currentMarker);});if(featureSettings.infoAutoDisplay)if(map.googleMap.get("tilesloading"))google.maps.event.addListenerOnce(map.googleMap,"tilesloaded",function(){google.maps.event.trigger(currentMarker,"click");});else jQuery.each(map.mapMarkers,function(index,currentMarker){google.maps.event.trigger(currentMarker,"click");});});return true;},drupalSettings);},detach:function(context,drupalSettings){}};})(Drupal);; 7(function(Drupal){Drupal.AjaxCommands.prototype.gtagEvent=function(ajax,response){gtag('event',response.event_name,response.data);};})(Drupal);; 8(function(Drupal,once){'use strict';Drupal.behaviors.sfpl2019ArchiveLinkRewrite={attach(context){const archiveLinkSelector=['a[href^="/pdf/"]','a[href^="/sites/default/files/pdf/"]','a[href^="/archive/"]','a[href^="/sites/default/files/archive/"]',`a[href^="${window.location.origin}/pdf/"]`,`a[href^="${window.location.origin}/sites/default/files/pdf/"]`,`a[href^="${window.location.origin}/archive/"]`,`a[href^="${window.location.origin}/sites/default/files/archive/"]`].join(', ');once('sfpl2019-archive-link-rewrite',archiveLinkSelector,context).forEach((link)=>{const href=link.getAttribute('href');if(!href)return;let url;try{url=new URL(link.href);}catch(e){return;}if(url.origin!==window.location.origin)return;let newPath=null;let shouldLabel=false;if(url.pathname.startsWith('/pdf/')){newPath=url.pathname.replace(/^\/pdf\//,'/archive/');shouldLabel=true;}else if(url.pathname.startsWith('/sites/default/files/pdf/')){newPath=url.pathname.replace(/^\/sites\/default\/files\/pdf\//,'/archive/');shouldLabel=true;}else{if(url.pathname.startsWith('/archive/')||url.pathname.startsWith('/sites/default/files/archive/'))shouldLabel=true;}if(!shouldLabel)return;if(newPath){url.pathname=newPath;link.setAttribute('href',url.toString());}const trimmedText=link.textContent.trim();if(!trimmedText.endsWith('(Archive)'))link.appendChild(document.createTextNode(' (Archive)'));});}};})(Drupal,once);; 9(function(Drupal){'use strict';var createPopupRolePatched=false;var createWithdrawRolePatched=false;function setDialogRole(){var popup=document.getElementById('sliding-popup');if(popup&&popup.getAttribute('role')==='alertdialog')popup.setAttribute('role','dialog');}Drupal.behaviors.sfplEuCookieComplianceRoleDialog={attach:function(){setDialogRole();if(!Drupal.eu_cookie_compliance)return;if(typeof Drupal.eu_cookie_compliance.createPopup==='function'&&!createPopupRolePatched){var originalCreatePopup=Drupal.eu_cookie_compliance.createPopup;Drupal.eu_cookie_compliance.createPopup=function(){var result=originalCreatePopup.apply(this,arguments);setDialogRole();return result;};createPopupRolePatched=true;}if(typeof Drupal.eu_cookie_compliance.createWithdrawBanner==='function'&&!createWithdrawRolePatched){var originalCreateWithdrawBanner=Drupal.eu_cookie_compliance.createWithdrawBanner;Drupal.eu_cookie_compliance.createWithdrawBanner=function(){var result=originalCreateWithdrawBanner.apply(this,arguments);setDialogRole();return result;};createWithdrawRolePatched=true;}}};})(Drupal);; 10window.NodeList&&!NodeList.prototype.forEach&&(NodeList.prototype.forEach=function(o,t){t=t||window;for(var i=0;i<this.length;i++)o.call(t,this[i],i,this)}); 11; 12/* https://github.com/madmurphy/cookies.js (GPL3) */ 13!function(){function e(e,o,t,n,r,s,i){var c="";if(t)switch(t.constructor){case Number:c=t===1/0?"; expires=Fri, 31 Dec 9999 23:59:59 GMT":"; max-age="+t;break;case String:c="; expires="+t;break;case Date:c="; expires="+t.toUTCString()}return encodeURIComponent(e)+"="+encodeURIComponent(o)+c+(r?"; domain="+r:"")+(n?"; path="+n:"")+(s?"; secure":"")+(i&&"no_restriction"!==i.toString().toLowerCase()?"lax"===i.toString().toLowerCase()||1===Math.ceil(i)||!0===i?"; samesite=lax":"none"===i.toString().toLowerCase()||i<0?"; samesite=none":"; samesite=strict":"")}var o=/[\-\.\+\*]/g,t=/^(?:expires|max\-age|path|domain|secure|samesite|httponly)$/i;window.docCookies={getItem:function(e){return e&&decodeURIComponent(document.cookie.replace(new RegExp("(?:(?:^|.*;)\\s*"+encodeURIComponent(e).replace(o,"\\$&")+"\\s*\\=\\s*([^;]*).*$)|^.*$"),"$1"))||null},setItem:function(o,n,r,s,i,c,a){return!(!o||t.test(o))&&(document.cookie=e(o,n,r,s,i,c,a),!0)},removeItem:function(o,t,n,r,s){return!!this.hasItem(o)&&(document.cookie=e(o,"","Thu, 01 Jan 1970 00:00:00 GMT",t,n,r,s
13),!0)},hasItem:function(e){return!(!e||t.test(e))&&new RegExp("(?:^|;\\s*)"+encodeURIComponent(e).replace(o,"\\$&")+"\\s*\\=").test(document.cookie)},keys:function(){for(var e=document.cookie.replace(/((?:^|\s*;)[^\=]+)(?=;|$)|^\s*|\s*(?:\=[^;]*)?(?:\1|$)/g,"").split(/\s*(?:\=[^;]*)?;\s*/),o=e.length,t=0;t<o;t++)e[t]=decodeURIComponent(e[t]);return e},clear:function(e,o,t,n){for(var r=this.keys(),s=r.length,i=0;i<s;i++)this.removeItem(r[i],e,o,t,n)}}}(),"undefined"!=typeof module&&void 0!==module.exports&&(module.exports=docCookies); 14; 15// http://codepen.io/Merri/pen/Dsuim 16/** 17 * TextOverflowClamp.js 18 * 19 * Updated 2013-05-09 to remove jQuery dependancy. 20 * But be careful with webfonts! 21 */ 22 23// bind function support for older browsers without it 24// https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Function/bind 25if (!Function.prototype.bind) { 26 Function.prototype.bind = function (oThis) { 27 if (typeof this !== 'function') { 28 // closest thing possible to the ECMAScript 5 internal IsCallable function 29 throw new TypeError('Function.prototype.bind - what is trying to be bound is not callable'); 30 } 31 32 var aArgs = Array.prototype.slice.call(arguments, 1), 33 fToBind = this, 34 fNOP = function () {}, 35 fBound = function () { 36 return fToBind.apply(this instanceof fNOP && oThis ? this : oThis, aArgs.concat(Array.prototype.slice.call(arguments))); 37 }; 38 39 fNOP.prototype = this.prototype; 40 fBound.prototype = new fNOP(); 41 42 return fBound; 43 }; 44} 45 46// the actual meat is here 47(function (w, d) { 48 var clamp, 49 measure, 50 text, 51 lineWidth, 52 lineStart, 53 lineCount, 54 wordStart, 55 line, 56 lineText, 57 wasNewLine, 58 ce = d.createElement.bind(d), 59 ctn = d.createTextNode.bind(d); 60 61 // measurement element is made a child of the clamped element to get it's style 62 measure = ce('span'); 63 64 (function (s) { 65 s.position = 'absolute'; // prevent page reflow 66 s.whiteSpace = 'pre'; // cross-browser width results 67 s.visibility = 'hidden'; // prevent drawing 68 })(measure.style); 69 70 clamp = function (el, lineClamp) { 71 // make sure the element belongs to the document 72 if (!el.ownerDocument || !el.ownerDocument === d) return; 73 // reset to safe starting values 74 lineStart = wordStart = 0; 75 lineCount = 1; 76 wasNewLine = false; 77 lineWidth = el.clientWidth; 78 // get all the text, remove any line changes 79 text = (el.textContent || el.innerText).replace(/\n/g, ' '); 80 // remove all content 81 while (el.firstChild !== null) el.removeChild(el.firstChild); 82 // add measurement element within so it inherits styles 83 el.appendChild(measure); 84 // http://ejohn.org/blog/search-and-dont-replace/ 85 text.replace(/ /g, function (m, pos) { 86 // ignore any further processing if we have total lines 87 if (lineCount === lineClamp) return; 88 // create a text node and place it in the measurement element 89 measure.appendChild(ctn(text.substr(lineStart, pos - lineStart))); 90 // have we exceeded allowed line width? 91 if (lineWidth < measure.clientWidth) { 92 if (wasNewLine) { 93 // we have a long word so it gets a line of it's own 94 lineText = text.substr(lineStart, pos + 1 - lineStart); 95 // next line start position 96 lineStart = pos + 1; 97 } 98 else { 99 // grab the text until this word 100 lineText = text.substr(lineStart, wordStart - lineStart); 101 // next line start position 102 lineStart = wordStart; 103 } 104 // create a line element 105 line = ce('span'); 106 // add text to the line element 107 line.appendChild(ctn(lineText)); 108 // add the line element to the container 109 el.appendChild(line); 110 // yes, we created a new line 111 wasNewLine = true; 112 lineCount++; 113 } 114 else { 115 // did not create a new line 116 wasNewLine = false; 117 } 118 // remember last word start position 119 wordStart = pos + 1; 120 // clear measurement element 121 measure.removeChild(measure.firstChild); 122 }); 123 // remove the measurement element from the container 124 el.removeChild(measure); 125 // create the last line element 126 line = ce('span'); 127 // give styles required for text-overflow to kick in 128 (function (s) { 129 s.display = 'inline-block'; 130 s.overflow = 'hidden'; 131 s.textOverflow = 'ellipsis'; 132 s.whiteSpace = 'nowrap'; 133 s.width = '100%'; 134 })(line.style); 135 // add all remaining text to the line element 136 line.appendChild(ctn(text.substr(lineStart))); 137 // add the line element to the container 138 el.appendChild(line); 139 }; 140 w.clamp = clamp; 141})(window, document); 142; 143"use strict";function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread();}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var i={}.toString.call(e).slice(8,-1);return "Object"===i&&e.constructor&&(i=e.constructor.name),"Map"===i||"Set"===i?Array.from(e):"Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?_arrayLikeToArray(e,t):void 0;}}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e);}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e);}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,n=Array(t);i<t;i++)n[i]=e[i];return n;}!function(e){e.behaviors.accordionContainer={attach:function(e){function t(e,t){var i=e.nextElementSibling,n=e.parentNode;t?(n.classList.add("active"),e.classList.add("active"),e.setAttribute("aria-expanded",!0),i.style.maxHeight=i.scrollHeight+"px",i.querySelectorAll("a, iframe").forEach(function(e){e.setAttribute("tabindex","0");}
143)):(n.classList.remove("active"),e.classList.remove("active"),e.setAttribute("aria-expanded",!1),i.style.maxHeight="",i.querySelectorAll("a, iframe").forEach(function(e){e.setAttribute("tabindex","-1");}));}var i=e.querySelectorAll(".accordion-button");if(i)for(var n=function(n){var a=i[n].nextElementSibling;if(a){a.setAttribute("id","accordion-".concat(n));var o=a.querySelectorAll("a, iframe");i[n].addEventListener("focus",function(){i[n].classList.add("focused");}),i[n].addEventListener("blur",function(){i[n].classList.remove("focused");});var s=!1;i[n].addEventListener("keyup",function(a){if("Enter"===a.key){if(s);else e.querySelectorAll(".accordion-button.active").forEach(function(e){t(e,!1);}),t(i[n],!0),s=!0;a.preventDefault();}}),o.forEach(function(e){e.setAttribute("tabindex","-1");});}i[n].setAttribute("aria-controls","accordion-".concat(n)),i[n].setAttribute("role","button"),i[n].setAttribute("tabindex",0),i[n].addEventListener("click",function(){try{if(this.classList.contains("active"))t(this,!1),isAccordionOpen=!1;else e.querySelectorAll(".accordion-button.active").forEach(function(e){t(e,!1);}),t(this,!0),isAccordionOpen=!0;}catch(e){"isAccordionOpen is not defined"!=e.message&&console.log(e.message);}});},a=0;a<i.length;a++)n(a);}};}(Drupal),function(e,t){t.behaviors.sfplToggle={attach:function(t){e(".special-program-locations-expand",t).click(function(t){t.preventDefault(),-1!==e(this).text().indexOf("all")?e(this).text("See Less Locations"):e(this).text("See All Locations"),e(".special-program-locations--all").toggleClass("active");});}};}(jQuery,Drupal),function(e){e.behaviors.closeAlert={attach:function(e){var t=e.querySelectorAll(".sitewide-banner .alert");if(t){t.forEach(function(e){e.addEventListener("click",function(t){n(e,t);}),e.classList.add("alert--visible");});var i=docCookies.getItem("sfpl_closed_alerts");i&&(i=i.slice(0,-1).split(",")).forEach(function(e){var t=document.getElementById(e);t&&(t.classList.remove("alert--visible"),t.classList.add("alert--hidden"));}),document.body.classList.add("alerts-loaded");var n=function(e,t){if(t.target.closest(".alert__close")){var i="";docCookies.getItem("sfpl_closed_alerts")&&(i=docCookies.getItem("sfpl_closed_alerts"));var n=e.id+","+i;docCookies.setItem("sfpl_closed_alerts",n,31536e3),e.classList.remove("alert--visible"),e.classList.add("alert--hidden");}};}}};}(Drupal),function(e){e.behaviors.goToTop={attach:function(e){e.querySelectorAll(".goto__top").forEach(function(e){e.addEventListener("click",function(e){document.body.scrollTop=0,document.documentElement.scrollTop=0;});});}},e.behaviors.goToSearch={attach:function(e){var t=document.querySelector(".block--sfpl-search"),i=e.querySelectorAll(".goto__search");if(t&&i.length){var n=t.querySelectorAll("input"),a=t.getBoundingClientRect().top||100;i.forEach(function(e){e.addEventListener("click",function(e){document.body.scrollTop=a,document.documentElement.scrollTop=a,n.length&&n[0].focus();});});}}};}(Drupal),function(e,t){t.behaviors.sfplUpcomingEventsCarousel={attach:function(e){if(e===document){var t=e.querySelectorAll(".upcoming-events-carousel .view-content, .upcoming-kids-events-carousel .view-content, .upcoming-teens-events-carousel .view-content");t&&t.forEach(function(e){new Glide(e,{type:"slider",bound:!0,gap:32,perView:6,perTouch:!1,swipeThreshold:10,breakpoints:{480:{perView:1,peek:60},768:{perView:2,peek:48},1024:{perView:4},1440:{perView:6}}}).mount();});}}},t.behaviors.sfplTilesCarousel={attach:function(t){if(t===document){var i=t.querySelectorAll(".tiles-container--carousel .tiles-container__tiles");if(i){var n=document.querySelectorAll(".page--sidebar").length,a={480:{peek:60,perView:1},768:{peek:48,perView:2},1280:{peek:48,perView:3}},o=e.extend({},a,{1280:{peek:48,perView:4},1440:{perView:6}});i.forEach(function(e){var t=new Glide(e,{type:"slider",bound:!0,gap:16,perView:n?4:6,perTouch:!1,swipeThreshold:10,breakpoints:n?a:o});t.on(["mount.after","run"],function(){t._c.Sizes.length<=t.settings.perView&&e.classList.add("js-controls-hide");}),t.mount();});}}}},t.behaviors.sfplBookListCarousel={attach:function(e){var t=e.querySelectorAll(".page--no-sidebar .book-list");t&&t.forEach(function(e){new Glide(e,{type:"slider",bound:!0,gap:16,perView:8,perTouch:!1,swipeThreshold:10,breakpoints:{320:{perView:1,peek:48},400:{perView:1,peek:48},480:{perView:2,peek:60},680:{perView:3,peek:48},1080:{perView:4},1440:{perView:6}}}).mount();});}},t.behaviors.sfplBookListCarouselWithSidebar={attach:function(e){var t=e.querySelectorAll(".page--sidebar .book-list");t&&t.forEach(function(e){new Glide(e,{type:"slider",bound:!0,gap:16,perView:6,perTouch:!1,swipeThreshold:10,breakpoints:{320:{perView:1,peek:48},480:{perView:2,peek:48},680:{perView:3,peek:48},960:{perView:4,peek:48},1080:{perView:3},1440:{perView:4}}}).mount();});}},t.behaviors.sfplHighlightsCarousel={attach:function(e){if(e===document){var t=e.querySelectorAll(".entityqueue-embed__highlights--carousel");t&&t.forEach(function(e){new Glide(e,{type:"slider",bound:!0,gap:32,perView:3,perTouch:!1,swipeThreshold:10,breakpoints:{480:{peek:48,perView:1},768:{peek:48,perView:1},960:{peek:48,perView:2}}}).mount();});}}}
143,t.behaviors.sfplGalleryCarousel={attach:function(e){var t=e.querySelector(".gallery--carousel");if(t){var i=new Glide(t,{type:"slider",bound:!0,perView:1,perTouch:!1,swipeThreshold:10});i.on("build.after",o.bind(t)),i.on("run.after",o.bind(t));var n=e.querySelectorAll(".gallery__thumbnail");if(n&&n.length){n.forEach(function(e,t){e.addEventListener("click",s(t));});var a=t.querySelector(".gallery__close");a&&a.addEventListener("click",s());}}function o(){var e=this.querySelector(".glide__slide--active .media--type-image"),t=e?e.offsetHeight+30:0,i=this.querySelector(".glide__track");t!==(i?i.offsetHeight:0)&&(i.style.height="".concat(t,"px"));}function s(e){return function(n){if("BUTTON"===n.target.nodeName)return !1;var a=t.classList.contains("is-active"),o=t.classList.contains("has-mounted");a?(t.classList.remove("is-active"),document.body.classList.remove("not-scrollable")):(t.classList.add("is-active"),document.body.classList.add("not-scrollable"),o||(i.mount(),t.classList.add("has-mounted")),e=e||0,i.update({startAt:e}));};}}};}(jQuery,Drupal),function(e,t){t.behaviors.sfplChatWidget={attach:function(e){var t=e.querySelector(".js-chat-widget-toggle"),i=e.querySelector(".js-chat-widget-close"),n=e.querySelector(".chat-widget");if(n&&t){t.addEventListener("click",function(e){a(n,e);}),i.addEventListener("click",function(e){a(n,e);}),t.addEventListener("keydown",function(e){"Enter"!==e.key&&" "!==e.key||a(n,e);}),i.addEventListener("keydown",function(e){"Enter"!==e.key&&" "!==e.key||a(n,e);}),document.addEventListener("keydown",function(e){if("Escape"===e.key){var t=document.querySelector(".chat-widget.is-active");t&&(t.classList.remove("is-active"),t.setAttribute("aria-expanded","false"),document.querySelector(".js-chat-widget-toggle").focus());}});var a=function(e,t){t.preventDefault(),e.classList.contains("is-active")?e.classList.remove("is-active"):e.classList.add("is-active");};}}};}(jQuery,Drupal),function(e){e.behaviors.clampText={attach:function(e){window.onload=function(){var t=_toConsumableArray(e.querySelectorAll(".event__subtitle > .field--name-field-event-subtitle"));t&&t.forEach(function(e){clamp(e,3);});};}};}(Drupal,jQuery),function(e,t,i){t.behaviors.eventTracking={clickEvents:{Chat:".js-chat-widget-toggle"},attach:function(e){if(i.dataLayer){var t=this.clickEvents;for(var n in t)t.hasOwnProperty(n)&&this.attachClickEvent(n,t[n],e);}},attachClickEvent:function(t,n,a){e(n,a).on("click.eventTracking",function(e){i.dataLayer.push({event:t});});}};}(jQuery,Drupal,window),function(e){e.behaviors.toggleStylesOnSubmit={attach:function(e){e.querySelectorAll(".required").forEach(function(e){e.addEventListener("blur",function(t){e.classList.add("touched");});});}};}(Drupal),function(e){e.behaviors.sfplHeroMobileMenu={attach:function(t){var i=t.querySelectorAll(".hero__nav-toggle");if(i){i.forEach(function(e){e.addEventListener("click",function(t){n(e,t);}),e.classList.add("js-menu-item--hide-dropdown"),e.setAttribute("aria-expanded","false"),e.setAttribute("aria-haspopup","true");});var n=function(e,t){t.preventDefault(),e.classList.contains("js-menu-item--show-dropdown")?(e.classList.add("js-menu-item--hide-dropdown"),e.classList.remove("js-menu-item--show-dropdown"),e.setAttribute("aria-expanded","false")):(e.classList.add("js-menu-item--show-dropdown"),e.classList.remove("js-menu-item--hide-dropdown"),e.setAttribute("aria-expanded","true"));},a=e.debounce(function(){var e=window.innerWidth||t.documentElement.clientWidth;i.forEach(function(t){e>768&&(t.classList.add("js-menu-item--show-dropdown"),t.classList.remove("js-menu-item--hide-dropdown")),"none"==window.getComputedStyle(t).getPropertyValue("display").trim()?i.forEach(function(e){e.setAttribute("aria-expanded","false");}):i.forEach(function(e){e.setAttribute("aria-expanded","true");});});});a(),window.addEventListener("resize",a,!0);}}},e.behaviors.sfplHeroStickyMenu={attach:function(t){var i=t.querySelector(".hero__nav");i&&setTimeout(function(){i._originalOffsetTop=i.offsetTop;var t,n,a=e.debounce((t=i,n=function(e){i.classList.toggle("is-stuck",e);},function(){"function"==typeof n&&n(t.offsetTop!==t._originalOffsetTop);}),10);window.addEventListener("scroll",a);},100);}};}(Drupal),function(e,t){e.behaviors.sfplLocations={attach:function(e){var i,n,a,o=t(".js-location__distance",e);o.each(function(){i=t(this),(n=i.closest(".views-row").find(".views-field-geolocation-proximity")).length&&"0.0m."!==(a=t.trim(n.text()))&&(i.html(a),i.removeClass("js-hide"));}),t(document).one("sfplViews.distance","toggle-distance-fields",function(e,t){t?o.removeClass("js-hide"):o.addClass("js-hide");});}},e.behaviors.closeModalonOverlayClick={attach:function(e){t("body").on("click",".ui-widget-overlay",function(){t("#drupal-modal").dialog("close");});}},e.behaviors.refreshHoursStatus={attach:function(e){var t=document.querySelectorAll(".office-hours"),i=function(e){e.forEach(function(e){var t=(new Date()).toLocaleStr
143ing("en-US",{timeZone:"America/Los_Angeles"}),i=new Date(t),n=3600*i.getHours()+60*i.getMinutes()+i.getSeconds(),a=e.closest("header").parentElement,o=a.querySelector(".office-hours .office-hours__item-slots[data-open]"),s=a.querySelector(".office-hours .office-hours__item-slots[data-closed]");if(o&&s){var r=a.querySelector(".office-hours .office-hours__item-slots[data-open]").dataset.open.split(","),c=a.querySelector(".office-hours .office-hours__item-slots[data-closed]").dataset.closed.split(",");r.some(function(e,t){return n>=e&&n<c[t];})?(e.classList.remove("office-hours-status--closed"),e.classList.add("office-hours-status--open"),e.textContent="Open Now"):(e.classList.remove("office-hours-status--open"),e.classList.add("office-hours-status--closed"),e.textContent="Closed Now"),e.classList.remove("office-hours-status--undetermined");}});};if(t.length>0){var n=document.querySelectorAll(".office-hours-status");n.length>0&&(i(n),setInterval(function(){i(n);},3e4));}}};}(Drupal,jQuery),function(e,t){t.behaviors.sfplMenuDropdowns={attach:function(e){if(e===document){var t=e.querySelectorAll(".header__menu .menu-item--expanded");if(t&&t.length){var i=function(e,i){i.preventDefault();var n=e.classList.contains("js-menu-item--show-dropdown");t.forEach(function(e,t){var i=e.querySelectorAll(".menu__title")[0];i.classList.add("js-menu-item--hide-dropdown"),i.classList.remove("js-menu-item--show-dropdown"),i.setAttribute("aria-expanded","false");}),n||(e.classList.remove("js-menu-item--hide-dropdown"),e.classList.add("js-menu-item--show-dropdown"),e.setAttribute("aria-expanded","true"));};t.forEach(function(e,t){var n,a;(a=(n=e).querySelectorAll(".menu__title")[0]).classList.add("js-menu-item--hide-dropdown"),a.setAttribute("aria-expanded","false"),a.setAttribute("aria-haspopup","true"),n.addEventListener("click",function(e){i(a,e);}),n.querySelectorAll(".menu-level-1, .menu__sidebar a").forEach(function(e,t){e.addEventListener("click",function(e){e.stopPropagation();});});});}}}},t.behaviors.sfplMenuMobile={attach:function(e){var i=e.querySelectorAll(".layout-container")[0],n=document.getElementById("menu-toggle"),a=document.getElementById("block-sfpl-main-menu")||document.getElementById("block-kidsmainmenu")||document.getElementById("block-teensmainmenu");if(n&&a&&i){var o=t.debounce(function(){(window.innerWidth||e.documentElement.clientWidth)>768&&(i.classList.add("mobile-menu-inactive"),i.classList.remove("mobile-menu-active")),"none"==window.getComputedStyle(a).getPropertyValue("display").trim()?n.setAttribute("aria-expanded","false"):n.setAttribute("aria-expanded","true");},500);i.classList.add("mobile-menu-inactive"),o(),n.addEventListener("click",function(e){!function(e){e.preventDefault(),i.classList.contains("mobile-menu-active")?(i.classList.add("mobile-menu-inactive"),i.classList.remove("mobile-menu-active")):(i.classList.add("mobile-menu-active"),i.classList.remove("mobile-menu-inactive")),o();}(e);}),window.addEventListener("resize",o,!0);}}},t.behaviors.sfplMenuMobileSearch={attach:function(e){var t=e.getElementsByClassName("search-toggle")[0],i=e.getElementsByClassName("block--sfpl-search")[0];if(t&&i)t.addEventListener("click",function(e){!function(e){e.preventDefault(),i.classList.contains("js--show-search")?(t.setAttribute("aria-expanded","false"),i.classList.remove("js--show-search")):(t.setAttribute("aria-expanded","true"),i.classList.add("js--show-search"));}(e);}),t.setAttribute("aria-controls",i.id);}},t.behaviors.sfplMenuChildren={attach:function(e){var t=e.querySelectorAll(".preheader__menu .menu-item--expanded > a, .main__sidebar .menu-item--expanded > a");if(!(t.length<1)){t.forEach(function(e,t){e.parentNode.classList.contains("menu-item--active-trail")?(e.classList.add("js-menu-item--show-dropdown"),e.setAttribute("aria-expanded","true")):(e.classList.add("js-menu-item--hide-dropdown"),e.setAttribute("aria-expanded","false")),e.setAttribute("aria-haspopup","true"),e.addEventListener("click",function(t){i(e,t);});});var i=function(e,t){t.clientX<e.getBoundingClientRect().right-62||(t.preventDefault(),e.classList.contains("js-menu-item--show-dropdown")?(e.classList.add("js-menu-item--hide-dropdown"),e.classList.remove("js-menu-item--show-dropdown"),e.setAttribute("aria-expanded","fal
143se")):e.classList.contains("js-menu-item--hide-dropdown")&&(e.classList.add("js-menu-item--show-dropdown"),e.classList.remove("js-menu-item--hide-dropdown"),e.setAttribute("aria-expanded","true")));};}}},t.behaviors.sfplMenuAccessibility={attach:function(e){var t=e.querySelectorAll(".accessibility__toggle"),i=e.querySelectorAll(".accessibility__dropdown");if(!(t.length<1||i.length<1)){t[0].classList.add("js-menu-item--hide-dropdown"),t[0].setAttribute("aria-haspopup","true"),t[0].setAttribute("aria-expanded","false"),t[0].addEventListener("click",function(e){n(this,e);});var n=function(e,t){t.preventDefault(),e.classList.contains("js-menu-item--show-dropdown")?(e.classList.add("js-menu-item--hide-dropdown"),e.classList.remove("js-menu-item--show-dropdown"),e.setAttribute("aria-expanded","false")):e.classList.contains("js-menu-item--hide-dropdown")&&(e.classList.add("js-menu-item--show-dropdown"),e.classList.remove("js-menu-item--hide-dropdown"),e.setAttribute("aria-expanded","true"));};}}},t.behaviors.sfplAnchorLinks={attach:function(t){function i(e){return e.replace(/^\//,"").replace(/(index|default).[a-zA-Z]{3,4}$/,"").replace(/\/$/,"");}var n=i(location.pathname);e('a[href*="#"]',t).each(function(){var t=i(this.pathname)||n,a=this.hash;if(a&&e("#"+e.escapeSelector(a.replace(/#/,""))).length&&n===t&&(location.hostname===this.hostname||!this.hostname)&&this.hash.replace(/#/,"")){e(a);var o=this.hash;if(!o||"#block-sfpl-main-menu"==o||"#accessibility__dropdown"==o)return;e(this).click(function(t){t.preventDefault();var i=decodeURIComponent(o);e("html, body").animate({scrollTop:e(i).offset().top},1e3,function(){if(location.hash=i,e(i).focus(),e(i).is(":focus"))return !1;e(i).attr("tabindex","-1"),e(i).focus();});});}});}},t.behaviors.sfplMenuCloseOpenedMenus={attach:function(e){e===document&&setTimeout(function(){var t=e.querySelectorAll(".header__menu .menu-item--expanded"),i=e.querySelectorAll("#bibliocommons_user_nav, .accessibility__toggle");i&&i.length&&i.forEach(function(e,i){e.addEventListener("click",function(e){t.forEach(function(e,t){var i=e.querySelectorAll(".menu__title")[0];i.classList.add("js-menu-item--hide-dropdown"),i.classList.remove("js-menu-item--show-dropdown"),i.setAttribute("aria-expanded","false");});});}),t.forEach(function(e,t){e.addEventListener("click",function(e){i.forEach(function(e,t){e.classList.add("js-menu-item--hide-dropdown"),e.classList.remove("js-menu-item--show-dropdown"),e.setAttribute("aria-expanded","false");});});});},3e3);}},t.behaviors.sfplLanguageLinks={attach:function(e){var t=e.querySelector(".language-links");if(t){var i=t.querySelectorAll(".language-link");i&&i.forEach(function(e){e.hasAttribute("hreflang")&&e.setAttribute("lang",e.hreflang);});}}};}(jQuery,Drupal),function(e){e.behaviors.sfplViewsFilters={attach:function(e){var t=window.innerWidth||e.documentElement.clientWidth,i=e.querySelectorAll(".main__sidebar .views-exposed-form");if(i){i.forEach(function(e){e.addEventListener("click",function(t){n(e,t);}),e.classList.add("js-block--expandable"),t>960?(e.classList.add("js-block--expanded"),e.setAttribute("aria-expanded","true")):(e.classList.add("js-block--collapsed"),e.setAttribute("aria-expanded","false"));});var n=function(e,t){t.target.closest(".block__title")&&(e.classList.contains("js-block--expanded")?(e.classList.remove("js-block--expanded"),e.classList.add("js-block--collapsed"),e.setAttribute("aria-expanded","false")):(e.classList.add("js-block--expanded"),e.classList.remove("js-block--collapsed"),e.setAttribute("aria-expanded","true")));};}}};}(Drupal);;
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.