diff --git a/index.html b/index.html index 94e250d..ec33e6d 100644 --- a/index.html +++ b/index.html @@ -88,16 +88,11 @@
- - - - - diff --git a/package-lock.json b/package-lock.json index b1bcf64..624a5cd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,7 +12,8 @@ "html-react-parser": "^6.1.4", "react": "^19.2.6", "react-dom": "^19.2.6", - "react-router-dom": "^7.17.0" + "react-router-dom": "^7.17.0", + "swiper": "^14.0.5" }, "devDependencies": { "@eslint/js": "^10.0.1", @@ -2442,6 +2443,25 @@ "inline-style-parser": "0.2.7" } }, + "node_modules/swiper": { + "version": "14.0.5", + "resolved": "https://registry.npmjs.org/swiper/-/swiper-14.0.5.tgz", + "integrity": "sha512-SMSKS0sj+lPIFzngfIKb5cyBtzmAuJw7rXgXdyYiDReb+pSpJXuNljHYgT4DXa5Stnl2Ew2/Lam5ipv4PIqZ7A==", + "funding": [ + { + "type": "custom", + "url": "https://sponsors.nolimits4web.com" + }, + { + "type": "github", + "url": "https://github.com/sponsors/nolimits4web" + } + ], + "license": "MIT", + "engines": { + "node": ">= 4.7.0" + } + }, "node_modules/tinyglobby": { "version": "0.2.17", "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.17.tgz", diff --git a/package.json b/package.json index 7fee3a6..6798384 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,8 @@ "html-react-parser": "^6.1.4", "react": "^19.2.6", "react-dom": "^19.2.6", - "react-router-dom": "^7.17.0" + "react-router-dom": "^7.17.0", + "swiper": "^14.0.5" }, "devDependencies": { "@eslint/js": "^10.0.1", diff --git a/public/wp-content/themes/rakar/assets/js/main.js b/public/wp-content/themes/rakar/assets/js/main.js index 752c4c9..02393af 100644 --- a/public/wp-content/themes/rakar/assets/js/main.js +++ b/public/wp-content/themes/rakar/assets/js/main.js @@ -130,40 +130,6 @@ function rakar_content_load_scripts() { }); }); - /*---------- 05. Scroll To Top ----------*/ - if ($('.scroll-top').length > 0) { - - var scrollTopbtn = document.querySelector('.scroll-top'); - var progressPath = document.querySelector('.scroll-top path'); - var pathLength = progressPath.getTotalLength(); - progressPath.style.transition = progressPath.style.WebkitTransition = 'none'; - progressPath.style.strokeDasharray = pathLength + ' ' + pathLength; - progressPath.style.strokeDashoffset = pathLength; - progressPath.getBoundingClientRect(); - progressPath.style.transition = progressPath.style.WebkitTransition = 'stroke-dashoffset 10ms linear'; - var updateProgress = function () { - var scroll = $(window).scrollTop(); - var height = $(document).height() - $(window).height(); - var progress = pathLength - (scroll * pathLength / height); - progressPath.style.strokeDashoffset = progress; - } - updateProgress(); - $(window).scroll(updateProgress); - var offset = 50; - var duration = 750; - jQuery(window).on('scroll', function() { - if (jQuery(this).scrollTop() > offset) { - jQuery(scrollTopbtn).addClass('show'); - } else { - jQuery(scrollTopbtn).removeClass('show'); - } - }); - jQuery(scrollTopbtn).on('click', function(event) { - event.preventDefault(); - jQuery('html, body').animate({scrollTop: 0}, duration); - return false; - }) - } /*---------- 06. Set Background Image Color & Mask ----------*/ if ($("[data-bg-src]").length > 0) { @@ -200,85 +166,6 @@ function rakar_content_load_scripts() { }; - /*----------- 07. Global Slider ----------*/ - $('.th-slider').each(function () { - - var thSlider = $(this); - var settings = $(this).data('slider-options'); - - // Store references to the navigation Slider - var prevArrow = thSlider.find('.slider-prev'); - var nextArrow = thSlider.find('.slider-next'); - var paginationElN = thSlider.find('.slider-pagination.pagi-number'); - var paginationExternel = thSlider.siblings('.slider-controller').find('.slider-pagination'); - - var paginationEl = paginationExternel.length ? paginationExternel.get(0) : thSlider.find('.slider-pagination').get(0); - - var paginationType = settings['paginationType'] ? settings['paginationType'] : 'bullets'; - - var autoplayconditon = settings['autoplay']; - - var sliderDefault = { - slidesPerView: 1, - spaceBetween: settings['spaceBetween'] ? settings['spaceBetween'] : 24, - loop: settings['loop'] == false ? false : true, - speed: settings['speed'] ? settings['speed'] : 1000, - autoplay: autoplayconditon ? autoplayconditon : {delay: 6000, disableOnInteraction: false}, - navigation: { - nextEl: nextArrow.get(0), - prevEl: prevArrow.get(0), - }, - pagination: { - el: paginationEl, - type: paginationType, - clickable: true, - renderBullet: function (index, className) { - var number = index + 1; - var formattedNumber = number < 10 ? '0' + number : number; - if (paginationElN.length) { - return '' + formattedNumber + ''; - } else { - return ''; - } - }, - formatFractionCurrent: function (number) { - if (number < 10) { - return '0' + number; - } else { - return number; - } - }, - formatFractionTotal: function (number) { - if (number < 10) { - return '0' + number; - } else { - return number; - } - } - }, - on: { - slideChange: function() { - setTimeout(function () { - swiper.params.mousewheel.releaseOnEdges = false; - }, 500); - }, - reachEnd: function() { - setTimeout(function () { - swiper.params.mousewheel.releaseOnEdges = true; - }, 750); - } - } - }; - - var options = JSON.parse(thSlider.attr('data-slider-options')); - options = $.extend({}, sliderDefault, options); - var swiper = new Swiper(thSlider.get(0), options); // Assign the swiper variable - - if ($('.slider-area').length > 0) { - $('.slider-area').closest(".container").parent().addClass("arrow-wrap"); - } - - }); // Function to add animation classes function animationProperties() { @@ -294,109 +181,8 @@ function rakar_content_load_scripts() { } animationProperties(); - // Add click event handlers for external slider arrows based on data attributes - $('[data-slider-prev], [data-slider-next]').on('click', function () { - var sliderSelector = $(this).data('slider-prev') || $(this).data('slider-next'); - var targetSlider = $(sliderSelector); - - if (targetSlider.length) { - var swiper = targetSlider[0].swiper; - - if (swiper) { - if ($(this).data('slider-prev')) { - swiper.slidePrev(); - } else { - swiper.slideNext(); - } - } - } - }); - /*-------------- 08. Slider Tab -------------*/ - $.fn.activateSliderThumbs = function (options) { - var opt = $.extend( - { - sliderTab: false, - tabButton: ".tab-btn", - }, - options - ); - - return this.each(function () { - var $container = $(this); - var $thumbs = $container.find(opt.tabButton); - var $line = $('').appendTo($container); - - var sliderSelector = $container.data("slider-tab"); - var $slider = $(sliderSelector); - - var swiper = $slider[0].swiper; - - $thumbs.on("click", function (e) { - e.preventDefault(); - var clickedThumb = $(this); - - clickedThumb.addClass("active").siblings().removeClass("active"); - linePos(clickedThumb, $container); - - clickedThumb.prevAll(opt.tabButton).addClass('list-active'); - clickedThumb.nextAll(opt.tabButton).removeClass('list-active'); - - if (opt.sliderTab) { - var slideIndex = clickedThumb.index(); - swiper.slideTo(slideIndex); - } - }); - - if (opt.sliderTab) { - swiper.on("slideChange", function () { - var activeIndex = swiper.realIndex; - var $activeThumb = $thumbs.eq(activeIndex); - - $activeThumb.addClass("active").siblings().removeClass("active"); - linePos($activeThumb, $container); - - $activeThumb.prevAll(opt.tabButton).addClass('list-active'); - $activeThumb.nextAll(opt.tabButton).removeClass('list-active'); - }); - - var initialSlideIndex = swiper.activeIndex; - var $initialThumb = $thumbs.eq(initialSlideIndex); - $initialThumb.addClass("active").siblings().removeClass("active"); - linePos($initialThumb, $container); - - $initialThumb.prevAll(opt.tabButton).addClass('list-active'); - $initialThumb.nextAll(opt.tabButton).removeClass('list-active'); - } - - function linePos($activeThumb) { - var thumbOffset = $activeThumb.position(); - - var marginTop = parseInt($activeThumb.css('margin-top')) || 0; - var marginLeft = parseInt($activeThumb.css('margin-left')) || 0; - - $line.css("--height-set", $activeThumb.outerHeight() + "px"); - $line.css("--width-set", $activeThumb.outerWidth() + "px"); - $line.css("--pos-y", thumbOffset.top + marginTop + "px"); - $line.css("--pos-x", thumbOffset.left + marginLeft + "px"); - } - }); - }; - - if ($(".testi-box-tab").length) { - $(".testi-box-tab").activateSliderThumbs({ - sliderTab: true, - tabButton: ".tab-btn", - }); - } - - if ($(".product-thumb").length) { - $(".product-thumb").activateSliderThumbs({ - sliderTab: true, - tabButton: ".tab-btn", - }); - } /*----------- 09. Ajax Contact Form ----------*/ @@ -449,49 +235,6 @@ function rakar_content_load_scripts() { midClick: true, }); - /*---------- 12. Section Position ----------*/ - // Interger Converter - function convertInteger(str) { - return parseInt(str, 10); - } - - $.fn.sectionPosition = function (mainAttr, posAttr) { - $(this).each(function () { - var section = $(this); - - function setPosition() { - var sectionHeight = Math.floor(section.height() / 2), // Main Height of section - posData = section.attr(mainAttr), // where to position - posFor = section.attr(posAttr), // On Which section is for positioning - topMark = "top-half", // Pos top - bottomMark = "bottom-half", // Pos Bottom - parentPT = convertInteger($(posFor).css("padding-top")), // Default Padding of parent - parentPB = convertInteger($(posFor).css("padding-bottom")); // Default Padding of parent - - if (posData === topMark) { - $(posFor).css( - "padding-bottom", - parentPB + sectionHeight + "px" - ); - section.css("margin-top", "-" + sectionHeight + "px"); - } else if (posData === bottomMark) { - $(posFor).css( - "padding-top", - parentPT + sectionHeight + "px" - ); - section.css("margin-bottom", "-" + sectionHeight + "px"); - } - } - setPosition(); // Set Padding On Load - }); - }; - - var postionHandler = "[data-sec-pos]"; - if ($(postionHandler).length) { - $(postionHandler).imagesLoaded(function () { - $(postionHandler).sectionPosition("data-sec-pos", "data-pos-for"); - }); - } /*----------- 13. Filter ----------*/ $(".filter-active").imagesLoaded(function () { @@ -553,11 +296,6 @@ function rakar_content_load_scripts() { time: 1000, }); - /*----------- 15. Hover Item ----------*/ - $(".hover-item").hover(function() { - $(this).addClass("item-active"); - $(this).siblings().removeClass("item-active"); - }); /*----------- 16. Shape Mockup ----------*/ $.fn.shapeMockup = function () { @@ -589,44 +327,6 @@ function rakar_content_load_scripts() { - /*----------- 21. Overlay Direction ----------*/ - if ($('.overlay-direction').length > 0) { - if (window.innerWidth > 767) { - const nodes = [].slice.call(document.querySelectorAll(".overlay-direction .filter-item"), 0); - const directions = { - 0: "top", - 1: "right", - 2: "bottom", - 3: "left" - }; - const classNames = ["in", "out"].map(p => Object.values(directions).map(d => `${p}-${d}`)).reduce((a, b) => a.concat(b)); - const getDirectionKey = (ev, node) => { - const { - width, - height, - top, - left - } = node.getBoundingClientRect(); - const l = ev.pageX - (left + window.pageXOffset); - const t = ev.pageY - (top + window.pageYOffset); - const x = l - width / 2 * (width > height ? height / width : 1); - const y = t - height / 2 * (height > width ? width / height : 1); - return Math.round(Math.atan2(y, x) / 1.57079633 + 5) % 4; - }; - class Item { - constructor(element) { - this.element = element; - this.element.addEventListener("mouseover", ev => this.update(ev, "in")); - this.element.addEventListener("mouseout", ev => this.update(ev, "out")); - } - update(ev, prefix) { - this.element.classList.remove(...classNames); - this.element.classList.add(`${prefix}-${directions[getDirectionKey(ev, this.element)]}`); - } - } - nodes.forEach(node => new Item(node)); - } - } /*----------- 22. Indicator ----------*/ // Indicator @@ -688,12 +388,6 @@ function rakar_content_load_scripts() { } - /*----------- 20. image Slider ----------*/ - $("#compslider").on("input change", (e) => { - const sliderPos = e.target.value; - $('.foreground-img').css('width', `${sliderPos}%`) - $('.slider-button').css('left', `calc(${sliderPos}% - 32px)`) - }); @@ -750,18 +444,6 @@ function rakar_content_load_scripts() { }, 3000); }); - /*---------- Sticky Footer ----------*/ - function checkHeight() { - if ($('body').height() < $(window).height()) { - $('.footer-sitcky').addClass('sticky-footer'); - } else { - $('.footer-sitcky').removeClass('sticky-footer'); - } - } - - $(window).on('load resize', function () { - checkHeight(); - }); // Elementor Frontend Load $(window).on('elementor/frontend/init', function () { diff --git a/public/wp-content/themes/rakar/assets/js/main.js.bak b/public/wp-content/themes/rakar/assets/js/main.js.bak deleted file mode 100644 index 7150418..0000000 --- a/public/wp-content/themes/rakar/assets/js/main.js.bak +++ /dev/null @@ -1,1026 +0,0 @@ -function rakar_content_load_scripts() { - var $ = jQuery; - "use strict"; - /*================================= - JS Index Here - ==================================*/ - /* - 01. On Load Function - 02. Preloader - 03. Mobile Menu - 04. Sticky fix - 05. Scroll To Top - 06. Set Background Image Color & Mask - 07. Global Slider - 08. Ajax Contact Form - 09. Search Box Popup - 10. Popup Sidemenu - 11. Magnific Popup - 12. Section Position - 13. Filter - 14. Counter Up - 15. Shape Mockup - 16. Progress Bar Animation - 17. Countdown - 18. Image to SVG Code - 00. Woocommerce Toggle - 00. Right Click Disable - */ - /*================================= - JS Index End - ==================================*/ - /* - - /*---------- 03. Mobile Menu ----------*/ - $.fn.thmobilemenu = function (options) { - var opt = $.extend( - { - menuToggleBtn: ".th-menu-toggle", - bodyToggleClass: "th-body-visible", - subMenuClass: "th-submenu", - subMenuParent: "th-item-has-children", - subMenuParentToggle: "th-active", - meanExpandClass: "th-mean-expand", - appendElement: '', - subMenuToggleClass: "th-open", - toggleSpeed: 400, - }, - options - ); - - return this.each(function () { - var menu = $(this); - - function menuToggle() { - menu.toggleClass(opt.bodyToggleClass); - - var subMenu = "." + opt.subMenuClass; - $(subMenu).each(function () { - if ($(this).hasClass(opt.subMenuToggleClass)) { - $(this).removeClass(opt.subMenuToggleClass); - $(this).css("display", "none"); - $(this).parent().removeClass(opt.subMenuParentToggle); - } - }); - } - - menu.find("li").each(function () { - var submenu = $(this).find("ul"); - submenu.addClass(opt.subMenuClass); - submenu.css("display", "none"); - submenu.parent().addClass(opt.subMenuParent); - submenu.prev("a").append(opt.appendElement); - submenu.next("a").append(opt.appendElement); - }); - - function toggleDropDown($element) { - var $parent = $($element).parent(); - var $siblings = $parent.siblings(); - - $siblings.removeClass(opt.subMenuParentToggle); - $siblings.find("ul").slideUp(opt.toggleSpeed).removeClass(opt.subMenuToggleClass); - - $parent.toggleClass(opt.subMenuParentToggle); - $($element).next("ul").slideToggle(opt.toggleSpeed).toggleClass(opt.subMenuToggleClass); - } - - var expandToggler = "." + opt.meanExpandClass; - $(expandToggler).each(function () { - $(this).on("click", function (e) { - e.preventDefault(); - toggleDropDown($(this).parent()); - }); - }); - - $(opt.menuToggleBtn).each(function () { - $(this).on("click", function () { - menuToggle(); - }); - }); - - menu.on("click", function (e) { - e.stopPropagation(); - menuToggle(); - }); - - menu.find("div").on("click", function (e) { - e.stopPropagation(); - }); - }); - }; - - $(".th-menu-wrapper").thmobilemenu(); - - /*---------- 04. Sticky fix ----------*/ - $(window).scroll(function () { - var topPos = $(this).scrollTop(); - if (topPos > 500) { - $('.sticky-wrapper').addClass('sticky'); - $('.category-menu').addClass('close-category'); - } else { - $('.sticky-wrapper').removeClass('sticky') - $('.category-menu').removeClass('close-category'); - } - }) - - $(".menu-expand").each(function () { - $(this).on("click", function (e) { - e.preventDefault(); - $('.category-menu').toggleClass('open-category'); - }); - }); - - /*---------- 05. Scroll To Top ----------*/ - if ($('.scroll-top').length > 0) { - - var scrollTopbtn = document.querySelector('.scroll-top'); - var progressPath = document.querySelector('.scroll-top path'); - var pathLength = progressPath.getTotalLength(); - progressPath.style.transition = progressPath.style.WebkitTransition = 'none'; - progressPath.style.strokeDasharray = pathLength + ' ' + pathLength; - progressPath.style.strokeDashoffset = pathLength; - progressPath.getBoundingClientRect(); - progressPath.style.transition = progressPath.style.WebkitTransition = 'stroke-dashoffset 10ms linear'; - var updateProgress = function () { - var scroll = $(window).scrollTop(); - var height = $(document).height() - $(window).height(); - var progress = pathLength - (scroll * pathLength / height); - progressPath.style.strokeDashoffset = progress; - } - updateProgress(); - $(window).scroll(updateProgress); - var offset = 50; - var duration = 750; - jQuery(window).on('scroll', function() { - if (jQuery(this).scrollTop() > offset) { - jQuery(scrollTopbtn).addClass('show'); - } else { - jQuery(scrollTopbtn).removeClass('show'); - } - }); - jQuery(scrollTopbtn).on('click', function(event) { - event.preventDefault(); - jQuery('html, body').animate({scrollTop: 0}, duration); - return false; - }) - } - - /*---------- 06. Set Background Image Color & Mask ----------*/ - if ($("[data-bg-src]").length > 0) { - $("[data-bg-src]").each(function () { - var src = $(this).attr("data-bg-src"); - $(this).css("background-image", "url(" + src + ")"); - $(this).removeAttr("data-bg-src").addClass("background-image"); - }); - } - - if ($('[data-bg-color]').length > 0) { - $('[data-bg-color]').each(function () { - var color = $(this).attr('data-bg-color'); - $(this).css('background-color', color); - $(this).removeAttr('data-bg-color'); - }); - }; - - $('[data-border]').each(function() { - var borderColor = $(this).data('border'); - $(this).css('--th-border-color', borderColor); - }); - - if ($('[data-mask-src]').length > 0) { - $('[data-mask-src]').each(function () { - var mask = $(this).attr('data-mask-src'); - $(this).css({ - 'mask-image': 'url(' + mask + ')', - '-webkit-mask-image': 'url(' + mask + ')' - }); - $(this).addClass('bg-mask'); - $(this).removeAttr('data-mask-src'); - }); - }; - - - /*----------- 07. Global Slider ----------*/ - $('.th-slider').each(function () { - - var thSlider = $(this); - var settings = $(this).data('slider-options'); - - // Store references to the navigation Slider - var prevArrow = thSlider.find('.slider-prev'); - var nextArrow = thSlider.find('.slider-next'); - var paginationElN = thSlider.find('.slider-pagination.pagi-number'); - var paginationExternel = thSlider.siblings('.slider-controller').find('.slider-pagination'); - - var paginationEl = paginationExternel.length ? paginationExternel.get(0) : thSlider.find('.slider-pagination').get(0); - - var paginationType = settings['paginationType'] ? settings['paginationType'] : 'bullets'; - - var autoplayconditon = settings['autoplay']; - - var sliderDefault = { - slidesPerView: 1, - spaceBetween: settings['spaceBetween'] ? settings['spaceBetween'] : 24, - loop: settings['loop'] == false ? false : true, - speed: settings['speed'] ? settings['speed'] : 1000, - autoplay: autoplayconditon ? autoplayconditon : {delay: 6000, disableOnInteraction: false}, - navigation: { - nextEl: nextArrow.get(0), - prevEl: prevArrow.get(0), - }, - pagination: { - el: paginationEl, - type: paginationType, - clickable: true, - renderBullet: function (index, className) { - var number = index + 1; - var formattedNumber = number < 10 ? '0' + number : number; - if (paginationElN.length) { - return '' + formattedNumber + ''; - } else { - return ''; - } - }, - formatFractionCurrent: function (number) { - if (number < 10) { - return '0' + number; - } else { - return number; - } - }, - formatFractionTotal: function (number) { - if (number < 10) { - return '0' + number; - } else { - return number; - } - } - }, - on: { - slideChange: function() { - setTimeout(function () { - swiper.params.mousewheel.releaseOnEdges = false; - }, 500); - }, - reachEnd: function() { - setTimeout(function () { - swiper.params.mousewheel.releaseOnEdges = true; - }, 750); - } - } - }; - - var options = JSON.parse(thSlider.attr('data-slider-options')); - options = $.extend({}, sliderDefault, options); - var swiper = new Swiper(thSlider.get(0), options); // Assign the swiper variable - - if ($('.slider-area').length > 0) { - $('.slider-area').closest(".container").parent().addClass("arrow-wrap"); - } - - }); - - // Function to add animation classes - function animationProperties() { - $('[data-ani]').each(function () { - var animationName = $(this).data('ani'); - $(this).addClass(animationName); - }); - - $('[data-ani-delay]').each(function () { - var delayTime = $(this).data('ani-delay'); - $(this).css('animation-delay', delayTime); - }); - } - animationProperties(); - - // Add click event handlers for external slider arrows based on data attributes - $('[data-slider-prev], [data-slider-next]').on('click', function () { - var sliderSelector = $(this).data('slider-prev') || $(this).data('slider-next'); - var targetSlider = $(sliderSelector); - - if (targetSlider.length) { - var swiper = targetSlider[0].swiper; - - if (swiper) { - if ($(this).data('slider-prev')) { - swiper.slidePrev(); - } else { - swiper.slideNext(); - } - } - } - }); - - - /*-------------- 08. Slider Tab -------------*/ - $.fn.activateSliderThumbs = function (options) { - var opt = $.extend( - { - sliderTab: false, - tabButton: ".tab-btn", - }, - options - ); - - return this.each(function () { - var $container = $(this); - var $thumbs = $container.find(opt.tabButton); - var $line = $('').appendTo($container); - - var sliderSelector = $container.data("slider-tab"); - var $slider = $(sliderSelector); - - var swiper = $slider[0].swiper; - - $thumbs.on("click", function (e) { - e.preventDefault(); - var clickedThumb = $(this); - - clickedThumb.addClass("active").siblings().removeClass("active"); - linePos(clickedThumb, $container); - - clickedThumb.prevAll(opt.tabButton).addClass('list-active'); - clickedThumb.nextAll(opt.tabButton).removeClass('list-active'); - - if (opt.sliderTab) { - var slideIndex = clickedThumb.index(); - swiper.slideTo(slideIndex); - } - }); - - if (opt.sliderTab) { - swiper.on("slideChange", function () { - var activeIndex = swiper.realIndex; - var $activeThumb = $thumbs.eq(activeIndex); - - $activeThumb.addClass("active").siblings().removeClass("active"); - linePos($activeThumb, $container); - - $activeThumb.prevAll(opt.tabButton).addClass('list-active'); - $activeThumb.nextAll(opt.tabButton).removeClass('list-active'); - }); - - var initialSlideIndex = swiper.activeIndex; - var $initialThumb = $thumbs.eq(initialSlideIndex); - $initialThumb.addClass("active").siblings().removeClass("active"); - linePos($initialThumb, $container); - - $initialThumb.prevAll(opt.tabButton).addClass('list-active'); - $initialThumb.nextAll(opt.tabButton).removeClass('list-active'); - } - - function linePos($activeThumb) { - var thumbOffset = $activeThumb.position(); - - var marginTop = parseInt($activeThumb.css('margin-top')) || 0; - var marginLeft = parseInt($activeThumb.css('margin-left')) || 0; - - $line.css("--height-set", $activeThumb.outerHeight() + "px"); - $line.css("--width-set", $activeThumb.outerWidth() + "px"); - $line.css("--pos-y", thumbOffset.top + marginTop + "px"); - $line.css("--pos-x", thumbOffset.left + marginLeft + "px"); - } - }); - }; - - if ($(".testi-box-tab").length) { - $(".testi-box-tab").activateSliderThumbs({ - sliderTab: true, - tabButton: ".tab-btn", - }); - } - - if ($(".product-thumb").length) { - $(".product-thumb").activateSliderThumbs({ - sliderTab: true, - tabButton: ".tab-btn", - }); - } - - - /*----------- 09. Ajax Contact Form ----------*/ - - /*---------- 10. Popup Sidemenu ----------*/ - function popupSideMenu($sideMenu, $sideMunuOpen, $sideMenuCls, $toggleCls) { - // Sidebar Popup - $($sideMunuOpen).on('click', function (e) { - e.preventDefault(); - $($sideMenu).addClass($toggleCls); - }); - // $($sideMenu).on('click', function (e) { - // e.stopPropagation(); - // $($sideMenu).removeClass($toggleCls) - // }); - var sideMenuChild = $sideMenu + ' > div'; - $(sideMenuChild).on('click', function (e) { - e.stopPropagation(); - $($sideMenu).addClass($toggleCls) - }); - $($sideMenuCls).on('click', function (e) { - e.preventDefault(); - e.stopPropagation(); - $($sideMenu).removeClass($toggleCls); - }); - }; - popupSideMenu( ".popup-search-box", ".searchBoxToggler", ".searchClose", "show" ); - popupSideMenu('.sidemenu-cart', '.sideMenuToggler', '.sideMenuCls', 'show'); - popupSideMenu('.sidemenu-info', '.sideMenuInfo', '.sideMenuCls', 'show'); - - /*----------- 11. Magnific Popup ----------*/ - /* magnificPopup img view */ - $(".popup-image").magnificPopup({ - type: "image", - mainClass: 'mfp-zoom-in', - removalDelay: 260, - gallery: { - enabled: true, - }, - }); - - /* magnificPopup video view */ - $(".popup-video").magnificPopup({ - type: "iframe", - }); - - /* magnificPopup video view */ - $(".popup-content").magnificPopup({ - type: "inline", - midClick: true, - }); - - /*---------- 12. Section Position ----------*/ - // Interger Converter - function convertInteger(str) { - return parseInt(str, 10); - } - - $.fn.sectionPosition = function (mainAttr, posAttr) { - $(this).each(function () { - var section = $(this); - - function setPosition() { - var sectionHeight = Math.floor(section.height() / 2), // Main Height of section - posData = section.attr(mainAttr), // where to position - posFor = section.attr(posAttr), // On Which section is for positioning - topMark = "top-half", // Pos top - bottomMark = "bottom-half", // Pos Bottom - parentPT = convertInteger($(posFor).css("padding-top")), // Default Padding of parent - parentPB = convertInteger($(posFor).css("padding-bottom")); // Default Padding of parent - - if (posData === topMark) { - $(posFor).css( - "padding-bottom", - parentPB + sectionHeight + "px" - ); - section.css("margin-top", "-" + sectionHeight + "px"); - } else if (posData === bottomMark) { - $(posFor).css( - "padding-top", - parentPT + sectionHeight + "px" - ); - section.css("margin-bottom", "-" + sectionHeight + "px"); - } - } - setPosition(); // Set Padding On Load - }); - }; - - var postionHandler = "[data-sec-pos]"; - if ($(postionHandler).length) { - $(postionHandler).imagesLoaded(function () { - $(postionHandler).sectionPosition("data-sec-pos", "data-pos-for"); - }); - } - - /*----------- 13. Filter ----------*/ - $(".filter-active").imagesLoaded(function () { - var $filter = ".filter-active", - $filterItem = ".filter-item", - $filterMenu = ".filter-menu-active"; - - if ($($filter).length > 0) { - var $grid = $($filter).isotope({ - itemSelector: $filterItem, - filter: "*", - masonry: { - columnWidth: $filterItem, - }, - }); - - // filter items on button click - $($filterMenu).on("click", "button", function () { - var filterValue = $(this).attr("data-filter"); - $grid.isotope({ - filter: filterValue, - }); - }); - - // Menu Active Class - $($filterMenu).on("click", "button", function (event) { - event.preventDefault(); - $(this).addClass("active"); - $(this).siblings(".active").removeClass("active"); - }); - } - $('.load-more-btn').on('click', function() { - var $icon = $(this).find('i'); - $icon.addClass('fa-spin-pulse'); - - setTimeout(function() { - $icon.removeClass('fa-spin-pulse'); - }, 1000); - - var $button = $(this); - setTimeout(function() { - var $closestLoadMoreActive = $button.prev('.load-more-active'); - if ($closestLoadMoreActive.length === 0) { - $closestLoadMoreActive = $button.closest('.container').find('.load-more-active'); - } - $closestLoadMoreActive.find('.filter-item.d-none, .accordion-card.d-none').removeClass('d-none'); - - var $grid = $($filter).isotope({ - filter: "*", - }); - }, 700); - }); - }); - - $(".masonary-active, .woocommerce-Reviews .comment-list").imagesLoaded(function () { - var $filter = ".masonary-active, .woocommerce-Reviews .comment-list", - $filterItem = ".filter-item, .woocommerce-Reviews .comment-list li"; - - if ($($filter).length > 0) { - $($filter).isotope({ - itemSelector: $filterItem, - filter: "*", - masonry: { - // use outer width of grid-sizer for columnWidth - columnWidth: 1, - }, - }); - } - $('[data-bs-toggle="tab"]').on('shown.bs.tab', function (e) { - $($filter).isotope({ - filter: "*", - }); - }); - }); - - /*----------- 14. Counter Up ----------*/ - $(".counter-number").counterUp({ - delay: 10, - time: 1000, - }); - - /*----------- 15. Hover Item ----------*/ - $(".hover-item").hover(function() { - $(this).addClass("item-active"); - $(this).siblings().removeClass("item-active"); - }); - - /*----------- 16. Shape Mockup ----------*/ - $.fn.shapeMockup = function () { - var $shape = $(this); - $shape.each(function() { - var $currentShape = $(this), - shapeTop = $currentShape.data('top'), - shapeRight = $currentShape.data('right'), - shapeBottom = $currentShape.data('bottom'), - shapeLeft = $currentShape.data('left'); - $currentShape.css({ - top: shapeTop, - right: shapeRight, - bottom: shapeBottom, - left: shapeLeft, - }).removeAttr('data-top') - .removeAttr('data-right') - .removeAttr('data-bottom') - .removeAttr('data-left') - .closest('.elementor-widget').css('position', 'static') - .closest('.e-parent').addClass('shape-mockup-wrap'); - }); - }; - - if ($('.shape-mockup')) { - $('.shape-mockup').shapeMockup(); - } - - /*----------- 17. Progress Bar Animation ----------*/ - $('.progress-bar').waypoint(function() { - $('.progress-bar').css({ - animation: "animate-positive 1.8s", - opacity: "1" - }); - }, { offset: '75%' }); - - /*----------- 18. Countdown ----------*/ - $.fn.countdown = function () { - $(this).each(function () { - var $counter = $(this), - countDownDate = new Date($counter.data("offer-date")).getTime(), // Set the date we're counting down toz - exprireCls = "expired"; - - // Finding Function - function s$(element) { - return $counter.find(element); - } - - // Update the count down every 1 second - var counter = setInterval(function () { - // Get today's date and time - var now = new Date().getTime(); - - // Find the distance between now and the count down date - var distance = countDownDate - now; - - // Time calculations for days, hours, minutes and seconds - var days = Math.floor(distance / (1000 * 60 * 60 * 24)); - var hours = Math.floor( - (distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60) - ); - var minutes = Math.floor( - (distance % (1000 * 60 * 60)) / (1000 * 60) - ); - var seconds = Math.floor((distance % (1000 * 60)) / 1000); - - // Check If value is lower than ten, so add zero before number - days < 10 ? (days = "0" + days) : null; - hours < 10 ? (hours = "0" + hours) : null; - minutes < 10 ? (minutes = "0" + minutes) : null; - seconds < 10 ? (seconds = "0" + seconds) : null; - - // If the count down is over, write some text - if (distance < 0) { - clearInterval(counter); - $counter.addClass(exprireCls); - $counter.find(".message").css("display", "block"); - } else { - // Output the result in elements - s$(".day").html(days); - s$(".hour").html(hours); - s$(".minute").html(minutes); - s$(".seconds").html(seconds); - } - }, 1000); - }); - }; - - if ($(".counter-list").length) { - $(".counter-list").countdown(); - } - - /*---------- 19. Hero 2 Animation ----------*/ - if ($('.hero-2').length > 0) { - window.addEventListener('scroll', function() { - let value = window.scrollY; - $('.line').css('width', "calc(" + 'var(--size)' + " - " + value * 0.1 + 'px' + ")"); - }) - }; - - /*----------- 21. Overlay Direction ----------*/ - if ($('.overlay-direction').length > 0) { - if (window.innerWidth > 767) { - const nodes = [].slice.call(document.querySelectorAll(".overlay-direction .filter-item"), 0); - const directions = { - 0: "top", - 1: "right", - 2: "bottom", - 3: "left" - }; - const classNames = ["in", "out"].map(p => Object.values(directions).map(d => `${p}-${d}`)).reduce((a, b) => a.concat(b)); - const getDirectionKey = (ev, node) => { - const { - width, - height, - top, - left - } = node.getBoundingClientRect(); - const l = ev.pageX - (left + window.pageXOffset); - const t = ev.pageY - (top + window.pageYOffset); - const x = l - width / 2 * (width > height ? height / width : 1); - const y = t - height / 2 * (height > width ? width / height : 1); - return Math.round(Math.atan2(y, x) / 1.57079633 + 5) % 4; - }; - class Item { - constructor(element) { - this.element = element; - this.element.addEventListener("mouseover", ev => this.update(ev, "in")); - this.element.addEventListener("mouseout", ev => this.update(ev, "out")); - } - update(ev, prefix) { - this.element.classList.remove(...classNames); - this.element.classList.add(`${prefix}-${directions[getDirectionKey(ev, this.element)]}`); - } - } - nodes.forEach(node => new Item(node)); - } - } - - /*----------- 22. Indicator ----------*/ - // Indicator - $.fn.indicator = function () { - // Loop through each .indicator-active element - $(this).each(function () { - var $menu = $(this), - $linkBtn = $menu.find("a"), - $btn = $menu.find("button"); - - // Append indicator - $menu.append(''); - var $line = $menu.find(".indicator"); - - // Check which type button is Available - var $currentBtn; - if ($linkBtn.length) { - $currentBtn = $linkBtn; - } else if ($btn.length) { - $currentBtn = $btn; - } - - // On Click Button Class Remove - $currentBtn.on("click", function (e) { - e.preventDefault(); - $(this).addClass("active"); - $(this).siblings(".active").removeClass("active"); - linePos(); - }); - - // Indicator Position - function linePos() { - var $btnActive = $menu.find(".active"), - $height = $btnActive.css("height"), - $width = $btnActive.css("width"), - $top = $btnActive.position().top + "px", - $left = $btnActive.position().left + "px"; - - $(window).on('resize', function () { - $top = $btnActive.position().top + "px", - $left = $btnActive.position().left + "px"; - }); - - $line.get(0).style.setProperty("--height-set", $height); - $line.get(0).style.setProperty("--width-set", $width); - $line.get(0).style.setProperty("--pos-y", $top); - $line.get(0).style.setProperty("--pos-x", $left); - } - - linePos(); - $(window).on('resize', function () { - linePos(); - }); - }); - }; - - if ($(".indicator-active").length) { - $(".indicator-active").indicator(); - } - - - /*----------- 20. image Slider ----------*/ - $("#compslider").on("input change", (e) => { - const sliderPos = e.target.value; - $('.foreground-img').css('width', `${sliderPos}%`) - $('.slider-button').css('left', `calc(${sliderPos}% - 32px)`) - }); - - /*----------- 00. Color Scheme ----------*/ - $('.color-switch-btns button').each(function () { - // Get color for button - const button = $(this); - const color = button.data('color'); - button.css('--theme-color', color); - - // Change theme color on click - button.on('click', function () { - const clickedColor = $(this).data('color'); - $(':root').css('--theme-color', clickedColor); - }); - }); - - // Handle color picker change event - $('#thcolorpicker').on('input', function () { - const pickedColor = $(this).val(); - updateThemeColor(pickedColor); - }); - - function updateThemeColor(color) { - $(':root').css('--theme-color', color); - } - - $(document).on('click','.switchIcon',function() { - $('.color-scheme').toggleClass('active'); - }); - - - /*----------- 00. Woocommerce Toggle ----------*/ - // Ship To Different Address - $("#ship-to-different-address-checkbox").on("change", function () { - if ($(this).is(":checked")) { - $("#ship-to-different-address") - .next(".shipping_address") - .slideDown(); - } else { - $("#ship-to-different-address").next(".shipping_address").slideUp(); - } - }); - - // Woocommerce Payment Toggle - $('.wc_payment_methods input[type="radio"]:checked') - .siblings(".payment_box") - .show(); - $('.wc_payment_methods input[type="radio"]').each(function () { - $(this).on("change", function () { - $(".payment_box").slideUp(); - $(this).siblings(".payment_box").slideDown(); - }); - }); - - // Woocommerce Rating Toggle - $(".rating-select .stars a").each(function () { - $(this).on("click", function (e) { - e.preventDefault(); - $(this).siblings().removeClass("active"); - $(this).parent().parent().addClass("selected"); - $(this).addClass("active"); - }); - }); - - // Quantity Plus Minus --------------------------- - $(document).on('click', '.quantity-plus, .quantity-minus', function (e) { - e.preventDefault(); - // Get current quantity values - var qty = $(this).closest('.quantity, .product-quantity').find('.qty-input'); - var val = parseFloat(qty.val()); - var max = parseFloat(qty.attr('max')); - var min = parseFloat(qty.attr('min')); - var step = parseFloat(qty.attr('step')); - - // Change the value if plus or minus - if ($(this).is('.quantity-plus')) { - if (max && (max <= val)) { - qty.val(max); - } else { - qty.val(val + step); - } - } else { - if (min && (min >= val)) { - qty.val(min); - } else if (val > 0) { - qty.val(val - step); - } - } - $('.cart_table button[name="update_cart"]').prop('disabled', false); - }); - - /*----------- Search Masonary ----------*/ - $('.search-active').imagesLoaded(function () { - var $filter = '.search-active', - $filterItem = '.filter-item'; - - if ($($filter).length > 0) { - var $grid = $($filter).isotope({ - itemSelector: $filterItem, - filter: '*', - // masonry: { - // // use outer width of grid-sizer for columnWidth - // columnWidth: 1 - // } - }); - }; - }); - - -} - - -(function ($) { - - /*---------- 01. On Load Function ----------*/ - $(window).on("load", function () { - $(".preloader").fadeOut(); - $(".th-slider").addClass('fade-ani'); - }); - - /*---------- 02. Preloader ----------*/ - if ($(".preloader").length > 0) { - $(".preloaderCls").each(function () { - $(this).on("click", function (e) { - e.preventDefault(); - $(".preloader").css("display", "none"); - }); - }); - } - - $(document).ready(function () { - setTimeout(function () { - $('#loader').addClass('loaded'); - // Once the container has finished, the scroll appears - if ($('#loader').hasClass('loaded')) { - // It is so that once the container is gone, the entire preloader section is deleted - $('#preloader').delay(9000).queue(function () { - $(this).remove(); - }); - } - }, 3000); - }); - - /*---------- Sticky Footer ----------*/ - function checkHeight() { - if ($('body').height() < $(window).height()) { - $('.footer-sitcky').addClass('sticky-footer'); - } else { - $('.footer-sitcky').removeClass('sticky-footer'); - } - } - - $(window).on('load resize', function () { - checkHeight(); - }); - - // Elementor Frontend Load - $(window).on('elementor/frontend/init', function () { - if (elementorFrontend.isEditMode()) { - elementorFrontend.hooks.addAction('frontend/element_ready/global', function () { - setTimeout(function () { - rakar_content_load_scripts(); - $(".th-slider").addClass('fade-ani'); - }, 500); - }); - } - }); - - // Window Load - $(window).on('load', function () { - rakar_content_load_scripts(); - /*---------- 18. Image to SVG Code ----------*/ - const cache = {}; - - $.fn.inlineSvg = function fnInlineSvg() { - this.each(imgToSvg); - - return this; - }; - - function imgToSvg() { - const $img = $(this); - const src = $img.attr("src"); - - // fill cache by src with promise - if (!cache[src]) { - const d = $.Deferred(); - $.get(src, (data) => { - d.resolve($(data).find("svg")); - }); - cache[src] = d.promise(); - } - - // replace img with svg when cached promise resolves - cache[src].then((svg) => { - const $svg = $(svg).clone(); - - if ($img.attr("id")) $svg.attr("id", $img.attr("id")); - if ($img.attr("class")) $svg.attr("class", $img.attr("class")); - if ($img.attr("style")) $svg.attr("style", $img.attr("style")); - - if ($img.attr("width")) { - $svg.attr("width", $img.attr("width")); - if (!$img.attr("height")) $svg.removeAttr("height"); - } - if ($img.attr("height")) { - $svg.attr("height", $img.attr("height")); - if (!$img.attr("width")) $svg.removeAttr("width"); - } - - $svg.insertAfter($img); - $img.trigger("svgInlined", $svg[0]); - $img.remove(); - }); - } - - $(".svg-img").inlineSvg(); - }); - - // Cart count with ajax - jQuery(function ($) { - $(document).on('click', '.add_to_cart_button', function (e) { - e.preventDefault(); - var $button = $(this); - var product_id = $button.data('product_id'); - - $.ajax({ - type: 'POST', - url: wc_add_to_cart_params.ajax_url, - data: { - 'action': 'update_cart_count', - 'product_id': product_id - }, - success: function (response) { - $('.cart_badge').text(response); - } - }); - }); - }); - - -})(jQuery); \ No newline at end of file diff --git a/public/wp-content/themes/rakar/assets/js/swiper-bundle.min.js b/public/wp-content/themes/rakar/assets/js/swiper-bundle.min.js deleted file mode 100644 index 0e56316..0000000 --- a/public/wp-content/themes/rakar/assets/js/swiper-bundle.min.js +++ /dev/null @@ -1 +0,0 @@ -var Swiper=function(){"use strict";function e(e){return null!==e&&"object"==typeof e&&"constructor"in e&&e.constructor===Object}function t(s,a){void 0===s&&(s={}),void 0===a&&(a={}),Object.keys(a).forEach(i=>{void 0===s[i]?s[i]=a[i]:e(a[i])&&e(s[i])&&Object.keys(a[i]).length>0&&t(s[i],a[i])})}const s={body:{},addEventListener(){},removeEventListener(){},activeElement:{blur(){},nodeName:""},querySelector:()=>null,querySelectorAll:()=>[],getElementById:()=>null,createEvent:()=>({initEvent(){}}),createElement:()=>({children:[],childNodes:[],style:{},setAttribute(){},getElementsByTagName:()=>[]}),createElementNS:()=>({}),importNode:()=>null,location:{hash:"",host:"",hostname:"",href:"",origin:"",pathname:"",protocol:"",search:""}};function a(){const e="undefined"!=typeof document?document:{};return t(e,s),e}const i={document:s,navigator:{userAgent:""},location:{hash:"",host:"",hostname:"",href:"",origin:"",pathname:"",protocol:"",search:""},history:{replaceState(){},pushState(){},go(){},back(){}},CustomEvent:function(){return this},addEventListener(){},removeEventListener(){},getComputedStyle:()=>({getPropertyValue:()=>""}),Image(){},Date(){},screen:{},setTimeout(){},clearTimeout(){},matchMedia:()=>({}),requestAnimationFrame:e=>"undefined"==typeof setTimeout?(e(),null):setTimeout(e,0),cancelAnimationFrame(e){"undefined"!=typeof setTimeout&&clearTimeout(e)}};function r(){const e="undefined"!=typeof window?window:{};return t(e,i),e}function n(e){return void 0===e&&(e=""),e.trim().split(" ").filter(e=>!!e.trim())}function l(e,t){return void 0===t&&(t=0),setTimeout(e,t)}function o(){return Date.now()}function d(e,t){void 0===t&&(t="x");const s=r();let a,i,n;const l=function(e){const t=r();let s;return t.getComputedStyle&&(s=t.getComputedStyle(e,null)),!s&&e.currentStyle&&(s=e.currentStyle),s||(s=e.style),s}(e);return s.WebKitCSSMatrix?(i=l.transform||l.webkitTransform,i.split(",").length>6&&(i=i.split(", ").map(e=>e.replace(",",".")).join(", ")),n=new s.WebKitCSSMatrix("none"===i?"":i)):(n=l.MozTransform||l.OTransform||l.MsTransform||l.msTransform||l.transform||l.getPropertyValue("transform").replace("translate(","matrix(1, 0, 0, 1,"),a=n.toString().split(",")),"x"===t&&(i=s.WebKitCSSMatrix?n.m41:16===a.length?parseFloat(a[12]):parseFloat(a[4])),"y"===t&&(i=s.WebKitCSSMatrix?n.m42:16===a.length?parseFloat(a[13]):parseFloat(a[5])),i||0}function c(e){return"object"==typeof e&&null!==e&&e.constructor&&"Object"===Object.prototype.toString.call(e).slice(8,-1)}function p(){const e=Object(arguments.length<=0?void 0:arguments[0]),t=["__proto__","constructor","prototype"];for(let a=1;a1&&m.push(e.virtualSize-r)}if(o&&s.loop){const t=g[0]+x;if(s.slidesPerGroup>1){const a=Math.ceil((e.virtual.slidesBefore+e.virtual.slidesAfter)/s.slidesPerGroup),i=t*s.slidesPerGroup;for(let e=0;e!(s.cssMode&&!s.loop)||t!==c.length-1).forEach(e=>{e.style[t]=x+"px"})}if(s.centeredSlides&&s.centeredSlidesBounds){let e=0;g.forEach(t=>{e+=t+(x||0)}),e-=x;const t=e-r;m=m.map(e=>e<=0?-v:e>t?t+w:e)}if(s.centerInsufficientSlides){let e=0;g.forEach(t=>{e+=t+(x||0)}),e-=x;const t=(s.slidesOffsetBefore||0)+(s.slidesOffsetAfter||0);if(e+t 0?(r._cssModeVirtualInitialSet=!0,requestAnimationFrame(()=>{h[e?"scrollLeft":"scrollTop"]=s})):h[e?"scrollLeft":"scrollTop"]=s,t&&requestAnimationFrame(()=>{r.wrapperEl.style.scrollSnapType="",r._immediateVirtual=!1})}else{if(!r.support.smoothScroll)return m({swiper:r,targetPosition:s,side:e?"left":"top"}),!0;h.scrollTo({[e?"left":"top"]:s,behavior:"smooth"})}return!0}return r.setTransition(t),r.setTranslate(w),r.updateActiveIndex(n),r.updateSlidesClasses(),r.emit("beforeTransitionStart",t,a),r.transitionStart(s,b),0===t?r.transitionEnd(s,b):r.animating||(r.animating=!0,r.onSlideToWrapperTransitionEnd||(r.onSlideToWrapperTransitionEnd=function(e){r&&!r.destroyed&&e.target===this&&(r.wrapperEl.removeEventListener("transitionend",r.onSlideToWrapperTransitionEnd),r.onSlideToWrapperTransitionEnd=null,delete r.onSlideToWrapperTransitionEnd,r.transitionEnd(s,b))}),r.wrapperEl.addEventListener("transitionend",r.onSlideToWrapperTransitionEnd)),!0},slideToLoop:function(e,t,s,a){void 0===e&&(e=0),void 0===s&&(s=!0),"string"==typeof e&&(e=parseInt(e,10));const i=this;if(i.destroyed)return;void 0===t&&(t=i.params.speed);const r=i.grid&&i.params.grid&&i.params.grid.rows>1;let n=e;if(i.params.loop)if(i.virtual&&i.params.virtual.enabled)n+=i.virtual.slidesBefore;else{let e;if(r){const t=n*i.params.grid.rows;e=i.slides.filter(e=>1*e.getAttribute("data-swiper-slide-index")===t)[0].column}else e=i.getSlideIndexByData(n);const t=r?Math.ceil(i.slides.length/i.params.grid.rows):i.slides.length,{centeredSlides:s}=i.params;let l=i.params.slidesPerView;"auto"===l?l=i.slidesPerViewDynamic():(l=Math.ceil(parseFloat(i.params.slidesPerView,10)),s&&l%2==0&&(l+=1));let o=t-e1){const e=[];return n.querySelectorAll(t.el).forEach(s=>{const a=p({},t,{el:s});e.push(new Q(a))}),e}const l=this;l.__swiper__=!0,l.support=L(),l.device=I({userAgent:t.userAgent}),l.browser=A(),l.eventsListeners={},l.eventsAnyListeners=[],l.modules=[...l.__modules__],t.modules&&Array.isArray(t.modules)&&l.modules.push(...t.modules);const o={};l.modules.forEach(e=>{e({params:t,swiper:l,extendParams:U(t,o),on:l.on.bind(l),once:l.once.bind(l),off:l.off.bind(l),emit:l.emit.bind(l)})});const d=p({},j,o);return l.params=p({},d,Z,t),l.originalParams=p({},l.params),l.passedParams=p({},t),l.params&&l.params.on&&Object.keys(l.params.on).forEach(e=>{l.on(e,l.params.on[e])}),l.params&&l.params.onAny&&l.onAny(l.params.onAny),Object.assign(l,{enabled:l.params.enabled,el:e,classNames:[],slides:[],slidesGrid:[],snapGrid:[],slidesSizesGrid:[],isHorizontal:()=>"horizontal"===l.params.direction,isVertical:()=>"vertical"===l.params.direction,activeIndex:0,realIndex:0,isBeginning:!0,isEnd:!1,translate:0,previousTranslate:0,progress:0,velocity:0,animating:!1,cssOverflowAdjustment(){return Math.trunc(this.translate/2**23)*2**23},allowSlideNext:l.params.allowSlideNext,allowSlidePrev:l.params.allowSlidePrev,touchEventsData:{isTouched:void 0,isMoved:void 0,allowTouchCallbacks:void 0,touchStartTime:void 0,isScrolling:void 0,currentTranslate:void 0,startTranslate:void 0,allowThresholdMove:void 0,focusableElements:l.params.focusableElements,lastClickTime:0,clickTimeout:void 0,velocities:[],allowMomentumBounce:void 0,startMoving:void 0,pointerId:null,touchId:null},allowClick:!0,allowTouchMove:l.params.allowTouchMove,touches:{startX:0,startY:0,currentX:0,currentY:0,diff:0},imagesToLoad:[],imagesLoaded:0}),l.emit("_swiper"),l.params.init&&l.init(),l}getDirectionLabel(e){return this.isHorizontal()?e:{width:"height","margin-top":"margin-left","margin-bottom ":"margin-right","margin-left":"margin-top","margin-right":"margin-bottom","padding-left":"padding-top","padding-right":"padding-bottom",marginRight:"marginBottom"}[e]}getSlideIndex(e){const{slidesEl:t,params:s}=this,a=y(f(t,`.${s.slideClass}, swiper-slide`)[0]);return y(e)-a}getSlideIndexByData(e){return this.getSlideIndex(this.slides.filter(t=>1*t.getAttribute("data-swiper-slide-index")===e)[0])}recalcSlides(){const{slidesEl:e,params:t}=this;this.slides=f(e,`.${t.slideClass}, swiper-slide`)}enable(){const e=this;e.enabled||(e.enabled=!0,e.params.grabCursor&&e.setGrabCursor(),e.emit("enable"))}disable(){const e=this;e.enabled&&(e.enabled=!1,e.params.grabCursor&&e.unsetGrabCursor(),e.emit("disable"))}setProgress(e,t){const s=this;e=Math.min(Math.max(e,0),1);const a=s.minTranslate(),i=(s.maxTranslate()-a)*e+a;s.translateTo(i,void 0===t?0:t),s.updateActiveIndex(),s.updateSlidesClasses()}emitContainerClasses(){const e=this;if(!e.params._emitClasses||!e.el)return;const t=e.el.className.split(" ").filter(t=>0===t.indexOf("swiper")||0===t.indexOf(e.params.containerModifierClass));e.emit("_containerClasses",t.join(" "))}getSlideClasses(e){const t=this;return t.destroyed?"":e.className.split(" ").filter(e=>0===e.indexOf("swiper-slide")||0===e.indexOf(t.params.slideClass)).join(" ")}emitSlidesClasses(){const e=this;if(!e.params._emitClasses||!e.el)return;const t=[];e.slides.forEach(s=>{const a=e.getSlideClasses(s);t.push({slideEl:s,classNames:a}),e.emit("_slideClass",s,a)}),e.emit("_slideClasses",t)}slidesPerViewDynamic(e,t){void 0===e&&(e="current"),void 0===t&&(t=!1);const{params:s,slides:a,slidesGrid:i,slidesSizesGrid:r,size:n,activeIndex:l}=this;let o=1;if("number"==typeof s.slidesPerView)return s.slidesPerView;if(s.centeredSlides){let e,t=a[l]?Math.ceil(a[l].swiperSlideSize):0;for(let s=l+1;s0?u:0),t&&(t.style.opacity=-u>0?-u:0)}}},setTransition:e=>{t.slides.map(e=>h(e)).forEach(t=>{t.style.transitionDuration=e+"ms",t.querySelectorAll(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").forEach(t=>{t.style.transitionDuration=e+"ms"})})},perspective:()=>!0,overwriteParams:()=>({watchSlidesProgress:!0})})},function(e){let{swiper:t,extendParams:s,on:a}=e;s({creativeEffect:{limitProgress:1,shadowPerProgress:!1,progressMultiplier:1,perspective:!0,prev:{translate:[0,0,0],rotate:[0,0,0],opacity:1,scale:1},next:{translate:[0,0,0],rotate:[0,0,0],opacity:1,scale:1}}});const i=e=>"string"==typeof e?e:e+"px";ne({effect:"creative",swiper:t,on:a,setTranslate:()=>{const{slides:e,wrapperEl:s,slidesSizesGrid:a}=t,r=t.params.creativeEffect,{progressMultiplier:n}=r,l=t.params.centeredSlides;if(l){const e=a[0]/2-t.params.slidesOffsetBefore||0;s.style.transform=`translateX(calc(50% - ${e}px))`}for(let s=0;s