1/*! cmsmasters-elementor-addon - v1.19.1 - 03-11-2025 */ 2"use strict";(self.webpackChunkcmsmasters_elementor_addon=self.webpackChunkcmsmasters_elementor_addon||[]).push([[605],{2277:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.frontend.handlers.Base{__construct(){super.__construct(...arguments),this.bindElements=[],this.deviceNames=["mobile","tablet","desktop"],this.devicePrefixMaps={mobile:"mobile",tablet:"tablet",desktop:""}}bindElementChange(e,t){this.bindElements.push([e,t])}onElementChange(e){this.bindElements&&this.bindElements.length&&this.bindElements.forEach((t=>{let[i]=t;Array.isArray(i)||(i=i.split(/\s/));const[,s]=t;i.some((t=>{if(-1!==[t,`${t}_tablet`,`${t}_mobile`].indexOf(e))return s(...arguments),!0}))}))}onDestroy(){this.trigger("destroy:before"),super.onDestroy()}getCurrentDeviceSettingInherit(e){const t=["desktop","tablet","mobile"],i=elementorFrontend.getCurrentDeviceMode(),s=this.getElementSettings();let n=t.indexOf(i);for(;n>0;){const i=s[e+"_"+t[n]];if(i&&"object"==typeof i&&Object.prototype.hasOwnProperty.call(i,"size")&&i.size)return i;n--}return s[e]}getCurrentDeviceSettingSize(e){let t=this.getCurrentDeviceSettingInherit(e);return"object"==typeof t&&Object.prototype.hasOwnProperty.call(t,"size")&&(t=t.size),t}}t.default=_default},109:(e,t,i)=>{var s=i(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=s(i(2277));class Marquee extends n.default{getDefaultSettings(){const e={widget:"elementor-widget-cmsmasters-marquee"};return{classes:e,selectors:{wrapper:`.${e.widget}__wrapper`,inner:`.${e.widget}__inner`,cont:`.${e.widget}__cont`,item:`.${e.widget}__item`}}}getDefaultElements(){const{selectors:e}=this.getSettings();return{$window:jQuery(window),$wrapper:this.findElement(e.wrapper),$inner:this.findElement(e.inner)}}bindEvents(){super.bindEvents(),this.elements.$wrapper.on("mouseenter",(()=>this.handleMouseEnter(this))),this.elements.$wrapper.on("mouseleave",(()=>this.handleMouseLeave(this))),this.elements.$window.on("resize",(()=>{const e=window.innerWidth;20<Math.abs(e-this.lastWindowWidth)&&(cancelAnimationFrame(this.animationFrame),this.cloneContent(),this.horizontalOffset(),this.scrollInitialized(),this.lastWindowWidth=e)}))}onInit(){super.onInit(),this.cloneContent(),this.horizontalOffset(),this.scrollInitialized(),this.isInitialized=!0}cloneContent(){const{selectors:e}=this.getSettings(),t=this.elements.$inner[0],i=this.elements.$wrapper[0];this.innerContainer=t;const s=Array.from(t.querySelectorAll(e.cont));if(!s.length)return;t.innerHTML="";const n=document.createDocumentFragment();s.forEach((e=>{n.appendChild(e)})),t.appendChild(n);const r=i.offsetWidth;let o=t.offsetWidth;const a=[];s.forEach((e=>{a.push(e.cloneNode(!0))}));let l=1;for(;o<2*r||l<2;){const e=document.createDocumentFragment();a.forEach((t=>{e.appendChild(t.cloneNode(!0))})),t.appendChild(e),o=t.offsetWidth,l++}}horizontalOffset(){var e,t;const{selectors:i}=this.getSettings(),s=this.getElementSettings(),n=parseFloat(null===(e=s.horizontal_offset)||void 0===e?void 0:e.size);if(this.horizontal_offset=isNaN(n)?0:n,0===this.horizontal_offset)return;const r=this.elements.$wrapper[0],o=this.innerContainer,a=o.querySelector(i.cont);if(!a)return;const l=a.querySelector(i.item);if(!l)return;const h=r.getBoundingClientRect();if(l.getBoundingClientRect().width<=this.horizontal_offset)return;"%"===(null===(t=s.horizontal_offset)||void 0===t?void 0:t.unit)&&(this.horizontal_offset=h.width/100*this.horizontal_offset);let d=this.horizontal_offset;this.direction=s.direction??"left","right"===this.direction&&(d*=-1),o.style.transform=`translate3d(${d}px, 0, 0)`,this.startX=d}scrollInitialized(){const e=this.getElementSettings();"on_page_load"===e.animation_trigger?this.scroll():"on_viewport_enter"===e.animation_trigger&&this.initViewportObserver()}scroll(){var e,t,i,s;const n=this.getElementSettings(),r=parseFloat(null===(e=n.speed)||void 0===e?void 0:e.size);this.speed=30*(isNaN(r)?2:r),this.direction=n.direction??"left","right"===this.direction&&(this.speed=-1*this.speed),this.hoverBehavior=n.hover_behavior?n.hover_behavior:"disable";const o=parseFloat(null===(t=n.hover_speed_modifier)||void 0===t?void 0:t.size);this.speedModifier=isNaN(o)?.5:o;const a=parseFloat(null===(i=n.marquee_item_gap)||void 0===i?void 0:i.size);this.itemGap=isNaN(a)?20:a;const l=parseFloat(null===(s=n.marquee_gap)||void 0===s?void 0:s.size);switch(this.marqueeGap=isNaN(l)?20:l,this.hoverSpeed=this.speed,-1>=this.speedModifier&&(this.speedModifier=-1),this.hoverBehavior){case"pause":this.hoverSpeed=0;break;case"modifier":this.hoverSpeed=this.speed*(1+this.speedModifier)}this.currentSpeed=this.speed,this.animationFrame=null,this.startScrolling()}startScrolling(){if(this.animationFrame)return;const e=this.elements.$wrapper[0],t=this.innerContainer;if(!t)return;let i=this.startX||0,s=performance.now();const n=e.getBoundingClientRect(),r=n.left,o=n.right,scroll=e=>{const n=(e-s)/1e3;s=e;const a=this.currentSpeed*n;i-=a,t.style.transform=`translate3d(${i}px, 0, 0)`;const l=Array.from(t.children)[0];if(!l)return;const h=l.getBoundingClientRect();let d=!1;d="left"===this.direction?h.right+this.marqueeGap<r:h.left-this.marqueeGap>o,d&&(i=0,t.style.transform=`translate3d(${i}px, 0, 0)`),this.animationFrame=requestAnimationFrame(scroll)};this.animationFrame=requestAnimationFrame(scroll)}handleMouseEnter(){this.currentSpeed=this.hoverSpeed}handleMouseLeave(){this.currentSpeed=this.speed}initViewportObserver(){this.viewportObserver=new IntersectionObserver((e=>{e.forEach((e=>{e.isIntersecting?this.currentSpeed=this.speed:this.currentSpeed=0}))}),{root:null,threshold:.1}),this.viewportObserver.observe(this.elements.$wrapper[0]),this.scroll()}onDestroy(){this.animationFrame&&(cancelAnimationFrame(this.animationFrame),this.animationFrame=null),this.viewportObserver&&this.viewportObserver.disconnect(),this.resizeObserver&&this.resizeObserver.disconnect()}}t.default=Marquee}}]);
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.