!function o(s, a, l) { function c(t, e) { if (!a[t]) { if (!s[t]) { var n = "function" == typeof require && require; if (!e && n) return n(t, !0); if (u) return u(t, !0); var i = new Error("Cannot find module '" + t + "'"); throw i.code = "MODULE_NOT_FOUND", i } var r = a[t] = { exports: {} }; s[t][0].call(r.exports, function(e) { return c(s[t][1][e] || e) }, r, r.exports, o, s, a, l) } return a[t].exports } for (var u = "function" == typeof require && require, e = 0; e < l.length; e++) c(l[e]); return c }({ 1: [function(i, e, t) { "use strict"; var r, o = i("@babel/runtime/helpers/interopRequireDefault")(i("@babel/runtime/helpers/typeof")); r = jQuery, window.ravenFrontend = new function() { function e(e) { var t = window.ravenTools.activeElements; return "object" === (0, o.default)(window.ravenTools.activeElements) && (t = Object.values(window.ravenTools.activeElements)), !!t.includes(e) } var n = { "raven-product-add-to-cart.default": e("add-to-cart") && i("./widgets/add-to-cart").default, "raven-alert.default": e("alert") && i("./widgets/alert").default, "raven-advanced-accordion.default": e("advanced-accordion") && i("./widgets/advanced-accordion").default, "raven-countdown.default": e("countdown") && i("./widgets/countdown").default, "raven-counter.default": e("counter") && i("./widgets/counter").default, "raven-code-highlight.default": e("code-highlight") && i("./widgets/code-highlight").default, "raven-form.default": e("forms") && i("./widgets/form").default, "raven-reset-password.default": e("forms") && i("./widgets/form").default, "raven-login.default": e("forms") && i("./widgets/form").default, "raven-register.default": e("forms") && i("./widgets/form").default, "raven-social-login.default": e("forms") && i("./widgets/social-login").default, "raven-photo-roller.default": e("photo-roller") && i("./widgets/photo-roller").default, "raven-tabs.default": e("tabs") && i("./widgets/tabs").default, "raven-video.default": e("video") && i("./widgets/video").default, "raven-categories.outer_content": e("categories") && i("./widgets/categories").default, "raven-categories.inner_content": e("categories") && i("./widgets/categories").default, "raven-posts.classic": e("posts") && i("./widgets/posts").classic, "raven-posts.cover": e("posts") && i("./widgets/posts").cover, "raven-post-comments.default": e("post-comments") && i("./widgets/post-comments").default, "raven-posts-carousel.classic": e("posts") && i("./widgets/posts-carousel").classic, "raven-posts-carousel.cover": e("posts") && i("./widgets/posts-carousel").cover, "raven-progress-tracker.default": e("progress-tracker") && i("./widgets/progress-tracker").default, "raven-photo-album.cover": e("photo-album") && i("./widgets/photo-album").default, "raven-photo-album.stack": e("photo-album") && i("./widgets/photo-album").default, "raven-product-reviews.default": e("product-reviews") && i("./widgets/product-reviews").default, "raven-media-gallery.default": e("media-gallery") && i("./widgets/media-gallery").default, "raven-search-form.classic": e("search-form") && i("./widgets/search-form").classic, "raven-search-form.full": e("search-form") && i("./widgets/search-form").full, "raven-table-of-contents.default": e("table-of-contents") && i("./widgets/table-of-content").default, "raven-nav-menu.default": e("nav-menu") && i("./widgets/nav-menu").default, "raven-advanced-nav-menu.default": e("advanced-nav-menu") && i("./widgets/advanced-nav-menu").default, "raven-sticky-media-scroller.default": e("sticky-media-scroller") && i("./widgets/sticky-media-scroller").default, "raven-wc-products.default": e("products") && i("./widgets/wc-products").default, "raven-content-switch.default": e("content-switch") && i("./widgets/content-switch").default, "raven-product-gallery.default": e("product-gallery") && i("./widgets/product-gallery").default, "raven-product-data-tabs.default": e("product-data-tabs") && i("./widgets/product-data-tabs").default, "raven-my-account.default": e("my-account") && i("./widgets/my-account").default, "raven-image-comparison.default": e("image-comparison") && i("./widgets/image-comparison").default, "raven-animated-heading.default": e("animated-heading") && i("./widgets/animated-heading").default, "raven-hotspot.default": e("hotspot") && i("./widgets/hotspot").default, "raven-media-carousel.default": e("carousel") && i("./widgets/carousel/media-carousel").default, "raven-testimonial-carousel.default": e("carousel") && i("./widgets/carousel/testimonial-carousel").default, "raven-slider.default": e("slider") && i("./widgets/slider").default, "raven-social-share.default": e("social-share") && i("./widgets/social-share").default, "raven-reviews.default": e("carousel") && i("./widgets/carousel/testimonial-carousel").default, "raven-stripe-button.default": e("payments") && i("./widgets/stripe-button").default, "raven-paypal-button.default": e("payments") && i("./widgets/paypal-button").default, "raven-lottie.default": e("lottie") && i("./widgets/lottie").default, "raven-cart.default": e("cart") && i("./widgets/cart").default, "raven-advanced-posts.default": e("advanced-posts") && i("./widgets/advanced-posts").default, "raven-post-navigation.default": e("post-navigation") && i("./widgets/post-navigation").default, "raven-products-carousel.default": e("products-carousel") && i("./widgets/products-carousel").default, "raven-shopping-cart.default": e("shopping-cart") && i("./widgets/shopping-cart").default }; function t() { for (var e in n) elementorFrontend.hooks.addAction("frontend/element_ready/".concat(e), n[e]); var t; new (i("./utils/motion-effects/luncher").default), "undefined" == typeof elementorPro && void 0 !== window.elementor && 0 < r(".elementor").length && ((t = i("./utils/full-page-editor")).handleFullPageEditorBtn(), t.handleHeaderBtns()), i("./utils/wrapper-link"), i("./widgets/column"), i("./utils/tooltip"), i("./utils/animated-gradient") } this.Module = i("./utils/module"), this.utils = { Masonry: i("./utils/masonry"), Sortable: i("./utils/sortable"), Pagination: i("./utils/pagination"), Detector: i("./utils/detectr"), SmoothScroll: i("./utils/smoothscroll-polyfill") }, this.init = function() { r(window).on("elementor/frontend/init", t) } , this.init() } } , { "./utils/animated-gradient": 2, "./utils/detectr": 3, "./utils/full-page-editor": 4, "./utils/masonry": 5, "./utils/module": 6, "./utils/motion-effects/luncher": 13, "./utils/pagination": 17, "./utils/smoothscroll-polyfill": 18, "./utils/sortable": 19, "./utils/tooltip": 20, "./utils/wrapper-link": 21, "./widgets/add-to-cart": 22, "./widgets/advanced-accordion": 23, "./widgets/advanced-nav-menu": 24, "./widgets/advanced-posts": 25, "./widgets/alert": 26, "./widgets/animated-heading": 27, "./widgets/carousel/media-carousel": 29, "./widgets/carousel/testimonial-carousel": 30, "./widgets/cart": 31, "./widgets/categories": 32, "./widgets/code-highlight": 33, "./widgets/column": 34, "./widgets/content-switch": 35, "./widgets/countdown": 36, "./widgets/counter": 37, "./widgets/form": 38, "./widgets/hotspot": 39, "./widgets/image-comparison": 40, "./widgets/lottie": 41, "./widgets/media-gallery": 42, "./widgets/my-account": 43, "./widgets/nav-menu": 44, "./widgets/paypal-button": 45, "./widgets/photo-album": 46, "./widgets/photo-roller": 47, "./widgets/post-comments": 48, "./widgets/post-navigation": 49, "./widgets/posts": 51, "./widgets/posts-carousel": 50, "./widgets/product-data-tabs": 52, "./widgets/product-gallery": 53, "./widgets/product-reviews": 54, "./widgets/products-carousel": 55, "./widgets/progress-tracker": 56, "./widgets/search-form": 57, "./widgets/shopping-cart": 58, "./widgets/slider": 59, "./widgets/social-login": 60, "./widgets/social-share": 61, "./widgets/sticky-media-scroller": 62, "./widgets/stripe-button": 63, "./widgets/table-of-content": 64, "./widgets/tabs": 65, "./widgets/video": 66, "./widgets/wc-products": 67, "@babel/runtime/helpers/interopRequireDefault": 78, "@babel/runtime/helpers/typeof": 85 }], 2: [function(e, t, n) { "use strict"; var i = function(e) { var t, n, i, r, o, s; e.hasClass("raven-animated-gradient-yes") && (e.hasClass("elementor-widget-raven-button") && (e = e.find(".raven-button-overlay")), t = "", e.hasClass("elementor-widget-raven-heading") && ((t = e.find(".raven-heading-title-inner")).hasClass("raven-heading-title-inner") || (t = e.find(".raven-heading-title")), e = t), e.hasClass("elementor-widget-raven-text-marquee") && (e = e.find(".raven-marquee-text-item")), n = e.data("color"), i = "linear-gradient( " + e.data("angle") + "," + n + " )", r = e.data("speed"), o = e.data("background-size"), s = e.data("animation-name"), e.css("background-image", i), e.css("animation-duration", r), e.css("background-size", o), e.css("animation-name", s)) }; elementorFrontend.hooks.addAction("frontend/element_ready/global", function(e) { new i(e) }) } , {}], 3: [function(e, t, n) { "use strict"; Object.defineProperty(n, "__esModule", { value: !0 }), n.default = void 0; function i(p) { function e(e) { function s(e) { return -1 < a.indexOf(e) } var a = e.toLowerCase() , l = p.outerWidth || i.clientWidth , c = p.outerHeight || i.clientHeight , u = "webkit" , d = "mobile" , t = function() { var e, t, n = [], i = h.implementation, r = !!/applewebkit\/(\d{1,})/.test(a) && RegExp.$1, o = ""; switch (!0) { case s("msie") && !s("opera") && !s("webtv") || s("trident") || s("edge"): o = s("edge") ? /edge\/(\w+)/.test(a) ? " edge ie" + RegExp.$1 : " ie11" : s("msie 8.0") || s("trident/7.0") ? " ie11" : /msie\s(\d+)/.test(a) ? " ie" + RegExp.$1 : "", n.push("ie" + o); break; case s("iron/") || s("iron"): o = /iron\/(\d+)/.test(a) ? " iron" + RegExp.$1 : "", n.push(u + " iron" + o); break; case s("android") && s("u;") && (!s("chrome") || s("chrome") && r && r <= 534): n.push("android-browser"); break; case s("chrome/") || s("chrome"): o = /chrome\/(\d+)/.test(a) ? " chrome" + RegExp.$1 : "", n.push(u + " chrome" + o); break; case s("firefox/") || s("firefox"): o = /firefox\/(\d+)/.test(a) ? " firefox" + RegExp.$1 : "", n.push("gecko firefox" + o); break; case s("opera/") || s("opera"): o = /version(\s|\/)(\d+)/.test(a) || /opera(\s|\/)(\d+)/.test(a) ? " opera" + RegExp.$2 : "", n.push("opera" + o); break; case s("konqueror"): n.push(d + " konqueror"); break; case s("blackberry") || s("bb"): n.push(d + " blackberry"), s("bb") && (o = /bb(\d{1,2})(;{0,1})/.test(a) ? "bb" + RegExp.$1 : "", n.push(o)); break; case s("safari/") || s("safari"): o = /version\/(\d+)/.test(a) || /safari\/(\d+)/.test(a) ? " safari" + RegExp.$1 : "", n.push(u + " safari" + o); break; case s("applewebkit/") || s("applewebkit"): o = /applewebkit\/(\d+)/.test(a) ? " " + u + RegExp.$1 : "", n.push(u + " " + o); break; case s("gecko") || s("mozilla/"): n.push("gecko") } switch (!0) { case s("iphone") || s("ios"): " ios10" === (o = /iphone\sos\s(\d{1,2})/.test(a) ? " ios" + RegExp.$1 : "") && (e = /(\d{1,2})/.test(o) ? RegExp.$1 : 0, t = /\sversion\/(\d{1,2})/.test(a) ? RegExp.$1 : "", parseInt(e, 10) > parseInt(t, 10) && (o = " ios" + t)), n.push("ios" + o); break; case s("mac") || s("macintosh") || s("darwin"): o = /mac\sos\sx\s(\d{1,2}_\d{1,2})/.test(a) ? " osx" + RegExp.$1 : "", n.push("mac" + o); break; case s("windows") || s("win"): switch (o = /windows\s(nt\s{0,1})(\d{1,2}\.\d)/.test(a) ? "" + RegExp.$2 : "") { case "5.0": o = " win2k"; break; case "5.01": o = " win2k sp1"; break; case "5.1": case "5.2": o = " xp"; break; case "6.0": o = " vista"; break; case "6.1": o = " win7"; break; case "6.2": o = " win8"; break; case "6.3": o = " win8_1"; break; case "6.4": o = " win10"; break; default: o = " nt nt" + o } n.push("windows" + o); break; case s("webtv"): n.push("webtv"); break; case s("freebsd"): n.push("freebsd"); break; case s("android") || s("linux") && s("mobile"): n.push("android"); break; case s("linux") || s("x11"): n.push("linux") } switch (!0) { case s("wow64") || s("x64"): n.push("x64"); break; case s("arm"): n.push("arm"); break; default: n.push("x32") } switch (!0) { case s("j2me"): n.push(d + " j2me"); break; case /(iphone|ipad|ipod)/.test(a): n.push(d + " " + RegExp.$1); break; case s("mobile"): n.push(d) } return /touch/.test(a) && n.push("touch"), n.push("js"), n.push(void 0 !== i && "function" == typeof i.hasFeature && i.hasFeature("http://www.w3.org/TR/SVG11/feature#Image", "1.1") ? "svg" : "no-svg"), n.push(void 0 !== p.devicePixelRatio && 1 < p.devicePixelRatio ? "retina" : "no-retina"), n.push(l < c ? "portrait" : "landscape"), n } , n = h.documentElement.className.split(" ") , t = t(); return n = (n = n.concat(t)).filter(function(e, t) { return n.indexOf(e) === t }), i.className = n.join(" ").trim(), { detected: t.join(" ").trim(), version: "1.8.1" } } "function" != typeof String.prototype.trim && (String.prototype.trim = function() { return this.replace(/^\s+|\s+$/g, "") } ); var h = p.document , i = h.documentElement; function t() { p.detectr = e(p.navigator.userAgent) } p.detectr = e(p.navigator.userAgent), p.attachEvent ? p.attachEvent("onresize", t) : p.addEventListener && p.addEventListener("resize", t, !0) } i(window), n.default = i } , {}], 4: [function(e, t, n) { "use strict"; var i = {} , r = jQuery; window.ravenChangeDocument = function(e) { r(".elementor").find(".raven-document-handle-parent").remove(), window.elementorCommon.api.internal("panel/state-loading"), window.elementorCommon.api.run("editor/documents/switch", { id: e }).finally(function() { return i.handleFullPageEditorBtn(), window.elementorCommon.api.internal("panel/state-ready") }) } , i.handleFullPageEditorBtn = function() { r(".elementor").each(function() { var e, t; 0 < r(this).find(".raven-document-handle-parent").length && 0 < r(this).find(".raven-document-handle-parent").children().length || r(this).hasClass("elementor-edit-area-active") || void 0 !== (e = this.dataset.elementorTitle) && (t = '
Edit ' + e + "
", r(this).prepend(''), r(this).find(".raven-document-handle-parent").append(t)) }) } , i.handleHeaderBtns = function() { var t = 0; r("main").length && (t = r("main").offset().top), r(document).on("mouseenter", "header", function() { var e; 0 < t || 0 !== (e = r("main .raven-document-handle-parent .raven-document-handle").clone().addClass("fixed-top-btn")).length && (0 === r("header .elementor").find(".raven-document-handle-parent").length && (r("header .elementor").prepend('
'), r("header .elementor .raven-document-handle-parent").prepend(e)), 0 < r("header .elementor").find(".raven-document-handle-parent").length && r("header .elementor .raven-document-handle-parent").append(e)) }), r(document).on("mouseleave", "header", function() { 0 !== r("main .raven-document-handle-parent .raven-document-handle").length && (0 < t || r("header .elementor .raven-document-handle-parent .raven-document-handle.fixed-top-btn").remove()) }) } , t.exports = i } , {}], 5: [function(e, t, n) { "use strict"; var i = e("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(n, "__esModule", { value: !0 }), n.default = void 0; var r = i(e("./module")).default.extend({ getDefaultSettings: function() { return { masonryContainer: ".raven-masonry", columnClass: "raven-masonry-column", columns: this.getInstanceValue("columns") || 3, columnsTablet: this.getInstanceValue("columns_tablet") || 2, columnsMobile: this.getInstanceValue("columns_mobile") || 1 } }, getDefaultElements: function() { return { $masonryContainer: this.$element.find(this.getSettings("masonryContainer")) } }, run: function() { var e = this.getSettings() , t = ".elementor-element-".concat(this.getID(), " ").concat(e.masonryContainer); savvior.grids[t] && delete savvior.grids[t], savvior.init(t, { "screen and (min-width: 1025px)": { columnClasses: e.columnClass, columns: e.columns }, "screen and (max-width: 1024px) and (min-width: 768px)": { columnClasses: e.columnClass, columns: e.columnsTablet }, "screen and (max-width: 767px)": { columnClasses: e.columnClass, columns: e.columnsMobile } }) }, push: function(e) { var t, n, i; e && (t = this.getSettings(), n = ".elementor-element-".concat(this.getID(), " ").concat(t.masonryContainer), i = [], e.forEach(function(e) { var t = $(e); i.push(t[0]) }), savvior.grids[n] && savvior.addItems(n, i, { method: "append", clone: !1 })) } }); n.default = r } , { "./module": 6, "@babel/runtime/helpers/interopRequireDefault": 78 }], 6: [function(e, t, n) { "use strict"; Object.defineProperty(n, "__esModule", { value: !0 }), n.default = void 0; var i = elementorModules.frontend.handlers.Base.extend({ onSectionActivated: null, onEditorClosed: null, getInstanceValue: function(e) { return $ = jQuery, this.getElementSettings(this.getControlID(e)) }, getControlID: function(e) { var t = this.getElementSettings("_skin"); return t ? "".concat(t, "_").concat(e) : e }, scrollToContainer: function(e) { var t = e.offset().top - 50 , n = $("header").height() , i = document.querySelector("body"); (i.classList.contains("jupiterx-header-fixed") || i.classList.contains("jupiterx-header-sticked")) && (t = e.offset().top - n - 50), window.scroll({ top: t, behavior: "smooth" }) }, initEditorListeners: function() { var n = this; elementorModules.frontend.handlers.Base.prototype.initEditorListeners.apply(this, arguments), n.onSectionActivated && n.editorListeners.push({ event: "section:activated", to: elementor.channels.editor, callback: function(e, t) { t.model.id === n.getID() && n.onSectionActivated(e, t) } }), n.onEditorClosed && n.editorListeners.push({ event: "set:page:editor", to: elementor.getPanelView(), callback: function(e) { e.model.id === n.getID() && e.model.once("editor:close", function() { n.onEditorClosed() }) } }) }, onMobile: function() { return jQuery(window).width() <= 575.98 }, onTablet: function() { var e = jQuery(window).width(); return 575.98 < e && e <= 767.98 }, onDesktop: function() { return 767.98 < jQuery(window).width() }, isRtl: function() { return jQuery("body").hasClass("rtl") } }); n.default = i } , {}], 7: [function(e, t, n) { "use strict"; var i = e("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(n, "__esModule", { value: !0 }), n.default = void 0; var r = i(e("@babel/runtime/helpers/classCallCheck")) , o = i(e("@babel/runtime/helpers/createClass")) , s = i(e("@babel/runtime/helpers/inherits")) , a = i(e("@babel/runtime/helpers/possibleConstructorReturn")) , l = i(e("@babel/runtime/helpers/getPrototypeOf")); function c(i) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), !0 } catch (e) { return !1 } }(); return function() { var e, t, n = (0, l.default)(i); return t = r ? (e = (0, l.default)(this).constructor, Reflect.construct(n, arguments, e)) : n.apply(this, arguments), (0, a.default)(this, t) } } var u = function(e) { (0, s.default)(n, e); var t = c(n); function n() { return (0, r.default)(this, n), t.apply(this, arguments) } return (0, o.default)(n, [{ key: "onInit", value: function() { this.$element = this.getSettings("$targetElement"), this.refresh() } }, { key: "refresh", value: function() { this.rulesVariables = {}, this.CSSTransformVariables = [], this.$element.css({ transform: "", filter: "", opacity: "", "will-change": "" }) } }, { key: "translateX", value: function(e, t) { e.axis = "x", e.unit = "px", this.transform("translateX", t, e) } }, { key: "translateY", value: function(e, t) { e.axis = "y", e.unit = "px", this.transform("translateY", t, e) } }, { key: "translateXY", value: function(e, t, n) { this.translateX(e, t), this.translateY(e, n) } }, { key: "rotateX", value: function(e, t) { e.axis = "x", e.unit = "deg", this.transform("rotateX", t, e) } }, { key: "rotateY", value: function(e, t) { e.axis = "y", e.unit = "deg", this.transform("rotateY", t, e) } }, { key: "rotateZ", value: function(e, t) { e.unit = "deg", this.transform("rotateZ", t, e) } }, { key: "tilt", value: function(e, t, n) { var i = { intensity: e.intensity / 10, direction: e.direction }; this.rotateX(i, n), this.rotateY(i, 100 - t) } }, { key: "opacity", value: function(e, t) { var n = this.getDirectionMovePoint(t, e.direction, e.viewport) , i = e.intensity / 10 , r = 1 - i + i * n / 100; this.$element.css({ opacity: r, "will-change": "opacity" }) } }, { key: "blur", value: function(e, t) { var n = this.getDirectionMovePoint(t, e.direction, e.viewport) , i = e.intensity , r = i - i * n / 100; this.updateRulePart("filter", "blur", r + "px") } }, { key: "scale", value: function(e, t) { var n = this.getDirectionMovePoint(t, e.direction, e.viewport); this.updateRulePart("transform", "scale", 1 + e.intensity * n / 1e3) } }, { key: "transform", value: function(e, t, n) { n.direction && (t = 100 - t), this.updateRulePart("transform", e, this.getStep(t, n) + n.unit) } }, { key: "getDirectionMovePoint", value: function(e, t, n) { if (e < n.start) { var i = this.getMovePointFromPassedPercents(n.start, e); switch (t) { case "out-in": return 0; case "in-out": return 100; case "out-in-out": return i; case "in-out-in": return 100 - i } } if (e < n.end) { var r = this.getMovePointFromPassedPercents(n.end - n.start, e - n.start); switch (t) { case "out-in": return r; case "in-out": return 100 - r; case "out-in-out": return 100; case "in-out-in": return 0 } } var o = this.getMovePointFromPassedPercents(100 - n.end, 100 - e); switch (t) { case "out-in": return 100; case "in-out": return 0; case "out-in-out": return o; case "in-out-in": return 100 - o } } }, { key: "getMovePointFromPassedPercents", value: function(e, t) { return +(t / e * 100).toFixed(2) } }, { key: "getStep", value: function(e, t) { return "element" === this.getSettings("effectTarget") ? -(e - 50) * t.intensity : -this.getSettings("dimensions.movable" + t.axis.toUpperCase()) * e / 100 } }, { key: "updateRulePart", value: function(e, t, n) { this.rulesVariables[e] || (this.rulesVariables[e] = {}), this.rulesVariables[e][t] || (this.rulesVariables[e][t] = !0, this.updateRule(e)); var i = "--".concat(t); this.$element[0].style.setProperty(i, n) } }, { key: "updateRule", value: function(e) { var t = ""; t += this.concatTransformCSSProperties(e), t += this.concatTransformMotionEffectCSSProperties(e), this.$element.css(e, t) } }, { key: "concatTransformCSSProperties", value: function(e) { var o = ""; return "transform" === e && jQuery.each(this.CSSTransformVariables, function(e, t) { var n = t; t.startsWith("flip") && (t = t.replace("flip", "scale")); var i = t.startsWith("rotate") || t.startsWith("skew") ? "deg" : "px" , r = t.startsWith("scale") ? 1 : 0 + i; o += "".concat(t, "(var(--e-transform-").concat(n, ", ").concat(r, "))") }), o } }, { key: "concatTransformMotionEffectCSSProperties", value: function(e) { var t = ""; return jQuery.each(this.rulesVariables[e], function(e) { t += "".concat(e, "(var(--").concat(e, "))") }), t } }, { key: "setCSSTransformVariables", value: function(e) { var i = this; this.CSSTransformVariables = [], jQuery.each(e, function(e, t) { var n = e.match(/_transform_(.+?)_effect/m); if (n && t) { if ("perspective" === n[1]) return void i.CSSTransformVariables.unshift(n[1]); if (i.CSSTransformVariables.includes(n[1])) return; i.CSSTransformVariables.push(n[1]) } }) } }, { key: "runAction", value: function(e, t, n) { ["translateX", "translateY", "rotateZ"].includes(e) && (t.viewport.start > n && (n = t.viewport.start), t.viewport.end < n && (n = t.viewport.end)); for (var i = arguments.length, r = new Array(3 < i ? i - 3 : 0), o = 3; o < i; o++) r[o - 3] = arguments[o]; this[e].apply(this, [t, n].concat(r)) } }]), n }(elementorModules.Module); n.default = u } , { "@babel/runtime/helpers/classCallCheck": 72, "@babel/runtime/helpers/createClass": 73, "@babel/runtime/helpers/getPrototypeOf": 76, "@babel/runtime/helpers/inherits": 77, "@babel/runtime/helpers/interopRequireDefault": 78, "@babel/runtime/helpers/possibleConstructorReturn": 81 }], 8: [function(n, e, t) { "use strict"; var i = n("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(t, "__esModule", { value: !0 }), t.default = void 0; var p = i(n("@babel/runtime/helpers/typeof")) , o = i(n("@babel/runtime/helpers/classCallCheck")) , s = i(n("@babel/runtime/helpers/createClass")) , a = i(n("@babel/runtime/helpers/get")) , l = i(n("@babel/runtime/helpers/inherits")) , c = i(n("@babel/runtime/helpers/possibleConstructorReturn")) , u = i(n("@babel/runtime/helpers/getPrototypeOf")); function d(i) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), !0 } catch (e) { return !1 } }(); return function() { var e, t, n = (0, u.default)(i); return t = r ? (e = (0, u.default)(this).constructor, Reflect.construct(n, arguments, e)) : n.apply(this, arguments), (0, c.default)(this, t) } } var r = function(e) { (0, l.default)(r, e); var t = d(r); function r() { return (0, o.default)(this, r), t.apply(this, arguments) } return (0, s.default)(r, [{ key: "__construct", value: function() { for (var e, t = arguments.length, n = new Array(t), i = 0; i < t; i++) n[i] = arguments[i]; (e = (0, a.default)((0, u.default)(r.prototype), "__construct", this)).call.apply(e, [this].concat(n)), this.normalMotion = "raven_motion_effects", this.backgroundMotion = "background_" + this.normalMotion, this.toggle = elementorFrontend.debounce(this.toggle, 200) } }, { key: "onInit", value: function() { (0, a.default)((0, u.default)(r.prototype), "onInit", this).call(this), this.initEffects(), this.addCSSTransformEvents(), this.toggle() } }, { key: "getDefaultSettings", value: function() { return { selectors: { container: ".elementor-widget-container" } } } }, { key: "getDefaultElements", value: function() { var e = this.getSettings("selectors"); return { $container: $(this.$element).find(e.container) } } }, { key: "bindEvents", value: function() { elementorFrontend.elements.$window.on("resize", this.toggle) } }, { key: "unbindEvents", value: function() { elementorFrontend.elements.$window.off("resize", this.toggle) } }, { key: "initEffects", value: function() { this.effects = { translateY: { interaction: "scroll", actions: ["translateY"] }, translateX: { interaction: "scroll", actions: ["translateX"] }, rotateZ: { interaction: "scroll", actions: ["rotateZ"] }, scale: { interaction: "scroll", actions: ["scale"] }, opacity: { interaction: "scroll", actions: ["opacity"] }, blur: { interaction: "scroll", actions: ["blur"] }, mouseTrack: { interaction: "mouseMove", actions: ["translateXY"] }, tilt: { interaction: "mouseMove", actions: ["tilt"] } } } }, { key: "addCSSTransformEvents", value: function() { var e = this; this.getElementSettings(this.normalMotion + "_scrolling") && !this.isTransitionEventAdded && (this.isTransitionEventAdded = !0, this.elements.$container.on("mouseenter", function() { e.elements.$container.css("--e-transform-transition-duration", "") })) } }, { key: "prepareOptions", value: function(l) { var c = this , u = this.getElementSettings() , e = this.normalMotion === l ? "element" : "background" , d = {}; jQuery.each(u, function(e, t) { var o, s, n, i, r = new RegExp("^" + l + "_(.+?)_fx"), a = e.match(r); a && t && (o = {}, s = a[1], jQuery.each(u, function(e, t) { var n, i = new RegExp(l + "_" + s + "_fx_(.+)"), r = e.match(i); !r || "fx" !== (n = r[1]) && ("object" === (0, p.default)(t) && (t = Object.keys(t.sizes).length ? t.sizes : t.size), o[n] = t) }), n = c.effects[s], i = n.interaction, d[i] || (d[i] = {}), n.actions.forEach(function(e) { return d[i][e] = o })) }); var t, n, i = this.$element, r = this.getElementType(); "element" == e && "section" !== r && "container" !== r && (t = i, n = "column" === r ? elementorFrontend.config.legacyMode.elementWrappers ? ".elementor-column-wrap" : ".elementor-widget-wrap" : ".elementor-widget-container", i = i.find("> " + n)); var o = { effectTarget: e, interactions: d, elementSettings: u, $element: i, $dimensionsElement: t, refreshDimensions: this.isEdit, range: u[l + "_range"], classes: { element: "raven-motion-effects-element", parent: "raven-motion-effects-parent", perspective: "raven-motion-effects-perspective", backgroundType: "elementor-motion-effects-element-type-background", container: "elementor-motion-effects-container", layer: "elementor-motion-effects-layer" } }; return o.range || "fixed" !== this.getCurrentDeviceSetting("_position") || (o.range = "page"), "fixed" === this.getCurrentDeviceSetting("_position") && (o.isFixedPosition = !0), "background" == e && "column" === this.getElementType() && (o.addBackgroundLayerTo = " > .elementor-element-populated"), o } }, { key: "activate", value: function(e) { var t = this.prepareOptions(e); jQuery.isEmptyObject(t.interactions) || (this[e] = new (n("./motion-effects").default)(t)) } }, { key: "deactivate", value: function(e) { this[e] && (this[e].destroy(), delete this[e]) } }, { key: "toggle", value: function() { var r = this , o = elementorFrontend.getCurrentDeviceMode() , s = this.getElementSettings(); [this.normalMotion, this.backgroundMotion].forEach(function(e) { var t = s[e + "_devices"] , n = !t || -1 !== t.indexOf(o) , i = s[e + "_scrolling"] || s[e + "_mouse"]; if (n && i) return r[e] ? void r.refreshInstance(e) : void r.activate(e); r.deactivate(e) }) } }, { key: "refreshInstance", value: function(e) { var t, n = this[e]; n && (t = this.prepareOptions(e), n.setSettings(t), n.refresh()) } }, { key: "onElementChange", value: function(e) { var t = this; if (/raven_motion_effects_((scrolling)|(mouse)|(devices))$/.test(e)) return this.normalMotion + "_scrolling" === e && this.addCSSTransformEvents(), void this.toggle(); var n, i = e.match(".*?(".concat(this.normalMotion, "|_transform)")); i && (n = i[0].match("(_transform)") ? this.normalMotion : i[0], this.refreshInstance(n), this[n] || this.activate(n)), /^_position/.test(e) && [this.normalMotion, this.backgroundMotion].forEach(function(e) { t.refreshInstance(e) }) } }, { key: "onDestroy", value: function() { var t = this; (0, a.default)((0, u.default)(r.prototype), "onDestroy", this).call(this), [this.normalMotion, this.backgroundMotion].forEach(function(e) { t.deactivate(e) }) } }]), r }(elementorModules.frontend.handlers.Base); t.default = r } , { "./motion-effects": 12, "@babel/runtime/helpers/classCallCheck": 72, "@babel/runtime/helpers/createClass": 73, "@babel/runtime/helpers/get": 75, "@babel/runtime/helpers/getPrototypeOf": 76, "@babel/runtime/helpers/inherits": 77, "@babel/runtime/helpers/interopRequireDefault": 78, "@babel/runtime/helpers/possibleConstructorReturn": 81, "@babel/runtime/helpers/typeof": 85 }], 9: [function(e, t, n) { "use strict"; var i = e("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(n, "__esModule", { value: !0 }), n.default = void 0; var c = i(e("@babel/runtime/helpers/classCallCheck")) , r = i(e("@babel/runtime/helpers/createClass")) , u = i(e("@babel/runtime/helpers/assertThisInitialized")) , o = i(e("@babel/runtime/helpers/get")) , s = i(e("@babel/runtime/helpers/inherits")) , a = i(e("@babel/runtime/helpers/possibleConstructorReturn")) , d = i(e("@babel/runtime/helpers/getPrototypeOf")); function p(i) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), !0 } catch (e) { return !1 } }(); return function() { var e, t, n = (0, d.default)(i); return t = r ? (e = (0, d.default)(this).constructor, Reflect.construct(n, arguments, e)) : n.apply(this, arguments), (0, a.default)(this, t) } } var l = function(e) { (0, s.default)(l, e); var a = p(l); function l() { var e; (0, c.default)(this, l); for (var t, n, i, r = arguments.length, o = new Array(r), s = 0; s < r; s++) o[s] = arguments[s]; return e = a.call.apply(a, [this].concat(o)), t = (0, u.default)(e), i = function() { e.run(), e.animationFrameRequest = window.requestAnimationFrame(e.onInsideViewport) } , (n = "onInsideViewport")in t ? Object.defineProperty(t, n, { value: i, enumerable: !0, configurable: !0, writable: !0 }) : t[n] = i, e } return (0, r.default)(l, [{ key: "__construct", value: function(e) { this.motionFX = e.motionFX, this.intersectionObservers || this.setElementInViewportObserver() } }, { key: "setElementInViewportObserver", value: function() { var t = this; this.intersectionObserver = elementorModules.utils.Scroll.scrollObserver({ callback: function(e) { e.isInViewport ? t.onInsideViewport() : t.removeAnimationFrameRequest() } }); var e = "page" === this.motionFX.getSettings("range") ? elementorFrontend.elements.$body[0] : this.motionFX.elements.$parent[0]; this.intersectionObserver.observe(e) } }, { key: "runCallback", value: function() { this.getSettings("callback").apply(void 0, arguments) } }, { key: "removeIntersectionObserver", value: function() { this.intersectionObserver && this.intersectionObserver.unobserve(this.motionFX.elements.$parent[0]) } }, { key: "removeAnimationFrameRequest", value: function() { this.animationFrameRequest && window.cancelAnimationFrame(this.animationFrameRequest) } }, { key: "destroy", value: function() { this.removeAnimationFrameRequest(), this.removeIntersectionObserver() } }, { key: "onInit", value: function() { (0, o.default)((0, d.default)(l.prototype), "onInit", this).call(this) } }]), l }(elementorModules.ViewModule); n.default = l } , { "@babel/runtime/helpers/assertThisInitialized": 70, "@babel/runtime/helpers/classCallCheck": 72, "@babel/runtime/helpers/createClass": 73, "@babel/runtime/helpers/get": 75, "@babel/runtime/helpers/getPrototypeOf": 76, "@babel/runtime/helpers/inherits": 77, "@babel/runtime/helpers/interopRequireDefault": 78, "@babel/runtime/helpers/possibleConstructorReturn": 81 }], 10: [function(e, t, n) { "use strict"; var i = e("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(n, "__esModule", { value: !0 }), n.default = void 0; var o = i(e("@babel/runtime/helpers/classCallCheck")) , s = i(e("@babel/runtime/helpers/createClass")) , a = i(e("@babel/runtime/helpers/get")) , l = i(e("@babel/runtime/helpers/inherits")) , c = i(e("@babel/runtime/helpers/possibleConstructorReturn")) , u = i(e("@babel/runtime/helpers/getPrototypeOf")); function d(i) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), !0 } catch (e) { return !1 } }(); return function() { var e, t, n = (0, u.default)(i); return t = r ? (e = (0, u.default)(this).constructor, Reflect.construct(n, arguments, e)) : n.apply(this, arguments), (0, c.default)(this, t) } } var r = function(e) { (0, l.default)(r, e); var t = d(r); function r() { return (0, o.default)(this, r), t.apply(this, arguments) } return (0, s.default)(r, [{ key: "onInit", value: function() { this.mousePosition = {}, this.oldMousePosition = {}, (0, a.default)((0, u.default)(r.prototype), "onInit", this).call(this) } }, { key: "bindEvents", value: function() { r.mouseTracked || (elementorFrontend.elements.$window.on("mousemove", this.updateMousePosition), r.mouseTracked = !0) } }, { key: "run", value: function() { var e, t, n = r.mousePosition, i = this.oldMousePosition; i.x === n.x && i.y === n.y || (this.oldMousePosition = { x: n.x, y: n.y }, e = 100 / window.innerWidth * n.x, t = 100 / window.innerHeight * n.y, this.runCallback(e, t)) } }, { key: "updateMousePosition", value: function(e) { r.mousePosition = { x: e.clientX, y: e.clientY } } }]), r }(i(e("./base")).default); r.mousePosition = {}, n.default = r } , { "./base": 9, "@babel/runtime/helpers/classCallCheck": 72, "@babel/runtime/helpers/createClass": 73, "@babel/runtime/helpers/get": 75, "@babel/runtime/helpers/getPrototypeOf": 76, "@babel/runtime/helpers/inherits": 77, "@babel/runtime/helpers/interopRequireDefault": 78, "@babel/runtime/helpers/possibleConstructorReturn": 81 }], 11: [function(e, t, n) { "use strict"; var i = e("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(n, "__esModule", { value: !0 }), n.default = void 0; var r = i(e("@babel/runtime/helpers/classCallCheck")) , o = i(e("@babel/runtime/helpers/createClass")) , s = i(e("@babel/runtime/helpers/inherits")) , a = i(e("@babel/runtime/helpers/possibleConstructorReturn")) , l = i(e("@babel/runtime/helpers/getPrototypeOf")); function c(i) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), !0 } catch (e) { return !1 } }(); return function() { var e, t, n = (0, l.default)(i); return t = r ? (e = (0, l.default)(this).constructor, Reflect.construct(n, arguments, e)) : n.apply(this, arguments), (0, a.default)(this, t) } } var u = function(e) { (0, s.default)(n, e); var t = c(n); function n() { return (0, r.default)(this, n), t.apply(this, arguments) } return (0, o.default)(n, [{ key: "run", value: function() { if (window.scrollY === this.currentScrollFromTop) return !1; this.onScrollMovement(), this.currentScrollFromTop = window.scrollY } }, { key: "onScrollMovement", value: function() { this.updateMotionFxDimensions(), this.updateAnimation(), this.resetTransitionVariable() } }, { key: "resetTransitionVariable", value: function() { this.motionFX.$element.css("--e-transform-transition-duration", "100ms") } }, { key: "updateMotionFxDimensions", value: function() { this.motionFX.getSettings().refreshDimensions && this.motionFX.defineDimensions() } }, { key: "updateAnimation", value: function() { var e; return e = "page" === this.motionFX.getSettings("range") ? elementorModules.utils.Scroll.getPageScrollPercentage() : this.motionFX.getSettings("isFixedPosition") ? elementorModules.utils.Scroll.getPageScrollPercentage({}, window.innerHeight) : elementorModules.utils.Scroll.getElementViewportPercentage(this.motionFX.elements.$parent), void this.runCallback(e) } }]), n }(i(e("./base")).default); n.default = u } , { "./base": 9, "@babel/runtime/helpers/classCallCheck": 72, "@babel/runtime/helpers/createClass": 73, "@babel/runtime/helpers/getPrototypeOf": 76, "@babel/runtime/helpers/inherits": 77, "@babel/runtime/helpers/interopRequireDefault": 78, "@babel/runtime/helpers/possibleConstructorReturn": 81 }], 12: [function(i, e, t) { "use strict"; var n = i("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(t, "__esModule", { value: !0 }), t.default = void 0; var r = n(i("@babel/runtime/helpers/classCallCheck")) , o = n(i("@babel/runtime/helpers/createClass")) , s = n(i("@babel/runtime/helpers/get")) , a = n(i("@babel/runtime/helpers/inherits")) , l = n(i("@babel/runtime/helpers/possibleConstructorReturn")) , c = n(i("@babel/runtime/helpers/getPrototypeOf")); function u(i) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), !0 } catch (e) { return !1 } }(); return function() { var e, t, n = (0, c.default)(i); return t = r ? (e = (0, c.default)(this).constructor, Reflect.construct(n, arguments, e)) : n.apply(this, arguments), (0, l.default)(this, t) } } var d = function(e) { (0, a.default)(n, e); var t = u(n); function n() { return (0, r.default)(this, n), t.apply(this, arguments) } return (0, o.default)(n, [{ key: "getDefaultSettings", value: function() { return { effectTarget: "element", $element: null, $dimensionsElement: null, addBackgroundLayerTo: null, interactions: {}, refreshDimensions: !1, range: "viewport", classes: { element: "raven-motion-effects-element", parent: "raven-motion-effects-parent", perspective: "raven-motion-effects-perspective", backgroundType: "elementor-motion-effects-element-type-background", container: "elementor-motion-effects-container", layer: "elementor-motion-effects-layer" } } } }, { key: "bindEvents", value: function() { this.onWindowResize = this.onWindowResize.bind(this), elementorFrontend.elements.$window.on("resize", this.onWindowResize) } }, { key: "unbindEvents", value: function() { elementorFrontend.elements.$window.off("resize", this.onWindowResize) } }, { key: "onInit", value: function() { (0, s.default)((0, c.default)(n.prototype), "onInit", this).call(this); var e = this.getSettings(); this.$element = e.$element, this.$element.addClass(e.classes.element), this.elements.$parent = this.$element.parent(), this.elements.$parent.addClass(e.classes.parent), "background" === e.effectTarget && (this.$element.addClass(e.classes.backgroundType), this.addBackgroundLayer()), this.defineDimensions(), e.$targetElement = "element" === e.effectTarget ? this.$element : this.elements.$motionFXLayer, this.interactions = {}, this.actions = new (i("./actions").default)(e), this.initInteractionsTypes(), this.runInteractions() } }, { key: "defineDimensions", value: function() { var e = this.getSettings("$dimensionsElement") || this.$element , t = e.offset() , n = { elementHeight: e.outerHeight(), elementWidth: e.outerWidth(), elementTop: t.top, elementLeft: t.left, elementRange: e.outerHeight() + window.innerHeight }; this.setSettings("dimensions", n), "background" === this.getSettings("effectTarget") && this.defineBackgroundLayerDimensions() } }, { key: "initInteractionsTypes", value: function() { this.interactionsTypes = { scroll: i("./interactions/scroll").default, mouseMove: i("./interactions/mouse").default } } }, { key: "runInteractions", value: function() { var r = this , e = this.getSettings(); this.actions.setCSSTransformVariables(e.elementSettings), this.prepareSpecialActions(), jQuery.each(e.interactions, function(e, n) { r.interactions[e] = new r.interactionsTypes[e]({ motionFX: r, callback: function() { for (var e = arguments.length, i = new Array(e), t = 0; t < e; t++) i[t] = arguments[t]; jQuery.each(n, function(e, t) { var n; return (n = r.actions).runAction.apply(n, [e, t].concat(i)) }) } }), r.interactions[e].run() }) } }, { key: "prepareSpecialActions", value: function() { var e = this.getSettings() , t = !(!e.interactions.mouseMove || !e.interactions.mouseMove.tilt); this.elements.$parent.toggleClass(e.classes.perspective, t) } }, { key: "cleanSpecialActions", value: function() { var e = this.getSettings(); this.elements.$parent.removeClass(e.classes.perspective) } }, { key: "destroyInteractions", value: function() { this.cleanSpecialActions(), jQuery.each(this.interactions, function(e, t) { return t.destroy() }), this.interactions = {} } }, { key: "refresh", value: function() { this.actions.setSettings(this.getSettings()), "background" === this.getSettings("effectTarget") && (this.updateBackgroundLayerSize(), this.defineBackgroundLayerDimensions()), this.actions.refresh(), this.destroyInteractions(), this.runInteractions() } }, { key: "destroy", value: function() { this.destroyInteractions(), this.actions.refresh(); var e = this.getSettings(); this.$element.removeClass(e.classes.element), this.elements.$parent.removeClass(e.classes.parent), "background" === e.effectTarget && (this.$element.removeClass(e.classes.backgroundType), this.removeBackgroundLayer()) } }, { key: "onWindowResize", value: function() { this.defineDimensions() } }, { key: "defineBackgroundLayerDimensions", value: function() { var e = this.getSettings("dimensions"); e.layerHeight = this.elements.$motionFXLayer.height(), e.layerWidth = this.elements.$motionFXLayer.width(), e.movableX = e.layerWidth - e.elementWidth, e.movableY = e.layerHeight - e.elementHeight, this.setSettings("dimensions", e) } }, { key: "addBackgroundLayer", value: function() { var e = this.getSettings(); this.elements.$motionFXContainer = jQuery("
", { class: e.classes.container }), this.elements.$motionFXLayer = jQuery("
", { class: e.classes.layer }), this.updateBackgroundLayerSize(), this.elements.$motionFXContainer.prepend(this.elements.$motionFXLayer), (e.addBackgroundLayerTo ? this.$element.find(e.addBackgroundLayerTo) : this.$element).prepend(this.elements.$motionFXContainer) } }, { key: "removeBackgroundLayer", value: function() { this.elements.$motionFXContainer.remove() } }, { key: "updateBackgroundLayerSize", value: function() { var e = this.getSettings() , t = { x: 0, y: 0 } , n = e.interactions.mouseMove , i = e.interactions.scroll; n && n.translateXY && (t.x = 10 * n.translateXY.intensity, t.y = 10 * n.translateXY.intensity), i && (i.translateX && (t.x = 10 * i.translateX.intensity), i.translateY && (t.y = 10 * i.translateY.intensity)), this.elements.$motionFXLayer.css({ width: 100 + t.x + "%", height: 100 + t.y + "%" }) } }]), n }(elementorModules.ViewModule); t.default = d } , { "./actions": 7, "./interactions/mouse": 10, "./interactions/scroll": 11, "@babel/runtime/helpers/classCallCheck": 72, "@babel/runtime/helpers/createClass": 73, "@babel/runtime/helpers/get": 75, "@babel/runtime/helpers/getPrototypeOf": 76, "@babel/runtime/helpers/inherits": 77, "@babel/runtime/helpers/interopRequireDefault": 78, "@babel/runtime/helpers/possibleConstructorReturn": 81 }], 13: [function(i, e, t) { "use strict"; var n = i("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(t, "__esModule", { value: !0 }), t.default = void 0; var r = n(i("@babel/runtime/helpers/createClass")) , o = n(i("@babel/runtime/helpers/classCallCheck")) , s = n(i("@babel/runtime/helpers/inherits")) , a = n(i("@babel/runtime/helpers/possibleConstructorReturn")) , l = n(i("@babel/runtime/helpers/getPrototypeOf")); function c(i) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), !0 } catch (e) { return !1 } }(); return function() { var e, t, n = (0, l.default)(i); return t = r ? (e = (0, l.default)(this).constructor, Reflect.construct(n, arguments, e)) : n.apply(this, arguments), (0, a.default)(this, t) } } var u = function(e) { (0, s.default)(n, e); var t = c(n); function n() { var e; return (0, o.default)(this, n), e = t.call(this), elementorFrontend.elementsHandler.attachHandler("global", i("./effects/handler").default, null), elementorFrontend.elementsHandler.attachHandler("section", i("./sticky/handler").default, null), elementorFrontend.elementsHandler.attachHandler("container", i("./sticky/handler").default, null), elementorFrontend.elementsHandler.attachHandler("widget", i("./sticky/handler").default, null), i("./sticky/sticky-script-manager"), e } return (0, r.default)(n) }(elementorModules.Module); t.default = u } , { "./effects/handler": 8, "./sticky/handler": 14, "./sticky/sticky-script-manager": 15, "@babel/runtime/helpers/classCallCheck": 72, "@babel/runtime/helpers/createClass": 73, "@babel/runtime/helpers/getPrototypeOf": 76, "@babel/runtime/helpers/inherits": 77, "@babel/runtime/helpers/interopRequireDefault": 78, "@babel/runtime/helpers/possibleConstructorReturn": 81 }], 14: [function(e, t, n) { "use strict"; var i = e("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(n, "__esModule", { value: !0 }), n.default = void 0; var r = i(e("@babel/runtime/helpers/toConsumableArray")) , o = elementorModules.frontend.handlers.Base.extend({ settingPrefix: "raven_motion_effects", stickyFunction: "ravenSticky", bindEvents: function() { elementorFrontend.addListenerOnce(this.getUniqueHandlerID() + this.stickyFunction, "resize", this.refresh) }, unbindEvents: function() { elementorFrontend.removeListeners(this.getUniqueHandlerID() + this.stickyFunction + "Sticky", "resize", this.refresh) }, onInit: function() { var e = this; elementorModules.frontend.handlers.Base.prototype.onInit.apply(this, arguments), elementorFrontend.isEditMode() && elementor.listenTo(elementor.channels.deviceMode, "change", function() { return e.onDeviceModeChange() }), this.run() }, run: function(e) { var t; this.getElementSettings(this.settingPrefix + "sticky") ? (t = elementorFrontend.getCurrentDeviceMode(), -1 !== this.getElementSettings(this.settingPrefix + "sticky_on").indexOf(t) ? !0 !== e ? this.isStickyInstanceActive() || this.activate() : this.reactivate() : this.deactivate()) : this.deactivate() }, activate: function() { var e = this.getElementSettings() , t = { to: e[this.settingPrefix + "sticky"], offset: this.getResponsiveSetting(this.settingPrefix + "sticky_offset"), effectsOffset: this.getResponsiveSetting(this.settingPrefix + "sticky_effects_offset"), classes: { sticky: "raven-sticky", stickyActive: "raven-sticky--active raven-section--handles-inside", stickyEffects: "raven-sticky--effects", spacer: "raven-sticky__spacer" } }; e[this.settingPrefix + "sticky_parent"] && (t.parent = ".e-container, .elementor-widget-wrap, .e-con"); var n = elementorFrontend.elements.$wpAdminBar; n.length && "top" === t.to && "fixed" === n.css("position") && (t.offset += n.height()), this.$element[this.stickyFunction](t) }, getResponsiveSetting: function(e) { var t = this.getElementSettings(); return elementorFrontend.getCurrentDeviceSetting(t, e) }, getResponsiveSettingList: function(t) { var e = Object.keys(elementorFrontend.config.responsive.activeBreakpoints); return [""].concat(e).map(function(e) { return e ? "".concat(t, "_").concat(e) : t }) }, refresh: function() { this.run(!0) }, reactivate: function() { this.deactivate(), this.activate() }, deactivate: function() { this.isStickyInstanceActive() && this.$element[this.stickyFunction]("destroy") }, isStickyInstanceActive: function() { return void 0 !== this.$element.data(this.stickyFunction) }, onElementChange: function(e) { var t = this.getElementSettings(this.settingPrefix + "sticky_on") , n = elementorFrontend.getCurrentDeviceMode(); null != t && t.includes(n) && (-1 !== [this.settingPrefix + "sticky", this.settingPrefix + "sticky_on"].indexOf(e) && this.run(!0), -1 !== [].concat((0, r.default)(this.getResponsiveSettingList(this.settingPrefix + "sticky_offset")), (0, r.default)(this.getResponsiveSettingList(this.settingPrefix + "sticky_effects_offset")), [this.settingPrefix + "sticky_parent"]).indexOf(e) && this.reactivate()) }, onDeviceModeChange: function() { setTimeout(this.refresh) }, onDestroy: function() { elementorModules.frontend.handlers.Base.prototype.onDestroy.apply(this, arguments), this.deactivate() } }); n.default = o } , { "@babel/runtime/helpers/interopRequireDefault": 78, "@babel/runtime/helpers/toConsumableArray": 84 }], 15: [function(e, t, n) { "use strict"; var i, r = e("@babel/runtime/helpers/interopRequireDefault")(e("./sticky-script")), o = "ravenSticky"; (i = jQuery).fn[o] = function(t) { var n = "string" == typeof t; return this.each(function() { if (n) { var e = i(this).data(o); if (!e) throw Error("Trying to perform the `" + t + "` method prior to initialization"); if (!e[t]) throw ReferenceError("Method `" + t + "` not found in sticky instance"); e[t].apply(e, Array.prototype.slice.call(arguments, 1)), "destroy" === t && i(this).removeData(o) } else i(this).data(o, new r.default(this,t)) }), this } , window[o] = r.default } , { "./sticky-script": 16, "@babel/runtime/helpers/interopRequireDefault": 78 }], 16: [function(e, t, n) { "use strict"; var i = e("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(n, "__esModule", { value: !0 }), n.default = void 0; var r = i(e("@babel/runtime/helpers/classCallCheck")) , o = i(e("@babel/runtime/helpers/createClass")) , s = function() { function n(e, t) { (0, r.default)(this, n), this.prefix = "raven", this.userSettings = t, this.element = e, this.$element = null, this.isSticky = !1, this.isFollowingParent = !1, this.isReachedEffectsPoint = !1, this.elements = {}, this.settings = null, this.defaultSettings = { to: "top", offset: 0, effectsOffset: 0, parent: !1, classes: { sticky: "raven-sticky", stickyActive: "raven-sticky--active raven-section--handles-inside", stickyEffects: "raven-sticky--effects", spacer: "raven-sticky__spacer" } }, this.init() } return (0, o.default)(n, [{ key: "init", value: function() { this.initSettings(), this.initElements(), this.bindEvents(), this.checkPosition() } }, { key: "initSettings", value: function() { this.settings = jQuery.extend(!0, this.defaultSettings, this.userSettings) } }, { key: "initElements", value: function() { this.$element = $(this.element).addClass(this.settings.classes.sticky), this.elements.$window = $(window), this.settings.parent && (this.elements.$parent = this.$element.parent(), "parent" !== this.settings.parent && (this.elements.$parent = this.elements.$parent.closest(this.settings.parent))) } }, { key: "checkPosition", value: function() { var e, t, n, i = this.settings.offset; this.isSticky ? (e = this.getElementViewportOffset(this.elements.$spacer), t = "top" === this.settings.to ? e.top.fromTop - i : -e.bottom.fromBottom - i, this.settings.parent && this.checkParent(), 0 < t && this.unstick()) : (n = this.getElementViewportOffset(this.$element), (t = "top" === this.settings.to ? n.top.fromTop - i : -n.bottom.fromBottom - i) <= 0 && (this.stick(), this.settings.parent && this.checkParent())), this.checkEffectsPoint(t) } }, { key: "backupCSS", value: function(e, t, n) { var i = e[0].style , r = {}; n.forEach(function(e) { r[e] = void 0 !== i[e] ? i[e] : "" }), e.data(this.prefix + "-css-backup-" + t, r) } }, { key: "getCSSBackup", value: function(e, t) { return e.data(this.prefix + "-css-backup-" + t) } }, { key: "addSpacer", value: function() { this.elements.$spacer = this.$element.clone().addClass(this.settings.classes.spacer).css({ visibility: "hidden", transition: "none", animation: "none" }), this.$element.after(this.elements.$spacer) } }, { key: "removeSpacer", value: function() { this.elements.$spacer.remove() } }, { key: "stickElement", value: function() { this.backupCSS(this.$element, "unsticky", ["position", "width", "margin-top", "margin-bottom", "top", "bottom"]); var e = { position: "fixed", width: this.getElementOuterSize(this.$element, "width"), marginTop: 0, marginBottom: 0 }; e[this.settings.to] = this.settings.offset, e["top" === this.settings.to ? "bottom" : "top"] = "", this.$element.css(e).addClass(this.settings.classes.stickyActive) } }, { key: "unstickElement", value: function() { this.$element.css(this.getCSSBackup(this.$element, "unsticky")).removeClass(this.settings.classes.stickyActive) } }, { key: "followParent", value: function() { this.backupCSS(this.elements.$parent, "childNotFollowing", ["position"]), this.elements.$parent.css("position", "relative"), this.backupCSS(this.$element, "notFollowing", ["position", "top", "bottom"]); var e = { position: "absolute" }; e[this.settings.to] = "", e["top" === this.settings.to ? "bottom" : "top"] = 0, this.$element.css(e), this.isFollowingParent = !0 } }, { key: "unfollowParent", value: function() { this.elements.$parent.css(this.getCSSBackup(this.elements.$parent, "childNotFollowing")), this.$element.css(this.getCSSBackup(this.$element, "notFollowing")), this.isFollowingParent = !1 } }, { key: "getElementOuterSize", value: function(e, t, n) { var i = window.getComputedStyle(e[0]) , r = "height" === t ? ["top", "bottom"] : ["left", "right"] , o = parseFloat(i[t]) , s = []; return "border-box" !== i.boxSizing && s.push("border", "padding"), n && s.push("margin"), s.forEach(function(t) { r.forEach(function(e) { o += parseFloat(i[t + "-" + e]) }) }), o } }, { key: "getElementViewportOffset", value: function(e) { var t = this.elements.$window.scrollTop() , n = this.getElementOuterSize(e, "height") , i = window.innerHeight , r = e.offset().top - t , o = r - i; return { top: { fromTop: r, fromBottom: o }, bottom: { fromTop: r + n, fromBottom: o + n } } } }, { key: "stick", value: function() { this.addSpacer(), this.stickElement(), this.isSticky = !0, this.$element.trigger(this.prefix + "Sticky:stick") } }, { key: "unstick", value: function() { this.unstickElement(), this.removeSpacer(), this.isSticky = !1, this.$element.trigger(this.prefix + "Sticky:unstick") } }, { key: "checkParent", value: function() { var e, t, n, i, r = this.getElementViewportOffset(this.$element), o = "top" === this.settings.to; this.isFollowingParent ? (o ? r.top.fromTop > this.settings.offset : r.bottom.fromBottom < -this.settings.offset) && this.unfollowParent() : (e = this.getElementViewportOffset(this.elements.$parent), t = window.getComputedStyle(this.elements.$parent[0]), n = parseFloat(t[o ? "borderBottomWidth" : "borderTopWidth"]), i = o ? e.bottom.fromTop - n : e.top.fromBottom + n, (o ? i <= r.bottom.fromTop : i >= r.top.fromBottom) && this.followParent()) } }, { key: "checkEffectsPoint", value: function(e) { if (this.isReachedEffectsPoint && -e < this.settings.effectsOffset) return this.$element.removeClass(this.settings.classes.stickyEffects), void (this.isReachedEffectsPoint = !1); !this.isReachedEffectsPoint && -e >= this.settings.effectsOffset && (this.$element.addClass(this.settings.classes.stickyEffects), this.isReachedEffectsPoint = !0) } }, { key: "bindEvents", value: function() { this.scrollHandler = this.onWindowScroll.bind(this), this.resizeHandler = this.onWindowResize.bind(this), this.elements.$window.on({ scroll: this.scrollHandler, resize: this.resizeHandler }) } }, { key: "unbindEvents", value: function() { this.elements.$window.off("scroll", this.scrollHandler).off("resize", this.resizeHandler) } }, { key: "onWindowScroll", value: function() { this.checkPosition() } }, { key: "onWindowResize", value: function() { this.isSticky && (this.unstickElement(), this.stickElement(), this.settings.parent && (this.isFollowingParent = !1, this.checkParent())) } }, { key: "destroy", value: function() { this.isSticky && this.unstick(), this.unbindEvents(), this.$element.removeClass(this.settings.classes.sticky) } }]), n }(); n.default = s } , { "@babel/runtime/helpers/classCallCheck": 72, "@babel/runtime/helpers/createClass": 73, "@babel/runtime/helpers/interopRequireDefault": 78 }], 17: [function(e, t, n) { "use strict"; var i = e("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(n, "__esModule", { value: !0 }), n.default = void 0; var r = i(e("./module")).default.extend({ $clickedItem: null, getDefaultSettings: function() { return { classes: { fetching: "raven-pagination-fetching", disabled: "raven-pagination-disabled", reading: "raven-pagination-reading", spinner: "raven-pagination-spinner", activePage: "raven-pagination-active", item: "raven-pagination-item", pageNum: "raven-pagination-num", prevButton: "raven-pagination-prev", nextButton: "raven-pagination-next" }, selectors: { activePage: ".raven-pagination-active", pageNum: ".raven-pagination-num", prevButton: ".raven-pagination-prev", nextButton: ".raven-pagination-next", spinner: ".raven-pagination-spinner" }, isEnabled: !0, activePage: 1, totalPages: this.getElementSettings("total_pages"), pagesVisible: this.getElementSettings("pages_visible") } }, getDefaultElements: function() { var e = this.getSettings("selectors"); return { $prevButton: this.$element.find(e.prevButton), $nextButton: this.$element.find(e.nextButton) } }, bindEvents: function() { this.$element.on("click", this.getSettings("selectors.pageNum"), this.handlePageNum), this.elements.$prevButton.on("click", this.handlePrev), this.elements.$nextButton.on("click", this.handleNext) }, onInit: function() { elementorModules.frontend.handlers.Base.prototype.onInit.apply(this, arguments) }, getTotalPages: function() { return parseInt(this.getSettings("totalPages")) }, setTotalPages: function(e) { this.setSettings("totalPages", parseInt(e)) }, getPagesVisible: function() { return parseInt(this.getSettings("pagesVisible")) }, getActivePage: function() { return parseInt(this.getSettings("activePage")) }, setActivePage: function(e) { this.setSettings("activePage", parseInt(e)) }, setEnabled: function(e) { this.setSettings("isEnabled", e) }, isEnabled: function() { return this.getSettings("isEnabled") }, recreatePagination: function(e) { this.setTotalPages(e), this.setActivePage(1), this.renderUpdate() }, renderUpdate: function() { var e = this.getSettings("classes") , t = this.getSettings("selectors"); this.$element.removeClass(e.fetching), this.$clickedItem && (this.$clickedItem.find(t.spinner).remove(), this.$clickedItem.removeClass(e.reading), this.$clickedItem = null), this.setEnabled(!0), this.renderNumbers(), this.updatePrevNext() }, renderNumbers: function() { var e, t, n = this, i = this.getPages(); i.length && (e = this.getSettings("selectors"), t = [], i.forEach(function(e) { t.push(n.numberTemplate(e)) }), this.$element.find(e.pageNum).remove(), this.elements.$prevButton.after(t)) }, numberTemplate: function(e) { var t = this.getSettings("classes") , n = $(""); return n.addClass(t.pageNum), n.addClass(t.item), n.toggleClass(t.activePage, e === this.getActivePage()), n.attr("href", "#"), n.attr("data-page-num", e), n.html(e), n }, updateActivePage: function(e) { var t = this.getSettings("classes"); this.$element.addClass(t.fetching), this.$clickedItem && (this.$clickedItem.addClass(t.reading), this.$clickedItem.append(''))), this.setEnabled(!1), this.setActivePage(e) }, updatePrevNext: function() { var e, t, n; this.getPages().length && (e = this.getSettings("classes"), t = this.getActivePage(), n = this.getTotalPages(), this.elements.$prevButton.toggleClass(e.disabled, t <= 1), this.elements.$nextButton.toggleClass(e.disabled, n <= t)) }, handlePageNum: function(e) { e.preventDefault(); var t = $(e.target) , n = parseInt(t.data("page-num")); this.getActivePage() !== n && this.triggerPagination(t, n) }, handlePrev: function(e) { e.preventDefault(); var t = this.getSettings("classes") , n = $(e.target) , i = this.getActivePage() - 1; 1 <= i && !n.hasClass(t.disabled) && this.triggerPagination(n, i) }, handleNext: function(e) { e.preventDefault(); var t = this.getSettings("classes") , n = $(e.target) , i = this.getTotalPages() , r = this.getActivePage() + 1; r <= i && !n.hasClass(t.disabled) && this.triggerPagination(n, r) }, triggerPagination: function(e, t) { this.isEnabled() && (this.$clickedItem = e, this.updateActivePage(t), this.handlePagination(t)) }, getPages: function() { var e = this.getActivePage() , t = this.getPagesVisible() , n = this.getTotalPages() , i = [] , r = Math.floor(t / 2) , o = e - r , s = e + r; o <= 0 && (o = 1, s = t), n < s && (s = n); for (var a = o; a <= s; ) i.push(a), a++; return i }, handlePagination: function() { this.renderUpdate() } }); n.default = r } , { "./module": 6, "@babel/runtime/helpers/interopRequireDefault": 78 }], 18: [function(e, t, n) { "use strict"; var m = e("@babel/runtime/helpers/interopRequireDefault")(e("@babel/runtime/helpers/typeof")); function i() { var e, s, l, c, n, t, u = window, d = document; function p(e, t) { this.scrollLeft = e, this.scrollTop = t } function i(e) { if (null === e || "object" !== (0, m.default)(e) || void 0 === e.behavior || "auto" === e.behavior || "instant" === e.behavior) return !0; if ("object" === (0, m.default)(e) && "smooth" === e.behavior) return !1; throw new TypeError("behavior member of ScrollOptions " + e.behavior + " is not a valid value for enumeration ScrollBehavior.") } function r(e, t) { return "Y" === t ? e.clientHeight + n < e.scrollHeight : "X" === t ? e.clientWidth + n < e.scrollWidth : void 0 } function o(e, t) { var n = u.getComputedStyle(e, null)["overflow" + t]; return "auto" === n || "scroll" === n } function a(e) { for (var t, n, i; !1 === ((e = e.parentNode) === d.body) && !1 === (i = n = void 0, n = r(t = e, "Y") && o(t, "Y"), i = r(t, "X") && o(t, "X"), n || i); ) ; return e } function h(e) { var t, n, i, r, o = (c() - e.startTime) / s; r = o = 1 < o ? 1 : o, t = .5 * (1 - Math.cos(Math.PI * r)), n = e.startX + (e.x - e.startX) * t, i = e.startY + (e.y - e.startY) * t, e.method.call(e.scrollable, n, i), n === e.x && i === e.y || u.requestAnimationFrame(h.bind(u, e)) } function f(e, t, n) { var i, r, o, s = c(), a = e === d.body ? (r = (i = u).scrollX || u.pageXOffset, o = u.scrollY || u.pageYOffset, l.scroll) : (r = (i = e).scrollLeft, o = e.scrollTop, p); h({ scrollable: i, method: a, startTime: s, startX: r, startY: o, x: t, y: n }) } "scrollBehavior"in d.documentElement.style && !0 !== u.__forceSmoothScrollPolyfill__ || (e = u.HTMLElement || u.Element, s = 468, l = { scroll: u.scroll || u.scrollTo, scrollBy: u.scrollBy, elementScroll: e.prototype.scroll || p, scrollIntoView: e.prototype.scrollIntoView }, c = u.performance && u.performance.now ? u.performance.now.bind(u.performance) : Date.now, t = u.navigator.userAgent, n = new RegExp(["MSIE ", "Trident/", "Edge/"].join("|")).test(t) ? 1 : 0, u.scroll = u.scrollTo = function() { void 0 !== arguments[0] && (!0 !== i(arguments[0]) ? f.call(u, d.body, void 0 !== arguments[0].left ? ~~arguments[0].left : u.scrollX || u.pageXOffset, void 0 !== arguments[0].top ? ~~arguments[0].top : u.scrollY || u.pageYOffset) : l.scroll.call(u, void 0 !== arguments[0].left ? arguments[0].left : "object" !== (0, m.default)(arguments[0]) ? arguments[0] : u.scrollX || u.pageXOffset, void 0 !== arguments[0].top ? arguments[0].top : void 0 !== arguments[1] ? arguments[1] : u.scrollY || u.pageYOffset)) } , u.scrollBy = function() { void 0 !== arguments[0] && (i(arguments[0]) ? l.scrollBy.call(u, void 0 !== arguments[0].left ? arguments[0].left : "object" !== (0, m.default)(arguments[0]) ? arguments[0] : 0, void 0 !== arguments[0].top ? arguments[0].top : void 0 !== arguments[1] ? arguments[1] : 0) : f.call(u, d.body, ~~arguments[0].left + (u.scrollX || u.pageXOffset), ~~arguments[0].top + (u.scrollY || u.pageYOffset))) } , e.prototype.scroll = e.prototype.scrollTo = function() { if (void 0 !== arguments[0]) if (!0 !== i(arguments[0])) { var e = arguments[0].left , t = arguments[0].top; f.call(this, this, void 0 === e ? this.scrollLeft : ~~e, void 0 === t ? this.scrollTop : ~~t) } else { if ("number" == typeof arguments[0] && void 0 === arguments[1]) throw new SyntaxError("Value could not be converted"); l.elementScroll.call(this, void 0 !== arguments[0].left ? ~~arguments[0].left : "object" !== (0, m.default)(arguments[0]) ? ~~arguments[0] : this.scrollLeft, void 0 !== arguments[0].top ? ~~arguments[0].top : void 0 !== arguments[1] ? ~~arguments[1] : this.scrollTop) } } , e.prototype.scrollBy = function() { void 0 !== arguments[0] && (!0 !== i(arguments[0]) ? this.scroll({ left: ~~arguments[0].left + this.scrollLeft, top: ~~arguments[0].top + this.scrollTop, behavior: arguments[0].behavior }) : l.elementScroll.call(this, void 0 !== arguments[0].left ? ~~arguments[0].left + this.scrollLeft : ~~arguments[0] + this.scrollLeft, void 0 !== arguments[0].top ? ~~arguments[0].top + this.scrollTop : ~~arguments[1] + this.scrollTop)) } , e.prototype.scrollIntoView = function() { var e, t, n; !0 !== i(arguments[0]) ? (t = (e = a(this)).getBoundingClientRect(), n = this.getBoundingClientRect(), e !== d.body ? (f.call(this, e, e.scrollLeft + n.left - t.left, e.scrollTop + n.top - t.top), "fixed" !== u.getComputedStyle(e).position && u.scrollBy({ left: t.left, top: t.top, behavior: "smooth" })) : u.scrollBy({ left: n.left, top: n.top, behavior: "smooth" })) : l.scrollIntoView.call(this, void 0 === arguments[0] || arguments[0]) } ) } "object" === (void 0 === n ? "undefined" : (0, m.default)(n)) && void 0 !== t && (t.exports = { polyfill: i }), i() } , { "@babel/runtime/helpers/interopRequireDefault": 78, "@babel/runtime/helpers/typeof": 85 }], 19: [function(e, t, n) { "use strict"; var i = e("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(n, "__esModule", { value: !0 }), n.default = void 0; var r = i(e("./module")).default.extend({ $clickedItem: null, getDefaultSettings: function() { return { classes: { fetching: "raven-sortable-fetching", reading: "raven-sortable-reading", spinner: "raven-sortable-spinner", activeItem: "raven-sortable-active" }, selectors: { item: ".raven-sortable-item", activeItem: ".raven-sortable-active", spinner: ".raven-sortable-spinner" }, activeID: -1, isEnabled: !0 } }, getDefaultElements: function() { return {} }, bindEvents: function() { this.$element.on("click", this.getSettings("selectors.item"), this.handleItemClick) }, onInit: function() { elementorModules.frontend.handlers.Base.prototype.onInit.apply(this, arguments) }, getActiveID: function() { return parseInt(this.getSettings("activeID")) }, setActiveID: function(e) { this.setSettings("activeID", parseInt(e)) }, setEnabled: function(e) { this.setSettings("isEnabled", e) }, isEnabled: function() { return this.getSettings("isEnabled") }, renderUpdate: function() { var e = this.getSettings("classes") , t = this.getSettings("selectors"); this.$element.removeClass(e.fetching), this.$element.find(t.activeItem).removeClass(e.activeItem), this.$clickedItem && (this.$clickedItem.find(t.spinner).remove(), this.$clickedItem.removeClass(e.reading), this.$clickedItem.addClass(e.activeItem), this.$clickedItem = null), this.setEnabled(!0) }, updateActiveItem: function(e) { var t = this.getSettings("classes"); this.$element.addClass(t.fetching), this.$clickedItem && (this.$clickedItem.addClass(t.reading), this.$clickedItem.append(''))), this.setEnabled(!1), this.setActiveID(e) }, handleItemClick: function(e) { e.preventDefault(); var t = $(e.target) , n = parseInt(t.data("category")); this.getActiveID() !== n && this.triggerSort(t, n) }, triggerSort: function(e, t) { this.isEnabled() && (this.$clickedItem = e, this.updateActiveItem(t), this.handleSort(t)) }, handleSort: function() { this.renderUpdate() } }); n.default = r } , { "./module": 6, "@babel/runtime/helpers/interopRequireDefault": 78 }], 20: [function(e, t, n) { "use strict"; var a = e("@babel/runtime/helpers/interopRequireDefault")(e("tippy.js")) , l = { widgetEditorSettings: function(n) { var e, i = {}; return !!window.elementor.hasOwnProperty("elements") && (!!(e = window.elementor.elements).models && ($.each(e.models, function(e, t) { $.each(t.attributes.elements.models, function(e, t) { $.each(t.attributes.elements.models, function(e, t) { n === t.id && (i = t.attributes.settings.attributes) }) }) }), { tooltip: i.jupiter_widget_tooltip || "false", tooltipDescription: i.jupiter_widget_tooltip_description || "Lorem Ipsum", tooltipPlacement: i.jupiter_widget_tooltip_placement || "top", tooltipArrow: "yes" === i.jupiter_widget_tooltip_arrow, xOffset: i.jupiter_widget_tooltip_x_offset || 0, yOffset: i.jupiter_widget_tooltip_y_offset || 0, tooltipAnimation: i.jupiter_widget_tooltip_animation || "shift-toward", tooltipTrigger: i.jupiter_widget_tooltip_trigger || "mouseenter", customSelector: i.jupiter_widget_tooltip_custom_selector || "", zIndex: i.jupiter_widget_tooltip_z_index || "999", delay: i.jupiter_widget_tooltip_delay || "0" })) }, jupiterTooltipInstance: function(e) { var t, n = e.data("id"), i = e[0], r = Boolean(elementorFrontend.isEditMode()), o = i, s = {}, s = r ? l.widgetEditorSettings(n) : e.data("jupiter-tooltip-settings"); return i._tippy && i._tippy.destroy(), !!s && (void 0 !== s && ("false" !== s.tooltip && void 0 !== s.tooltip && "" !== s.tooltipDescription && (e.addClass("jupiter-tooltip-widget"), s.customSelector && (o = $(s.customSelector)[0]), r && !$("#jupiter-tooltip-content-" + n)[0] && ((t = $("
", { id: "jupiter-tooltip-content-" + n, class: "jupiter-tooltip-widget__content" })).html(s.tooltipDescription), e.append(t)), (0, a.default)([o], { content: e.find(".jupiter-tooltip-widget__content")[0].innerHTML, allowHTML: !0, appendTo: i, arrow: !!s.tooltipArrow, placement: s.tooltipPlacement, offset: [s.xOffset, s.yOffset], animation: s.tooltipAnimation, trigger: s.tooltipTrigger, interactive: !0, zIndex: s.zIndex, maxWidth: "none", delay: s.delay.size ? s.delay.size : 0, popperOptions: { strategy: "fixed" }, onMount: function(e) { var t = $("#tippy-" + e.id + " .tippy-box[data-placement^=top]>.tippy-arrow") , n = $("#tippy-" + e.id + " .tippy-box[data-placement^=bottom]>.tippy-arrow") , i = $("#tippy-" + e.id + " .tippy-box[data-placement^=left]>.tippy-arrow") , r = $("#tippy-" + e.id + " .tippy-box[data-placement^=right]>.tippy-arrow") , o = $("#tippy-" + e.id + " .tippy-box"); switch (s.tooltipPlacement) { case "top-start": case "top": case "top-end": t.css("bottom", "-" + o.css("border-bottom-width")); break; case "right-start": case "right": case "right-end": r.css("left", "-" + o.css("border-left-width")); break; case "bottom-start": case "bottom": case "bottom-end": n.css("top", "-" + o.css("border-top-width")); break; case "left-start": case "left": case "left-end": i.css("right", "-" + o.css("border-right-width")) } } }), void (r && i._tippy && i._tippy.show())))) } }; elementorFrontend.hooks.addAction("frontend/element_ready/widget", function(e) { new l.jupiterTooltipInstance(e) }) } , { "@babel/runtime/helpers/interopRequireDefault": 78, "tippy.js": 101 }], 21: [function(e, t, n) { "use strict"; var i = function(o) { o.data("raven-element-link") && o.on("click.onWrapperLink", function() { var e = o.data("raven-element-link") , t = o.data("id") , n = document.createElement("a"); /^https?:\/\//i.test(e.url) || (e.url = "http://" + e.url), n.id = "raven-wrapper-link-" + t, n.href = e.url, n.target = e.is_external ? "_blank" : "_self", n.rel = e.nofollow ? "nofollow noreferer" : "", n.style.display = "none", document.body.appendChild(n); var i = document.getElementById(n.id); i.click(); var r = setTimeout(function() { document.body.removeChild(i), clearTimeout(r) }) }) }; elementorFrontend.hooks.addAction("frontend/element_ready/global", function(e) { new i(e) }) } , {}], 22: [function(e, t, n) { "use strict"; var i = e("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(n, "__esModule", { value: !0 }), n.default = function(e) { new o({ $element: e }) } ; var r = i(e("../utils/module")); $ = jQuery; var o = r.default.extend({ getDefaultSettings: function() { return { selectors: { wrapper: ".raven-product-add-to-cart", cartForm: "form.cart", tableBody: "tbody", singleVariationWrapper: ".single_variation_wrap", variationFormHolder: ".raven-variations-form-holder", qty: ".quantity > div", plusMinus: ".plus-minus-btn", qtyInput: ".quantity .raven-qty-button-holder-inner input[type=number]", qtyInputText: ".quantity input[type=text]", formResetButton: ".artbees-was-reset-options" } } }, getDefaultElements: function() { var e = this.getSettings("selectors"); return { $wrapper: this.$element.find(e.wrapper), $cartForm: this.$element.find(e.cartForm), $tableBody: this.$element.find(e.tableBody), $singleVariationWrapper: this.$element.find(e.singleVariationWrapper), $variationFormHolder: this.$element.find(e.variationFormHolder), $qty: this.$element.find(e.qty), $plusMinus: this.$element.find(e.plusMinus), $qtyInput: this.$element.find(e.qtyInput), $qtyInputText: this.$element.find(e.qtyInputText), $formResetButton: this.$element.find(e.formResetButton) } }, bindEvents: function() { this.detectSellKitSwatch(), this.detectPlusMinus(), this.detectInputFocused(), this.removeInputSpinner(), this.moveResetButtonToTableBody(), this.onResetClearButton(), this.addDummyPriceToEditor(), 0 < this.$element.find(".sellkit-pro-deactive").length && this.fixResetButtonIcon() }, detectSellKitSwatch: function() { var e; this.isElementorEditor() && (e = new CustomEvent("sellkitpro:swatches"), document.dispatchEvent(e)) }, detectPlusMinus: function() { var a = this; this.elements.$plusMinus.on("click", function(e) { var t = $(e.currentTarget) , n = t.closest("form.cart").find(".qty") , i = parseFloat(n.attr("max")) , r = parseFloat(n.attr("min")) , o = parseFloat(n.attr("step")) , s = parseFloat(n.val()); a.elements.$wrapper.hasClass("raven-product-grouped") && isNaN(s) && (s = 0), t.is(".plus") ? i && i <= s ? n.val(i) : n.val(s + o) : t.is(".minus") && (r && s <= r ? n.val(r) : 1 < s && n.val(s - o)) }) }, detectInputFocused: function() { this.elements.$qtyInput.on("focus", function(e) { $(e.currentTarget).closest(".raven-qty-button-holder-inner").addClass("focused") }), this.elements.$qtyInput.on("focusout", function(e) { $(e.currentTarget).closest(".raven-qty-button-holder-inner").removeClass("focused") }) }, removeInputSpinner: function() { this.elements.$qty.removeClass("input-group"), this.elements.$qty.removeClass("qty"), this.elements.$qty.find(".input-group-prepend").remove(), this.elements.$qty.find(".input-group-append").remove(), this.elements.$qtyInputText.attr("type", "number") }, moveResetButtonToTableBody: function() { var e = this.elements.$formResetButton; this.elements.$formResetButton.remove(), this.elements.$tableBody.append(e) }, onResetClearButton: function() { 0 !== this.elements.$formResetButton.length && this.elements.$formResetButton[0].addEventListener("click", function() { var e = document.getElementsByClassName("artbees-was-content"); e && Object.entries(e).forEach(function(e) { e[1].classList.remove("selected-attribute") }) }) }, addDummyPriceToEditor: function() { var e, t, n = this; this.isVariableProduct() && $("form.variations_form.cart").wc_variation_form(), this.isElementorEditor() && this.isVariableProduct() && !this.hasDefaultAttributes() && (e = "", this.elements.$wrapper.data("price") && (e = parseFloat(this.elements.$wrapper.data("price")).toFixed(2)), t = '
$' + (e = e || 20) + "
", this.elements.$singleVariationWrapper.prepend(t), this.elements.$variationFormHolder.change(function() { n.$element.find(".raven-dummy-price").hide() })) }, fixResetButtonIcon: function() { var e = this.$element.find("#jupiterx-clear-variable-button-single-page") , t = e.text(); e.wrapInner(""), e.find("span").before(''), e.find("span").text(t) }, isElementorEditor: function() { return document.body.classList.contains("elementor-editor-active") }, isVariableProduct: function() { if (0 !== this.elements.$cartForm.length) return this.elements.$cartForm[0].classList.contains("variations_form") }, hasDefaultAttributes: function() { return 0 !== this.$element.find(".has-default-attributes").length } }) } , { "../utils/module": 6, "@babel/runtime/helpers/interopRequireDefault": 78 }], 23: [function(e, t, n) { "use strict"; var i = e("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(n, "__esModule", { value: !0 }), n.default = function(e) { new o({ $element: e }) } ; var r = i(e("../utils/module")) , s = jQuery , o = r.default.extend({ onInit: function() { this.accordionOnClick() }, accordionOnClick: function() { var o = !1 , e = this.getElementSettings(); e.collapsible && "yes" === e.collapsible && (o = !0), s(".jx-single-accordion-header").off().on("click", function() { var e, t = s(this).parents(".jupiterx-single-advanced-accordion-wrapper"), n = t.find(".jx-single-accordion-body"), i = n.css("display"), r = s(this).parents(".jupiterx-advanced-accordion-wrapper").find(".jx-single-accordion-body"); "" !== i && "none" !== i || (o && r.slideUp("fast").addClass("jx-ac-body-none").removeClass("jx-ac-body-block").parent().addClass("jx-ac-inactive").removeClass("jx-ac-active"), n.slideDown("fast"), t.addClass("jx-ac-active").removeClass("jx-ac-inactive"), e = !1), "block" !== i || o || (n.slideUp("fast"), t.addClass("jx-ac-inactive").removeClass("jx-ac-active"), e = !0), t.hasClass("jx-ac-last") && (e && t.find(".jx-single-accordion-header").removeClass("border-not-radius"), e || (t.find(".jx-single-accordion-header").addClass("border-not-radius"), t.find(".jx-single-accordion-body").addClass("border-is-radius"))) }) } }) } , { "../utils/module": 6, "@babel/runtime/helpers/interopRequireDefault": 78 }], 24: [function(e, t, n) { "use strict"; var i = e("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(n, "__esModule", { value: !0 }), n.default = function(e) { new l({ $element: e }) } ; var r = i(e("@babel/runtime/helpers/defineProperty")) , o = i(e("../utils/module")); function s(t, e) { var n, i = Object.keys(t); return Object.getOwnPropertySymbols && (n = Object.getOwnPropertySymbols(t), e && (n = n.filter(function(e) { return Object.getOwnPropertyDescriptor(t, e).enumerable })), i.push.apply(i, n)), i } function a(t) { for (var e = 1; e < arguments.length; e++) { var n = null != arguments[e] ? arguments[e] : {}; e % 2 ? s(Object(n), !0).forEach(function(e) { (0, r.default)(t, e, n[e]) }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(t, Object.getOwnPropertyDescriptors(n)) : s(Object(n)).forEach(function(e) { Object.defineProperty(t, e, Object.getOwnPropertyDescriptor(n, e)) }) } return t } var v = jQuery , l = o.default.extend({ mainLayout: null, mobileLayout: null, isRtl: !1, widgetParents: {}, getDefaultSettings: function() { return { selectors: { menus: "ul.raven-adnav-menu", mainNav: "nav.raven-adnav-menu-main", mainMenu: "nav.raven-adnav-menu-main ul.raven-adnav-menu", mobileNav: "nav.raven-adnav-menu-mobile", mobileMenu: "nav.raven-adnav-menu-mobile ul.raven-adnav-menu", inPageMenuItems: 'a[href*="#"]', toggleButton: ".raven-adnav-menu-toggle-button", closeButton: ".raven-adnav-menu-close-button", rootListItems: "ul.raven-adnav-menu > li", submenuLinks: "ul.raven-adnav-menu .submenu a" } } }, getDefaultElements: function() { var e = this.getSettings("selectors"); return { $body: v("body"), $menus: this.$element.find(e.menus), $mainNav: this.$element.find(e.mainNav), $mainMenu: this.$element.find(e.mainMenu), $mobileNav: this.$element.find(e.mobileNav), $mobileMenu: this.$element.find(e.mobileMenu), $inPageMenuItems: this.$element.find(e.inPageMenuItems), $toggleButton: this.$element.find(e.toggleButton), $closeButton: this.$element.find(e.closeButton), $rootListItems: this.$element.find(e.rootListItems), $submenuLinks: this.$element.find(e.submenuLinks), $elementorElement: this.$element.closest(".elementor-element"), $parentSegment: this.$element.parentsUntil("div.jupiterx-site").last() } }, onInit: function() { elementorModules.frontend.handlers.Base.prototype.onInit.apply(this, arguments), this.mainLayout = this.elements.$mainNav.attr("data-layout"), this.mobileLayout = !!this.elements.$mobileNav.length && this.elements.$mobileNav.attr("data-layout"), this.isRtl = v("body").hasClass("rtl"), this.isEdit && "section_submenu" === elementor.panel.currentView.currentPageView.activeSection && this.onSectionActivated("section_submenu"), this.deactivateMenu(), v(window).off("resize", this.deactivateMenu.bind(this)).on("resize", this.deactivateMenu.bind(this)), this.widgetParents = { widget: this.$element, column: this.getParentColumn(), section: this.getParentSection(), container: this.getParentContainer() }, this.initMainSmartMenu(), this.initMobileSmartMenu(), this.updateActiveListItems(), this.inPageMenuClick(), this.mobileMenuScroll(), this.handleLinksOnSubmenu() }, bindEvents: function() { var e, t = this.elements.$mainNav.attr("data-layout"); "dropdown" === t && this.elements.$toggleButton.on("click", this.toggleDropdown.bind(this)), "offcanvas" === t && (this.elements.$toggleButton.on("click", this.toggleMenu.bind(this)), this.elements.$closeButton.on("click", this.toggleMenu.bind(this)), this.elements.$menus.on("select.smapi", this.onSideMenuItemClick.bind(this)), e = this.getElementSettings("offcanvas_appear_effect"), this.elements.$body.addClass("raven-adnav-menu-effect-".concat(e)), this.elements.$toggleButton.on("click", this.doSideMenuEffects.bind(this)), this.elements.$closeButton.on("click", this.doSideMenuEffects.bind(this))); var n = this.elements.$mobileNav.attr("data-layout"); if ("dropdown" !== n) { if ("side" === n) { this.elements.$toggleButton.on("click", this.toggleMenu.bind(this)), this.elements.$closeButton.on("click", this.toggleMenu.bind(this)), this.elements.$menus.on("select.smapi", this.onSideMenuItemClick.bind(this)); var i = this.getElementSettings("side_menu_effect"); return this.elements.$body.addClass("raven-adnav-menu-effect-".concat(i)), this.elements.$toggleButton.on("click", this.doSideMenuEffects.bind(this)), void this.elements.$closeButton.on("click", this.doSideMenuEffects.bind(this)) } "full-screen" === n && (this.elements.$toggleButton.on("click", this.toggleMenu.bind(this)), this.elements.$closeButton.on("click", this.toggleMenu.bind(this))) } else this.elements.$toggleButton.on("click", this.toggleDropdown.bind(this)) }, initMainSmartMenu: function() { var e, t, n, i, r = this, o = { subIndicators: !1, rightToLeftSubMenus: this.isRtl }, s = getComputedStyle(this.$element[0]).getPropertyValue("--submenu-spacing") && null !== (e = this.$element) && void 0 !== e && e.css("--submenu-spacing") ? parseInt(null === (t = this.$element) || void 0 === t ? void 0 : t.css("--submenu-spacing")) : 0; "horizontal" !== this.mainLayout && "vertical" !== this.mainLayout || (n = this.elements.$elementorElement, i = this.getElementSettings("content_effect_content_overlay"), 0 !== v(n[0]).parents(".jupiterx-header") && "enabled" === i && "horizontal" === this.mainLayout && 0 === v(".jupiterx-main").find(".jupiterx-advanced-nav-content-effect-enabled-overlay").length && v(".jupiterx-main").append('
'), o = a(a({}, o), {}, { hideTimeout: 300, hideFunction: function(e) { e.removeClass("submenu-shown"), setTimeout(function() { e.css("display", "none"), "horizontal" === r.mainLayout && (r.handleContentEffectsBlur("remove"), r.handleContentEffectsOverlay("remove")) }, 0) }, showTimeout: 0, showFunction: function(e) { var t; r.setSubmenuWidth(e, s), r.setSubmenuPosition(e), e.css("display", "block"), "horizontal" === r.mainLayout && (t = r.getElementSettings("content_effect_blur_content"), 0 === v(n[0]).parents(".jupiterx-header") || "enabled" !== i && "enabled" !== t || 0 === v(".jupiterx-main").find(".jupiterx-advanced-nav-content-effect-enabled-overlay").length && v(".jupiterx-main").append('
'), "enabled" !== i && "enabled" !== t || r.elements.$body[0].classList.add("jupiterx-advanced-nav-content-effect-enabled")), setTimeout(function() { e.addClass("submenu-shown"), "horizontal" === r.mainLayout && (r.handleContentEffectsBlur("add"), r.handleContentEffectsOverlay("add")) }) }, showOnClick: "click" === this.getElementSettings("submenu_trigger"), subMenusMinWidth: "0", subMenusMaxWidth: "110vw" })), "horizontal" === this.mainLayout && (o = a(a({}, o), {}, { bottomToTopSubMenus: "top" === this.getElementSettings("submenu_opening_position"), mainMenuSubOffsetY: s })), "vertical" === this.mainLayout && this.elements.$mainMenu.addClass("sm-vertical"), this.elements.$mainMenu.smartmenus(o) }, handleContentEffectsOverlay: function(e) { var t = this.elements.$elementorElement; if (t[0].classList.contains("raven-blur-content-overlay-enabled") && 0 !== v(t[0]).parents(".jupiterx-header").length) { var n = this.getElementSettings("content_effect_content_overlay"); if (0 !== v(t[0]).parents(".jupiterx-header") && "enabled" === n && this.elements.$body[0].classList.add("jupiterx-advanced-nav-overlay-enabled"), "remove" === e) return this.elements.$body[0].classList.remove("jupiterx-advanced-nav-overlay-enabled"), void v(".jupiterx-advanced-nav-content-effect-enabled-overlay").removeClass("jupiterx-advanced-nav-overlay-activated"); v(".jupiterx-advanced-nav-content-effect-enabled-overlay").addClass("jupiterx-advanced-nav-overlay-activated") } }, handleContentEffectsBlur: function(e) { var t, n = this.elements.$elementorElement; if (n[0].classList.contains("raven-blur-content-enabled") && 0 !== v(n[0]).parents(".jupiterx-header").length) { var i = (null === (t = this.getElementSettings("content_effect_blur_intensity")) || void 0 === t ? void 0 : t.size) || 5; if ("remove" === e) return v(".jupiterx-advanced-nav-content-effect-enabled-overlay").css("backdrop-filter", ""), void v(".jupiterx-advanced-nav-content-effect-enabled-overlay").removeClass("jupiterx-advanced-nav-overlay-activated"); v(".jupiterx-advanced-nav-content-effect-enabled-overlay").addClass("jupiterx-advanced-nav-overlay-activated"), v(".jupiterx-advanced-nav-content-effect-enabled-overlay").css("backdrop-filter", "blur(".concat(i, "px)")) } }, initMobileSmartMenu: function() { var e; this.elements.$mobileMenu.length && (e = { subIndicators: !1, subMenusMaxWidth: "1500px", rightToLeftSubMenus: this.isRtl }, this.elements.$mobileMenu.smartmenus(e)) }, toggleDropdown: function() { this.elements.$toggleButton.find(".hamburger").toggleClass("is-active"), "dropdown" !== this.mainLayout ? (this.dropdownFullWidth(), this.elements.$mobileNav.slideToggle(250), this.dropdownFullWidth()) : this.elements.$mainNav.slideToggle(250) }, dropdownFullWidth: function() { var e, t, n, i, r, o = this.elements.$mobileNav; "stretch" === this.getElementSettings("full_width") && (t = null === (e = o[0]) || void 0 === e ? void 0 : e.getBoundingClientRect().x, this.elements.$mobileNav.css("width", "".concat(this.$element.closest("body")[0].getBoundingClientRect().width, "px")).css("left", "".concat(-t, "px")), n = this.elements.$elementorElement, i = this.elements.$toggleButton, r = n.offset().top + n.outerHeight() - i.offset().top, o.css("top", r)) }, doSideMenuEffects: function() { var e = this , t = "offcanvas" === this.mainLayout; if ("overlay" === this.getElementSettings(t ? "offcanvas_appear_effect" : "side_menu_effect")) return this.elements.$body.hasClass("raven-adnav-menu-effect-overlayed") ? void setTimeout(function() { e.elements.$body.removeClass("raven-adnav-menu-effect-overlayed"), e.togglePrepareParentForPushEffect(!1) }, 400) : (this.elements.$body.addClass("raven-adnav-menu-effect-overlayed"), void this.togglePrepareParentForPushEffect()); var n = this.getElementSettings(t ? "offcanvas_position" : "side_menu_alignment") , i = parseInt(this.$element.css(t ? "--offcanvas-box-width" : "--menu-container-width")) || 250; if ("right" === n && (i = "-".concat(i, "px")), !this.elements.$body.hasClass("raven-adnav-menu-effect-pushed")) { var r = this.isRtl ? "margin-right" : "margin-left"; return this.elements.$body.addClass("raven-adnav-menu-effect-pushed").css(r, i), void this.togglePrepareParentForPushEffect() } this.elements.$body.removeClass("raven-adnav-menu-effect-pushed").removeAttr("style"), this.togglePrepareParentForPushEffect(!1) }, togglePrepareParentForPushEffect: function(e) { 0 < arguments.length && void 0 !== e && !e ? this.elements.$parentSegment.removeClass("raven-adnav-menu-parent-segment") : this.elements.$parentSegment.addClass("raven-adnav-menu-parent-segment").css("--adnav-menu-overlay-color", this.getElementSettings("offcanvas_overlay_color")) }, toggleMenu: function() { var e = "offcanvas" === this.mainLayout ? this.elements.$mainNav : this.elements.$mobileNav; e.toggleClass("raven-adnav-menu-active"), "full-screen" === this.mobileLayout && this.elements.$body.toggleClass("raven-adnav-menu-effect-overlayed"), e.hasClass("raven-adnav-menu-active") ? e.parents(".animated").addClass("raven-adnav-menu-parents-animation") : e.parents(".animated").removeClass("raven-adnav-menu-parents-animation"), 0 !== this.elements.$toggleButton.find(".hamburger").length && this.elements.$toggleButton.find(".hamburger").toggleClass("is-active") }, mobileMenuScroll: function() { for (var i = document.querySelectorAll(".raven-adnav-menu-mobile.raven-adnav-menu-full-screen"), r = null, e = 0; e < i.length; e++) !function(n) { i[n].addEventListener("touchstart", function(e) { 1 === e.targetTouches.length && (r = e.targetTouches[0].clientY) }, !1), i[n].addEventListener("touchmove", function(e) { var t; 1 === e.targetTouches.length && (t = e.targetTouches[0].clientY - r, 0 === i[n].scrollTop && 0 < t && e.cancelable && 0 === v(e.target).parents(".raven-container").length && e.preventDefault(), i[n].scrollHeight - i[n].scrollTop <= i[n].clientHeight && t < 0 && e.cancelable && 0 === v(e.target).parents(".raven-container").length && e.preventDefault()) }, !1) }(e) }, handleLinksOnSubmenu: function() { this.elements.$submenuLinks.on("click", function(e) { e.stopPropagation() }) }, inPageMenuClick: function() { var g = this; this.elements.$inPageMenuItems.on("click", function(e) { var t, n, i, r, o, s, a, l, c, u, d, p, h, f = v(e.currentTarget).prop("href"), m = null; try { m = new window.URL(f) } catch (e) { return } m.hash && m.pathname === window.location.pathname && (e.preventDefault(), g.deactivateMenu(), g.changeHamburgerState(!1), window.history.pushState(null, null, m.hash), 0 !== (t = v(m.hash)).length && (i = (n = v(".jupiterx-header").data("jupiterx-settings")).behavior, r = n.overlap, o = n.position, s = n.template, a = n.stickyTemplate, l = "sticky" === i && (!a || a !== s), c = 0 < v(".jupiterx-header-sticked").length, u = v(".jupiterx-tbar").outerHeight() || 0, d = v("#wpadminbar").height() || 0, p = parseInt(v(".jupiterx-site-body-border").css("border-width")) || 0, h = t.offset().top, h -= d, h -= p, h -= u, c || i && ("sticky" !== i || !r) || (h -= u), l && (h -= v(".jupiterx-header-custom .elementor:last-of-type").outerHeight() || 0), l || "sticky" !== i && ("fixed" !== i || "top" !== o) || (h -= g.getHeaderHeight()), v("html, body").stop().animate({ scrollTop: h }, 500, "swing"))) }) }, getHeaderHeight: function() { var e = v(".jupiterx-header"); if (0 === e.length) return 0; var t = e.data("jupiterx-settings").behavior; return "fixed" === t || "sticky" === t || window.pageYOffset < e.height() ? e.height() : 0 }, onElementChange: function(e) { var t, n, i, r; "full_width" === e && this.dropdownFullWidth(), (e.startsWith("menu_container_width") || e.startsWith("offcanvas_box_width")) && this.elements.$body.hasClass("raven-adnav-menu-effect-pushed") && (t = "offcanvas" === this.mainLayout, n = this.getElementSettings(t ? "offcanvas_position" : "side_menu_alignment"), i = parseInt(this.$element.css(t ? "--offcanvas-box-width" : "--menu-container-width")) || 250, "right" === n && (i = "-".concat(i, "px")), r = this.isRtl ? "margin-right" : "margin-left", this.elements.$body.css(r, i)), "submenu_space_between" === e && (this.elements.$menus.smartmenus("destroy"), this.initMainSmartMenu()) }, onSectionActivated: function(e) { if ("section_submenu" === e) return this.forceShowSubmenu(), void (this.showSubMenuInterval = setInterval(this.forceShowSubmenu, 1e3)); clearInterval(this.showSubMenuInterval) }, forceShowSubmenu: function() { var e; this.elements.$mainMenu.find("li ul.submenu").each(function() { v(this).find("li:not(.submenu-template)").length && (e = v(this).prev("a.raven-menu-item")) }), null !== e && void 0 !== e && e.length && "none" === e.next("ul").css("display") && this.elements.$menus.smartmenus("itemActivate", e) }, onSideMenuItemClick: function(e, t) { var n, i = v(t); 0 === i.closest(".raven-adnav-menu-side,.raven-adnav-menu-offcanvas").length || -1 === (n = i.attr("href")).search(/^#/) && 0 !== n.trim().length && this.elements.$closeButton.trigger("click") }, changeHamburgerState: function(e) { var t = this.elements.$toggleButton.find(".hamburger"); 0 !== t.length && (e ? t.addClass("is-active") : t.removeClass("is-active")) }, updateActiveListItems: function() { this.elements.$rootListItems.each(function() { var e = 0 < v(this).children("a.active-link").length; v(this).toggleClass("current-menu-item", e) }) }, setSubmenuWidth: function(e, t) { var n, i = e.closest("li.menu-item"), r = i.data("width_type"); if ("custom" !== r) if ("vertical" !== this.mainLayout) { "default" !== r ? (n = this.widgetParents[r].get(0).getBoundingClientRect().width, e.css("width", "".concat(n, "px"))) : e.css({ width: "fit-content", "max-width": this.widgetParents.widget.get(0).getBoundingClientRect().width + "px" }) } else { if ("default" === r) return void e.css({ width: "fit-content", "max-width": this.widgetParents.widget.get(0).getBoundingClientRect().width - this.elements.$mainMenu.get(0).getBoundingClientRect().width - t + "px" }); var o = this.widgetParents[r].get(0).getBoundingClientRect().width - this.elements.$mainMenu.get(0).getBoundingClientRect().width - t; e.css("width", "".concat(o, "px")) } else { var s = i.data("custom_width"); e.css("width", s) } }, setSubmenuPosition: function(e) { var t, n, i, r, o, s, a, l, c, u, d, p, h, f, m, g = e.closest("li.menu-item"); "vertical" !== this.mainLayout ? (t = g.data("width_type"), ["default", "custom"].includes(t) ? (i = "unset", s = "0", "right" === (n = g.data("submenu_pos")) && (i = "0", s = "unset"), "center" === n && (r = g.get(0).getBoundingClientRect().width, o = parseInt(e.css("width")), s = "".concat((r - o) / 2, "px")), e.css({ left: s, right: i })) : (a = this.widgetParents[t].get(0).getBoundingClientRect().x, l = g.get(0).getBoundingClientRect().x, e.css("left", "".concat(a - l, "px")))) : ((d = g.data("submenu_pos")) && "center" !== d || (d = this.isRtl ? "left" : "right"), p = getComputedStyle(this.$element[0]).getPropertyValue("--submenu-spacing") && null !== (c = this.$element) && void 0 !== c && c.css("--submenu-spacing") ? parseInt(null === (u = this.$element) || void 0 === u ? void 0 : u.css("--submenu-spacing")) : 0, h = g.get(0).getBoundingClientRect().width + p, f = "right" === d ? "unset" : h, m = "right" === d ? h : "unset", e.css({ left: m, right: f })) }, getParentSection: function() { var e = this.$element.closest('section[data-element_type="section"]'); if (e.length) return e; var t = this.$element.parents('[data-element_type="container"]').last(); return t.length ? t : void 0 }, getParentColumn: function() { var e = this.$element.closest('div[data-element_type="column"]'); if (e.length) return e; var t = this.$element.closest('[data-element_type="container"]'); return t.length ? t : void 0 }, getParentContainer: function() { var e = this.$element.closest('[data-element_type="container"]'); if (e.length) return e; var t = this.$element.closest('section[data-element_type="section"]'); return t.length ? t : void 0 }, deactivateMenu: function() { var e = this.elements.$mobileNav.hasClass("raven-adnav-menu-dropdown") , t = this.elements.$mainNav.css("display"); e && "none" === t || (this.elements.$body.removeClass(["raven-adnav-menu-effect-pushed", "raven-adnav-menu-effect-overlayed"]).removeAttr("style"), this.elements.$parentSegment.removeClass("raven-adnav-menu-parent-segment"), this.elements.$mainNav.removeClass("raven-adnav-menu-active"), this.elements.$mobileNav.removeClass("raven-adnav-menu-active"), this.elements.$toggleButton.find(".hamburger").removeClass("is-active"), "dropdown" === this.mobileLayout && this.elements.$mobileNav.slideUp(250), "dropdown" === this.mainLayout && this.elements.$mainNav.slideUp(250)) } }) } , { "../utils/module": 6, "@babel/runtime/helpers/defineProperty": 74, "@babel/runtime/helpers/interopRequireDefault": 78 }], 25: [function(e, t, n) { "use strict"; var i = e("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(n, "__esModule", { value: !0 }), n.default = function(e) { new a({ $element: e }) } ; var p = i(e("@babel/runtime/helpers/toConsumableArray")) , r = i(e("../utils/module")) , o = i(e("../utils/pagination")) , s = i(e("../utils/sortable")) , a = r.default.extend({ Pagination: null, Sortable: null, getDefaultSettings: function() { return { classes: { postMirrored: "data-mirrored" }, selectors: { posts: ".advanced-posts-content", postItem: ".raven-posts-item", postImage: ".raven-post-image", pagination: ".raven-pagination", loadMore: ".raven-load-more", loadMoreButton: ".raven-load-more-button", postImageFit: ".raven-image-fit img", postMirrored: "[data-mirrored]", sortable: ".raven-sortable", preLoader: ".raven-posts-preloader", sortPreLoader: ".raven-posts-sortable-preloader", postOverlay: ".content-layout-overlay" }, state: { paged: 1, category: -1, maxNumPages: 1, isLoading: !1 } } }, getDefaultElements: function() { var e = this.getSettings("selectors"); return { $postsWrapper: this.$element, $postsContainer: this.$element.find(e.posts), $postsImages: this.$element.find(e.postImage), $pagination: this.$element.find(e.pagination), $loadMore: this.$element.find(e.loadMore), $loadMoreButton: this.$element.find(e.loadMoreButton), $preLoader: this.$element.find(e.preLoader), $sortPreLoader: this.$element.find(e.sortPreLoader), $sortable: this.$element.find(e.sortable), $postOverlay: this.$element.find(e.postOverlay), $showedItems: 0 } }, bindEvents: function() { "yes" === this.getInstanceValue("mirror_rows") && elementorFrontend.addListenerOnce(this.$element.data("model-cid"), "resize", this.mirrorRows.bind(this)); var e = this; window.addEventListener("resize", function() { setTimeout(function() { "masonry" === e.getInstanceValue("general_layout") && e.masonryRun(), "matrix" === e.getInstanceValue("general_layout") && e.matrixRun(500), "metro" === e.getInstanceValue("general_layout") && e.metroRun(500) }, 500) }) }, onDeviceModeChange: function() { setTimeout(this.initialize(), 0) }, onElementChange: function(e) { var t = this; "metro_matrix_rows_gap" === e && ("metro" === this.getInstanceValue("general_layout") && this.metroRun(0), "matrix" === this.getInstanceValue("general_layout") && this.matrixRun(0)), "stroke_width" === e && setTimeout(function() { "masonry" === t.getInstanceValue("general_layout") && t.masonryRun() }, 0), "metro_matrix_large_aspect_ratio" !== e && "metro_matrix_small_aspect_ratio" !== e || setTimeout(function() { "metro" === t.getInstanceValue("general_layout") && t.metroRun(0), "matrix" === t.getInstanceValue("general_layout") && t.matrixRun(0) }, 0), "rows_spacing" !== e && "block_column_spacing" !== e || "masonry" === this.getInstanceValue("general_layout") && setTimeout(function() { t.masonryRun() }, 500) }, onInit: function() { var e = this; elementorModules.frontend.handlers.Base.prototype.onInit.apply(this, arguments), this.initializeOnce(), this.initialize(), elementorFrontend.isEditMode() && elementor.listenTo(elementor.channels.deviceMode, "change", function() { return e.onDeviceModeChange() }) }, initialize: function() { var e = this; "masonry" === this.getInstanceValue("general_layout") && this.masonryRun(), "metro" === this.getInstanceValue("general_layout") && this.elements.$postsContainer.imagesLoaded().progress(function() { e.metroRun(0) }), "matrix" === this.getInstanceValue("general_layout") && this.matrixRun(0), "yes" === this.getInstanceValue("mirror_rows") && this.mirrorRows(), this.handleAnitmation(), this.handleFeaturedIamageEffect(), objectFitPolyfill(this.$element.find(this.getSettings("selectors.postImageFit"))) }, initializeOnce: function() { "yes" === this.getInstanceValue("show_sortable") && this.sortableModule(), "page_based" === this.getInstanceValue("pagination_type") && this.paginationModule(), "load_more" === this.getInstanceValue("pagination_type") && this.elements.$loadMore.length && this.loadMore(), "infinite_load" === this.getInstanceValue("pagination_type") && this.infiniteLoadWaypoint() }, handlePostsOrder: function(e) { return "metro" === this.getInstanceValue("general_layout") && e[0].classList.contains("raven-posts-full-width") ? [].concat((0, p.default)(e.slice(1, 3).reverse()), [e[0]], (0, p.default)(e.slice(3, e.length))) : e[0].classList.contains("raven-posts-full-width") ? [e[0]].concat((0, p.default)(e.slice(1, e.length).reverse())) : "matrix" === this.getInstanceValue("general_layout") ? (0, p.default)(e) : (0, p.default)(e.reverse()) }, handleAnitmation: function() { var l = this , c = (0, p.default)(this.elements.$postsContainer[0].querySelectorAll(".raven-posts-item:not(.raven-advanced-posts-loaded)")) , u = this.getInstanceValue("load_effect") , d = this; this.elements.$postsContainer.imagesLoaded().done(function() { var e = 0; if ("slide-right" === u) { l.setColumnsCount(); var t = l.getSettings().columnsCount; t || ("metro" === l.getInstanceValue("general_layout") && (t = 3), "matrix" === l.getInstanceValue("general_layout") && (t = 4)); var n = parseInt(c.length / t) , i = c.length % t; if (c.length / t <= 1) c = (0, p.default)(l.handlePostsOrder(c)); else { for (var r = [], o = [], s = 1; s <= n; ++s) { o = []; for (var a = r.length; a < s * t; ++a) o.push(c[a]); r.push.apply(r, (0, p.default)(l.handlePostsOrder(o))) } 0 < i && r.push.apply(r, (0, p.default)(c.slice(-i).reverse())), c = r } } c.forEach(function(n, i) { u && !document.body.classList.contains("elementor-editor-active") || n.classList.contains("raven-advanced-posts-loaded") || (++e, setTimeout(function() { n.classList.add("raven-advanced-posts-loaded") }, 200 + 100 * e)), u && new Waypoint({ context: window, element: $(n), handler: function() { var e, t = this; n.classList.contains("raven-advanced-posts-loaded") || (e = 0 < d.elements.$showedItems ? this.element.index() - d.elements.$showedItems : i, "slide-right" === u && (e > d.elements.$showedItems && (e -= d.elements.$showedItems), d.elements.$showedItems > e && (e = d.elements.$showedItems - e)), setTimeout(function() { t.element.addClass("raven-advanced-posts-loaded"), d.elements.$showedItems = t.element.index(), t.destroy() }, 100 * e)) }, offset: "100%" }) }) }) }, addPosts: function(e) { var t = this.getSettings("state"); return !(t.isLoading || t.paged < 1) && (this.ajaxPosts(e, this.appendPosts), !0) }, setPosts: function(e) { return !this.getSettings("state").isLoading && (this.ajaxPosts(e, this.renderPosts), !0) }, handleSort: function(e) { this.setPosts({ paged: 1, category: e }) && this.setSettings("state.category", e) }, sortableModule: function() { var e, t = this; document.body.classList.contains("elementor-editor-active") || (e = s.default.extend({ handleSort: this.handleSort.bind(this) }), this.Sortable = new e({ $element: this.$element.find(this.getSettings("selectors.sortable")) }), this.elements.$sortable.on("click", ".raven-sortable-item", function(e) { e.currentTarget.classList.contains("raven-sortable-active") || (t.elements.$sortPreLoader[0].classList.add("active-preloader"), t.elements.$postsContainer.find(".raven-posts-item").delay("100").addClass("raven-posts-remove-animation")) })) }, paginationModule: function() { var e, t = this; document.body.classList.contains("elementor-editor-active") || (e = o.default.extend({ handlePagination: this.handlePagination.bind(this) }), this.Pagination = new e({ $element: this.$element.find(this.getSettings("selectors.pagination")) }), this.elements.$pagination.on("click", ".raven-pagination-item", function(e) { e.currentTarget.classList.contains("raven-pagination-active") || (t.elements.$showedItems = 0, t.elements.$preLoader[0].classList.add("active-preloader")) })) }, loadMore: function() { var i = this , e = this.getSettings("state") , t = this.elements.$loadMore.data("settings"); this.setPaged({ paged: e.paged, maxNumPages: t.maxNumPages }), this.elements.$loadMoreButton.on("click", function(e) { var t, n; e.preventDefault(), document.body.classList.contains("elementor-editor-active") || (i.elements.$preLoader[0].classList.add("active-preloader"), n = (t = i.getSettings("state")).paged + 1, i.addPosts({ paged: n, category: t.category })) }) }, infiniteLoadWaypoint: function() { var n = this , e = this; e.elements.$postsContainer.imagesLoaded().always(function() { document.body.classList.contains("elementor-editor-active") || elementorFrontend.waypoint(e.elements.$postsContainer, function() { var e = n.getSettings("state") , t = e.paged + 1; n.addPosts({ paged: t, category: e.category }) }, { offset: "bottom-in-view", triggerOnce: !0 }) }) }, handlePagination: function(e) { this.scrollToContainer(this.elements.$postsContainer), this.elements.$postsContainer.find(".raven-posts-item").delay("100").addClass("raven-posts-remove-animation"), this.setPosts({ paged: e, category: this.getSettings("state.category") }) }, renderPosts: function(e) { var t, n; this.elements.$postsContainer.empty(), this.elements.$postsContainer.append(e.posts), this.Sortable && !this.Sortable.isEnabled() && (this.Sortable.renderUpdate(), this.Pagination && this.Pagination.isEnabled() && this.Pagination.recreatePagination(e.max_num_pages)), this.Pagination && !this.Pagination.isEnabled() && this.Pagination.renderUpdate(), this.setPaged({ paged: 1, maxNumPages: e.max_num_pages }), null !== (t = this.elements.$preLoader[0]) && void 0 !== t && null !== (t = t.classList) && void 0 !== t && t.remove("active-preloader"), null !== (n = this.elements.$sortPreLoader[0]) && void 0 !== n && null !== (n = n.classList) && void 0 !== n && n.remove("active-preloader"), this.initialize() }, appendPosts: function(e) { var t = this.getSettings("state"); this.elements.$postsContainer.append(e.posts), this.setPaged({ paged: t.paged + 1, maxNumPages: e.max_num_pages }), this.afterAppend() }, afterAppend: function() { var e, t; "yes" === this.getInstanceValue("mirror_rows") && this.mirrorRows(), "infinite_load" === this.getInstanceValue("pagination_type") && this.infiniteLoadWaypoint(), "masonry" === this.getInstanceValue("general_layout") && this.masonryRun(), "metro" === this.getInstanceValue("general_layout") && this.metroRun(0), "matrix" === this.getInstanceValue("general_layout") && this.matrixRun(0), ["metro", "matrix"].includes(this.getInstanceValue("general_layout")) || this.handleAnitmation(), this.handleFeaturedIamageEffect(), null !== (e = this.elements.$preLoader[0]) && void 0 !== e && null !== (e = e.classList) && void 0 !== e && e.remove("active-preloader"), null !== (t = this.elements.$sortPreLoader[0]) && void 0 !== t && null !== (t = t.classList) && void 0 !== t && t.remove("active-preloader") }, ajaxPosts: function(e, n) { var t = this.elements.$postsContainer.data("archive-query") , i = this , r = { action: "raven_render_advanced_posts", post_id: this.getCurrentPostId(), model_id: this.getID(), paged: e.paged, category: e.category, nonce: ravenTools.nonce }; t && (r.archive_query = JSON.stringify(t)); this.setSettings("state.isLoading", !0), wp.ajax.post(r).done(function(e) { var t; (t = e).posts && n(t), i.setSettings("state.isLoading", !1) }) }, getCurrentPostId: function() { return parseInt(this.elements.$postsContainer.data("post-id")) }, setPaged: function(e) { var t = e.paged , n = e.maxNumPages; n <= t && (t = -1), this.elements.$loadMore.show(), -1 === t && this.elements.$loadMore.hide(), this.setSettings("state.paged", t), this.setSettings("state.maxNumPages", n) }, mirrorRows: function() { this.setColumnsCount(); var e = this.getSettings() , t = this.$element.find(e.selectors.postItem); if (t.filter(e.selectors.postMirrored).removeAttr(e.classes.postMirrored), t.length && t.length > e.columnsCount) for (var n = t.length / e.columnsCount, i = 1; i < n; i += 2) { var r = i * e.columnsCount; t.slice(r, r + e.columnsCount).attr(e.classes.postMirrored, !0) } }, setColumnsCount: function() { var e = elementorFrontend.getCurrentDeviceMode() , t = "columns_".concat(e); "desktop" === e && (t = "columns"), this.setSettings("columnsCount", parseInt(this.getInstanceValue(t))) }, setGapSize: function() { var e, t = elementorFrontend.getCurrentDeviceMode(), n = "metro_matrix_rows_gap_".concat(t); "desktop" === t && (n = "metro_matrix_rows_gap"), this.setSettings("gapSize", parseInt(null === (e = this.getInstanceValue(n)) || void 0 === e ? void 0 : e.size)) }, masonryRun: function() { var e = !document.body.classList.contains("rtl"); this.elements.$postsContainer.data("isotope") && this.elements.$postsContainer.isotope("reloadItems").isotope(), this.elements.$postsContainer.isotope({ itemSelector: ".raven-masonry-item", masonry: { layoutMode: "fitRows" }, transitionDuration: 0, sortBy: "original-order", isOriginLeft: e }) }, metroRun: function(e) { this.setGapSize(); var r = this , t = this.getSettings().gapSize ? this.getSettings().gapSize : 0 , n = elementorFrontend.getCurrentDeviceMode() , i = !document.body.classList.contains("rtl"); r.elements.$postsContainer.data("isotope") && r.elements.$postsContainer.isotope("reloadItems").isotope(); var o = Math.floor((r.elements.$postsContainer.parent().width() + t) / 4) , s = 2 * o; "tablet" === n && (s = 2 * (o *= 2)), "mobile" === n && (s = o *= 4), r.elements.$postsContainer.find(".raven-metro-item").each(function(e, t) { var n = o , i = o; t.classList.contains("raven-posts-full-width") && (i = n = s), n && (t.style.width = n + "px"), r.elements.$postsContainer[0].classList.contains("content-layout-under-image") || (t.style.height = i + "px") }), setTimeout(function() { r.elements.$postsContainer.isotope({ itemSelector: ".raven-metro-item", layoutMode: "packery", percentPosition: !0, sortBy: "original-order", transitionDuration: 0, gutter: 10, isOriginLeft: i }), r.elements.$postsContainer.isotope("once", "arrangeComplete", function() { setTimeout(function() { return r.handleAnitmation() }, 100), setTimeout(function() { return Waypoint.refreshAll() }, 2e3) }) }, e) }, matrixRun: function(e) { var t = this , i = elementorFrontend.getCurrentDeviceMode() , n = !document.body.classList.contains("rtl"); t.elements.$postsContainer.data("isotope") && t.elements.$postsContainer.isotope("reloadItems").isotope(); var r = Math.floor(t.elements.$postsContainer.width() / 3) , o = 3 * r; "mobile" === i && (o = r *= 3), t.elements.$postsContainer.find(".raven-matrix-item").each(function(e, t) { var n = r; t.classList.contains("raven-posts-full-width") && (n = o), n && (t.style.width = n + "px"), "mobile" === i && (t.style.paddingRight = 0) }), setTimeout(function() { t.elements.$postsContainer.isotope({ itemSelector: ".raven-matrix-item", layoutMode: "packery", packery: { isFitWidth: !0 }, percentPosition: !0, sortBy: "original-order", transitionDuration: 0, isOriginLeft: n }), t.elements.$postsContainer.isotope("once", "arrangeComplete", function() { setTimeout(function() { return t.handleAnitmation() }, 100), setTimeout(function() { return Waypoint.refreshAll() }, 2e3) }) }, e) }, handleFeaturedIamageEffect: function() { var e, t = this.getInstanceValue("featured_image_hover"); !t || "zoom-move" !== t || this.elements.$postsImages.length < 1 || (e = this.elements.$postsContainer.find(".raven-posts-item:not(.raven-advanced-posts-loaded)").find(".raven-post-image"), 0 < this.elements.$postOverlay.length && (e = this.elements.$postOverlay.find(".raven-posts-item:not(.raven-advanced-posts-loaded)").find(".raven-post-wrapper")), e.on("mouseout", function(e) { var t = e.currentTarget.querySelector(".raven-posts-zoom-move-wrapper"); t && (t.style.transform = "perspective(900px) translate3d( 0px, 0px, 0px ) scale(1)") }), e.on("mousemove", function(e) { var t = e.currentTarget.getBoundingClientRect() , n = ((t.width + 35) / t.width).toFixed(2) , i = ((t.height + 35) / t.height).toFixed(2) , r = e.currentTarget.querySelector(".raven-posts-zoom-move-wrapper") , o = t.width / 2 - (e.clientX - t.left) , s = t.height / 2 - (e.clientY - t.top) , o = o / t.width * 30 , s = s / t.height * 30; r && (r.style.transform = "perspective(900px) translate3d( ".concat(o, "px, ").concat(s, "px, 0px ) scale(").concat(Math.max(n, i), ")")) }), this.elements.$postOverlay.length < 1 || document.body.classList.contains("elementor-editor-active") || e.on("click", function(e) { var t = e.currentTarget.querySelector(".raven-post-image").href; t && window.location.assign(t) })) } }) } , { "../utils/module": 6, "../utils/pagination": 17, "../utils/sortable": 19, "@babel/runtime/helpers/interopRequireDefault": 78, "@babel/runtime/helpers/toConsumableArray": 84 }], 26: [function(e, t, n) { "use strict"; Object.defineProperty(n, "__esModule", { value: !0 }), n.default = function(t) { t.find(".raven-alert-dismiss").on("click", function(e) { e.preventDefault(), t.fadeOut() }) } } , {}], 27: [function(e, t, n) { "use strict"; var i = e("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(n, "__esModule", { value: !0 }), n.default = function(e) { new s({ $element: e }) } ; var r = i(e("../utils/module")) , o = jQuery , s = r.default.extend({ svgPaths: { circle: ["M325,18C228.7-8.3,118.5,8.3,78,21C22.4,38.4,4.6,54.6,5.6,77.6c1.4,32.4,52.2,54,142.6,63.7 c66.2,7.1,212.2,7.5,273.5-8.3c64.4-16.6,104.3-57.6,33.8-98.2C386.7-4.9,179.4-1.4,126.3,20.7"], underline_zigzag: ["M9.3,127.3c49.3-3,150.7-7.6,199.7-7.4c121.9,0.4,189.9,0.4,282.3,7.2C380.1,129.6,181.2,130.6,70,139 c82.6-2.9,254.2-1,335.9,1.3c-56,1.4-137.2-0.3-197.1,9"], x: ["M497.4,23.9C301.6,40,155.9,80.6,4,144.4", "M14.1,27.6c204.5,20.3,393.8,74,467.3,111.7"], strikethrough: ["M3,75h493.5"], curly: ["M3,146.1c17.1-8.8,33.5-17.8,51.4-17.8c15.6,0,17.1,18.1,30.2,18.1c22.9,0,36-18.6,53.9-18.6 c17.1,0,21.3,18.5,37.5,18.5c21.3,0,31.8-18.6,49-18.6c22.1,0,18.8,18.8,36.8,18.8c18.8,0,37.5-18.6,49-18.6c20.4,0,17.1,19,36.8,19 c22.9,0,36.8-20.6,54.7-18.6c17.7,1.4,7.1,19.5,33.5,18.8c17.1,0,47.2-6.5,61.1-15.6"], diagonal: ["M13.5,15.5c131,13.7,289.3,55.5,475,125.5"], double: ["M8.4,143.1c14.2-8,97.6-8.8,200.6-9.2c122.3-0.4,287.5,7.2,287.5,7.2", "M8,19.4c72.3-5.3,162-7.8,216-7.8c54,0,136.2,0,267,7.8"], double_underline: ["M5,125.4c30.5-3.8,137.9-7.6,177.3-7.6c117.2,0,252.2,4.7,312.7,7.6", "M26.9,143.8c55.1-6.1,126-6.3,162.2-6.1c46.5,0.2,203.9,3.2,268.9,6.4"], underline: ["M7.7,145.6C109,125,299.9,116.2,401,121.3c42.1,2.2,87.6,11.8,87.3,25.7"] }, onInit: function() { elementorModules.frontend.handlers.Base.prototype.onInit.apply(this, arguments), this.intersectionObservers = { startAnimation: { observer: null, element: null } }, this.isLoopMode = "yes" === this.getElementSettings("loop"), this.activateScrollListener() }, getDefaultSettings: function() { var e = this.getElementSettings("rotate_iteration_delay") , t = { animationDelay: e || 2500, lettersDelay: .02 * e || 50, typeLettersDelay: .06 * e || 150, selectionDuration: .2 * e || 500, revealDuration: .24 * e || 600, revealAnimationDelay: .6 * e || 1500, highlightAnimationDuration: this.getElementSettings("highlight_animation_duration") || 1200, highlightAnimationDelay: this.getElementSettings("highlight_iteration_delay") || 8e3 }; return t.typeAnimationDelay = t.selectionDuration + 800, t.selectors = { heading: ".raven-heading", dynamicWrapper: ".raven-heading-dynamic-wrapper", dynamicText: ".raven-heading-dynamic-text" }, t.classes = { dynamicText: "raven-heading-dynamic-text", dynamicLetter: "raven-heading-dynamic-letter", textActive: "raven-heading-text-active", textInactive: "raven-heading-text-inactive", letters: "raven-heading-letters", animationIn: "raven-heading-animation-in", typeSelected: "raven-heading-typing-selected", activateHighlight: "raven-animated", hideHighlight: "raven-hide-highlight" }, t }, getDefaultElements: function() { var e = this.getSettings("selectors"); return { $heading: this.$element.find(e.heading), $dynamicWrapper: this.$element.find(e.dynamicWrapper), $dynamicText: this.$element.find(e.dynamicText) } }, getNextWord: function(e) { return e.is(":last-child") ? e.parent().children().eq(0) : e.next() }, switchWord: function(e, t) { e.removeClass("raven-heading-text-active").addClass("raven-heading-text-inactive"), t.removeClass("raven-heading-text-inactive").addClass("raven-heading-text-active"), this.setDynamicWrapperWidth(t) }, singleLetters: function() { var r = this.getSettings("classes"); this.elements.$dynamicText.each(function() { var n = o(this) , e = n.text().split("") , i = n.hasClass(r.textActive); n.empty(), e.forEach(function(e) { var t = o("", { class: r.dynamicLetter }).text(e); i && t.addClass(r.animationIn), n.append(t) }), n.css("opacity", 1) }) }, showLetter: function(e, t, n, i) { var r = this , o = this.getSettings("classes"); e.addClass(o.animationIn), e.is(":last-child") ? n || setTimeout(function() { r.hideWord(t) }, r.getSettings("animationDelay")) : setTimeout(function() { r.showLetter(e.next(), t, n, i) }, i) }, hideLetter: function(e, t, n, i) { var r = this , o = this.getSettings(); e.removeClass(o.classes.animationIn), e.is(":last-child") ? n && setTimeout(function() { r.hideWord(r.getNextWord(t)) }, r.getSettings("animationDelay")) : setTimeout(function() { r.hideLetter(e.next(), t, n, i) }, i) }, showWord: function(e, t) { var n = this , i = n.getSettings() , r = n.getElementSettings("animation_type"); if ("typing" === r) return n.showLetter(e.find("." + i.classes.dynamicLetter).eq(0), e, !1, t), void e.addClass(i.classes.textActive).removeClass(i.classes.textInactive); "clip" === r && n.elements.$dynamicWrapper.animate({ width: e.width() + 10 }, i.revealDuration, function() { setTimeout(function() { n.hideWord(e) }, i.revealAnimationDelay) }) }, hideWord: function(e) { var t = this , n = t.getSettings() , i = n.classes , r = "." + i.dynamicLetter , o = t.getElementSettings("animation_type") , s = t.getNextWord(e); if (this.isLoopMode || !e.is(":last-child")) { if ("typing" === o) return t.elements.$dynamicWrapper.addClass(i.typeSelected), setTimeout(function() { t.elements.$dynamicWrapper.removeClass(i.typeSelected), e.addClass(n.classes.textInactive).removeClass(i.textActive).children(r).removeClass(i.animationIn) }, n.selectionDuration), void setTimeout(function() { t.showWord(s, n.typeLettersDelay) }, n.typeAnimationDelay); if (t.elements.$heading.hasClass(i.letters)) { var a = e.children(r).length >= s.children(r).length; return t.hideLetter(e.find(r).eq(0), e, a, n.lettersDelay), t.showLetter(s.find(r).eq(0), s, a, n.lettersDelay), void t.setDynamicWrapperWidth(s) } "clip" !== o ? (t.switchWord(e, s), setTimeout(function() { t.hideWord(s) }, n.animationDelay)) : t.elements.$dynamicWrapper.animate({ width: "2px" }, n.revealDuration, function() { t.switchWord(e, s), t.showWord(s) }) } }, setDynamicWrapperWidth: function(e) { var t = this.getElementSettings("animation_type"); "clip" !== t && "typing" !== t && this.elements.$dynamicWrapper.css("width", e.width()) }, animateHeading: function() { var e = this , t = e.getElementSettings("animation_type") , n = e.elements.$dynamicWrapper; "clip" === t ? n.width(n.width() + 10) : "typing" !== t && e.setDynamicWrapperWidth(e.elements.$dynamicText), setTimeout(function() { e.hideWord(e.elements.$dynamicText.eq(0)) }, e.getSettings("animationDelay")) }, getSvgPaths: function(e) { var t = this.svgPaths[e] , n = o(); return t.forEach(function(e) { n = n.add(o("", { d: e })) }), n }, addHighlight: function() { var e = this.getElementSettings() , t = o("", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 500 150", preserveAspectRatio: "none" }).html(this.getSvgPaths(e.marker)); this.elements.$dynamicWrapper.append(t[0].outerHTML) }, rotateHeading: function() { var e = this.getSettings(); this.elements.$heading.hasClass(e.classes.letters) && this.singleLetters(), this.animateHeading() }, initHeading: function() { var e = this.getElementSettings("heading_style"); "rotate" === e ? this.rotateHeading() : "highlight" === e && (this.addHighlight(), this.activateHighlightAnimation()), this.deactivateScrollListener() }, activateHighlightAnimation: function() { var e = this , t = this.getSettings() , n = t.classes , i = this.elements.$heading; i.removeClass(n.hideHighlight).addClass(n.activateHighlight), this.isLoopMode && (setTimeout(function() { i.removeClass(n.activateHighlight).addClass(n.hideHighlight) }, t.highlightAnimationDuration + .8 * t.highlightAnimationDelay), setTimeout(function() { e.activateHighlightAnimation(!1) }, t.highlightAnimationDuration + t.highlightAnimationDelay)) }, activateScrollListener: function() { var t = this; this.intersectionObservers.startAnimation.observer = elementorModules.utils.Scroll.scrollObserver({ offset: "0px 0px ".concat(-100, "px"), callback: function(e) { e.isInViewport && t.initHeading() } }), this.intersectionObservers.startAnimation.element = this.elements.$heading[0], this.intersectionObservers.startAnimation.observer.observe(this.intersectionObservers.startAnimation.element) }, deactivateScrollListener: function() { this.intersectionObservers.startAnimation.observer.unobserve(this.intersectionObservers.startAnimation.element) } }) } , { "../utils/module": 6, "@babel/runtime/helpers/interopRequireDefault": 78 }], 28: [function(e, t, n) { "use strict"; var i = e("@babel/runtime/helpers/interopRequireDefault") , S = e("@babel/runtime/helpers/typeof"); Object.defineProperty(n, "__esModule", { value: !0 }), n.default = void 0; var r = i(e("@babel/runtime/helpers/asyncToGenerator")) , o = i(e("@babel/runtime/helpers/classCallCheck")) , s = i(e("@babel/runtime/helpers/createClass")) , a = i(e("@babel/runtime/helpers/inherits")) , l = i(e("@babel/runtime/helpers/possibleConstructorReturn")) , c = i(e("@babel/runtime/helpers/getPrototypeOf")); function $() { $ = function() { return s } ; var s = {} , e = Object.prototype , u = e.hasOwnProperty , d = Object.defineProperty || function(e, t, n) { e[t] = n.value } , t = "function" == typeof Symbol ? Symbol : {} , r = t.iterator || "@@iterator" , n = t.asyncIterator || "@@asyncIterator" , i = t.toStringTag || "@@toStringTag"; function o(e, t, n) { return Object.defineProperty(e, t, { value: n, enumerable: !0, configurable: !0, writable: !0 }), e[t] } try { o({}, "") } catch (e) { o = function(e, t, n) { return e[t] = n } } function a(e, t, n, i) { var o, s, a, l, r = t && t.prototype instanceof f ? t : f, c = Object.create(r.prototype), u = new C(i || []); return d(c, "_invoke", { value: (o = e, s = n, a = u, l = "suspendedStart", function(e, t) { if ("executing" === l) throw new Error("Generator is already running"); if ("completed" === l) { if ("throw" === e) throw t; return { value: void 0, done: !0 } } for (a.method = e, a.arg = t; ; ) { var n = a.delegate; if (n) { var i = function e(t, n) { var i = n.method , r = t.iterator[i]; if (void 0 === r) return n.delegate = null, "throw" === i && t.iterator.return && (n.method = "return", n.arg = void 0, e(t, n), "throw" === n.method) || "return" !== i && (n.method = "throw", n.arg = new TypeError("The iterator does not provide a '" + i + "' method")), h; var o = p(r, t.iterator, n.arg); if ("throw" === o.type) return n.method = "throw", n.arg = o.arg, n.delegate = null, h; var s = o.arg; return s ? s.done ? (n[t.resultName] = s.value, n.next = t.nextLoc, "return" !== n.method && (n.method = "next", n.arg = void 0), n.delegate = null, h) : s : (n.method = "throw", n.arg = new TypeError("iterator result is not an object"), n.delegate = null, h) }(n, a); if (i) { if (i === h) continue; return i } } if ("next" === a.method) a.sent = a._sent = a.arg; else if ("throw" === a.method) { if ("suspendedStart" === l) throw l = "completed", a.arg; a.dispatchException(a.arg) } else "return" === a.method && a.abrupt("return", a.arg); l = "executing"; var r = p(o, s, a); if ("normal" === r.type) { if (l = a.done ? "completed" : "suspendedYield", r.arg === h) continue; return { value: r.arg, done: a.done } } "throw" === r.type && (l = "completed", a.method = "throw", a.arg = r.arg) } } ) }), c } function p(e, t, n) { try { return { type: "normal", arg: e.call(t, n) } } catch (e) { return { type: "throw", arg: e } } } s.wrap = a; var h = {}; function f() {} function l() {} function c() {} var m = {}; o(m, r, function() { return this }); var g = Object.getPrototypeOf , v = g && g(g(k([]))); v && v !== e && u.call(v, r) && (m = v); var y = c.prototype = f.prototype = Object.create(m); function b(e) { ["next", "throw", "return"].forEach(function(t) { o(e, t, function(e) { return this._invoke(t, e) }) }) } function w(l, c) { var t; d(this, "_invoke", { value: function(n, i) { function e() { return new c(function(e, t) { !function t(e, n, i, r) { var o = p(l[e], l, n); if ("throw" !== o.type) { var s = o.arg , a = s.value; return a && "object" == S(a) && u.call(a, "__await") ? c.resolve(a.__await).then(function(e) { t("next", e, i, r) }, function(e) { t("throw", e, i, r) }) : c.resolve(a).then(function(e) { s.value = e, i(s) }, function(e) { return t("throw", e, i, r) }) } r(o.arg) }(n, i, e, t) } ) } return t = t ? t.then(e, e) : e() } }) } function _(e) { var t = { tryLoc: e[0] }; 1 in e && (t.catchLoc = e[1]), 2 in e && (t.finallyLoc = e[2], t.afterLoc = e[3]), this.tryEntries.push(t) } function x(e) { var t = e.completion || {}; t.type = "normal", delete t.arg, e.completion = t } function C(e) { this.tryEntries = [{ tryLoc: "root" }], e.forEach(_, this), this.reset(!0) } function k(t) { if (t || "" === t) { var e = t[r]; if (e) return e.call(t); if ("function" == typeof t.next) return t; if (!isNaN(t.length)) { var n = -1 , i = function e() { for (; ++n < t.length; ) if (u.call(t, n)) return e.value = t[n], e.done = !1, e; return e.value = void 0, e.done = !0, e }; return i.next = i } } throw new TypeError(S(t) + " is not iterable") } return d(y, "constructor", { value: l.prototype = c, configurable: !0 }), d(c, "constructor", { value: l, configurable: !0 }), l.displayName = o(c, i, "GeneratorFunction"), s.isGeneratorFunction = function(e) { var t = "function" == typeof e && e.constructor; return !!t && (t === l || "GeneratorFunction" === (t.displayName || t.name)) } , s.mark = function(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, c) : (e.__proto__ = c, o(e, i, "GeneratorFunction")), e.prototype = Object.create(y), e } , s.awrap = function(e) { return { __await: e } } , b(w.prototype), o(w.prototype, n, function() { return this }), s.AsyncIterator = w, s.async = function(e, t, n, i, r) { void 0 === r && (r = Promise); var o = new w(a(e, t, n, i),r); return s.isGeneratorFunction(t) ? o : o.next().then(function(e) { return e.done ? e.value : o.next() }) } , b(y), o(y, i, "Generator"), o(y, r, function() { return this }), o(y, "toString", function() { return "[object Generator]" }), s.keys = function(e) { var n = Object(e) , i = []; for (var t in n) i.push(t); return i.reverse(), function e() { for (; i.length; ) { var t = i.pop(); if (t in n) return e.value = t, e.done = !1, e } return e.done = !0, e } } , s.values = k, C.prototype = { constructor: C, reset: function(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = void 0, this.done = !1, this.delegate = null, this.method = "next", this.arg = void 0, this.tryEntries.forEach(x), !e) for (var t in this) "t" === t.charAt(0) && u.call(this, t) && !isNaN(+t.slice(1)) && (this[t] = void 0) }, stop: function() { this.done = !0; var e = this.tryEntries[0].completion; if ("throw" === e.type) throw e.arg; return this.rval }, dispatchException: function(n) { if (this.done) throw n; var i = this; function e(e, t) { return o.type = "throw", o.arg = n, i.next = e, t && (i.method = "next", i.arg = void 0), !!t } for (var t = this.tryEntries.length - 1; 0 <= t; --t) { var r = this.tryEntries[t] , o = r.completion; if ("root" === r.tryLoc) return e("end"); if (r.tryLoc <= this.prev) { var s = u.call(r, "catchLoc") , a = u.call(r, "finallyLoc"); if (s && a) { if (this.prev < r.catchLoc) return e(r.catchLoc, !0); if (this.prev < r.finallyLoc) return e(r.finallyLoc) } else if (s) { if (this.prev < r.catchLoc) return e(r.catchLoc, !0) } else { if (!a) throw new Error("try statement without catch or finally"); if (this.prev < r.finallyLoc) return e(r.finallyLoc) } } } }, abrupt: function(e, t) { for (var n = this.tryEntries.length - 1; 0 <= n; --n) { var i = this.tryEntries[n]; if (i.tryLoc <= this.prev && u.call(i, "finallyLoc") && this.prev < i.finallyLoc) { var r = i; break } } r && ("break" === e || "continue" === e) && r.tryLoc <= t && t <= r.finallyLoc && (r = null); var o = r ? r.completion : {}; return o.type = e, o.arg = t, r ? (this.method = "next", this.next = r.finallyLoc, h) : this.complete(o) }, complete: function(e, t) { if ("throw" === e.type) throw e.arg; return "break" === e.type || "continue" === e.type ? this.next = e.arg : "return" === e.type ? (this.rval = this.arg = e.arg, this.method = "return", this.next = "end") : "normal" === e.type && t && (this.next = t), h }, finish: function(e) { for (var t = this.tryEntries.length - 1; 0 <= t; --t) { var n = this.tryEntries[t]; if (n.finallyLoc === e) return this.complete(n.completion, n.afterLoc), x(n), h } }, catch: function(e) { for (var t = this.tryEntries.length - 1; 0 <= t; --t) { var n = this.tryEntries[t]; if (n.tryLoc === e) { var i, r = n.completion; return "throw" === r.type && (i = r.arg, x(n)), i } } throw new Error("illegal catch attempt") }, delegateYield: function(e, t, n) { return this.delegate = { iterator: k(e), resultName: t, nextLoc: n }, "next" === this.method && (this.arg = void 0), h } }, s } function u(i) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), !0 } catch (e) { return !1 } }(); return function() { var e, t, n = (0, c.default)(i); return t = r ? (e = (0, c.default)(this).constructor, Reflect.construct(n, arguments, e)) : n.apply(this, arguments), (0, l.default)(this, t) } } var d = function(e) { (0, a.default)(i, e); var t, n = u(i); function i() { return (0, o.default)(this, i), n.apply(this, arguments) } return (0, s.default)(i, [{ key: "onInit", value: (t = (0, r.default)($().mark(function e() { var t, n, i = arguments; return $().wrap(function(e) { for (; ; ) switch (e.prev = e.next) { case 0: if (elementorModules.frontend.handlers.Base.prototype.onInit.apply(this, i), t = this.getElementSettings(), this.getSlidesCount() <= 1) return e.abrupt("return"); e.next = 4; break; case 4: return n = elementorFrontend.utils.swiper, e.next = 7, new n(this.elements.$swiperContainer,this.getSwiperOptions()); case 7: this.swiper = e.sent, "yes" === t.pause_on_hover && this.togglePauseOnHover(!0), this.elements.$swiperContainer.data("swiper", this.swiper); case 10: case "end": return e.stop() } }, e, this) })), function() { return t.apply(this, arguments) } ) }, { key: "getDefaultSettings", value: function() { return { selectors: { swiperContainer: ".raven-main-swiper", swiperSlide: ".swiper-slide" }, slidesPerView: { widescreen: 3, desktop: 3, laptop: 3, tablet_extra: 3, tablet: 2, mobile_extra: 2, mobile: 1 } } } }, { key: "getDefaultElements", value: function() { var e = this.getSettings("selectors") , t = { $swiperContainer: this.$element.find(e.swiperContainer) }; return t.$slides = t.$swiperContainer.find(e.swiperSlide), t } }, { key: "getEffect", value: function() { return this.getElementSettings("effect") } }, { key: "getDeviceSlidesPerView", value: function(e) { var t = "slides_per_view" + ("desktop" === e ? "" : "_" + e); return this.getElementSettings(t).size ? Math.min(this.getSlidesCount(), +this.getElementSettings(t).size || this.getSettings("slidesPerView")[e]) : Math.min(this.getSlidesCount(), +this.getElementSettings(t) || this.getSettings("slidesPerView")[e]) } }, { key: "getSlidesPerView", value: function(e) { return "slide" === this.getEffect() ? this.getDeviceSlidesPerView(e) : 1 } }, { key: "getDeviceSlidesToScroll", value: function(e) { var t = "slides_to_scroll" + ("desktop" === e ? "" : "_" + e); return Math.min(this.getSlidesCount(), +this.getElementSettings(t) || 1) } }, { key: "getSlidesToScroll", value: function(e) { return "slide" === this.getEffect() || "coverflow" === this.getElementSettings("skin") ? this.getDeviceSlidesToScroll(e) : 1 } }, { key: "getSpaceBetween", value: function(e) { var t = "space_between"; return e && "desktop" !== e && (t += "_" + e), this.getElementSettings(t).size || 0 } }, { key: "getSwiperOptions", value: function() { var t, n, i = this, e = this.getElementSettings(), r = { grabCursor: !0, initialSlide: this.getInitialSlide(), slidesPerView: this.getSlidesPerView("desktop"), slidesPerGroup: this.getSlidesToScroll("desktop"), spaceBetween: this.getSpaceBetween(), loop: "yes" === e.loop, speed: e.speed, effect: this.getEffect(), preventClicksPropagation: !1, slideToClickedSlide: !0, handleElementorBreakpoints: !0, centeredSlides: "yes" === e.overflow_visible || "yes" === e.centered_slides }; return "yes" !== e.lazyload && !this.elements.$swiperContainer.find("img").hasClass("swiper-lazy") || (r.lazy = { loadPrevNext: !0, loadPrevNextAmount: 1 }), e.show_arrows && (r.navigation = { prevEl: ".elementor-swiper-button-prev", nextEl: ".elementor-swiper-button-next" }), e.pagination && (r.pagination = { el: ".swiper-pagination", type: e.pagination, clickable: !0 }), "cube" !== this.getEffect() && (t = {}, n = elementorFrontend.config.responsive.activeBreakpoints, Object.keys(n).forEach(function(e) { t[n[e].value] = { slidesPerView: i.getSlidesPerView(e), slidesPerGroup: i.getSlidesToScroll(e), spaceBetween: i.getSpaceBetween(e) } }), r.breakpoints = t), e.autoplay && (r.autoplay = { delay: e.autoplay_speed, disableOnInteraction: !!e.pause_on_interaction }), r } }, { key: "getDeviceBreakpointValue", value: function(e) { var t, n = this; return this.breakpointsDictionary || (t = elementorFrontend.config.responsive.activeBreakpoints, this.breakpointsDictionary = {}, Object.keys(t).forEach(function(e) { n.breakpointsDictionary[e] = t[e].value })), this.breakpointsDictionary[e] } }, { key: "updateSpaceBetween", value: function(e) { var t = e.match("space_between_(.*)") , n = t ? t[1] : "desktop" , i = this.getSpaceBetween(n); "desktop" !== n && (this.swiper.params.breakpoints[this.getDeviceBreakpointValue(n)].spaceBetween = i), this.swiper.params.spaceBetween = i, this.swiper.update() } }, { key: "getChangeableProperties", value: function() { return { autoplay: "autoplay", pause_on_hover: "pauseOnHover", pause_on_interaction: "disableOnInteraction", autoplay_speed: "delay", speed: "speed", width: "width" } } }, { key: "updateSwiperOption", value: function(e) { if (0 !== e.indexOf("width")) { var t = this.getElementSettings() , n = t[e] , i = this.getChangeableProperties()[e] , r = n; switch (e) { case "autoplay": r = !1, n && (r = { delay: t.autoplay_speed, disableOnInteraction: "yes" === t.pause_on_interaction }); break; case "autoplay_speed": i = "autoplay", r = { delay: n, disableOnInteraction: "yes" === t.pause_on_interaction }; break; case "pause_on_hover": this.togglePauseOnHover("yes" === n); break; case "pause_on_interaction": r = "yes" === n } "pause_on_hover" !== e && (this.swiper.params[i] = r), this.swiper.update() } else this.swiper.update() } }, { key: "onElementChange", value: function(e) { if (!(this.getSlidesCount() <= 1)) { if (0 === e.indexOf("width")) return this.swiper.update(), void (this.thumbsSwiper && this.thumbsSwiper.update()); 0 !== e.indexOf("space_between") ? this.getChangeableProperties().hasOwnProperty(e) && this.updateSwiperOption(e) : this.updateSpaceBetween(e) } } }, { key: "onEditSettingsChange", value: function(e) { this.getSlidesCount() <= 1 || "activeItemIndex" === e && this.swiper.slideToLoop(this.getEditSettings("activeItemIndex") - 1) } }, { key: "handlePaginationGap", value: function() { var r = this , o = elementorFrontend.config.responsive.activeBreakpoints , s = elementorFrontend.config.experimentalFeatures.e_swiper_latest ? ".elementor-element-" + this.getID() + " .raven-main-swiper.swiper" : ".elementor-element-" + this.getID() + " .raven-main-swiper" , e = this.getElementSettings("pagination_gap") ? this.getElementSettings("pagination_gap").size : 0 , t = this.elements.$swiperContainer.outerHeight() + e , n = parseInt(this.elements.$swiperContainer.css("padding-bottom"), 10) + e , a = " ", this.elements.$swiperContainer.append(a) } }]), i }(elementorModules.frontend.handlers.SwiperBase); n.default = d } , { "@babel/runtime/helpers/asyncToGenerator": 71, "@babel/runtime/helpers/classCallCheck": 72, "@babel/runtime/helpers/createClass": 73, "@babel/runtime/helpers/getPrototypeOf": 76, "@babel/runtime/helpers/inherits": 77, "@babel/runtime/helpers/interopRequireDefault": 78, "@babel/runtime/helpers/possibleConstructorReturn": 81, "@babel/runtime/helpers/typeof": 85 }], 29: [function(e, t, n) { "use strict"; var i = e("@babel/runtime/helpers/interopRequireDefault") , S = e("@babel/runtime/helpers/typeof"); Object.defineProperty(n, "__esModule", { value: !0 }), n.default = function(e) { new u({ $element: e }) } ; var r = i(e("@babel/runtime/helpers/asyncToGenerator")) , o = i(e("@babel/runtime/helpers/classCallCheck")) , s = i(e("@babel/runtime/helpers/createClass")) , d = i(e("@babel/runtime/helpers/get")) , a = i(e("@babel/runtime/helpers/inherits")) , l = i(e("@babel/runtime/helpers/possibleConstructorReturn")) , p = i(e("@babel/runtime/helpers/getPrototypeOf")); function $() { $ = function() { return s } ; var s = {} , e = Object.prototype , u = e.hasOwnProperty , d = Object.defineProperty || function(e, t, n) { e[t] = n.value } , t = "function" == typeof Symbol ? Symbol : {} , r = t.iterator || "@@iterator" , n = t.asyncIterator || "@@asyncIterator" , i = t.toStringTag || "@@toStringTag"; function o(e, t, n) { return Object.defineProperty(e, t, { value: n, enumerable: !0, configurable: !0, writable: !0 }), e[t] } try { o({}, "") } catch (e) { o = function(e, t, n) { return e[t] = n } } function a(e, t, n, i) { var o, s, a, l, r = t && t.prototype instanceof f ? t : f, c = Object.create(r.prototype), u = new C(i || []); return d(c, "_invoke", { value: (o = e, s = n, a = u, l = "suspendedStart", function(e, t) { if ("executing" === l) throw new Error("Generator is already running"); if ("completed" === l) { if ("throw" === e) throw t; return { value: void 0, done: !0 } } for (a.method = e, a.arg = t; ; ) { var n = a.delegate; if (n) { var i = function e(t, n) { var i = n.method , r = t.iterator[i]; if (void 0 === r) return n.delegate = null, "throw" === i && t.iterator.return && (n.method = "return", n.arg = void 0, e(t, n), "throw" === n.method) || "return" !== i && (n.method = "throw", n.arg = new TypeError("The iterator does not provide a '" + i + "' method")), h; var o = p(r, t.iterator, n.arg); if ("throw" === o.type) return n.method = "throw", n.arg = o.arg, n.delegate = null, h; var s = o.arg; return s ? s.done ? (n[t.resultName] = s.value, n.next = t.nextLoc, "return" !== n.method && (n.method = "next", n.arg = void 0), n.delegate = null, h) : s : (n.method = "throw", n.arg = new TypeError("iterator result is not an object"), n.delegate = null, h) }(n, a); if (i) { if (i === h) continue; return i } } if ("next" === a.method) a.sent = a._sent = a.arg; else if ("throw" === a.method) { if ("suspendedStart" === l) throw l = "completed", a.arg; a.dispatchException(a.arg) } else "return" === a.method && a.abrupt("return", a.arg); l = "executing"; var r = p(o, s, a); if ("normal" === r.type) { if (l = a.done ? "completed" : "suspendedYield", r.arg === h) continue; return { value: r.arg, done: a.done } } "throw" === r.type && (l = "completed", a.method = "throw", a.arg = r.arg) } } ) }), c } function p(e, t, n) { try { return { type: "normal", arg: e.call(t, n) } } catch (e) { return { type: "throw", arg: e } } } s.wrap = a; var h = {}; function f() {} function l() {} function c() {} var m = {}; o(m, r, function() { return this }); var g = Object.getPrototypeOf , v = g && g(g(k([]))); v && v !== e && u.call(v, r) && (m = v); var y = c.prototype = f.prototype = Object.create(m); function b(e) { ["next", "throw", "return"].forEach(function(t) { o(e, t, function(e) { return this._invoke(t, e) }) }) } function w(l, c) { var t; d(this, "_invoke", { value: function(n, i) { function e() { return new c(function(e, t) { !function t(e, n, i, r) { var o = p(l[e], l, n); if ("throw" !== o.type) { var s = o.arg , a = s.value; return a && "object" == S(a) && u.call(a, "__await") ? c.resolve(a.__await).then(function(e) { t("next", e, i, r) }, function(e) { t("throw", e, i, r) }) : c.resolve(a).then(function(e) { s.value = e, i(s) }, function(e) { return t("throw", e, i, r) }) } r(o.arg) }(n, i, e, t) } ) } return t = t ? t.then(e, e) : e() } }) } function _(e) { var t = { tryLoc: e[0] }; 1 in e && (t.catchLoc = e[1]), 2 in e && (t.finallyLoc = e[2], t.afterLoc = e[3]), this.tryEntries.push(t) } function x(e) { var t = e.completion || {}; t.type = "normal", delete t.arg, e.completion = t } function C(e) { this.tryEntries = [{ tryLoc: "root" }], e.forEach(_, this), this.reset(!0) } function k(t) { if (t || "" === t) { var e = t[r]; if (e) return e.call(t); if ("function" == typeof t.next) return t; if (!isNaN(t.length)) { var n = -1 , i = function e() { for (; ++n < t.length; ) if (u.call(t, n)) return e.value = t[n], e.done = !1, e; return e.value = void 0, e.done = !0, e }; return i.next = i } } throw new TypeError(S(t) + " is not iterable") } return d(y, "constructor", { value: l.prototype = c, configurable: !0 }), d(c, "constructor", { value: l, configurable: !0 }), l.displayName = o(c, i, "GeneratorFunction"), s.isGeneratorFunction = function(e) { var t = "function" == typeof e && e.constructor; return !!t && (t === l || "GeneratorFunction" === (t.displayName || t.name)) } , s.mark = function(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, c) : (e.__proto__ = c, o(e, i, "GeneratorFunction")), e.prototype = Object.create(y), e } , s.awrap = function(e) { return { __await: e } } , b(w.prototype), o(w.prototype, n, function() { return this }), s.AsyncIterator = w, s.async = function(e, t, n, i, r) { void 0 === r && (r = Promise); var o = new w(a(e, t, n, i),r); return s.isGeneratorFunction(t) ? o : o.next().then(function(e) { return e.done ? e.value : o.next() }) } , b(y), o(y, i, "Generator"), o(y, r, function() { return this }), o(y, "toString", function() { return "[object Generator]" }), s.keys = function(e) { var n = Object(e) , i = []; for (var t in n) i.push(t); return i.reverse(), function e() { for (; i.length; ) { var t = i.pop(); if (t in n) return e.value = t, e.done = !1, e } return e.done = !0, e } } , s.values = k, C.prototype = { constructor: C, reset: function(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = void 0, this.done = !1, this.delegate = null, this.method = "next", this.arg = void 0, this.tryEntries.forEach(x), !e) for (var t in this) "t" === t.charAt(0) && u.call(this, t) && !isNaN(+t.slice(1)) && (this[t] = void 0) }, stop: function() { this.done = !0; var e = this.tryEntries[0].completion; if ("throw" === e.type) throw e.arg; return this.rval }, dispatchException: function(n) { if (this.done) throw n; var i = this; function e(e, t) { return o.type = "throw", o.arg = n, i.next = e, t && (i.method = "next", i.arg = void 0), !!t } for (var t = this.tryEntries.length - 1; 0 <= t; --t) { var r = this.tryEntries[t] , o = r.completion; if ("root" === r.tryLoc) return e("end"); if (r.tryLoc <= this.prev) { var s = u.call(r, "catchLoc") , a = u.call(r, "finallyLoc"); if (s && a) { if (this.prev < r.catchLoc) return e(r.catchLoc, !0); if (this.prev < r.finallyLoc) return e(r.finallyLoc) } else if (s) { if (this.prev < r.catchLoc) return e(r.catchLoc, !0) } else { if (!a) throw new Error("try statement without catch or finally"); if (this.prev < r.finallyLoc) return e(r.finallyLoc) } } } }, abrupt: function(e, t) { for (var n = this.tryEntries.length - 1; 0 <= n; --n) { var i = this.tryEntries[n]; if (i.tryLoc <= this.prev && u.call(i, "finallyLoc") && this.prev < i.finallyLoc) { var r = i; break } } r && ("break" === e || "continue" === e) && r.tryLoc <= t && t <= r.finallyLoc && (r = null); var o = r ? r.completion : {}; return o.type = e, o.arg = t, r ? (this.method = "next", this.next = r.finallyLoc, h) : this.complete(o) }, complete: function(e, t) { if ("throw" === e.type) throw e.arg; return "break" === e.type || "continue" === e.type ? this.next = e.arg : "return" === e.type ? (this.rval = this.arg = e.arg, this.method = "return", this.next = "end") : "normal" === e.type && t && (this.next = t), h }, finish: function(e) { for (var t = this.tryEntries.length - 1; 0 <= t; --t) { var n = this.tryEntries[t]; if (n.finallyLoc === e) return this.complete(n.completion, n.afterLoc), x(n), h } }, catch: function(e) { for (var t = this.tryEntries.length - 1; 0 <= t; --t) { var n = this.tryEntries[t]; if (n.tryLoc === e) { var i, r = n.completion; return "throw" === r.type && (i = r.arg, x(n)), i } } throw new Error("illegal catch attempt") }, delegateYield: function(e, t, n) { return this.delegate = { iterator: k(e), resultName: t, nextLoc: n }, "next" === this.method && (this.arg = void 0), h } }, s } function c(i) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), !0 } catch (e) { return !1 } }(); return function() { var e, t, n = (0, p.default)(i); return t = r ? (e = (0, p.default)(this).constructor, Reflect.construct(n, arguments, e)) : n.apply(this, arguments), (0, l.default)(this, t) } } var u = function(e) { (0, a.default)(u, e); var t, n = c(u); function u() { return (0, o.default)(this, u), n.apply(this, arguments) } return (0, s.default)(u, [{ key: "onInit", value: (t = (0, r.default)($().mark(function e() { var t, n, i, r, o, s, a, l, c = this; return $().wrap(function(e) { for (; ; ) switch (e.prev = e.next) { case 0: return e.next = 2, (0, d.default)((0, p.default)(u.prototype), "onInit", this).call(this); case 2: if (t = this.getSlidesCount(), this.handlePaginationGap(), !this.isSlideshow() || t <= 1) return e.abrupt("return"); e.next = 6; break; case 6: return n = this.getElementSettings(), i = "yes" === n.loop, r = {}, o = elementorFrontend.config.responsive.activeBreakpoints, s = this.getDeviceSlidesPerView("desktop"), Object.keys(o).forEach(function(e) { r[o[e].value] = { slidesPerView: c.getDeviceSlidesPerView(e), spaceBetween: c.getSpaceBetween(e) } }), a = { slidesPerView: s, initialSlide: this.getInitialSlide(), centeredSlides: n.centered_slides, slideToClickedSlide: !0, spaceBetween: this.getSpaceBetween(), loopedSlides: t, loop: i, breakpoints: r, handleElementorBreakpoints: !0 }, "yes" === n.lazyload && (a.lazy = { loadPrevNext: !0, loadPrevNextAmount: 1 }), l = elementorFrontend.utils.swiper, e.next = 13, new l(this.elements.$thumbsSwiper,a); case 13: this.swiper.controller.control = this.thumbsSwiper = e.sent, this.elements.$thumbsSwiper.data("swiper", this.thumbsSwiper), this.thumbsSwiper.controller.control = this.swiper; case 16: case "end": return e.stop() } }, e, this) })), function() { return t.apply(this, arguments) } ) }, { key: "isSlideshow", value: function() { return "slideshow" === this.getElementSettings("skin") } }, { key: "getDefaultSettings", value: function() { for (var e, t = arguments.length, n = new Array(t), i = 0; i < t; i++) n[i] = arguments[i]; var r = (e = (0, d.default)((0, p.default)(u.prototype), "getDefaultSettings", this)).call.apply(e, [this].concat(n)); return this.isSlideshow() && (r.selectors.thumbsSwiper = ".raven-thumbnails-swiper", r.slidesPerView = { widescreen: 5, desktop: 5, laptop: 5, tablet_extra: 5, tablet: 4, mobile_extra: 4, mobile: 3 }), r } }, { key: "getSlidesPerViewSettingNames", value: function() { var e, t = this; return this.slideshowElementSettings || (this.slideshowElementSettings = ["slides_per_view"], e = elementorFrontend.config.responsive.activeBreakpoints, Object.keys(e).forEach(function(e) { t.slideshowElementSettings.push("slides_per_view_" + e) })), this.slideshowElementSettings } }, { key: "getElementSettings", value: function(e) { return -1 !== this.getSlidesPerViewSettingNames().indexOf(e) && this.isSlideshow() && (e = "slideshow_" + e), (0, d.default)((0, p.default)(u.prototype), "getElementSettings", this).call(this, e) } }, { key: "getDefaultElements", value: function() { for (var e, t = arguments.length, n = new Array(t), i = 0; i < t; i++) n[i] = arguments[i]; var r = this.getSettings("selectors") , o = (e = (0, d.default)((0, p.default)(u.prototype), "getDefaultElements", this)).call.apply(e, [this].concat(n)); return this.isSlideshow() && (o.$thumbsSwiper = this.$element.find(r.thumbsSwiper)), o } }, { key: "getEffect", value: function() { return "coverflow" === this.getElementSettings("skin") ? "coverflow" : (0, d.default)((0, p.default)(u.prototype), "getEffect", this).call(this) } }, { key: "getSlidesPerView", value: function(e) { return this.isSlideshow() ? 1 : "coverflow" === this.getElementSettings("skin") ? this.getDeviceSlidesPerView(e) : "carousel" === this.getElementSettings("skin") && "slide" === this.getElementSettings("effect") && "yes" === this.getElementSettings("overflow_visible") ? this.getDeviceSlidesPerView(e) + .5 : (0, d.default)((0, p.default)(u.prototype), "getSlidesPerView", this).call(this, e) } }, { key: "getSwiperOptions", value: function() { var e = (0, d.default)((0, p.default)(u.prototype), "getSwiperOptions", this).call(this); return this.isSlideshow() && (e.loopedSlides = this.getSlidesCount(), delete e.pagination, delete e.breakpoints), e } }]), u }(i(e("../carousel/base")).default) } , { "../carousel/base": 28, "@babel/runtime/helpers/asyncToGenerator": 71, "@babel/runtime/helpers/classCallCheck": 72, "@babel/runtime/helpers/createClass": 73, "@babel/runtime/helpers/get": 75, "@babel/runtime/helpers/getPrototypeOf": 76, "@babel/runtime/helpers/inherits": 77, "@babel/runtime/helpers/interopRequireDefault": 78, "@babel/runtime/helpers/possibleConstructorReturn": 81, "@babel/runtime/helpers/typeof": 85 }], 30: [function(e, t, n) { "use strict"; var i = e("@babel/runtime/helpers/interopRequireDefault") , S = e("@babel/runtime/helpers/typeof"); Object.defineProperty(n, "__esModule", { value: !0 }), n.default = function(e) { new p({ $element: e }) } ; var r = i(e("@babel/runtime/helpers/asyncToGenerator")) , o = i(e("@babel/runtime/helpers/classCallCheck")) , s = i(e("@babel/runtime/helpers/createClass")) , a = i(e("@babel/runtime/helpers/get")) , l = i(e("@babel/runtime/helpers/inherits")) , c = i(e("@babel/runtime/helpers/possibleConstructorReturn")) , u = i(e("@babel/runtime/helpers/getPrototypeOf")); function $() { $ = function() { return s } ; var s = {} , e = Object.prototype , u = e.hasOwnProperty , d = Object.defineProperty || function(e, t, n) { e[t] = n.value } , t = "function" == typeof Symbol ? Symbol : {} , r = t.iterator || "@@iterator" , n = t.asyncIterator || "@@asyncIterator" , i = t.toStringTag || "@@toStringTag"; function o(e, t, n) { return Object.defineProperty(e, t, { value: n, enumerable: !0, configurable: !0, writable: !0 }), e[t] } try { o({}, "") } catch (e) { o = function(e, t, n) { return e[t] = n } } function a(e, t, n, i) { var o, s, a, l, r = t && t.prototype instanceof f ? t : f, c = Object.create(r.prototype), u = new C(i || []); return d(c, "_invoke", { value: (o = e, s = n, a = u, l = "suspendedStart", function(e, t) { if ("executing" === l) throw new Error("Generator is already running"); if ("completed" === l) { if ("throw" === e) throw t; return { value: void 0, done: !0 } } for (a.method = e, a.arg = t; ; ) { var n = a.delegate; if (n) { var i = function e(t, n) { var i = n.method , r = t.iterator[i]; if (void 0 === r) return n.delegate = null, "throw" === i && t.iterator.return && (n.method = "return", n.arg = void 0, e(t, n), "throw" === n.method) || "return" !== i && (n.method = "throw", n.arg = new TypeError("The iterator does not provide a '" + i + "' method")), h; var o = p(r, t.iterator, n.arg); if ("throw" === o.type) return n.method = "throw", n.arg = o.arg, n.delegate = null, h; var s = o.arg; return s ? s.done ? (n[t.resultName] = s.value, n.next = t.nextLoc, "return" !== n.method && (n.method = "next", n.arg = void 0), n.delegate = null, h) : s : (n.method = "throw", n.arg = new TypeError("iterator result is not an object"), n.delegate = null, h) }(n, a); if (i) { if (i === h) continue; return i } } if ("next" === a.method) a.sent = a._sent = a.arg; else if ("throw" === a.method) { if ("suspendedStart" === l) throw l = "completed", a.arg; a.dispatchException(a.arg) } else "return" === a.method && a.abrupt("return", a.arg); l = "executing"; var r = p(o, s, a); if ("normal" === r.type) { if (l = a.done ? "completed" : "suspendedYield", r.arg === h) continue; return { value: r.arg, done: a.done } } "throw" === r.type && (l = "completed", a.method = "throw", a.arg = r.arg) } } ) }), c } function p(e, t, n) { try { return { type: "normal", arg: e.call(t, n) } } catch (e) { return { type: "throw", arg: e } } } s.wrap = a; var h = {}; function f() {} function l() {} function c() {} var m = {}; o(m, r, function() { return this }); var g = Object.getPrototypeOf , v = g && g(g(k([]))); v && v !== e && u.call(v, r) && (m = v); var y = c.prototype = f.prototype = Object.create(m); function b(e) { ["next", "throw", "return"].forEach(function(t) { o(e, t, function(e) { return this._invoke(t, e) }) }) } function w(l, c) { var t; d(this, "_invoke", { value: function(n, i) { function e() { return new c(function(e, t) { !function t(e, n, i, r) { var o = p(l[e], l, n); if ("throw" !== o.type) { var s = o.arg , a = s.value; return a && "object" == S(a) && u.call(a, "__await") ? c.resolve(a.__await).then(function(e) { t("next", e, i, r) }, function(e) { t("throw", e, i, r) }) : c.resolve(a).then(function(e) { s.value = e, i(s) }, function(e) { return t("throw", e, i, r) }) } r(o.arg) }(n, i, e, t) } ) } return t = t ? t.then(e, e) : e() } }) } function _(e) { var t = { tryLoc: e[0] }; 1 in e && (t.catchLoc = e[1]), 2 in e && (t.finallyLoc = e[2], t.afterLoc = e[3]), this.tryEntries.push(t) } function x(e) { var t = e.completion || {}; t.type = "normal", delete t.arg, e.completion = t } function C(e) { this.tryEntries = [{ tryLoc: "root" }], e.forEach(_, this), this.reset(!0) } function k(t) { if (t || "" === t) { var e = t[r]; if (e) return e.call(t); if ("function" == typeof t.next) return t; if (!isNaN(t.length)) { var n = -1 , i = function e() { for (; ++n < t.length; ) if (u.call(t, n)) return e.value = t[n], e.done = !1, e; return e.value = void 0, e.done = !0, e }; return i.next = i } } throw new TypeError(S(t) + " is not iterable") } return d(y, "constructor", { value: l.prototype = c, configurable: !0 }), d(c, "constructor", { value: l, configurable: !0 }), l.displayName = o(c, i, "GeneratorFunction"), s.isGeneratorFunction = function(e) { var t = "function" == typeof e && e.constructor; return !!t && (t === l || "GeneratorFunction" === (t.displayName || t.name)) } , s.mark = function(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, c) : (e.__proto__ = c, o(e, i, "GeneratorFunction")), e.prototype = Object.create(y), e } , s.awrap = function(e) { return { __await: e } } , b(w.prototype), o(w.prototype, n, function() { return this }), s.AsyncIterator = w, s.async = function(e, t, n, i, r) { void 0 === r && (r = Promise); var o = new w(a(e, t, n, i),r); return s.isGeneratorFunction(t) ? o : o.next().then(function(e) { return e.done ? e.value : o.next() }) } , b(y), o(y, i, "Generator"), o(y, r, function() { return this }), o(y, "toString", function() { return "[object Generator]" }), s.keys = function(e) { var n = Object(e) , i = []; for (var t in n) i.push(t); return i.reverse(), function e() { for (; i.length; ) { var t = i.pop(); if (t in n) return e.value = t, e.done = !1, e } return e.done = !0, e } } , s.values = k, C.prototype = { constructor: C, reset: function(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = void 0, this.done = !1, this.delegate = null, this.method = "next", this.arg = void 0, this.tryEntries.forEach(x), !e) for (var t in this) "t" === t.charAt(0) && u.call(this, t) && !isNaN(+t.slice(1)) && (this[t] = void 0) }, stop: function() { this.done = !0; var e = this.tryEntries[0].completion; if ("throw" === e.type) throw e.arg; return this.rval }, dispatchException: function(n) { if (this.done) throw n; var i = this; function e(e, t) { return o.type = "throw", o.arg = n, i.next = e, t && (i.method = "next", i.arg = void 0), !!t } for (var t = this.tryEntries.length - 1; 0 <= t; --t) { var r = this.tryEntries[t] , o = r.completion; if ("root" === r.tryLoc) return e("end"); if (r.tryLoc <= this.prev) { var s = u.call(r, "catchLoc") , a = u.call(r, "finallyLoc"); if (s && a) { if (this.prev < r.catchLoc) return e(r.catchLoc, !0); if (this.prev < r.finallyLoc) return e(r.finallyLoc) } else if (s) { if (this.prev < r.catchLoc) return e(r.catchLoc, !0) } else { if (!a) throw new Error("try statement without catch or finally"); if (this.prev < r.finallyLoc) return e(r.finallyLoc) } } } }, abrupt: function(e, t) { for (var n = this.tryEntries.length - 1; 0 <= n; --n) { var i = this.tryEntries[n]; if (i.tryLoc <= this.prev && u.call(i, "finallyLoc") && this.prev < i.finallyLoc) { var r = i; break } } r && ("break" === e || "continue" === e) && r.tryLoc <= t && t <= r.finallyLoc && (r = null); var o = r ? r.completion : {}; return o.type = e, o.arg = t, r ? (this.method = "next", this.next = r.finallyLoc, h) : this.complete(o) }, complete: function(e, t) { if ("throw" === e.type) throw e.arg; return "break" === e.type || "continue" === e.type ? this.next = e.arg : "return" === e.type ? (this.rval = this.arg = e.arg, this.method = "return", this.next = "end") : "normal" === e.type && t && (this.next = t), h }, finish: function(e) { for (var t = this.tryEntries.length - 1; 0 <= t; --t) { var n = this.tryEntries[t]; if (n.finallyLoc === e) return this.complete(n.completion, n.afterLoc), x(n), h } }, catch: function(e) { for (var t = this.tryEntries.length - 1; 0 <= t; --t) { var n = this.tryEntries[t]; if (n.tryLoc === e) { var i, r = n.completion; return "throw" === r.type && (i = r.arg, x(n)), i } } throw new Error("illegal catch attempt") }, delegateYield: function(e, t, n) { return this.delegate = { iterator: k(e), resultName: t, nextLoc: n }, "next" === this.method && (this.arg = void 0), h } }, s } function d(i) { var r = function() { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), !0 } catch (e) { return !1 } }(); return function() { var e, t, n = (0, u.default)(i); return t = r ? (e = (0, u.default)(this).constructor, Reflect.construct(n, arguments, e)) : n.apply(this, arguments), (0, c.default)(this, t) } } var p = function(e) { (0, l.default)(i, e); var t, n = d(i); function i() { return (0, o.default)(this, i), n.apply(this, arguments) } return (0, s.default)(i, [{ key: "onInit", value: (t = (0, r.default)($().mark(function e() { return $().wrap(function(e) { for (; ; ) switch (e.prev = e.next) { case 0: return e.next = 2, (0, a.default)((0, u.default)(i.prototype), "onInit", this).call(this); case 2: this.handlePaginationGap(); case 3: case "end": return e.stop() } }, e, this) })), function() { return t.apply(this, arguments) } ) }, { key: "getDefaultSettings", value: function() { var t = (0, a.default)((0, u.default)(i.prototype), "getDefaultSettings", this).call(this); return t.slidesPerView = { desktop: 1 }, Object.keys(elementorFrontend.config.responsive.activeBreakpoints).forEach(function(e) { t.slidesPerView[e] = 1 }), t.loop && (t.loopedSlides = this.getSlidesCount()), t } }, { key: "getEffect", value: function() { return "slide" } }]), i }(i(e("../carousel/base")).default) } , { "../carousel/base": 28, "@babel/runtime/helpers/asyncToGenerator": 71, "@babel/runtime/helpers/classCallCheck": 72, "@babel/runtime/helpers/createClass": 73, "@babel/runtime/helpers/get": 75, "@babel/runtime/helpers/getPrototypeOf": 76, "@babel/runtime/helpers/inherits": 77, "@babel/runtime/helpers/interopRequireDefault": 78, "@babel/runtime/helpers/possibleConstructorReturn": 81, "@babel/runtime/helpers/typeof": 85 }], 31: [function(e, t, n) { "use strict"; var i = e("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(n, "__esModule", { value: !0 }), n.default = function(e) { new o({ $element: e }) } ; var r = i(e("../utils/module")); $ = jQuery; var o = r.default.extend({ getDefaultSettings: function() { return { selectors: { shippingMethods: "ul.woocommerce-shipping-methods li", productName: ".cart_item .product-name", productQuantity: ".cart_item .product-quantity" } } }, bindEvents: function() { this.fixVariationStyle(), this.fixDividerStyle(), this.fixShippingAjaxStyle(), this.handleShippingMethodList(), this.handleQuantityInput(), this.fixQuantityStyle(), this.addClassToWooWrapper(), jQuery(document.body).on("updated_wc_div", this.handleShippingMethodList), jQuery(document.body).on("updated_cart_totals", this.handleShippingMethodList), jQuery(document.body).on("updated_cart_totals", this.handleQuantityInput) }, onElementChange: function(e) { "sections_titles_typography_font_size" === e && this.fixVariationStyle(), "cart_divider_weight" !== e && "cart_divider_gap" !== e || this.fixDividerStyle(), "cart_quantity_width" === e && this.fixQuantityStyle() }, addClassToWooWrapper: function() { document.body.classList.contains("woocommerce-cart") && document.body.classList.add("raven-cart-wiget-cart-page") }, fixVariationStyle: function() { var e = this.getSettings("selectors") , t = this.$element.find(e.productName).find("a").css("font-size") , n = this.$element.find(e.productName).find(".product-variations"); t && (n.find("div").css("font-size", "calc(" + t + " * 0.7)"), n.find("span").css("font-size", "calc(" + t + " * 0.7)")) }, fixDividerStyle: function() { var e = parseFloat(this.$element.find(".cart_item").find("td").css("padding-top")) , t = this.getInstanceValue("cart_divider_weight"); t.size && (this.$element.find(".woocommerce-cart-form__contents").find("tbody").find(".cart_item:not(:first-child)").find("td").css("padding-top", t.size + e), this.$element.find(".woocommerce-cart-form__contents").find("tbody").find(".actions").css("padding-top", t.size + e)) }, fixQuantityStyle: function() { var e, t, n, i, r, o, s = this.getSettings("selectors"); this.getInstanceValue("cart_quantity_width") && ("px" !== (null === (e = this.getInstanceValue("cart_quantity_width")) || void 0 === e ? void 0 : e.unit) ? (t = parseFloat(this.$element.find(s.productQuantity).css("width")), n = this.getInstanceValue("cart_quantity_width").unit, i = this.getInstanceValue("cart_quantity_width").size, r = 0, "%" === n ? r = i / 100 * t : "em" === n && (r = i * t), 0 !== r && ("plus_minus" === this.getInstanceValue("cart_quantity_view") && (r -= 2 * parseFloat(this.$element.find(s.productQuantity).find(".input-group-prepend").css("width")), this.$element.find(s.productQuantity).find("input").css("flex", "inherit")), this.$element.find(s.productQuantity).find("input").css("width", r + "px"))) : this.$element.find(s.productQuantity).find("input").css("width", (null === (o = this.getInstanceValue("cart_quantity_width")) || void 0 === o ? void 0 : o.size) + "px")) }, fixShippingAjaxStyle: function() { var i = this; $(document).ajaxComplete(function(e, t, n) { -1 !== n.url.indexOf("wc-ajax=update_shipping_method") && (i.getInstanceValue("cart_items_continue_shopping") || $(".elementor-widget-raven-cart.elementor-element-" + i.getID() + " .jupiterx-continue-shopping").hide(), $(".elementor-widget-raven-cart.elementor-element-" + i.getID() + " .checkout-button").text(i.getInstanceValue("checkout_button_text")), $(".elementor-widget-raven-cart.elementor-element-" + i.getID() + " .cart_totals h2").text(i.getInstanceValue("totals_section_title"))) }) }, handleShippingMethodList: function() { var e = this.getSettings("selectors"); this.$element.find(e.shippingMethods).length < 1 || (this.$element.find(e.shippingMethods).each(function(e, t) { $(t).find(".raven-cart-shipping-method-radio").length < 1 && $(t).find("input").after('') }), this.handleRadioSpan()) }, handleQuantityInput: function() { "plus_minus" === this.getInstanceValue("cart_quantity_view") && this.$element.find(".cart_item").each(function(e, t) { 0 === $(t).find(".input-group-prepend").length && ($(t).find(".input-text.qty").hide(), $(t).find(".input-text.qty").after('
'), $(t).find(".custom-qty-input").find(".input-text.qty").val($(t).find(".input-text.qty").val()), $(t).on("paste change", ".custom-qty-input .qty", function() { $(t).find(".input-text.qty").val($(t).find(".custom-qty-input").find(".input-text.qty").val()) }), $(t).on("click", ".btn-increment", function() { $(t).find(".input-text.qty").val(function(e, t) { return parseInt(t, 10) + 1 }).trigger("change") }), $(t).on("click", ".btn-decrement", function() { $(t).find(".input-text.qty").val(function(e, t) { return 1 < parseInt(t, 10) ? parseInt(t, 10) - 1 : parseInt(t, 10) }).trigger("change") })) }) }, handleRadioSpan: function() { var e = document.getElementsByClassName("raven-cart-shipping-method-radio"); Object.values(e).forEach(function(e, t) { e.addEventListener("click", function(e) { e.currentTarget.previousElementSibling.click() }) }) } }) } , { "../utils/module": 6, "@babel/runtime/helpers/interopRequireDefault": 78 }], 32: [function(e, t, n) { "use strict"; var i = e("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(n, "__esModule", { value: !0 }), n.default = function(e) { new s({ $element: e }) } ; var r = i(e("../utils/module")) , o = i(e("../utils/masonry")) , s = r.default.extend({ Masonry: null, onInit: function() { elementorModules.frontend.handlers.Base.prototype.onInit.apply(this, arguments), "masonry" === this.getInstanceValue("layout") && this.createMasonry() }, createMasonry: function() { this.Masonry = new o.default({ $element: this.$element }), this.Masonry.run() } }) } , { "../utils/masonry": 5, "../utils/module": 6, "@babel/runtime/helpers/interopRequireDefault": 78 }], 33: [function(e, t, n) { "use strict"; var i = e("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(n, "__esModule", { value: !0 }), n.default = function(e) { new s({ $element: e }) } ; var r = i(e("../utils/module")) , o = jQuery , s = r.default.extend({ onInit: function() { Prism.highlightAllUnder(this.$element[0], !1), this.changeActiveTabEvent() }, onElementChange: function(e) { var t, n = this; "code" !== e && "height" !== e && ("src" === e && (t = this.getElementSettings("src"), this.addRelatedJs(t)), setTimeout(function() { Prism.highlightAllUnder(n.$element[0], !1) }, 1500)) }, addRelatedJs: function(e) { var t = 'div[data-id="' + this.getID() + '"]' , n = o(t); n.empty(), "cpp" !== e && "objectivec" !== e || n.append('