PageSourceSearch

https://novayaopera.ru/frontend/build/js/animation.js?v=20260926-festival-home

js novayaopera.ru collected 2026-10-02 10:04:32 UTC 28,349 bytes, 1,023 lines download raw bytes

1import { Slideshow } from "../js/slideshow.js";
2let slideshow;
3
4//===========================================TopSlider============================================================
5
6const slideShowInit = () => {
7  var slides = document.querySelector(".slides");
8
9  if (document.body.contains(document.querySelector(".slides"))) {
10    slideshow = new Slideshow(slides);
11
12	window.addEventListener("resize", () => {
13		slideshow.DOM.changesColor()
14	});
15
16    if (slideshow.slidesTotal <= 1) {
17      slideshow.DOM.countColor.style.display = "none";
18      const slidesOne = document.querySelectorAll(".top-slider-over-wrapper");
19      slidesOne.forEach((elem, i) => {
20        const slidesOneItem = elem.querySelectorAll(".slider-countable");
21        slidesOneItem[i].classList.add("slides-one");
22      });
23      slideshow.DOM.slideLightActive ? slideshow.DOM.changesColor() : null;
24    } else {
25      document
26        .querySelector(".slides-nav__item--prev")
27        .addEventListener("click", () => slideshow.prev());
28      document
29        .querySelector(".slides-nav__item--next")
30        .addEventListener("click", () => slideshow.next());
31
32//===========================================TopSliderTouch=======================================================
33
34      let startX;
35
36      function handleTouchEnd(event) {
37        const endX = event.changedTouches[0].clientX;
38        const swipeLimit = 50;
39
40        if (endX - startX > swipeLimit) {
41          slideshow.prev();
42        } else if (startX - endX > swipeLimit) {
43          slideshow.next();
44        }
45
46        document
47          .querySelector(".slides")
48          .removeEventListener("touchend", handleTouchEnd, {
49            passive: false,
50          });
51      }
52
53      document.querySelector(".slides").addEventListener(
54        "touchstart",
55        function (event) {
56          if (event.touches.length === 1) {
57            startX = event.touches[0].clientX;
58
59            document
60              .querySelector(".slides")
61              .addEventListener("touchend", handleTouchEnd, {
62                passive: false,
63              });
64          }
65        },
66        {
67          passive: false,
68        }
69      );
70
71//===========================================EndTopSliderTouch====================================================
72    }
73  }
74
75};
76
77//===========================================EndTopSlider=========================================================
78//================================================================================================================
79//===========================================AnimationArrow=======================================================
80
81const arrowNext = () => {
82  const rightSvg = document.querySelectorAll(".arrow-right-svg");
83  gsap
84    .timeline({
85      defaults: {
86        duration: 0.55,
87        ease: "power1.inOut",
88      },
89      onStart: () => {
90        rightSvg.forEach((a) => {
91          a.classList.add("active-arrow");
92        });
93      },
94      onComplete: () => {
95        rightSvg.forEach((a) => {
96          a.classList.remove("active-arrow");
97        });
98      },
99    })
100    .addLabel("start", 0)
101    .to(document.querySelector(".arrow-right-svg"), {
102      ease: "power1.inOut",
103    });
104};
105
106const arrowPrev = () => {
107  const leftSvg = document.querySelectorAll(".arrow-left-svg");
108  gsap
109    .timeline({
110      defaults: {
111        duration: 0.55,
112        ease: "power1.inOut",
113      },
114      onStart: () => {
115        leftSvg.forEach((a) => {
116          a.classList.add("active-left-arrow");
117        });
118      },
119      onComplete: () => {
120        leftSvg.forEach((a) => {
121          a.classList.remove("active-left-arrow");
122        });
123      },
124    })
125    .addLabel("start", 0)
126    .to(document.querySelector(".arrow-left-svg"), {
127      ease: "power1.inOut",
128    });
129};
130
131//===========================================EndAnimationArrow====================================================
132//================================================================================================================
133//===========================================AnimationLinkLine====================================================
134
135const btnLinkAnimation = () => {
136
137  document.querySelectorAll(".afisha-modal-desc, .afisha-filters-item, .page-header-ttl-over-wrapper .tab-ttl, .tab-index li, .section-nav-item").forEach((el, i) => {
138    const lineLink = el.querySelector(".line-btn-link");
139
140    if (lineLink !== null) {
141      el.addEventListener("mouseenter", () => {
142        lineLink.classList.add("line");
143      });
144      el.addEventListener("mouseout", () => {
145        lineLink.classList.remove("line");
146      });
147    }
148
149  });
150};
151
152//===========================================EndAnimationLinkLine
152=================================================
153//================================================================================================================
154//===========================================AnimationTopSlides===================================================
155
156const scroll = () => {
157  const contentElements = [...document.querySelectorAll(".content-scroll")];
158  const totalContentElements = contentElements.length;
159  contentElements.forEach((el, position) => {
160    const isLast = position === totalContentElements - 1;
161
162    gsap.timeline({
163      scrollTrigger: {
164        trigger: ".content-scroll-news",
165        start: "-80px top",
166        end: "+=100%",
167        scrub: true,
168        toggleClass: "scroll-news",
169      },
170    });
171
172    gsap
173      .timeline({
174        scrollTrigger: {
175          trigger: el,
176          start: "top top",
177          end: "+=100%",
178          scrub: true,
179          toggleClass: "content-sticky",
180        },
181      })
182      .to(
183        el,
184        {
185          ease: "none",
186          startAt: { filter: "brightness(100%) contrast(100%)" },
187          filter: isLast ? "none" : "brightness(45%) contrast(95%)",
188          yPercent: isLast ? 0 : -35,
189        },
190        0
191      )
192      .to(
193        ".top-slide-bg-inner",
194        {
195          ease: "none",
196          startAt: { filter: "blur(0px)" },
197          filter: isLast ? "none" : "blur(15px)",
198          yPercent: isLast ? 0 : -15,
199          scale: 1,
200        },
201        0
202      );
203  });
204};
205
206//===========================================EndAnimationTopSlides================================================
207//================================================================================================================
208//===========================================AnimationBlurEffect==================================================
209
210const img = () => {
211  const contentImg = [...document.querySelectorAll(".article-pic-inner-main")];
212  contentImg.forEach((el) => {
213    gsap
214      .timeline({
215        scrollTrigger: {
216          trigger: el,
217          start: "top bottom",
218          end: "bottom bottom",
219          scrub: true,
220        },
221      })
222      .to(
223        el,
224        {
225          ease: "none",
226          startAt: { filter: "blur(15px)" },
227          filter: "blur(0px)",
228          scale: 1,
229        },
230        0
231      );
232  });
233};
234
235//===========================================EndAnimationBlurEffect===============================================
236//================================================================================================================
237//===========================================AnimationStickyFestival==============================================
238
239const scrollSlide = () => {
240  const contentSlide = [...document.querySelectorAll(".festival-slide")];
241
242  contentSlide.forEach((el) => {
243    const tl = gsap
244      .timeline({
245        scrollTrigger: {
246          trigger: el,
247          start: "center center",
248          end: "max",
249          scrub: true,
250        },
251      })
252      .to(
253        el,
254        {
255          ease: "none",
256          scale: 0.7,
257          yPercent: -45,
258        },
259        0
260      );
261    ScrollTrigger.refresh();
262  });
263};
264
265const scrollSlides = () => {
266  const contentSlide = [...document.querySelectorAll(".festival-slide")];
267  if (window.screen.width > 767) {
268    scrollSlide();
269  } else {
270    contentSlide.forEach((el) => {
271      el.style.position = "relative";
272    });
273  }
274};
275
276//===========================================EndAnimationStickyFestival===========================================
277//================================================================================================================
278//===========================================NewsSwiperSlider=====================================================
279
280const newsSliderInit = () => {
281  let newsItem = document.querySelectorAll(".news-list-home");
282
283  newsItem.forEach((slider) => {
284    new Swiper(slider, {
285      grabCursor: true,
286      slidesPerView: 1,
287      // autoHeight: true,
288      speed: 1000,
289      ease: "power3.inOut",
290      watchSlidesProgress: true,
291      effect: "creative",
292      creativeEffect: {
293        prev: {
294          translate: ["-0%", 0, -1],
295        },
296        next: {
297          translate: ["100%", 0, 0],
298        },
299      },
300      navigation: {
301        nextEl: slider.querySelector(".swiper-button-next"),
302        prevEl: slider.querySelector(".swiper-button-prev"),
303      },
304      on: {
305        slideNextTransitionStart: function () {
306          arrowNext();
307        },
308        slidePrevTransitionStart: function () {
309          arrowPrev();
310        },
311      },
312		pagination: {
313			el: slider.querySelector(".slider-count"),
314			type: "fraction",
315			formatFractionCurrent: addZero,
316			formatFractionTotal: addZero
317		},
318    });
319  });
320};
321
322//===========================================EndNewsSwiperSlider==================================================
323//================================================================================================================
324//===========================================PartnersSwiperSlider=================================================
325
326const initSwiper = () => {
327  let partnersSlides = [...document.querySelectorAll(".partners-list")];
328
329  let sliderNews;
330
331  const newsSwiper = () => {
332    partnersSlides.forEach((slider, i) => {
333      // Use the actual viewport, not the physical screen. This also makes the
334      // slider respond correctly to mobile browser viewports and orientation.
335      let slidesPerViews =
336        window.innerWidth <= 767 ? 2 : window.innerWidth <= 1023 ? 3 : 5;
337      let slidesPerGroups =
338        window.innerWidth <= 767 ? 2 : window.innerWidth <= 1023 ? 3 : 5;
339
340      sliderNews = new Swiper(slider, {
341        slidesPerView: slidesPerViews,
342        slidesPerGroup: slidesPerGroups,
343        grabCursor: true,
344        spaceBetween: 8,
345        speed: 1000,
346        pagination: {
347          el: ".slider-count",
348          type: "fraction",
349          formatFractionCurrent: addZero,
350          formatFractionTotal: addZero,
351        },
352        navigation: {
353          nextEl: ".swiper-button-next",
354          prevEl: ".swiper-button-prev",
355        },
356        breakpoints: {
357          767: {
358            slidesPerView: slidesPerViews,
359            slidesPerGroup: slidesPerGroups,
360          },
361          1023: {
362            slidesPerView: slidesPerViews,
363            slidesPerGroup: slidesPerGroups,
364          },
365        },
366        on: {
367          slideNextTransitionStart: function () {
368            arrowNext();
369          },
370          slidePrevTransitionStart: function () {
371            arrowPrev();
372          },
373        },
374      });
375
376      function addZero(num) {
377        return num > 9 ? num : "0" + num;
378      }
379    });
380  };
381  const resizeHandlerSlider = () => {
382    window.addEventListener("resize", () => {
383      if (sliderNews) {
384        sliderNews.destroy();
385      }
386      newsSwiper();
387    });
388  };
389
390  resizeHandlerSlider();
391
392  newsSwiper();
393};
394
395//===========================================EndPartnersSwiperSlider==============================================
396//================================================================================================================
397//===========================================AnimationButton======================================================
398
399// const btnAnimationInit = () => {
400//   let btnElem = document.querySelectorAll(".btn-animation");
401
402//   btnElem.forEach((btn) => {
403//     let elem = btn.querySelector(".span-fill");
404//     btn.addEventListener("mouseenter", function (e) {
405//       const s = function offset(el) {
406//         let box = btn.getBoundingClientRect();
407//         let docElem = document.documentElement;
408//         return {
409//           top: box.top + window.pageYOffset - docElem.clientTop,
410//           left: box.left + window.pageXOffset - docElem.clientLeft,
411//         };
412//       };
413
414//       let relX = e.pageX - s().left;
415//       let relY = e.pageY - s().top;
416
417//       elem.style.left = relX + "px";
418//       elem.style.top = relY + "px";
419//     });
420//   });
421// };
422
423//===========================================EndAnimationButton===================================================
424//================================================================================================================
425//===========================================FixedMenu============================================================
426
427const headerInit = () => {
428  const fixedHeader = () => {
429    let scrollPos = window.pageYOffset,
430      offsetPos = 0;
431
432    if ($(".bvi-panel").length && !$(".bvi-panel").hasClass("bvi-panel-hide")) {
433      offsetPos += $(".bvi-panel").outerHeight();
434    }
435
436    const topSlider = document.querySelector(".top-slider-over-wrapper");
437
438    if (document.body.contains(document.querySelector(".top-slider"))) {
439      if (scrollPos > topSlider.clientHeight) {
440        if (document.querySelector(".header").classList.contains("fixed")) {
441        }
442        document.querySelector(".header").classList.add("fixed");
443      } else {
444        if (document.querySelector(".header").classList.contains("fixed")) {
445          document.querySelector(".header").classList.remove("fixed");
446        }
447      }
448    } else if (scrollPos > offsetPos) {
449      if (document.querySelector(".header").classList.contains("fixed")) {
450      }
451      document.querySelector(".header").classList.add("fixed");
452    } else {
453      if (document.querySelector(".header").classList.contains("fixed")) {
454        document.querySelector(".header").classList.remove("fixed");
455      }
456    }
457  };
458
459  window.addEventListener("scroll", () => {
460    fixedHeader();
461  });
462};
463
464//===========================================EndFixedMenu=========================================================
465//================================================================================================================
466//===========================================AnimationOpenMenu====================================================
467
468const headerMenuInit = () => {
469
470  let toggle = false;
471
472  const headerTop = document.querySelector(".header-top");
473  const headerMenu = document.querySelector(".header-menu");
474  const headerLogoColor = document.querySelector(".header-logo");
475  const itemNone = document.querySelectorAll(".item-none");
476
477  const c = () => {
478    gsap
479      .timeline({
480        defaults: {
481          duration: 0.55,
482          ease: "power1.inOut",
483        },
484        onStart: () => {
485          headerLogoColor.classList.add("fill-svg-logo");
486
487          headerTop.style.borderBottom = "1px solid transparent"
488            ? (headerTop.style.borderBottom = "0 solid transparent")
489            : (headerTop.style.borderBottom = "1px solid transparent");
490
491          itemNone.forEach((e, i) => {
492            e.classList.add("item-none-down");
493          });
494          document
495            .querySelector(".header-humb-menu")
496            .classList.add("menu-enter");
497          document.querySelector(".menu-svg").classList.add("active-menu-svg");
498          document.querySelector(".middle").classList.remove("middle-hover");
499        },
500        onComplete: () => {},
501      })
502      .addLabel("start", 0)
503      .to(headerMenu, {
504        height: "100%",
505      });
506  };
507
508  const b = () => {
509    gsap
510      .timeline({
511        defaults: {
512          duration: 0.55,
513          ease: "power1.inOut",
514        },
515        onStart: () => {},
516        onComplete: () => {
517          headerLogoColor.classList.remove("fill-svg-logo");
518          headerTop.style.borderBottom = "0 solid transparent"
519            ? (headerTop.style.borderBottom = "")
520            : (headerTop.style.borderBottom = "0 solid transparent");
521          itemNone.forEach((e) => {
522            e.classList.remove("item-none-down");
523          });
524          document
525            .querySelector(".header-humb-menu")
526            .classList.remove("menu-enter");
527          document
528            .querySelector(".menu-svg")
529            .classList.remove("active-menu-svg");
530          document.querySelector(".middle").classList.add("middle-hover");
531        },
532      })
533      .addLabel("start", 0)
534      .to(headerMenu, {
535        height: 0,
536      });
537  };
538
539  document.querySelector(".header-humb-menu").addEventListener("click", () => {
540
541    if ($(".bvi-panel").length && !$(".bvi-panel").hasClass("bvi-panel-hide") && !$("header").hasClass("fixed")) {
542
543      $(".header-menu").css({
544        top: $(".bvi-panel").outerHeight() - $(window).scrollTop()
545      })
546
547    } else {
548
549      $(".header-menu").css({
550        top: 0
551      })
552
553    }
554
555    document.querySelector(".header-menu").classList.toggle("active");
556    document.querySelector("html").classList.toggle("menu-open");
557
558    toggle = !toggle;
559    //toggle = toggle ? true : false;
560
561    c();
562
563    if (toggle == false) {
564      b();
565    }
566  });
567};
568
569//===========================================EndAnimationMenu=====================================================
570//================================================================================================================
571//===========================================SmoothScroll=========================================================
572
573const smoothScrollInit = () => {
574  SmoothScroll({
575    animationTime: 1000, // [ms]
576    stepSize: 100, // [px]
577
578    // Acceleration
579    // accelerationDelta : 50,  // 50
580    accelerationMax: 1, // 3
581  });
582};
583
584//===========================================EndSmoothScroll======================================================
585//================================================================================================================
586//===========================================LoaderAnimation======================================================
587
588// function startLoader() {
589//   gsap.to(".wrap-number", {
590//     duration: 1,
591//     opacity: 0,
592//     ease: "power4.inOut",
593//     delay: 0.5,
594//   });
595//   gsap.to(".loader", {
596//     duration: 1,
597//     zIndex: -1,
598//     ease: "power4.inOut",
599//     delay: 0.5,
600//   });
601//   gsap.fromTo(
602//     ".over-wrapper",
603//     {
604//       duration: 2,
605//       height: "90vh",
606//       width: "100vw",
607//       overflow: "hidden",
608//       position: "fixed",
609//       top: "200%",
610//       scale: 0.5,
611//       ease: "power4.inOut",
612//       delay: 0.5,
613//     },
614//     {
615//       duration: 2,
616//       height: "90vh",
617//       width: "100vw",
618//       overflow: "hidden",
619//       position: "fixed",
620//       scale: 0.5,
621//       top: 0,
622//       ease: "power4.inOut",
623//       delay: 0.5,
624//     }
625//   );
626//   gsap.to(".over-wrapper", {
627//     height: "100vh",
628//     duration: 2,
629//     scale: 1,
630//     ease: "power4.inOut",
631//     delay: 2,
632//   });
633//   gsap.to(".over-wrapper", {
634//     position: "relative",
635//     clearProps: "transform,height,width,overflow",
636//     delay: 4,
637//   });
638// }
639
640var preLoader = document.querySelector(".loader");
641
642function fadePreLoader(el) {
643  el.style.opacity = 1;
644  var interPreLoader = setInterval(function () {
645    el.style.opacity = el.style.opacity - 0.05;
646    if (el.style.opacity <= 0.05) {
647      clearInterval(interPreLoader);
648      preLoader.style.display = "none";
649      preLoader.style.opacity = 0;
650      document.querySelector("html").classList.remove("loading-hidden");
651    }
652  }, 15);
653}
654
655setTimeout(function () {
656  fadePreLoader(preLoader);
657}, 1500);
658
659if (document.readyState == "loading") {
660  document.addEventListener("DOMContentLoaded", work);
661} else {
662
663  setTimeout(function () {
664    loaderLogo()
665    loaderHeader()
666    // startLoader()
667  }, 100);
668}
669
670function loaderLogo() {
671  return gsap
672    .timeline({
673      defaults: {
674        duration: 2,
675        ease: "power1.inOut",
676      },
677    })
678    .addLabel("start", 0)
679    .to(".header-logo", {
680      duration: 0.5,
681      y: 50,
682      ease: "power2.inOut",
683    })
684    .to(".header-logo", {
685      duration: 0.5,
686      y: 0,
687      zIndex: 1,
688      ease: "power2.inOut",
689      delay: 0.2,
690    });
691}
692
693function loaderHeader() {
694  return gsap
695    .timeline({
696      defaults: {
697        duration: 2,
698        ease: "power1.inOut",
699      },
700    })
701    .addLabel("start", 0)
702    .to(".header-top", {
703      duration: 0.1,
704      borderBottom: "0px solid transparent",
705      // ease: "power2.inOut",
706    })
707    .to(".header-top-inner", {
708      duration: 0.5,
709      y: -20,
710      opacity: 0,
711      ease: "power2.inOut",
712    })
713    .to(".header-top-inner", {
714      duration: 0.5,
715      y: 0,
716      opacity: 1,
717      ease: "power2.inOut",
718      delay: 0.2,
719    })
720    .to(".header-top", {
721      duration: 0.5,
722      clearProps: "borderBottom",
723      ease: "power2.inOut",
724    });
725}
726
727//===========================================EndLoaderAnimation===================================================
728//================================================================================================================
729//===========================================AnimationTransitionPagesEffect=======================================
730
731function transitionLeaveAnimation() {
732  return gsap
733    .timeline({
734      defaults: {
735        duration: 2,
736        ease: "power1.inOut",
737      },
738    })
739    .addLabel("start", 0)
740    .to(".transition-loading", {
741      duration: 0.5,
742      scaleY: 1,
743      transformOrigin: "top",
744      ease: "power4.inOut",
745    })
746    .to(".transition-loading", {
747      duration: 0.5,
748      scaleY: 0,
749      transformOrigin: "bottom",
750      ease: "power4.inOut",
751      delay: 0.2,
752    });
753}
754
755function transitionEnterAnimation() {
756  return gsap
757    .timeline({
758      defaults: {
759        duration: 2,
760        ease: "power1.inOut",
761      },
762    })
763    .addLabel("start", 0)
764    .to(".header-top", {
765      duration: 0.1,
766      borderBottom: "0px solid transparent",
767      ease: "power2.inOut",
768    })
769    .to(".transition-loading", {
770      duration: 0.5,
771      scaleY: 1,
772      transformOrigin: "top",
773      ease: "power2.inOut",
774    })
775    .to(".transition-loading", {
776      duration: 0.5,
777      scaleY: 0,
778      transformOrigin: "bottom",
779      ease: "power2.inOut",
780      delay: 0.2,
781    })
782    .to(".header-top", {
783      duration: 0.5,
784      clearProps: "borderBottom",
785      ease: "power2.inOut",
786    });
787}
788
789function transitionLeaveAnimationLogo() {
790  return gsap
791    .timeline({
792      defaults: {
793        duration: 2,
794        ease: "power1.inOut",
795      },
796    })
797    .addLabel("start", 0)
798    .to(".header-logo", {
799      duration: 0.5,
800      y: 50,
801      ease: "power2.inOut",
802    })
803    .to(".header-logo", {
804      duration: 0.5,
805      y: 0,
806      zIndex: 1,
807      ease: "power2.inOut",
808      delay: 0.2,
809    });
810}
811
812function transitionLeaveAnimationHeader() {
813  return gsap
814    .timeline({
815      defaults: {
816        duration: 2,
817        ease: "power1.inOut",
818      },
819    })
820    .addLabel("start", 0)
821    .to(".header-top", {
822      duration: 0.1,
823      borderBottom: "0px solid transparent",
824      ease: "power2.inOut",
825    })
826    .to(".header-top-inner", {
827      duration: 0.5,
828      y: -20,
829      opacity: 0,
830      ease: "power2.inOut",
831    })
832    .to(".header-top-inner", {
833      duration: 0.5,
834      y: 0,
835      opacity: 1,
836      ease: "power2.inOut",
837      delay: 0.2,
838    })
839    .to(".header-top", {
840      duration: 0.5,
841      clearProps: "borderBottom",
842      ease: "power2.inOut",
843    });
844}
845
846function transitionEnterAnimationLogo() {
847  return gsap
848    .timeline({
849      defaults: {
850        duration: 2,
851        ease: "power1.inOut",
852      },
853    })
854    .addLabel("start", 0)
855    .to(".header-logo", {
856      duration: 0.5,
857      y: 50,
858      ease: "power2.inOut",
859    })
860    .to(".header-logo", {
861      duration: 0.5,
862      y: 0,
863      zIndex: 1,
864      ease: "power2.inOut",
865      delay: 0.2,
866    });
867}
868
869function transitionEnterAnimationHeader() {
870  return gsap
871    .timeline({
872      defaults: {
873        duration: 2,
874        ease: "power1.inOut",
875      },
876    })
877    .addLabel("start", 0)
878    .to(".header-top", {
879      duration: 0.1,
880      borderBottom: "0px solid transparent",
881      ease: "power2.inOut",
882    })
883    .to(".header-top-inner", {
884      duration: 0.5,
885      y: -20,
886      opacity: 0,
887      ease: "power2.inOut",
888    })
889    .to(".header-top-inner", {
890      duration: 0.5,
891      y: 0,
892      opacity: 1,
893      ease: "power2.inOut",
894      delay: 0.2,
895    })
896    .to(".header-top", {
897      duration: 0.5,
898      clearProps: "borderBottom",
899      ease: "power2.inOut",
900    });
901}
902
903//===========================================EndAnimationTransitionPagesEffect====================================
904//================================================================================================================
905//===========================================BarbaHooks===========================================================
906
907barba.hooks.after(() => {
908
909  $(window).scrollTop(0);
910
911  $("html").removeClass("menu-open");
912
913  $("body").removeClass("modal-open").css({
914    paddingRight: 0
915  });
916  $(".modal-backdrop").remove();
917
918  smoothScrollInit();
919  initForms();
920  fixDaysMob();
921  Splitting();
922  scroll();
923  img();
924  scrollSlides();
925  slideShowInit();
926  btnLinkAnimation();
927  headerMenuInit();
928  newsSliderInit();
929  // btnAnimationInit();
930  headerInit();
931  initSwiper();
932  if ($(".lazy-list").length) {
933	activateLazyImages($(".lazy-list"));
934  }
935  yall();
936
937  // console.log("stop")
938});
939
940//===========================================EndBarbaHooks========================================================
941//================================================================================================================
942//===========================================InitDocument=========================================================
943
944function ready() {
945  const initializePage = () => {
946    smoothScrollInit();
947    Splitting();
948    scroll();
949    img();
950    scrollSlides();
951    slideShowInit();
952    btnLinkAnimation();
953    headerMenuInit();
954    newsSliderInit();
955    // btnAnimationInit();
956    headerInit();
957    initSwiper();
958  };
959
960  if (document.readyState == "loading") {
961    document.addEventListener("DOMContentLoaded", initializePage, { once: true });
962  } else {
963    initializePage();
964  }
965}
966
967ready();
968
969//===========================================EndInitDocument======================================================
970//================================================================================================================
971//===========================================BarbaInit============================================================
972
973function delay(n) {
974  n = n || 0;
975  return new Promise((done) => {
976    setTimeout(() => done(), n);
977  });
978}
979
980if (!$("#panel").length) {
981
982  barba.init({
983    prevent: ({ el }) => (
984      el.hasAttribute('data-fancybox')
985      || $(el).closest("#panel").length
986      || $(el).closest(".bvi-panel").length
987      || $(el).closest(".bvi-body").length
988      || $(el).attr('href').includes("upload/")
989      || $(el).attr('href').includes("playbill/")
990	  || $(el).attr('href').includes("contacts/")
991      || $(el).attr('href').includes("#tab=")
992    ),
993    debug: true,
994    transitions: [
995      {
996        name: "transition",
997        sync: true,
998
999        async leave(data) {
1000          const done = this.async();
1001          transitionLeaveAnimation();
1002          transitionLeaveAnimationLogo()
1003          transitionLeaveAnimationHeader()
1004          await delay(500);
1005          done();
1006        },
1007
1008        async enter(data) {
1009          const done = this.async();
1010          transitionEnterAnimation();
1011          transitionEnterAnimationLogo()
1012          transitionEnterAnimationHeader()
1013          await delay(500);
1014          done();
1015        }
1016      },
1017    ],
1018  });
1019
1020}
1021
1022
1023//===========================================EndBarbaInit=========================================================

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.