{"version":3,"sources":["main.js","accordion.js","circle-animations-with-figure.js","form-validations.js","form.js","header.js","lottie-init.js"],"names":["detect_touchDevice","document","documentElement","jQuery","addClass","test","navigator","userAgent","removeClass","$","accordionHead","length","on","accordion","this","closest","accordionBody","siblings","accordionItems","find","countActiveItems","parent","toggleClass","hasClass","not","slideUp","slideDown","slideToggle","circleLottieAnimations","lottieRegisteredAnim","preLoadAnim","i","classList","add","push","lottie","registerAnimation","Waypoint","element","handler","direction","arrayPos","thisDuration","animDelay","loopFrame","style","visibility","animIndex","parseFloat","getAttribute","parseInt","getDuration","setTimeout","playSegments","offset","querySelectorAll","getElementsByClassName","window","addEventListener","validatePhoneNumber","input","value","labelText","quoteAttr","guestAttr","paymentAttr","specificCountry","toLowerCase","showErrorMessage","hasAttribute","hideErrorMessage","isZipCode","luhnCheck","let","sum","intVal","substr","phoneNumberFormat","text","trim","is","indexOf","zipCodeFormat","message","lastSibling","getLastSibling","contains","parentElement","insertAdjacentHTML","textContent","display","nextSibling","nextElementSibling","validateInput","type","includes","querySelector","option","radios","getElementsByName","name","isChecked","checked","keypress","e","currentAttr","target","attributes","id","specificCountryArr","charCode","event","keyCode","country","String","fromCharCode","match","x","replace","val","attr","selectBox","countSelectBox","createSelect","idxSelect","select","countOption","domDropdown","domOption","getElementsByTagName","disabled","tagName","domSelect","createElement","setAttribute","innerHTML","options","selectedIndex","appendChild","j","selected","parentNode","previousSibling","k","prevOption","countPrevOption","removeAttribute","stopPropagation","closeAllSelect","top","offsetHeight","toggle","elmnt","arrSelected","dropdown","countDropdown","countSelected","remove","form","deleteSelect","rangeInput","rangeSlider","getRangeData","range","thumb","popup","track","labels","progress","min","eq","max","$input","$thumb","$popup","$track","$labels","$progress","displayRange","toLocaleString","multiplier","inputValue","relativeInputValue","relativeMaxValue","percentage","shift","css","each","initValue","firstElementChild","lastElementChild","left","width","forEach","inputGroup","tcoCalculator","inputBox","invalidChars","key","preventDefault","stepUp","dispatchEvent","Event","bubbles","stepDown","selectElement","html","show","trigger","hide","getElementById","closestSelect","navItems","$colThreeContent","MutationObserver","mutationsList","observer","combobox","listContainer","disconnect","observe","childList","subtree","colThreeSlides","slide","H6title","heading","H5title","tabBoxSlides","sliderWrap","H4title","lottieDivs","div","index","svgs","svg","svgIndex","setAriaLabelsforCategories","colElements","financialsolutionscounter","col","h6Text","h6Element","h4Element","link","h4Text","updateAriaLabelsWithTitles","cards","emptycounter","card","h5","h6","newAriaLabel","btnPrimaryLinks","button","socialLinksContainer","url","href","socialMediaName","ariaLabels","relatedProductsCounter","defaultLabel","socialLinks","menuLinkss","opacity","menuLinks","linkText","innerText","productDetails","productDetail","productNameElement","productLink","formattedProductName","manufacturerDivs","linkHref","manufacturerName","split","productCards","linkElement","productName","ariaLabel","checkboxes","checkbox","checkboxValue","serviceDivs","serviceDiv","headingElement","serviceLink","headingText","pdfDivs","pdfDiv","pdfLink","/contact-us","/manufacturers","/solutions/5g-test-solutions","/manufacturers/buy-or-rent-fluke-networks/fluke-networks-test-equipment#rent-or-lease","/manufacturers/buy-or-rent-keysight-technologies/keysight-technologies-test-equipment#rent-or-lease","/why-trsrentelco","/resources/tco-calculator","productDetailsElement","fallbackLabel","buttonText","blockContent","$this","btnLinks","dropdownOffsetLeft","firstMenuLink","first","innerWidth","childElementCount","navItemsWithDropdown","path","mouseenter","mouseleave","click","location","pathname","dropdownMenu","parents","winWidth","adjMenuTabs","tabId","dataset","menuLinkWidth","animate","dropdownHeight","outerHeight","height","currMenuLink","prevMenuLink","prevScrollPos","removeAttr","header","scrollTop","headerDiv","srchOverlay","utilityNavBottomPos","stickyNav","position","searchOverlay","currentScrollPos","searchInput","headers","searchOverlays","windowWidth","cookieValue","cookie","row","startsWith","getval","localStorage","getItem","navMenu","undefined","resize","setItem","focus","fadeIn","fadeOut","prevLength","isBreakAdded","newLine","map","word","join","empty","breadcrumbs","breadcrumb","links","addAriaLabelToShowPdfSection","buttons","ariaLabelCounts","baseLabel","objects","object","dataUrl","fileName","substring","lastIndexOf","addAriaLabelsToNavLinks","navLinks","labelCounter","uniqueLabel","menuItems","item","currentLabel","updateAriaLabelsWithUniqueness","textLinks","ariaLabelTracker","Map","span","count","get","set","radioButtons","nameField","valueField","radio","dataSrc","lottieAnimation","lottieBox","interval","setInterval","clearInterval","AOS","refresh","forceOpenLinksInNewTab","siteName","host","ajaxComplete","pathUrl","orientationchange resize scroll load"],"mappings":"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","file":"global.js","sourcesContent":["(function () {\n window.addEventListener('load', function () {\n AOS.refresh();\n });\n})();\n\n// Force external links to open in new tab / window\n(function ($) {\n $(forceOpenLinksInNewTab);\n\n $(document).ajaxComplete(forceOpenLinksInNewTab);\n\n function forceOpenLinksInNewTab() {\n var siteName = window.location.host.replace('www.', '');\n $(\n 'a[href^=\"htt\"]' +\n ':not([target])' +\n ':not([href*=\"www.' + siteName + '\"])' + \n ':not([href*=\"//' + siteName +'\"])' + \n ':not([class*=\"fancybox\"])' + \n ',' + \n 'a[href$=\".pdf\"]'\n ).attr('target', '_blank');\n }\n\n $(function() {\n // Hide global links from login page\n var pathUrl = window.location.pathname;\n pathUrl = pathUrl.substr(pathUrl.indexOf('/') + 1);\n if (pathUrl == 'user/login') {\n $('#block-trs-local-tasks ul').hide();\n }\n });\n})(jQuery);\n\njQuery(window).on({\n 'orientationchange resize scroll load': function (e) {\n detect_touchDevice();\n },\n});\n\nfunction detect_touchDevice() {\n var is_touch_device = 'ontouchstart' in document.documentElement;\n if (is_touch_device) {\n jQuery('body').addClass('touch');\n }\n // Add class on touch device//\n\n if (\n /Android|webOS|iPhone|iPad|iPod|BlackBerry|BB|PlayBook|IEMobile|Windows Phone|Kindle|Silk|Opera Mini/i.test(\n navigator.userAgent\n )\n ) {\n jQuery('body').addClass('touch');\n } else {\n jQuery('body').removeClass('touch');\n }\n}\n","(function ($) {\n //Accordian functionality\n var accordionHead = '.accordion-head';\n\n if ($(accordionHead).length > 0) {\n $(accordionHead).on('click', function () {\n var accordion = $(this).closest('.accordion');\n var accordionBody = $(this).siblings('.accordion-body');\n var accordionItems = $(accordionBody).find('li');\n var countActiveItems = $(accordionItems).parent().find('li.active').length;\n\n $(accordion).toggleClass('collapsed');\n\n if (\n $(accordion).hasClass('accordion--filter') &&\n $(accordionItems).length &&\n countActiveItems > 0 &&\n countActiveItems < accordionItems.length\n ) {\n if ($(accordion).hasClass('collapsed')) {\n $(accordionItems).not('.active').slideUp(400);\n $(accordionBody).find('.btn-wrap').slideUp(400);\n } else {\n $(accordionItems).slideDown(400);\n $(accordionBody).find('.btn-wrap').slideDown(400);\n }\n } else {\n $(accordionBody).slideToggle();\n }\n });\n }\n})(jQuery);\n","(function () {\n const circleAnimationsWithFigure = document.querySelectorAll('.circle-animations-with-figure');\n\n if (circleAnimationsWithFigure) {\n var circleLottieAnimations = document.getElementsByClassName('lottie-circle'),\n lottieRegisteredAnim = [];\n\n /**\n * Set up lottie animation\n * -----------------------\n * Add index class to each lottie element\n * Register each lottie animation\n * Create a waypoint to trigger the animation\n */\n function preLoadAnim() {\n for (var i = 0; i < circleLottieAnimations.length; i++) {\n circleLottieAnimations[i].classList.add(i);\n lottieRegisteredAnim.push(lottie.registerAnimation(circleLottieAnimations[i]));\n\n var waypoint = new Waypoint({\n element: circleLottieAnimations[i],\n handler: function (direction) {\n // Only trigger play if element is hidden\n if (this.element.style.visibility != 'visible') {\n // Array index to play is the last class added to the element\n var animIndex = this.element.classList.length - 1;\n playAnimations(this.element.classList[animIndex]);\n }\n },\n // View offset from top for scrolling to trigger animation\n offset: '85%',\n });\n }\n }\n\n /**\n * Get the data-loop-frame attribute and duration\n * Play the first segment, and then keep playing from the loop segment after that\n * @param arrayPos (int) index of the animation to play\n */\n function playAnimations(arrayPos) {\n var animDelay = parseFloat(circleLottieAnimations[arrayPos].getAttribute('data-delay') * 1000) || 0,\n loopFrame = parseInt(circleLottieAnimations[arrayPos].getAttribute('data-loop-frame')) || 1,\n thisDuration;\n\n // Make sure animation duration is defined before playing\n thisDuration = lottieRegisteredAnim[arrayPos].getDuration(true);\n\n if (thisDuration > 0) {\n setTimeout(function () {\n circleLottieAnimations[arrayPos].style.visibility = 'visible';\n\n lottieRegisteredAnim[arrayPos].playSegments(\n [\n [0, loopFrame],\n [loopFrame + 1, thisDuration],\n ],\n true\n );\n }, animDelay);\n } else {\n setTimeout(function () {\n circleLottieAnimations[arrayPos].style.visibility = 'visible';\n }, animDelay);\n }\n }\n\n window.addEventListener('load', function () {\n preLoadAnim();\n });\n }\n})();","(function () {\n window.validateInput =function(input) {\n const value = this.value;\n\n switch (input.type) {\n case 'text':\n if(jQuery(input).is('#guestShippingFormPhoneNumber, #guestPaymentFormPhoneNumber, #quoteAddNewAddressFormPhoneNumber, #rfqAddNewAddressFormPhoneNumber')) {\n return validatePhoneNumber(input); \n } else {\n return validateText(input);\n }\n \n case 'tel':\n return validatePhoneNumber(input);\n\n case 'email':\n return validateEmail(input);\n\n case 'password':\n return validatePassword(input);\n\n case 'radio':\n return validateRadios(input);\n\n default:\n hideErrorMessage(this);\n return true;\n }\n }\n\n function validateText(input) {\n const arrOnlyAlphabets = ['first name', 'last name'];\n const labelText = input.getAttribute('aria-label') ? input.getAttribute('aria-label') : 'Value';\n\n if (\n input.value.length > 0 &&\n arrOnlyAlphabets.includes(labelText.toLowerCase()) &&\n !onlyAlphabets(input.value)\n ) {\n showErrorMessage(input, `${labelText} can only include alphabets`);\n return false;\n } else if (input.hasAttribute('required') && input.value.length === 0) {\n showErrorMessage(input, `${labelText} cannot be empty`);\n return false;\n } else {\n hideErrorMessage(input);\n return true;\n }\n }\n\n function validatePhoneNumber(input) {\n const labelText = input.getAttribute('aria-label') ? input.getAttribute('aria-label') : 'Value';\n\n // Specific form attributes\n var quoteAttr = jQuery('#quoteAddNewAddressFormCountry option:selected');\n var guestAttr = jQuery('#guestAddNewAddressFormCountry option:selected');\n var paymentAttr = jQuery('#guestPaymentFormCountry option:selected');\n var specificCountry = ['Canada', 'USA'];\n\n switch (input.getAttribute('aria-label').toLowerCase()) {\n case 'area code':\n if (input.value.length > 0 && !isPhoneCode(input.value)) {\n showErrorMessage(input, `Please enter a valid ${labelText.toLowerCase()}`);\n return false;\n } else if (input.hasAttribute('required') && input.value.length === 0) {\n showErrorMessage(input, `${labelText} cannot be empty`);\n return false;\n } else {\n hideErrorMessage(input);\n return true;\n }\n case 'country code':\n hideErrorMessage(input);\n return true;\n case 'zip code':\n if (input.value.length > 0 && !isZipCode(input.value, input)) {\n showErrorMessage(input, `Please enter a valid ${labelText.toLowerCase()}`);\n return false;\n } else if (input.hasAttribute('required') && input.value.length === 0) {\n showErrorMessage(input, `${labelText} cannot be empty`);\n return false;\n } else {\n hideErrorMessage(input);\n return true;\n }\n case 'postal code':\n if (input.value.length > 0 && !isZipCode(input.value, input)) {\n showErrorMessage(input, `Please enter a valid ${labelText.toLowerCase()}`);\n return false;\n } else if (input.hasAttribute('required') && input.value.length === 0) {\n showErrorMessage(input, `${labelText} cannot be empty`);\n return false;\n } else {\n hideErrorMessage(input);\n return true;\n } \n\n case 'credit card number':\n if (input.value.length > 0 && !isCreditCardNumber(input.value)) {\n showErrorMessage(input, `Please enter a valid ${labelText.toLowerCase()}`);\n return false;\n } else if (input.hasAttribute('required') && input.value.length === 0) {\n showErrorMessage(input, `${labelText} cannot be empty`);\n return false;\n } else {\n hideErrorMessage(input);\n return true;\n }\n\n case 'cvv number':\n if (input.value.length > 0 && !isCVVCode(input.value)) {\n showErrorMessage(input, `Please enter a valid ${labelText}`);\n return false;\n } else if (input.hasAttribute('required') && input.value.length === 0) {\n showErrorMessage(input, `${labelText} cannot be empty`);\n return false;\n } else {\n hideErrorMessage(input);\n return true;\n }\n\n case 'exp date':\n if (input.value.length > 0 && !isExpiryDate(input.value)) {\n showErrorMessage(input, `Please enter a valid ${labelText}`);\n return false;\n } else if (input.hasAttribute('required') && input.value.length === 0) {\n showErrorMessage(input, `${labelText} cannot be empty`);\n return false;\n } else {\n hideErrorMessage(input);\n return true;\n }\n\n default:\n if (input.value.length > 0 && !isPhoneNumber(input.value, input)) {\n if(specificCountry.indexOf(quoteAttr.text().trim()) >= 0) {\n showErrorMessage(input, `Please enter a valid 10-digit ${labelText.toLowerCase()}`);\n return false;\n } else if(specificCountry.indexOf(guestAttr.text().trim()) >= 0) {\n showErrorMessage(input, `Please enter a valid 10-digit ${labelText.toLowerCase()}`);\n return false;\n } else if(specificCountry.indexOf(paymentAttr.text().trim()) >= 0) {\n showErrorMessage(input, `Please enter a valid 10-digit ${labelText.toLowerCase()}`);\n return false;\n } else {\n showErrorMessage(input, `Please enter a valid ${labelText.toLowerCase()}`);\n return false;\n } \n } else if (input.hasAttribute('required') && input.value.length === 0) {\n showErrorMessage(input, `${labelText} cannot be empty`);\n return false;\n } else {\n hideErrorMessage(input);\n return true;\n }\n }\n }\n\n function validateEmail(input) {\n const labelText = input.getAttribute('aria-label') ? input.getAttribute('aria-label') : 'Value';\n\n if (input.value.length > 0 && !isEmail(input.value)) {\n showErrorMessage(input, `Please enter a valid ${labelText.toLowerCase()}`);\n return false;\n } else if (input.hasAttribute('required') && input.value.length === 0) {\n showErrorMessage(input, `${labelText} cannot be empty`);\n return false;\n } else {\n hideErrorMessage(input);\n return true;\n }\n }\n\n function validatePassword(input) {\n const labelText = input.getAttribute('aria-label') ? input.getAttribute('aria-label') : 'Value';\n\n if (input.value.length > 0 && !isPassword(input.value)) {\n showErrorMessage(input, `${labelText} must contain at least eight characters with one digit`);\n return false;\n } else if (\n labelText.toLowerCase() === 'confirm password' &&\n input.value.length > 0 &&\n !isSamePassword(input)\n ) {\n showErrorMessage(input, `${labelText} do not match`);\n return false;\n } else if (input.hasAttribute('required') && input.value.length === 0) {\n showErrorMessage(input, `${labelText} cannot be empty`);\n return false;\n } else {\n hideErrorMessage(input);\n return true;\n }\n }\n\n function validateRadios(input) {\n const labelText = input.getAttribute('aria-label') ? input.getAttribute('aria-label') : 'Value';\n\n if (input.hasAttribute('required') && !isChecked(input)) {\n showErrorMessage(input, `${labelText} cannot be empty`);\n return false;\n } else {\n hideErrorMessage(input);\n return true;\n }\n }\n\n function validateSelect(select) {\n const labelText = select.getAttribute('aria-label') ? select.getAttribute('aria-label') : 'Value';\n\n if (select.hasAttribute('required') && select.selectedIndex === 0) {\n showErrorMessage(select, `Please select a ${labelText.toLowerCase()}`);\n return false;\n } else {\n hideErrorMessage(select);\n return true;\n }\n }\n\n function onlyAlphabets(value) {\n const alphabetFormat = /^[ a-zA-Z\\-/']+$/;\n return alphabetFormat.test(value);\n }\n\n function isPhoneCode(value) {\n const phoneCodeFormat = /^[0-9]{0,9}$/;\n return phoneCodeFormat.test(value);\n }\n\n function isPhoneNumber(value, input) {\n let phoneNumberFormat = /^(?=.*[0-9])[() 0-9]+$/;\n\n if (parseInt(value, 10) === 1234567890 || parseInt(value, 10) === 0000000000) {\n return false;\n }\n\n // Canada\n if (jQuery('#quoteAddNewAddressFormCountry option:selected').length && jQuery('#quoteAddNewAddressFormCountry option:selected').text().trim() == 'Canada') {\n phoneNumberFormat = /^[0-9]{10}$/;\n }\n\n if (\n jQuery(input).is('#guestShippingFormPhoneNumber') &&\n jQuery('#guestAddNewAddressFormCountry option:selected').length &&\n jQuery('#guestAddNewAddressFormCountry option:selected').text().trim() ==\n 'Canada'\n ) {\n phoneNumberFormat = /^[0-9]{10}$/;\n }\n\n if (\n jQuery(input).is('#guestPaymentFormPhoneNumber') &&\n jQuery('#guestPaymentFormCountry option:selected').length &&\n jQuery('#guestPaymentFormCountry option:selected').text().trim() ==\n 'Canada'\n ) {\n phoneNumberFormat = /^[0-9]{10}$/;\n }\n\n // USA\n if (jQuery('#quoteAddNewAddressFormCountry option:selected').length && jQuery('#quoteAddNewAddressFormCountry option:selected').text().trim() == 'USA') {\n phoneNumberFormat = /^(\\+1)\\s(\\([0-9]{3}\\)\\s*|[0-9]{3}\\-)[0-9]{3}-[0-9]{4}$/;\n }\n\n if (\n jQuery(input).is('#guestShippingFormPhoneNumber') &&\n jQuery('#guestAddNewAddressFormCountry option:selected').length &&\n jQuery('#guestAddNewAddressFormCountry option:selected').text().trim() ==\n 'USA'\n ) {\n phoneNumberFormat = /^(\\+1)\\s(\\([0-9]{3}\\)\\s*|[0-9]{3}\\-)[0-9]{3}-[0-9]{4}$/;\n }\n\n if (\n jQuery(input).is('#guestPaymentFormPhoneNumber') &&\n jQuery('#guestPaymentFormCountry option:selected').length &&\n jQuery('#guestPaymentFormCountry option:selected').text().trim() ==\n 'USA'\n ) {\n phoneNumberFormat = /^(\\+1)\\s(\\([0-9]{3}\\)\\s*|[0-9]{3}\\-)[0-9]{3}-[0-9]{4}$/;\n }\n\n if (jQuery('#CountryId option:selected').length && jQuery('#CountryId option:selected').text().trim() == 'USA') {\n phoneNumberFormat = /^(\\+1)\\s(\\([0-9]{3}\\)\\s*|[0-9]{3}\\-)[0-9]{3}-[0-9]{4}$/;\n }\n\n return phoneNumberFormat.test(value);\n }\n\n function isEmail(value) {\n const emailFormat =\n /^(([^<>()[\\]\\\\.,;:\\s@\\\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n return emailFormat.test(value);\n }\n\n function isPassword(value) {\n const passowrdFormat = /^(?=.*[A-Za-z])(?=.*\\d)[A-Za-z\\d]{8,}$/;\n return passowrdFormat.test(value);\n }\n\n function isSamePassword(input) {\n return input.value === input.closest('form').querySelector('input[type=\"password\"]').value;\n }\n\n function isZipCode(value, input) {\n let zipCodeFormat = /^[a-z0-9]+$/i;\n\n // USA\n if (\n jQuery('#quoteAddNewAddressFormCountry option:selected').length &&\n jQuery('#quoteAddNewAddressFormCountry option:selected').text().trim() ==\n 'USA'\n ) {\n zipCodeFormat = /^[0-9]{5}$/i;\n }\n\n if (\n jQuery(input).is('#guestShippingFormZipCode') &&\n jQuery('#guestAddNewAddressFormCountry option:selected').length &&\n jQuery('#guestAddNewAddressFormCountry option:selected').text().trim() ==\n 'USA'\n ) {\n zipCodeFormat = /^[0-9]{5}$/i;\n }\n\n if (\n jQuery(input).is('#guestPaymentFormZipCode') &&\n jQuery('#guestPaymentFormCountry option:selected').length &&\n jQuery('#guestPaymentFormCountry option:selected').text().trim() ==\n 'USA'\n ) {\n zipCodeFormat = /^[0-9]{5}$/i;\n }\n\n // Canada\n if (\n jQuery('#quoteAddNewAddressFormCountry option:selected').length &&\n jQuery('#quoteAddNewAddressFormCountry option:selected').text().trim() ==\n 'Canada'\n ) {\n zipCodeFormat = /^[a-z0-9]{6}$/i;\n }\n\n if (\n jQuery(input).is('#guestShippingFormZipCode') &&\n jQuery('#guestAddNewAddressFormCountry option:selected').length &&\n jQuery('#guestAddNewAddressFormCountry option:selected').text().trim() ==\n 'Canada'\n ) {\n zipCodeFormat = /^[a-z0-9]{6}$/i;\n }\n\n if (\n jQuery(input).is('#guestPaymentFormZipCode') &&\n jQuery('#guestPaymentFormCountry option:selected').length &&\n jQuery('#guestPaymentFormCountry option:selected').text().trim() ==\n 'Canada'\n ) {\n zipCodeFormat = /^[a-z0-9]{6}$/i;\n }\n\n if (jQuery('#CountryId option:selected').length && jQuery('#CountryId option:selected').text().trim() == 'Canada') {\n zipCodeFormat = /^[a-z0-9]{6}$/i;\n }\n\n return zipCodeFormat.test(value);\n }\n\n function isCreditCardNumber(value) {\n const creditCardNumberFormat = /^[0-9]{16}$/;\n\n if (!creditCardNumberFormat.test(value)) return false;\n\n return luhnCheck(value);\n\n function luhnCheck(value) {\n let sum = 0;\n\n for (let i = 0; i < value.length; i++) {\n let intVal = parseInt(value.substr(i, 1));\n\n if (i % 2 == 0) {\n intVal *= 2;\n\n if (intVal > 9) {\n intVal = 1 + (intVal % 10);\n }\n }\n\n sum += intVal;\n }\n\n return sum % 10 == 0;\n }\n }\n\n function isCVVCode(value) {\n const CVVCodeFormat = /^[0-9]{3,4}$/;\n return CVVCodeFormat.test(value);\n }\n\n function isExpiryDate(value) {\n const expiryDateFormat = /^(0[1-9]|1[0-2])\\/?([0-9]{4}|[0-9]{2})$/;\n return expiryDateFormat.test(value);\n }\n\n function formatExpDate(e) {\n var inputChar = String.fromCharCode(e.keyCode);\n var code = e.keyCode;\n var allowedKeys = [8];\n if (allowedKeys.indexOf(code) !== -1) {\n return;\n }\n\n e.target.value = e.target.value\n .replace(\n /^([1-9]\\/|[2-9])$/g,\n '0$1/' // 3 > 03/\n )\n .replace(\n /^(0[1-9]|1[0-2])$/g,\n '$1/' // 11 > 11/\n )\n .replace(\n /^([0-1])([3-9])$/g,\n '0$1/$2' // 13 > 01/3\n )\n .replace(\n /^(0?[1-9]|1[0-2])([0-9]{2})$/g,\n '$1/$2' // 141 > 01/41\n )\n .replace(\n /^([0]+)\\/|[0]+$/g,\n '0' // 0/ > 0 and 00 > 0\n )\n .replace(\n /[^\\d\\/]|^[\\/]*$/g,\n '' // To allow only digits and `/`\n )\n .replace(\n /\\/\\//g,\n '/' // Prevent entering more than 1 `/`\n );\n }\n\n function isChecked(option) {\n const radios = document.getElementsByName(option.name);\n let isChecked;\n\n var i = 0;\n while (!isChecked && i < radios.length) {\n if (radios[i].checked) isChecked = true;\n i++;\n }\n\n return isChecked;\n }\n\n function showErrorMessage(input, message) {\n let lastSibling = getLastSibling(input);\n\n if (!lastSibling || !lastSibling.classList.contains('error-message')) {\n appendErrorHtml(input);\n lastSibling = getLastSibling(input);\n }\n\n lastSibling.textContent = message;\n lastSibling.style.display = 'block';\n }\n\n function hideErrorMessage(input) {\n const lastSibling = getLastSibling(input);\n\n if (lastSibling && lastSibling.classList.contains('error-message')) {\n lastSibling.textContent = '';\n lastSibling.style.display = 'none';\n }\n }\n\n function appendErrorHtml(input) {\n const errorHtml = '';\n input.parentElement.insertAdjacentHTML('beforeend', errorHtml);\n }\n\n function getLastSibling(input) {\n let nextSibling = input.nextElementSibling;\n\n if (nextSibling) {\n while (nextSibling.nextElementSibling) {\n nextSibling = nextSibling.nextElementSibling;\n }\n }\n\n return nextSibling;\n }\n\n (function () {\n jQuery('#guestShippingFormPhoneNumber, #guestPaymentFormPhoneNumber, #quoteAddNewAddressFormPhoneNumber').keypress(function (e) {\n var currentAttr = e.target.attributes.id.value;\n var specificCountryArr = ['USA', 'Canada'];\n var charCode = (e.which) ? e.which : event.keyCode;\n if(currentAttr == 'guestShippingFormPhoneNumber') {\n var country = jQuery('#guestAddNewAddressFormCountry option:selected').text().trim();\n if (specificCountryArr.indexOf(country) === -1) {\n if (String.fromCharCode(charCode).match(/[^0-9(\\s+\\-\\)]/g)) {\n return false;\n }\n } else if(country == 'Canada') {\n if (String.fromCharCode(charCode).match(/[^0-9]/g)) {\n return false;\n }\n }\n } else if(currentAttr == 'guestPaymentFormPhoneNumber') {\n var country = jQuery('#guestPaymentFormCountry option:selected').text().trim();\n if (specificCountryArr.indexOf(country) === -1) {\n if (String.fromCharCode(charCode).match(/[^0-9(\\s+\\-\\)]/g)) {\n return false;\n }\n } else if(country == 'Canada') {\n if (String.fromCharCode(charCode).match(/[^0-9]/g)) {\n return false;\n }\n }\n } else if(currentAttr == 'quoteAddNewAddressFormPhoneNumber') {\n var country = jQuery('#quoteAddNewAddressFormCountry option:selected').text().trim(); \n if (specificCountryArr.indexOf(country) === -1) {\n if (String.fromCharCode(charCode).match(/[^0-9(\\s+\\-\\)]/g)) {\n return false;\n }\n } else if(country == 'Canada') {\n if (String.fromCharCode(charCode).match(/[^0-9]/g)) {\n return false;\n }\n }\n }\n });\n\n jQuery('#quoteAddNewAddressFormPhoneNumber').on('input', function (e) {\n if (jQuery('#quoteAddNewAddressFormCountry option:selected').text().trim() == 'USA') {\n var x = e.target.value.replace(/[^0-9+]/g, '').match(/(\\+1)?(\\d{0,3})(\\d{0,3})(\\d{0,4})/);\n if(x.indexOf('+') === -1){\n e.target.value = !x[3] ? '+1 ' + x[2] : '+1 (' + x[2] + ') ' + x[3] + (x[4] ? '-' + x[4] : '');\n }\n }\n });\n\n jQuery('#quoteAddNewAddressFormCountry').on('change', function () {\n if (jQuery('#quoteAddNewAddressFormPhoneNumber').length) {\n jQuery('#quoteAddNewAddressFormPhoneNumber').val('');\n }\n\n // Placeholder update [Canada]\n if(jQuery('#quoteAddNewAddressFormCountry option:selected').text().trim() == 'Canada') {\n jQuery('#quoteAddNewAddressFormZipCode').attr('placeholder', 'Postal Code*');\n jQuery('#quoteAddNewAddressFormZipCode').attr('aria-label', 'Postal code');\n } else {\n jQuery('#quoteAddNewAddressFormZipCode').attr('placeholder', 'Zip Code*');\n jQuery('#quoteAddNewAddressFormZipCode').attr('aria-label', 'Zip code');\n }\n });\n\n jQuery('#guestShippingFormPhoneNumber').on('input', function (e) {\n if (jQuery('#guestAddNewAddressFormCountry option:selected').text().trim() == 'USA') {\n var x = e.target.value.replace(/[^0-9+]/g, '').match(/(\\+1)?(\\d{0,3})(\\d{0,3})(\\d{0,4})/);\n if(x.indexOf('+') === -1){\n e.target.value = !x[3] ? '+1 ' + x[2] : '+1 (' + x[2] + ') ' + x[3] + (x[4] ? '-' + x[4] : '');\n }\n }\n });\n\n jQuery('#guestAddNewAddressFormCountry').on('change', function () {\n if (jQuery('#guestShippingFormPhoneNumber').length) {\n jQuery('#guestShippingFormPhoneNumber').val('');\n }\n\n // Placeholder update [Canada]\n if(jQuery('#guestAddNewAddressFormCountry option:selected').text().trim() == 'Canada') {\n jQuery('#guestShippingFormZipCode').attr('placeholder', 'Postal Code*');\n jQuery('#guestShippingFormZipCode').attr('aria-label', 'Postal code');\n } else {\n jQuery('#guestShippingFormZipCode').attr('placeholder', 'Zip Code*');\n jQuery('#guestShippingFormZipCode').attr('aria-label', 'Zip code');\n }\n });\n\n jQuery('#guestPaymentFormPhoneNumber').on('input', function (e) {\n if (jQuery('#guestPaymentFormCountry option:selected').text().trim() == 'USA') {\n var x = e.target.value.replace(/[^0-9+]/g, '').match(/(\\+1)?(\\d{0,3})(\\d{0,3})(\\d{0,4})/);\n if(x.indexOf('+') === -1){\n e.target.value = !x[3] ? '+1 ' + x[2] : '+1 (' + x[2] + ') ' + x[3] + (x[4] ? '-' + x[4] : '');\n }\n }\n });\n\n jQuery('#rfqAddNewAddressFormPhoneNumber').on('input', function (e) {\n if (jQuery('#quoteAddNewAddressFormCountry option:selected').text().trim() == 'USA') {\n var x = e.target.value.replace(/[^0-9+]/g, '').match(/(\\+1)?(\\d{0,3})(\\d{0,3})(\\d{0,4})/);\n if(x.indexOf('+') === -1){\n e.target.value = !x[3] ? '+1 ' + x[2] : '+1 (' + x[2] + ') ' + x[3] + (x[4] ? '-' + x[4] : '');\n }\n }\n });\n \n jQuery('#guestPaymentFormCountry').on('change', function () {\n if (jQuery('#guestPaymentFormPhoneNumber').length) {\n jQuery('#guestPaymentFormPhoneNumber').val('');\n }\n\n // Placeholder update [Canada]\n if(jQuery('#guestPaymentFormCountry option:selected').text().trim() == 'Canada') {\n jQuery('#guestPaymentFormZipCode').attr('placeholder', 'Postal Code*');\n jQuery('#guestPaymentFormZipCode').attr('aria-label', 'Postal code');\n } else {\n jQuery('#guestPaymentFormZipCode').attr('placeholder', 'Zip Code*');\n jQuery('#guestPaymentFormZipCode').attr('aria-label', 'Zip code');\n }\n });\n\n jQuery('#Phone').on('input', function (e) {\n if (jQuery('#CountryId option:selected').text().trim() == 'USA') {\n var x = e.target.value.replace(/\\D/g, '').match(/(\\d{0,3})(\\d{0,3})(\\d{0,4})/);\n e.target.value = !x[2] ? x[1] : '(' + x[1] + ') ' + x[2] + (x[3] ? '-' + x[3] : '');\n }\n });\n\n jQuery('#CountryId').on('change', function () {\n if (jQuery('#Phone').length) {\n jQuery('#Phone').val('');\n }\n });\n })()\n})();\n","(function ($) {\n var selectBox, countSelectBox;\n // Look for any elements with the class \"select\"\n selectBox = document.getElementsByClassName('select');\n countSelectBox = selectBox.length;\n for (var i = 0; i < countSelectBox; i++) {\n createSelect(selectBox[i]);\n }\n\n function createSelect(selectBox, idxSelect) {\n // Add default value to paramater\n if (!idxSelect) {\n idxSelect = 0;\n } \n var select, countOption, domSelect, domDropdown, domOption;\n\n select = selectBox.getElementsByTagName('select')[idxSelect];\n if (select) {\n if (select.disabled) {\n while (\n select.nextElementSibling &&\n select.nextElementSibling.tagName === 'SELECT' &&\n select.disabled\n ) {\n select = select.nextElementSibling;\n }\n }\n\n countOption = select.length;\n\n // For each select, create a new div that will act as the selected item\n domSelect = document.createElement('div');\n domSelect.setAttribute('class', 'select-selected');\n domSelect.innerHTML = select.options[select.selectedIndex].innerHTML;\n if (select.selectedIndex !== 0) {\n domSelect.classList.add('default-removed');\n }\n selectBox.appendChild(domSelect);\n\n // For each select, create a new div that will act as a dropdown list\n domDropdown = document.createElement('div');\n domDropdown.setAttribute('class', 'select-items select-hide');\n\n // Inside this dropdown, add all the options present in the select\n for (var j = 1; j < countOption; j++) {\n // For each option, create a new div that will act as an option item\n domOption = document.createElement('div');\n domOption.innerHTML = select.options[j].innerHTML;\n domOption.setAttribute('data-value', select.options[j].value);\n if (select.selectedIndex !== 0 && select.selectedIndex === j) {\n domOption.classList.add('same-as-selected');\n }\n\n // When an item is clicked, update the original select box, and the selected item\n domOption.addEventListener('click', function (e) {\n var selected, prevOption, countOption, countPrevOption;\n countOption = select.length;\n selected = this.parentNode.previousSibling;\n\n for (var k = 0; k < countOption; k++) {\n if (select.options[k].innerHTML == this.innerHTML) {\n select.selectedIndex = k;\n selected.innerHTML = this.innerHTML;\n selected.classList.add('default-removed');\n // Remove previous active option\n prevOption = this.parentNode.getElementsByClassName('same-as-selected');\n countPrevOption = prevOption.length;\n for (var j = 0; j < countPrevOption; j++) {\n prevOption[j].removeAttribute('class');\n }\n // Set clicked option to active\n this.setAttribute('class', 'same-as-selected');\n break;\n }\n }\n });\n\n domDropdown.appendChild(domOption);\n }\n selectBox.appendChild(domDropdown);\n\n // When the select box is clicked, close any other select boxes, and open/close the current select box\n domSelect.addEventListener('click', function (e) {\n e.stopPropagation();\n closeAllSelect(this);\n this.nextSibling.style.top = `${this.offsetHeight}px`;\n this.nextSibling.classList.toggle('select-hide');\n this.classList.toggle('select-arrow-active');\n });\n }\n }\n\n // A function that will close all select boxes in the document, except the current select box\n function closeAllSelect(elmnt) {\n var dropdown,\n selected,\n countDropdown,\n countSelected,\n arrSelected = [];\n dropdown = document.getElementsByClassName('select-items');\n selected = document.getElementsByClassName('select-selected');\n countDropdown = dropdown.length;\n countSelected = selected.length;\n for (var i = 0; i < countSelected; i++) {\n if (elmnt == selected[i]) {\n arrSelected.push(i);\n } else {\n selected[i].classList.remove('select-arrow-active');\n }\n }\n for (i = 0; i < countDropdown; i++) {\n if (arrSelected.indexOf(i)) {\n dropdown[i].classList.add('select-hide');\n }\n }\n }\n\n function deleteSelect(selectBox) {\n selectBox.querySelector('.select-selected').remove();\n selectBox.querySelector('.select-items').remove();\n }\n\n // If the user clicks anywhere outside the select box, then close all select boxes:\n document.addEventListener('click', closeAllSelect);\n\n // Expose select creating and deleting functions as methods to global window object\n window.form = {\n createSelect: createSelect,\n deleteSelect: deleteSelect,\n };\n})(jQuery);\n\n/**\n * Range Slider\n */\n(function ($) {\n var rangeSlider = ' .range-slider ';\n if ($(rangeSlider).length > 0) {\n var rangeInput = ' .range-slider input[type=\"range\"] ';\n var rangeThumb = ' .range-thumb ';\n var rangePopup = ' .range-popup ';\n var rangeTrack = ' .range-track ';\n var rangeProgress = ' .range-track .range-progress ';\n var rangeLabel = ' .range-track .range-labels li ';\n // display value on initialisation\n $(function () {\n $.each($(rangeInput), function () {\n var range = getRangeData(this);\n\n // change range value to one in input range\n var initValue = $(this).attr('value');\n\n if (initValue > 0 && initValue > range.min && initValue < range.max) {\n range.value = initValue;\n }\n // initialise with predefined value\n init(range);\n // Display range value\n displayRange(range);\n });\n });\n\n // display value on range change\n $(rangeInput).on('input change', function () {\n var range = getRangeData(this);\n const max = $(this).attr(\"max\");\n const min = $(this).attr(\"min\");\n // Display range value\n displayRange(range, max,min);\n });\n\n function init(range) {\n range.$input.attr({\n min: range.min,\n max: range.max,\n });\n }\n\n // fetch range related infos\n function getRangeData(range) {\n var input = $(range);\n var value = $(range).val();\n var thumb = $(range).closest(rangeSlider).find(rangeThumb);\n var popup = $(range).closest(rangeSlider).find(rangePopup);\n var track = $(range).closest(rangeSlider).find(rangeTrack);\n var labels = $(range).closest(rangeSlider).find(rangeLabel);\n var progress = $(range).closest(rangeSlider).find(rangeProgress);\n var min = parseInt(labels.eq(0).attr('data-value'), 10);\n var max = parseInt(labels.eq(labels.length - 1).attr('data-value'), 10);\n\n // return object\n return {\n $input: input,\n value: value,\n $thumb: thumb,\n $popup: popup,\n $track: track,\n $labels: labels,\n $progress: progress,\n min: min,\n max: max,\n };\n }\n\n function displayRange(range,max,min) {\n var text = getPopupText(range);\n var multiplier = getMultiplier(range);\n let percentage=0;\n if(min>0){\n percentage = multiplier;\n }else{\n percentage = (multiplier/max)*100;\n }\n \n var shift = percentage?percentage:0;\n // display value inside popup\n range.$popup.text(text);\n // move thumb with value change\n range.$thumb.css('left', shift + '%');\n // move popup with value change\n range.$popup.css('left', shift + '%');\n // change track color to show progress\n range.$progress.css('width', shift + '%');\n }\n\n function getPopupText(range) {\n var inputValue = range.value < range.min ? range.min : range.value;\n var popupText = '$' + inputValue.toLocaleString();\n\n return popupText;\n }\n\n function getMultiplier(range) {\n var inputValue = range.value < range.min ? range.min : range.value;\n if (range.min && range.max) {\n var relativeInputValue = inputValue - range.min;\n var relativeMaxValue = range.max - range.min;\n var multiplier = (relativeInputValue * 100) / relativeMaxValue;\n return multiplier;\n }\n return inputValue;\n }\n }\n})(jQuery);\n\n(function () {\n var rangeSlider = document.querySelector('.range-slider2');\n var rangeInput = document.querySelectorAll('.range-slider2 input[type=\"range\"]');\n var rangeThumb = '.range-slider2__thumb ';\n var rangePopup = '.range-slider2__popup';\n var rangeTrack = '.range-slider2__track ';\n var rangeProgress = '.range-slider2__track .range-slider2__progress ';\n var rangeLabel = '.range-slider2__track .range-slider2__labels li ';\n\n if (rangeSlider) {\n rangeInput.forEach(function (element) {\n var range = getRangeData(element);\n var initValue = range.input.getAttribute('value');\n\n if (initValue > 0 && initValue > range.min && initValue < range.max) {\n range.value = initValue;\n }\n\n init(range);\n displayRange(range);\n\n element.addEventListener('change', function (e) {\n displayRange(getRangeData(this));\n });\n });\n\n function init(range) {\n range.input.setAttribute('min', range.min);\n range.input.setAttribute('max', range.max);\n }\n\n function getRangeData(range) {\n var input = range;\n var value = input.value;\n var thumb = input.parentNode.querySelector(rangeThumb);\n var popup = input.parentNode.querySelector(rangePopup);\n var track = input.parentNode.querySelector(rangeTrack);\n var labels = input.parentNode.querySelector(rangeLabel);\n var progress = input.parentNode.querySelector(rangeProgress);\n var min = parseInt(labels.parentElement.firstElementChild.getAttribute('data-value'), 10);\n var max = parseInt(labels.parentElement.lastElementChild.getAttribute('data-value'), 10);\n\n // return object\n return {\n input: input,\n value: value,\n thumb: thumb,\n popup: popup,\n track: track,\n labels: labels,\n progress: progress,\n min: min,\n max: max,\n };\n }\n\n function getPopupText(range) {\n var inputValue = range.value < range.min ? range.min : range.value;\n var popupText = inputValue.toLocaleString();\n\n return popupText;\n }\n\n function getMultiplier(range) {\n var inputValue = range.value < range.min ? range.min : range.value;\n var relativeInputValue = inputValue - range.min;\n var relativeMaxValue = range.max - range.min;\n var multiplier = (relativeInputValue * 100) / relativeMaxValue;\n\n return multiplier;\n }\n\n function displayRange(range) {\n var text = getPopupText(range);\n var multiplier = getMultiplier(range);\n var shift = multiplier + '%';\n\n // display value inside popup\n if (text == 0) {\n range.popup.style.display = 'none';\n } else {\n range.popup.style.display = 'block';\n range.popup.querySelector('.range-slider2__popup--value').textContent = text;\n }\n // move thumb with value change\n range.thumb.style.left = shift;\n // move popup with value change\n range.popup.style.left = shift;\n // change track color to show progress\n range.progress.style.width = shift;\n }\n }\n})();\n\n(function ($) {\n var inputGroup = document.querySelectorAll('.input-group');\n var tcoCalculator = document.querySelector('.tco-calculator');\n var inputBox = document.querySelectorAll('.tco-calculator input[type=\"number\"]');\n var invalidChars = ['-', '+', 'e'];\n\n if (tcoCalculator) {\n if (inputGroup.length > 0) {\n inputBox.forEach(function (element) {\n element.addEventListener('keydown', function (e) {\n if (invalidChars.includes(e.key)) {\n e.preventDefault();\n }\n });\n });\n\n inputGroup.forEach(function (element) {\n element.addEventListener('click', function (e) {\n e.preventDefault();\n\n if (e.target.classList.contains('input-group__control--up')) {\n this.querySelector('input').stepUp();\n this.querySelector('input').dispatchEvent(new Event('input', {bubbles:true}));\n } else if (e.target.classList.contains('input-group__control--down')) {\n this.querySelector('input').stepDown();\n this.querySelector('input').dispatchEvent(new Event('input', {bubbles:true}));\n }\n });\n });\n }\n }\n $('#guestQuoteFormCountry')\n .parent()\n .find('.select-items div')\n .on('click', function (e) {\n if(!$('#guestQuoteFormCountry').parent().hasClass('field-wrap')){\n $('#guestQuoteFormCountry').parent().addClass('field-wrap');\n }\n let country = $(this).attr('data-value');\n if (country == 'US') {\n $('#guestQuoteFormStateUSA')\n .html(\n ''\n );\n $('#guestQuoteFormStateUSA').attr('required', 'required');\n $('#guestQuoteFormStateUSA').parent().show();\n \n } else if (country == 'CA') {\n // $('#guestQuoteFormStateUSA').attr('required', 'required');\n $('#guestQuoteFormStateUSA').html(\n ''\n );\n $('#guestQuoteFormStateUSA').attr('required', 'required');\n $('#guestQuoteFormStateUSA').parent().show();\n // $('#PhoneNumber').attr('pattern', '^\\\\(?\\\\d{3}\\\\)?[- ]?\\\\d{3}[- ]?\\\\d{4}');\n } else {\n $('#guestQuoteFormStateUSA')\n .html(\n ''\n );\n $('#guestQuoteFormStateUSA').val('9999');\n $('#guestQuoteFormStateUSA').trigger('change');\n $('#guestQuoteFormStateUSA').parent().hide();\n $('#guestQuoteFormCountry').parent().removeClass('field-wrap');\n }\n\n const selectElement = document.getElementById('guestQuoteFormStateUSA');\n const closestSelect = selectElement ? selectElement.closest('.select') : null;\n\n if (closestSelect.querySelector('.select-selected')) {\n if (country !== 'CA' && country !== 'US') {\n window.form.deleteSelect(closestSelect);\n } else {\n window.form.deleteSelect(closestSelect);\n window.form.createSelect(closestSelect);\n }\n } else {\n if (country === 'CA' || country === 'US') {\n window.form.createSelect(closestSelect);\n }\n }\n });\n})(jQuery);\n","(function ($) {\n var navItems = 'header .main-nav nav > ul > li';\n var $colThreeContent = $('header .services .col-three-content');\n\n function setComboboxAriaAttributes() {\n const observer = new MutationObserver((mutationsList, observer) => {\n const combobox = document.querySelector('.search-bar-wrapper .select2 .selection .select2-selection[role=\"combobox\"]');\n const listContainer = document.querySelector('.select2-selection__rendered');\n \n if (combobox && listContainer) {\n if (!listContainer.id) {\n listContainer.id = 'select2-list-container';\n }\n combobox.setAttribute('aria-label', 'Select configurations');\n combobox.setAttribute('aria-controls', listContainer.id);\n observer.disconnect();\n }\n });\n\n observer.observe(document, { childList: true, subtree: true });\n }\n\n // Call the function to start observing\n setComboboxAriaAttributes();\n\n function setRoleAttributeForColThreeSlides() {\n const colThreeSlides = document.querySelectorAll('.col-three.slick-slide');\n if(colThreeSlides){\n colThreeSlides.forEach(slide => {\n if (slide.classList.contains('slick-slide') && !slide.hasAttribute('role')) {\n slide.setAttribute('role', 'link');\n // Adding the aria-label\n const H5title = slide.querySelector('h5')?.textContent || '';\n const H6title = slide.querySelector('h6')?.textContent || '';\n const heading = H5title || H6title;\n if (heading) {\n slide.setAttribute('aria-label', heading);\n }\n }\n });\n }\n }\n function setRoleAttributeForTabBoxSlides() {\n const tabBoxSlides = document.querySelectorAll('.tab-box.slick-slide');\n if(tabBoxSlides){\n tabBoxSlides.forEach(slide => {\n if (slide.classList.contains('slick-slide') && !slide.hasAttribute('role')) {\n slide.setAttribute('role', 'link');\n // Adding the aria-label\n const H5title = slide.querySelector('h5')?.textContent || '';\n const H6title = slide.querySelector('h6')?.textContent || '';\n const heading = H5title || H6title;\n if (heading) {\n slide.setAttribute('aria-label', heading);\n }\n }\n });\n }\n }\n function setRoleAttributeForsliderWrap() {\n const sliderWrap = document.querySelectorAll('.slick-slide');\n if(sliderWrap){\n sliderWrap.forEach(slide => {\n if (slide.classList.contains('slick-slide') && !slide.hasAttribute('role')) {\n slide.setAttribute('role', 'link');\n // Adding the aria-label\n const H4title = slide.querySelector('h4')?.textContent || '';\n const H5title = slide.querySelector('h5')?.textContent || '';\n const H6title = slide.querySelector('h6')?.textContent || '';\n const heading = H5title || H6title || H4title;\n if (heading) {\n slide.setAttribute('aria-label', heading);\n }\n }\n });\n }\n }\n\n function addAriaLabelToSVG() {\n const lottieDivs = document.querySelectorAll('div.lottie');\n \n if (lottieDivs.length > 0) {\n lottieDivs.forEach((div, index) => {\n const svgs = div.querySelectorAll('svg');\n if(svgs){\n svgs.forEach((svg, svgIndex) => {\n const ariaLabel = `Triangle animation showing Lottie effects ${index + 1}, SVG ${svgIndex + 1}`;\n svg.setAttribute('aria-label', ariaLabel);\n });\n }\n });\n } \n }\n\n function setAriaLabelsforCategories() {\n const colElements = document.querySelectorAll('.col-three');\n let financialsolutionscounter = 1;\n if (colElements.length > 0) {\n colElements.forEach(function (col) {\n const h6Element = col.querySelector('h6');\n const h4Element = col.querySelector('h4');\n const link = col.querySelector('.btn-wrap a');\n if (link) {\n if (h6Element && h4Element) {\n // Both h6 and h4 are present\n const h6Text = h6Element.textContent.trim();\n const h4Text = h4Element.textContent.trim();\n link.setAttribute('aria-label', `TRS - ${h4Text} - ${h6Text}`);\n } else if (h6Element) {\n // Only h6 is present\n const h6Text = h6Element.textContent.trim();\n link.setAttribute('aria-label', `TRS - ${h6Text} - ${financialsolutionscounter}`);\n financialsolutionscounter++;\n } else {\n // Fallback when neither h4 nor h6 is present\n link.setAttribute('aria-label', `Financial Solutions-${financialsolutionscounter}`);\n financialsolutionscounter++;\n }\n if (!link.hasAttribute('href')) {\n link.setAttribute('tabindex', '0'); // Make it focusable\n link.setAttribute('role', 'button'); // Indicate it acts like a button\n }\n }\n });\n }\n }\n //https://dev.trsrentelco.com/products/tektronix-tdp1500\n function updateAriaLabelsWithTitles() {\n const cards = document.querySelectorAll('.col-three.slick-slide');\n let emptycounter = 1;\n if (cards) {\n cards.forEach(card => {\n const link = card.querySelector('.empty-link');\n const h5 = card.querySelector('h5');\n const h6 = card.querySelector('h6');\n // Use h5 if it exists, otherwise use h6\n const heading = h5 || h6;\n\n if (link && heading) {\n const newAriaLabel = `TRS - ${heading.textContent.trim()}`;\n link.setAttribute(\"role\", \"button\");\n link.setAttribute('aria-label', newAriaLabel);\n }else{\n link.setAttribute('aria-label', `TRS Links-${emptycounter}`);\n emptycounter++;\n }\n });\n }\n }\n\n function enhanceButtonAccessibility() {\n const btnPrimaryLinks = document.querySelectorAll('.three-column .btn-wrap .btn-primary');\n if(btnPrimaryLinks){\n btnPrimaryLinks.forEach((link) => {\n if(!link.hasAttribute('href') || link.getAttribute('href').trim() === '') {\n link.setAttribute('tabindex', '0');\n link.setAttribute('role', 'button');\n link.setAttribute('aria-label', 'TRS Learn More Button');\n } else {\n link.setAttribute('aria-label', 'TRS Learn More Button');\n }\n });\n }\n }\n \n \n function observeAndSetRoleAttributes() {\n const observer = new MutationObserver(() => {\n setRoleAttributeForColThreeSlides();\n setRoleAttributeForTabBoxSlides();\n\t\t setRoleAttributeForsliderWrap();\n addAriaLabelToSVG();\n setAriaLabelsforCategories();\n updateAriaLabelsWithTitles();\n enhanceButtonAccessibility();\n });\n observer.observe(document, { childList: true, subtree: true });\n }\n\n observeAndSetRoleAttributes();\n\n\n function addAriaLabelToViewMore() {\n const button = document.querySelector('.button-wrapper .btn-primary');\n if (button) {\n button.setAttribute('aria-label', 'TRS - Clicked here to View More');\n }\n }\n addAriaLabelToViewMore();\n\n function addAriaLabelToSocialLinks() {\n const socialLinks = document.querySelectorAll('#we-trs-footer .social-wrapper .social-links a');\n if (socialLinks.length > 0) {\n socialLinks.forEach(function(link) {\n const href = link.getAttribute('href');\n if (href.includes('facebook.com')) {\n link.setAttribute('aria-label', 'Go to TRS Facebook page');\n } else if (href.includes('linkedin.com')) {\n link.setAttribute('aria-label', 'Go to TRS LinkedIn page');\n } else if (href.includes('youtube.com')) {\n link.setAttribute('aria-label', 'Go to TRS YouTube page');\n }\n });\n }\n }\n\n function addAriaLabelsForSocialLinks() {\n // Check if the .social-links class exists on the page\n const socialLinksContainer = document.querySelector('.social-links');\n if (!socialLinksContainer) {\n return;\n }\n const socialLinks = socialLinksContainer.querySelectorAll('a');\n socialLinks.forEach(link => {\n const url = link.href;\n let socialMediaName = '';\n \n if (url.includes('facebook.com')) {\n socialMediaName = 'Facebook';\n } else if (url.includes('linkedin.com')) {\n socialMediaName = 'LinkedIn';\n } else if (url.includes('youtube.com')) {\n socialMediaName = 'YouTube';\n }\n if (socialMediaName) {\n link.setAttribute('aria-label', `Go to ${socialMediaName} Page`);\n }\n });\n }\n \n // Call the function to add aria-labels\n addAriaLabelsForSocialLinks();\n\n // Function to add aria-label to menu links\n function addAriaLabelToMenuLinks() {\n const menuLinks = document.querySelectorAll('#we-trs-footer .outer-wrapper .col-wrap .menu a');\n if (menuLinks.length > 0) {\n menuLinks.forEach(function(link) {\n const linkText = link.innerText.trim(); \n link.setAttribute('aria-label', `Go to TRS ${linkText} page`);\n });\n }\n }\n\n // Check if social links and menu links are present, then execute the functions\n const socialLinks = document.querySelectorAll('.social-links a');\n const menuLinkss = document.querySelectorAll('.menu a');\n \n if (socialLinks.length > 0 && menuLinkss.length > 0) {\n addAriaLabelToSocialLinks();\n addAriaLabelToMenuLinks();\n }\n\n function addAriaLabelToProductLinks() {\n var productDetails = document.querySelectorAll('.product-detail');\n if(productDetails.length > 0){\n productDetails.forEach(function(productDetail) {\n var productNameElement = productDetail.querySelector('h5');\n var productLink = productDetail.querySelector('a');\n if (productNameElement && productLink) {\n var productName = productNameElement.textContent.trim();\n var formattedProductName = productName.replace(/\\s+/g, '-'); \n var ariaLabel = 'Learn more about ' + formattedProductName;\n productLink.setAttribute('aria-label', ariaLabel);\n }\n });\n }\n }\n // Call the function to apply aria-labels to the links\n addAriaLabelToProductLinks();\n\n function addAriaLabelsToAlphabetLinks() {\n var links = document.querySelectorAll('.wrapper .container ul li a');\n links.forEach(function(link) {\n var linkText = link.textContent.trim();\n if (linkText) {\n var ariaLabel = 'Go to manufacturer list that start with - ' + linkText;\n link.setAttribute('aria-label', ariaLabel);\n }\n });\n }\n // Call the function to add aria-labels\n addAriaLabelsToAlphabetLinks();\n\n function addAriaLabelsToManufacturerLinks() {\n setTimeout(function() {\n var manufacturerDivs = document.querySelectorAll('.col-four.full-card-hover a');\n if(manufacturerDivs.length > 0){\n manufacturerDivs.forEach(function(link) {\n var linkHref = link.getAttribute('href'); // Get the href attribute\n if (linkHref && linkHref.includes('/manufacturers/')) {\n var manufacturerName = linkHref.split('/manufacturers/')[1]; // Get the part after '/manufacturers/'\n var ariaLabel = 'Go to this Manufacturers-' + manufacturerName + ' Page';\n link.setAttribute('aria-label', ariaLabel);\n }\n });\n }\n }, 5000); // Add a delay of 500ms\n }\n\n addAriaLabelsToManufacturerLinks();\n\n function addAriaLabelsToProductLinks() {\n setTimeout(function() {\n var productCards = document.querySelectorAll('.card');\n if(productCards.length > 0){\n productCards.forEach(function(card) {\n var linkElement = card.querySelector('a.empty-link');\n var productNameElement = card.querySelector('h6');\n var productName = productNameElement ? productNameElement.textContent.trim() : 'Product';\n if(linkElement && !linkElement.hasAttribute('aria-label')) {\n var ariaLabel = 'Product - ' + productName;\n linkElement.setAttribute('aria-label', ariaLabel);\n }\n });\n }\n }, 5000);\n }\n // Call the function to add aria-labels with a delay\n addAriaLabelsToProductLinks();\n\n function addAriaLabelsToProductsLinks() {\n setTimeout(function() {\n const productCards = document.querySelectorAll(\".col-four.full-card-hover\");\n // Check if productCards exists and has elements\n if (productCards.length > 0) {\n productCards.forEach((card) => {\n const link = card.querySelector(\"a.empty-link\");\n const heading = card.querySelector(\"h6\");\n if (link && heading) {\n const ariaLabel = heading.textContent.trim();\n link.setAttribute(\"aria-label\", ariaLabel);\n }\n });\n }\n }, 5000);\n }\n\n addAriaLabelsToProductsLinks();\n\n function addAriaLabelsToCheckboxes() {\n var checkboxes = document.querySelectorAll('.ais-RefinementList-checkbox');\n if (checkboxes.length > 0) {\n checkboxes.forEach(function(checkbox) {\n var checkboxValue = checkbox.value;\n var ariaLabel = 'TRS-' + checkboxValue;\n checkbox.setAttribute('aria-label', ariaLabel);\n });\n }\n }\n\n addAriaLabelsToCheckboxes();\n\n function addAriaLabels() {\n // Handle Learn More links (based on H4 text in .col-three)\n var serviceDivs = document.querySelectorAll('.col-three');\n if (serviceDivs.length > 0) {\n serviceDivs.forEach(function(serviceDiv) {\n var headingElement = serviceDiv.querySelector('h4'); \n var serviceLink = serviceDiv.querySelector('.btn-wrap a'); \n if (headingElement && serviceLink) {\n var headingText = headingElement.textContent.trim(); \n var ariaLabel = 'Learn More about ' + headingText; \n serviceLink.setAttribute('aria-label', ariaLabel);\n }\n });\n }\n // Handle PDF links (based on H6 text in .content-wrap)\n var pdfDivs = document.querySelectorAll('.col-three.full-card-hover');\n if (pdfDivs.length > 0) {\n pdfDivs.forEach(function(pdfDiv) {\n var headingElement = pdfDiv.querySelector('.content-wrap h6'); \n var pdfLink = pdfDiv.querySelector('a.empty-link'); \n if (headingElement && pdfLink) {\n var headingText = headingElement.textContent.trim(); \n var ariaLabel = 'Read more about ' + headingText; \n pdfLink.setAttribute('aria-label', ariaLabel); \n }\n });\n }\n }\n\n // Call the function to apply aria-labels to all relevant links\n addAriaLabels();\n\n function addCustomAriaLabels() {\n // Define an object with URL to aria-label mappings\n var ariaLabels = {\n '/contact-us': 'Contact Us - Get in Touch with Our Team',\n '/manufacturers': 'Browse All Manufacturers - Explore Our List of Manufacturers',\n '/solutions/5g-test-solutions': 'Explore Now - Learn More About 5G Test Solutions',\n '/manufacturers/buy-or-rent-fluke-networks/fluke-networks-test-equipment#rent-or-lease': 'Go to Fluke Networks - Rent or Lease Test Equipment',\n '/manufacturers/buy-or-rent-keysight-technologies/keysight-technologies-test-equipment#rent-or-lease': 'Go to Keysight Technologies - Rent or Lease Test Equipment',\n '/why-trsrentelco' : 'Go to Why TRS Rentelco Page',\n '/resources/tco-calculator' : 'Go to Resources calculator page'\n };\n var links = document.querySelectorAll('.btn-wrap a, a.empty-link');\n links.forEach(function(link) {\n var linkHref = link.getAttribute('href');\n if (ariaLabels[linkHref]) {\n link.setAttribute('aria-label', ariaLabels[linkHref]);\n }\n });\n }\n\n // Call the function to apply custom aria-labels to the links\n addCustomAriaLabels();\n\n function addAriaLabelsToProductCards() {\n var productCards = document.querySelectorAll('.img-with-text.full-card-hover');\n var relatedProductsCounter = 1; \n if(productCards.length > 0){\n productCards.forEach(function(card) {\n var link = card.querySelector('a.empty-link');\n var productNameElement = card.querySelector('h4');\n var productDetailsElement = card.querySelector('h5');\n if (link && productNameElement && productDetailsElement) {\n var productName = productNameElement.textContent.trim();\n var productDetails = productDetailsElement.textContent.trim();\n var ariaLabel = productName + ' - ' + productDetails;\n link.setAttribute('aria-label', ariaLabel);\n }else{\n var fallbackLabel = `Related Products-${relatedProductsCounter}`;\n link.setAttribute('aria-label', fallbackLabel);\n relatedProductsCounter++;\n }\n });\n }\n }\n // Call the function to apply the aria-labels to the product links\n addAriaLabelsToProductCards();\n\n function setAccessibleButtonName(buttonClass, defaultLabel) {\n var buttons = $(buttonClass);\n buttons.each(function () {\n var button = $(this);\n var buttonText = button.find('span').text().trim();\n if (!button.attr('aria-label') || buttonText === \".\") {\n button.attr('aria-label', defaultLabel);\n }\n });\n }\n \n setAccessibleButtonName('.submit-btn', 'Sign up submit button');\n \n function addAriaLabelsForBlockTRSContent() {\n var blockContent = $('#block-trs-content');\n if (blockContent.length) {\n blockContent.find('a').each(function () {\n var $this = $(this);\n if (!$this.attr('aria-label')) {\n var href = $this.attr('href');\n if (href) {\n var cleanedHref = href.replace(/[^a-zA-Z0-9]/g, ' ');\n cleanedHref = cleanedHref.replace(/\\s+/g, ' ').trim();\n var ariaLabel = cleanedHref;\n $this.attr('aria-label', ariaLabel);\n }\n }\n });\n }\n }\n\n addAriaLabelsForBlockTRSContent();\n\n function addAriaLabelsForEmptyLinks() {\n var btnLinks = document.querySelectorAll('.btn-wrap a');\n if(btnLinks.length > 0){\n btnLinks.forEach(function (link) {\n if (!link.getAttribute('href') || link.getAttribute('href') === '') {\n if (!link.getAttribute('aria-label')) {\n link.setAttribute('aria-label', 'Empty Link');\n }\n }\n });\n }\n }\n addAriaLabelsForEmptyLinks();\n \n function show(element) {\n $(element).css({ opacity: 1 });\n }\n\n $(window).on('load', function () {\n show('header .main-nav nav');\n show('header .main-nav .btn-outer');\n show('header .top-nav .row');\n });\n\n if ($(navItems).length) {\n $(navItems).each(function () {\n if ($(this).find('.dropdown-menu').length) {\n $(this).addClass('with-dropdown');\n }\n\n if ($(this).find('.menu-tabs').length) {\n $(this).addClass('has-menu-tabs');\n\n var firstMenuLink = $(this).find('.menu-links').first();\n var menuLinkWidth = $(firstMenuLink).innerWidth();\n var dropdownOffsetLeft = (menuLinkWidth / 2) * -1 + 'px';\n\n $(this).find('.menu-box').css('left', dropdownOffsetLeft);\n }\n });\n\n $colThreeContent.each(function () {\n if (this.childElementCount === 0) {\n $(this).addClass('blank-element');\n }\n });\n }\n\n var navItemsWithDropdown = 'header .main-nav nav > ul > li.with-dropdown';\n\n if ($(navItemsWithDropdown).length) {\n $(navItemsWithDropdown).on({\n mouseenter: function () {\n if ($(window).width() > 991) {\n $('body').addClass('stop-scroll');\n\n $(this).siblings().removeClass('active-nav').find('.dropdown-menu.open').removeClass('open');\n $(this).addClass('active-nav').find('.dropdown-menu').addClass('open');\n }\n },\n mouseleave: function () {\n $('body').removeClass('stop-scroll');\n if ($(window).width() > 991) {\n $(this).find('.menu-links ul li').removeClass('active');\n $(this).removeClass('active-nav').find('.dropdown-menu').removeClass('open');\n\n if ($(this).find('.menu-tabs').length) {\n $(this).find('.menu-tabs').removeClass('show').find('.tab-panel').removeClass('active');\n\n var firstMenuLink = $(this).find('.menu-links').first();\n var menuLinkWidth = $(firstMenuLink).innerWidth();\n var dropdownOffsetLeft = (menuLinkWidth / 2) * -1 + 'px';\n\n $(this).find('.menu-box').css('left', dropdownOffsetLeft);\n\n $('body').removeClass('stop-scroll');\n }\n }\n },\n click: function () {\n if ($(window).width() <= 991) {\n $('body').toggleClass('stop-scroll');\n $(this).siblings().removeClass('active-nav ').find('.dropdown-menu.open').removeClass('open');\n $(this).toggleClass('active-nav');\n $(this).find('.dropdown-menu').toggleClass('open');\n $(this).find('.dropdown-menu .menu-tabs').first().addClass('show');\n }\n },\n });\n }\n\n //Active nav on load\n var path = window.location.pathname;\n $('header nav ul li a[href=\"' + path + '\"]')\n .parents('.with-dropdown')\n .eq(0)\n .addClass('active-menu');\n\n //Click prevent below <1335\n if ($(window).width() <= 1335) {\n $(navItemsWithDropdown + ' > a').on('click', function (e) {\n e.preventDefault();\n });\n }\n\n // //products menuLinks click preventDefault\n if ($(window).width() < 992) {\n $(\n 'header .main-nav nav > ul > li.products .dropdown-menu .menu-links .white-circle-link a, header .main-nav nav > ul > li.products .dropdown-menu .menu-links .black-circle-link a'\n ).on('click', function (e) {\n e.preventDefault();\n });\n }\n\n var dropdownMenu = 'header .main-nav nav > ul > li.with-dropdown .dropdown-menu';\n\n if ($(dropdownMenu).length) {\n $(dropdownMenu).on('click', function (event) {\n event.stopPropagation();\n });\n }\n\n var menuLinks = 'header .dropdown-menu .menu-links > ul > li';\n\n if ($(menuLinks).length) {\n $(menuLinks).on({\n mouseenter: function () {\n if ($(window).width() > 991) {\n if (!$(this).hasClass('active')) {\n $(this).siblings().removeClass('active');\n $(this).addClass('active');\n\n var adjMenuTabs = $(this).closest('.menu-links').siblings('.menu-tabs');\n var tabId = this.dataset.tabId;\n\n if (tabId) {\n $(adjMenuTabs).find('.menu-links ul li').removeClass('active');\n\n var firstMenuLink = $(this).closest('.dropdown-menu').find('.menu-links').first();\n var menuLinkWidth = $(firstMenuLink).innerWidth();\n\n if ($(window).width() >= 768) {\n var dropdownOffsetLeft = menuLinkWidth * -1 + 'px';\n\n $(this).closest('.menu-box').animate(\n {\n left: dropdownOffsetLeft,\n },\n 200\n );\n } else {\n var prevOffsetLeft = parseInt($(this).closest('.menu-box').css('left'), 10);\n var dropdownOffsetLeft = menuLinkWidth * -1 + prevOffsetLeft + 'px';\n\n $(this).closest('.menu-box').animate(\n {\n left: dropdownOffsetLeft,\n },\n 200\n );\n }\n\n $(adjMenuTabs).addClass('show');\n $(adjMenuTabs).find('.tab-panel').removeClass('active');\n $(adjMenuTabs)\n .find('.tab-panel#' + tabId)\n .addClass('active');\n } else {\n $(adjMenuTabs).find('.menu-links ul li').removeClass('active');\n $(adjMenuTabs).find('.tab-panel').removeClass('active');\n $(adjMenuTabs).removeClass('show');\n }\n }\n }\n },\n click: function () {\n if ($(window).width() > 991) {\n if (!$(this).hasClass('active') && $(this).closest('.menu-links').hasClass('sub-menu-links')) {\n $(this).siblings().removeClass('active');\n $(this).addClass('active');\n\n var adjMenuTabs = $(this).closest('.menu-links').siblings('.menu-tabs');\n var tabId = this.dataset.tabId;\n\n if (tabId) {\n $(adjMenuTabs).find('.menu-links ul li').removeClass('active');\n\n var firstMenuLink = $(this).closest('.dropdown-menu').find('.menu-links').first();\n var menuLinkWidth = $(firstMenuLink).innerWidth();\n\n if ($(window).width() >= 768) {\n var dropdownOffsetLeft = menuLinkWidth * -1 + 'px';\n\n $(this).closest('.menu-box').animate(\n {\n left: dropdownOffsetLeft,\n },\n 200\n );\n } else {\n var prevOffsetLeft = parseInt($(this).closest('.menu-box').css('left'), 10);\n var dropdownOffsetLeft = menuLinkWidth * -1 + prevOffsetLeft + 'px';\n\n $(this).closest('.menu-box').animate(\n {\n left: dropdownOffsetLeft,\n },\n 200\n );\n }\n\n $(adjMenuTabs).addClass('show');\n $(adjMenuTabs).find('.tab-panel').removeClass('active');\n $(adjMenuTabs)\n .find('.tab-panel#' + tabId)\n .addClass('active');\n } else {\n $(adjMenuTabs).find('.menu-links ul li').removeClass('active');\n $(adjMenuTabs).find('.tab-panel').removeClass('active');\n $(adjMenuTabs).removeClass('show');\n }\n }\n }\n\n if ($(window).width() <= 991) {\n if (\n $(this).closest('.with-dropdown').hasClass('manufacturers') ||\n $(this).closest('.with-dropdown').hasClass('solutions')\n ) {\n return;\n }\n\n $(this).siblings().removeClass('active');\n $(this).addClass('active');\n\n var adjMenuTabs = $(this).closest('.menu-links').siblings('.menu-tabs');\n var tabId = this.dataset.tabId;\n\n if (tabId) {\n $(adjMenuTabs).find('.menu-links ul li').removeClass('active');\n\n var firstMenuLink = $(this).closest('.dropdown-menu').find('.menu-links').first();\n var menuLinkWidth = $(firstMenuLink).innerWidth();\n\n $(adjMenuTabs).addClass('show');\n $(adjMenuTabs).find('.tab-panel').removeClass('active');\n $(adjMenuTabs)\n .find('.tab-panel#' + tabId)\n .addClass('active');\n\n if (!$(this).closest('ul').hasClass('featured-links')) {\n var prevOffsetLeft = parseInt($(this).closest('.menu-box').css('left'), 10);\n var dropdownOffsetLeft = prevOffsetLeft + menuLinkWidth * -1 + 'px';\n var dropdownHeight = $(adjMenuTabs).outerHeight();\n\n $(this).closest('.menu-box').animate(\n {\n left: dropdownOffsetLeft,\n height: dropdownHeight,\n },\n 200\n );\n }\n } else {\n $(adjMenuTabs).find('.menu-links ul li').removeClass('active');\n $(adjMenuTabs).find('.tab-panel').removeClass('active');\n // $(adjMenuTabs).removeClass(\"show\");\n }\n }\n },\n });\n }\n\n var goBack = 'header .dropdown-menu .menu-links .back-btn';\n\n $(goBack).on('click', function () {\n var currMenuLink = $(this).closest('.menu-links');\n var prevMenuLink = $(this).closest('.menu-tabs').siblings('.menu-links');\n var menuLinkWidth = $(currMenuLink).innerWidth();\n var prevOffsetLeft = parseInt($(this).closest('.menu-box').css('left'), 10);\n var dropdownOffsetLeft = prevOffsetLeft + menuLinkWidth + 'px';\n var dropdownHeight = $(prevMenuLink).outerHeight();\n\n $(this)\n .closest('.menu-box')\n .animate(\n {\n left: dropdownOffsetLeft,\n height: dropdownHeight,\n },\n 200,\n function () {\n $(currMenuLink).closest('.tab-panel').removeClass('active');\n }\n );\n });\n\n var winWidth = $(window).width();\n $(window).on('resize', function () {\n winWidth = $(window).width();\n //close dropdown\n $(navItemsWithDropdown)\n .siblings()\n .removeClass('active-nav')\n .find('.dropdown-menu.open')\n .removeClass('open');\n $('header li.has-menu-tabs .menu-box').removeAttr('style');\n if (winWidth <= 991) {\n $('body').removeClass('stop-scroll');\n $('header .main-nav nav').slideUp();\n $('header .hamburger').removeClass('active');\n header.removeClass('hide-utility-nav');\n }\n });\n\n /**\n * Header Scroll Functionality\n */\n\n var mainNavMenu = 'header .main-nav nav > ul > li.has-dropdown';\n var prevScrollPos = $(window).scrollTop();\n var header = $('header');\n const headerDiv = document.querySelector('header');\n const srchOverlay = document.querySelector('.search-overlay');\n var winWidth = $(window).width();\n var utilityNavBottomPos = 0;\n if (header.length) {\n utilityNavBottomPos = $('header .top-nav').position().top + $('header .top-nav').outerHeight();\n }\n var stickyNav = $('.sticky-nav');\n $(window).on('scroll', function () {\n var currentScrollPos = $(window).scrollTop();\n\n if (currentScrollPos > prevScrollPos && currentScrollPos > 0) {\n // we are scrolling down\n header.addClass('hide-nav');\n $('body').removeClass('scrolling-up').addClass('scrolling-down');\n stickyNav.removeClass('nav-show');\n } else if (currentScrollPos < prevScrollPos && currentScrollPos < utilityNavBottomPos) {\n // we are scrolling up and touched utility nav\n if (currentScrollPos <= 130) {\n header.removeClass('fixed hide-utility-nav');\n }\n header.removeClass('hide-nav hide-utility-nav');\n stickyNav.addClass('nav-show');\n } else if (currentScrollPos < prevScrollPos) {\n // we are scrolling up\n\n header.removeClass('hide-nav relative').addClass('hide-utility-nav fixed');\n setTimeout(function () {\n headerDiv.classList.remove('search-clicked');\n $('.aa-Panel').remove();\n if (winWidth <= 991) {\n srchOverlay.style.display = \"none\";\n } \n }, 500);\n $('body').removeClass('scrolling-down').addClass('scrolling-up');\n stickyNav.addClass('nav-show');\n }\n prevScrollPos = currentScrollPos;\n $(mainNavMenu).find('.sub-menu').removeClass('active');\n });\n\n var searchOverlay = '.search-overlay';\n var searchBtn = 'header .search-btn';\n var searchInput = 'header .search-box input.ais-SearchBox-input.aa-input';\n var resetClear = '#globalsearchbox .aa-ClearButton';\n const headers = document.querySelector('header');\n const searchOverlays = document.querySelector('.search-overlay');\n var windowWidth = $(window).width();\n const cookieValue = document.cookie.split('; ').find((row) => row.startsWith('_ALGOLIA='))?.split('=')[1];\n var getval = localStorage.getItem(\"searchIMG\",cookieValue);\n if (getval == undefined || getval == null ) {\n $('.search-btn').addClass('show-newIcon');\n } else if(localStorage.getItem(\"searchIMG\",cookieValue) == 0){\n $('.search-btn').removeClass('show-newIcon');\n }else {\n $('.search-btn').addClass('show-newIcon');\n }\n $(window).resize(function() {\n $(resetClear).on('click',function(e){\n if (windowWidth >= 991) {\n setTimeout(function () {\n $('.aa-Panel').remove();\n headers.classList.remove('search-clicked');\n }, 100);\n } else {\n setTimeout(function () {\n $('.aa-Panel').remove();\n headers.classList.remove('search-clicked');\n searchOverlays.style.display = \"none\";\n }, 200);\n }\n });\n });\n\n $(searchBtn).on('click', function () {\n $('.search-btn').removeClass('show-newIcon');\n localStorage.setItem(\"searchIMG\", '0');\n if($(\"#globalsearchbox .aa-DetachedSearchButton\").length == 1){\n $(\"#globalsearchbox .aa-DetachedSearchButton\").trigger(\"click\");\n }\n setTimeout(function () {\n $('#globalsearchbox .aa-Input').focus();\n if($(\".aa-DetachedFormContainer .aa-DetachedCancelButton\").length == 1){\n $(\".aa-DetachedFormContainer .aa-DetachedCancelButton\").on('click',function(e){\n headers.classList.remove('search-clicked');\n });\n }\n }, 200);\n \n if (winWidth <= 991) {\n $(searchOverlay).fadeIn();\n $('body').css({ position: 'relative' });\n }\n $('header').addClass('search-clicked');\n if ($('.hamburger').hasClass('active')) {\n $('.hamburger').removeClass('active');\n }\n });\n\n // $(searchBtn).on('click', function () {\n // setTimeout(function () {\n // $('#globalsearchbox .ais-SearchBox-input').focus();\n // }, 100);\n // if (winWidth <= 991) {\n // $(searchOverlay).fadeIn();\n // $('body').css({ position: 'relative' });\n // }\n // $('header').addClass('search-clicked');\n // if ($('.hamburger').hasClass('active')) {\n // $('.hamburger').removeClass('active');\n // }\n // });\n\n $(searchOverlay).on('click', function () {\n if (winWidth <= 991) {\n $(searchInput).val('');\n $(searchOverlay).fadeOut();\n $('header').removeClass('search-clicked');\n } else {\n $(searchInput).val('');\n $('header').removeClass('search-clicked');\n }\n });\n\n /**\n * Hamburger functionality\n */\n var navLink = 'header .main-nav .row nav > ul > li';\n var navMenu = 'header .main-nav .row nav';\n var toggleBtn = 'header .main-nav .row .hamburger';\n $(toggleBtn).on('click', function () {\n $(this).toggleClass('active');\n if ($(this).hasClass('active')) {\n if ($('header').hasClass('search-clicked')) {\n $('header').removeClass('search-clicked');\n }\n $(navMenu).fadeIn(function () {\n $('body').addClass('stop-scroll');\n });\n } else {\n $(navMenu).fadeOut(function () {\n $('body').removeClass('stop-scroll');\n $(navLink).removeClass('no-border');\n $('header .main-nav .row nav > ul > li > .nav-links').removeClass('active');\n $('.sub-menu.active').removeClass('active');\n });\n }\n });\n\n $(function () {\n $(\n 'header .products a, header .products h6, header .products p, header .manufacturers a, header .manufacturers h6, header .manufacturers p'\n ).each(function () {\n $(this).html($(this).html().replace(/&/g, '&'));\n });\n\n // Workaround to align Products dropdown [links] and [green-arrow-with-line] with each other.\n $('header .products .tab-panel > .menu-links ul li a').each(function () {\n var maxLength = 22;\n\n if ($(this).text().trim().length > maxLength) {\n var prevLength = 0;\n var isBreakAdded = false;\n\n var newLine = $(this).text().trim().split(' ').map(function(word) {\n if (((word.length + prevLength) > maxLength) && !isBreakAdded) {\n isBreakAdded = true;\n prevLength += word.length;\n return ('
' + word);\n } else {\n prevLength += word.length;\n return word;\n }\n }).join(' ');\n\n $(this).empty().html(newLine);\n }\n });\n });\n\n function updateBreadcrumbAriaLabelsAndTabindex() {\n // Select all breadcrumb sections\n const breadcrumbs = document.querySelectorAll(\".sticky-breadcrumb .content-wrapper\");\n\n if (breadcrumbs) {\n breadcrumbs.forEach(breadcrumb => {\n const links = breadcrumb.querySelectorAll(\".content a\");\n\n if (links) {\n links.forEach((link, index) => {\n let ariaLabel = \"\";\n if (link.hasAttribute(\"href\")) {\n const href = link.getAttribute(\"href\");\n if (href === \"\") {\n const currentPath = window.location.pathname.replace(/[^a-zA-Z0-9\\-]/g, \" \").trim();\n ariaLabel = `TRS - ${currentPath}`;\n } else {\n const cleanedLabel = href.replace(/[^a-zA-Z0-9\\-]/g, \" \").trim();\n ariaLabel = `TRS - ${cleanedLabel}`;\n }\n\n link.setAttribute(\"aria-label\", ariaLabel);\n }\n \n if (index === links.length - 1) {\n link.setAttribute(\"tabindex\", \"0\");\n link.setAttribute(\"role\", \"button\");\n }\n });\n }\n });\n }\n}\nupdateBreadcrumbAriaLabelsAndTabindex();\n\n\n\n\nfunction addAriaLabelToShowPdfSection() {\n const buttons = document.querySelectorAll('.show-pdf-section object p a');\n const ariaLabelCounts = {};\n\n buttons.forEach((button, index) => {\n const baseLabel = 'TRS - Resource PDF';\n let ariaLabel = baseLabel;\n if (ariaLabelCounts[ariaLabel] !== undefined) {\n ariaLabelCounts[ariaLabel]++;\n ariaLabel = `${baseLabel}-${ariaLabelCounts[ariaLabel]}`;\n } else {\n ariaLabelCounts[ariaLabel] = 0;\n }\n button.setAttribute('aria-label', ariaLabel);\n });\n}\n\naddAriaLabelToShowPdfSection();\n\nfunction addAccessibleNameToObjects() {\n const objects = document.querySelectorAll('object:not([aria-label]):not([title])');\n if(objects){\n objects.forEach(object => {\n const dataUrl = object.getAttribute('data');\n if (dataUrl) {\n const fileName = dataUrl.substring(dataUrl.lastIndexOf('/') + 1).replace('.pdf', '');\n object.setAttribute('aria-label', `PDF : ${fileName}`);\n }\n });\n }\n}\n\naddAccessibleNameToObjects();\n\n\n// function addAriaLabelsToLinks() {\n// setTimeout(() => {\n// const textLinks = document.querySelectorAll('a.text-link');\n// if (textLinks.length > 0) {\n// textLinks.forEach(function(link) {\n// const spanText = link.querySelector('span')?.textContent;\n// if (spanText) {\n// link.setAttribute('aria-label', spanText);\n// }\n// });\n// } \n// }, 2000);\n// }\n// addAriaLabelsToLinks();\n\nfunction addAriaLabelsToNavLinks() {\n const navLinks = document.querySelectorAll('.main-nav nav ul li a');\n const labelCounter = {};\n \n if (navLinks.length > 0) {\n navLinks.forEach(function(link) {\n const linkText = link.textContent.trim();\n \n if (linkText) {\n if (!labelCounter[linkText]) {\n labelCounter[linkText] = 0;\n }\n labelCounter[linkText]++;\n const uniqueLabel = labelCounter[linkText] > 1 \n ? `${linkText} -${labelCounter[linkText] - 1}` \n : linkText;\n link.setAttribute('aria-label', uniqueLabel);\n }\n });\n } \n}\n\naddAriaLabelsToNavLinks();\n\nfunction updateAriaLabels() {\n const menuItems = document.querySelectorAll('.main-sticky-menu a[aria-label]');\n if(menuItems){\n menuItems.forEach(item => {\n const currentLabel = item.getAttribute('aria-label');\n if (currentLabel) {\n item.setAttribute('aria-label', `sticky-menu-${currentLabel}`);\n }else {\n const linkText = item.textContent.trim();\n if (linkText) {\n item.setAttribute('aria-label', `TRS-sticky-menu-${linkText}`);\n }\n }\n });\n }\n}\n\nupdateAriaLabels();\n\nfunction updateAriaLabelsWithUniqueness() {\n const textLinks = document.querySelectorAll('.partner-resources .container .content-wrapper .item .text-link');\n const ariaLabelTracker = new Map();\n textLinks.forEach(link => {\n const span = link.querySelector('span');\n if (span && span.textContent.trim()) {\n let baseLabel = span.textContent.trim();\n let uniqueLabel = baseLabel;\n let count = ariaLabelTracker.get(baseLabel) || 0;\n if (count > 0) {\n uniqueLabel = `${baseLabel}-${count + 1}`;\n }\n link.setAttribute('aria-label', uniqueLabel);\n ariaLabelTracker.set(baseLabel, count + 1);\n }\n });\n}\n\nupdateAriaLabelsWithUniqueness();\n\nfunction addAriaLabelsToRadioButtons() {\n // Select all radio buttons\n const radioButtons = document.querySelectorAll('input[type=\"radio\"]');\n if(radioButtons){\n radioButtons.forEach((radio) => {\n if (!radio.hasAttribute('aria-label')) {\n const nameField = radio.getAttribute('name') || 'Radio button';\n const valueField = radio.getAttribute('value') || 'Value';\n if (nameField || valueField) {\n radio.setAttribute('aria-label', `TRS - ${nameField} - ${valueField}`);\n } else {\n radio.setAttribute('aria-label', 'TRS - Radio Option');\n }\n }\n });\n }\n}\n\naddAriaLabelsToRadioButtons();\n\n\nfunction makeLinksAccessible() {\n const links = document.querySelectorAll('a.play-icon');\n\n links.forEach(link => {\n if (!link.hasAttribute('href')) {\n link.setAttribute('tabindex', '0');\n link.setAttribute('role', 'button');\n if (!link.hasAttribute('aria-label')) {\n const dataSrc = link.getAttribute('data-src');\n const label = dataSrc ? `Play video from ${dataSrc}` : 'Play video';\n link.setAttribute('aria-label', label);\n }\n }\n });\n}\n\n// Call the function\nmakeLinksAccessible();\n\n\n})(jQuery);\n","(function () {\n var lottieAnimation = document.getElementsByClassName('lottie'),\n lottieBox = document.getElementsByClassName('lottie-box'),\n lottieRegisteredAnim = [];\n\n // Set up lottie animations\n // Add index class to each lottie element\n // Register each lottie animation\n // Create a waypoint to trigger the animation\n function preLoadAnim() {\n for (var i = 0; i < lottieAnimation.length; i++) {\n lottieAnimation[i].classList.add(i);\n lottieRegisteredAnim.push(lottie.registerAnimation(lottieAnimation[i]));\n var waypoint = new Waypoint({\n element: lottieAnimation[i],\n handler: function (direction) {\n // Only trigger play if element is hidden\n if (this.element.style.visibility != 'visible') {\n // Array index to play is the last class added to the element\n var animIndex = this.element.classList.length - 1;\n playAnimations(this.element.classList[animIndex]);\n }\n },\n // View offset from top for scrolling to trigger animation\n offset: '85%',\n });\n }\n }\n\n // Get the data-loop-frame attribute and duration\n // Play the first segment, and then keep playing\n // from the loop segment after that\n // @param arrayPos (int) index of the animation to play\n function playAnimations(arrayPos) {\n var loopFrame = parseInt(lottieAnimation[arrayPos].getAttribute('data-loop-frame')) || 1,\n animDelay = parseFloat(lottieAnimation[arrayPos].getAttribute('data-delay') * 1000) || 0,\n thisDuration;\n // Make sure animation duration is defined before playing\n var interval = setInterval(function () {\n thisDuration = lottieRegisteredAnim[arrayPos].getDuration(true);\n if (thisDuration > 0) {\n clearInterval(interval);\n setTimeout(function () {\n lottieAnimation[arrayPos].style.visibility = 'visible';\n if (lottieBox[arrayPos] !== undefined) {\n lottieBox[arrayPos].style.visibility = 'visible';\n lottieBox[arrayPos].classList.add('reveal-anim');\n }\n lottieRegisteredAnim[arrayPos].playSegments(\n [\n [0, loopFrame],\n [loopFrame + 1, thisDuration],\n ],\n true\n );\n }, animDelay);\n } else {\n clearInterval(interval);\n setTimeout(function () {\n lottieAnimation[arrayPos].style.visibility = 'visible';\n if (lottieBox[arrayPos] !== undefined) {\n lottieBox[arrayPos].style.visibility = 'visible';\n lottieBox[arrayPos].classList.add('reveal-anim');\n }\n }, animDelay);\n }\n }, 1000);\n }\n\n window.addEventListener('load', function () {\n preLoadAnim();\n });\n})();\n"],"sourceRoot":"../../assets/scripts/global/"}