((t,e)=>{"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t=t||self).PerfectScrollbar=e()})(this,function(){var p=Math.abs,f=Math.floor;function b(t){return getComputedStyle(t)}function a(t,e){for(var i in e){var l=e[i];"number"==typeof l&&(l+="px"),t.style[i]=l}}function c(t){var e=document.createElement("div");return e.className=t,e}function s(t,e){if(r)return r.call(t,e);throw new Error("No element matching method supported")}function o(t){t.remove?t.remove():t.parentNode&&t.parentNode.removeChild(t)}function h(t,e){return Array.prototype.filter.call(t.children,function(t){return s(t,e)})}function v(t,e){var t=t.element.classList,i=w.state.scrolling(e);t.contains(i)?clearTimeout(n[e]):t.add(i)}function Y(t,e){n[e]=setTimeout(function(){return t.isAlive&&t.element.classList.remove(w.state.scrolling(e))},t.settings.scrollingThreshold)}function u(t){var e;return"function"==typeof window.CustomEvent?new CustomEvent(t):((e=document.createEvent("CustomEvent")).initCustomEvent(t,!1,!1,void 0),e)}function t(t,e,i,l,r){var n,o,s,a,c;if(void 0===l&&(l=!0),void 0===r&&(r=!1),"top"===e)n=["contentHeight","containerHeight","scrollTop","y","up","down"];else{if("left"!==e)throw new Error("A proper axis should be provided");n=["contentWidth","containerWidth","scrollLeft","x","left","right"]}{var h,d;e=t,t=i,i=l,l=r,h=(r=n)[0],d=r[1],o=r[2],s=r[3],a=r[4],r=r[5],void 0===i&&(i=!0),void 0===l&&(l=!1),c=e.element,e.reach[s]=null,c[o]<1&&(e.reach[s]="start"),e[h]-e[d]-1=this.contentWidth-this.containerWidth?"end":null,y:t.scrollTop<=0?"start":t.scrollTop>=this.contentHeight-this.containerHeight?"end":null},this.isAlive=!0,this.settings.handlers.forEach(function(t){return L[t](l)}),this.lastScrollTop=f(t.scrollTop),this.lastScrollLeft=t.scrollLeft,this.event.bind(this.element,"scroll",function(t){return l.onScroll(t)}),X(this)}var r="undefined"!=typeof Element&&(Element.prototype.matches||Element.prototype.webkitMatchesSelector||Element.prototype.mozMatchesSelector||Element.prototype.msMatchesSelector),w={main:"ps",rtl:"ps__rtl",element:{thumb:function(t){return"ps__thumb-"+t},rail:function(t){return"ps__rail-"+t},consuming:"ps__child--consume"},state:{focus:"ps--focus",clicking:"ps--clicking",active:function(t){return"ps--active-"+t},scrolling:function(t){return"ps--scrolling-"+t}}},n={x:null,y:null},y={isEmpty:{configurable:!0}},W=(i.prototype.bind=function(t,e){void 0===this.handlers[t]&&(this.handlers[t]=[]),this.handlers[t].push(e),this.element.addEventListener(t,e,!1)},i.prototype.unbind=function(e,i){var l=this;this.handlers[e]=this.handlers[e].filter(function(t){return!(!i||t===i)||(l.element.removeEventListener(e,t,!1),!1)})},i.prototype.unbindAll=function(){for(var t in this.handlers)this.unbind(t)},y.isEmpty.get=function(){var e=this;return Object.keys(this.handlers).every(function(t){return 0===e.handlers[t].length})},Object.defineProperties(i.prototype,y),m.prototype.eventElement=function(e){var t=this.eventElements.filter(function(t){return t.element===e})[0];return t||(t=new i(e),this.eventElements.push(t)),t},m.prototype.bind=function(t,e,i){this.eventElement(t).bind(e,i)},m.prototype.unbind=function(t,e,i){t=this.eventElement(t);t.unbind(e,i),t.isEmpty&&this.eventElements.splice(this.eventElements.indexOf(t),1)},m.prototype.unbindAll=function(){this.eventElements.forEach(function(t){return t.unbindAll()}),this.eventElements=[]},m.prototype.once=function(t,e,i){var l=this.eventElement(t),r=function(t){l.unbind(e,r),i(t)};l.bind(e,r)},{isWebKit:"undefined"!=typeof document&&"WebkitAppearance"in document.documentElement.style,supportsTouch:"undefined"!=typeof window&&("ontouchstart"in window||"maxTouchPoints"in window.navigator&&0i.scrollbarYTop?1:-1;i.element.scrollTop+=e*i.containerHeight,X(i),t.stopPropagation()}),i.event.bind(i.scrollbarX,"mousedown",function(t){return t.stopPropagation()}),i.event.bind(i.scrollbarXRail,"mousedown",function(t){var e=t.pageX-window.pageXOffset-i.scrollbarXRail.getBoundingClientRect().left>i.scrollbarXLeft?1:-1;i.element.scrollLeft+=e*i.containerWidth,X(i),t.stopPropagation()})},"drag-thumb":function(t){e(t,["containerWidth","contentWidth","pageX","railXWidth","scrollbarX","scrollbarXWidth","scrollLeft","x","scrollbarXRail"]),e(t,["containerHeight","contentHeight","pageY","railYHeight","scrollbarY","scrollbarYHeight","scrollTop","y","scrollbarYRail"])},keyboard:function(n){var o=n.element;n.event.bind(n.ownerDocument,"keydown",function(t){if(!(t.isDefaultPrevented&&t.isDefaultPrevented()||t.defaultPrevented)&&(s(o,":hover")||s(n.scrollbarX,":focus")||s(n.scrollbarY,":focus"))){var e=document.activeElement||n.ownerDocument.activeElement;if(e){if("IFRAME"===e.tagName)e=e.contentDocument.activeElement;else for(;e.shadowRoot;)e=e.shadowRoot.activeElement;if(s(r=e,"input,[contenteditable]")||s(r,"select,[contenteditable]")||s(r,"textarea,[contenteditable]")||s(r,"button,[contenteditable]"))return}var i=0,l=0;switch(t.which){case 37:i=t.metaKey?-n.contentWidth:t.altKey?-n.containerWidth:-30;break;case 38:l=t.metaKey?n.contentHeight:t.altKey?n.containerHeight:30;break;case 39:i=t.metaKey?n.contentWidth:t.altKey?n.containerWidth:30;break;case 40:l=t.metaKey?-n.contentHeight:t.altKey?-n.containerHeight:-30;break;case 32:l=t.shiftKey?n.containerHeight:-n.containerHeight;break;case 33:l=n.containerHeight;break;case 34:l=-n.containerHeight;break;case 36:l=n.contentHeight;break;case 35:l=-n.contentHeight;break;default:return}n.settings.suppressScrollX&&0!==i||n.settings.suppressScrollY&&0!==l||(o.scrollTop-=l,o.scrollLeft+=i,X(n),((t,e)=>{var i=f(o.scrollTop);if(0===t){if(!n.scrollbarYActive)return;if(0===i&&0=n.contentHeight-n.containerHeight&&e<0)return!n.settings.wheelPropagation}if(i=o.scrollLeft,0===e){if(!n.scrollbarXActive)return;if(0===i&&t<0||i>=n.contentWidth-n.containerWidth&&0{if(!W.isWebKit&&c.querySelector("select:focus"))return 1;if(c.contains(t))for(var l=t;l&&l!==c;){if(l.classList.contains(w.element.consuming))return 1;var r=b(l);if(i&&r.overflowY.match(/(scroll|auto)/)){var n=l.scrollHeight-l.clientHeight;if(0p(o)?i||e:l||r))||!a.settings.wheelPropagation)&&!t.ctrlKey&&(t.stopPropagation(),t.preventDefault()))}var c=a.element;void 0===window.onwheel?void 0!==window.onmousewheel&&a.event.bind(c,"mousewheel",t):a.event.bind(c,"wheel",t)},touch:function(o){function n(t,e){c.scrollTop-=e,c.scrollLeft-=t,X(o)}function s(t){return t.targetTouches?t.targetTouches[0]:t}function a(t){return(!t.pointerType||"pen"!==t.pointerType||0!==t.buttons)&&(t.targetTouches&&1===t.targetTouches.length||t.pointerType&&"mouse"!==t.pointerType&&t.pointerType!==t.MSPOINTER_TYPE_MOUSE)}function t(t){a(t)&&(t=s(t),h.pageX=t.pageX,h.pageY=t.pageY,d=(new Date).getTime(),null!==l)&&clearInterval(l)}function e(t){var e,i,l,r;a(t)&&(e=(l={pageX:(l=s(t)).pageX,pageY:l.pageY}).pageX-h.pageX,i=l.pageY-h.pageY,((t,e,i)=>{if(c.contains(t))for(var l=t;l&&l!==c;){if(l.classList.contains(w.element.consuming))return 1;var r=b(l);if(i&&r.overflowY.match(/(scroll|auto)/)){var n=l.scrollHeight-l.clientHeight;if(0{var i=f(c.scrollTop),l=c.scrollLeft,r=p(t),n=p(e);if(r{r.fn.perfectScrollbar=function(i){if(!this.length)return this;"object"==typeof i&&i.hasOwnProperty("theme")&&delete i.theme;let l="perfectScrollbar";return this.each(function(){let t=r(this),e=r.data(this,l);e?"function"==typeof e[i]&&e[i]():(e=new PerfectScrollbar(t.get(0),i),r.data(this,l,e))})}})(jQuery); ;