This commit is contained in:
2026-04-07 22:22:35 +05:30
parent c5d80ec918
commit ec57f9a24d
168 changed files with 42358 additions and 113882 deletions

View File

@@ -0,0 +1,268 @@
/*! elementor - v3.32.0 - 05-10-2025 */
"use strict";
(self.webpackChunkelementorFrontend = self.webpackChunkelementorFrontend || []).push([
[557], {
628: (e, t, i) => {
Object.defineProperty(t, "__esModule", {
value: !0
}), t.default = void 0, i(4846), i(9655);
class BackgroundSlideshow extends elementorModules.frontend.handlers.SwiperBase {
getDefaultSettings() {
return {
classes: {
swiperContainer: "elementor-background-slideshow swiper",
swiperWrapper: "swiper-wrapper",
swiperSlide: "elementor-background-slideshow__slide swiper-slide",
swiperPreloader: "swiper-lazy-preloader",
slideBackground: "elementor-background-slideshow__slide__image",
kenBurns: "elementor-ken-burns",
kenBurnsActive: "elementor-ken-burns--active",
kenBurnsIn: "elementor-ken-burns--in",
kenBurnsOut: "elementor-ken-burns--out"
}
}
}
getSwiperOptions() {
const e = this.getElementSettings(),
t = {
grabCursor: !1,
slidesPerView: 1,
slidesPerGroup: 1,
loop: "yes" === e.background_slideshow_loop,
speed: e.background_slideshow_transition_duration,
autoplay: {
delay: e.background_slideshow_slide_duration,
stopOnLastSlide: !e.background_slideshow_loop
},
handleElementorBreakpoints: !0,
on: {
slideChange: () => {
e.background_slideshow_ken_burns && this.handleKenBurns()
}
}
};
switch ("yes" === e.background_slideshow_loop && (t.loopedSlides = this.getSlidesCount()), e.background_slideshow_slide_transition) {
case "fade":
t.effect = "fade", t.fadeEffect = {
crossFade: !0
};
break;
case "slide_down":
t.autoplay.reverseDirection = !0, t.direction = "vertical";
break;
case "slide_up":
t.direction = "vertical"
}
return "yes" === e.background_slideshow_lazyload && (t.lazy = {
loadPrevNext: !0,
loadPrevNextAmount: 1
}), t
}
buildSwiperElements() {
const e = this.getSettings("classes"),
t = this.getElementSettings(),
i = "slide_left" === t.background_slideshow_slide_transition ? "ltr" : "rtl",
o = jQuery("<div>", {
class: e.swiperContainer,
dir: i
}),
n = jQuery("<div>", {
class: e.swiperWrapper
}),
s = t.background_slideshow_ken_burns,
r = "yes" === t.background_slideshow_lazyload;
let d = e.slideBackground;
if (s) {
d += " " + e.kenBurns;
const i = "in" === t.background_slideshow_ken_burns_zoom_direction ? "kenBurnsIn" : "kenBurnsOut";
d += " " + e[i]
}
r && (d += " swiper-lazy"), this.elements.$slides = jQuery(), t.background_slideshow_gallery.forEach(t => {
const i = jQuery("<div>", {
class: e.swiperSlide
});
let o;
if (r) {
const i = jQuery("<div>", {
class: e.swiperPreloader
});
o = jQuery("<div>", {
class: d,
"data-background": t.url
}), o.append(i)
} else o = jQuery("<div>", {
class: d,
style: 'background-image: url("' + t.url + '");'
});
i.append(o), n.append(i), this.elements.$slides = this.elements.$slides.add(i)
}), o.append(n), this.$element.prepend(o), this.elements.$backgroundSlideShowContainer = o
}
async initSlider() {
if (1 >= this.getSlidesCount()) return;
const e = this.getElementSettings(),
t = elementorFrontend.utils.swiper;
this.swiper = await new t(this.elements.$backgroundSlideShowContainer, this.getSwiperOptions()), this.elements.$backgroundSlideShowContainer.data("swiper", this.swiper), e.background_slideshow_ken_burns && this.handleKenBurns()
}
activate() {
this.buildSwiperElements(), this.initSlider()
}
deactivate() {
this.swiper && (this.swiper.destroy(), this.elements.$backgroundSlideShowContainer.remove())
}
run() {
"slideshow" === this.getElementSettings("background_background") ? this.activate() : this.deactivate()
}
onInit() {
super.onInit(), this.getElementSettings("background_slideshow_gallery") && this.run()
}
onDestroy() {
super.onDestroy(), this.deactivate()
}
onElementChange(e) {
"background_background" === e && this.run()
}
}
t.default = BackgroundSlideshow
},
3031: (e, t, i) => {
Object.defineProperty(t, "__esModule", {
value: !0
}), t.default = void 0, i(4846), i(6211);
class BackgroundVideo extends elementorModules.frontend.handlers.Base {
getDefaultSettings() {
return {
selectors: {
backgroundVideoContainer: ".elementor-background-video-container",
backgroundVideoEmbed: ".elementor-background-video-embed",
backgroundVideoHosted: ".elementor-background-video-hosted"
}
}
}
getDefaultElements() {
const e = this.getSettings("selectors"),
t = {
$backgroundVideoContainer: this.$element.find(e.backgroundVideoContainer)
};
return t.$backgroundVideoEmbed = t.$backgroundVideoContainer.children(e.backgroundVideoEmbed), t.$backgroundVideoHosted = t.$backgroundVideoContainer.children(e.backgroundVideoHosted), t
}
calcVideosSize(e) {
let t = "16:9";
"vimeo" === this.videoType && (t = e[0].width + ":" + e[0].height);
const i = this.elements.$backgroundVideoContainer.outerWidth(),
o = this.elements.$backgroundVideoContainer.outerHeight(),
n = t.split(":"),
s = n[0] / n[1],
r = i / o > s;
return {
width: r ? i : o * s,
height: r ? i / s : o
}
}
changeVideoSize() {
if ("hosted" !== this.videoType && !this.player) return;
let e;
if ("youtube" === this.videoType ? e = jQuery(this.player.getIframe()) : "vimeo" === this.videoType ? e = jQuery(this.player.element) : "hosted" === this.videoType && (e = this.elements.$backgroundVideoHosted), !e) return;
const t = this.calcVideosSize(e);
e.width(t.width).height(t.height)
}
startVideoLoop(e) {
if (!this.player.getIframe().contentWindow) return;
const t = this.getElementSettings(),
i = t.background_video_start || 0,
o = t.background_video_end;
if (!t.background_play_once || e) {
if (this.player.seekTo(i), o) {
setTimeout(() => {
this.startVideoLoop(!1)
}, 1e3 * (o - i + 1))
}
} else this.player.stopVideo()
}
prepareVimeoVideo(e, t) {
const i = this.getElementSettings(),
o = {
url: t,
width: this.elements.$backgroundVideoContainer.outerWidth().width,
autoplay: !0,
loop: !i.background_play_once,
transparent: !0,
background: !0,
muted: !0
};
i.background_privacy_mode && (o.dnt = !0), this.player = new e.Player(this.elements.$backgroundVideoContainer, o), this.handleVimeoStartEndTimes(i), this.player.ready().then(() => {
jQuery(this.player.element).addClass("elementor-background-video-embed"), this.changeVideoSize()
})
}
handleVimeoStartEndTimes(e) {
e.background_video_start && this.player.on("play", t => {
0 === t.seconds && this.player.setCurrentTime(e.background_video_start)
}), this.player.on("timeupdate", t => {
e.background_video_end && e.background_video_end < t.seconds && (e.background_play_once ? this.player.pause() : this.player.setCurrentTime(e.background_video_start)), this.player.getDuration().then(i => {
e.background_video_start && !e.background_video_end && t.seconds > i - .5 && this.player.setCurrentTime(e.background_video_start)
})
})
}
prepareYTVideo(e, t) {
const i = this.elements.$backgroundVideoContainer,
o = this.getElementSettings();
let n = e.PlayerState.PLAYING;
window.chrome && (n = e.PlayerState.UNSTARTED);
const s = {
videoId: t,
events: {
onReady: () => {
this.player.mute(), this.changeVideoSize(), this.startVideoLoop(!0), this.player.playVideo()
},
onStateChange: t => {
switch (t.data) {
case n:
i.removeClass("elementor-invisible elementor-loading");
break;
case e.PlayerState.ENDED:
"function" == typeof this.player.seekTo && this.player.seekTo(o.background_video_start || 0), o.background_play_once && this.player.destroy()
}
}
},
playerVars: {
controls: 0,
rel: 0,
playsinline: 1,
cc_load_policy: 0
}
};
o.background_privacy_mode && (s.host = "https://www.youtube-nocookie.com", s.origin = window.location.hostname), i.addClass("elementor-loading elementor-invisible"), this.player = new e.Player(this.elements.$backgroundVideoEmbed[0], s)
}
activate() {
let e, t = this.getElementSettings("background_video_link");
const i = this.getElementSettings("background_play_once");
if (-1 !== t.indexOf("vimeo.com") ? (this.videoType = "vimeo", this.apiProvider = elementorFrontend.utils.vimeo) : t.match(/^(?:https?:\/\/)?(?:www\.)?(?:m\.)?(?:youtu\.be\/|youtube\.com)/) && (this.videoType = "youtube", this.apiProvider = elementorFrontend.utils.youtube), this.apiProvider) e = this.apiProvider.getVideoIDFromURL(t), this.apiProvider.onApiReady(i => {
"youtube" === this.videoType && this.prepareYTVideo(i, e), "vimeo" === this.videoType && this.prepareVimeoVideo(i, t)
});
else {
this.videoType = "hosted";
const e = this.getElementSettings("background_video_start"),
o = this.getElementSettings("background_video_end");
(e || o) && (t += "#t=" + (e || 0) + (o ? "," + o : "")), this.elements.$backgroundVideoHosted.attr("src", t).one("canplay", this.changeVideoSize.bind(this)), i && this.elements.$backgroundVideoHosted.on("ended", () => {
this.elements.$backgroundVideoHosted.hide()
})
}
elementorFrontend.elements.$window.on("resize elementor/bg-video/recalc", this.changeVideoSize)
}
deactivate() {
"youtube" === this.videoType && this.player.getIframe() || "vimeo" === this.videoType ? this.player.destroy() : this.elements.$backgroundVideoHosted.removeAttr("src").off("ended"), elementorFrontend.elements.$window.off("resize", this.changeVideoSize)
}
run() {
const e = this.getElementSettings();
(e.background_play_on_mobile || "mobile" !== elementorFrontend.getCurrentDeviceMode()) && ("video" === e.background_background && e.background_video_link ? this.activate() : this.deactivate())
}
onInit() {
super.onInit(...arguments), this.changeVideoSize = this.changeVideoSize.bind(this), this.run()
}
onElementChange(e) {
"background_background" === e && this.run()
}
}
t.default = BackgroundVideo
}
}
]);