{"version":3,"sources":["jsdelivr-header.js","/npm/node-slicknav@1.0.1/dist/js/slicknav.js"],"names":[],"mappings":"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","file":"/npm/node-slicknav@1.0.1/dist/js/slicknav.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.37.0.\n * Original file: /npm/node-slicknav@1.0.1/dist/js/slicknav.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","/*!\n * SlickNav Responsive Mobile Menu v1.0.10\n * (c) 2020 Ravi Kiran Lingam\n * licensed under MIT\n */\n(function (global, factory) {\n    typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('jquery')) :\n    typeof define === 'function' && define.amd ? define(['jquery'], factory) :\n    (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Plugin = factory(global.jQuery));\n  }(this, (function ($) { \n    'use strict';\n  \n    $ = $ && Object.prototype.hasOwnProperty.call($, 'default') ? $['default'] : $;\n\n    var\n    // default settings object.\n        defaults = {\n            label: 'MENU',\n            duplicate: true,\n            duration: 200,\n            easingOpen: 'swing',\n            easingClose: 'swing',\n            closedSymbol: '&#9658;',\n            openedSymbol: '&#9660;',\n            prependTo: 'body',\n            appendTo: '',\n            parentTag: 'a',\n            closeOnClick: false,\n            allowParentLinks: false,\n            nestedParentLinks: true,\n            showChildren: false,\n            removeIds: true,\n            removeClasses: false,\n            removeStyles: false,\n\t\t\tbrand: '',\n            animations: 'jquery',\n            init: function () {},\n            beforeOpen: function () {},\n            beforeClose: function () {},\n            afterOpen: function () {},\n            afterClose: function () {}\n        },\n        mobileMenu = 'slicknav',\n        prefix = 'slicknav',\n\n        Keyboard = {\n            DOWN: 40,\n            ENTER: 13,\n            ESCAPE: 27,\n            LEFT: 37,\n            RIGHT: 39,\n            SPACE: 32,\n            TAB: 9,\n            UP: 38,\n        };\n\n    function Plugin(element, options) {\n        this.element = element;\n\n        // jQuery has an extend method which merges the contents of two or\n        // more objects, storing the result in the first object. The first object\n        // is generally empty as we don't want to alter the default options for\n        // future instances of the plugin\n        this.settings = $.extend({}, defaults, options);\n\n        // Don't remove IDs by default if duplicate is false\n        if (!this.settings.duplicate && !options.hasOwnProperty(\"removeIds\")) {\n          this.settings.removeIds = false;\n        }\n\n        this._defaults = defaults;\n        this._name = mobileMenu;\n\n        this.init();\n    }\n\n    Plugin.prototype.init = function () {\n        var $this = this,\n            menu = $(this.element),\n            settings = this.settings,\n            iconClass,\n            menuBar;\n\n        // clone menu if needed\n        if (settings.duplicate) {\n            $this.mobileNav = menu.clone();\n        } else {\n            $this.mobileNav = menu;\n        }\n\n        // remove IDs if set\n        if (settings.removeIds) {\n          $this.mobileNav.removeAttr('id');\n          $this.mobileNav.find('*').each(function (i, e) {\n              $(e).removeAttr('id');\n          });\n        }\n\n        // remove classes if set\n        if (settings.removeClasses) {\n            $this.mobileNav.removeAttr('class');\n            $this.mobileNav.find('*').each(function (i, e) {\n                $(e).removeAttr('class');\n            });\n        }\n\n        // remove styles if set\n        if (settings.removeStyles) {\n            $this.mobileNav.removeAttr('style');\n            $this.mobileNav.find('*').each(function (i, e) {\n                $(e).removeAttr('style');\n            });\n        }\n\n        // styling class for the button\n        iconClass = prefix + '_icon';\n\n        if (settings.label === '') {\n            iconClass += ' ' + prefix + '_no-text';\n        }\n\n        if (settings.parentTag == 'a') {\n            settings.parentTag = 'a href=\"#\"';\n        }\n\n        // create menu bar\n        $this.mobileNav.attr('class', prefix + '_nav');\n        menuBar = $('<div class=\"' + prefix + '_menu\"></div>');\n\t\tif (settings.brand !== '') {\n\t\t\tvar brand = $('<div class=\"' + prefix + '_brand\">'+settings.brand+'</div>');\n\t\t\t$(menuBar).append(brand);\n\t\t}\n        $this.btn = $(\n            ['<' + settings.parentTag + ' aria-haspopup=\"true\" role=\"button\" tabindex=\"0\" class=\"' + prefix + '_btn ' + prefix + '_collapsed\">',\n                '<span class=\"' + prefix + '_menutxt\">' + settings.label + '</span>',\n                '<span class=\"' + iconClass + '\">',\n                    '<span class=\"' + prefix + '_icon-bar\"></span>',\n                    '<span class=\"' + prefix + '_icon-bar\"></span>',\n                    '<span class=\"' + prefix + '_icon-bar\"></span>',\n                '</span>',\n            '</' + settings.parentTag + '>'\n            ].join('')\n        );\n        $(menuBar).append($this.btn);\n        if(settings.appendTo !== '') {\n            $(settings.appendTo).append(menuBar);\n        } else {\n            $(settings.prependTo).prepend(menuBar);\n        }\n        menuBar.append($this.mobileNav);\n\n        // iterate over structure adding additional structure\n        var items = $this.mobileNav.find('li');\n        $(items).each(function () {\n            var item = $(this),\n                data = {};\n            data.children = item.children('ul').attr('role', 'menu');\n            item.data('menu', data);\n\n            // if a list item has a nested menu\n            if (data.children.length > 0) {\n\n                // select all text before the child menu\n                // check for anchors\n\n                var a = item.contents(),\n                    containsAnchor = false,\n                    nodes = [];\n\n                $(a).each(function () {\n                    if (!$(this).is('ul')) {\n                        nodes.push(this);\n                    } else {\n                        return false;\n                    }\n\n                    if($(this).is(\"a\")) {\n                        containsAnchor = true;\n                    }\n                });\n\n                var wrapElement = $(\n                    '<' + settings.parentTag + ' role=\"menuitem\" aria-haspopup=\"true\" tabindex=\"-1\" class=\"' + prefix + '_item\"/>'\n                );\n\n                // wrap item text with tag and add classes unless we are separating parent links\n                if ((!settings.allowParentLinks || settings.nestedParentLinks) || !containsAnchor) {\n                    var $wrap = $(nodes).wrapAll(wrapElement).parent();\n                    $wrap.addClass(prefix+'_row');\n                } else\n                    $(nodes).wrapAll('<span class=\"'+prefix+'_parent-link '+prefix+'_row\"/>').parent();\n\n                if (!settings.showChildren) {\n                    item.addClass(prefix+'_collapsed');\n                } else {\n                    item.addClass(prefix+'_open');\n                }\n\n                item.addClass(prefix+'_parent');\n\n                // create parent arrow. wrap with link if parent links and separating\n                var arrowElement = $('<span class=\"'+prefix+'_arrow\">'+(settings.showChildren?settings.openedSymbol:settings.closedSymbol)+'</span>');\n\n                if (settings.allowParentLinks && !settings.nestedParentLinks && containsAnchor)\n                    arrowElement = arrowElement.wrap(wrapElement).parent();\n\n                //append arrow\n                $(nodes).last().after(arrowElement);\n\n\n            } else if ( item.children().length === 0) {\n                 item.addClass(prefix+'_txtnode');\n            }\n\n            // accessibility for links\n            item.children('a').attr('role', 'menuitem').click(function(event){\n                //Ensure that it's not a parent\n                if (settings.closeOnClick && !$(event.target).parent().closest('li').hasClass(prefix+'_parent')) {\n                        //Emulate menu close if set\n                        $($this.btn).click();\n                    }\n            });\n\n            //also close on click if parent links are set\n            if (settings.closeOnClick && settings.allowParentLinks) {\n                item.children('a').children('a').click(function (event) {\n                    //Emulate menu close\n                    $($this.btn).click();\n                });\n\n                item.find('.'+prefix+'_parent-link a:not(.'+prefix+'_item)').click(function(event){\n                    //Emulate menu close\n                        $($this.btn).click();\n                });\n            }\n        });\n\n        // structure is in place, now hide appropriate items\n        $(items).each(function () {\n            var data = $(this).data('menu');\n            if (!settings.showChildren){\n                $this._visibilityToggle(data.children, null, false, null, true);\n            }\n        });\n\n        // finally toggle entire menu\n        $this._visibilityToggle($this.mobileNav, null, false, 'init', true);\n\n        // accessibility for menu button\n        $this.mobileNav.attr('role','menu');\n\n        // outline prevention when using mouse\n        $(document).mousedown(function(){\n            $this._outlines(false);\n        });\n\n        $(document).keyup(function(){\n            $this._outlines(true);\n        });\n\n        // menu button click\n        $($this.btn).click(function (e) {\n            e.preventDefault();\n            $this._menuToggle();\n        });\n\n        // click on menu parent\n        $this.mobileNav.on('click', '.' + prefix + '_item', function (e) {\n            e.preventDefault();\n            $this._itemClick($(this));\n        });\n\n        // check for keyboard events on menu button and menu parents\n        $($this.btn).keydown(function (e) {\n            var ev = e || event;\n\n            switch(ev.keyCode) {\n                case Keyboard.ENTER:\n                case Keyboard.SPACE:\n                case Keyboard.DOWN:\n                    e.preventDefault();\n                    if (ev.keyCode !== Keyboard.DOWN || !$($this.btn).hasClass(prefix+'_open')){\n                        $this._menuToggle();\n                    }\n                    \n                    $($this.btn).next().find('[role=\"menuitem\"]').first().focus();\n                    break;\n            }\n\n            \n        });\n\n        $this.mobileNav.on('keydown', '.'+prefix+'_item', function(e) {\n            var ev = e || event;\n\n            switch(ev.keyCode) {\n                case Keyboard.ENTER:\n                    e.preventDefault();\n                    $this._itemClick($(e.target));\n                    break;\n                case Keyboard.RIGHT:\n                    e.preventDefault();\n                    if ($(e.target).parent().hasClass(prefix+'_collapsed')) {\n                        $this._itemClick($(e.target));\n                    }\n                    $(e.target).next().find('[role=\"menuitem\"]').first().focus();\n                    break;\n            }\n        });\n\n        $this.mobileNav.on('keydown', '[role=\"menuitem\"]', function(e) {\n            var ev = e || event;\n\n            switch(ev.keyCode){\n                case Keyboard.DOWN:\n                    e.preventDefault();\n                    var allItems = $(e.target).parent().parent().children().children('[role=\"menuitem\"]:visible');\n                    var idx = allItems.index( e.target );\n                    var nextIdx = idx + 1;\n                    if (allItems.length <= nextIdx) {\n                        nextIdx = 0;\n                    }\n                    var next = allItems.eq( nextIdx );\n                    next.focus();\n                break;\n                case Keyboard.UP:\n                    e.preventDefault();\n                    var allItems = $(e.target).parent().parent().children().children('[role=\"menuitem\"]:visible');\n                    var idx = allItems.index( e.target );\n                    var next = allItems.eq( idx - 1 );\n                    next.focus();\n                break;\n                case Keyboard.LEFT:\n                    e.preventDefault();\n                    if ($(e.target).parent().parent().parent().hasClass(prefix+'_open')) {\n                        var parent = $(e.target).parent().parent().prev();\n                        parent.focus();\n                        $this._itemClick(parent);\n                    } else if ($(e.target).parent().parent().hasClass(prefix+'_nav')){\n                        $this._menuToggle();\n                        $($this.btn).focus();\n                    }\n                    break;\n                case Keyboard.ESCAPE:\n                    e.preventDefault();\n                    $this._menuToggle();\n                    $($this.btn).focus();\n                    break;    \n            }\n        });\n\n        // allow links clickable within parent tags if set\n        if (settings.allowParentLinks && settings.nestedParentLinks) {\n            $('.'+prefix+'_item a').click(function(e){\n                    e.stopImmediatePropagation();\n            });\n        }\n    };\n\n    //toggle menu\n    Plugin.prototype._menuToggle = function (el) {\n        var $this = this;\n        var btn = $this.btn;\n        var mobileNav = $this.mobileNav;\n\n        if (btn.hasClass(prefix+'_collapsed')) {\n            btn.removeClass(prefix+'_collapsed');\n            btn.addClass(prefix+'_open');\n        } else {\n            btn.removeClass(prefix+'_open');\n            btn.addClass(prefix+'_collapsed');\n        }\n        btn.addClass(prefix+'_animating');\n        $this._visibilityToggle(mobileNav, btn.parent(), true, btn);\n    };\n\n    // toggle clicked items\n    Plugin.prototype._itemClick = function (el) {\n        var $this = this;\n        var settings = $this.settings;\n        var data = el.data('menu');\n        if (!data) {\n            data = {};\n            data.arrow = el.children('.'+prefix+'_arrow');\n            data.ul = el.next('ul');\n            data.parent = el.parent();\n            //Separated parent link structure\n            if (data.parent.hasClass(prefix+'_parent-link')) {\n                data.parent = el.parent().parent();\n                data.ul = el.parent().next('ul');\n            }\n            el.data('menu', data);\n        }\n        if (data.parent.hasClass(prefix+'_collapsed')) {\n            data.arrow.html(settings.openedSymbol);\n            data.parent.removeClass(prefix+'_collapsed');\n            data.parent.addClass(prefix+'_open');\n            data.parent.addClass(prefix+'_animating');\n            $this._visibilityToggle(data.ul, data.parent, true, el);\n        } else {\n            data.arrow.html(settings.closedSymbol);\n            data.parent.addClass(prefix+'_collapsed');\n            data.parent.removeClass(prefix+'_open');\n            data.parent.addClass(prefix+'_animating');\n            $this._visibilityToggle(data.ul, data.parent, true, el);\n        }\n    };\n\n    // toggle actual visibility and accessibility tags\n    Plugin.prototype._visibilityToggle = function(el, parent, animate, trigger, init) {\n        var $this = this;\n        var settings = $this.settings;\n        var items = $this._getActionItems(el);\n        var duration = 0;\n        if (animate) {\n            duration = settings.duration;\n        }\n        \n        function afterOpen(trigger, parent) {\n            $(trigger).removeClass(prefix+'_animating');\n            $(parent).removeClass(prefix+'_animating');\n\n            //Fire afterOpen callback\n            if (!init) {\n                settings.afterOpen(trigger);\n            }\n        }\n        \n        function afterClose(trigger, parent) {\n            el.attr('aria-hidden','true');\n            items.attr('tabindex', '-1');\n            $this._setVisAttr(el, true);\n            el.hide(); //jQuery 1.7 bug fix\n\n            $(trigger).removeClass(prefix+'_animating');\n            $(parent).removeClass(prefix+'_animating');\n\n            //Fire init or afterClose callback\n            if (!init){\n                settings.afterClose(trigger);\n            } else if (trigger == 'init'){\n                settings.init();\n            }\n        }\n\n        if (el.hasClass(prefix+'_hidden')) {\n            el.removeClass(prefix+'_hidden');\n             //Fire beforeOpen callback\n            if (!init) {\n                settings.beforeOpen(trigger);\n            }\n            if (settings.animations === 'jquery') {\n                el.stop(true,true).slideDown(duration, settings.easingOpen, function(){\n                    afterOpen(trigger, parent);\n                });\n            } else if(settings.animations === 'velocity') {\n                el.velocity(\"finish\").velocity(\"slideDown\", {\n                    duration: duration,\n                    easing: settings.easingOpen,\n                    complete: function() {\n                        afterOpen(trigger, parent);\n                    }\n                });\n            }\n            el.attr('aria-hidden','false');\n            items.attr('tabindex', '0');\n            $this._setVisAttr(el, false);\n        } else {\n            el.addClass(prefix+'_hidden');\n\n            //Fire init or beforeClose callback\n            if (!init){\n                settings.beforeClose(trigger);\n            }\n\n            if (settings.animations === 'jquery') {\n                el.stop(true,true).slideUp(duration, this.settings.easingClose, function() {\n                    afterClose(trigger, parent)\n                });\n            } else if (settings.animations === 'velocity') {\n                \n                el.velocity(\"finish\").velocity(\"slideUp\", {\n                    duration: duration,\n                    easing: settings.easingClose,\n                    complete: function() {\n                        afterClose(trigger, parent);\n                    }\n                });\n            }\n        }\n    };\n\n    // set attributes of element and children based on visibility\n    Plugin.prototype._setVisAttr = function(el, hidden) {\n        var $this = this;\n\n        // select all parents that aren't hidden\n        var nonHidden = el.children('li').children('ul').not('.'+prefix+'_hidden');\n\n        // iterate over all items setting appropriate tags\n        if (!hidden) {\n            nonHidden.each(function(){\n                var ul = $(this);\n                ul.attr('aria-hidden','false');\n                var items = $this._getActionItems(ul);\n                items.attr('tabindex', '0');\n                $this._setVisAttr(ul, hidden);\n            });\n        } else {\n            nonHidden.each(function(){\n                var ul = $(this);\n                ul.attr('aria-hidden','true');\n                var items = $this._getActionItems(ul);\n                items.attr('tabindex', '-1');\n                $this._setVisAttr(ul, hidden);\n            });\n        }\n    };\n\n    // get all 1st level items that are clickable\n    Plugin.prototype._getActionItems = function(el) {\n        var data = el.data(\"menu\");\n        if (!data) {\n            data = {};\n            var items = el.children('li');\n            var anchors = items.find('a');\n            data.links = anchors.add(items.find('.'+prefix+'_item'));\n            el.data('menu', data);\n        }\n        return data.links;\n    };\n\n    Plugin.prototype._outlines = function(state) {\n        if (!state) {\n            $('.'+prefix+'_item, .'+prefix+'_btn').css('outline','none');\n        } else {\n            $('.'+prefix+'_item, .'+prefix+'_btn').css('outline','');\n        }\n    };\n\n    Plugin.prototype.toggle = function(){\n        var $this = this;\n        $this._menuToggle();\n    };\n\n    Plugin.prototype.open = function(){\n        var $this = this;\n        if ($this.btn.hasClass(prefix+'_collapsed')) {\n            $this._menuToggle();\n        }\n    };\n\n    Plugin.prototype.close = function(){\n        var $this = this;\n        if ($this.btn.hasClass(prefix+'_open')) {\n            $this._menuToggle();\n        }\n    };\n\n    $.fn[mobileMenu] = function ( options ) {\n        var args = arguments;\n\n        // Is the first parameter an object (options), or was omitted, instantiate a new instance\n        if (options === undefined || typeof options === 'object') {\n            return this.each(function () {\n\n                // Only allow the plugin to be instantiated once due to methods\n                if (!$.data(this, 'plugin_' + mobileMenu)) {\n\n                    // if it has no instance, create a new one, pass options to our plugin constructor,\n                    // and store the plugin instance in the elements jQuery data object.\n                    $.data(this, 'plugin_' + mobileMenu, new Plugin( this, options ));\n                }\n            });\n\n        // If is a string and doesn't start with an underscore or 'init' function, treat this as a call to a public method.\n        } else if (typeof options === 'string' && options[0] !== '_' && options !== 'init') {\n\n            // Cache the method call to make it possible to return a value\n            var returns;\n\n            this.each(function () {\n                var instance = $.data(this, 'plugin_' + mobileMenu);\n\n                // Tests that there's already a plugin-instance and checks that the requested public method exists\n                if (instance instanceof Plugin && typeof instance[options] === 'function') {\n\n                    // Call the method of our plugin instance, and pass it the supplied arguments.\n                    returns = instance[options].apply( instance, Array.prototype.slice.call( args, 1 ) );\n                }\n            });\n\n            // If the earlier cached method gives a value back return the value, otherwise return this to preserve chainability.\n            return returns !== undefined ? returns : this;\n        }\n    };\n\n    Plugin.prototype.jQueryDetection = function () {\n        if (typeof $ === 'undefined') {\n          throw new TypeError('Bootstrap\\'s JavaScript requires jQuery. jQuery must be included before Bootstrap\\'s JavaScript.');\n        }\n  \n        var version = $.fn.jquery.split(' ')[0].split('.');\n        var minMajor = 1;\n        var ltMajor = 2;\n        var minMinor = 9;\n        var minPatch = 1;\n        var maxMajor = 4;\n  \n        if (version[0] < ltMajor && version[1] < minMinor || version[0] === minMajor && version[1] === minMinor && version[2] < minPatch || version[0] >= maxMajor) {\n          throw new Error('Bootstrap\\'s JavaScript requires at least jQuery v1.9.1 but less than v4.0.0');\n        }\n      };\n  \n    let slickNav = new Plugin();\n\n    slickNav.jQueryDetection();\n\n    return slickNav;\n\n})));\n"]}