8889841cwp-content/plugins/premium-addons-for-elementor/assets/frontend/js/universal-tilt.js000064400000035753150516143070034023 0ustar00home/clixcotz/travelport.clix.co.tz! function (e, t) { "object" == typeof exports && "object" == typeof module ? module.exports = t() : "function" == typeof define && define.amd ? define("UniversalTilt", [], t) : "object" == typeof exports ? exports.UniversalTilt = t() : e.UniversalTilt = t() }("object" != typeof window ? global.window = global : window, function () { return function (e) { var t = {}; function n(i) { if (t[i]) return t[i].exports; var s = t[i] = { i: i, l: !1, exports: {} }; return e[i].call(s.exports, s, s.exports, n), s.l = !0, s.exports } return n.m = e, n.c = t, n.d = function (e, t, i) { n.o(e, t) || Object.defineProperty(e, t, { enumerable: !0, get: i }) }, n.r = function (e) { "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, { value: "Module" }), Object.defineProperty(e, "__esModule", { value: !0 }) }, n.t = function (e, t) { if (1 & t && (e = n(e)), 8 & t) return e; if (4 & t && "object" == typeof e && e && e.__esModule) return e; var i = Object.create(null); if (n.r(i), Object.defineProperty(i, "default", { enumerable: !0, value: e }), 2 & t && "string" != typeof e) for (var s in e) n.d(i, s, function (t) { return e[t] }.bind(null, s)); return i }, n.n = function (e) { var t = e && e.__esModule ? function () { return e.default } : function () { return e }; return n.d(t, "a", t), t }, n.o = function (e, t) { return Object.prototype.hasOwnProperty.call(e, t) }, n.p = "", n(n.s = 0) }([function (e, t, n) { "use strict"; Object.defineProperty(t, "__esModule", { value: !0 }), t.default = void 0; var i, s = (i = n(1)) && i.__esModule ? i : { default: i }; var o = s.default; t.default = o, t.default = s.default, e.exports = t.default }, function (e, t, n) { "use strict"; function i(e, t) { for (var n = 0; n < t.length; n++) { var i = t[n]; i.enumerable = i.enumerable || !1, i.configurable = !0, "value" in i && (i.writable = !0), Object.defineProperty(e, i.key, i) } } function s(e, t, n) { return t in e ? Object.defineProperty(e, t, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[t] = n, e } Object.defineProperty(t, "__esModule", { value: !0 }), t.default = void 0; var o = function () { function e(t) { var n = this, i = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}, o = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}; ! function (e, t) { if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function") }(this, e), s(this, "onMouseEnter", function () { n.updateElementPosition(), n.transitions(), "function" == typeof n.callbacks.onMouseEnter && n.callbacks.onMouseEnter(n.element) }), s(this, "onMouseMove", function (e) { null !== n.updateCall && cancelAnimationFrame(n.updateCall), n.event = e, n.updateElementPosition(), n.updateCall = requestAnimationFrame(function () { return n.update() }), "function" == typeof n.callbacks.onMouseMove && n.callbacks.onMouseMove(n.element) }), s(this, "onMouseLeave", function () { n.transitions(), requestAnimationFrame(function () { return n.reset() }), "function" == typeof n.callbacks.onMouseLeave && n.callbacks.onMouseLeave(n.element) }), s(this, "onDeviceMove", function (e) { n.event = e, n.update(), n.updateElementPosition(), n.transitions(), "function" == typeof n.callbacks.onDeviceMove && n.callbacks.onDeviceMove(n.element) }), this.element = t, this.callbacks = o, this.settings = this.extendSettings(i), "function" == typeof this.callbacks.onInit && this.callbacks.onInit(this.element), this.reverse = this.settings.reverse ? -1 : 1, this.settings.shine && this.shine(), this.element.style.transform = "perspective(".concat(this.settings.perspective, "px)"), this.addEventListeners() } var t, n, o; return t = e, o = [{ key: "init", value: function () { var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}, n = t.elements, i = t.settings, s = t.callbacks; n instanceof Node && (n = [n]), n instanceof NodeList && (n = [].slice.call(n)); var o = !0, a = !1, l = void 0; try { for (var r, c = n[Symbol.iterator](); !(o = (r = c.next()).done); o = !0) { var u = r.value; "universalTilt" in u || (u.universalTilt = new e(u, i, s)) } } catch (e) { a = !0, l = e } finally { try { o || null == c.return || c.return() } finally { if (a) throw l } } } }], (n = [{ key: "isMobile", value: function () { return window.DeviceMotionEvent && "ontouchstart" in document.documentElement } }, { key: "addEventListeners", value: function () { navigator.userAgent.match(this.settings.exclude) || (this.isMobile() ? window.addEventListener("devicemotion", this.onDeviceMove) : ("element" === this.settings.base ? this.base = this.element : "window" === this.settings.base && (this.base = window), this.base.addEventListener("mouseenter", this.onMouseEnter), this.base.addEventListener("mousemove", this.onMouseMove), this.base.addEventListener("mouseleave", this.onMouseLeave))) } }, { key: "removeEventListeners", value: function () { window.removeEventListener("devicemotion", this.onDeviceMove), this.base.removeEventListener("mouseenter", this.onMouseEnter), this.base.removeEventListener("mousemove", this.onMouseMove), this.base.removeEventListener("mouseleave", this.onMouseLeave) } }, { key: "destroy", value: function () { clearTimeout(this.timeout), null !== this.updateCall && cancelAnimationFrame(this.updateCall), "function" == typeof this.callbacks.onDestroy && this.callbacks.onDestroy(this.element), this.reset(), this.removeEventListeners(), this.element.universalTilt = null, delete this.element.universalTilt, this.element = null } }, { key: "reset", value: function () { this.event = { pageX: this.left + this.width / 2, pageY: this.top + this.height / 2 }, this.settings.reset && (this.element.style.transform = "perspective(".concat(this.settings.perspective, "px) rotateX(0deg) rotateY(0deg) scale3d(1, 1, 1)")), this.settings.shine && !this.settings["shine-save"] && Object.assign(this.shineElement.style, { transform: "rotate(180deg) translate3d(-50%, -50%, 0)", opacity: "0" }) } }, { key: "getValues", value: function () { var e, t, n; this.isMobile() ? (e = this.event.accelerationIncludingGravity.x / 4, t = this.event.accelerationIncludingGravity.y / 4, 90 === window.orientation ? (n = (1 - t) / 2, t = (1 + e) / 2, e = n) : -90 === window.orientation ? (n = (1 + t) / 2, t = (1 - e) / 2, e = n) : 0 === window.orientation ? (t = n = (1 + t) / 2, e = (1 + e) / 2) : 180 === window.orientation && (t = n = (1 - t) / 2, e = (1 - e) / 2)) : "element" === this.settings.base ? (e = (this.event.clientX - this.left) / this.width, t = (this.event.clientY - this.top) / this.height) : "window" === this.settings.base && (e = this.event.clientX / window.innerWidth, t = this.event.clientY / window.innerHeight); e = Math.min(Math.max(e, 0), 1), t = Math.min(Math.max(t, 0), 1); var i = (this.settings.max / 2 - e * this.settings.max).toFixed(2), s = (t * this.settings.max - this.settings.max / 2).toFixed(2), o = Math.atan2(e - .5, .5 - t) * (180 / Math.PI); return { tiltX: this.reverse * i, tiltY: this.reverse * s, angle: o } } }, { key: "updateElementPosition", value: function () { var e = this.element.getBoundingClientRect(); this.width = this.element.offsetWidth, this.height = this.element.offsetHeight, this.left = e.left, this.top = e.top } }, { key: "update", value: function () { var e = this.getValues(); this.element.style.transform = "perspective(".concat(this.settings.perspective, "px)\n rotateX(").concat(this.settings.disabled && "X" === this.settings.disabled.toUpperCase() ? 0 : e.tiltY, "deg)\n rotateY(").concat(this.settings.disabled && "Y" === this.settings.disabled.toUpperCase() ? 0 : e.tiltX, "deg)\n scale3d(").concat(this.settings.scale, ", ").concat(this.settings.scale, ", ").concat(this.settings.scale, ")"), this.settings.shine && Object.assign(this.shineElement.style, { transform: "rotate(".concat(e.angle, "deg) translate3d(-50%, -50%, 0)"), opacity: "".concat(this.settings["shine-opacity"]) }), this.element.dispatchEvent(new CustomEvent("tiltChange", { detail: e })), this.updateCall = null } }, { key: "shine", value: function () { var e = document.createElement("div"), t = document.createElement("div"); e.classList.add("shine"), t.classList.add("shine-inner"), e.appendChild(t), this.element.appendChild(e), this.shineWrapper = this.element.querySelector(".shine"), this.shineElement = this.element.querySelector(".shine-inner"), Object.assign(this.shineWrapper.style, { position: "absolute", top: "0", left: "0", height: "100%", width: "100%", overflow: "hidden" }), Object.assign(this.shineElement.style, { position: "absolute", top: "50%", left: "50%", "pointer-events": "none", "background-image": "linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%)", width: "".concat(2 * this.element.offsetWidth, "px"), height: "".concat(2 * this.element.offsetWidth, "px"), transform: "rotate(180deg) translate3d(-50%, -50%, 0)", "transform-origin": "0% 0%", opacity: "0" }) } }, { key: "transitions", value: function () { var e = this; clearTimeout(this.timeout), this.element.style.transition = "all ".concat(this.settings.speed, "ms ").concat(this.settings.easing), this.settings.shine && (this.shineElement.style.transition = "opacity ".concat(this.settings.speed, "ms ").concat(this.settings.easing)), this.timeout = setTimeout(function () { e.element.style.transition = "", e.settings.shine && (e.shineElement.style.transition = "") }, this.settings.speed) } }, { key: "extendSettings", value: function (e) { var t = { base: "element", disabled: null, easing: "cubic-bezier(.03, .98, .52, .99)", exclude: null, max: 35, perspective: 1e3, reset: !0, reverse: !1, scale: 1, shine: !1, "shine-opacity": 0, "shine-save": !1, speed: 300 }, n = {}; for (var i in t) if (i in e) n[i] = e[i]; else if (this.element.getAttribute("data-".concat(i))) { var s = this.element.getAttribute("data-".concat(i)); try { n[i] = JSON.parse(s) } catch (e) { n[i] = s } } else n[i] = t[i]; return n } }]) && i(t.prototype, n), o && i(t, o), e }(); if (t.default = o, "undefined" != typeof document) { window.UniversalTilt = o; var a = document.querySelectorAll("[data-tilt]"); a.length && o.init({ elements: a }) } window.jQuery && (window.jQuery.fn.universalTilt = function () { var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; o.init({ elements: this, settings: e.settings || {}, callbacks: e.callbacks || {} }) }) }]) });