File: /home/pokaorgani/public_html/wp-content/plugins/gallery-by-supsystic/app/assets/js/intro.min.js
(function (q, f) {
"object" === typeof exports ? f(exports) : "function" === typeof define && define.amd ? define(["exports"], f) : f(q)
})(this, function (q) {
function f(a) {
this._targetElement = a;
this._options = {
nextLabel: "Next →",
prevLabel: "← Back",
skipLabel: "Skip",
doneLabel: "Done",
tooltipPosition: "bottom",
tooltipClass: "",
exitOnEsc: !0,
exitOnOverlayClick: !0,
showStepNumbers: !0,
keyboardNavigation: !0,
showButtons: !0,
showBullets: !0,
scrollToElement: !0
}
}
function s(a) {
if (null == a || "object" != typeof a || "undefined" != typeof a.nodeType)return a;
var b = {}, c;
for (c in a)b[c] = s(a[c]);
return b
}
function t() {
this._direction = "forward";
"undefined" === typeof this._currentStep ? this._currentStep = 0 : ++this._currentStep;
if (this._introItems.length <= this._currentStep)"function" === typeof this._introCompleteCallback && this._introCompleteCallback.call(this), u.call(this, this._targetElement); else {
var a = this._introItems[this._currentStep];
"undefined" !== typeof this._introBeforeChangeCallback && this._introBeforeChangeCallback.call(this, a.element);
A.call(this, a)
}
}
function y() {
this._direction =
"backward";
if (0 === this._currentStep)return !1;
var a = this._introItems[--this._currentStep];
"undefined" !== typeof this._introBeforeChangeCallback && this._introBeforeChangeCallback.call(this, a.element);
A.call(this, a)
}
function u(a) {
var b = a.querySelector(".introjs-overlay");
if (null != b) {
b.style.opacity = 0;
setTimeout(function () {
b.parentNode && b.parentNode.removeChild(b)
}, 500);
(a = a.querySelector(".introjs-helperLayer")) && a.parentNode.removeChild(a);
(a = document.querySelector(".introjsFloatingElement")) && a.parentNode.removeChild(a);
if (a = document.querySelector(".introjs-showElement"))a.className = a.className.replace(/introjs-[a-zA-Z]+/g, "").replace(/^\s+|\s+$/g, "");
if ((a = document.querySelectorAll(".introjs-fixParent")) && 0 < a.length)for (var c = a.length - 1; 0 <= c; c--)a[c].className = a[c].className.replace(/introjs-fixParent/g, "").replace(/^\s+|\s+$/g, "");
window.removeEventListener ? window.removeEventListener("keydown", this._onKeyDown, !0) : document.detachEvent && document.detachEvent("onkeydown", this._onKeyDown);
this._currentStep = void 0
}
}
function B(a, b, c, d) {
b.style.top = null;
b.style.right = null;
b.style.bottom = null;
b.style.left = null;
b.style.marginLeft = null;
b.style.marginTop = null;
c.style.display = "inherit";
"undefined" != typeof d && null != d && (d.style.top = null, d.style.left = null);
if (this._introItems[this._currentStep]) {
var e = "", e = this._introItems[this._currentStep], e = "string" === typeof e.tooltipClass ? e.tooltipClass : this._options.tooltipClass;
b.className = ("introjs-tooltip " + e).replace(/^\s+|\s+$/g, "");
switch (this._introItems[this._currentStep].position) {
case "top":
b.style.left =
"15px";
b.style.top = "-" + (p(b).height + 10) + "px";
c.className = "introjs-arrow bottom";
break;
case "right":
b.style.left = p(a).width + 20 + "px";
c.className = "introjs-arrow left";
break;
case "left":
!0 == this._options.showStepNumbers && (b.style.top = "15px");
b.style.right = p(a).width + 20 + "px";
c.className = "introjs-arrow right";
break;
case "floating":
c.style.display = "none";
a = p(b);
b.style.left = "50%";
b.style.top = "50%";
b.style.marginLeft = "-" + a.width / 2 + "px";
b.style.marginTop = "-" + a.height / 2 + "px";
"undefined" != typeof d && null != d &&
(d.style.left = "-" + (a.width / 2 + 18) + "px", d.style.top = "-" + (a.height / 2 + 18) + "px");
break;
default:
b.style.bottom = "-" + (p(b).height + 10) + "px", c.className = "introjs-arrow top"
}
}
}
function w(a) {
if (a && this._introItems[this._currentStep]) {
var b = this._introItems[this._currentStep], c = p(b.element), d = 10;
"floating" == b.position && (d = 0);
a.setAttribute("style", "width: " + (c.width + d) + "px; height:" + (c.height + d) + "px; top:" + (c.top - 5) + "px;left: " + (c.left - 5) + "px;")
}
}
function A(a) {
var b;
"undefined" !== typeof this._introChangeCallback &&
this._introChangeCallback.call(this, a.element);
var c = this, d = document.querySelector(".introjs-helperLayer");
p(a.element);
if (null != d) {
var e = d.querySelector(".introjs-helperNumberLayer"), C = d.querySelector(".introjs-tooltiptext"), g = d.querySelector(".introjs-arrow"), n = d.querySelector(".introjs-tooltip"), j = d.querySelector(".introjs-skipbutton"), m = d.querySelector(".introjs-prevbutton"), k = d.querySelector(".introjs-nextbutton");
n.style.opacity = 0;
if (null != e && (b = this._introItems[0 <= a.step - 2 ? a.step - 2 : 0], null !=
b && "forward" == this._direction && "floating" == b.position || "backward" == this._direction && "floating" == a.position))e.style.opacity = 0;
w.call(c, d);
var l = document.querySelectorAll(".introjs-fixParent");
if (l && 0 < l.length)for (b = l.length - 1; 0 <= b; b--)l[b].className = l[b].className.replace(/introjs-fixParent/g, "").replace(/^\s+|\s+$/g, "");
b = document.querySelector(".introjs-showElement");
b.className = b.className.replace(/introjs-[a-zA-Z]+/g, "").replace(/^\s+|\s+$/g, "");
c._lastShowElementTimer && clearTimeout(c._lastShowElementTimer);
c._lastShowElementTimer = setTimeout(function () {
null != e && (e.innerHTML = a.step);
C.innerHTML = a.intro;
B.call(c, a.element, n, g, e);
d.querySelector(".introjs-bullets li > a.active").className = "";
d.querySelector('.introjs-bullets li > a[data-stepnumber="' + a.step + '"]').className = "active";
n.style.opacity = 1;
e.style.opacity = 1
}, 350)
} else {
var j = document.createElement("div"), l = document.createElement("div"), h = document.createElement("div"), m = document.createElement("div"), k = document.createElement("div"), f = document.createElement("div");
j.className = "introjs-helperLayer";
w.call(c, j);
this._targetElement.appendChild(j);
l.className = "introjs-arrow";
m.className = "introjs-tooltiptext";
m.innerHTML = a.intro;
k.className = "introjs-bullets";
!1 === this._options.showBullets && (k.style.display = "none");
var q = document.createElement("ul");
b = 0;
for (var v = this._introItems.length; b < v; b++) {
var s = document.createElement("li"), r = document.createElement("a");
r.onclick = function () {
c.goToStep(this.getAttribute("data-stepnumber"))
};
0 === b && (r.className = "active");
r.href =
"javascript:void(0);";
r.innerHTML = " ";
r.setAttribute("data-stepnumber", this._introItems[b].step);
s.appendChild(r);
q.appendChild(s)
}
k.appendChild(q);
f.className = "introjs-tooltipbuttons";
!1 === this._options.showButtons && (f.style.display = "none");
h.className = "introjs-tooltip";
h.appendChild(m);
h.appendChild(k);
if (!0 == this._options.showStepNumbers) {
var x = document.createElement("span");
x.className = "introjs-helperNumberLayer";
x.innerHTML = a.step;
j.appendChild(x)
}
h.appendChild(l);
j.appendChild(h);
k = document.createElement("a");
k.onclick = function () {
c._introItems.length - 1 != c._currentStep && t.call(c)
};
k.href = "javascript:void(0);";
k.innerHTML = this._options.nextLabel;
m = document.createElement("a");
m.onclick = function () {
0 != c._currentStep && y.call(c)
};
m.href = "javascript:void(0);";
m.innerHTML = this._options.prevLabel;
j = document.createElement("a");
j.className = "introjs-button introjs-skipbutton";
j.href = "javascript:void(0);";
j.innerHTML = this._options.skipLabel;
j.onclick = function () {
c._introItems.length - 1 == c._currentStep && "function" === typeof c._introCompleteCallback &&
c._introCompleteCallback.call(c);
c._introItems.length - 1 != c._currentStep && "function" === typeof c._introExitCallback && c._introExitCallback.call(c);
u.call(c, c._targetElement)
};
f.appendChild(j);
1 < this._introItems.length && (f.appendChild(m), f.appendChild(k));
h.appendChild(f);
B.call(c, a.element, h, l, x)
}
0 == this._currentStep && 1 < this._introItems.length ? (m.className = "introjs-button introjs-prevbutton introjs-disabled", k.className = "introjs-button introjs-nextbutton", j.innerHTML = this._options.skipLabel) : this._introItems.length -
1 == this._currentStep || 1 == this._introItems.length ? (j.innerHTML = this._options.doneLabel, m.className = "introjs-button introjs-prevbutton", k.className = "introjs-button introjs-nextbutton introjs-disabled") : (m.className = "introjs-button introjs-prevbutton", k.className = "introjs-button introjs-nextbutton", j.innerHTML = this._options.skipLabel);
k.focus();
a.element.className += " introjs-showElement";
b = z(a.element, "position");
"absolute" !== b && "relative" !== b && (a.element.className += " introjs-relativePosition");
for (b =
a.element.parentNode; null != b && "body" !== b.tagName.toLowerCase();) {
l = z(b, "z-index");
h = parseFloat(z(b, "opacity"));
if (/[0-9]+/.test(l) || 1 > h)b.className += " introjs-fixParent";
b = b.parentNode
}
b = a.element.getBoundingClientRect();
!(0 <= b.top && 0 <= b.left && b.bottom + 80 <= window.innerHeight && b.right <= window.innerWidth) && !0 === this._options.scrollToElement && (h = a.element.getBoundingClientRect(), b = void 0 != window.innerWidth ? window.innerHeight : document.documentElement.clientHeight, l = h.bottom - (h.bottom - h.top), h = h.bottom -
b, 0 > l || a.element.clientHeight > b ? window.scrollBy(0, l - 30) : window.scrollBy(0, h + 100));
"undefined" !== typeof this._introAfterChangeCallback && this._introAfterChangeCallback.call(this, a.element)
}
function z(a, b) {
var c = "";
a.currentStyle ? c = a.currentStyle[b] : document.defaultView && document.defaultView.getComputedStyle && (c = document.defaultView.getComputedStyle(a, null).getPropertyValue(b));
return c && c.toLowerCase ? c.toLowerCase() : c
}
function D(a) {
var b = document.createElement("div"), c = "", d = this;
b.className = "introjs-overlay";
if ("body" === a.tagName.toLowerCase())c += "top: 0;bottom: 0; left: 0;right: 0;position: fixed;", b.setAttribute("style", c); else {
var e = p(a);
e && (c += "width: " + e.width + "px; height:" + e.height + "px; top:" + e.top + "px;left: " + e.left + "px;", b.setAttribute("style", c))
}
a.appendChild(b);
b.onclick = function () {
!0 == d._options.exitOnOverlayClick && (u.call(d, a), void 0 != d._introExitCallback && d._introExitCallback.call(d))
};
setTimeout(function () {
c += "opacity: .8;";
b.setAttribute("style", c)
}, 10);
return !0
}
function p(a) {
var b = {};
b.width = a.offsetWidth;
b.height = a.offsetHeight;
for (var c = 0, d = 0; a && !isNaN(a.offsetLeft) && !isNaN(a.offsetTop);)c += a.offsetLeft, d += a.offsetTop, a = a.offsetParent;
b.top = d;
b.left = c;
return b
}
var v = function (a) {
if ("object" === typeof a)return new f(a);
if ("string" === typeof a) {
if (a = document.querySelector(a))return new f(a);
throw Error("There is no element with given selector.");
}
return new f(document.body)
};
v.version = "0.8.0";
v.fn = f.prototype = {
clone: function () {
return new f(this)
}, setOption: function (a, b) {
this._options[a] =
b;
return this
}, setOptions: function (a) {
var b = this._options, c = {}, d;
for (d in b)c[d] = b[d];
for (d in a)c[d] = a[d];
this._options = c;
return this
}, start: function () {
a:{
var a = this._targetElement, b = [], c = this;
if (this._options.steps)for (var d = [], e = 0, d = this._options.steps.length; e < d; e++) {
var f = s(this._options.steps[e]);
f.step = b.length + 1;
"string" === typeof f.element && (f.element = document.querySelector(f.element));
if ("undefined" === typeof f.element || null == f.element) {
var g = document.querySelector(".introjsFloatingElement");
null == g && (g = document.createElement("div"), g.className = "introjsFloatingElement", document.body.appendChild(g));
f.element = g;
f.position = "floating"
}
null != f.element && b.push(f)
} else {
d = a.querySelectorAll("*[data-intro]");
if (1 > d.length)break a;
e = 0;
for (f = d.length; e < f; e++) {
var g = d[e], n = parseInt(g.getAttribute("data-step"), 10);
0 < n && (b[n - 1] = {
element: g,
intro: g.getAttribute("data-intro"),
step: parseInt(g.getAttribute("data-step"), 10),
tooltipClass: g.getAttribute("data-tooltipClass"),
position: g.getAttribute("data-position") ||
this._options.tooltipPosition
})
}
e = n = 0;
for (f = d.length; e < f; e++)if (g = d[e], null == g.getAttribute("data-step")) {
for (; "undefined" != typeof b[n];)n++;
b[n] = {
element: g,
intro: g.getAttribute("data-intro"),
step: n + 1,
tooltipClass: g.getAttribute("data-tooltipClass"),
position: g.getAttribute("data-position") || this._options.tooltipPosition
}
}
}
e = [];
for (d = 0; d < b.length; d++)b[d] && e.push(b[d]);
b = e;
b.sort(function (a, b) {
return a.step - b.step
});
c._introItems = b;
D.call(c, a) && (t.call(c), a.querySelector(".introjs-skipbutton"), a.querySelector(".introjs-nextbutton"),
c._onKeyDown = function (b) {
if (27 === b.keyCode && !0 == c._options.exitOnEsc)u.call(c, a), void 0 != c._introExitCallback && c._introExitCallback.call(c); else if (37 === b.keyCode)y.call(c); else if (39 === b.keyCode || 13 === b.keyCode)t.call(c), b.preventDefault ? b.preventDefault() : b.returnValue = !1
}, c._onResize = function () {
w.call(c, document.querySelector(".introjs-helperLayer"))
}, window.addEventListener ? (this._options.keyboardNavigation && window.addEventListener("keydown", c._onKeyDown, !0), window.addEventListener("resize", c._onResize,
!0)) : document.attachEvent && (this._options.keyboardNavigation && document.attachEvent("onkeydown", c._onKeyDown), document.attachEvent("onresize", c._onResize)))
}
return this
}, goToStep: function (a) {
this._currentStep = a - 2;
"undefined" !== typeof this._introItems && t.call(this);
return this
}, nextStep: function () {
t.call(this);
return this
}, previousStep: function () {
y.call(this);
return this
}, exit: function () {
u.call(this, this._targetElement)
}, refresh: function () {
w.call(this, document.querySelector(".introjs-helperLayer"));
return this
}, onbeforechange: function (a) {
if ("function" === typeof a)this._introBeforeChangeCallback = a; else throw Error("Provided callback for onbeforechange was not a function");
return this
}, onchange: function (a) {
if ("function" === typeof a)this._introChangeCallback = a; else throw Error("Provided callback for onchange was not a function.");
return this
}, onafterchange: function (a) {
if ("function" === typeof a)this._introAfterChangeCallback = a; else throw Error("Provided callback for onafterchange was not a function");
return this
}, oncomplete: function (a) {
if ("function" === typeof a)this._introCompleteCallback = a; else throw Error("Provided callback for oncomplete was not a function.");
return this
}, onexit: function (a) {
if ("function" === typeof a)this._introExitCallback = a; else throw Error("Provided callback for onexit was not a function.");
return this
}
};
return q.introJs = v
});