{"version":3,"file":"main-C5U5DnCh.js","sources":["../../dev/js/main.ts"],"sourcesContent":["\nlet currentPage = 1;\nwindow.addEventListener('DOMContentLoaded', () => {\n menuInit();\n const closeBannerEl: HTMLElement | null = document.getElementById('close-footer-banner');\n\n if (closeBannerEl) {\n closeBannerEl.addEventListener('click', () => {\n closeBannerEl.parentElement?.remove();\n })\n }\n\n const loadMoreEl: HTMLElement | null = document.getElementById('load-more');\n\n const observerCallback = (entries: any[]) => {\n entries.forEach(entry => {\n if (entry.isIntersecting) {\n fetch('/wp-json/tiv/get-more?page='+currentPage)\n .then(response => response.text())\n .then(html => {\n const newContent: HTMLDivElement = document.createElement('div');\n newContent.innerHTML = html;\n newContent.classList.add('mt-12');\n currentPage++;\n\n loadMoreEl?.insertAdjacentElement('beforebegin', newContent)\n\n })\n .catch(error => console.error('Error fetching HTML:', error));\n }\n });\n };\n\n const observer: IntersectionObserver = new IntersectionObserver(observerCallback, {\n root: null,\n threshold: 0.1\n });\n\n if(loadMoreEl) {\n observer.observe(loadMoreEl);\n }\n\n\n const searchOpenEl: HTMLElement | null = document.getElementById('search-btn');\n searchOpenEl?.addEventListener('click', ( e: MouseEvent ) => {\n\n e.stopPropagation();\n e.preventDefault();\n document.body.classList.add('search-is-active');\n\n })\n\n const searchCloseEl: HTMLElement | null = document.getElementById('close-search');\n\n searchCloseEl?.addEventListener('click', ( e: MouseEvent) => {\n\n e.stopPropagation();\n e.preventDefault();\n document.body.classList.remove('search-is-active')\n\n })\n\n const sliderContainer = document.querySelectorAll(\".ad-slider\");\n sliderContainer.forEach(element => {\n new Slider(element);\n })\n \n\n});\n\nfunction menuInit() {\n const links = Array.from(document.querySelectorAll('.menu-item-has-children > a'));\n const menuOpenEl: HTMLElement | null = document.getElementById('open-menu');\n const menuCloseEl: HTMLElement | null = document.getElementById('close-menu');\n const menuWrapper: HTMLElement | null = document.getElementById('mobile-menu');\n\n\n links.forEach(menuLink => {\n menuLink.addEventListener('click', ev => {\n ev.stopPropagation();\n ev.preventDefault();\n\n const clickedLink: HTMLElement | null = ev.target as HTMLElement | null;\n if (clickedLink) {\n const clickedLi: HTMLElement | null = clickedLink.parentElement;\n\n if (clickedLi) {\n if (clickedLi.classList.contains('open')) {\n clickedLi.classList.remove('open');\n } else {\n Array.from(document.querySelectorAll('.menu-item-has-children')).forEach(menuLiEl => {\n menuLiEl.classList.remove('open');\n });\n\n clickedLi.classList.add('open');\n }\n }\n }\n\n })\n });\n\n\n\n if (menuWrapper) {\n menuOpenEl?.addEventListener( 'click', () => {\n menuWrapper.classList.remove('-translate-x-full')\n } )\n\n menuCloseEl?.addEventListener( 'click', () => {\n menuWrapper.classList.add('-translate-x-full')\n } )\n }\n}\n\nclass Slider {\n private slides: HTMLElement;\n private totalSlides: number;\n private currentSlide: number = 0;\n private slideInterval: number = 10000; // 10 секунд\n\n constructor(sliderContainer: HTMLElement) {\n this.slides = sliderContainer.querySelector(\".ad-slides\")!;\n this.totalSlides = this.slides.children.length;\n this.startSlider();\n }\n\n private startSlider(): void {\n setInterval(() => this.nextSlide(), this.slideInterval);\n }\n\n private nextSlide(): void {\n this.currentSlide = (this.currentSlide + 1) % this.totalSlides;\n const offset = this.currentSlide * -100;\n this.slides.style.transform = `translateX(${offset}%)`;\n }\n}\n"],"names":[],"mappings":"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"}