Files
amdruzstvo/quarter-rtl/assets/js/glightbox.min.js
2025-08-05 10:59:30 +02:00

2926 lines
99 KiB
JavaScript

!(function (e, t) {
"object" == typeof exports && "undefined" != typeof module
? (module.exports = t())
: "function" == typeof define && define.amd
? define(t)
: ((e = e || self).GLightbox = t());
})(this, function () {
"use strict";
function e(e) {
var t = (function (e, t) {
if ("object" != typeof e || !e) return e;
var i = e[Symbol.toPrimitive];
if (void 0 !== i) {
var n = i.call(e, t || "default");
if ("object" != typeof n) return n;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return ("string" === t ? String : Number)(e);
})(e, "string");
return "symbol" == typeof t ? t : t + "";
}
function t(e) {
return (t =
"function" == typeof Symbol && "symbol" == typeof Symbol.iterator
? function (e) {
return typeof e;
}
: function (e) {
return e &&
"function" == typeof Symbol &&
e.constructor === Symbol &&
e !== Symbol.prototype
? "symbol"
: typeof e;
})(e);
}
function i(e, t) {
if (!(e instanceof t))
throw new TypeError("Cannot call a class as a function");
}
function n(t, i) {
for (var n = 0; n < i.length; n++) {
var s = i[n];
(s.enumerable = s.enumerable || !1),
(s.configurable = !0),
"value" in s && (s.writable = !0),
Object.defineProperty(t, e(s.key), s);
}
}
function s(e, t, i) {
return (
t && n(e.prototype, t),
i && n(e, i),
Object.defineProperty(e, "prototype", { writable: !1 }),
e
);
}
function cgsc(container, status) {
const countEles = document.querySelectorAll(".gslide-count");
const prevSlides = document.querySelectorAll(".gprev");
const nextSlides = document.querySelectorAll(".gnext");
setTimeout(() => {
const totalIdx = container.elements.length;
const currentIdx = container.index;
const countCildren = countEles[currentIdx ? currentIdx : 0].children;
countEles.forEach((countEle) => {
countCildren[0].innerText = currentIdx + 1;
countCildren[1].innerText = totalIdx;
if (totalIdx < 2) {
countEle.style.opacity = 0;
prevSlides[currentIdx].style.opacity = 0;
nextSlides[currentIdx].style.opacity = 0;
} else {
// countEle.style.opacity = 100;
// prevSlides[currentIdx].style.opacity = 100;
// nextSlides[currentIdx].style.opacity = 100;
}
});
}, 10);
}
var l = Date.now();
function o() {
var e = {},
t = !0,
i = 0,
n = arguments.length;
"[object Boolean]" === Object.prototype.toString.call(arguments[0]) &&
((t = arguments[0]), i++);
for (
var s = function (i) {
for (var n in i)
Object.prototype.hasOwnProperty.call(i, n) &&
(t && "[object Object]" === Object.prototype.toString.call(i[n])
? (e[n] = o(!0, e[n], i[n]))
: (e[n] = i[n]));
};
i < n;
i++
) {
var l = arguments[i];
s(l);
}
return e;
}
function r(e, t) {
if (
((E(e) || e === window || e === document) && (e = [e]),
L(e) || I(e) || (e = [e]),
0 != M(e))
)
if (L(e) && !I(e))
for (
var i = e.length, n = 0;
n < i && !1 !== t.call(e[n], e[n], n, e);
n++
);
else if (I(e))
for (var s in e) if (P(e, s) && !1 === t.call(e[s], e[s], s, e)) break;
}
function a(e) {
var t =
arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : null,
i = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : null,
n = (e[l] = e[l] || []),
s = { all: n, evt: null, found: null };
return (
t &&
i &&
M(n) > 0 &&
r(n, function (e, n) {
if (e.eventName == t && e.fn.toString() == i.toString())
return (s.found = !0), (s.evt = n), !1;
}),
s
);
}
function h(e) {
var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},
i = t.onElement,
n = t.withCallback,
s = t.avoidDuplicate,
l = void 0 === s || s,
o = t.once,
h = void 0 !== o && o,
d = t.useCapture,
c = void 0 !== d && d,
u = arguments.length > 2 ? arguments[2] : void 0,
g = i || [];
function v(e) {
C(n) && n.call(u, e, this), h && v.destroy();
}
return (
k(g) && (g = document.querySelectorAll(g)),
(v.destroy = function () {
r(g, function (t) {
var i = a(t, e, v);
i.found && i.all.splice(i.evt, 1),
t.removeEventListener && t.removeEventListener(e, v, c);
});
}),
r(g, function (t) {
var i = a(t, e, v);
((t.addEventListener && l && !i.found) || !l) &&
(t.addEventListener(e, v, c), i.all.push({ eventName: e, fn: v }));
}),
v
);
}
function d(e, t) {
r(t.split(" "), function (t) {
return e.classList.add(t);
});
}
function c(e, t) {
r(t.split(" "), function (t) {
return e.classList.remove(t);
});
}
function u(e, t) {
return e.classList.contains(t);
}
function g(e, t) {
for (; e !== document.body; ) {
if (!(e = e.parentElement)) return !1;
if (
"function" == typeof e.matches ? e.matches(t) : e.msMatchesSelector(t)
)
return e;
}
}
function v(e) {
var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "",
i = arguments.length > 2 && void 0 !== arguments[2] && arguments[2];
if (!e || "" === t) return !1;
if ("none" === t) return C(i) && i(), !1;
var n = b(),
s = t.split(" ");
r(s, function (t) {
d(e, "g" + t);
}),
h(n, {
onElement: e,
avoidDuplicate: !1,
once: !0,
withCallback: function (e, t) {
r(s, function (e) {
c(t, "g" + e);
}),
C(i) && i();
},
});
}
function f(e) {
var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "";
if ("" === t)
return (
(e.style.webkitTransform = ""),
(e.style.MozTransform = ""),
(e.style.msTransform = ""),
(e.style.OTransform = ""),
(e.style.transform = ""),
!1
);
(e.style.webkitTransform = t),
(e.style.MozTransform = t),
(e.style.msTransform = t),
(e.style.OTransform = t),
(e.style.transform = t);
}
function p(e) {
e.style.display = "block";
}
function m(e) {
e.style.display = "none";
}
function y(e) {
var t = document.createDocumentFragment(),
i = document.createElement("div");
for (i.innerHTML = e; i.firstChild; ) t.appendChild(i.firstChild);
return t;
}
function x() {
return {
width:
window.innerWidth ||
document.documentElement.clientWidth ||
document.body.clientWidth,
height:
window.innerHeight ||
document.documentElement.clientHeight ||
document.body.clientHeight,
};
}
function b() {
var e,
t = document.createElement("fakeelement"),
i = {
animation: "animationend",
OAnimation: "oAnimationEnd",
MozAnimation: "animationend",
WebkitAnimation: "webkitAnimationEnd",
};
for (e in i) if (void 0 !== t.style[e]) return i[e];
}
function S(e, t, i, n) {
if (e()) t();
else {
var s;
i || (i = 100);
var l = setInterval(function () {
e() && (clearInterval(l), s && clearTimeout(s), t());
}, i);
n &&
(s = setTimeout(function () {
clearInterval(l);
}, n));
}
}
function w(e, t, i) {
if (O(e)) console.error("Inject assets error");
else if ((C(t) && ((i = t), (t = !1)), k(t) && t in window)) C(i) && i();
else {
var n;
if (-1 !== e.indexOf(".css")) {
if (
(n = document.querySelectorAll('link[href="' + e + '"]')) &&
n.length > 0
)
return void (C(i) && i());
var s = document.getElementsByTagName("head")[0],
l = s.querySelectorAll('link[rel="stylesheet"]'),
o = document.createElement("link");
return (
(o.rel = "stylesheet"),
(o.type = "text/css"),
(o.href = e),
(o.media = "all"),
l ? s.insertBefore(o, l[0]) : s.appendChild(o),
void (C(i) && i())
);
}
if (
(n = document.querySelectorAll('script[src="' + e + '"]')) &&
n.length > 0
) {
if (C(i)) {
if (k(t))
return (
S(
function () {
return void 0 !== window[t];
},
function () {
i();
}
),
!1
);
i();
}
} else {
var r = document.createElement("script");
(r.type = "text/javascript"),
(r.src = e),
(r.onload = function () {
if (C(i)) {
if (k(t))
return (
S(
function () {
return void 0 !== window[t];
},
function () {
i();
}
),
!1
);
i();
}
}),
document.body.appendChild(r);
}
}
}
function T() {
return (
"navigator" in window &&
window.navigator.userAgent.match(
/(iPad)|(iPhone)|(iPod)|(Android)|(PlayBook)|(BB10)|(BlackBerry)|(Opera Mini)|(IEMobile)|(webOS)|(MeeGo)/i
)
);
}
function C(e) {
return "function" == typeof e;
}
function k(e) {
return "string" == typeof e;
}
function E(e) {
return !(!e || !e.nodeType || 1 != e.nodeType);
}
function A(e) {
return Array.isArray(e);
}
function L(e) {
return e && e.length && isFinite(e.length);
}
function I(e) {
return "object" === t(e) && null != e && !C(e) && !A(e);
}
function O(e) {
return null == e;
}
function P(e, t) {
return null !== e && hasOwnProperty.call(e, t);
}
function M(e) {
if (I(e)) {
if (e.keys) return e.keys().length;
var t = 0;
for (var i in e) P(e, i) && t++;
return t;
}
return e.length;
}
function z(e) {
return !isNaN(parseFloat(e)) && isFinite(e);
}
function X() {
var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : -1,
t = document.querySelectorAll(".gbtn[data-taborder]:not(.disabled)");
if (!t.length) return !1;
if (1 == t.length) return t[0];
"string" == typeof e && (e = parseInt(e));
var i = [];
r(t, function (e) {
i.push(e.getAttribute("data-taborder"));
});
var n = Math.max.apply(
Math,
i.map(function (e) {
return parseInt(e);
})
),
s = e < 0 ? 1 : e + 1;
s > n && (s = "1");
var l = i.filter(function (e) {
return e >= parseInt(s);
}),
o = l.sort()[0];
return document.querySelector('.gbtn[data-taborder="'.concat(o, '"]'));
}
function Y(e) {
if (e.events.hasOwnProperty("keyboard")) return !1;
e.events.keyboard = h("keydown", {
onElement: window,
withCallback: function (t, i) {
var n = (t = t || window.event).keyCode;
if (9 == n) {
var s = document.querySelector(".gbtn.focused");
if (!s) {
var l =
!(!document.activeElement || !document.activeElement.nodeName) &&
document.activeElement.nodeName.toLocaleLowerCase();
if ("input" == l || "textarea" == l || "button" == l) return;
}
t.preventDefault();
var o = document.querySelectorAll(".gbtn[data-taborder]");
if (!o || o.length <= 0) return;
if (!s) {
var r = X();
return void (r && (r.focus(), d(r, "focused")));
}
var a = X(s.getAttribute("data-taborder"));
c(s, "focused"), a && (a.focus(), d(a, "focused"));
}
39 == n && e.nextSlide(),
37 == n && e.prevSlide(),
27 == n && e.close();
},
});
}
var q = s(
function e(t, n) {
var s = this,
l =
arguments.length > 2 && void 0 !== arguments[2]
? arguments[2]
: null;
if (
(i(this, e),
(this.img = t),
(this.slide = n),
(this.onclose = l),
this.img.setZoomEvents)
)
return !1;
(this.active = !1),
(this.zoomedIn = !1),
(this.dragging = !1),
(this.currentX = null),
(this.currentY = null),
(this.initialX = null),
(this.initialY = null),
(this.xOffset = 0),
(this.yOffset = 0),
this.img.addEventListener(
"mousedown",
function (e) {
return s.dragStart(e);
},
!1
),
this.img.addEventListener(
"mouseup",
function (e) {
return s.dragEnd(e);
},
!1
),
this.img.addEventListener(
"mousemove",
function (e) {
return s.drag(e);
},
!1
),
this.img.addEventListener(
"click",
function (e) {
return s.slide.classList.contains("dragging-nav")
? (s.zoomOut(), !1)
: s.zoomedIn
? void (s.zoomedIn && !s.dragging && s.zoomOut())
: s.zoomIn();
},
!1
),
(this.img.setZoomEvents = !0);
},
[
{
key: "zoomIn",
value: function () {
var e = this.widowWidth();
if (!(this.zoomedIn || e <= 768)) {
var t = this.img;
if (
(t.setAttribute("data-style", t.getAttribute("style")),
(t.style.maxWidth = t.naturalWidth + "px"),
(t.style.maxHeight = t.naturalHeight + "px"),
t.naturalWidth > e)
) {
var i = e / 2 - t.naturalWidth / 2;
this.setTranslate(this.img.parentNode, i, 0);
}
this.slide.classList.add("zoomed"), (this.zoomedIn = !0);
}
},
},
{
key: "zoomOut",
value: function () {
this.img.parentNode.setAttribute("style", ""),
this.img.setAttribute(
"style",
this.img.getAttribute("data-style")
),
this.slide.classList.remove("zoomed"),
(this.zoomedIn = !1),
(this.currentX = null),
(this.currentY = null),
(this.initialX = null),
(this.initialY = null),
(this.xOffset = 0),
(this.yOffset = 0),
this.onclose &&
"function" == typeof this.onclose &&
this.onclose();
},
},
{
key: "dragStart",
value: function (e) {
e.preventDefault(),
this.zoomedIn
? ("touchstart" === e.type
? ((this.initialX = e.touches[0].clientX - this.xOffset),
(this.initialY = e.touches[0].clientY - this.yOffset))
: ((this.initialX = e.clientX - this.xOffset),
(this.initialY = e.clientY - this.yOffset)),
e.target === this.img &&
((this.active = !0), this.img.classList.add("dragging")))
: (this.active = !1);
},
},
{
key: "dragEnd",
value: function (e) {
var t = this;
e.preventDefault(),
(this.initialX = this.currentX),
(this.initialY = this.currentY),
(this.active = !1),
setTimeout(function () {
(t.dragging = !1),
(t.img.isDragging = !1),
t.img.classList.remove("dragging");
}, 100);
},
},
{
key: "drag",
value: function (e) {
this.active &&
(e.preventDefault(),
"touchmove" === e.type
? ((this.currentX = e.touches[0].clientX - this.initialX),
(this.currentY = e.touches[0].clientY - this.initialY))
: ((this.currentX = e.clientX - this.initialX),
(this.currentY = e.clientY - this.initialY)),
(this.xOffset = this.currentX),
(this.yOffset = this.currentY),
(this.img.isDragging = !0),
(this.dragging = !0),
this.setTranslate(this.img, this.currentX, this.currentY));
},
},
{
key: "onMove",
value: function (e) {
if (this.zoomedIn) {
var t = e.clientX - this.img.naturalWidth / 2,
i = e.clientY - this.img.naturalHeight / 2;
this.setTranslate(this.img, t, i);
}
},
},
{
key: "setTranslate",
value: function (e, t, i) {
e.style.transform = "translate3d(" + t + "px, " + i + "px, 0)";
},
},
{
key: "widowWidth",
value: function () {
return (
window.innerWidth ||
document.documentElement.clientWidth ||
document.body.clientWidth
);
},
},
]
),
N = s(
function e() {
var t = this,
n =
arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
i(this, e);
var s = n.dragEl,
l = n.toleranceX,
o = void 0 === l ? 40 : l,
r = n.toleranceY,
a = void 0 === r ? 65 : r,
h = n.slide,
d = void 0 === h ? null : h,
c = n.instance,
u = void 0 === c ? null : c;
(this.el = s),
(this.active = !1),
(this.dragging = !1),
(this.currentX = null),
(this.currentY = null),
(this.initialX = null),
(this.initialY = null),
(this.xOffset = 0),
(this.yOffset = 0),
(this.direction = null),
(this.lastDirection = null),
(this.toleranceX = o),
(this.toleranceY = a),
(this.toleranceReached = !1),
(this.dragContainer = this.el),
(this.slide = d),
(this.instance = u),
this.el.addEventListener(
"mousedown",
function (e) {
return t.dragStart(e);
},
!1
),
this.el.addEventListener(
"mouseup",
function (e) {
return t.dragEnd(e);
},
!1
),
this.el.addEventListener(
"mousemove",
function (e) {
return t.drag(e);
},
!1
);
},
[
{
key: "dragStart",
value: function (e) {
if (this.slide.classList.contains("zoomed")) this.active = !1;
else {
"touchstart" === e.type
? ((this.initialX = e.touches[0].clientX - this.xOffset),
(this.initialY = e.touches[0].clientY - this.yOffset))
: ((this.initialX = e.clientX - this.xOffset),
(this.initialY = e.clientY - this.yOffset));
var t = e.target.nodeName.toLowerCase();
e.target.classList.contains("nodrag") ||
g(e.target, ".nodrag") ||
-1 !== ["input", "select", "textarea", "button", "a"].indexOf(t)
? (this.active = !1)
: (e.preventDefault(),
(e.target === this.el ||
("img" !== t && g(e.target, ".gslide-inline"))) &&
((this.active = !0),
this.el.classList.add("dragging"),
(this.dragContainer = g(e.target, ".ginner-container"))));
}
},
},
{
key: "dragEnd",
value: function (e) {
var t = this;
e && e.preventDefault(),
(this.initialX = 0),
(this.initialY = 0),
(this.currentX = null),
(this.currentY = null),
(this.initialX = null),
(this.initialY = null),
(this.xOffset = 0),
(this.yOffset = 0),
(this.active = !1),
this.doSlideChange &&
((this.instance.preventOutsideClick = !0),
"right" == this.doSlideChange && this.instance.prevSlide(),
"left" == this.doSlideChange && this.instance.nextSlide()),
this.doSlideClose && this.instance.close(),
this.toleranceReached ||
this.setTranslate(this.dragContainer, 0, 0, !0),
setTimeout(function () {
(t.instance.preventOutsideClick = !1),
(t.toleranceReached = !1),
(t.lastDirection = null),
(t.dragging = !1),
(t.el.isDragging = !1),
t.el.classList.remove("dragging"),
t.slide.classList.remove("dragging-nav"),
(t.dragContainer.style.transform = ""),
(t.dragContainer.style.transition = "");
}, 100);
},
},
{
key: "drag",
value: function (e) {
if (this.active) {
e.preventDefault(),
this.slide.classList.add("dragging-nav"),
"touchmove" === e.type
? ((this.currentX = e.touches[0].clientX - this.initialX),
(this.currentY = e.touches[0].clientY - this.initialY))
: ((this.currentX = e.clientX - this.initialX),
(this.currentY = e.clientY - this.initialY)),
(this.xOffset = this.currentX),
(this.yOffset = this.currentY),
(this.el.isDragging = !0),
(this.dragging = !0),
(this.doSlideChange = !1),
(this.doSlideClose = !1);
var t = Math.abs(this.currentX),
i = Math.abs(this.currentY);
if (
t > 0 &&
t >= Math.abs(this.currentY) &&
(!this.lastDirection || "x" == this.lastDirection)
) {
(this.yOffset = 0),
(this.lastDirection = "x"),
this.setTranslate(this.dragContainer, this.currentX, 0);
var n = this.shouldChange();
if (
(!this.instance.settings.dragAutoSnap &&
n &&
(this.doSlideChange = n),
this.instance.settings.dragAutoSnap && n)
)
return (
(this.instance.preventOutsideClick = !0),
(this.toleranceReached = !0),
(this.active = !1),
(this.instance.preventOutsideClick = !0),
this.dragEnd(null),
"right" == n && this.instance.prevSlide(),
void ("left" == n && this.instance.nextSlide())
);
}
if (
this.toleranceY > 0 &&
i > 0 &&
i >= t &&
(!this.lastDirection || "y" == this.lastDirection)
) {
(this.xOffset = 0),
(this.lastDirection = "y"),
this.setTranslate(this.dragContainer, 0, this.currentY);
var s = this.shouldClose();
return (
!this.instance.settings.dragAutoSnap &&
s &&
(this.doSlideClose = !0),
void (
this.instance.settings.dragAutoSnap &&
s &&
this.instance.close()
)
);
}
}
},
},
{
key: "shouldChange",
value: function () {
var e = !1;
if (Math.abs(this.currentX) >= this.toleranceX) {
var t = this.currentX > 0 ? "right" : "left";
(("left" == t &&
this.slide !== this.slide.parentNode.lastChild) ||
("right" == t &&
this.slide !== this.slide.parentNode.firstChild)) &&
(e = t);
}
return e;
},
},
{
key: "shouldClose",
value: function () {
var e = !1;
return Math.abs(this.currentY) >= this.toleranceY && (e = !0), e;
},
},
{
key: "setTranslate",
value: function (e, t, i) {
var n =
arguments.length > 3 && void 0 !== arguments[3] && arguments[3];
(e.style.transition = n ? "all .2s ease" : ""),
(e.style.transform = "translate3d("
.concat(t, "px, ")
.concat(i, "px, 0)"));
},
},
]
);
function D(e, t, i, n) {
var s = e.querySelector(".gslide-media"),
l = new Image(),
o = "gSlideTitle_" + i,
r = "gSlideDesc_" + i;
l.addEventListener(
"load",
function () {
C(n) && n();
},
!1
),
(l.src = t.href),
"" != t.sizes &&
"" != t.srcset &&
((l.sizes = t.sizes), (l.srcset = t.srcset)),
(l.alt = ""),
O(t.alt) || "" === t.alt || (l.alt = t.alt),
"" !== t.title && l.setAttribute("aria-labelledby", o),
"" !== t.description && l.setAttribute("aria-describedby", r),
t.hasOwnProperty("_hasCustomWidth") &&
t._hasCustomWidth &&
(l.style.width = t.width),
t.hasOwnProperty("_hasCustomHeight") &&
t._hasCustomHeight &&
(l.style.height = t.height),
s.insertBefore(l, s.firstChild);
}
function _(e, t, i, n) {
var s = this,
l = e.querySelector(".ginner-container"),
o = "gvideo" + i,
r = e.querySelector(".gslide-media"),
a = this.getAllPlayers();
d(l, "gvideo-container"),
r.insertBefore(y('<div class="gvideo-wrapper"></div>'), r.firstChild);
var h = e.querySelector(".gvideo-wrapper");
w(this.settings.plyr.css, "Plyr");
var c = t.href,
u = null == t ? void 0 : t.videoProvider,
g = !1;
(r.style.maxWidth = t.width),
w(this.settings.plyr.js, "Plyr", function () {
if (
(!u && c.match(/vimeo\.com\/([0-9]*)/) && (u = "vimeo"),
!u &&
(c.match(
/(youtube\.com|youtube-nocookie\.com)\/watch\?v=([a-zA-Z0-9\-_]+)/
) ||
c.match(/youtu\.be\/([a-zA-Z0-9\-_]+)/) ||
c.match(
/(youtube\.com|youtube-nocookie\.com)\/embed\/([a-zA-Z0-9\-_]+)/
) ||
c.match(
/(youtube\.com|youtube-nocookie\.com)\/shorts\/([a-zA-Z0-9\-_]+)/
)) &&
(u = "youtube"),
"local" === u || !u)
) {
u = "local";
var l = '<video id="' + o + '" ';
(l += 'style="background:#000; max-width: '.concat(t.width, ';" ')),
(l += 'preload="metadata" '),
(l += 'x-webkit-airplay="allow" '),
(l += "playsinline "),
(l += "controls "),
(l += 'class="gvideo-local">'),
(l += '<source src="'.concat(c, '">')),
(g = y((l += "</video>")));
}
var r =
g ||
y(
'<div id="'
.concat(o, '" data-plyr-provider="')
.concat(u, '" data-plyr-embed-id="')
.concat(c, '"></div>')
);
d(h, "".concat(u, "-video gvideo")),
h.appendChild(r),
h.setAttribute("data-id", o),
h.setAttribute("data-index", i);
var v = P(s.settings.plyr, "config") ? s.settings.plyr.config : {},
f = new Plyr("#" + o, v);
f.on("ready", function (e) {
(a[o] = e.detail.plyr), C(n) && n();
}),
S(
function () {
return (
e.querySelector("iframe") &&
"true" == e.querySelector("iframe").dataset.ready
);
},
function () {
s.resize(e);
}
),
f.on("enterfullscreen", W),
f.on("exitfullscreen", W);
});
}
function W(e) {
var t = g(e.target, ".gslide-media");
"enterfullscreen" === e.type && d(t, "fullscreen"),
"exitfullscreen" === e.type && c(t, "fullscreen");
}
function B(e, t, i, n) {
var s,
l = this,
o = e.querySelector(".gslide-media"),
r = !(!P(t, "href") || !t.href) && t.href.split("#").pop().trim(),
a = !(!P(t, "content") || !t.content) && t.content;
if (
a &&
(k(a) && (s = y('<div class="ginlined-content">'.concat(a, "</div>"))),
E(a))
) {
"none" == a.style.display && (a.style.display = "block");
var c = document.createElement("div");
(c.className = "ginlined-content"), c.appendChild(a), (s = c);
}
if (r) {
var u = document.getElementById(r);
if (!u) return !1;
var g = u.cloneNode(!0);
(g.style.height = t.height),
(g.style.maxWidth = t.width),
d(g, "ginlined-content"),
(s = g);
}
if (!s)
return console.error("Unable to append inline slide content", t), !1;
(o.style.height = t.height),
(o.style.width = t.width),
o.appendChild(s),
(this.events["inlineclose" + r] = h("click", {
onElement: o.querySelectorAll(".gtrigger-close"),
withCallback: function (e) {
e.preventDefault(), l.close();
},
})),
C(n) && n();
}
function H(e, t, i, n) {
var s = e.querySelector(".gslide-media"),
l = (function (e) {
var t = e.url,
i = e.allow,
n = e.callback,
s = e.appendTo,
l = document.createElement("iframe");
return (
(l.className = "vimeo-video gvideo"),
(l.src = t),
(l.style.width = "100%"),
(l.style.height = "100%"),
i && l.setAttribute("allow", i),
(l.onload = function () {
(l.onload = null), d(l, "node-ready"), C(n) && n();
}),
s && s.appendChild(l),
l
);
})({ url: t.href, callback: n });
(s.parentNode.style.maxWidth = t.width),
(s.parentNode.style.height = t.height),
s.appendChild(l);
}
var j = s(
function e() {
var t =
arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
i(this, e),
(this.defaults = {
href: "",
sizes: "",
srcset: "",
title: "",
type: "",
videoProvider: "",
description: "",
alt: "",
descPosition: "bottom",
effect: "",
width: "",
height: "",
content: !1,
zoomable: !0,
draggable: !0,
}),
I(t) && (this.defaults = o(this.defaults, t));
},
[
{
key: "sourceType",
value: function (e) {
var t = e;
return null !==
(e = e.toLowerCase()).match(
/\.(jpeg|jpg|jpe|gif|png|apn|webp|avif|svg)/
)
? "image"
: e.match(
/(youtube\.com|youtube-nocookie\.com)\/watch\?v=([a-zA-Z0-9\-_]+)/
) ||
e.match(/youtu\.be\/([a-zA-Z0-9\-_]+)/) ||
e.match(
/(youtube\.com|youtube-nocookie\.com)\/embed\/([a-zA-Z0-9\-_]+)/
) ||
e.match(
/(youtube\.com|youtube-nocookie\.com)\/shorts\/([a-zA-Z0-9\-_]+)/
) ||
e.match(/vimeo\.com\/([0-9]*)/) ||
null !== e.match(/\.(mp4|ogg|webm|mov)/)
? "video"
: null !== e.match(/\.(mp3|wav|wma|aac|ogg)/)
? "audio"
: e.indexOf("#") > -1 && "" !== t.split("#").pop().trim()
? "inline"
: e.indexOf("goajax=true") > -1
? "ajax"
: "external";
},
},
{
key: "parseConfig",
value: function (e, t) {
var i = this,
n = o({ descPosition: t.descPosition }, this.defaults);
if (I(e) && !E(e)) {
P(e, "type") ||
(P(e, "content") && e.content
? (e.type = "inline")
: P(e, "href") && (e.type = this.sourceType(e.href)));
var s = o(n, e);
return this.setSize(s, t), s;
}
var l = "",
a = e.getAttribute("data-glightbox"),
h = e.nodeName.toLowerCase();
if (
("a" === h && (l = e.href),
"img" === h && ((l = e.src), (n.alt = e.alt)),
(n.href = l),
r(n, function (s, l) {
P(t, l) && "width" !== l && (n[l] = t[l]);
var o = e.dataset[l];
O(o) || (n[l] = i.sanitizeValue(o));
}),
n.content && (n.type = "inline"),
!n.type && l && (n.type = this.sourceType(l)),
O(a))
) {
if (!n.title && "a" == h) {
var d = e.title;
O(d) || "" === d || (n.title = d);
}
if (!n.title && "img" == h) {
var c = e.alt;
O(c) || "" === c || (n.title = c);
}
} else {
var u = [];
r(n, function (e, t) {
u.push(";\\s?" + t);
}),
(u = u.join("\\s?:|")),
"" !== a.trim() &&
r(n, function (e, t) {
var s = a,
l = new RegExp("s?" + t + "s?:s?(.*?)(" + u + "s?:|$)"),
o = s.match(l);
if (o && o.length && o[1]) {
var r = o[1].trim().replace(/;\s*$/, "");
n[t] = i.sanitizeValue(r);
}
});
}
if (n.description && "." === n.description.substring(0, 1)) {
var g;
try {
g = document.querySelector(n.description).innerHTML;
} catch (e) {
if (!(e instanceof DOMException)) throw e;
}
g && (n.description = g);
}
if (!n.description) {
var v = e.querySelector(".glightbox-desc");
v && (n.description = v.innerHTML);
}
return this.setSize(n, t, e), (this.slideConfig = n), n;
},
},
{
key: "setSize",
value: function (e, t) {
var i =
arguments.length > 2 && void 0 !== arguments[2]
? arguments[2]
: null,
n =
"video" == e.type
? this.checkSize(t.videosWidth)
: this.checkSize(t.width),
s = this.checkSize(t.height);
return (
(e.width =
P(e, "width") && "" !== e.width ? this.checkSize(e.width) : n),
(e.height =
P(e, "height") && "" !== e.height
? this.checkSize(e.height)
: s),
i &&
"image" == e.type &&
((e._hasCustomWidth = !!i.dataset.width),
(e._hasCustomHeight = !!i.dataset.height)),
e
);
},
},
{
key: "checkSize",
value: function (e) {
return z(e) ? "".concat(e, "px") : e;
},
},
{
key: "sanitizeValue",
value: function (e) {
return "true" !== e && "false" !== e ? e : "true" === e;
},
},
]
),
V = s(
function e(t, n, s) {
i(this, e), (this.element = t), (this.instance = n), (this.index = s);
},
[
{
key: "setContent",
value: function () {
var e = this,
t =
arguments.length > 0 && void 0 !== arguments[0]
? arguments[0]
: null,
i =
arguments.length > 1 && void 0 !== arguments[1] && arguments[1];
if (u(t, "loaded")) return !1;
var n = this.instance.settings,
s = this.slideConfig,
l = T();
C(n.beforeSlideLoad) &&
n.beforeSlideLoad({ index: this.index, slide: t, player: !1 });
var o = s.type,
r = s.descPosition,
a = t.querySelector(".gslide-media"),
h = t.querySelector(".gslide-title"),
c = t.querySelector(".gslide-desc"),
g = t.querySelector(".gdesc-inner"),
v = i,
f = "gSlideTitle_" + this.index,
p = "gSlideDesc_" + this.index;
if (
(C(n.afterSlideLoad) &&
(v = function () {
C(i) && i(),
n.afterSlideLoad({
index: e.index,
slide: t,
player: e.instance.getSlidePlayerInstance(e.index),
});
}),
"" == s.title && "" == s.description
? g && g.parentNode.parentNode.removeChild(g.parentNode)
: (h && "" !== s.title
? ((h.id = f), (h.innerHTML = s.title))
: h.parentNode.removeChild(h),
c && "" !== s.description
? ((c.id = p),
l && n.moreLength > 0
? ((s.smallDescription = this.slideShortDesc(
s.description,
n.moreLength,
n.moreText
)),
(c.innerHTML = s.smallDescription),
this.descriptionEvents(c, s))
: (c.innerHTML = s.description))
: c.parentNode.removeChild(c),
d(a.parentNode, "desc-".concat(r)),
d(g.parentNode, "description-".concat(r))),
d(a, "gslide-".concat(o)),
d(t, "loaded"),
"video" !== o)
) {
if ("external" !== o)
return "inline" === o
? (B.apply(this.instance, [t, s, this.index, v]),
void (
s.draggable &&
new N({
dragEl: t.querySelector(".gslide-inline"),
toleranceX: n.dragToleranceX,
toleranceY: n.dragToleranceY,
slide: t,
instance: this.instance,
})
))
: void ("image" !== o
? C(v) && v()
: D(t, s, this.index, function () {
var i = t.querySelector("img");
s.draggable &&
new N({
dragEl: i,
toleranceX: n.dragToleranceX,
toleranceY: n.dragToleranceY,
slide: t,
instance: e.instance,
}),
s.zoomable &&
i.naturalWidth > i.offsetWidth &&
(d(i, "zoomable"),
new q(i, t, function () {
e.instance.resize();
})),
C(v) && v();
}));
H.apply(this, [t, s, this.index, v]);
} else _.apply(this.instance, [t, s, this.index, v]);
},
},
{
key: "slideShortDesc",
value: function (e) {
var t =
arguments.length > 1 && void 0 !== arguments[1]
? arguments[1]
: 50,
i =
arguments.length > 2 && void 0 !== arguments[2] && arguments[2],
n = document.createElement("div");
n.innerHTML = e;
var s = n.innerText,
l = i;
if ((e = s.trim()).length <= t) return e;
var o = e.substr(0, t - 1);
return l
? ((n = null),
o + '... <a href="#" class="desc-more">' + i + "</a>")
: o;
},
},
{
key: "descriptionEvents",
value: function (e, t) {
var i = this,
n = e.querySelector(".desc-more");
if (!n) return !1;
h("click", {
onElement: n,
withCallback: function (e, n) {
e.preventDefault();
var s = document.body,
l = g(n, ".gslide-desc");
if (!l) return !1;
(l.innerHTML = t.description), d(s, "gdesc-open");
var o = h("click", {
onElement: [s, g(l, ".gslide-description")],
withCallback: function (e, n) {
"a" !== e.target.nodeName.toLowerCase() &&
(c(s, "gdesc-open"),
d(s, "gdesc-closed"),
(l.innerHTML = t.smallDescription),
i.descriptionEvents(l, t),
setTimeout(function () {
c(s, "gdesc-closed");
}, 400),
o.destroy());
},
});
},
});
},
},
{
key: "create",
value: function () {
return y(this.instance.settings.slideHTML);
},
},
{
key: "getConfig",
value: function () {
E(this.element) ||
this.element.hasOwnProperty("draggable") ||
(this.element.draggable = this.instance.settings.draggable);
var e = new j(this.instance.settings.slideExtraAttributes);
return (
(this.slideConfig = e.parseConfig(
this.element,
this.instance.settings
)),
this.slideConfig
);
},
},
]
);
function F(e) {
return Math.sqrt(e.x * e.x + e.y * e.y);
}
function R(e, t) {
var i = (function (e, t) {
var i = F(e) * F(t);
if (0 === i) return 0;
var n =
(function (e, t) {
return e.x * t.x + e.y * t.y;
})(e, t) / i;
return n > 1 && (n = 1), Math.acos(n);
})(e, t);
return (
(function (e, t) {
return e.x * t.y - t.x * e.y;
})(e, t) > 0 && (i *= -1),
(180 * i) / Math.PI
);
}
var G = s(
function e(t) {
i(this, e), (this.handlers = []), (this.el = t);
},
[
{
key: "add",
value: function (e) {
this.handlers.push(e);
},
},
{
key: "del",
value: function (e) {
e || (this.handlers = []);
for (var t = this.handlers.length; t >= 0; t--)
this.handlers[t] === e && this.handlers.splice(t, 1);
},
},
{
key: "dispatch",
value: function () {
for (var e = 0, t = this.handlers.length; e < t; e++) {
var i = this.handlers[e];
"function" == typeof i && i.apply(this.el, arguments);
}
},
},
]
);
function Z(e, t) {
var i = new G(e);
return i.add(t), i;
}
var U = s(
function e(t, n) {
i(this, e),
(this.element = "string" == typeof t ? document.querySelector(t) : t),
(this.start = this.start.bind(this)),
(this.move = this.move.bind(this)),
(this.end = this.end.bind(this)),
(this.cancel = this.cancel.bind(this)),
this.element.addEventListener("touchstart", this.start, !1),
this.element.addEventListener("touchmove", this.move, !1),
this.element.addEventListener("touchend", this.end, !1),
this.element.addEventListener("touchcancel", this.cancel, !1),
(this.preV = { x: null, y: null }),
(this.pinchStartLen = null),
(this.zoom = 1),
(this.isDoubleTap = !1);
var s = function () {};
(this.rotate = Z(this.element, n.rotate || s)),
(this.touchStart = Z(this.element, n.touchStart || s)),
(this.multipointStart = Z(this.element, n.multipointStart || s)),
(this.multipointEnd = Z(this.element, n.multipointEnd || s)),
(this.pinch = Z(this.element, n.pinch || s)),
(this.swipe = Z(this.element, n.swipe || s)),
(this.tap = Z(this.element, n.tap || s)),
(this.doubleTap = Z(this.element, n.doubleTap || s)),
(this.longTap = Z(this.element, n.longTap || s)),
(this.singleTap = Z(this.element, n.singleTap || s)),
(this.pressMove = Z(this.element, n.pressMove || s)),
(this.twoFingerPressMove = Z(this.element, n.twoFingerPressMove || s)),
(this.touchMove = Z(this.element, n.touchMove || s)),
(this.touchEnd = Z(this.element, n.touchEnd || s)),
(this.touchCancel = Z(this.element, n.touchCancel || s)),
(this.translateContainer = this.element),
(this._cancelAllHandler = this.cancelAll.bind(this)),
window.addEventListener("scroll", this._cancelAllHandler),
(this.delta = null),
(this.last = null),
(this.now = null),
(this.tapTimeout = null),
(this.singleTapTimeout = null),
(this.longTapTimeout = null),
(this.swipeTimeout = null),
(this.x1 = this.x2 = this.y1 = this.y2 = null),
(this.preTapPosition = { x: null, y: null });
},
[
{
key: "start",
value: function (e) {
if (e.touches)
if (
e.target &&
e.target.nodeName &&
["a", "button", "input"].indexOf(
e.target.nodeName.toLowerCase()
) >= 0
)
console.log(
"ignore drag for this touched element",
e.target.nodeName.toLowerCase()
);
else {
(this.now = Date.now()),
(this.x1 = e.touches[0].pageX),
(this.y1 = e.touches[0].pageY),
(this.delta = this.now - (this.last || this.now)),
this.touchStart.dispatch(e, this.element),
null !== this.preTapPosition.x &&
((this.isDoubleTap =
this.delta > 0 &&
this.delta <= 250 &&
Math.abs(this.preTapPosition.x - this.x1) < 30 &&
Math.abs(this.preTapPosition.y - this.y1) < 30),
this.isDoubleTap && clearTimeout(this.singleTapTimeout)),
(this.preTapPosition.x = this.x1),
(this.preTapPosition.y = this.y1),
(this.last = this.now);
var t = this.preV;
if (e.touches.length > 1) {
this._cancelLongTap(), this._cancelSingleTap();
var i = {
x: e.touches[1].pageX - this.x1,
y: e.touches[1].pageY - this.y1,
};
(t.x = i.x),
(t.y = i.y),
(this.pinchStartLen = F(t)),
this.multipointStart.dispatch(e, this.element);
}
(this._preventTap = !1),
(this.longTapTimeout = setTimeout(
function () {
this.longTap.dispatch(e, this.element),
(this._preventTap = !0);
}.bind(this),
750
));
}
},
},
{
key: "move",
value: function (e) {
if (e.touches) {
var t = this.preV,
i = e.touches.length,
n = e.touches[0].pageX,
s = e.touches[0].pageY;
if (((this.isDoubleTap = !1), i > 1)) {
var l = e.touches[1].pageX,
o = e.touches[1].pageY,
r = { x: e.touches[1].pageX - n, y: e.touches[1].pageY - s };
null !== t.x &&
(this.pinchStartLen > 0 &&
((e.zoom = F(r) / this.pinchStartLen),
this.pinch.dispatch(e, this.element)),
(e.angle = R(r, t)),
this.rotate.dispatch(e, this.element)),
(t.x = r.x),
(t.y = r.y),
null !== this.x2 && null !== this.sx2
? ((e.deltaX = (n - this.x2 + l - this.sx2) / 2),
(e.deltaY = (s - this.y2 + o - this.sy2) / 2))
: ((e.deltaX = 0), (e.deltaY = 0)),
this.twoFingerPressMove.dispatch(e, this.element),
(this.sx2 = l),
(this.sy2 = o);
} else {
if (null !== this.x2) {
(e.deltaX = n - this.x2), (e.deltaY = s - this.y2);
var a = Math.abs(this.x1 - this.x2),
h = Math.abs(this.y1 - this.y2);
(a > 10 || h > 10) && (this._preventTap = !0);
} else (e.deltaX = 0), (e.deltaY = 0);
this.pressMove.dispatch(e, this.element);
}
this.touchMove.dispatch(e, this.element),
this._cancelLongTap(),
(this.x2 = n),
(this.y2 = s),
i > 1 && e.preventDefault();
}
},
},
{
key: "end",
value: function (e) {
if (e.changedTouches) {
this._cancelLongTap();
var t = this;
e.touches.length < 2 &&
(this.multipointEnd.dispatch(e, this.element),
(this.sx2 = this.sy2 = null)),
(this.x2 && Math.abs(this.x1 - this.x2) > 30) ||
(this.y2 && Math.abs(this.y1 - this.y2) > 30)
? ((e.direction = this._swipeDirection(
this.x1,
this.x2,
this.y1,
this.y2
)),
(this.swipeTimeout = setTimeout(function () {
t.swipe.dispatch(e, t.element);
}, 0)))
: ((this.tapTimeout = setTimeout(function () {
t._preventTap || t.tap.dispatch(e, t.element),
t.isDoubleTap &&
(t.doubleTap.dispatch(e, t.element),
(t.isDoubleTap = !1));
}, 0)),
t.isDoubleTap ||
(t.singleTapTimeout = setTimeout(function () {
t.singleTap.dispatch(e, t.element);
}, 250))),
this.touchEnd.dispatch(e, this.element),
(this.preV.x = 0),
(this.preV.y = 0),
(this.zoom = 1),
(this.pinchStartLen = null),
(this.x1 = this.x2 = this.y1 = this.y2 = null);
}
},
},
{
key: "cancelAll",
value: function () {
(this._preventTap = !0),
clearTimeout(this.singleTapTimeout),
clearTimeout(this.tapTimeout),
clearTimeout(this.longTapTimeout),
clearTimeout(this.swipeTimeout);
},
},
{
key: "cancel",
value: function (e) {
this.cancelAll(), this.touchCancel.dispatch(e, this.element);
},
},
{
key: "_cancelLongTap",
value: function () {
clearTimeout(this.longTapTimeout);
},
},
{
key: "_cancelSingleTap",
value: function () {
clearTimeout(this.singleTapTimeout);
},
},
{
key: "_swipeDirection",
value: function (e, t, i, n) {
return Math.abs(e - t) >= Math.abs(i - n)
? e - t > 0
? "Left"
: "Right"
: i - n > 0
? "Up"
: "Down";
},
},
{
key: "on",
value: function (e, t) {
this[e] && this[e].add(t);
},
},
{
key: "off",
value: function (e, t) {
this[e] && this[e].del(t);
},
},
{
key: "destroy",
value: function () {
return (
this.singleTapTimeout && clearTimeout(this.singleTapTimeout),
this.tapTimeout && clearTimeout(this.tapTimeout),
this.longTapTimeout && clearTimeout(this.longTapTimeout),
this.swipeTimeout && clearTimeout(this.swipeTimeout),
this.element.removeEventListener("touchstart", this.start),
this.element.removeEventListener("touchmove", this.move),
this.element.removeEventListener("touchend", this.end),
this.element.removeEventListener("touchcancel", this.cancel),
this.rotate.del(),
this.touchStart.del(),
this.multipointStart.del(),
this.multipointEnd.del(),
this.pinch.del(),
this.swipe.del(),
this.tap.del(),
this.doubleTap.del(),
this.longTap.del(),
this.singleTap.del(),
this.pressMove.del(),
this.twoFingerPressMove.del(),
this.touchMove.del(),
this.touchEnd.del(),
this.touchCancel.del(),
(this.preV =
this.pinchStartLen =
this.zoom =
this.isDoubleTap =
this.delta =
this.last =
this.now =
this.tapTimeout =
this.singleTapTimeout =
this.longTapTimeout =
this.swipeTimeout =
this.x1 =
this.x2 =
this.y1 =
this.y2 =
this.preTapPosition =
this.rotate =
this.touchStart =
this.multipointStart =
this.multipointEnd =
this.pinch =
this.swipe =
this.tap =
this.doubleTap =
this.longTap =
this.singleTap =
this.pressMove =
this.touchMove =
this.touchEnd =
this.touchCancel =
this.twoFingerPressMove =
null),
window.removeEventListener("scroll", this._cancelAllHandler),
null
);
},
},
]
);
function $(e) {
var t = (function () {
var e,
t = document.createElement("fakeelement"),
i = {
transition: "transitionend",
OTransition: "oTransitionEnd",
MozTransition: "transitionend",
WebkitTransition: "webkitTransitionEnd",
};
for (e in i) if (void 0 !== t.style[e]) return i[e];
})(),
i =
window.innerWidth ||
document.documentElement.clientWidth ||
document.body.clientWidth,
n = u(e, "gslide-media") ? e : e.querySelector(".gslide-media"),
s = g(n, ".ginner-container"),
l = e.querySelector(".gslide-description");
i > 769 && (n = s),
d(n, "greset"),
f(n, "translate3d(0, 0, 0)"),
h(t, {
onElement: n,
once: !0,
withCallback: function (e, t) {
c(n, "greset");
},
}),
(n.style.opacity = ""),
l && (l.style.opacity = "");
}
function J(e) {
if (e.events.hasOwnProperty("touch")) return !1;
var t,
i,
n,
s = x(),
l = s.width,
o = s.height,
r = !1,
a = null,
h = null,
v = null,
p = !1,
m = 1,
y = 1,
b = !1,
S = !1,
w = null,
T = null,
C = null,
k = null,
E = 0,
A = 0,
L = !1,
I = !1,
O = {},
P = {},
M = 0,
z = 0,
X = document.getElementById("glightbox-slider"),
Y = document.querySelector(".goverlay"),
q = new U(X, {
touchStart: function (t) {
if (
((r = !0),
(u(t.targetTouches[0].target, "ginner-container") ||
g(t.targetTouches[0].target, ".gslide-desc") ||
"a" == t.targetTouches[0].target.nodeName.toLowerCase()) &&
(r = !1),
g(t.targetTouches[0].target, ".gslide-inline") &&
!u(t.targetTouches[0].target.parentNode, "gslide-inline") &&
(r = !1),
r)
) {
if (
((P = t.targetTouches[0]),
(O.pageX = t.targetTouches[0].pageX),
(O.pageY = t.targetTouches[0].pageY),
(M = t.targetTouches[0].clientX),
(z = t.targetTouches[0].clientY),
(a = e.activeSlide),
(h = a.querySelector(".gslide-media")),
(n = a.querySelector(".gslide-inline")),
(v = null),
u(h, "gslide-image") && (v = h.querySelector("img")),
(window.innerWidth ||
document.documentElement.clientWidth ||
document.body.clientWidth) > 769 &&
(h = a.querySelector(".ginner-container")),
c(Y, "greset"),
t.pageX > 20 && t.pageX < window.innerWidth - 20)
)
return;
t.preventDefault();
}
},
touchMove: function (s) {
if (r && ((P = s.targetTouches[0]), !b && !S)) {
if (n && n.offsetHeight > o) {
var a = O.pageX - P.pageX;
if (Math.abs(a) <= 13) return !1;
}
p = !0;
var d,
c = s.targetTouches[0].clientX,
u = s.targetTouches[0].clientY,
g = M - c,
m = z - u;
if (
(Math.abs(g) > Math.abs(m)
? ((L = !1), (I = !0))
: ((I = !1), (L = !0)),
(t = P.pageX - O.pageX),
(E = (100 * t) / l),
(i = P.pageY - O.pageY),
(A = (100 * i) / o),
L &&
v &&
((d = 1 - Math.abs(i) / o),
(Y.style.opacity = d),
e.settings.touchFollowAxis && (E = 0)),
I &&
((d = 1 - Math.abs(t) / l),
(h.style.opacity = d),
e.settings.touchFollowAxis && (A = 0)),
!v)
)
return f(h, "translate3d(".concat(E, "%, 0, 0)"));
f(h, "translate3d(".concat(E, "%, ").concat(A, "%, 0)"));
}
},
touchEnd: function () {
if (r) {
if (((p = !1), S || b)) return (C = w), void (k = T);
var t = Math.abs(parseInt(A)),
i = Math.abs(parseInt(E));
if (!(t > 29 && v))
return t < 29 && i < 25
? (d(Y, "greset"), (Y.style.opacity = 1), $(h))
: void 0;
e.close();
}
},
multipointEnd: function () {
setTimeout(function () {
b = !1;
}, 50);
},
multipointStart: function () {
(b = !0), (m = y || 1);
},
pinch: function (e) {
if (!v || p) return !1;
(b = !0), (v.scaleX = v.scaleY = m * e.zoom);
var t = m * e.zoom;
if (((S = !0), t <= 1))
return (
(S = !1),
(t = 1),
(k = null),
(C = null),
(w = null),
(T = null),
void v.setAttribute("style", "")
);
t > 4.5 && (t = 4.5),
(v.style.transform = "scale3d(".concat(t, ", ").concat(t, ", 1)")),
(y = t);
},
pressMove: function (e) {
if (S && !b) {
var t = P.pageX - O.pageX,
i = P.pageY - O.pageY;
C && (t += C), k && (i += k), (w = t), (T = i);
var n = "translate3d(".concat(t, "px, ").concat(i, "px, 0)");
y && (n += " scale3d(".concat(y, ", ").concat(y, ", 1)")), f(v, n);
}
},
swipe: function (t) {
if (!S)
if (b) b = !1;
else {
if ("Left" == t.direction) {
if (e.index == e.elements.length - 1) return $(h);
e.nextSlide();
}
if ("Right" == t.direction) {
if (0 == e.index) return $(h);
e.prevSlide();
}
}
},
});
e.events.touch = q;
}
var K = T(),
Q =
null !== T() ||
void 0 !== document.createTouch ||
"ontouchstart" in window ||
"onmsgesturechange" in window ||
navigator.msMaxTouchPoints,
ee = document.getElementsByTagName("html")[0],
te = {
selector: ".glightbox",
elements: null,
skin: "clean",
theme: "clean",
closeButton: !0,
startAt: null,
autoplayVideos: !0,
autofocusVideos: !0,
descPosition: "bottom",
width: "900px",
height: "506px",
videosWidth: "960px",
beforeSlideChange: null,
afterSlideChange: null,
beforeSlideLoad: null,
afterSlideLoad: null,
slideInserted: null,
slideRemoved: null,
slideExtraAttributes: null,
onOpen: null,
onClose: null,
loop: !1,
zoomable: !0,
draggable: !0,
dragAutoSnap: !1,
dragToleranceX: 40,
dragToleranceY: 65,
preload: !0,
oneSlidePerOpen: !1,
touchNavigation: !0,
touchFollowAxis: !0,
keyboardNavigation: !0,
closeOnOutsideClick: !0,
plugins: !1,
plyr: {
css: "https://cdn.plyr.io/3.6.12/plyr.css",
js: "https://cdn.plyr.io/3.6.12/plyr.js",
config: {
ratio: "16:10",
fullscreen: { enabled: !0, iosNative: !0 },
youtube: { noCookie: !0, rel: 0, showinfo: 0, iv_load_policy: 3 },
vimeo: { byline: !1, portrait: !1, title: !1, transparent: !1 },
},
},
openEffect: "zoom",
closeEffect: "zoom",
slideEffect: "slide",
moreText: "See more",
moreLength: 60,
cssEfects: {
fade: { in: "fadeIn", out: "fadeOut" },
zoom: { in: "zoomIn", out: "zoomOut" },
slide: { in: "slideInRight", out: "slideOutLeft" },
slideBack: { in: "slideInLeft", out: "slideOutRight" },
none: { in: "none", out: "none" },
},
svg: {
close:
'<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 512 512" xml:space="preserve"><g><g><path d="M505.943,6.058c-8.077-8.077-21.172-8.077-29.249,0L6.058,476.693c-8.077,8.077-8.077,21.172,0,29.249C10.096,509.982,15.39,512,20.683,512c5.293,0,10.586-2.019,14.625-6.059L505.943,35.306C514.019,27.23,514.019,14.135,505.943,6.058z"></g></g><g><g><path d="M505.942,476.694L35.306,6.059c-8.076-8.077-21.172-8.077-29.248,0c-8.077,8.076-8.077,21.171,0,29.248l470.636,470.636c4.038,4.039,9.332,6.058,14.625,6.058c5.293,0,10.587-2.019,14.624-6.057C514.018,497.866,514.018,484.771,505.942,476.694z"></g></g></svg>',
next: '<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 477.175 477.175" xml:space="preserve"> <g><path d="M360.731,229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1,0s-5.3,13.8,0,19.1l215.5,215.5l-215.5,215.5c-5.3,5.3-5.3,13.8,0,19.1c2.6,2.6,6.1,4,9.5,4c3.4,0,6.9-1.3,9.5-4l225.1-225.1C365.931,242.875,365.931,234.275,360.731,229.075z"></g></svg>',
prev: '<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 477.175 477.175" xml:space="preserve"><g><path d="M145.188,238.575l215.5-215.5c5.3-5.3,5.3-13.8,0-19.1s-13.8-5.3-19.1,0l-225.1,225.1c-5.3,5.3-5.3,13.8,0,19.1l225.1,225c2.6,2.6,6.1,4,9.5,4s6.9-1.3,9.5-4c5.3-5.3,5.3-13.8,0-19.1L145.188,238.575z"></g></svg>',
},
slideHTML:
'<div class="gslide">\n <div class="gslide-inner-content">\n <div class="ginner-container">\n <div class="gslide-media">\n <div class="gslide-count text-white"><span class="current-count">1</span> of <span class="total-count">2</span></div>\n </div>\n <div class="gslide-description">\n <div class="gdesc-inner">\n <h4 class="gslide-title"></h4>\n <div class="gslide-desc"></div>\n </div>\n </div>\n </div>\n </div>\n </div>',
lightboxHTML:
'<div id="glightbox-body" class="glightbox-container" tabindex="-1" role="dialog" aria-hidden="false">\n <div class="gloader visible"></div>\n <div class="goverlay"></div>\n <div class="gcontainer">\n <div id="glightbox-slider" class="gslider"></div>\n <button class="gclose gbtn" aria-label="Close" data-taborder="3">{closeSVG}</button>\n <button class="gprev gbtn" aria-label="Previous" data-taborder="2">{prevSVG}</button>\n <button class="gnext gbtn" aria-label="Next" data-taborder="1">{nextSVG}</button>\n</div>\n</div>',
},
ie = s(
function e() {
var t =
arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
i(this, e),
(this.customOptions = t),
(this.settings = o(te, t)),
(this.effectsClasses = this.getAnimationClasses()),
(this.videoPlayers = {}),
(this.apiEvents = []),
(this.fullElementsList = !1);
},
[
{
key: "init",
value: function () {
var e = this,
t = this.getSelector();
t &&
(this.baseEvents = h("click", {
onElement: t,
withCallback: function (t, i) {
t.preventDefault(), e.open(i);
},
})),
(this.elements = this.getElements());
},
},
{
key: "open",
value: function () {
var e =
arguments.length > 0 && void 0 !== arguments[0]
? arguments[0]
: null,
t =
arguments.length > 1 && void 0 !== arguments[1]
? arguments[1]
: null;
if (0 === this.elements.length) return !1;
(this.activeSlide = null),
(this.prevActiveSlideIndex = null),
(this.prevActiveSlide = null);
var i = z(t) ? t : this.settings.startAt;
if (E(e)) {
var n = e.getAttribute("data-gallery");
n &&
((this.fullElementsList = this.elements),
(this.elements = this.getGalleryElements(this.elements, n))),
O(i) && (i = this.getElementIndex(e)) < 0 && (i = 0);
}
z(i) || (i = 0),
this.build(),
v(
this.overlay,
"none" === this.settings.openEffect
? "none"
: this.settings.cssEfects.fade.in
);
var s = document.body,
l = window.innerWidth - document.documentElement.clientWidth;
cgsc(this, null);
if (l > 0) {
var o = document.createElement("style");
(o.type = "text/css"),
(o.className = "gcss-styles"),
(o.innerText = ".gscrollbar-fixer {margin-right: ".concat(
l,
"px}"
)),
document.head.appendChild(o),
d(s, "gscrollbar-fixer");
}
d(s, "glightbox-open"),
d(ee, "glightbox-open"),
K &&
(d(document.body, "glightbox-mobile"),
(this.settings.slideEffect = "slide")),
this.showSlide(i, !0),
1 === this.elements.length
? (d(this.prevButton, "glightbox-button-hidden"),
d(this.nextButton, "glightbox-button-hidden"))
: (c(this.prevButton, "glightbox-button-hidden"),
c(this.nextButton, "glightbox-button-hidden")),
(this.lightboxOpen = !0),
this.trigger("open"),
C(this.settings.onOpen) && this.settings.onOpen(),
Q && this.settings.touchNavigation && J(this),
this.settings.keyboardNavigation && Y(this);
},
},
{
key: "openAt",
value: function () {
var e =
arguments.length > 0 && void 0 !== arguments[0]
? arguments[0]
: 0;
this.open(null, e);
},
},
{
key: "showSlide",
value: function () {
var e = this,
t =
arguments.length > 0 && void 0 !== arguments[0]
? arguments[0]
: 0,
i =
arguments.length > 1 && void 0 !== arguments[1] && arguments[1];
p(this.loader), (this.index = parseInt(t));
var n = this.slidesContainer.querySelector(".current");
n && c(n, "current"), this.slideAnimateOut();
var s = this.slidesContainer.querySelectorAll(".gslide")[t];
if (u(s, "loaded")) this.slideAnimateIn(s, i), m(this.loader);
else {
p(this.loader);
var l = this.elements[t],
o = {
index: this.index,
slide: s,
slideNode: s,
slideConfig: l.slideConfig,
slideIndex: this.index,
trigger: l.node,
player: null,
};
this.trigger("slide_before_load", o),
l.instance.setContent(s, function () {
m(e.loader),
e.resize(),
e.slideAnimateIn(s, i),
e.trigger("slide_after_load", o);
});
}
(this.slideDescription = s.querySelector(".gslide-description")),
(this.slideDescriptionContained =
this.slideDescription &&
u(this.slideDescription.parentNode, "gslide-media")),
this.settings.preload &&
(this.preloadSlide(t + 1), this.preloadSlide(t - 1)),
this.updateNavigationClasses(),
(this.activeSlide = s);
},
},
{
key: "preloadSlide",
value: function (e) {
var t = this;
if (e < 0 || e > this.elements.length - 1) return !1;
if (O(this.elements[e])) return !1;
var i = this.slidesContainer.querySelectorAll(".gslide")[e];
if (u(i, "loaded")) return !1;
var n = this.elements[e],
s = n.type,
l = {
index: e,
slide: i,
slideNode: i,
slideConfig: n.slideConfig,
slideIndex: e,
trigger: n.node,
player: null,
};
this.trigger("slide_before_load", l),
"video" === s || "external" === s
? setTimeout(function () {
n.instance.setContent(i, function () {
t.trigger("slide_after_load", l);
});
}, 200)
: n.instance.setContent(i, function () {
t.trigger("slide_after_load", l);
});
},
},
{
key: "prevSlide",
value: function () {
this.goToSlide(this.index - 1);
cgsc(this, "dec");
},
},
{
key: "nextSlide",
value: function () {
this.goToSlide(this.index + 1);
cgsc(this, "inc");
},
},
{
key: "goToSlide",
value: function () {
var e =
arguments.length > 0 && void 0 !== arguments[0] && arguments[0];
if (
((this.prevActiveSlide = this.activeSlide),
(this.prevActiveSlideIndex = this.index),
!this.loop() && (e < 0 || e > this.elements.length - 1))
)
return !1;
e < 0
? (e = this.elements.length - 1)
: e >= this.elements.length && (e = 0),
this.showSlide(e);
},
},
{
key: "insertSlide",
value: function () {
var e =
arguments.length > 0 && void 0 !== arguments[0]
? arguments[0]
: {},
t =
arguments.length > 1 && void 0 !== arguments[1]
? arguments[1]
: -1;
t < 0 && (t = this.elements.length);
var i = new V(e, this, t),
n = i.getConfig(),
s = o({}, n),
l = i.create(),
r = this.elements.length - 1;
(s.index = t),
(s.node = !1),
(s.instance = i),
(s.slideConfig = n),
this.elements.splice(t, 0, s);
var a = null,
h = null;
if (this.slidesContainer) {
if (t > r) this.slidesContainer.appendChild(l);
else {
var d = this.slidesContainer.querySelectorAll(".gslide")[t];
this.slidesContainer.insertBefore(l, d);
}
((this.settings.preload && 0 == this.index && 0 == t) ||
this.index - 1 == t ||
this.index + 1 == t) &&
this.preloadSlide(t),
0 === this.index && 0 === t && (this.index = 1),
this.updateNavigationClasses(),
(a = this.slidesContainer.querySelectorAll(".gslide")[t]),
(h = this.getSlidePlayerInstance(t)),
(s.slideNode = a);
}
this.trigger("slide_inserted", {
index: t,
slide: a,
slideNode: a,
slideConfig: n,
slideIndex: t,
trigger: null,
player: h,
}),
C(this.settings.slideInserted) &&
this.settings.slideInserted({ index: t, slide: a, player: h });
},
},
{
key: "removeSlide",
value: function () {
var e =
arguments.length > 0 && void 0 !== arguments[0]
? arguments[0]
: -1;
if (e < 0 || e > this.elements.length - 1) return !1;
var t =
this.slidesContainer &&
this.slidesContainer.querySelectorAll(".gslide")[e];
t &&
(this.getActiveSlideIndex() == e &&
(e == this.elements.length - 1
? this.prevSlide()
: this.nextSlide()),
t.parentNode.removeChild(t)),
this.elements.splice(e, 1),
this.trigger("slide_removed", e),
C(this.settings.slideRemoved) && this.settings.slideRemoved(e);
},
},
{
key: "slideAnimateIn",
value: function (e, t) {
var i = this,
n = e.querySelector(".gslide-media"),
s = e.querySelector(".gslide-description"),
l = {
index: this.prevActiveSlideIndex,
slide: this.prevActiveSlide,
slideNode: this.prevActiveSlide,
slideIndex: this.prevActiveSlide,
slideConfig: O(this.prevActiveSlideIndex)
? null
: this.elements[this.prevActiveSlideIndex].slideConfig,
trigger: O(this.prevActiveSlideIndex)
? null
: this.elements[this.prevActiveSlideIndex].node,
player: this.getSlidePlayerInstance(this.prevActiveSlideIndex),
},
o = {
index: this.index,
slide: this.activeSlide,
slideNode: this.activeSlide,
slideConfig: this.elements[this.index].slideConfig,
slideIndex: this.index,
trigger: this.elements[this.index].node,
player: this.getSlidePlayerInstance(this.index),
};
if (
(n.offsetWidth > 0 && s && (m(s), (s.style.display = "")),
c(e, this.effectsClasses),
t)
)
v(
e,
this.settings.cssEfects[this.settings.openEffect].in,
function () {
i.settings.autoplayVideos && i.slidePlayerPlay(e),
i.trigger("slide_changed", { prev: l, current: o }),
C(i.settings.afterSlideChange) &&
i.settings.afterSlideChange.apply(i, [l, o]);
}
);
else {
var r = this.settings.slideEffect,
a = "none" !== r ? this.settings.cssEfects[r].in : r;
this.prevActiveSlideIndex > this.index &&
"slide" == this.settings.slideEffect &&
(a = this.settings.cssEfects.slideBack.in),
v(e, a, function () {
i.settings.autoplayVideos && i.slidePlayerPlay(e),
i.trigger("slide_changed", { prev: l, current: o }),
C(i.settings.afterSlideChange) &&
i.settings.afterSlideChange.apply(i, [l, o]);
});
}
setTimeout(function () {
i.resize(e);
}, 100),
d(e, "current");
},
},
{
key: "slideAnimateOut",
value: function () {
if (!this.prevActiveSlide) return !1;
var e = this.prevActiveSlide;
c(e, this.effectsClasses), d(e, "prev");
var t = this.settings.slideEffect,
i = "none" !== t ? this.settings.cssEfects[t].out : t;
this.slidePlayerPause(e),
this.trigger("slide_before_change", {
prev: {
index: this.prevActiveSlideIndex,
slide: this.prevActiveSlide,
slideNode: this.prevActiveSlide,
slideIndex: this.prevActiveSlideIndex,
slideConfig: O(this.prevActiveSlideIndex)
? null
: this.elements[this.prevActiveSlideIndex].slideConfig,
trigger: O(this.prevActiveSlideIndex)
? null
: this.elements[this.prevActiveSlideIndex].node,
player: this.getSlidePlayerInstance(
this.prevActiveSlideIndex
),
},
current: {
index: this.index,
slide: this.activeSlide,
slideNode: this.activeSlide,
slideIndex: this.index,
slideConfig: this.elements[this.index].slideConfig,
trigger: this.elements[this.index].node,
player: this.getSlidePlayerInstance(this.index),
},
}),
C(this.settings.beforeSlideChange) &&
this.settings.beforeSlideChange.apply(this, [
{
index: this.prevActiveSlideIndex,
slide: this.prevActiveSlide,
player: this.getSlidePlayerInstance(
this.prevActiveSlideIndex
),
},
{
index: this.index,
slide: this.activeSlide,
player: this.getSlidePlayerInstance(this.index),
},
]),
this.prevActiveSlideIndex > this.index &&
"slide" == this.settings.slideEffect &&
(i = this.settings.cssEfects.slideBack.out),
v(e, i, function () {
var t = e.querySelector(".ginner-container"),
i = e.querySelector(".gslide-media"),
n = e.querySelector(".gslide-description");
(t.style.transform = ""),
(i.style.transform = ""),
c(i, "greset"),
(i.style.opacity = ""),
n && (n.style.opacity = ""),
c(e, "prev");
});
},
},
{
key: "getAllPlayers",
value: function () {
return this.videoPlayers;
},
},
{
key: "getSlidePlayerInstance",
value: function (e) {
var t = "gvideo" + e,
i = this.getAllPlayers();
return !(!P(i, t) || !i[t]) && i[t];
},
},
{
key: "stopSlideVideo",
value: function (e) {
if (E(e)) {
var t = e.querySelector(".gvideo-wrapper");
t && (e = t.getAttribute("data-index"));
}
console.log("stopSlideVideo is deprecated, use slidePlayerPause");
var i = this.getSlidePlayerInstance(e);
i && i.playing && i.pause();
},
},
{
key: "slidePlayerPause",
value: function (e) {
if (E(e)) {
var t = e.querySelector(".gvideo-wrapper");
t && (e = t.getAttribute("data-index"));
}
var i = this.getSlidePlayerInstance(e);
i && i.playing && i.pause();
},
},
{
key: "playSlideVideo",
value: function (e) {
if (E(e)) {
var t = e.querySelector(".gvideo-wrapper");
t && (e = t.getAttribute("data-index"));
}
console.log("playSlideVideo is deprecated, use slidePlayerPlay");
var i = this.getSlidePlayerInstance(e);
i && !i.playing && i.play();
},
},
{
key: "slidePlayerPlay",
value: function (e) {
var t;
if (
!K ||
(null !== (t = this.settings.plyr.config) &&
void 0 !== t &&
t.muted)
) {
if (E(e)) {
var i = e.querySelector(".gvideo-wrapper");
i && (e = i.getAttribute("data-index"));
}
var n = this.getSlidePlayerInstance(e);
n &&
!n.playing &&
(n.play(),
this.settings.autofocusVideos && n.elements.container.focus());
}
},
},
{
key: "setElements",
value: function (e) {
var t = this;
this.settings.elements = !1;
var i = [];
e &&
e.length &&
r(e, function (e, n) {
var s = new V(e, t, n),
l = s.getConfig(),
r = o({}, l);
(r.slideConfig = l), (r.instance = s), (r.index = n), i.push(r);
}),
(this.elements = i),
this.lightboxOpen &&
((this.slidesContainer.innerHTML = ""),
this.elements.length &&
(r(this.elements, function () {
var e = y(t.settings.slideHTML);
t.slidesContainer.appendChild(e);
}),
this.showSlide(0, !0)));
},
},
{
key: "getElementIndex",
value: function (e) {
var t = !1;
return (
r(this.elements, function (i, n) {
if (P(i, "node") && i.node == e) return (t = n), !0;
}),
t
);
},
},
{
key: "getElements",
value: function () {
var e = this,
t = [];
(this.elements = this.elements ? this.elements : []),
!O(this.settings.elements) &&
A(this.settings.elements) &&
this.settings.elements.length &&
r(this.settings.elements, function (i, n) {
var s = new V(i, e, n),
l = s.getConfig(),
r = o({}, l);
(r.node = !1),
(r.index = n),
(r.instance = s),
(r.slideConfig = l),
t.push(r);
});
var i = !1;
return (
this.getSelector() &&
(i = document.querySelectorAll(this.getSelector())),
i
? (r(i, function (i, n) {
var s = new V(i, e, n),
l = s.getConfig(),
r = o({}, l);
(r.node = i),
(r.index = n),
(r.instance = s),
(r.slideConfig = l),
(r.gallery = i.getAttribute("data-gallery")),
t.push(r);
}),
t)
: t
);
},
},
{
key: "getGalleryElements",
value: function (e, t) {
return e.filter(function (e) {
return e.gallery == t;
});
},
},
{
key: "getSelector",
value: function () {
return (
!this.settings.elements &&
(this.settings.selector &&
"data-" == this.settings.selector.substring(0, 5)
? "*[".concat(this.settings.selector, "]")
: this.settings.selector)
);
},
},
{
key: "getActiveSlide",
value: function () {
return this.slidesContainer.querySelectorAll(".gslide")[this.index];
},
},
{
key: "getActiveSlideIndex",
value: function () {
return this.index;
},
},
{
key: "getAnimationClasses",
value: function () {
var e = [];
for (var t in this.settings.cssEfects)
if (this.settings.cssEfects.hasOwnProperty(t)) {
var i = this.settings.cssEfects[t];
e.push("g".concat(i.in)), e.push("g".concat(i.out));
}
return e.join(" ");
},
},
{
key: "build",
value: function () {
var e = this;
if (this.built) return !1;
var t = document.body.childNodes,
i = [];
r(t, function (e) {
e.parentNode == document.body &&
"#" !== e.nodeName.charAt(0) &&
e.hasAttribute &&
!e.hasAttribute("aria-hidden") &&
(i.push(e), e.setAttribute("aria-hidden", "true"));
});
var n = P(this.settings.svg, "next") ? this.settings.svg.next : "",
s = P(this.settings.svg, "prev") ? this.settings.svg.prev : "",
l = P(this.settings.svg, "close") ? this.settings.svg.close : "",
o = this.settings.lightboxHTML;
(o = y(
(o = (o = (o = o.replace(/{nextSVG}/g, n)).replace(
/{prevSVG}/g,
s
)).replace(/{closeSVG}/g, l))
)),
document.body.appendChild(o);
var a = document.getElementById("glightbox-body");
this.modal = a;
var c = a.querySelector(".gclose");
(this.prevButton = a.querySelector(".gprev")),
(this.nextButton = a.querySelector(".gnext")),
(this.overlay = a.querySelector(".goverlay")),
(this.loader = a.querySelector(".gloader")),
(this.slidesContainer =
document.getElementById("glightbox-slider")),
(this.bodyHiddenChildElms = i),
(this.events = {}),
d(this.modal, "glightbox-" + this.settings.skin),
this.settings.closeButton &&
c &&
(this.events.close = h("click", {
onElement: c,
withCallback: function (t, i) {
t.preventDefault(), e.close();
},
})),
c && !this.settings.closeButton && c.parentNode.removeChild(c),
this.nextButton &&
(this.events.next = h("click", {
onElement: this.nextButton,
withCallback: function (t, i) {
t.preventDefault(), e.nextSlide();
},
})),
this.prevButton &&
(this.events.prev = h("click", {
onElement: this.prevButton,
withCallback: function (t, i) {
t.preventDefault(), e.prevSlide();
},
})),
this.settings.closeOnOutsideClick &&
(this.events.outClose = h("click", {
onElement: a,
withCallback: function (t, i) {
e.preventOutsideClick ||
u(document.body, "glightbox-mobile") ||
g(t.target, ".ginner-container") ||
g(t.target, ".gbtn") ||
u(t.target, "gnext") ||
u(t.target, "gprev") ||
e.close();
},
})),
r(this.elements, function (t, i) {
e.slidesContainer.appendChild(t.instance.create()),
(t.slideNode =
e.slidesContainer.querySelectorAll(".gslide")[i]);
}),
Q && d(document.body, "glightbox-touch"),
(this.events.resize = h("resize", {
onElement: window,
withCallback: function () {
e.resize();
},
})),
(this.built = !0);
},
},
{
key: "resize",
value: function () {
var e =
arguments.length > 0 && void 0 !== arguments[0]
? arguments[0]
: null;
if ((e = e || this.activeSlide) && !u(e, "zoomed")) {
var t = x(),
i = e.querySelector(".gvideo-wrapper"),
n = e.querySelector(".gslide-image"),
s = this.slideDescription,
l = t.width,
o = t.height;
if (
(l <= 768
? d(document.body, "glightbox-mobile")
: c(document.body, "glightbox-mobile"),
i || n)
) {
var r = !1;
if (
(s &&
(u(s, "description-bottom") || u(s, "description-top")) &&
!u(s, "gabsolute") &&
(r = !0),
n)
)
if (l <= 768) n.querySelector("img");
else if (r) {
var a,
h = s.offsetHeight,
g = n.querySelector("img"),
v = this.elements[this.index].node,
f =
null !== (a = v.getAttribute("data-height")) &&
void 0 !== a
? a
: "100vh";
g.setAttribute(
"style",
"max-height: calc(".concat(f, " - ").concat(h, "px)")
),
s.setAttribute(
"style",
"max-width: ".concat(g.offsetWidth, "px;")
);
}
if (i) {
var p = P(this.settings.plyr.config, "ratio")
? this.settings.plyr.config.ratio
: "";
if (!p) {
var m = i.clientWidth,
y = i.clientHeight,
b = m / y;
p = "".concat(m / b, ":").concat(y / b);
}
var S = p.split(":"),
w = this.settings.videosWidth,
T = this.settings.videosWidth,
C =
(T =
z(w) || -1 !== w.indexOf("px")
? parseInt(w)
: -1 !== w.indexOf("vw")
? (l * parseInt(w)) / 100
: -1 !== w.indexOf("vh")
? (o * parseInt(w)) / 100
: -1 !== w.indexOf("%")
? (l * parseInt(w)) / 100
: parseInt(i.clientWidth)) /
(parseInt(S[0]) / parseInt(S[1]));
if (
((C = Math.floor(C)),
r && (o -= s.offsetHeight),
T > l || C > o || (o < C && l > T))
) {
var k = i.offsetWidth,
E = i.offsetHeight,
A = o / E,
L = { width: k * A, height: E * A };
i.parentNode.setAttribute(
"style",
"max-width: ".concat(L.width, "px")
),
r &&
s.setAttribute(
"style",
"max-width: ".concat(L.width, "px;")
);
} else
(i.parentNode.style.maxWidth = "".concat(w)),
r &&
s.setAttribute("style", "max-width: ".concat(w, ";"));
}
}
}
},
},
{
key: "reload",
value: function () {
this.init();
},
},
{
key: "updateNavigationClasses",
value: function () {
var e = this.loop();
c(this.nextButton, "disabled"),
c(this.prevButton, "disabled"),
0 == this.index && this.elements.length - 1 == 0
? (d(this.prevButton, "disabled"),
d(this.nextButton, "disabled"))
: 0 !== this.index || e
? this.index !== this.elements.length - 1 ||
e ||
d(this.nextButton, "disabled")
: d(this.prevButton, "disabled");
},
},
{
key: "loop",
value: function () {
var e = P(this.settings, "loopAtEnd")
? this.settings.loopAtEnd
: null;
return (e = P(this.settings, "loop") ? this.settings.loop : e), e;
},
},
{
key: "close",
value: function () {
var e = this;
if (!this.lightboxOpen) {
if (this.events) {
for (var t in this.events)
this.events.hasOwnProperty(t) && this.events[t].destroy();
this.events = null;
}
return !1;
}
if (this.closing) return !1;
(this.closing = !0),
this.slidePlayerPause(this.activeSlide),
this.fullElementsList && (this.elements = this.fullElementsList),
this.bodyHiddenChildElms.length &&
r(this.bodyHiddenChildElms, function (e) {
e.removeAttribute("aria-hidden");
}),
d(this.modal, "glightbox-closing"),
v(
this.overlay,
"none" == this.settings.openEffect
? "none"
: this.settings.cssEfects.fade.out
),
v(
this.activeSlide,
this.settings.cssEfects[this.settings.closeEffect].out,
function () {
if (
((e.activeSlide = null),
(e.prevActiveSlideIndex = null),
(e.prevActiveSlide = null),
(e.built = !1),
e.events)
) {
for (var t in e.events)
e.events.hasOwnProperty(t) && e.events[t].destroy();
e.events = null;
}
var i = document.body;
c(ee, "glightbox-open"),
c(
i,
"glightbox-open touching gdesc-open glightbox-touch glightbox-mobile gscrollbar-fixer"
),
e.modal.parentNode.removeChild(e.modal),
e.trigger("close"),
C(e.settings.onClose) && e.settings.onClose();
var n = document.querySelector(".gcss-styles");
n && n.parentNode.removeChild(n),
(e.lightboxOpen = !1),
(e.closing = null);
}
);
},
},
{
key: "destroy",
value: function () {
this.close(),
this.clearAllEvents(),
this.baseEvents && this.baseEvents.destroy();
},
},
{
key: "on",
value: function (e, t) {
var i =
arguments.length > 2 && void 0 !== arguments[2] && arguments[2];
if (!e || !C(t))
throw new TypeError("Event name and callback must be defined");
this.apiEvents.push({ evt: e, once: i, callback: t });
},
},
{
key: "once",
value: function (e, t) {
this.on(e, t, !0);
},
},
{
key: "trigger",
value: function (e) {
var t = this,
i =
arguments.length > 1 && void 0 !== arguments[1]
? arguments[1]
: null,
n = [];
r(this.apiEvents, function (t, s) {
var l = t.evt,
o = t.once,
r = t.callback;
l == e && (r(i), o && n.push(s));
}),
n.length &&
r(n, function (e) {
return t.apiEvents.splice(e, 1);
});
},
},
{
key: "clearAllEvents",
value: function () {
this.apiEvents.splice(0, this.apiEvents.length);
},
},
{
key: "version",
value: function () {
return "3.3.0";
},
},
]
);
return function () {
var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
t = new ie(e);
return t.init(), t;
};
});