UNPKG

@sgalinski/responsive-side-menu

Version:

A simple and extendable slide-in menu

3 lines (2 loc) 27.7 kB
!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var t;t="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,t.ResponsiveSideMenu=e()}}(function(){return function(){function e(t,n,r){function o(u,a){if(!n[u]){if(!t[u]){var l="function"==typeof require&&require;if(!a&&l)return l(u,!0);if(i)return i(u,!0);var s=new Error("Cannot find module '"+u+"'");throw s.code="MODULE_NOT_FOUND",s}var c=n[u]={exports:{}};t[u][0].call(c.exports,function(e){return o(t[u][1][e]||e)},c,c.exports,e,t,n,r)}return n[u].exports}for(var i="function"==typeof require&&require,u=0;u<r.length;u++)o(r[u]);return o}return e}()({1:[function(e,t,n){t.exports=function(){var e=function(e){return"function"==typeof e},t=function(e){var t=Number(e);return isNaN(t)?0:0!==t&&isFinite(t)?(t>0?1:-1)*Math.floor(Math.abs(t)):t},n=Math.pow(2,53)-1,r=function(e){var r=t(e);return Math.min(Math.max(r,0),n)},o=function(e){if(null!=e){if(["string","number","boolean","symbol"].indexOf(typeof e)>-1)return Symbol.iterator;if("undefined"!=typeof Symbol&&"iterator"in Symbol&&Symbol.iterator in e)return Symbol.iterator;if("@@iterator"in e)return"@@iterator"}},i=function(t,n){if(null!=t&&null!=n){var r=t[n];if(null==r)return;if(!e(r))throw new TypeError(r+" is not a function");return r}},u=function(e){var t=e.next();return!Boolean(t.done)&&t};return function(t){"use strict";var n,a=this,l=arguments.length>1?arguments[1]:void 0;if(void 0!==l){if(!e(l))throw new TypeError("Array.from: when provided, the second argument must be a function");arguments.length>2&&(n=arguments[2])}var s,c,f=i(t,o(t));if(void 0!==f){s=e(a)?Object(new a):[];var d=f.call(t);if(null==d)throw new TypeError("Array.from requires an array-like or iterable object");c=0;for(var p,h;;){if(!(p=u(d)))return s.length=c,s;h=p.value,s[c]=l?l.call(n,h,c):h,c++}}else{var m=Object(t);if(null==t)throw new TypeError("Array.from requires an array-like object - not null or undefined");var y=r(m.length);s=e(a)?Object(new a(y)):new Array(y),c=0;for(var b;c<y;)b=m[c],s[c]=l?l.call(n,b,c):b,c++;s.length=y}return s}}()},{}],2:[function(e,t,n){"use strict";function r(e,t){if(void 0===e||null===e)throw new TypeError("Cannot convert first argument to object");for(var n=Object(e),r=1;r<arguments.length;r++){var o=arguments[r];if(void 0!==o&&null!==o)for(var i=Object.keys(Object(o)),u=0,a=i.length;u<a;u++){var l=i[u],s=Object.getOwnPropertyDescriptor(o,l);void 0!==s&&s.enumerable&&(n[l]=o[l])}}return n}function o(){Object.assign||Object.defineProperty(Object,"assign",{enumerable:!1,configurable:!0,writable:!0,value:r})}t.exports={assign:r,polyfill:o}},{}],3:[function(e,t,n){"inert"in HTMLElement.prototype||(Object.defineProperty(HTMLElement.prototype,"inert",{enumerable:!0,get:function(){return this.hasAttribute("inert")},set:function(e){e?this.setAttribute("inert",""):this.removeAttribute("inert")}}),window.addEventListener("load",function(){function e(e){var t=null;try{t=new KeyboardEvent("keydown",{keyCode:9,which:9,key:"Tab",code:"Tab",keyIdentifier:"U+0009",shiftKey:!!e,bubbles:!0})}catch(n){try{t=document.createEvent("KeyboardEvent"),t.initKeyboardEvent("keydown",!0,!0,window,"Tab",0,e?"Shift":"",!1,"en")}catch(e){}}if(t){try{Object.defineProperty(t,"keyCode",{value:9})}catch(e){}document.dispatchEvent(t)}}function t(e){for(;e&&e!==document.documentElement;){if(e.hasAttribute("inert"))return e;e=e.parentElement}return null}function n(e){var t=e.path;return t&&t[0]||e.target}function r(e){e.path[e.path.length-1]!==window&&(o(n(e)),e.preventDefault(),e.stopPropagation())}function o(n){var r=t(n);if(r){if(document.hasFocus()&&0!==u){var o=(a||document).activeElement;if(e(0>u),o!=(a||document).activeElement)return;var i=document.createTreeWalker(document.body,NodeFilter.SHOW_ELEMENT,{acceptNode:function(e){return!e||!e.focus||0>e.tabIndex?NodeFilter.FILTER_SKIP:r.contains(e)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}});i.currentNode=r,i=(-1===Math.sign(u)?i.previousNode:i.nextNode).bind(i);for(var l;l=i();)if(l.focus(),(a||document).activeElement!==o)return}n.blur()}}!function(e){var t=document.createElement("style");t.type="text/css",t.styleSheet?t.styleSheet.cssText=e:t.appendChild(document.createTextNode(e)),document.body.appendChild(t)}("/*[inert]*/*[inert]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none}");var i=function(e){return null};window.ShadowRoot&&(i=function(e){for(;e&&e!==document.documentElement;){if(e instanceof window.ShadowRoot)return e;e=e.parentNode}return null});var u=0;document.addEventListener("keydown",function(e){u=9===e.keyCode?e.shiftKey?-1:1:0}),document.addEventListener("mousedown",function(e){u=0});var a=null;document.body.addEventListener("focus",function(e){var t=n(e);if((e=t==e.target?null:i(t))!=a){if(a){if(!(a instanceof window.ShadowRoot))throw Error("not shadow root: "+a);a.removeEventListener("focusin",r,!0)}e&&e.addEventListener("focusin",r,!0),a=e}o(t)},!0),document.addEventListener("click",function(e){t(n(e))&&(e.preventDefault(),e.stopPropagation())},!0)}))},{}],4:[function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=e("./settings"),a=r(u),l=e("./hooks"),s=r(l),c=function(){function e(){o(this,e),this.rootElement=document.createElement("LI"),this.rootElement.classList.add("rsm-header"),this.rootElement.innerHTML='<span class="rsm-menu-title">'+a.default.get.menuTitle+"</span>",this.closeButton=document.createElement("BUTTON"),this.closeButton.classList.add("rsm-close"),this.closeButton.innerHTML='<span class="rsm-sr">Close</span>',this.rootElement.appendChild(this.closeButton),s.default.register("header",this._hook.bind(this))}return i(e,[{key:"_hook",value:function(e){this.rootElement.insertBefore(e,this.rootElement.firstChild)}},{key:"Element",get:function(){return this.rootElement}},{key:"CloseButton",get:function(){return this.closeButton}}]),e}();n.default=c},{"./hooks":5,"./settings":15}],5:[function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var o=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),i={},u=function(){function e(){r(this,e)}return o(e,null,[{key:"register",value:function(e,t){i[e]=t}},{key:"set",value:function(e,t){i.hasOwnProperty(e)&&i[e].call(null,t)}}]),e}();n.default=u},{}],6:[function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=e("./polyfills"),a=r(u),l=e("./markupGenerator"),s=r(l),c=e("./settings"),f=r(c),d=e("./pluginRegistry"),p=r(d),h=e("./util"),m=r(h),y=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};o(this,e),a.default.load(),f.default.get=n,this.rootElement=document.getElementById(t),this.elements=s.default.generateMenuStub(this.rootElement),this.touchStartX=0,this.touchCurrentX=0,this.setUpEventListeners(),p.default.load(),this.elements.menu.setAttribute("inert",!0),this.openCurrentPageInMenu(),this.setActiveMenuItem();var r=new CustomEvent("rsmReady");this.rootElement.dispatchEvent(r)}return i(e,[{key:"setUpEventListeners",value:function(){var t=this;Array.from(document.querySelectorAll('a[href="#rsm"]')).forEach(function(e){e.addEventListener("click",t.toggle.bind(t))}),this.elements.menu.addEventListener("click",this.clickOnBackDrop.bind(this)),this.elements.menu.addEventListener("touchstart",this.touchStart.bind(this)),this.elements.menu.addEventListener("touchmove",this.touchMove.bind(this)),this.elements.menu.addEventListener("touchend",this.touchEnd.bind(this)),Array.from(document.querySelectorAll(".rsm-sub-opener")).forEach(function(t){t.addEventListener("click",e.openSubMenu)}),Array.from(document.querySelectorAll(".rsm-back-link a")).forEach(function(t){t.addEventListener("click",e.closeSubMenu)}),this.elements.menu.querySelector(".rsm-close").addEventListener("click",this.close.bind(this))}},{key:"open",value:function(){this.elements.menu.classList.add("rsm-open"),this.elements.menu.removeAttribute("inert"),document.querySelector("body").classList.add("rsm-is-open")}},{key:"close",value:function(e){void 0!==e&&e.preventDefault(),this.elements.menu.classList.remove("rsm-open"),this.elements.menu.setAttribute("inert",!0),document.querySelector("body").classList.remove("rsm-is-open")}},{key:"toggle",value:function(e){e.preventDefault(),this.elements.menu.classList.contains("rsm-open")?this.close():this.open()}},{key:"setActiveMenuItem",value:function(){var e=this.elements.menu.querySelector('[href$="'+window.location.pathname+'"]');e&&e.parentNode.classList.add("rsm-active")}},{key:"clickOnBackDrop",value:function(e){e.target===this.elements.menu&&this.close()}},{key:"touchStart",value:function(e){this.touchStartX=e.touches[0].clientX}},{key:"touchMove",value:function(e){"left"===f.default.get.orientation?this.touchCurrentX=-1*Math.max(this.touchStartX-e.touches[0].clientX,0):this.touchCurrentX=-1*Math.min(this.touchStartX-e.touches[0].clientX,0),this.elements.slideMenu.style.transition="none",this.elements.slideMenu.style.transform="translateX("+this.touchCurrentX+"px)"}},{key:"touchEnd",value:function(){this.elements.slideMenu.style.transition="","left"===f.default.get.orientation?this.touchCurrentX<-.4*this.elements.slideMenu.getBoundingClientRect().width&&this.close():this.touchCurrentX>.4*this.elements.slideMenu.getBoundingClientRect().width&&this.close(),this.elements.slideMenu.style.transform=""}},{key:"openCurrentPageInMenu",value:function(){var t=window.location.pathname,n=this.elements.menu.querySelector('a[data-href="'+t+'"],a[href="'+t+'"]');if(t!==f.default.get.homepage&&n){var r=void 0;if(!(r=n.classList.contains("rsm-sub-opener")?n:n.parentNode.parentNode.querySelector(".rsm-back-link > a")))return;e.openSubMenu({preventDefault:function(){},currentTarget:r})}}}],[{key:"openSubMenu",value:function(e){e.preventDefault();var t=e.currentTarget.getAttribute("href"),n=document.getElementById(t.replace("#",""));n&&(n.classList.add("rsm-sub-open"),m.default.parents(n,".rsm-root[id]").forEach(function(e){return e.classList.add("rsm-sub-open")}))}},{key:"closeSubMenu",value:function(e){e.preventDefault();var t=e.currentTarget.getAttribute("href");document.getElementById(t.replace("#","")).classList.remove("rsm-sub-open")}}]),e}();n.default=y},{"./markupGenerator":7,"./pluginRegistry":9,"./polyfills":14,"./settings":15,"./util":16}],7:[function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=e("./header"),a=r(u),l=e("./settings"),s=r(l),c=function(){function e(){o(this,e)}return i(e,null,[{key:"generateMenuStub",value:function(e){this.subMenuCount=0;var t=document.createElement("aside");t.classList.add("rsm"),t.classList.add("rsm-orientation-"+s.default.get.orientation),t.setAttribute("id","rsm"),document.body.appendChild(t);var n=this.extractList(e.querySelector("ul")),r=new a.default;return n.insertBefore(r.Element,n.childNodes[0]),t.appendChild(n),{menu:t,slideMenu:n}}},{key:"extractList",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:s.default.get.backLinkLabel,o=document.createElement("ul");if(o.setAttribute("class","rsm-root"),null!==n){var i=document.createElement("li");i.classList.add("rsm-back-link");var u=document.createElement("a");u.innerHTML='<span class="rsm-back-link-title">'+r+"</span>",u.setAttribute("href","#"+n),i.appendChild(u),o.appendChild(i)}return Array.from(e.childNodes).forEach(function(e){if("LI"===e.nodeName){var i=r;if(s.default.get.useParentSectionLinkTextAsBackLinkLabel&&n)try{i=e.parentNode.parentNode.querySelector("a").firstChild.textContent.trim()}catch(t){console.error('Could not fetch backlink text from any parent, defaulting to "'+r+'" instead.',e)}var u=t.extractListItem(e,i);null!==u&&o.appendChild(u)}}),o}},{key:"extractListItem",value:function(e,t){var n=this,r=null,o=void 0;if(e.hasAttribute("aria-owns")){var i=e.getAttribute("aria-owns").split(" "),u=document.createElement("ul");i.forEach(function(e){var t=document.getElementById(e);Array.from(t.childNodes).forEach(function(e){u.appendChild(e.cloneNode(!0))})});var a=document.createElement("LI");a.innerHTML=e.innerHTML,a.appendChild(u),o=a.childNodes}else o=e.childNodes;return Array.from(o).forEach(function(o){if("A"===o.nodeName){null===r&&(r=document.createElement("li"));var i=document.createElement("a");i.innerText=o.textContent.trim(),i.setAttribute("href",o.getAttribute("href")),r.appendChild(i),e.hasAttribute("data-section-link")&&r.classList.add("rsm-section-link")}else if("UL"===o.nodeName&&!o.classList.contains("rsm-ignore")){null===r&&(r=document.createElement("li")),n.subMenuCount+=1;var u="rsm-sub-menu-"+n.subMenuCount,a=n.extractList(o,u,t);a.setAttribute("id",u);var l=r.querySelector("a"),s="";null===l?l=document.createElement("a"):s=l.getAttribute("href"),l.setAttribute("data-href",s),l.classList.add("rsm-sub-opener"),l.setAttribute("href","#"+u),r.appendChild(l),r.appendChild(a);var c=a.querySelector(".rsm-back-link"),f=[];if(e.hasAttribute("aria-owns"))e.getAttribute("aria-owns").split(" ").forEach(function(e){var t=document.querySelector("#"+e).querySelector('li>[href="'+s+'"]');t&&f.push(t)});else{var d=e.querySelector('[id*="rsm-sub-menu"]>li>[href="'+s+'"]');d&&f.push(d)}if(!f.length){var p=document.createElement("LI"),h=document.createElement("A");p.appendChild(h),h.innerText=l.textContent||"EMPTY",h.setAttribute("href",""+s),p.classList.add("rsm-section-link"),c.parentNode.insertBefore(p,c.nextSibling)}}}),null===r?(console.error("Could not create list item for element: ",e),null):(r.classList.add("rsm-default-link"),r)}}]),e}();n.default=c},{"./header":4,"./settings":15}],8:[function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var o=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),i=function(){function e(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];r(this,e),t&&(this.rootElement=e.createElement(),this.rootElement.classList.add("rsm-"+this.getPluginName()),this.attachElement())}return o(e,[{key:"attachElement",value:function(){var e=document.querySelector(".rsm-header");e.parentNode.insertBefore(this.rootElement,e.nextSibling)}},{key:"getPluginName",value:function(){throw new Error("[Plugin "+this.constructor.name+"]: Your Plugin has to override getPluginName to return a proper string-identifier")}},{key:"element",get:function(){return this.rootElement}}],[{key:"createElement",value:function(){return document.createElement("LI")}}]),e}();n.default=i},{}],9:[function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=e("./settings"),a=function(e){return e&&e.__esModule?e:{default:e}}(u),l=function(){function e(){r(this,e)}return i(e,null,[{key:"load",value:function(){a.default.get.plugins.forEach(function(e){"string"==typeof e?a.default.get.defaultPlugins.hasOwnProperty(e)&&new a.default.get.defaultPlugins[e]:"object"===(void 0===e?"undefined":o(e))&&new e})}}]),e}();n.default=l},{"./settings":15}],10:[function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function u(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(n,"__esModule",{value:!0});var a=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),l=e("../plugin"),s=r(l),c=e("../settings"),f=r(c),d=function(e){function t(){o(this,t);var e=i(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return e.setUpMarkup(),e}return u(t,e),a(t,[{key:"getPluginName",value:function(){return"footer-menu"}},{key:"setUpMarkup",value:function(){var e=this;this.buttons=[],f.default.get.footerMenu&&f.default.get.footerMenu.buttons&&f.default.get.footerMenu.buttons.forEach(function(t){var n=null;t.hasOwnProperty("markup")?(n=document.createElement("DIV"),n.innerHTML=t.markup):(n=document.createElement("A"),n.setAttribute("href",t.href),n.innerHTML=t.label),n.classList.add("rsm-footer-menu-button"),e.buttons.push(n),e.rootElement.appendChild(n)})}}]),t}(s.default);n.default=d},{"../plugin":8,"../settings":15}],11:[function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function u(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(n,"__esModule",{value:!0});var a=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),l=e("../plugin"),s=r(l),c=e("../settings"),f=r(c),d=function(e){function t(){o(this,t);var e=i(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return e.setUpMarkup(),e.setUpEventListeners(),e}return u(t,e),a(t,[{key:"getPluginName",value:function(){return"search-plugin"}},{key:"setUpMarkup",value:function(){var e="Search";if(f.default.get.hasOwnProperty("search")&&f.default.get.search.hasOwnProperty("placeholderText")){e=f.default.get.search.placeholderText}this.searchInput=document.createElement("INPUT"),this.searchInput.setAttribute("type","text"),this.searchInput.setAttribute("name","query"),this.searchInput.setAttribute("placeholder",e),this.rootElement.appendChild(this.searchInput)}},{key:"setUpEventListeners",value:function(){this.searchInput.addEventListener("keydown",this.submit.bind(this))}},{key:"submit",value:function(e){if(13===e.keyCode){var t=this.searchInput.value;f.default.get.hasOwnProperty("search")&&f.default.get.search.hasOwnProperty("submitCallback")?f.default.get.search.submitCallback.call(this,t):alert("You searched for "+t)}}}]),t}(s.default);n.default=d},{"../plugin":8,"../settings":15}],12:[function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function u(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(n,"__esModule",{value:!0});var a=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),l=e("../plugin"),s=r(l),c=e("../settings"),f=r(c),d=function(e){function t(){o(this,t);var e=i(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return e.setUpMarkup(),e}return u(t,e),a(t,[{key:"getPluginName",value:function(){return"top-menu"}},{key:"setUpMarkup",value:function(){var e=this;this.buttons=[],f.default.get.topMenu&&f.default.get.topMenu.buttons&&f.default.get.topMenu.buttons.forEach(function(t){var n=null;t.hasOwnProperty("markup")?(n=document.createElement("DIV"),n.innerHTML=t.markup):(n=document.createElement("A"),n.setAttribute("href",t.href),n.innerHTML=t.label),n.classList.add("rsm-top-menu-button"),e.buttons.push(n),e.rootElement.appendChild(n)})}}]),t}(s.default);n.default=d},{"../plugin":8,"../settings":15}],13:[function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function u(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(n,"__esModule",{value:!0});var a=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),l=e("../plugin"),s=r(l),c=e("../hooks"),f=r(c),d=e("../settings"),p=r(d),h=function(e){function t(){o(this,t);var e=i(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,!1));return e.setUpMarkup(),e}return u(t,e),a(t,[{key:"getPluginName",value:function(){return"user-profile-header"}},{key:"setUpMarkup",value:function(){if(p.default.get.userProfileHeader){var e=document.createElement("DIV");e.classList.add("rsm-"+this.getPluginName());var t=document.createElement("img");t.src=p.default.get.userProfileHeader.userImage,t.alt=p.default.get.userProfileHeader.userName,e.appendChild(t);var n=document.createElement("DIV"),r=document.createElement("A");r.classList.add("rsm-"+this.getPluginName()+"-wrapper-link"),r.href=p.default.get.userProfileHeader.href,n.innerHTML=p.default.get.userProfileHeader.userName,n.classList.add("rsm-"+this.getPluginName()+"-link"),e.appendChild(n),r.appendChild(e),f.default.set("header",r)}}}]),t}(s.default);n.default=h},{"../hooks":5,"../plugin":8,"../settings":15}],14:[function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var o=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),i=e("es6-object-assign"),u=e("array-from/polyfill"),a=function(){function t(){r(this,t)}return o(t,null,[{key:"load",value:function(){Object.hasOwnProperty("assign")||i.polyfill(),Array.hasOwnProperty("from")||(Array.from=u),e("inert-polyfill")}}]),t}();n.default=a},{"array-from/polyfill":1,"es6-object-assign":2,"inert-polyfill":3}],15:[function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=e("./plugins/search"),a=r(u),l=e("./plugins/top-menu"),s=r(l),c=e("./plugins/footer-menu"),f=r(c),d=e("./plugins/user-profile-header"),p=r(d),h={menuTitle:"Slide Menu",orientation:"left",backLinkLabel:"Back",homepage:"/",defaultPlugins:{SearchPlugin:a.default,TopMenu:s.default,FooterMenuPlugin:f.default,UserProfileHeaderPlugin:p.default},plugins:[]},m=function(){function e(){o(this,e)}return i(e,null,[{key:"get",get:function(){return h},set:function(e){h=Object.assign(h,e)}}]),e}();n.default=m},{"./plugins/footer-menu":10,"./plugins/search":11,"./plugins/top-menu":12,"./plugins/user-profile-header":13}],16:[function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(n,"__esModule",{value:!0});var o=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),i=function(){function e(){r(this,e)}return o(e,null,[{key:"parents",value:function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=[];null!==(e=e.parentElement);)e.nodeType===Node.ELEMENT_NODE&&null!==t&&function(e,t){var n=Element.prototype;return(n.matches||n.webkitMatchesSelector||n.mozMatchesSelector||n.msMatchesSelector||function(e){return-1!==[].indexOf.call(document.querySelectorAll(e),this)}).call(e,t)}(e,t)&&n.push(e);return n}}]),e}();n.default=i},{}]},{},[6])(6)}); //# sourceMappingURL=responsive-side-menu.js.map