function _classCallCheck(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function _createClass(e,t,i){return t&&_defineProperties(e.prototype,t),i&&_defineProperties(e,i),e}
var pureTreeMenu=function(){"use strict";function e(t){if(_classCallCheck(this,e),this.config={containerSelector:".rawmenu",parentSelector:".deeper",indent:!0,iconPrefixClass:"",iconRetractedClass:"",iconExpandedClass:""},void 0!==t){var i=t;for(var n in i)void 0!=i[n]&&(this.config[n]=i[n])}this.init()}return _createClass(e,[{key:"init",value:function e(){var t=this.config.containerSelector;document.querySelectorAll(t).forEach(function(e){this.config.indent||e.classList.add("no-indent"),e.querySelectorAll(this.config.parentSelector).forEach(function(e){var t=document.createElement("a"),i="";""==this.config.iconPrefixClass?i=" no-icon":(i=" "+this.config.iconPrefixClass,e.classList.contains("active")||e.classList.contains("expanded")?this.config.iconExpandedClass&&(i+=" "+this.config.iconExpandedClass):this.config.iconRetractedClass&&(i+=" "+this.config.iconRetractedClass)),t.setAttribute("class","expcol"+i),t.setAttribute("href",""),t.setAttribute("onclick","return false"),e.insertBefore(t,e.firstChild)},this),e.querySelectorAll(this.config.parentSelector+" .expcol").forEach(function(e){this.switcher(e,this.config.iconRetractedClass,this.config.iconExpandedClass)},this),e.querySelectorAll(this.config.parentSelector+' a[href="#"]').forEach(function(e){this.switcher(e,this.config.iconRetractedClass,this.config.iconExpandedClass)},this)},this)}},{key:"switcher",value:function e(t,i,n){t.addEventListener("click",function(e){e.preventDefault();var s=t.parentNode;!s.classList.contains("active")&&(s.classList.contains("expanded")?(s.classList.remove("expanded"),i&&t.classList.add(i),n&&t.classList.remove(n)):(s.classList.add("expanded"),n&&t.classList.add(n),i&&t.classList.remove(i)))},this)}}]),e}();