1var module_190645192841=void(()=>{"use strict";const __webpack_require__={dn:x=>{(Object.getOwnPropertyDescriptor(x,"name")||{}).writable||Object.defineProperty(x,"name",{value:"default",configurable:!0})}},js_ariaUpdate=(a,t,e)=>a.setAttribute("aria-"+t,e);class EventBinder{listenerMap=null;constructor(){this.listenerMap=new Map}on(e,t,n,s=!1){e="string"==typeof e?[e]:e;let i=this.listenerMap.get(t);i||(i={},this.listenerMap.set(t,i)),e.forEach(e=>{i[e]=i[e]||[],-1===i[e].indexOf(n)&&i[e].push(n),t.addEventListener(e,n,s)})}off(e,n,s,t=!1){e="string"==typeof e?[e]:e;let i=t,r=("boolean"==typeof s&&(i=s),this.listenerMap.get(n)||{});e.forEach(t=>{"function"==typeof s?n.removeEventListener(t,s,i):(r[t]||[]).forEach(e=>{n.removeEventListener(t,e,i)})})}unbindAll(){this.listenerMap.forEach((e,t)=>{e=Object.keys(e),this.off(e,t,!0),this.off(e,t,!1)})}destroy(){this.unbindAll(),delete this.listenerMap}}let key={TAB:"Tab",ENTER:"Enter",ESCAPE:"Escape",SPACE:" ",END:"End",HOME:"Home",LEFT:"ArrowLeft",UP:"ArrowUp",RIGHT:"ArrowRight",DOWN:"ArrowDown"};const throttle=(e,a=100)=>{let n=Date.now();return(...t)=>{n+a-Date.now()<0&&(e.apply(void 0,t),n=Date.now())}};__webpack_require__.dn(throttle);let getElementByIdOrSelector=(e,{container:t}={})=>((e,{container:t}={})=>(e=document.getElementById(e),t instanceof Element&&!t.contains(e)?null:e))(e,{container:t})||((e,{container:t}={})=>(t instanceof Element?t:document.documentElement).querySelector(e))(e,{container:t});const js_getElement=(e,{container:t,strict:n=!1}={})=>{t=t instanceof Element?t:document.documentElement;let l=null;if(e instanceof Element?l=t.contains(e)?e:null:"string"==typeof e&&(l=getElementByIdOrSelector(e,{container:t})),n&&!l)throw new Error("[getElement]: No element found.",{elementArgument:e,container:t});return l};class LazySrcLoader{static get LAZY_SRC_ATTRIBUTE(){return"data-cl-lazy-src"}get elements(){return LazySrcLoader.getElements(this.container)}constructor(e=document.documentElement,t={}){this.container=e,this.settings=t,this.hasElements()&&(("function"==typeof t.eager?t.eager():Boolean(t.eager))?this.loadElements():this.addTriggers())}static getElements(e){return e.querySelectorAll(`[${LazySrcLoader.LAZY_SRC_ATTRIBUTE}]`)}hasElements(){return 0<this.elements.length}addTriggers(e){this.toggleTriggers(e,!0)}addTrigger({element:e,eventType:t}){this.toggleTrigger({element:e,eventType:t},!0)}toggleTriggers(e=this.settings?.triggers,r=!1){e&&(Array.isArray(e)?e.forEach(e=>{this.toggleTrigger(e,r)}):e.elements.forEach(t=>{e.eventTypes.forEach(e=>{this.toggleTrigger({element:t,eventType:e},r)})}))}toggleTrigger({element:e,eventType:t},r){r?e.addEventListener(t,this.loadElements,{once:!0}):e.removeEventListener(t,this.loadElements)}loadElements=()=>{LazySrcLoader.loadElements(this.elements)};static loadElements(e=document.documentElement){(e instanceof NodeList||Array.isArray(e)?e:LazySrcLoader.getElements(e)).forEach(LazySrcLoader.loadElement)}static loadElement(e){var t=e.getAttribute(LazySrcLoader.LAZY_SRC_ATTRIBUTE);e.setAttribute("src",t),e.removeAttribute(LazySrcLoader.LAZY_SRC_ATTRIBUTE)}removeTriggers(e){this.toggleTriggers(e,!1)}destroy(){this.removeTriggers(),this.container=null,this.settings=null}}const lazySrcLoader=LazySrcLoader;let classes_ACTIVE="-active",classes_OVERFLOW_LEFT="-overflow-left",classes_OVERFLOW_RIGHT="-overflow-right",classes_OVERFLOW_ABOVE="-overflow-above",classes_OVERFLOW_BELOW="-overflow-below";const js_tabs=class{constructor(t){this.binder=new EventBinder,this.element=js_getElement(t,{strict:!0}),this.tabControl=this.element.querySelector(".cl-tab-control"),this.tabItems=this.element.querySelectorAll(".cl-tab-item"),this.tabList=this.element.querySelector("[role=tablist]"),this.tabPanels=this.element.querySelectorAll("[role=tabpanel]"),this.tabs=this.element.querySelectorAll("[role=tab]"),this.settings={isVertical:"vertical"===this.element.dataset.clTabsOrientation},this.isTabletQueryUp=window.matchMedia("(width >= 600px)")}mount(){try{this.setupTabs(),this.bindHandlers(),this.tabListOverflow(),this.settings.isVertical&&this.handleIsVertical()}catch(t){console.error("[cl-tabs]: "+t)}}
1setupTabs(){this.tabs.forEach(t=>{var e,s="tab-"+(e=t.getAttribute("aria-controls"));(e=this.element.querySelector("#"+e))&&(t.setAttribute("id",s),t.setAttribute("tabindex",-1),js_ariaUpdate(t,"selected","false"),t.parentNode.setAttribute("role","presentation"),js_ariaUpdate(e,"hidden","true"),js_ariaUpdate(e,"labelledby",s))});var t=this.getTabIndexByDeepLink();this.goToTab(t||0)}getTabIndexByDeepLink(){if(!this.element.dataset.clTabsDeepLinkKey)return null;let e=new URLSearchParams(window.location.search).get(this.element.dataset.clTabsDeepLinkKey);if(!e)return null;e=e.toLowerCase();var t=Array.from(this.tabs).findIndex(t=>e.includes(String(t.dataset.clTabsDeepLinkValue).toLowerCase()));return 0<=t?t:null}bindHandlers(){let s=[key.HOME,key.END,key.UP,key.DOWN,key.LEFT,key.RIGHT];this.tabs.forEach(t=>{this.binder.on("click",t,t=>{t.preventDefault(),t.target.parentNode.classList.contains(classes_ACTIVE)||this.goToTab(t)}),this.binder.on("keydown",t,t=>{var e;s.includes(t.key)&&(t.key===key.HOME?(t.preventDefault(),this.goToTab(0,!0)):t.key===key.END?(t.preventDefault(),this.goToTab(this.tabs.length-1,!0)):(e=this.determineNextTab(t,this.tabs),("vertical"!==this.tabList.getAttribute("aria-orientation")||t.key!==key.UP&&t.key!==key.DOWN)&&t.key!==key.LEFT&&t.key!==key.RIGHT||(t.preventDefault(),this.goToTab(e,!0))))})}),this.binder.on("resize",window,()=>throttle(this.tabListOverflow())),this.binder.on("scroll",this.tabList,()=>throttle(this.tabListOverflow())),this.settings.isVertical&&this.binder.on("resize",window,()=>throttle(this.handleIsVertical())),this.setupLazySrcElementLoading()}get isTabletUp(){return this.isTabletQueryUp.matches}handleIsVertical(){this.settings.isVertical&&this.isTabletUp?this.tabList.setAttribute("aria-orientation","vertical"):this.tabList.setAttribute("aria-orientation","horizontal")}setupLazySrcElementLoading(){this.lazySrcLoader=new lazySrcLoader(this.element,{triggers:{elements:[this.tabList],eventTypes:["mouseenter","focusin","touchstart"]}})}determineNextTab(t,e){let s;return"vertical"===this.tabList.getAttribute("aria-orientation")&&(t.key===key.UP?s=-1:t.key===key.DOWN&&(s=1)),t.key===key.LEFT?s=-1:t.key===key.RIGHT&&(s=1),t=this.element.querySelector("[role=tab][aria-selected=true]"),t=[].indexOf.call(e,t),(t=parseInt(t+s,10))>=e.length?0:t<0?parseInt(e.length-1,10):t}goToTab(t,e=!1){var s="function"==(s=typeof t)||"object"==s&&!!t,i=this.element.querySelector("[role=tab][aria-selected=true]");if(i){var a=i.getAttribute("aria-controls");if(!(a=this.element.querySelector("#"+a)))return;js_ariaUpdate(i,"selected","false"),i.setAttribute("tabindex",-1),i.parentNode.classList.remove(classes_ACTIVE),js_ariaUpdate(a,"hidden","true"),a.removeAttribute("tabindex"),a.classList.remove(classes_ACTIVE)}(i=s?t.currentTarget:this.tabs[t])&&(a=i.getAttribute("aria-controls"),s=this.element.querySelector("#"+a))&&(this.tabScroll(i),js_ariaUpdate(i,"selected","true"),i.removeAttribute("tabindex"),i.parentNode.classList.add(classes_ACTIVE),e&&i.focus(),lazySrcLoader.loadElements(s),js_ariaUpdate(s,"hidden","false"),s.classList.add(classes_ACTIVE),s.setAttribute("tabindex",0))}tabListOverflow(){var t,e;"vertical"===this.tabList.getAttribute("aria-orientation")?(e=this.tabList.scrollHeight-this.tabList.clientHeight,t=this.tabList.parentNode,this.tabList.scrollHeight<=this.tabList.clientHeight?t.classList.remove(classes_OVERFLOW_ABOVE,classes_OVERFLOW_BELOW):(t.classList.toggle(classes_OVERFLOW_ABOVE,10<this.tabList.scrollTop),t.classList.toggle(classes_OVERFLOW_BELOW,this.tabList.scrollTop<e-20))):(t=this.tabList.scrollWidth-this.tabList.clientWidth,e=this.tabList.parentNode,this.tabList.scrollWidth<=this.tabList.clientWidth?e.classList.remove(classes_OVERFLOW_LEFT,classes_OVERFLOW_RIGHT):(e.classList.toggle(classes_OVERFLOW_LEFT,10<this.tabList.scrollLeft),e.classList.toggle(classes_OVERFLOW_RIGHT,this.tabList.scrollLeft<t-20)))}tabScroll(t){var e,s;"vertical"===this.tabList.getAttribute("aria-orientation")?this.tabList.scrollHeight<=this.tabList.clientHeight||((e=t.parentNode.previousElementSibling)?(e=Math.floor(e.getBoundingClientRect().bottom),s=Math.floor(this.tabList.getBoundingClientRect().top),this.tabList.scrollBy({left:0,top:e-s-40})):this.tabList.scrollTop=0):this.tabList.scrollWidth<=this.tabList.clientWidth||((e=t.parentNode.previousElementSibling)?(s=Math.floor(e.getBoundingClientRect().right),t=Math.floor(this.tabList.getBoundingClientRect().left),this.tabList.scrollBy({top:0,left:s-t-40})):this.tabList.scrollLeft=0)}
1unmount(){this.binder.unbindAll(),this.tabs.forEach(t=>{t.removeAttribute("aria-selected"),t.removeAttribute("id"),t.removeAttribute("tabindex"),t.parentNode.classList.remove(classes_ACTIVE),t.parentNode.removeAttribute("role"),t=t.getAttribute("aria-controls"),(t=this.element.querySelector("#"+t)).removeAttribute("aria-labelledby"),t.removeAttribute("aria-hidden")}),this.tabPanels.forEach(t=>{t.removeAttribute("tabindex"),t.classList.remove(classes_ACTIVE)})}destroy(){this.unmount(),this.binder.destroy()}};document.addEventListener("DOMContentLoaded",()=>{const tabContainers=document.querySelectorAll(".breeze-agents-tabbed-testimonials__tabs"),tabInstances=[];function stopTabRotation(instance){instance.rotationInterval&&(clearInterval(instance.rotationInterval),instance.rotationInterval=null)}function startTabRotation(instance){stopTabRotation(instance);const rotationInterval=1e3*parseFloat(instance.container.dataset.rotationInterval)||5e3;instance.rotationInterval=setInterval(()=>{const nextTabItem=instance.container.querySelector(".breeze-agents-tabbed-testimonials__tab-item.-active").nextElementSibling||instance.container.querySelector(".breeze-agents-tabbed-testimonials__tab-item");if(nextTabItem){const nextButton=nextTabItem.querySelector("[role=tab]"),nextIndex=Array.from(instance.tabs.tabs).indexOf(nextButton);-1!==nextIndex&&instance.tabs.goToTab(nextIndex)}},rotationInterval)}tabContainers.forEach(container=>{const tabs=new js_tabs(container);tabs.isTabletQueryUp=window.matchMedia("(width >= 1080px)"),tabs.mount(),tabInstances.push({container:container,tabs:tabs,rotationInterval:null})}),tabInstances.forEach(instance=>{"true"===instance.container.dataset.enableRotation&&(startTabRotation(instance),instance.stopRotationHandler=()=>stopTabRotation(instance),instance.startRotationHandler=()=>startTabRotation(instance),instance.container.addEventListener("mouseenter",instance.stopRotationHandler),instance.container.addEventListener("mouseleave",instance.startRotationHandler),instance.container.addEventListener("focusin",instance.stopRotationHandler),instance.container.addEventListener("focusout",instance.startRotationHandler),function(instance){const pauseButton=instance.container.querySelector(".breeze-agents-tabbed-testimonials__pause-button");if(!pauseButton)return;let isPaused=!1;pauseButton.addEventListener("click",()=>{isPaused=!isPaused,pauseButton.querySelector(".visually-hidden").textContent=isPaused?pauseButton.dataset.clPlayText:pauseButton.dataset.clPauseText,pauseButton.querySelector("use").setAttribute("href",isPaused?"#cl-icon-play":"#cl-icon-pause"),isPaused?(stopTabRotation(instance),instance.container.removeEventListener("mouseenter",instance.stopRotationHandler),instance.container.removeEventListener("mouseleave",instance.startRotationHandler),instance.container.removeEventListener("focusin",instance.stopRotationHandler),instance.container.removeEventListener("focusout",instance.startRotationHandler)):(startTabRotation(instance),instance.container.addEventListener("mouseenter",instance.stopRotationHandler),instance.container.addEventListener("mouseleave",instance.startRotationHandler),instance.container.addEventListener("focusin",instance.stopRotationHandler),instance.container.addEventListener("focusout",instance.startRotationHandler))})}(instance))})})})(); 2//# sourceURL=https://53.fs1.hubspotusercontent-na1.net/hubfs/53/hub_generated/module_assets/1/190645192841/1788968224369/module_Breeze_Agents_-_Tabbed_Testimonials.js
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.