PageSourceSearch

https://parqueinnovacionba.com/wp-content/plugins/premium-addons-p…/frontend/js/premium-parallax.js?ver=2.9.30

js parqueinnovacionba.com collected 2026-10-02 11:38:31 UTC 57,036 bytes, 1,120 lines download raw bytes

1(function ($) {
2
3    ! function (o) {
4        var n = {};
5
6        function i(e) {
7            if (n[e]) return n[e].exports;
8            var t = n[e] = {
9                i: e,
10                l: !1,
11                exports: {}
12            };
13            return o[e].call(t.exports, t, t.exports, i), t.l = !0, t.exports
14        }
15        i.m = o, i.c = n, i.d = function (e, t, o) {
16            i.o(e, t) || Object.defineProperty(e, t, {
17                enumerable: !0,
18                get: o
19            })
20        }, i.r = function (e) {
21            "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, {
22                value: "Module"
23            }), Object.defineProperty(e, "__esModule", {
24                value: !0
25            })
26        }, i.t = function (t, e) {
27            if (1 & e && (t = i(t)), 8 & e) return t;
28            if (4 & e && "object" == typeof t && t && t.__esModule) return t;
29            var o = Object.create(null);
30            if (i.r(o), Object.defineProperty(o, "default", {
31                enumerable: !0,
32                value: t
33            }), 2 & e && "string" != typeof t)
34                for (var n in t) i.d(o, n, function (e) {
35                    return t[e]
36                }.bind(null, n));
37            return o
38        }, i.n = function (e) {
39            var t = e && e.__esModule ? function () {
40                return e.default
41            } : function () {
42                return e
43            };
44            return i.d(t, "a", t), t
45        }, i.o = function (e, t) {
46            return Object.prototype.hasOwnProperty.call(e, t)
47        }
47, i.p = "", i(i.s = 11)
48    }([, , function (e, t, o) {
49        "use strict";
50        e.exports = function (e) {
51            "complete" === document.readyState || "interactive" === document.readyState ? e.call() : document.attachEvent ? document.attachEvent("onreadystatechange", function () {
52                "interactive" === document.readyState && e.call()
53            }) : document.addEventListener && document.addEventListener("DOMContentLoaded", e)
54        }
55    }, , function (o, e, t) {
56        "use strict";
57        (function (e) {
58            var t;
59            t = "undefined" != typeof window ? window : void 0 !== e ? e : "undefined" != typeof self ? self : {}, o.exports = t
60        }).call(this, t(5))
61    }, function (e, t, o) {
62        "use strict";
63        var n, i = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
64            return typeof e
65        } : function (e) {
66            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
67        };
68        n = function () {
69            return this
70        }();
71        try {
72            n = n || Function("return this")() || (0, eval)("this")
73        } catch (e) {
74            "object" === ("undefined" == typeof window ? "undefined" : i(window)) && (n = window)
75        }
76        e.exports = n
77    }, , , , , , function (e, t, o) {
78        e.exports = o(12)
79    }, function (e, t, o) {
80        "use strict";
81        var n = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
82            return typeof e
83        } : function (e) {
84            return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
85        },
86            i = l(o(2)),
87            a = o(4),
88            r = l(o(13));
89
90        function l(e) {
91            return e && e.__esModule ? e : {
92                default: e
93            }
94        }
95        var s = a.window.jarallax;
96        if (a.window.jarallax = r.default, a.window.jarallax.noConflict = function () {
97            return a.window.jarallax = s, this
98        }, void 0 !== a.jQuery) {
99            var c = function () {
100                var e = arguments || [];
101                Array.prototype.unshift.call(e, this);
102                var t = r.default.apply(a.window, e);
103                return "object" !== (void 0 === t ? "undefined" : n(t)) ? t : this
104            };
105            c.constructor = r.default.constructor;
106            var u = a.jQuery.fn.jarallax;
107            a.jQuery.fn.jarallax = c, a.jQuery.fn.jarallax.noConflict = function () {
108                return a.jQuery.fn.jarallax = u, this
109            }
110        } (0, i.default)(function () {
111            (0, r.default)(document.querySelectorAll("[data-jarallax]"))
112        })
113    }, function (e, j, S) {
114        "use strict";
115        (function (e) {
116            Object.defineProperty(j, "__esModule", {
117                value: !0
118            });
119            var d = function (e, t) {
120                if (Array.isArray(e)) return e;
121                if (Symbol.iterator in Object(e)) return function (e, t) {
122                    var o = [],
123                        n = !0,
124                        i = !1,
125                        a = void 0;
126                    try {
127                        for (var r, l = e[Symbol.iterator](); !(n = (r = l.next()).done) && (o.push(r.value), !t || o.length !== t); n = !0);
128                    } catch (e) {
129                        i = !0, a = e
130                    } finally {
131                        try {
132                            !n && l.return && l.return()
133                        } finally {
134                            if (i) throw a
135                        }
136                    }
137                    return o
138                }(e, t);
139                throw new TypeError("Invalid attempt to destructure non-iterable instance")
140            },
141                t = function () {
142                    function n(e, t) {
143                        for (var o = 0; o < t.length; o++) {
144                            var n = t[o];
145                            n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, n.key, n)
146                        }
147                    }
148                    return function (e, t, o) {
149                        return t && n(e.prototype, t), o && n(e, o), e
150                    }
151                }(),
152                p = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) {
153                    return typeof e
154                } : function (e) {
155                    return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e
156                },
157                o = a(S(2)),
158                n = a(S(14)),
159                i = S(4);
160
161            function a(e) {
162                return e && e.__esModule ? e : {
163                    default: e
164                }
165            }
166            var s = -1 < navigator.userAgent.indexOf("MSIE ") || -1 < navigator.userAgent.indexOf("Trident/") || -1 < navigator.userAgent.indexOf("Edge/"),
167                r = function () {
168                    for (var e = "transform WebkitTransform MozTransform".split(" "), t = document.createElement("div"), o = 0; o < e.length; o++)
169                        if (t && void 0 !== t.style[e[o]]) return e[o];
170                    return !1
171                }(),
172                b = void 0,
173                v = void 0,
174                l = void 0,
175                c = !1,
176                u = !1;
177
178            function m(e) {
179                b = i.window.innerWidth || document.documentElement.clientWidth, v = i.window.innerHeight || document.documentElement.clientHeight, "object" !== (void 0 === e ? "undefined" : p(e)) || "load" !== e.type && "dom-loaded" !== e.type || (c = !0)
180            }
181            m(), i.window.addEventListener("resize", m), i.window.addEventListener("orientationchange", m), i.window.addEventListener("load", m), (0, o.default)(function () {
182                m({
183                    type: "dom-loaded"
184                })
185            });
186            var f = [],
187                y = !1;
188
189            function g() {
190                if (f.length) {
191                    l = void 0 !== i.window.pageYOffset ? i.window.pageYOffset : (document.documentElement || document.body.parentNode || document.body).scrollTop;
192                    var t = c || !y || y.width !== b || y.height !== v,
193                        o = u || t || !y || y.y !== l;
194                    u = c = !1, (t || o) && (f.forEach(function (e) {
195                        t && e.onResize(), o && e.onScroll()
196                    }), y = {
197                        width: b,
198                        height: v,
199                        y: l
200                    }), (0, n.default)(g)
201                }
202            }
203            var h = !!e.ResizeObserver && new e.ResizeObserver(function (e) {
204                e && e.length && (0, n.default)(function () {
205                    e.forEach(function (e) {
206                        e.target && e.target.jarallax && (c || e.target.jarallax.onResize(), u = !0)
207                    })
208                })
209            }),
210                x = 0,
211                w = function () {
212                    function u(e, t) {
213                        ! function (e, t) {
214                            if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
215                        }(this, u);
216                        var o = this;
217                        o.instanceID = x++, o.$item = e, o.defaults = {
218                            type: "scroll",
219                            speed: .5,
220                            imgSrc: null,
221                            imgElement: ".jarallax-img",
222                            imgSize: "cover",
223                            imgPosition: "50% 50%",
224                            imgRepeat: "no-repeat",
225                            keepImg: !1,
226                            elementInViewport: null,
227                            zIndex: -100,
228                            disableParallax: !1,
229                            disableVideo: !1,
230                            automaticResize: !0,
231                            videoSrc: null,
232                            videoStartTime: 0,
233                            videoEndTime: 0,
234                            videoVolume: 0,
235                            videoPlayOnlyVisible: !0,
236                            onScroll: null,
237                            onInit: null,
238                            onDestroy: null,
239                            onCoverImage: null
240                        };
241                        var n = o.$item.getAttribute("data-jarallax"),
242                            i = JSON.parse(n || "{}");
243                        n && console.warn("Detected usage of deprecated data-jarallax JSON options, you should use pure data-attribute options. See info here - https://github.com/nk-o/jarallax/issues/53");
244                        var a = o.$item.dataset || {},
245                            r = {};
246                        if (Object.keys(a).forEach(function (e) {
247                            var t = e.substr(0, 1).toLowerCase() + e.substr(1);
248                            t && void 0 !== o.defaults[t] && (r[t] = a[e])
249                        }), o.options = o.extend({}, o.defaults, i, r, t), o.pureOptions = o.extend({}, o.options), Object.keys(o.options).forEach(function (e) {
250                            "true" === o.options[e] ? o.options[e] = !0 : "false" === o.options[e] && (o.options[e] = !1)
251                        }), o.options.speed = Math.min(2, Math.max(-1, parseFloat(o.options.speed))), (o.options.noAndroid || o.options.noIos) && (console.warn("Detected usage of deprecated noAndroid or noIos options, you should use disableParallax option. See info here - https://github.com/nk-o/jarallax/#disable-on-mobile-devices"), o.options.disableParallax || (o.options.noIos && o.options.noAndroid ? o.options.disableParallax = /iPad|iPhone|iPod|Android/ : o.options.noIos ? o.options.disableParallax = /iPad|iPhone|iPod/ : o.options.noAndroid && (o.options.disableParallax = /Android/))), "string" == typeof o.options.disableParallax && (o.options.disableParallax = new RegExp(o.options.disableParallax)), o.options.disableParallax instanceof RegExp) {
252                            var l = o.options.disableParallax;
253                            o.options.disableParallax = function () {
254                                return l.test(navigator.userAgent)
255                            }
256                        }
257                        if ("function" != typeof o.options.disableParallax && (o.options.disableParallax = function () {
258                            return !1
259                        }), "string" == typeof o.options.disableVideo && (o.options.disableVideo = new RegExp(o.options.disableVideo)), o.options.disableVideo instanceof RegExp) {
260                            var s = o.options.disableVideo;
261                            o.options.disableVideo = function () {
262                                return s.test(navigator.userAgent)
263                            }
264                        }
265                        "function" != typeof o.options.disableVideo && (o.options.disableVideo = function () {
266                            return !1
267                        });
268                        var c = o.options.elementInViewport;
269                        c && "object" === (void 0 === c ? "undefined" : p(c)) && void 0 !== c.length && (c = d(c, 1)[0]);
270                        c instanceof Element || (c = null), o.options.elementInViewport = c, o.image = {
271                            src: o.options.imgSrc || null,
272                            $container: null,
273                            useImgTag: !1,
274                            position: "absolute"
275                        }, o.initImg() && o.canInitParallax() && o.init()
276                    }
277                    return t(u, [{
278                        key: "css",
279                        value: function (t, o) {
280                            return "string" == typeof o ? i.window.getComputedStyle(t).getPropertyValue(o) : (o.transform && r && (o[r] = o.transform), Object.keys(o).forEach(function (e) {
281                                t.style[e] = o[e]
282                            }), t)
283                        }
284                    }, {
285                        key: "extend",
286                        value: function (o) {
287                            var n = arguments;
288                            return o = o || {}, Object.keys(arguments).forEach(function (t) {
289                                n[t] && Object.keys(n[t]).forEach(function (e) {
290                                    o[e] = n[t][e]
291                                })
292                            }), o
293                        }
294                    }, {
295                        key: "getWindowData",
296                        value: function () {
297                            return {
298                                width: b,
299                                height: v,
300                                y: l
301                            }
302                        }
303                    }, {
304                        key: "initImg",
305                        value: function () {
306                            var e = this,
307                                t = e.options.imgElement;
308                            return t && "string" == typeof t && (t = e.$item.querySelector(t)), t instanceof Element || (t = null), t && (e.options.keepImg ? e.image.$item = t.cloneNode(!0) : (e.image.$item = t, e.image.$itemParent = t.parentNode), e.image.useImgTag = !0), !!e.image.$item || (null === e.image.src && (e.image.src = e.css(e.$item, "background-image").replace(/^url\(['"]?/g, "").replace(/['"]?\)$/g, "")), !(!e.image.src || "none" === e.image.src))
309                        }
310                    }, {
311                        key: "canInitParallax",
312                        value: function () {
313                            return r && !this.options.disableParallax()
314                        }
315                    }, {
316                        key: "init",
317                        value: function () {
318                            var e = this,
319                                t = {
320                                    position: "absolute",
321                                    top: 0,
322                                    left: 0,
323                                    width: "100%",
324                                    height: "100%",
325                                    overflow: "hidden",
326                                    pointerEvents: "none"
327                                },
328                                o = {};
329                            if (!e.options.keepImg) {
330                                var n = e.$item.getAttribute("style");
331                                if (n && e.$item.setAttribute("data-jarallax-original-styles", n), e.image.useImgTag) {
332                                    var i = e.image.$item.getAttribute("style");
333                                    i && e.image.$item.setAttribute("data-jarallax-original-styles", i)
334                                }
335                            }
336                            if ("static" === e.css(e.$item, "position") && e.css(e.$item, {
337                                position: "relative"
338                            }), "auto" === e.css(e.$item, "z-index") && e.css(e.$item, {
339                                zIndex: 0
340                            }), e.image.$container = document.createElement("div"), e.css(e.image.$container, t), e.css(e.image.$container, {
341                                "z-index": e.options.zIndex
342                            }), s && e.css(e.image.$container, {
343                                opacity: .9999
344                            }), e.image.$container.setAttribute("id", "jarallax-container-" + e.instanceID), e.$item.appendChild(e.image.$container), e.image.useImgTag ? o = e.extend({
345                                "object-fit": e.options.imgSize,
346                                "object-position": e.options.imgPosition,
347                                "font-family": "object-fit: " + e.options.imgSize + "; object-position: " + e.options.imgPosition + ";",
348                                "max-width": "none"
349                            }, t, o) : (e.image.$item = document.createElement("div"), e.image.src && (o = e.extend({
350                                "background-position": e.options.imgPosition,
351                                "background-size": e.options.imgSize,
352                                "background-repeat": e.options.imgRepeat,
353                                "background-image": 'url("' + e.image.src + '")'
354                            }, t, o))), "opacity" !== e.options.type && "scale" !== e.options.type && "scale-opacity" !== e.options.type && 1 !== e.options.speed || (e.image.position = "absolute"), "fixed" === e.image.position)
355                                for (var a = 0, r = e.$item; null !== r && r !== document && 0 === a;) {
356                                    var l = e.css(r, "-webkit-transform") || e.css(r, "-moz-transform") || e.css(r, "transform");
357                                    l && "none" !== l && (a = 1, e.image.position = "absolute"), r = r.parentNode
358                                }
359                            o.position = e.image.position, e.css(e.image.$item, o), e.image.$container.appendChild(e.image.$item), e.onResize(), e.onScroll(!0), e.options.automaticResize && h && h.observe(e.$item), e.options.onInit && e.options.onInit.call(e), "none" !== e.css(e.$item, "background-image") && e.css(e.$item, {
360                                "background-image": "none"
361                            }), e.addToParallaxList()
362                        }
363                    }, {
364                        key: "addToParallaxList",
365                        value: function () {
366                            f.push(this), 1 === f.length && g()
367                        }
368                    }, {
369                        key: "removeFromParallaxList",
370                        value: function () {
371                            var o = this;
372                            f.forEach(function (e, t) {
373                                e.instanceID === o.instanceID && f.splice(t, 1)
374                            })
375                        }
376                    }, {
377                        key: "destroy",
378                        value: function () {
379                            var e = this;
380                            e.removeFromParallaxList();
381                            var t = e.$item.getAttribute("data-jarallax-original-styles");
382                            if (e.$item.removeAttribute("data-jarallax-original-styles"), t ? e.$item.setAttribute("style", t) : e.$item.removeAttribute("style"), e.image.useImgTag) {
383                                var o = e.image.$item.getAttribute("data-jarallax-original-styles");
384                                e.image.$item.removeAttribute("data-jarallax-original-styles"), o ? e.image.$item.setAttribute("style", t) : e.image.$item.removeAttribute("style"), e.image.$itemParent && e.image.$itemParent.appendChild(e.image.$item)
385                            }
386                            e.$clipStyles && e.$clipStyles.parentNode.removeChild(e.$clipStyles), e.image.$container && e.image.$container.parentNode.removeChild(e.image.$container), e.options.onDestroy && e.options.onDestroy.call(e), delete e.$item.jarallax
387                        }
388                    }, {
389                        key: "clipContainer",
390                        value: function () {
391                            if ("fixed" === this.image.position) {
392                                var e = this,
393                                    t = e.image.$container.getBoundingClientRect(),
394                                    o = t.width,
395                                    n = t.height;
396                                if (!e.$clipStyles) e.$clipStyles = document.createElement("style"), e.$clipStyles.setAttribute("type", "text/css"), e.$clipStyles.setAttribute("id", "jarallax-clip-" + e.instanceID), (document.head || document.getElementsByTagName("head")[0]).appendChild(e.$clipStyles);
397                                var i = "#jarallax-container-" + e.instanceID + " {\n           clip: rect(0 " + o + "px " + n + "px 0);\n           clip: rect(0, " + o + "px, " + n + "px, 0);\n        }";
398                                e.$clipStyles.styleSheet ? e.$clipStyles.styleSheet.cssText = i : e.$clipStyles.innerHTML = i
399                            }
400                        }
401                    }, {
402                        key: "coverImage",
403                        value: function () {
404                            var e = this,
405                                t = e.image.$container.getBoundingClientRect(),
406                                o = t.height,
407                                n = e.options.speed,
408                                i = "scroll" === e.options.type || "scroll-opacity" === e.options.type,
409                                a = 0,
410                                r = o,
411                                l = 0;
412                            return i && (a = n < 0 ? n * Math.max(o, v) : n * (o + v), 1 < n ? r = Math.abs(a - v) : n < 0 ? r = a / n + Math.abs(a) : r += Math.abs(v - o) * (1 - n), a /= 2), e.parallaxScrollDistance = a, l = i ? (v - r) / 2 : (o - r) / 2, e.css(e.image.$item, {
413                                height: r + "px",
414                                marginTop: l + "px",
415                                left: "fixed" === e.image.position ? t.left + "px" : "0",
416                                width: t.width + "px"
417                            }
417), e.options.onCoverImage && e.options.onCoverImage.call(e), {
418                                image: {
419                                    height: r,
420                                    marginTop: l
421                                },
422                                container: t
423                            }
424                        }
425                    }, {
426                        key: "isVisible",
427                        value: function () {
428                            return this.isElementInViewport || !1
429                        }
430                    }, {
431                        key: "onScroll",
432                        value: function (e) {
433                            var t = this,
434                                o = t.$item.getBoundingClientRect(),
435                                n = o.top,
436                                i = o.height,
437                                a = {},
438                                r = o;
439                            if (t.options.elementInViewport && (r = t.options.elementInViewport.getBoundingClientRect()), t.isElementInViewport = 0 <= r.bottom && 0 <= r.right && r.top <= v && r.left <= b, e || t.isElementInViewport) {
440                                var l = Math.max(0, n),
441                                    s = Math.max(0, i + n),
442                                    c = Math.max(0, -n),
443                                    u = Math.max(0, n + i - v),
444                                    d = Math.max(0, i - (n + i - v)),
445                                    p = Math.max(0, -n + v - i),
446                                    m = 1 - 2 * (v - n) / (v + i),
447                                    f = 1;
448                                if (i < v ? f = 1 - (c || u) / i : s <= v ? f = s / v : d <= v && (f = d / v), "opacity" !== t.options.type && "scale-opacity" !== t.options.type && "scroll-opacity" !== t.options.type || (a.transform = "translate3d(0,0,0)", a.opacity = f), "scale" === t.options.type || "scale-opacity" === t.options.type) {
449                                    var y = 1;
450                                    t.options.speed < 0 ? y -= t.options.speed * f : y += t.options.speed * (1 - f), a.transform = "scale(" + y + ") translate3d(0,0,0)"
451                                }
452                                if ("scroll" === t.options.type || "scroll-opacity" === t.options.type) {
453                                    var g = t.parallaxScrollDistance * m;
454                                    "absolute" === t.image.position && (g -= n), a.transform = "translate3d(0," + g + "px,0)"
455                                }
456                                t.css(t.image.$item, a), t.options.onScroll && t.options.onScroll.call(t, {
457                                    section: o,
458                                    beforeTop: l,
459                                    beforeTopEnd: s,
460                                    afterTop: c,
461                                    beforeBottom: u,
462                                    beforeBottomEnd: d,
463                                    afterBottom: p,
464                                    visiblePercent: f,
465                                    fromViewportCenter: m
466                                })
467                            }
468                        }
469                    }, {
470                        key: "onResize",
471                        value: function () {
472                            this.coverImage(), this.clipContainer()
473                        }
474                    }]), u
475                }(),
476                $ = function (e) {
477                    ("object" === ("undefined" == typeof HTMLElement ? "undefined" : p(HTMLElement)) ? e instanceof HTMLElement : e && "object" === (void 0 === e ? "undefined" : p(e)) && null !== e && 1 === e.nodeType && "string" == typeof e.nodeName) && (e = [e]);
478                    for (var t = arguments[1], o = Array.prototype.slice.call(arguments, 2), n = e.length, i = 0, a = void 0; i < n; i++)
479                        if ("object" === (void 0 === t ? "undefined" : p(t)) || void 0 === t ? e[i].jarallax || (e[i].jarallax = new w(e[i], t)) : e[i].jarallax && (a = e[i].jarallax[t].apply(e[i].jarallax, o)), void 0 !== a) return a;
480                    return e
481                };
482            $.constructor = w, j.default = $
483        }).call(this, S(5))
484    }, function (e, t, o) {
485        "use strict";
486        var n = o(4),
487            i = n.requestAnimationFrame || n.webkitRequestAnimationFrame || n.mozRequestAnimationFrame || function (e) {
488                var t = +new Date,
489                    o = Math.max(0, 16 - (t - a)),
490                    n = setTimeout(e, o);
491                return a = t, n
492            },
493            a = +new Date;
494        var r = n.cancelAnimationFrame || n.webkitCancelAnimationFrame || n.mozCancelAnimationFrame || clearTimeout;
495        Function.prototype.bind && (i = i.bind(n), r = r.bind(n)), (e.exports = i).cancel = r
496    }]);
497
498    /*!
499 * ScrollToPlugin 3.6.1
500 * https://greensock.com
501 *
502 * @license Copyright 2021, GreenSock. All rights reserved.
503 * Subject to the terms at https://greensock.com/standard-license or for Club GreenSock members, the agreement issued with that membership.
504 * @author: Jack Doyle, [email protected]
505 */
506
507    !function (t, e) { "object" == typeof exports && "undefined" != typeof module ? e(exports) : "function" == typeof define && define.amd ? define(["exports"], e) : e((t = t || self).window = t.window || {}) }(this, function (e) { "use strict"; function k() { return "undefined" != typeof window } function l() { return i || k() && (i = window.gsap) && i.registerPlugin && i } function m(t) { return "string" == typeof t } function n(t) { return "function" == typeof t } function o(t, e) { var o = "x" === e ? "Width" : "Height", n = "scroll" + o, r = "client" + o; return t === x || t === u || t === c ? Math.max(u[n], c[n]) - (x["inner" + o] || u[r] || c[r]) : t[n] - t["offset" + o] } function p(t, e) { var o = "scroll" + ("x" === e ? "Left" : "Top"); return t === x && (null != t.pageXOffset ? o = "page" + e.toUpperCase() + "Offset" : t = null != u[o] ? u : c), function () { return t[o] } } function r(t, e) { if (!(t = a(t)[0]) || !t.getBoundingClientRect) return console.warn("scrollTo target doesn't exist. Using 0") || { x: 0, y: 0 }; var o = t.getBoundingClientRect(), n = !e || e === x || e === c, r = n ? { top: u.clientTop - (x.pageYOffset || u.scrollTop || c.scrollTop || 0), left: u.clientLeft - (x.pageXOffset || u.scrollLeft || c.scrollLeft || 0) } : e.getBoundingClientRect(), i = { x: o.left - r.left, y: o.top - r.top }; return !n && e && (i.x += p(e, "x")(), i.y += p(e, "y")()), i } function s(t, e, n, i, l) { return isNaN(t) || "object" == typeof t ? m(t) && "=" === t.charAt(1) ? parseFloat(t.substr(2)) * ("-" === t.charAt(0) ? -1 : 1) + i - l : "max" === t ? o(e, n) - l : Math.min(o(e, n), r(t, e)[n] - l) : parseFloat(t) - l }
507 function t() { i = l(), k() && i && document.body && (x = window, c = document.body, u = document.documentElement, a = i.utils.toArray, i.config({ autoKillThreshold: 7 }), g = i.config(), f = 1) } var i, f, x, u, c, a, g, y = { version: "3.6.1", name: "scrollTo", rawVars: 1, register: function register(e) { i = e, t() }, init: function init(e, o, r, i, l) { f || t(); var u = this; u.isWin = e === x, u.target = e, u.tween = r, o = function _clean(t, e, o, r) { if (n(t) && (t = t(e, o, r)), "object" != typeof t) return m(t) && "max" !== t && "=" !== t.charAt(1) ? { x: t, y: t } : { y: t }; if (t.nodeType) return { y: t, x: t }; var i, l = {}; for (i in t) l[i] = "onAutoKill" !== i && n(t[i]) ? t[i](e, o, r) : t[i]; return l }(o, i, e, l), u.vars = o, u.autoKill = !!o.autoKill, u.getX = p(e, "x"), u.getY = p(e, "y"), u.x = u.xPrev = u.getX(), u.y = u.yPrev = u.getY(), null != o.x ? (u.add(u, "x", u.x, s(o.x, e, "x", u.x, o.offsetX || 0), i, l), u._props.push("scrollTo_x")) : u.skipX = 1, null != o.y ? (u.add(u, "y", u.y, s(o.y, e, "y", u.y, o.offsetY || 0), i, l), u._props.push("scrollTo_y")) : u.skipY = 1 }, render: function render(t, e) { for (var n, r, i, l, s, u = e._pt, f = e.target, p = e.tween, c = e.autoKill, a = e.xPrev, y = e.yPrev, d = e.isWin; u;)u.r(t, u.d), u = u._next; n = d || !e.skipX ? e.getX() : a, i = (r = d || !e.skipY ? e.getY() : y) - y, l = n - a, s = g.autoKillThreshold, e.x < 0 && (e.x = 0), e.y < 0 && (e.y = 0), c && (!e.skipX && (s < l || l < -s) && n < o(f, "x") && (e.skipX = 1), !e.skipY && (s < i || i < -s) && r < o(f, "y") && (e.skipY = 1), e.skipX && e.skipY && (p.kill(), e.vars.onAutoKill && e.vars.onAutoKill.apply(p, e.vars.onAutoKillParams || []))), d ? x.scrollTo(e.skipX ? n : e.x, e.skipY ? r : e.y) : (e.skipY || (f.scrollTop = e.y), e.skipX || (f.scrollLeft = e.x)), e.xPrev = e.x, e.yPrev = e.y }, kill: function kill(t) { var e = "scrollTo" === t; !e && "scrollTo_x" !== t || (this.skipX = 1), !e && "scrollTo_y" !== t || (this.skipY = 1) } }; y.max = o, y.getOffset = r, y.buildGetter = p, l() && i.registerPlugin(y), e.ScrollToPlugin = y, e.default = y; if (typeof (window) === "undefined" || window !== e) { Object.defineProperty(e, "__esModule", { value: !0 }) } else { delete e.default } });
508
509    window.premiumParallaxEffects = function (element, settings) {
510
511        var self = this,
512            $el = $(element),
513            scrolls = $el.data("scrolls"),
514            elementSettings = settings,
515            elType = elementSettings.elType,
516            elOffset = $el.offset();
517
518        //Check if Horizontal Scroll Widget
519        var isHScrollWidget = $el.closest(".premium-hscroll-temp").length;
520
521        self.elementRules = {};
522
523        self.init = function () {
524
525            if (scrolls || 'SECTION' === elType) {
526
527                if (!elementSettings.effects.length) {
528                    return;
529                }
530                self.setDefaults();
531                elementorFrontend.elements.$window.on('scroll load', self.initScroll);
532            } else {
533                elementorFrontend.elements.$window.off('scroll load', self.initScroll);
534                return;
535            }
536
537        };
538
539        self.setDefaults = function () {
540
541            elementSettings.defaults = {};
542            elementSettings.defaults.axis = 'y';
543
544        };
545
546        self.transform = function (action, percents, data) {
547
548            if ("down" === data.direction) {
549                percents = 100 - percents;
550            }
551
552            if (data.range) {
553                if (data.range.start > percents && !isHScrollWidget) {
554                    percents = data.range.start;
555                }
556
557                if (data.range.end < percents && !isHScrollWidget) {
558                    percents = data.range.end;
559                }
560
561            }
562
563            if ('rotate' === action) {
564                elementSettings.defaults.unit = 'deg';
565            } else {
566                elementSettings.defaults.unit = 'px';
567            }
568
569            self.updateElement('transform', action, self.getStep(percents, data) + elementSettings.defaults.unit);
570
571        };
572
573        self.getPercents = function () {
574
575            var dimensions = self.getDimensions();
576
577            var startOffset = innerHeight;
578
579            if (isHScrollWidget) startOffset = 0;
580
581            (elementTopWindowPoint = dimensions.elementTop - pageYOffset),
582                (elementEntrancePoint = elementTopWindowPoint - startOffset);
583
584            passedRangePercents =
585                (100 / dimensions.range) * (elementEntrancePoint * -1);
586
587            return passedRangePercents;
588
589        };
590
591        self.initScroll = function () {
592
593            if (elementSettings.effects.includes('translateY')) {
594
595                self.initVScroll();
596
597            }
598
599            if (elementSettings.effects.includes('translateX')) {
600
601                self.initHScroll();
602
603            }
604
605        };
606
607        self.initVScroll = function () {
608
609            var percents = self.getPercents();
610
611            self.transform('translateY', percents, elementSettings.vscroll);
612
613        };
614
615        self.initHScroll = function () {
616
617            var percents = self.getPercents();
618
619            self.transform('translateX', percents, elementSettings.hscroll);
620
621        };
622
623        self.getDimensions = function () {
624
625            var elementOffset = $el.offset();
626
627            var dimensions = {
628                elementHeight: $el.outerHeight(),
629                elementWidth: $el.outerWidth(),
630                elementTop: elementOffset.top,
631                elementLeft: elementOffset.left
632            };
633
634            dimensions.range = dimensions.elementHeight + innerHeight;
635
636            return dimensions;
637
638        };
639
640        self.getStep = function (percents, options) {
641
642            return -(percents - 50) * options.speed;
643
644        };
645
646        self.getEffectMovePoint = function (percents, effect, range) {
647
648            var point = 0;
649
650            if (percents < range.start) {
651                if ("down" === effect) {
652                    point = 0;
653                } else {
654                    point = 100;
655                }
656            } else if (percents < range.end) {
657
658                point = self.getPointFromPercents((range.end - range.start), (percents - range.start));
659
660                if ("up" === effect) {
661                    point = 100 - point;
662                }
663
664            } else if ("up" === effect) {
665                point = 0;
666            } else if ("down" === effect) {
667                point = 100;
668            }
669
670            return point;
671
672        };
673
674        self.getEffectValueFromMovePoint = function (level, movePoint) {
675
676            return level * movePoint / 100;
677
678        };
679
680        self.getPointFromPercents = function (movableRange, percents) {
681
682            var movePoint = percents / movableRange * 100;
683
684            return +movePoint.toFixed(2);
685
686        };
687
688        self.updateElement = function (propName, key, value) {
689
690            if (!self.elementRules[propName]) {
691                self.elementRules[propName] = {};
692            }
693
694            if (!self.elementRules[propName][key]) {
695                self.elementRules[propName][key] = true;
696
697                self.updateElementRule(propName);
698            }
699
700            var cssVarKey = '--' + key;
701
702            element.style.setProperty(cssVarKey, value);
703
704        };
705
706        self.updateElementRule = function (rule) {
707
708            var cssValue = '';
709
710            $.each(self.elementRules[rule], function (variableKey) {
711                cssValue += variableKey + '(var(--' + variableKey + '))';
712            });
713
714            $el.css(rule, cssValue);
715
716        };
717
718    };
719
720    $(window).on('elementor/frontend/init', function () {
721
722        var PremiumParallaxHandler = function ($scope) {
723
724            if (!$scope.hasClass("premium-parallax-yes"))
725                return;
726
727            var target = $scope,
728                sectionId = target.data("id"),
729                elementType = target.data('element_type'),
730                settings = {},
731                tempTarget = target.find('#premium-parallax-' + sectionId),
732                editMode = elementorFrontend.isEditMode() && tempTarget.length > 0,
733                targetID = editMode ? tempTarget : target;
734
735            generateSettings(targetID);
736
737            if (!settings || undefined == settings.type) {
738                return false;
739            }
740
741            if ("multi" !== settings.type && "automove" !== settings.type) {
742                generateJarallax();
743            } else if ("automove" === settings.type) {
744                generateAutoMoveBackground();
745            } else {
746                var currentDevice = elementorFrontend.getCurrentDeviceMode();
747
748                generateMultiLayers(currentDevice);
749
750                if (editMode) {
751                    var settings = {
752                        repeater: 'premium_parallax_layers_list',
753                        item: '.premium-parallax-layer',
754                        hor: 'premium_parallax_layer_hor_pos',
755                        ver: 'premium_parallax_layer_ver_pos',
756                        width: 'premium_parallax_layer_width',
757                        tab: 'section_premium_parallax',
758                        offset: 0,
759                        widgets: ["drag", "resize"]
760                    },
761                        instance = null;
762
763                    instance = new premiumEditorBehavior(target, settings);
764                    instance.init();
765                }
766            }
767
768            function generateSettings(target) {
769
770                var parallaxSettings = target.data("pa-parallax");
771
772                if (!parallaxSettings) {
773                    return false;
774                }
775
776                settings.type = parallaxSettings["type"];
777
778                if (undefined == settings.type) {
779                    return false;
780                }
781
782                if ("multi" !== settings.type && "automove" !== settings.type) {
783                    settings.speed = parallaxSettings["speed"];
784                    settings.android = parallaxSettings["android"];
785                    settings.ios = parallaxSettings["ios"];
786                    settings.size = parallaxSettings["size"];
787                    settings.position = target.css('backgroundPosition');
788                    settings.repeat = parallaxSettings["repeat"];
789                } else if ("automove" === settings.type) {
790                    settings.speed = parallaxSettings["speed"];
791                    settings.direction = parallaxSettings["direction"];
792                } else {
793                    settings.items = [];
794                    $.each(parallaxSettings["items"], function (index, layer) {
795                        settings.items.push(layer);
796                    });
797                    settings.devices = parallaxSettings["devices"];
798                    settings.speed = parallaxSettings["speed"];
799                }
800
801                if (0 !== Object.keys(settings).length) {
802                    return settings;
803                }
804
805                return false;
806            }
807
808            function responsiveParallax(android, ios) {
809                switch (true || 1) {
810                    case android && ios:
811                        return /iPad|iPhone|iPod|Android/;
812                    case android && !ios:
813                        return /Android/;
814                    case !android && ios:
815                        return /iPad|iPhone|iPod/;
816                    case !android && !ios:
817                        return null;
818                }
819            }
820
821            function generateJarallax() {
822
823                //Fix image bounce issue on page load
824                target.removeClass("premium-parallax-section-hide");
825
826                if (elementType === 'column') {
827                    target = $scope.find('.elementor-column-wrap').first();
828
829                    if (target.length < 1)
830                        target = $scope.find('.elementor-widget-wrap').first();
831
832                }
833
834                var eleObserver = new IntersectionObserver(function (entries) {
835                    entries.forEach(function (entry) {
836                        if (entry.isIntersecting) {
837
838                            target.jarallax({
839                                type: settings.type,
840                                speed: settings.speed || 0.1,
841                                disableParallax: responsiveParallax(
842                                    1 == settings.android,
843                                    1 == settings.ios
844                                ),
845                                keepImg: true,
846                                imgSize: settings.size,
847                                imgPosition: settings.position,
848                                imgRepeat: settings.repeat
849                            });
850
851                            eleObserver.unobserve(entry.target); // to only excecute the callback func once.
852                        }
853                    });
854                });
855
856                eleObserver.observe(target[0]);
857
858            }
859
860            function generateAutoMoveBackground() {
861                var speed = parseInt(settings.speed);
862
863                if (elementType === 'column') {
864                    target = $scope.find('.elementor-column-wrap').first();
865
866                    if (target.length < 1)
867                        target = $scope.find('.elementor-widget-wrap').first();
868
869                }
870
871                //Remove transitions for Safari to prevent jittering coming from Elementor default transitions.
872                var isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);
873
874                if (isSafari)
875                    target.addClass("premium-parallax-no-trans");
876
877                target.css("background-position", "0px 0px");
878
879                if (settings.direction === "left") {
880                    var position = parseInt(target.css("background-position-x"));
881
882                    setInterval(function () {
883                        position = position + speed;
884                        target.css("backgroundPosition", position + "px 0");
885                    }, 70);
886                } else if (settings.direction === "right") {
887                    var position = parseInt(target.css("background-position-x"));
888
889                    setInterval(function () {
890                        position = position - speed;
891                        target.css("backgroundPosition", position + "px 0");
892                    }, 70);
893                } else if (settings.direction === "top") {
894                    var position = parseInt(target.css("background-position-y"));
895
896                    setInterval(function () {
897                        position = position + speed;
898                        target.css("backgroundPosition", "0 " + position + "px");
899                    }, 70);
900                } else if (settings.direction === "bottom") {
901                    var position = parseInt(target.css("background-position-y"));
902
903                    setInterval(function () {
904                        position = position - speed;
905                        target.css("backgroundPosition", "0 " + position + "px");
906                    }, 70);
907                }
908            }
909
910            function generateMultiLayers(currentDevice) {
911
912                var mouseParallax = "",
913                    deviceSuffix = ('desktop' === currentDevice) ? '' : '_' + currentDevice,
914                    mouseRate = "";
915
916                target.find(".premium-parallax-layer").remove();
917
918                $.each(settings.items, function (index, layout) {
919
920                    if (!layout.show_layer_on.includes(currentDevice))
921                        return;
922
923                    var layerHTML = getLayerHTML(layout);
924
925                    if ('' == layerHTML)
926                        return;
927
928                    var layerID = 'premium-parallax-layer-' + layout._id,
929                        layerPosition = ' premium-parallax-' + layout.premium_parallax_layer_hor + ' premium-parallax-' + layout.premium_parallax_layer_ver,
930                        layerType = ' parallax-' + layout.layer_type;
931
932                    if ("yes" === layout.premium_parallax_layer_mouse && "" !== layout.premium_parallax_layer_rate) {
933                        mouseParallax = ' data-parallax="true" ';
934                        mouseRate = ' data-rate="' + layout.premium_parallax_layer_rate + '" ';
935                    } else {
936                        mouseParallax = ' data-parallax="false" ';
937                    }
938
939                    if ('img' === layout.layer_type)
940                        var width = 'undefined' != typeof layout["premium_parallax_layer_width" + deviceSuffix] ? layout["premium_parallax_layer_width" + deviceSuffix].size : layout["premium_parallax_layer_width"].size;
941
942                    $('<div id="' + layerID + '"' +
943                        mouseParallax +
944                        mouseRate +
945                        ' class="premium-parallax-layer elementor-repeater-item-' + layout._id + layerPosition + layerType + '">' + layerHTML + '</div>'
946                    )
947                        .prependTo(target)
948                        .css({
949                            "z-index": layout["premium_parallax_layer_z_index"],
950                            "background-size": layout["premium_parallax_layer_back_size"],
951                            "width": 'img' === layout.layer_type ? width + "%" : "auto"
952                        });
953
954                    var $layer = target.find('#' + layerID);
955
956                    if ('custom' === layout.premium_parallax_layer_hor) {
957
958                        var left = 'undefined' != typeof layout["premium_parallax_layer_hor_pos" + deviceSuffix] ? layout["premium_parallax_layer_hor_pos" + deviceSuffix].size : layout["premium_parallax_layer_hor_pos"].size;
959
960                        $layer.css('left', left + '%');
961                    }
962
963                    if ('custom' === layout.premium_parallax_layer_ver) {
964
965                        var top = 'undefined' != typeof layout["premium_parallax_layer_ver_pos" + deviceSuffix] ? layout["premium_parallax_layer_ver_pos" + deviceSuffix].size : layout["premium_parallax_layer_ver_pos"].size;
966
967                        $layer.css('top', top + '%');
968
969                    }
970
971                    if (settings.devices.includes(currentDevice)) {
972                        if ('yes' === layout['premium_parallax_layer_scroll']) {
973                            if ('yes' === layout['premium_parallax_layer_scroll_hor']) {
974
975                                $layer.attr({
976                                    'data-parallax-scroll': 'yes',
977                                    'data-parallax-hscroll': 'yes',
978                                    'data-parallax-hscroll_speed': layout['premium_parallax_layer_speed_hor']['size'],
979                                    'data-parallax-hscroll_start': layout['premium_parallax_layer_view_hor']['sizes']['start'],
980                                    'data-parallax-hscroll_end': layout['premium_parallax_layer_view_hor']['sizes']['end'],
981                                    'data-parallax-hscroll_direction': layout['premium_parallax_layer_direction_hor']
982                                });
983                            }
984
985                            if ('yes' === layout['premium_parallax_layer_scroll_ver']) {
986                                $layer.attr({
987                                    'data-parallax-scroll': 'yes',
988                                    'data-parallax-vscroll': 'yes',
989                                    'data-parallax-speed': layout['premium_parallax_layer_speed']['size'],
990                                    'data-parallax-start': layout['premium_parallax_layer_view']['sizes']['start'],
991                                    'data-parallax-end': layout['premium_parallax_layer_view']['sizes']['end'],
992                                    'data-parallax-direction': layout['premium_parallax_layer_direction']
993                                });
994                            }
995                        }
996                    }
997
998
999                });
1000
1001                target.imagesLoaded().done(function () {
1002                    target.trigger("paParallaxLoaded");
1003                });
1004
1005                window.PremiumSvgDrawerHandler(target, $, settings.speed);
1006
1007                function getLayerHTML(layer) {
1008
1009                    var html = '',
1010                        imgID = '' != layer.premium_parallax_layer_id ? 'id="' + layer.premium_parallax_layer_id + '"' : '';
1011
1012                    if ('img' === layer.layer_type) {
1013
1014                        if (null !== layer["premium_parallax_layer_image"]["url"] && "" !== layer["premium_parallax_layer_image"]["url"]) {
1015
1016                            var backgroundImage = layer["premium_parallax_layer_image"]["url"],
1017                                alt = layer['alt'];
1018
1019                            html = '<img ' + imgID + ' class="premium-parallax-img" src="' + backgroundImage + '" alt="' + alt + '">';
1020
1021                        }
1022
1023                    } else {
1024
1025                        var attributes = imgID + ' class="' + ("yes" === layer.draw_svg ? "premium-svg-drawer" : "premium-svg-nodraw") + '"';
1026
1027                        if ("yes" === layer.draw_svg) {
1028                            attributes += 'data-svg-reverse="' + layer.svg_reverse + '"';
1029                            attributes += 'data-svg-loop="' + layer.svg_loop + '"';
1030                            attributes += 'data-svg-sync="' + layer.svg_sync + '"';
1031                            attributes += 'data-svg-hover="' + layer.svg_hover + '"';
1032                            attributes += 'data-svg-restart="' + layer.restart_draw + '"';
1033                            attributes += 'data-svg-fill="' + layer.svg_color + '"';
1034                            attributes += 'data-svg-stroke="' + layer.svg_stroke + '"';
1035                            attributes += 'data-svg-frames="' + layer.frames + '"';
1036                            attributes += 'data-svg-yoyo="' + layer.svg_yoyo + '"';
1037                            attributes += 'data-svg-point="' + (layer.svg_reverse ? layer.end_point.size : layer.start_point.size) + '"';
1038                        }
1039
1040                        html = '<div ' + attributes + '>' + layer.premium_parallax_layer_svg + '</div>';
1041                    }
1042
1043                    return html;
1044                }
1045
1046                if (-1 !== settings.devices.indexOf(currentDevice)) {
1047                    target.find('.premium-parallax-layer').each(function (index, layer) {
1048                        var data = $(layer).data();
1049                        if ('yes' === data.parallaxScroll) {
1050                            var effects = [],
1051                                vScrollSettings = {},
1052                                hScrollSettings = {},
1053                                settings = {}
1054
1055                            if ('yes' === data.parallaxVscroll) {
1056
1057                                effects.push('translateY');
1058                                vScrollSettings = {
1059                                    speed: data.parallaxSpeed,
1060                                    direction: data.parallaxDirection,
1061                                    range: {
1062                                        start: data.parallaxStart,
1063                                        end: data.parallaxEnd
1064                                    }
1065                                };
1066                            }
1067
1068                            if ('yes' === data.parallaxHscroll) {
1069                                effects.push('translateX');
1070                                hScrollSettings = {
1071                                    speed: data.parallaxHscroll_speed,
1072                                    direction: data.parallaxHscroll_direction,
1073                                    range: {
1074                                        start: data.parallaxHscroll_start,
1075                                        end: data.parallaxHscroll_end
1076                                    }
1077                                };
1078
1079                            }
1080
1081                            settings = {
1082                                elType: 'SECTION',
1083                                vscroll: vScrollSettings,
1084                                hscroll: hScrollSettings,
1085                                effects: effects
1086                            },
1087
1088                                instance = null;
1089
1090                            instance = new premiumParallaxEffects(layer, settings);
1091
1092                            instance.init();
1093                        }
1094                    });
1095                }
1096
1097                target.mousemove(function (e) {
1098                    $(this)
1099                        .find('.premium-parallax-layer[data-parallax="true"]')
1100                        .each(function () {
1101                            var $this = $(this),
1102                                resistance = $(this).data("rate");
1103                            TweenLite.to($this, 0.2, {
1104                                x: -((e.clientX - window.innerWidth / 2) / resistance),
1105                                y: -((e.clientY - window.innerHeight / 2) / resistance)
1106                            });
1107                        });
1108                });
1109            }
1110
1111        };
1112
1113        elementorFrontend.hooks.addAction("frontend/element_ready/section", PremiumParallaxHandler);
1114        elementorFrontend.hooks.addAction("frontend/element_ready/column", PremiumParallaxHandler);
1115        elementorFrontend.hooks.addAction("frontend/element_ready/container", PremiumParallaxHandler);
1116
1117
1118    });
1119
1120})(jQuery);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.