UNPKG

metismenu-burkov

Version:
11 lines (10 loc) 5.79 kB
/* * metismenu - v2.7.3 * A jQuery menu plugin * https://github.com/onokumus/metismenu#readme * * Made by Osman Nuri Okumus <onokumus@gmail.com> (https://github.com/onokumus) * Under MIT License */ !function(n,i){if("function"==typeof define&&define.amd)define(["jquery"],i);else if("undefined"!=typeof exports)i(require("jquery"));else{i(n.jQuery),n.metisMenu={}}}(this,function(n){"use strict";var i,e=(i=n)&&i.__esModule?i:{default:i};var t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n};var s,a,o,r,l,c,f,g,h=function(){function n(n,i){for(var e=0;e<i.length;e++){var t=i[e];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(n,t.key,t)}}return function(i,e,t){return e&&n(i.prototype,e),t&&n(i,t),i}}(),u=function(n){var i=!1;function e(i){var e=this,s=!1;return n(this).one(t.TRANSITION_END,function(){s=!0}),setTimeout(function(){s||t.triggerTransitionEnd(e)},i),this}var t={TRANSITION_END:"mmTransitionEnd",triggerTransitionEnd:function(e){n(e).trigger(i.end)},supportsTransitionEnd:function(){return Boolean(i)}};return i=("undefined"==typeof window||!window.QUnit)&&{end:"transitionend"},n.fn.mmEmulateTransitionEnd=e,t.supportsTransitionEnd()&&(n.event.special[t.TRANSITION_END]={bindType:i.end,delegateType:i.end,handle:function(i){if(n(i.target).is(this))return i.handleObj.handler.apply(this,arguments)}}),t}(e.default);s=e.default,a="metisMenu",r="."+(o="metisMenu"),l=s.fn[a],c={toggle:!0,preventDefault:!0,activeClass:"active",collapseClass:"collapse",collapseInClass:"in",collapsingClass:"collapsing",triggerElement:"a",parentTrigger:"li",subMenu:"ul"},f={SHOW:"show"+r,SHOWN:"shown"+r,HIDE:"hide"+r,HIDDEN:"hidden"+r,CLICK_DATA_API:"click"+r+".data-api"},g=function(){function n(i,e){!function(n,i){if(!(n instanceof i))throw new TypeError("Cannot call a class as a function")}(this,n),this._element=i,this._config=this._getConfig(e),this._transitioning=null,this.init()}return h(n,[{key:"init",value:function(){var n=this;s(this._element).find(this._config.parentTrigger+"."+this._config.activeClass).has(this._config.subMenu).children(this._config.subMenu).attr("aria-expanded",!0).addClass(this._config.collapseClass+" "+this._config.collapseInClass),s(this._element).find(this._config.parentTrigger).not("."+this._config.activeClass).has(this._config.subMenu).children(this._config.subMenu).attr("aria-expanded",!1).addClass(this._config.collapseClass),s(this._element).find(this._config.parentTrigger).has(this._config.subMenu).children(this._config.triggerElement).on(f.CLICK_DATA_API,function(i){var e=s(this),t=e.parent(n._config.parentTrigger),a=t.siblings(n._config.parentTrigger).children(n._config.triggerElement),o=t.children(n._config.subMenu);n._config.preventDefault&&i.preventDefault(),"true"!==e.attr("aria-disabled")&&(t.hasClass(n._config.activeClass)?(e.attr("aria-expanded",!1),n._hide(o)):(n._show(o),e.attr("aria-expanded",!0),n._config.toggle&&a.attr("aria-expanded",!1)),n._config.onTransitionStart&&n._config.onTransitionStart(i))})}},{key:"_show",value:function(n){if(!this._transitioning&&!s(n).hasClass(this._config.collapsingClass)){var i=this,e=s(n),t=s.Event(f.SHOW);if(e.trigger(t),!t.isDefaultPrevented()){e.parent(this._config.parentTrigger).addClass(this._config.activeClass),this._config.toggle&&this._hide(e.parent(this._config.parentTrigger).siblings().children(this._config.subMenu+"."+this._config.collapseInClass).attr("aria-expanded",!1)),e.removeClass(this._config.collapseClass).addClass(this._config.collapsingClass).height(0),this.setTransitioning(!0);var a=function(){i._config&&i._element&&(e.removeClass(i._config.collapsingClass).addClass(i._config.collapseClass+" "+i._config.collapseInClass).height("").attr("aria-expanded",!0),i.setTransitioning(!1),e.trigger(f.SHOWN))};u.supportsTransitionEnd()?e.height(e[0].scrollHeight).one(u.TRANSITION_END,a).mmEmulateTransitionEnd(350):a()}}}},{key:"_hide",value:function(n){if(!this._transitioning&&s(n).hasClass(this._config.collapseInClass)){var i=this,e=s(n),t=s.Event(f.HIDE);if(e.trigger(t),!t.isDefaultPrevented()){e.parent(this._config.parentTrigger).removeClass(this._config.activeClass),e.height(e.height())[0].offsetHeight,e.addClass(this._config.collapsingClass).removeClass(this._config.collapseClass).removeClass(this._config.collapseInClass),this.setTransitioning(!0);var a=function(){i._config&&i._element&&(i._transitioning&&i._config.onTransitionEnd&&i._config.onTransitionEnd(),i.setTransitioning(!1),e.trigger(f.HIDDEN),e.removeClass(i._config.collapsingClass).addClass(i._config.collapseClass).attr("aria-expanded",!1))};u.supportsTransitionEnd()?0==e.height()||"none"==e.css("display")?a():e.height(0).one(u.TRANSITION_END,a).mmEmulateTransitionEnd(350):a()}}}},{key:"setTransitioning",value:function(n){this._transitioning=n}},{key:"dispose",value:function(){s.removeData(this._element,o),s(this._element).find(this._config.parentTrigger).has(this._config.subMenu).children(this._config.triggerElement).off("click"),this._transitioning=null,this._config=null,this._element=null}},{key:"_getConfig",value:function(n){return n=s.extend({},c,n)}}],[{key:"_jQueryInterface",value:function(i){return this.each(function(){var e=s(this),a=e.data(o),r=s.extend({},c,e.data(),"object"===(void 0===i?"undefined":t(i))&&i);if(!a&&/dispose/.test(i)&&this.dispose(),a||(a=new n(this,r),e.data(o,a)),"string"==typeof i){if(void 0===a[i])throw new Error('No method named "'+i+'"');a[i]()}})}}]),n}(),s.fn[a]=g._jQueryInterface,s.fn[a].Constructor=g,s.fn[a].noConflict=function(){return s.fn[a]=l,g._jQueryInterface}}); //# sourceMappingURL=metisMenu.js.map