quadmenu/assets/frontend/pscrollbar/perfect-scrollbar.jquery.min.js
2025-01-20 16:38:41 +05:30

2 lines
29 KiB
JavaScript

(function e(b, g, d){function c(m, j){if (!g[m]){if (!b[m]){var i = typeof require == "function" && require; if (!j && i){return i(m, !0)}if (a){return a(m, !0)}var k = new Error("Cannot find module '" + m + "'"); throw k.code = "MODULE_NOT_FOUND", k}var h = g[m] = {exports:{}}; b[m][0].call(h.exports, function(l){var o = b[m][1][l]; return c(o?o:l)}, h, h.exports, e, b, g, d)}return g[m].exports}var a = typeof require == "function" && require; for (var f = 0; f < d.length; f++){c(d[f])}return c})({1:[function(c, d, b){var g = c("../main"); var a = c("../plugin/instances"); function f(i){i.fn.perfectScrollbar = function(j){return this.each(function(){if (typeof j === "object" || typeof j === "undefined"){var k = j; if (!a.get(this)){g.initialize(this, k)}} else{var l = j; if (l === "update"){g.update(this)} else{if (l === "destroy"){g.destroy(this)}}}})}}if (typeof define === "function" && define.amd){define(["jquery"], f)} else{var h = window.jQuery?window.jQuery:window.$; if (typeof h !== "undefined"){f(h)}}d.exports = f}, {"../main":7, "../plugin/instances":18}], 2:[function(c, d, b){function a(h, i){var g = h.className.split(" "); if (g.indexOf(i) < 0){g.push(i)}h.className = g.join(" ")}function f(i, j){var h = i.className.split(" "); var g = h.indexOf(j); if (g >= 0){h.splice(g, 1)}i.className = h.join(" ")}b.add = function(g, h){if (g.classList){g.classList.add(h)} else{a(g, h)}}; b.remove = function(g, h){if (g.classList){g.classList.remove(h)} else{f(g, h)}}; b.list = function(g){if (g.classList){return Array.prototype.slice.apply(g.classList)} else{return g.className.split(" ")}}}, {}], 3:[function(c, f, b){var h = {}; h.e = function(j, k){var i = document.createElement(j); i.className = k; return i}; h.appendTo = function(j, i){i.appendChild(j); return j}; function g(j, i){return window.getComputedStyle(j)[i]}function a(k, j, i){if (typeof i === "number"){i = i.toString() + "px"}k.style[j] = i; return k}function d(j, k){for (var i in k){var l = k[i]; if (typeof l === "number"){l = l.toString() + "px"}j.style[i] = l}return j}h.css = function(j, k, i){if (typeof k === "object"){return d(j, k)} else{if (typeof i === "undefined"){return g(j, k)} else{return a(j, k, i)}}}; h.matches = function(i, j){if (typeof i.matches !== "undefined"){return i.matches(j)} else{if (typeof i.matchesSelector !== "undefined"){return i.matchesSelector(j)} else{if (typeof i.webkitMatchesSelector !== "undefined"){return i.webkitMatchesSelector(j)} else{if (typeof i.mozMatchesSelector !== "undefined"){return i.mozMatchesSelector(j)} else{if (typeof i.msMatchesSelector !== "undefined"){return i.msMatchesSelector(j)}}}}}}; h.remove = function(i){if (typeof i.remove !== "undefined"){i.remove()} else{if (i.parentNode){i.parentNode.removeChild(i)}}}; h.queryChildren = function(j, i){return Array.prototype.filter.call(j.childNodes, function(k){return h.matches(k, i)})}; f.exports = h}, {}], 4:[function(d, f, a){var c = function(g){this.element = g; this.events = {}}; c.prototype.bind = function(g, h){if (typeof this.events[g] === "undefined"){this.events[g] = []}this.events[g].push(h); this.element.addEventListener(g, h, false)}; c.prototype.unbind = function(g, i){var h = (typeof i !== "undefined"); this.events[g] = this.events[g].filter(function(j){if (h && j !== i){return true}this.element.removeEventListener(g, j, false); return false}, this)}; c.prototype.unbindAll = function(){for (var g in this.events){this.unbind(g)}}; var b = function(){this.eventElements = []}; b.prototype.eventElement = function(h){var g = this.eventElements.filter(function(i){return i.element === h})[0]; if (typeof g === "undefined"){g = new c(h); this.eventElements.push(g)}return g}; b.prototype.bind = function(h, g, i){this.eventElement(h).bind(g, i)}; b.prototype.unbind = function(h, g, i){this.eventElement(h).unbind(g, i)}; b.prototype.unbindAll = function(){for (var g = 0; g < this.eventElements.length; g++){this.eventElements[g].unbindAll()}}; b.prototype.once = function(j, h, k){var g = this.eventElement(j); var i = function(l){g.unbind(h, i); k(l)}; g.bind(h, i)}; f.exports = b}, {}], 5:[function(b, c, a){c.exports = (function(){function d(){return Math.floor((1 + Math.random()) * 65536).toString(16).substring(1)}return function(){return d() + d() + "-" + d() + "-" + d() + "-" + d() + "-" + d() + d() + d()}})()}, {}], 6:[function(c, d, b){var a = c("./class"); var g = c("./dom"); var f = b.toInt = function(i){return parseInt(i, 10) || 0}; var h = b.clone = function(k){if (k === null){return null} else{if (k.constructor === Array){return k.map(h)} else{if (typeof k === "object"){var i = {}; for (var j in k){i[j] = h(k[j])}return i} else{return k}}}}; b.extend = function(k, l){var i = h(k); for (var j in l){i[j] = h(l[j])}return i}; b.isEditable = function(i){return g.matches(i, "input,[contenteditable]") || g.matches(i, "select,[contenteditable]") || g.matches(i, "textarea,[contenteditable]") || g.matches(i, "button,[contenteditable]")}; b.removePsClasses = function(k){var m = a.list(k); for (var j = 0; j < m.length; j++){var l = m[j]; if (l.indexOf("ps-") === 0){a.remove(k, l)}}}; b.outerWidth = function(i){return f(g.css(i, "width")) + f(g.css(i, "paddingLeft")) + f(g.css(i, "paddingRight")) + f(g.css(i, "borderLeftWidth")) + f(g.css(i, "borderRightWidth"))}; b.startScrolling = function(i, j){a.add(i, "ps-in-scrolling"); if (typeof j !== "undefined"){a.add(i, "ps-" + j)} else{a.add(i, "ps-x"); a.add(i, "ps-y")}}; b.stopScrolling = function(i, j){a.remove(i, "ps-in-scrolling"); if (typeof j !== "undefined"){a.remove(i, "ps-" + j)} else{a.remove(i, "ps-x"); a.remove(i, "ps-y")}}; b.env = {isWebKit:"WebkitAppearance" in document.documentElement.style, supportsTouch:(("ontouchstart" in window) || window.DocumentTouch && document instanceof window.DocumentTouch), supportsIePointer:window.navigator.msMaxTouchPoints !== null}}, {"./class":2, "./dom":3}], 7:[function(c, f, b){var d = c("./plugin/destroy"); var a = c("./plugin/initialize"); var g = c("./plugin/update"); f.exports = {initialize:a, update:g, destroy:d}}, {"./plugin/destroy":9, "./plugin/initialize":17, "./plugin/update":21}], 8:[function(b, c, a){c.exports = {handlers:["click-rail", "drag-scrollbar", "keyboard", "wheel", "touch"], maxScrollbarLength:null, minScrollbarLength:null, scrollXMarginOffset:0, scrollYMarginOffset:0, stopPropagationOnClick:true, suppressScrollX:false, suppressScrollY:false, swipePropagation:true, useBothWheelAxes:false, wheelPropagation:false, wheelSpeed:1, theme:"default"}}, {}], 9:[function(c, d, a){var b = c("../lib/helper"); var g = c("../lib/dom"); var f = c("./instances"); d.exports = function(j){var h = f.get(j); if (!h){return}h.event.unbindAll(); g.remove(h.scrollbarX); g.remove(h.scrollbarY); g.remove(h.scrollbarXRail); g.remove(h.scrollbarYRail); b.removePsClasses(j); f.remove(j)}}, {"../lib/dom":3, "../lib/helper":6, "./instances":18}], 10:[function(c, d, a){var b = c("../../lib/helper"); var h = c("../instances"); var g = c("../update-geometry"); var i = c("../update-scroll"); function f(m, l){function k(n){return n.getBoundingClientRect()}var j = function(n){n.stopPropagation()}; if (l.settings.stopPropagationOnClick){l.event.bind(l.scrollbarY, "click", j)}l.event.bind(l.scrollbarYRail, "click", function(r){var n = b.toInt(l.scrollbarYHeight / 2); var p = l.railYRatio * (r.pageY - window.pageYOffset - k(l.scrollbarYRail).top - n); var q = l.railYRatio * (l.railYHeight - l.scrollbarYHeight); var o = p / q; if (o < 0){o = 0} else{if (o > 1){o = 1}}i(m, "top", (l.contentHeight - l.containerHeight) * o); g(m); r.stopPropagation()}); if (l.settings.stopPropagationOnClick){l.event.bind(l.scrollbarX, "click", j)}l.event.bind(l.scrollbarXRail, "click", function(r){var n = b.toInt(l.scrollbarXWidth / 2); var o = l.railXRatio * (r.pageX - window.pageXOffset - k(l.scrollbarXRail).left - n); var q = l.railXRatio * (l.railXWidth - l.scrollbarXWidth); var p = o / q; if (p < 0){p = 0} else{if (p > 1){p = 1}}i(m, "left", ((l.contentWidth - l.containerWidth) * p) - l.negativeScrollAdjustment); g(m); r.stopPropagation()})}d.exports = function(k){var j = h.get(k); f(k, j)}}, {"../../lib/helper":6, "../instances":18, "../update-geometry":19, "../update-scroll":20}], 11:[function(f, c, h){var j = f("../../lib/helper"); var g = f("../../lib/dom"); var a = f("../instances"); var b = f("../update-geometry"); var d = f("../update-scroll"); function k(p, o){var r = null; var n = null; function m(s){var u = r + (s * o.railXRatio); var t = Math.max(0, o.scrollbarXRail.getBoundingClientRect().left) + (o.railXRatio * (o.railXWidth - o.scrollbarXWidth)); if (u < 0){o.scrollbarXLeft = 0} else{if (u > t){o.scrollbarXLeft = t} else{o.scrollbarXLeft = u}}var v = j.toInt(o.scrollbarXLeft * (o.contentWidth - o.containerWidth) / (o.containerWidth - (o.railXRatio * o.scrollbarXWidth))) - o.negativeScrollAdjustment; d(p, "left", v)}var l = function(s){m(s.pageX - n); b(p); s.stopPropagation(); s.preventDefault()}; var q = function(){j.stopScrolling(p, "x"); o.event.unbind(o.ownerDocument, "mousemove", l)}; o.event.bind(o.scrollbarX, "mousedown", function(s){n = s.pageX; r = j.toInt(g.css(o.scrollbarX, "left")) * o.railXRatio; j.startScrolling(p, "x"); o.event.bind(o.ownerDocument, "mousemove", l); o.event.once(o.ownerDocument, "mouseup", q); s.stopPropagation(); s.preventDefault()})}function i(p, o){var n = null; var m = null; function r(s){var t = n + (s * o.railYRatio); var v = Math.max(0, o.scrollbarYRail.getBoundingClientRect().top) + (o.railYRatio * (o.railYHeight - o.scrollbarYHeight)); if (t < 0){o.scrollbarYTop = 0} else{if (t > v){o.scrollbarYTop = v} else{o.scrollbarYTop = t}}var u = j.toInt(o.scrollbarYTop * (o.contentHeight - o.containerHeight) / (o.containerHeight - (o.railYRatio * o.scrollbarYHeight))); d(p, "top", u)}var l = function(s){r(s.pageY - m); b(p); s.stopPropagation(); s.preventDefault()}; var q = function(){j.stopScrolling(p, "y"); o.event.unbind(o.ownerDocument, "mousemove", l)}; o.event.bind(o.scrollbarY, "mousedown", function(s){m = s.pageY; n = j.toInt(g.css(o.scrollbarY, "top")) * o.railYRatio; j.startScrolling(p, "y"); o.event.bind(o.ownerDocument, "mousemove", l); o.event.once(o.ownerDocument, "mouseup", q); s.stopPropagation(); s.preventDefault()})}c.exports = function(m){var l = a.get(m); k(m, l); i(m, l)}}, {"../../lib/dom":3, "../../lib/helper":6, "../instances":18, "../update-geometry":19, "../update-scroll":20}], 12:[function(g, c, i){var j = g("../../lib/helper"); var h = g("../../lib/dom"); var a = g("../instances"); var b = g("../update-geometry"); var d = g("../update-scroll"); function f(n, m){var l = false; m.event.bind(n, "mouseenter", function(){l = true}); m.event.bind(n, "mouseleave", function(){l = false}); var k = false; function o(q, p){var r = n.scrollTop; if (q === 0){if (!m.scrollbarYActive){return false}if ((r === 0 && p > 0) || (r >= m.contentHeight - m.containerHeight && p < 0)){return !m.settings.wheelPropagation}}var s = n.scrollLeft; if (p === 0){if (!m.scrollbarXActive){return false}if ((s === 0 && q < 0) || (s >= m.contentWidth - m.containerWidth && q > 0)){return !m.settings.wheelPropagation}}return true}m.event.bind(m.ownerDocument, "keydown", function(t){if ((t.isDefaultPrevented && t.isDefaultPrevented()) || t.defaultPrevented){return}var s = h.matches(m.scrollbarX, ":focus") || h.matches(m.scrollbarY, ":focus"); if (!l && !s){return}var r = document.activeElement?document.activeElement:m.ownerDocument.activeElement; if (r){if (r.tagName === "IFRAME"){r = r.contentDocument.activeElement} else{while (r.shadowRoot){r = r.shadowRoot.activeElement}}if (j.isEditable(r)){return}}var q = 0; var p = 0; switch (t.which){case 37:q = - 30; break; case 38:p = 30; break; case 39:q = 30; break; case 40:p = - 30; break; case 33:p = 90; break; case 32:if (t.shiftKey){p = 90} else{p = - 90}break; case 34:p = - 90; break; case 35:if (t.ctrlKey){p = - m.contentHeight} else{p = - m.containerHeight}break; case 36:if (t.ctrlKey){p = n.scrollTop} else{p = m.containerHeight}break; default:return}d(n, "top", n.scrollTop - p); d(n, "left", n.scrollLeft + q); b(n); k = o(q, p); if (k){t.preventDefault()}})}c.exports = function(l){var k = a.get(l); f(l, k)}}, {"../../lib/dom":3, "../../lib/helper":6, "../instances":18, "../update-geometry":19, "../update-scroll":20}], 13:[function(b, c, a){var g = b("../instances"); var f = b("../update-geometry"); var h = b("../update-scroll"); function d(m, l){var k = false; function p(q, i){var r = m.scrollTop; if (q === 0){if (!l.scrollbarYActive){return false}if ((r === 0 && i > 0) || (r >= l.contentHeight - l.containerHeight && i < 0)){return !l.settings.wheelPropagation}}var s = m.scrollLeft; if (i === 0){if (!l.scrollbarXActive){return false}if ((s === 0 && q < 0) || (s >= l.contentWidth - l.containerWidth && q > 0)){return !l.settings.wheelPropagation}}return true}function n(r){var q = r.deltaX; var i = - 1 * r.deltaY; if (typeof q === "undefined" || typeof i === "undefined"){q = - 1 * r.wheelDeltaX / 6; i = r.wheelDeltaY / 6}if (r.deltaMode && r.deltaMode === 1){q *= 10; i *= 10}if (q !== q && i !== i){q = 0; i = r.wheelDelta}return[q, i]}function o(q, i){var t = m.querySelector("textarea:hover, select[multiple]:hover, .ps-child:hover"); if (t){if (t.tagName !== "TEXTAREA" && !window.getComputedStyle(t).overflow.match(/(scroll|auto)/)){return false}var s = t.scrollHeight - t.clientHeight; if (s > 0){if (!(t.scrollTop === 0 && i > 0) && !(t.scrollTop === s && i < 0)){return true}}var r = t.scrollLeft - t.clientWidth; if (r > 0){if (!(t.scrollLeft === 0 && q < 0) && !(t.scrollLeft === r && q > 0)){return true}}}return false}function j(r){var s = n(r); var q = s[0]; var i = s[1]; if (o(q, i)){return}k = false; if (!l.settings.useBothWheelAxes){h(m, "top", m.scrollTop - (i * l.settings.wheelSpeed)); h(m, "left", m.scrollLeft + (q * l.settings.wheelSpeed))} else{if (l.scrollbarYActive && !l.scrollbarXActive){if (i){h(m, "top", m.scrollTop - (i * l.settings.wheelSpeed))} else{h(m, "top", m.scrollTop + (q * l.settings.wheelSpeed))}k = true} else{if (l.scrollbarXActive && !l.scrollbarYActive){if (q){h(m, "left", m.scrollLeft + (q * l.settings.wheelSpeed))} else{h(m, "left", m.scrollLeft - (i * l.settings.wheelSpeed))}k = true}}}f(m); k = (k || p(q, i)); if (k){r.stopPropagation(); r.preventDefault()}}if (typeof window.onwheel !== "undefined"){l.event.bind(m, "wheel", j)} else{if (typeof window.onmousewheel !== "undefined"){l.event.bind(m, "mousewheel", j)}}}c.exports = function(k){var j = g.get(k); d(k, j)}}, {"../instances":18, "../update-geometry":19, "../update-scroll":20}], 14:[function(b, c, a){var g = b("../instances"); var f = b("../update-geometry"); function d(j, h){h.event.bind(j, "scroll", function(){f(j)})}c.exports = function(j){var h = g.get(j); d(j, h)}}, {"../instances":18, "../update-geometry":19}], 15:[function(c, d, a){var b = c("../../lib/helper"); var h = c("../instances"); var g = c("../update-geometry"); var i = c("../update-scroll"); function f(n, m){function o(){var r = window.getSelection?window.getSelection():document.getSelection?document.getSelection():""; if (r.toString().length === 0){return null} else{return r.getRangeAt(0).commonAncestorContainer}}var q = null; var p = {top:0, left:0}; function j(){if (!q){q = setInterval(function(){if (!h.get(n)){clearInterval(q); return}i(n, "top", n.scrollTop + p.top); i(n, "left", n.scrollLeft + p.left); g(n)}, 50)}}function l(){if (q){clearInterval(q); q = null}b.stopScrolling(n)}var k = false; m.event.bind(m.ownerDocument, "selectionchange", function(){if (n.contains(o())){k = true} else{k = false; l()}}); m.event.bind(window, "mouseup", function(){if (k){k = false; l()}}); m.event.bind(window, "mousemove", function(r){if (k){var t = {x:r.pageX, y:r.pageY}; var s = {left:n.offsetLeft, right:n.offsetLeft + n.offsetWidth, top:n.offsetTop, bottom:n.offsetTop + n.offsetHeight}; if (t.x < s.left + 3){p.left = - 5; b.startScrolling(n, "x")} else{if (t.x > s.right - 3){p.left = 5; b.startScrolling(n, "x")} else{p.left = 0}}if (t.y < s.top + 3){if (s.top + 3 - t.y < 5){p.top = - 5} else{p.top = - 20}b.startScrolling(n, "y")} else{if (t.y > s.bottom - 3){if (t.y - s.bottom + 3 < 5){p.top = 5} else{p.top = 20}b.startScrolling(n, "y")} else{p.top = 0}}if (p.top === 0 && p.left === 0){l()} else{j()}}})}d.exports = function(k){var j = h.get(k); f(k, j)}}, {"../../lib/helper":6, "../instances":18, "../update-geometry":19, "../update-scroll":20}], 16:[function(d, f, b){var c = d("../../lib/helper"); var h = d("../instances"); var g = d("../update-geometry"); var i = d("../update-scroll"); function a(k, w, o, A){function p(D, C){var G = k.scrollTop; var H = k.scrollLeft; var F = Math.abs(D); var E = Math.abs(C); if (E > F){if (((C < 0) && (G === w.contentHeight - w.containerHeight)) || ((C > 0) && (G === 0))){return !w.settings.swipePropagation}} else{if (F > E){if (((D < 0) && (H === w.contentWidth - w.containerWidth)) || ((D > 0) && (H === 0))){return !w.settings.swipePropagation}}}return true}function B(D, C){i(k, "top", k.scrollTop - C); i(k, "left", k.scrollLeft - D); g(k)}var v = {}; var s = 0; var x = {}; var y = null; var r = false; var l = false; function q(){r = true}function m(){r = false}function u(C){if (C.targetTouches){return C.targetTouches[0]} else{return C}}function t(C){if (C.targetTouches && C.targetTouches.length === 1){return true}if (C.pointerType && C.pointerType !== "mouse" && C.pointerType !== C.MSPOINTER_TYPE_MOUSE){return true}return false}function j(C){if (t(C)){l = true; var D = u(C); v.pageX = D.pageX; v.pageY = D.pageY; s = (new Date()).getTime(); if (y !== null){clearInterval(y)}C.stopPropagation()}}function z(G){if (!l && w.settings.swipePropagation){j(G)}if (!r && l && t(G)){var I = u(G); var F = {pageX:I.pageX, pageY:I.pageY}; var D = F.pageX - v.pageX; var C = F.pageY - v.pageY; B(D, C); v = F; var E = (new Date()).getTime(); var H = E - s; if (H > 0){x.x = D / H; x.y = C / H; s = E}if (p(D, C)){G.stopPropagation(); G.preventDefault()}}}function n(){if (!r && l){l = false; clearInterval(y); y = setInterval(function(){if (!h.get(k)){clearInterval(y); return}if (Math.abs(x.x) < 0.01 && Math.abs(x.y) < 0.01){clearInterval(y); return}B(x.x * 30, x.y * 30); x.x *= 0.8; x.y *= 0.8}, 10)}}if (o){w.event.bind(window, "touchstart", q); w.event.bind(window, "touchend", m); w.event.bind(k, "touchstart", j); w.event.bind(k, "touchmove", z); w.event.bind(k, "touchend", n)}if (A){if (window.PointerEvent){w.event.bind(window, "pointerdown", q); w.event.bind(window, "pointerup", m); w.event.bind(k, "pointerdown", j); w.event.bind(k, "pointermove", z); w.event.bind(k, "pointerup", n)} else{if (window.MSPointerEvent){w.event.bind(window, "MSPointerDown", q); w.event.bind(window, "MSPointerUp", m); w.event.bind(k, "MSPointerDown", j); w.event.bind(k, "MSPointerMove", z); w.event.bind(k, "MSPointerUp", n)}}}}f.exports = function(k){if (!c.env.supportsTouch && !c.env.supportsIePointer){return}var j = h.get(k); a(k, j, c.env.supportsTouch, c.env.supportsIePointer)}}, {"../../lib/helper":6, "../instances":18, "../update-geometry":19, "../update-scroll":20}], 17:[function(d, c, g){var h = d("../lib/helper"); var j = d("../lib/class"); var a = d("./instances"); var b = d("./update-geometry"); var f = {"click-rail":d("./handler/click-rail"), "drag-scrollbar":d("./handler/drag-scrollbar"), keyboard:d("./handler/keyboard"), wheel:d("./handler/mouse-wheel"), touch:d("./handler/touch"), selection:d("./handler/selection")}; var i = d("./handler/native-scroll"); c.exports = function(l, m){m = typeof m === "object"?m:{}; j.add(l, "ps-container"); var k = a.add(l); k.settings = h.extend(k.settings, m); j.add(l, "ps-theme-" + k.settings.theme); k.settings.handlers.forEach(function(n){f[n](l)}); i(l); b(l)}}, {"../lib/class":2, "../lib/helper":6, "./handler/click-rail":10, "./handler/drag-scrollbar":11, "./handler/keyboard":12, "./handler/mouse-wheel":13, "./handler/native-scroll":14, "./handler/selection":15, "./handler/touch":16, "./instances":18, "./update-geometry":19}], 18:[function(f, d, i){var n = f("../lib/helper"); var o = f("../lib/class"); var k = f("./default-setting"); var h = f("../lib/dom"); var g = f("../lib/event-manager"); var m = f("../lib/guid"); var a = {}; function l(r){var q = this; q.settings = n.clone(k); q.containerWidth = null; q.containerHeight = null; q.contentWidth = null; q.contentHeight = null; q.isRtl = h.css(r, "direction") === "rtl"; q.isNegativeScroll = (function(){var u = r.scrollLeft; var t = null; r.scrollLeft = - 1; t = r.scrollLeft < 0; r.scrollLeft = u; return t})(); q.negativeScrollAdjustment = q.isNegativeScroll?r.scrollWidth - r.clientWidth:0; q.event = new g(); q.ownerDocument = r.ownerDocument || document; function p(){o.add(r, "ps-focus")}function s(){o.remove(r, "ps-focus")}q.scrollbarXRail = h.appendTo(h.e("div", "ps-scrollbar-x-rail"), r); q.scrollbarX = h.appendTo(h.e("div", "ps-scrollbar-x"), q.scrollbarXRail); q.scrollbarX.setAttribute("tabindex", 0); q.event.bind(q.scrollbarX, "focus", p); q.event.bind(q.scrollbarX, "blur", s); q.scrollbarXActive = null; q.scrollbarXWidth = null; q.scrollbarXLeft = null; q.scrollbarXBottom = n.toInt(h.css(q.scrollbarXRail, "bottom")); q.isScrollbarXUsingBottom = q.scrollbarXBottom === q.scrollbarXBottom; q.scrollbarXTop = q.isScrollbarXUsingBottom?null:n.toInt(h.css(q.scrollbarXRail, "top")); q.railBorderXWidth = n.toInt(h.css(q.scrollbarXRail, "borderLeftWidth")) + n.toInt(h.css(q.scrollbarXRail, "borderRightWidth")); h.css(q.scrollbarXRail, "display", "block"); q.railXMarginWidth = n.toInt(h.css(q.scrollbarXRail, "marginLeft")) + n.toInt(h.css(q.scrollbarXRail, "marginRight")); h.css(q.scrollbarXRail, "display", ""); q.railXWidth = null; q.railXRatio = null; q.scrollbarYRail = h.appendTo(h.e("div", "ps-scrollbar-y-rail"), r); q.scrollbarY = h.appendTo(h.e("div", "ps-scrollbar-y"), q.scrollbarYRail); q.scrollbarY.setAttribute("tabindex", 0); q.event.bind(q.scrollbarY, "focus", p); q.event.bind(q.scrollbarY, "blur", s); q.scrollbarYActive = null; q.scrollbarYHeight = null; q.scrollbarYTop = null; q.scrollbarYRight = n.toInt(h.css(q.scrollbarYRail, "right")); q.isScrollbarYUsingRight = q.scrollbarYRight === q.scrollbarYRight; q.scrollbarYLeft = q.isScrollbarYUsingRight?null:n.toInt(h.css(q.scrollbarYRail, "left")); q.scrollbarYOuterWidth = q.isRtl?n.outerWidth(q.scrollbarY):null; q.railBorderYWidth = n.toInt(h.css(q.scrollbarYRail, "borderTopWidth")) + n.toInt(h.css(q.scrollbarYRail, "borderBottomWidth")); h.css(q.scrollbarYRail, "display", "block"); q.railYMarginHeight = n.toInt(h.css(q.scrollbarYRail, "marginTop")) + n.toInt(h.css(q.scrollbarYRail, "marginBottom")); h.css(q.scrollbarYRail, "display", ""); q.railYHeight = null; q.railYRatio = null}function c(p){return p.getAttribute("data-ps-id")}function b(p, q){p.setAttribute("data-ps-id", q)}function j(p){p.removeAttribute("data-ps-id")}i.add = function(q){var p = m(); b(q, p); a[p] = new l(q); return a[p]}; i.remove = function(p){delete a[c(p)]; j(p)}; i.get = function(p){return a[c(p)]}}, {"../lib/class":2, "../lib/dom":3, "../lib/event-manager":4, "../lib/guid":5, "../lib/helper":6, "./default-setting":8}], 19:[function(d, b, g){var j = d("../lib/helper"); var k = d("../lib/class"); var f = d("../lib/dom"); var a = d("./instances"); var c = d("./update-scroll"); function i(m, l){if (m.settings.minScrollbarLength){l = Math.max(l, m.settings.minScrollbarLength)}if (m.settings.maxScrollbarLength){l = Math.min(l, m.settings.maxScrollbarLength)}return l}function h(n, m){var l = {width:m.railXWidth}; if (m.isRtl){l.left = m.negativeScrollAdjustment + n.scrollLeft + m.containerWidth - m.contentWidth} else{l.left = n.scrollLeft}if (m.isScrollbarXUsingBottom){l.bottom = m.scrollbarXBottom - n.scrollTop} else{l.top = m.scrollbarXTop + n.scrollTop}f.css(m.scrollbarXRail, l); var o = {top:n.scrollTop, height:m.railYHeight}; if (m.isScrollbarYUsingRight){if (m.isRtl){o.right = m.contentWidth - (m.negativeScrollAdjustment + n.scrollLeft) - m.scrollbarYRight - m.scrollbarYOuterWidth} else{o.right = m.scrollbarYRight - n.scrollLeft}} else{if (m.isRtl){o.left = m.negativeScrollAdjustment + n.scrollLeft + m.containerWidth * 2 - m.contentWidth - m.scrollbarYLeft - m.scrollbarYOuterWidth} else{o.left = m.scrollbarYLeft + n.scrollLeft}}f.css(m.scrollbarYRail, o); f.css(m.scrollbarX, {left:m.scrollbarXLeft, width:m.scrollbarXWidth - m.railBorderXWidth}); f.css(m.scrollbarY, {top:m.scrollbarYTop, height:m.scrollbarYHeight - m.railBorderYWidth})}b.exports = function(m){var l = a.get(m); l.containerWidth = m.clientWidth; l.containerHeight = m.clientHeight; l.contentWidth = m.scrollWidth; l.contentHeight = m.scrollHeight; var n; if (!m.contains(l.scrollbarXRail)){n = f.queryChildren(m, ".ps-scrollbar-x-rail"); if (n.length > 0){n.forEach(function(o){f.remove(o)})}f.appendTo(l.scrollbarXRail, m)}if (!m.contains(l.scrollbarYRail)){n = f.queryChildren(m, ".ps-scrollbar-y-rail"); if (n.length > 0){n.forEach(function(o){f.remove(o)})}f.appendTo(l.scrollbarYRail, m)}if (!l.settings.suppressScrollX && l.containerWidth + l.settings.scrollXMarginOffset < l.contentWidth){l.scrollbarXActive = true; l.railXWidth = l.containerWidth - l.railXMarginWidth; l.railXRatio = l.containerWidth / l.railXWidth; l.scrollbarXWidth = i(l, j.toInt(l.railXWidth * l.containerWidth / l.contentWidth)); l.scrollbarXLeft = j.toInt((l.negativeScrollAdjustment + m.scrollLeft) * (l.railXWidth - l.scrollbarXWidth) / (l.contentWidth - l.containerWidth))} else{l.scrollbarXActive = false}if (!l.settings.suppressScrollY && l.containerHeight + l.settings.scrollYMarginOffset < l.contentHeight){l.scrollbarYActive = true; l.railYHeight = l.containerHeight - l.railYMarginHeight; l.railYRatio = l.containerHeight / l.railYHeight; l.scrollbarYHeight = i(l, j.toInt(l.railYHeight * l.containerHeight / l.contentHeight)); l.scrollbarYTop = j.toInt(m.scrollTop * (l.railYHeight - l.scrollbarYHeight) / (l.contentHeight - l.containerHeight))} else{l.scrollbarYActive = false}if (l.scrollbarXLeft >= l.railXWidth - l.scrollbarXWidth){l.scrollbarXLeft = l.railXWidth - l.scrollbarXWidth}if (l.scrollbarYTop >= l.railYHeight - l.scrollbarYHeight){l.scrollbarYTop = l.railYHeight - l.scrollbarYHeight}h(m, l); if (l.scrollbarXActive){k.add(m, "ps-active-x")} else{k.remove(m, "ps-active-x"); l.scrollbarXWidth = 0; l.scrollbarXLeft = 0; c(m, "left", 0)}if (l.scrollbarYActive){k.add(m, "ps-active-y")} else{k.remove(m, "ps-active-y"); l.scrollbarYHeight = 0; l.scrollbarYTop = 0; c(m, "top", 0)}}}, {"../lib/class":2, "../lib/dom":3, "../lib/helper":6, "./instances":18, "./update-scroll":20}], 20:[function(f, d, i){var b = f("./instances"); var k = document.createEvent("Event"); var j = document.createEvent("Event"); var g = document.createEvent("Event"); var o = document.createEvent("Event"); var q = document.createEvent("Event"); var m = document.createEvent("Event"); var n = document.createEvent("Event"); var l = document.createEvent("Event"); var h = document.createEvent("Event"); var a = document.createEvent("Event"); var p; var c; k.initEvent("ps-scroll-up", true, true); j.initEvent("ps-scroll-down", true, true); g.initEvent("ps-scroll-left", true, true); o.initEvent("ps-scroll-right", true, true); q.initEvent("ps-scroll-y", true, true); m.initEvent("ps-scroll-x", true, true); n.initEvent("ps-x-reach-start", true, true); l.initEvent("ps-x-reach-end", true, true); h.initEvent("ps-y-reach-start", true, true); a.initEvent("ps-y-reach-end", true, true); d.exports = function(s, t, u){if (typeof s === "undefined"){throw"You must provide an element to the update-scroll function"}if (typeof t === "undefined"){throw"You must provide an axis to the update-scroll function"}if (typeof u === "undefined"){throw"You must provide a value to the update-scroll function"}if (t === "top" && u <= 0){s.scrollTop = u = 0; s.dispatchEvent(h)}if (t === "left" && u <= 0){s.scrollLeft = u = 0; s.dispatchEvent(n)}var r = b.get(s); if (t === "top" && u >= r.contentHeight - r.containerHeight){u = r.contentHeight - r.containerHeight; if (u - s.scrollTop <= 1){u = s.scrollTop} else{s.scrollTop = u}s.dispatchEvent(a)}if (t === "left" && u >= r.contentWidth - r.containerWidth){u = r.contentWidth - r.containerWidth; if (u - s.scrollLeft <= 1){u = s.scrollLeft} else{s.scrollLeft = u}s.dispatchEvent(l)}if (!p){p = s.scrollTop}if (!c){c = s.scrollLeft}if (t === "top" && u < p){s.dispatchEvent(k)}if (t === "top" && u > p){s.dispatchEvent(j)}if (t === "left" && u < c){s.dispatchEvent(g)}if (t === "left" && u > c){s.dispatchEvent(o)}if (t === "top"){s.scrollTop = p = u; s.dispatchEvent(q)}if (t === "left"){s.scrollLeft = c = u; s.dispatchEvent(m)}}}, {"./instances":18}], 21:[function(c, d, a){var b = c("../lib/helper"); var h = c("../lib/dom"); var g = c("./instances"); var f = c("./update-geometry"); var i = c("./update-scroll"); d.exports = function(k){var j = g.get(k); if (!j){return}j.negativeScrollAdjustment = j.isNegativeScroll?k.scrollWidth - k.clientWidth:0; h.css(j.scrollbarXRail, "display", "block"); h.css(j.scrollbarYRail, "display", "block"); j.railXMarginWidth = b.toInt(h.css(j.scrollbarXRail, "marginLeft")) + b.toInt(h.css(j.scrollbarXRail, "marginRight")); j.railYMarginHeight = b.toInt(h.css(j.scrollbarYRail, "marginTop")) + b.toInt(h.css(j.scrollbarYRail, "marginBottom")); h.css(j.scrollbarXRail, "display", "none"); h.css(j.scrollbarYRail, "display", "none"); f(k); i(k, "top", k.scrollTop); i(k, "left", k.scrollLeft); h.css(j.scrollbarXRail, "display", ""); h.css(j.scrollbarYRail, "display", "")}}, {"../lib/dom":3, "../lib/helper":6, "./instances":18, "./update-geometry":19, "./update-scroll":20}]}, {}, [1]);