(function (root, factory){
if(typeof define==='function'&&define.amd){
define(['jquery'], factory);
}else if(typeof exports==='object'){
module.exports=factory(require('jquery'));
}else{
root.lightbox=factory(root.jQuery);
}}(this, function ($){
function Lightbox(options){
this.album=[];
this.currentImageIndex=void 0;
this.init();
this.options=$.extend({}, this.constructor.defaults);
this.option(options);
}
Lightbox.defaults={
albumLabel: 'Image %1 of %2',
alwaysShowNavOnTouchDevices: false,
fadeDuration: 600,
fitImagesInViewport: true,
imageFadeDuration: 600,
positionFromTop: 50,
resizeDuration: 700,
showImageNumberLabel: true,
wrapAround: false,
disableScrolling: false,
sanitizeTitle: false
};
Lightbox.prototype.option=function(options){
$.extend(this.options, options);
};
Lightbox.prototype.imageCountLabel=function(currentImageNum, totalImages){
return this.options.albumLabel.replace(/%1/g, currentImageNum).replace(/%2/g, totalImages);
};
Lightbox.prototype.init=function(){
var self=this;
$(document).ready(function(){
self.enable();
self.build();
});
};
Lightbox.prototype.enable=function(){
var self=this;
$('body').on('click', 'a[rel^=lightbox], area[rel^=lightbox], a[data-lightbox], area[data-lightbox]', function(event){
self.start($(event.currentTarget));
return false;
});
};
Lightbox.prototype.build=function(){
if($('#lightbox').length > 0){
return;
}
var self=this;
$('<div id="lightboxOverlay" tabindex="-1" class="lightboxOverlay"></div><div id="lightbox" tabindex="-1" class="lightbox"><div class="lb-outerContainer"><div class="lb-container"><img class="lb-image" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==" alt=""/><div class="lb-nav"><a class="lb-prev" role="button" tabindex="0" aria-label="Previous image" href="" ></a><a class="lb-next" role="button" tabindex="0" aria-label="Next image" href="" ></a></div><div class="lb-loader"><a class="lb-cancel" role="button" tabindex="0"></a></div></div></div><div class="lb-dataContainer"><div class="lb-data"><div class="lb-details"><span class="lb-caption"></span><span class="lb-number"></span></div><div class="lb-closeContainer"><a class="lb-close" role="button" tabindex="0"></a></div></div></div></div>').appendTo($('body'));
this.$lightbox=$('#lightbox');
this.$overlay=$('#lightboxOverlay');
this.$outerContainer=this.$lightbox.find('.lb-outerContainer');
this.$container=this.$lightbox.find('.lb-container');
this.$image=this.$lightbox.find('.lb-image');
this.$nav=this.$lightbox.find('.lb-nav');
this.containerPadding={
top: parseInt(this.$container.css('padding-top'), 10),
right: parseInt(this.$container.css('padding-right'), 10),
bottom: parseInt(this.$container.css('padding-bottom'), 10),
left: parseInt(this.$container.css('padding-left'), 10)
};
this.imageBorderWidth={
top: parseInt(this.$image.css('border-top-width'), 10),
right: parseInt(this.$image.css('border-right-width'), 10),
bottom: parseInt(this.$image.css('border-bottom-width'), 10),
left: parseInt(this.$image.css('border-left-width'), 10)
};
this.$overlay.hide().on('click', function(){
self.end();
return false;
});
this.$lightbox.hide().on('click', function(event){
if($(event.target).attr('id')==='lightbox'){
self.end();
}});
this.$outerContainer.on('click', function(event){
if($(event.target).attr('id')==='lightbox'){
self.end();
}
return false;
});
this.$lightbox.find('.lb-prev').on('click', function(){
if(self.currentImageIndex===0){
self.changeImage(self.album.length - 1);
}else{
self.changeImage(self.currentImageIndex - 1);
}
return false;
});
this.$lightbox.find('.lb-next').on('click', function(){
if(self.currentImageIndex===self.album.length - 1){
self.changeImage(0);
}else{
self.changeImage(self.currentImageIndex + 1);
}
return false;
});
this.$nav.on('mousedown', function(event){
if(event.which===3){
self.$nav.css('pointer-events', 'none');
self.$lightbox.one('contextmenu', function(){
setTimeout(function(){
this.$nav.css('pointer-events', 'auto');
}.bind(self), 0);
});
}});
this.$lightbox.find('.lb-loader, .lb-close').on('click keyup', function(e){
if(e.type==='click'||(e.type==='keyup'&&(e.which===13||e.which===32))){
self.end();
return false;
}});
};
Lightbox.prototype.start=function($link){
var self=this;
var $window=$(window);
$window.on('resize', $.proxy(this.sizeOverlay, this));
this.sizeOverlay();
this.album=[];
var imageNumber=0;
function addToAlbum($link){
self.album.push({
alt: $link.attr('data-alt'),
link: $link.attr('href'),
title: $link.attr('data-title')||$link.attr('title')
});
}
var dataLightboxValue=$link.attr('data-lightbox');
var $links;
if(dataLightboxValue){
$links=$($link.prop('tagName') + '[data-lightbox="' + dataLightboxValue + '"]');
for (var i=0; i < $links.length; i=++i){
addToAlbum($($links[i]));
if($links[i]===$link[0]){
imageNumber=i;
}}
}else{
if($link.attr('rel')==='lightbox'){
addToAlbum($link);
}else{
$links=$($link.prop('tagName') + '[rel="' + $link.attr('rel') + '"]');
for (var j=0; j < $links.length; j=++j){
addToAlbum($($links[j]));
if($links[j]===$link[0]){
imageNumber=j;
}}
}}
var top=$window.scrollTop() + this.options.positionFromTop;
var left=$window.scrollLeft();
this.$lightbox.css({
top: top + 'px',
left: left + 'px'
}).fadeIn(this.options.fadeDuration);
if(this.options.disableScrolling){
$('body').addClass('lb-disable-scrolling');
}
this.changeImage(imageNumber);
};
Lightbox.prototype.changeImage=function(imageNumber){
var self=this;
var filename=this.album[imageNumber].link;
var filetype=filename.split('.').slice(-1)[0];
var $image=this.$lightbox.find('.lb-image');
this.disableKeyboardNav();
this.$overlay.fadeIn(this.options.fadeDuration);
$('.lb-loader').fadeIn('slow');
this.$lightbox.find('.lb-image, .lb-nav, .lb-prev, .lb-next, .lb-dataContainer, .lb-numbers, .lb-caption').hide();
this.$outerContainer.addClass('animating');
var preloader=new Image();
preloader.onload=function(){
var $preloader;
var imageHeight;
var imageWidth;
var maxImageHeight;
var maxImageWidth;
var windowHeight;
var windowWidth;
$image.attr({
'alt': self.album[imageNumber].alt,
'src': filename
});
$preloader=$(preloader);
$image.width(preloader.width);
$image.height(preloader.height);
var aspectRatio=preloader.width / preloader.height;
windowWidth=$(window).width();
windowHeight=$(window).height();
maxImageWidth=windowWidth - self.containerPadding.left - self.containerPadding.right - self.imageBorderWidth.left - self.imageBorderWidth.right - 20;
maxImageHeight=windowHeight - self.containerPadding.top - self.containerPadding.bottom - self.imageBorderWidth.top - self.imageBorderWidth.bottom - self.options.positionFromTop - 70;
if(filetype==='svg'){
if(aspectRatio >=1){
imageWidth=maxImageWidth;
imageHeight=parseInt(maxImageWidth / aspectRatio, 10);
}else{
imageWidth=parseInt(maxImageHeight / aspectRatio, 10);
imageHeight=maxImageHeight;
}
$image.width(imageWidth);
$image.height(imageHeight);
}else{
if(self.options.fitImagesInViewport){
if(self.options.maxWidth&&self.options.maxWidth < maxImageWidth){
maxImageWidth=self.options.maxWidth;
}
if(self.options.maxHeight&&self.options.maxHeight < maxImageHeight){
maxImageHeight=self.options.maxHeight;
}}else{
maxImageWidth=self.options.maxWidth||preloader.width||maxImageWidth;
maxImageHeight=self.options.maxHeight||preloader.height||maxImageHeight;
}
if((preloader.width > maxImageWidth)||(preloader.height > maxImageHeight)){
if((preloader.width / maxImageWidth) > (preloader.height / maxImageHeight)){
imageWidth=maxImageWidth;
imageHeight=parseInt(preloader.height / (preloader.width / imageWidth), 10);
$image.width(imageWidth);
$image.height(imageHeight);
}else{
imageHeight=maxImageHeight;
imageWidth=parseInt(preloader.width / (preloader.height / imageHeight), 10);
$image.width(imageWidth);
$image.height(imageHeight);
}}
}
self.sizeContainer($image.width(), $image.height());
};
preloader.src=this.album[imageNumber].link;
this.currentImageIndex=imageNumber;
};
Lightbox.prototype.sizeOverlay=function(){
var self=this;
setTimeout(function(){
self.$overlay
.width($(document).width())
.height($(document).height());
}, 0);
};
Lightbox.prototype.sizeContainer=function(imageWidth, imageHeight){
var self=this;
var oldWidth=this.$outerContainer.outerWidth();
var oldHeight=this.$outerContainer.outerHeight();
var newWidth=imageWidth + this.containerPadding.left + this.containerPadding.right + this.imageBorderWidth.left + this.imageBorderWidth.right;
var newHeight=imageHeight + this.containerPadding.top + this.containerPadding.bottom + this.imageBorderWidth.top + this.imageBorderWidth.bottom;
function postResize(){
self.$lightbox.find('.lb-dataContainer').width(newWidth);
self.$lightbox.find('.lb-prevLink').height(newHeight);
self.$lightbox.find('.lb-nextLink').height(newHeight);
self.$overlay.trigger('focus');
self.showImage();
}
if(oldWidth!==newWidth||oldHeight!==newHeight){
this.$outerContainer.animate({
width: newWidth,
height: newHeight
}, this.options.resizeDuration, 'swing', function(){
postResize();
});
}else{
postResize();
}};
Lightbox.prototype.showImage=function(){
this.$lightbox.find('.lb-loader').stop(true).hide();
this.$lightbox.find('.lb-image').fadeIn(this.options.imageFadeDuration);
this.updateNav();
this.updateDetails();
this.preloadNeighboringImages();
this.enableKeyboardNav();
};
Lightbox.prototype.updateNav=function(){
var alwaysShowNav=false;
try {
document.createEvent('TouchEvent');
alwaysShowNav=(this.options.alwaysShowNavOnTouchDevices) ? true:false;
} catch (e){}
this.$lightbox.find('.lb-nav').show();
if(this.album.length > 1){
if(this.options.wrapAround){
if(alwaysShowNav){
this.$lightbox.find('.lb-prev, .lb-next').css('opacity', '1');
}
this.$lightbox.find('.lb-prev, .lb-next').show();
}else{
if(this.currentImageIndex > 0){
this.$lightbox.find('.lb-prev').show();
if(alwaysShowNav){
this.$lightbox.find('.lb-prev').css('opacity', '1');
}}
if(this.currentImageIndex < this.album.length - 1){
this.$lightbox.find('.lb-next').show();
if(alwaysShowNav){
this.$lightbox.find('.lb-next').css('opacity', '1');
}}
}}
};
Lightbox.prototype.updateDetails=function(){
var self=this;
if(typeof this.album[this.currentImageIndex].title!=='undefined' &&
this.album[this.currentImageIndex].title!==''){
var $caption=this.$lightbox.find('.lb-caption');
if(this.options.sanitizeTitle){
$caption.text(this.album[this.currentImageIndex].title);
}else{
$caption.html(this.album[this.currentImageIndex].title);
}
$caption.fadeIn('fast');
}
if(this.album.length > 1&&this.options.showImageNumberLabel){
var labelText=this.imageCountLabel(this.currentImageIndex + 1, this.album.length);
this.$lightbox.find('.lb-number').text(labelText).fadeIn('fast');
}else{
this.$lightbox.find('.lb-number').hide();
}
this.$outerContainer.removeClass('animating');
this.$lightbox.find('.lb-dataContainer').fadeIn(this.options.resizeDuration, function(){
return self.sizeOverlay();
});
};
Lightbox.prototype.preloadNeighboringImages=function(){
if(this.album.length > this.currentImageIndex + 1){
var preloadNext=new Image();
preloadNext.src=this.album[this.currentImageIndex + 1].link;
}
if(this.currentImageIndex > 0){
var preloadPrev=new Image();
preloadPrev.src=this.album[this.currentImageIndex - 1].link;
}};
Lightbox.prototype.enableKeyboardNav=function(){
this.$lightbox.on('keyup.keyboard', $.proxy(this.keyboardAction, this));
this.$overlay.on('keyup.keyboard', $.proxy(this.keyboardAction, this));
};
Lightbox.prototype.disableKeyboardNav=function(){
this.$lightbox.off('.keyboard');
this.$overlay.off('.keyboard');
};
Lightbox.prototype.keyboardAction=function(event){
var KEYCODE_ESC=27;
var KEYCODE_LEFTARROW=37;
var KEYCODE_RIGHTARROW=39;
var keycode=event.keyCode;
if(keycode===KEYCODE_ESC){
event.stopPropagation();
this.end();
}else if(keycode===KEYCODE_LEFTARROW){
if(this.currentImageIndex!==0){
this.changeImage(this.currentImageIndex - 1);
}else if(this.options.wrapAround&&this.album.length > 1){
this.changeImage(this.album.length - 1);
}}else if(keycode===KEYCODE_RIGHTARROW){
if(this.currentImageIndex!==this.album.length - 1){
this.changeImage(this.currentImageIndex + 1);
}else if(this.options.wrapAround&&this.album.length > 1){
this.changeImage(0);
}}
};
Lightbox.prototype.end=function(){
this.disableKeyboardNav();
$(window).off('resize', this.sizeOverlay);
this.$lightbox.fadeOut(this.options.fadeDuration);
this.$overlay.fadeOut(this.options.fadeDuration);
if(this.options.disableScrolling){
$('body').removeClass('lb-disable-scrolling');
}};
return new Lightbox();
}));
(function(){"use strict";function e(){}var t=e.prototype,n=this,i=n.EventEmitter;function r(e,t){for(var n=e.length;n--;)if(e[n].listener===t)return n;return-1}function s(e){return function(){return this[e].apply(this,arguments)}}t.getListeners=function(e){var t,n,i=this._getEvents();if("object"==typeof e)for(n in t={},i)i.hasOwnProperty(n)&&e.test(n)&&(t[n]=i[n]);else t=i[e]||(i[e]=[]);return t},t.flattenListeners=function(e){var t,n=[];for(t=0;t<e.length;t+=1)n.push(e[t].listener);return n},t.getListenersAsObject=function(e){var t,n=this.getListeners(e);return n instanceof Array&&((t={})[e]=n),t||n},t.addListener=function(e,t){var n,i=this.getListenersAsObject(e),s="object"==typeof t;for(n in i)i.hasOwnProperty(n)&&-1===r(i[n],t)&&i[n].push(s?t:{listener:t,once:!1});return this},t.on=s("addListener"),t.addOnceListener=function(e,t){return this.addListener(e,{listener:t,once:!0})},t.once=s("addOnceListener"),t.defineEvent=function(e){return this.getListeners(e),this},t.defineEvents=function(e){for(var t=0;t<e.length;t+=1)this.defineEvent(e[t]);return this},t.removeListener=function(e,t){var n,i,s=this.getListenersAsObject(e);for(i in s)s.hasOwnProperty(i)&&-1!==(n=r(s[i],t))&&s[i].splice(n,1);return this},t.off=s("removeListener"),t.addListeners=function(e,t){return this.manipulateListeners(!1,e,t)},t.removeListeners=function(e,t){return this.manipulateListeners(!0,e,t)},t.manipulateListeners=function(e,t,n){var i,r,s=e?this.removeListener:this.addListener,o=e?this.removeListeners:this.addListeners;if("object"!=typeof t||t instanceof RegExp)for(i=n.length;i--;)s.call(this,t,n[i]);else for(i in t)t.hasOwnProperty(i)&&(r=t[i])&&("function"==typeof r?s.call(this,i,r):o.call(this,i,r));return this},t.removeEvent=function(e){var t,n=typeof e,i=this._getEvents();if("string"===n)delete i[e];else if("object"===n)for(t in i)i.hasOwnProperty(t)&&e.test(t)&&delete i[t];else delete this._events;return this},t.removeAllListeners=s("removeEvent"),t.emitEvent=function(e,t){var n,i,r,s=this.getListenersAsObject(e);for(r in s)if(s.hasOwnProperty(r))for(i=s[r].length;i--;)!0===(n=s[r][i]).once&&this.removeListener(e,n.listener),n.listener.apply(this,t||[])===this._getOnceReturnValue()&&this.removeListener(e,n.listener);return this},t.trigger=s("emitEvent"),t.emit=function(e){var t=Array.prototype.slice.call(arguments,1);return this.emitEvent(e,t)},t.setOnceReturnValue=function(e){return this._onceReturnValue=e,this},t._getOnceReturnValue=function(){return!this.hasOwnProperty("_onceReturnValue")||this._onceReturnValue},t._getEvents=function(){return this._events||(this._events={})},e.noConflict=function(){return n.EventEmitter=i,e},"function"==typeof define&&define.amd?define("eventEmitter/EventEmitter",[],function(){return e}):"object"==typeof module&&module.exports?module.exports=e:this.EventEmitter=e}).call(this),
function(e){var t=document.documentElement,n=function(){};function i(t){var n=e.event;return n.target=n.target||n.srcElement||t,n}t.addEventListener?n=function(e,t,n){e.addEventListener(t,n,!1)}:t.attachEvent&&(n=function(e,t,n){e[t+n]=n.handleEvent?function(){var t=i(e);n.handleEvent.call(n,t)}:function(){var t=i(e);n.call(e,t)},e.attachEvent("on"+t,e[t+n])});var r=function(){};t.removeEventListener?r=function(e,t,n){e.removeEventListener(t,n,!1)}:t.detachEvent&&(r=function(e,t,n){e.detachEvent("on"+t,e[t+n]);try{delete e[t+n]}catch(i){e[t+n]=void 0}});var s={bind:n,unbind:r};"function"==typeof define&&define.amd?define("eventie/eventie",s):e.eventie=s}(this),
function(e,t){"use strict";"function"==typeof define&&define.amd?define(["eventEmitter/EventEmitter","eventie/eventie"],function(n,i){return t(e,n,i)}):"object"==typeof module&&module.exports?module.exports=t(e,require("wolfy87-eventemitter"),require("eventie")):e.imagesLoaded=t(e,e.EventEmitter,e.eventie)}(window,function(e,t,n){var i=e.jQuery,r=e.console;function s(e,t){for(var n in t)e[n]=t[n];return e}var o=Object.prototype.toString;function h(e){var t=[];if(function(e){return"[object Array]"==o.call(e)}(e))t=e;else if("number"==typeof e.length)for(var n=0;n<e.length;n++)t.push(e[n]);else t.push(e);return t}function a(e,t,n){if(!(this instanceof a))return new a(e,t,n);"string"==typeof e&&(e=document.querySelectorAll(e)),this.elements=h(e),this.options=s({},this.options),"function"==typeof t?n=t:s(this.options,t),n&&this.on("always",n),this.getImages(),i&&(this.jqDeferred=new i.Deferred);var r=this;setTimeout(function(){r.check()})}a.prototype=new t,a.prototype.options={},a.prototype.getImages=function(){this.images=[];for(var e=0;e<this.elements.length;e++){var t=this.elements[e];this.addElementImages(t)}},a.prototype.addElementImages=function(e){"IMG"==e.nodeName&&this.addImage(e),!0===this.options.background&&this.addElementBackgroundImages(e);var t=e.nodeType;if(t&&u[t]){for(var n=e.querySelectorAll("img"),i=0;i<n.length;i++){var r=n[i];this.addImage(r)}if("string"==typeof this.options.background){var s=e.querySelectorAll(this.options.background);for(i=0;i<s.length;i++){var o=s[i];this.addElementBackgroundImages(o)}}}};var u={1:!0,9:!0,11:!0};a.prototype.addElementBackgroundImages=function(e){for(var t=c(e),n=/url\(['"]*([^'"\)]+)['"]*\)/gi,i=n.exec(t.backgroundImage);null!==i;){var r=i&&i[1];r&&this.addBackground(r,e),i=n.exec(t.backgroundImage)}};var c=e.getComputedStyle||function(e){return e.currentStyle};function f(e){this.img=e}function d(e,t){this.url=e,this.element=t,this.img=new Image}return a.prototype.addImage=function(e){var t=new f(e);this.images.push(t)},a.prototype.addBackground=function(e,t){var n=new d(e,t);this.images.push(n)},a.prototype.check=function(){var e=this;if(this.progressedCount=0,this.hasAnyBroken=!1,this.images.length)for(var t=0;t<this.images.length;t++){var n=this.images[t];n.once("progress",i),n.check()}else this.complete();function i(t,n,i){setTimeout(function(){e.progress(t,n,i)})}},a.prototype.progress=function(e,t,n){this.progressedCount++,this.hasAnyBroken=this.hasAnyBroken||!e.isLoaded,this.emit("progress",this,e,t),this.jqDeferred&&this.jqDeferred.notify&&this.jqDeferred.notify(this,e),this.progressedCount==this.images.length&&this.complete(),this.options.debug&&r&&r.log("progress: "+n,e,t)},a.prototype.complete=function(){var e=this.hasAnyBroken?"fail":"done";if(this.isComplete=!0,this.emit(e,this),this.emit("always",this),this.jqDeferred){var t=this.hasAnyBroken?"reject":"resolve";this.jqDeferred[t](this)}},f.prototype=new t,f.prototype.check=function(){this.getIsImageComplete()?this.confirm(0!==this.img.naturalWidth,"naturalWidth"):(this.proxyImage=new Image,n.bind(this.proxyImage,"load",this),n.bind(this.proxyImage,"error",this),n.bind(this.img,"load",this),n.bind(this.img,"error",this),this.proxyImage.src=this.img.src)},f.prototype.getIsImageComplete=function(){return this.img.complete&&void 0!==this.img.naturalWidth},f.prototype.confirm=function(e,t){this.isLoaded=e,this.emit("progress",this,this.img,t)},f.prototype.handleEvent=function(e){var t="on"+e.type;this[t]&&this[t](e)},f.prototype.onload=function(){this.confirm(!0,"onload"),this.unbindEvents()},f.prototype.onerror=function(){this.confirm(!1,"onerror"),this.unbindEvents()},f.prototype.unbindEvents=function(){n.unbind(this.proxyImage,"load",this),n.unbind(this.proxyImage,"error",this),n.unbind(this.img,"load",this),n.unbind(this.img,"error",this)},d.prototype=new f,d.prototype.check=function(){n.bind(this.img,"load",this),n.bind(this.img,"error",this),this.img.src=this.url,this.getIsImageComplete()&&(this.confirm(0!==this.img.naturalWidth,"naturalWidth"),this.unbindEvents())},d.prototype.unbindEvents=function(){n.unbind(this.img,"load",this),n.unbind(this.img,"error",this)},d.prototype.confirm=function(e,t){this.isLoaded=e,this.emit("progress",this,this.element,t)},a.makeJQueryPlugin=function(t){(t=t||e.jQuery)&&((i=t).fn.imagesLoaded=function(e,t){return new a(this,e,t).jqDeferred.promise(i(this))})},a.makeJQueryPlugin(),a});
var sowb=window.sowb||{};jQuery(function(i){sowb.setupImageGrids=function(){i(".sow-image-grid-wrapper").each(function(){var t=i(this);t.imagesLoaded(function(){var a=t.data("max-width"),e=t.data("max-height");void 0!==a||void 0!==e?t.find("img").each(function(){var t=i(this).css("opacity",1),o=t.width()/t.height(),s=[];void 0!==a&&t.width()>a&&s.push(a),void 0!==e&&t.height()>e&&s.push(Math.round(e*o)),s.length&&(s=Math.min.apply(Math,s),t.css("max-width",s+"px"))}):t.find("img").css("opacity",1);var o=function(){};i(window).on("resize",o);var s=document.createEvent("Event");s.initEvent("layoutComplete",!0,!0),t.get(0).dispatchEvent(s)})})},sowb.setupImageGrids(),i(sowb).on("setup_widgets",sowb.setupImageGrids)}),window.sowb=sowb;
(function(modules){
var installedModules={};
function __webpack_require__(moduleId){
if(installedModules[moduleId]){
return installedModules[moduleId].exports;
}
var module=installedModules[moduleId]={
i: moduleId,
l: false,
exports: {}
};
modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
module.l=true;
return module.exports;
}
__webpack_require__.m=modules;
__webpack_require__.c=installedModules;
__webpack_require__.d=function(exports, name, getter){
if(!__webpack_require__.o(exports, name)){
Object.defineProperty(exports, name, {
configurable: false,
enumerable: true,
get: getter
});
}
};
__webpack_require__.n=function(module){
var getter=module&&module.__esModule ?
function getDefault(){ return module['default']; } :
function getModuleExports(){ return module; };
__webpack_require__.d(getter, 'a', getter);
return getter;
};
__webpack_require__.o=function(object, property){ return Object.prototype.hasOwnProperty.call(object, property); };
__webpack_require__.p="";
return __webpack_require__(__webpack_require__.s=1);
})
([
(function(module, exports){
module.exports=jQuery;
}),
(function(module, exports, __webpack_require__){
module.exports=__webpack_require__(2);
}),
(function(module, exports, __webpack_require__){
"use strict";
var _jquery=__webpack_require__(0);
var _jquery2=_interopRequireDefault(_jquery);
var _whatInput=__webpack_require__(3);
var _whatInput2=_interopRequireDefault(_whatInput);
var _foundationSites=__webpack_require__(4);
var _foundationSites2=_interopRequireDefault(_foundationSites);
function _interopRequireDefault(obj){ return obj&&obj.__esModule ? obj:{ default: obj };}
window.$=_jquery2.default;
(0, _jquery2.default)(document).foundation();
}),
(function(module, exports, __webpack_require__){
(function webpackUniversalModuleDefinition(root, factory){
if(true)
module.exports=factory();
else if(typeof define==='function'&&define.amd)
define("whatInput", [], factory);
else if(typeof exports==='object')
exports["whatInput"]=factory();
else
root["whatInput"]=factory();
})(this, function(){
return  (function(modules){
var installedModules={};
function __webpack_require__(moduleId){
if(installedModules[moduleId])
return installedModules[moduleId].exports;
var module=installedModules[moduleId]={
exports: {},
id: moduleId,
loaded: false
};
modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
module.loaded=true;
return module.exports;
}
__webpack_require__.m=modules;
__webpack_require__.c=installedModules;
__webpack_require__.p="";
return __webpack_require__(0);
})
([
function(module, exports){
'use strict';
module.exports=function (){
var currentInput='initial';
var currentIntent=null;
var doc=document.documentElement;
var formInputs=['input', 'select', 'textarea'];
var functionList=[];
var ignoreMap=[16,
17,
18,
91,
93 
];
var changeIntentMap=[9 
];
var inputMap={
keydown: 'keyboard',
keyup: 'keyboard',
mousedown: 'mouse',
mousemove: 'mouse',
MSPointerDown: 'pointer',
MSPointerMove: 'pointer',
pointerdown: 'pointer',
pointermove: 'pointer',
touchstart: 'touch'
};
var inputTypes=[];
var isBuffering=false;
var isScrolling=false;
var mousePos={
x: null,
y: null
};
var pointerMap={
2: 'touch',
3: 'touch',
4: 'mouse'
};
var supportsPassive=false;
try {
var opts=Object.defineProperty({}, 'passive', {
get: function get(){
supportsPassive=true;
}});
window.addEventListener('test', null, opts);
} catch (e){}
var setUp=function setUp(){
inputMap[detectWheel()]='mouse';
addListeners();
setInput();
};
var addListeners=function addListeners(){
var options=supportsPassive ? { passive: true }:false;
if(window.PointerEvent){
doc.addEventListener('pointerdown', updateInput);
doc.addEventListener('pointermove', setIntent);
}else if(window.MSPointerEvent){
doc.addEventListener('MSPointerDown', updateInput);
doc.addEventListener('MSPointerMove', setIntent);
}else{
doc.addEventListener('mousedown', updateInput);
doc.addEventListener('mousemove', setIntent);
if('ontouchstart' in window){
doc.addEventListener('touchstart', touchBuffer, options);
doc.addEventListener('touchend', touchBuffer);
}}
doc.addEventListener(detectWheel(), setIntent, options);
doc.addEventListener('keydown', updateInput);
doc.addEventListener('keyup', updateInput);
};
var updateInput=function updateInput(event){
if(!isBuffering){
var eventKey=event.which;
var value=inputMap[event.type];
if(value==='pointer') value=pointerType(event);
if(currentInput!==value||currentIntent!==value){
var activeElem=document.activeElement;
var activeInput=false;
var notFormInput=activeElem&&activeElem.nodeName&&formInputs.indexOf(activeElem.nodeName.toLowerCase())===-1;
if(notFormInput||changeIntentMap.indexOf(eventKey)!==-1){
activeInput=true;
}
if(value==='touch' ||
value==='mouse' ||
value==='keyboard'&&eventKey&&activeInput&&ignoreMap.indexOf(eventKey)===-1){
currentInput=currentIntent=value;
setInput();
}}
}};
var setInput=function setInput(){
doc.setAttribute('data-whatinput', currentInput);
doc.setAttribute('data-whatintent', currentInput);
if(inputTypes.indexOf(currentInput)===-1){
inputTypes.push(currentInput);
doc.className +=' whatinput-types-' + currentInput;
}
fireFunctions('input');
};
var setIntent=function setIntent(event){
if(mousePos['x']!==event.screenX||mousePos['y']!==event.screenY){
isScrolling=false;
mousePos['x']=event.screenX;
mousePos['y']=event.screenY;
}else{
isScrolling=true;
}
if(!isBuffering&&!isScrolling){
var value=inputMap[event.type];
if(value==='pointer') value=pointerType(event);
if(currentIntent!==value){
currentIntent=value;
doc.setAttribute('data-whatintent', currentIntent);
fireFunctions('intent');
}}
};
var touchBuffer=function touchBuffer(event){
if(event.type==='touchstart'){
isBuffering=false;
updateInput(event);
}else{
isBuffering=true;
}};
var fireFunctions=function fireFunctions(type){
for (var i=0, len=functionList.length; i < len; i++){
if(functionList[i].type===type){
functionList[i].fn.call(undefined, currentIntent);
}}
};
var pointerType=function pointerType(event){
if(typeof event.pointerType==='number'){
return pointerMap[event.pointerType];
}else{
return event.pointerType==='pen' ? 'touch':event.pointerType;
}};
var detectWheel=function detectWheel(){
var wheelType=void 0;
if('onwheel' in document.createElement('div')){
wheelType='wheel';
}else{
wheelType=document.onmousewheel!==undefined ? 'mousewheel':'DOMMouseScroll';
}
return wheelType;
};
var objPos=function objPos(match){
for (var i=0, len=functionList.length; i < len; i++){
if(functionList[i].fn===match){
return i;
}}
};
if('addEventListener' in window&&Array.prototype.indexOf){
setUp();
}
return {
ask: function ask(opt){
return opt==='loose' ? currentIntent:currentInput;
},
types: function types(){
return inputTypes;
},
ignoreKeys: function ignoreKeys(arr){
ignoreMap=arr;
},
registerOnChange: function registerOnChange(fn, eventType){
functionList.push({
fn: fn,
type: eventType||'input'
});
},
unRegisterOnChange: function unRegisterOnChange(fn){
var position=objPos(fn);
if(position){
functionList.splice(position, 1);
}}
};}();
}
])
});
;
}),
(function(module, exports, __webpack_require__){
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.Foundation=exports.ResponsiveAccordionTabs=exports.Tooltip=exports.Toggler=exports.Tabs=exports.Sticky=exports.SmoothScroll=exports.Slider=exports.Reveal=exports.ResponsiveToggle=exports.ResponsiveMenu=exports.Orbit=exports.OffCanvas=exports.Magellan=exports.Interchange=exports.Equalizer=exports.DropdownMenu=exports.Dropdown=exports.Drilldown=exports.AccordionMenu=exports.Accordion=exports.Abide=exports.Triggers=exports.Touch=exports.Timer=exports.Nest=exports.Move=exports.Motion=exports.MediaQuery=exports.Keyboard=exports.onImagesLoaded=exports.Box=exports.Core=exports.CoreUtils=undefined;
var _typeof2=typeof Symbol==="function"&&typeof Symbol.iterator==="symbol" ? function (obj){ return typeof obj; }:function (obj){ return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype ? "symbol":typeof obj; };
var _jquery=__webpack_require__(0);
var _jquery2=_interopRequireDefault(_jquery);
function _interopRequireDefault(obj){ return obj&&obj.__esModule ? obj:{ default: obj };}
function _typeof(obj){
if(typeof Symbol==="function"&&_typeof2(Symbol.iterator)==="symbol"){
_typeof=function _typeof(obj){
return typeof obj==="undefined" ? "undefined":_typeof2(obj);
};}else{
_typeof=function _typeof(obj){
return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype ? "symbol":typeof obj==="undefined" ? "undefined":_typeof2(obj);
};}
return _typeof(obj);
}
function _classCallCheck(instance, Constructor){
if(!(instance instanceof Constructor)){
throw new TypeError("Cannot call a class as a function");
}}
function _defineProperties(target, props){
for (var i=0; i < props.length; i++){
var descriptor=props[i];
descriptor.enumerable=descriptor.enumerable||false;
descriptor.configurable=true;
if("value" in descriptor) descriptor.writable=true;
Object.defineProperty(target, descriptor.key, descriptor);
}}
function _createClass(Constructor, protoProps, staticProps){
if(protoProps) _defineProperties(Constructor.prototype, protoProps);
if(staticProps) _defineProperties(Constructor, staticProps);
return Constructor;
}
function _inherits(subClass, superClass){
if(typeof superClass!=="function"&&superClass!==null){
throw new TypeError("Super expression must either be null or a function");
}
subClass.prototype=Object.create(superClass&&superClass.prototype, {
constructor: {
value: subClass,
writable: true,
configurable: true
}});
if(superClass) _setPrototypeOf(subClass, superClass);
}
function _getPrototypeOf(o){
_getPrototypeOf=Object.setPrototypeOf ? Object.getPrototypeOf:function _getPrototypeOf(o){
return o.__proto__||Object.getPrototypeOf(o);
};
return _getPrototypeOf(o);
}
function _setPrototypeOf(o, p){
_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o, p){
o.__proto__=p;
return o;
};
return _setPrototypeOf(o, p);
}
function _assertThisInitialized(self){
if(self===void 0){
throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
}
return self;
}
function _possibleConstructorReturn(self, call){
if(call&&((typeof call==="undefined" ? "undefined":_typeof2(call))==="object"||typeof call==="function")){
return call;
}
return _assertThisInitialized(self);
}
function _superPropBase(object, property){
while (!Object.prototype.hasOwnProperty.call(object, property)){
object=_getPrototypeOf(object);
if(object===null) break;
}
return object;
}
function _get(target, property, receiver){
if(typeof Reflect!=="undefined"&&Reflect.get){
_get=Reflect.get;
}else{
_get=function _get(target, property, receiver){
var base=_superPropBase(target, property);
if(!base) return;
var desc=Object.getOwnPropertyDescriptor(base, property);
if(desc.get){
return desc.get.call(receiver);
}
return desc.value;
};}
return _get(target, property, receiver||target);
}
function rtl(){
return (0, _jquery2.default)('html').attr('dir')==='rtl';
}
function GetYoDigits(length, namespace){
length=length||6;
return Math.round(Math.pow(36, length + 1) - Math.random() * Math.pow(36, length)).toString(36).slice(1) + (namespace ? "-".concat(namespace):'');
}
function RegExpEscape(str){
return str.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, '\\$&');
}
function transitionend($elem){
var transitions={
'transition': 'transitionend',
'WebkitTransition': 'webkitTransitionEnd',
'MozTransition': 'transitionend',
'OTransition': 'otransitionend'
};
var elem=document.createElement('div'),
end;
for (var t in transitions){
if(typeof elem.style[t]!=='undefined'){
end=transitions[t];
}}
if(end){
return end;
}else{
end=setTimeout(function (){
$elem.triggerHandler('transitionend', [$elem]);
}, 1);
return 'transitionend';
}}
function onLoad($elem, handler){
var didLoad=document.readyState==='complete';
var eventType=(didLoad ? '_didLoad':'load') + '.zf.util.onLoad';
var cb=function cb(){
return $elem.triggerHandler(eventType);
};
if($elem){
if(handler) $elem.one(eventType, handler);
if(didLoad) setTimeout(cb);else (0, _jquery2.default)(window).one('load', cb);
}
return eventType;
}
function ignoreMousedisappear(handler){
var _ref=arguments.length > 1&&arguments[1]!==undefined ? arguments[1]:{},
_ref$ignoreLeaveWindo=_ref.ignoreLeaveWindow,
ignoreLeaveWindow=_ref$ignoreLeaveWindo===void 0 ? false:_ref$ignoreLeaveWindo,
_ref$ignoreReappear=_ref.ignoreReappear,
ignoreReappear=_ref$ignoreReappear===void 0 ? false:_ref$ignoreReappear;
return function leaveEventHandler(eLeave){
for (var _len=arguments.length, rest=new Array(_len > 1 ? _len - 1:0), _key=1; _key < _len; _key++){
rest[_key - 1]=arguments[_key];
}
var callback=handler.bind.apply(handler, [this, eLeave].concat(rest));
if(eLeave.relatedTarget!==null){
return callback();
}
setTimeout(function leaveEventDebouncer(){
if(!ignoreLeaveWindow&&document.hasFocus&&!document.hasFocus()){
return callback();
}
if(!ignoreReappear){
(0, _jquery2.default)(document).one('mouseenter', function reenterEventHandler(eReenter){
if(!(0, _jquery2.default)(eLeave.currentTarget).has(eReenter.target).length){
eLeave.relatedTarget=eReenter.target;
callback();
}});
}}, 0);
};}
var foundation_core_utils=Object.freeze({
rtl: rtl,
GetYoDigits: GetYoDigits,
RegExpEscape: RegExpEscape,
transitionend: transitionend,
onLoad: onLoad,
ignoreMousedisappear: ignoreMousedisappear
});
window.matchMedia||(window.matchMedia=function (){
var styleMedia=window.styleMedia||window.media;
if(!styleMedia){
var style=document.createElement('style'),
script=document.getElementsByTagName('script')[0],
info=null;
style.type='text/css';
style.id='matchmediajs-test';
if(!script){
document.head.appendChild(style);
}else{
script.parentNode.insertBefore(style, script);
} // 'style.currentStyle' is used by IE <=8 and 'window.getComputedStyle' for all other browsers
info='getComputedStyle' in window&&window.getComputedStyle(style, null)||style.currentStyle;
styleMedia={
matchMedium: function matchMedium(media){
var text='@media ' + media + '{ #matchmediajs-test { width: 1px; }}'; // 'style.styleSheet' is used by IE <=8 and 'style.textContent' for all other browsers
if(style.styleSheet){
style.styleSheet.cssText=text;
}else{
style.textContent=text;
}
return info.width==='1px';
}};}
return function (media){
return {
matches: styleMedia.matchMedium(media||'all'),
media: media||'all'
};};
}());
var MediaQuery={
queries: [],
current: '',
_init: function _init(){
var self=this;
var $meta=(0, _jquery2.default)('meta.foundation-mq');
if(!$meta.length){
(0, _jquery2.default)('<meta class="foundation-mq">').appendTo(document.head);
}
var extractedStyles=(0, _jquery2.default)('.foundation-mq').css('font-family');
var namedQueries;
namedQueries=parseStyleToObject(extractedStyles);
for (var key in namedQueries){
if(namedQueries.hasOwnProperty(key)){
self.queries.push({
name: key,
value: "only screen and (min-width: ".concat(namedQueries[key], ")")
});
}}
this.current=this._getCurrentSize();
this._watcher();
},
atLeast: function atLeast(size){
var query=this.get(size);
if(query){
return window.matchMedia(query).matches;
}
return false;
},
is: function is(size){
size=size.trim().split(' ');
if(size.length > 1&&size[1]==='only'){
if(size[0]===this._getCurrentSize()) return true;
}else{
return this.atLeast(size[0]);
}
return false;
},
get: function get(size){
for (var i in this.queries){
if(this.queries.hasOwnProperty(i)){
var query=this.queries[i];
if(size===query.name) return query.value;
}}
return null;
},
_getCurrentSize: function _getCurrentSize(){
var matched;
for (var i=0; i < this.queries.length; i++){
var query=this.queries[i];
if(window.matchMedia(query.value).matches){
matched=query;
}}
if(_typeof(matched)==='object'){
return matched.name;
}else{
return matched;
}},
_watcher: function _watcher(){
var _this=this;
(0, _jquery2.default)(window).off('resize.zf.mediaquery').on('resize.zf.mediaquery', function (){
var newSize=_this._getCurrentSize(),
currentSize=_this.current;
if(newSize!==currentSize){
_this.current=newSize;
(0, _jquery2.default)(window).trigger('changed.zf.mediaquery', [newSize, currentSize]);
}});
}}; // Thank you: https://github.com/sindresorhus/query-string
function parseStyleToObject(str){
var styleObject={};
if(typeof str!=='string'){
return styleObject;
}
str=str.trim().slice(1, -1);
if(!str){
return styleObject;
}
styleObject=str.split('&').reduce(function (ret, param){
var parts=param.replace(/\+/g, ' ').split('=');
var key=parts[0];
var val=parts[1];
key=decodeURIComponent(key);
val=typeof val==='undefined' ? null:decodeURIComponent(val);
if(!ret.hasOwnProperty(key)){
ret[key]=val;
}else if(Array.isArray(ret[key])){
ret[key].push(val);
}else{
ret[key]=[ret[key], val];
}
return ret;
}, {});
return styleObject;
}
var FOUNDATION_VERSION='6.5.1';
var Foundation={
version: FOUNDATION_VERSION,
_plugins: {},
_uuids: [],
plugin: function plugin(_plugin, name){
var className=name||functionName(_plugin);
var attrName=hyphenate(className);
this._plugins[attrName]=this[className]=_plugin;
},
registerPlugin: function registerPlugin(plugin, name){
var pluginName=name ? hyphenate(name):functionName(plugin.constructor).toLowerCase();
plugin.uuid=GetYoDigits(6, pluginName);
if(!plugin.$element.attr("data-".concat(pluginName))){
plugin.$element.attr("data-".concat(pluginName), plugin.uuid);
}
if(!plugin.$element.data('zfPlugin')){
plugin.$element.data('zfPlugin', plugin);
}
plugin.$element.trigger("init.zf.".concat(pluginName));
this._uuids.push(plugin.uuid);
return;
},
unregisterPlugin: function unregisterPlugin(plugin){
var pluginName=hyphenate(functionName(plugin.$element.data('zfPlugin').constructor));
this._uuids.splice(this._uuids.indexOf(plugin.uuid), 1);
plugin.$element.removeAttr("data-".concat(pluginName)).removeData('zfPlugin')
.trigger("destroyed.zf.".concat(pluginName));
for (var prop in plugin){
plugin[prop]=null;
}
return;
},
reInit: function reInit(plugins){
var isJQ=plugins instanceof _jquery2.default;
try {
if(isJQ){
plugins.each(function (){
(0, _jquery2.default)(this).data('zfPlugin')._init();
});
}else{
var type=_typeof(plugins),
_this=this,
fns={
'object': function object(plgs){
plgs.forEach(function (p){
p=hyphenate(p);
(0, _jquery2.default)('[data-' + p + ']').foundation('_init');
});
},
'string': function string(){
plugins=hyphenate(plugins);
(0, _jquery2.default)('[data-' + plugins + ']').foundation('_init');
},
'undefined': function undefined(){
this['object'](Object.keys(_this._plugins));
}};
fns[type](plugins);
}} catch (err){
console.error(err);
} finally {
return plugins;
}},
reflow: function reflow(elem, plugins){
if(typeof plugins==='undefined'){
plugins=Object.keys(this._plugins);
}
else if(typeof plugins==='string'){
plugins=[plugins];
}
var _this=this;
_jquery2.default.each(plugins, function (i, name){
var plugin=_this._plugins[name];
var $elem=(0, _jquery2.default)(elem).find('[data-' + name + ']').addBack('[data-' + name + ']');
$elem.each(function (){
var $el=(0, _jquery2.default)(this),
opts={};
if($el.data('zfPlugin')){
console.warn("Tried to initialize " + name + " on an element that already has a Foundation plugin.");
return;
}
if($el.attr('data-options')){
var thing=$el.attr('data-options').split(';').forEach(function (e, i){
var opt=e.split(':').map(function (el){
return el.trim();
});
if(opt[0]) opts[opt[0]]=parseValue(opt[1]);
});
}
try {
$el.data('zfPlugin', new plugin((0, _jquery2.default)(this), opts));
} catch (er){
console.error(er);
} finally {
return;
}});
});
},
getFnName: functionName,
addToJquery: function addToJquery($$$1){
var foundation=function foundation(method){
var type=_typeof(method),
$noJS=$$$1('.no-js');
if($noJS.length){
$noJS.removeClass('no-js');
}
if(type==='undefined'){
MediaQuery._init();
Foundation.reflow(this);
}else if(type==='string'){
var args=Array.prototype.slice.call(arguments, 1);
var plugClass=this.data('zfPlugin');
if(typeof plugClass!=='undefined'&&typeof plugClass[method]!=='undefined'){
if(this.length===1){
plugClass[method].apply(plugClass, args);
}else{
this.each(function (i, el){
plugClass[method].apply($$$1(el).data('zfPlugin'), args);
});
}}else{
throw new ReferenceError("We're sorry, '" + method + "' is not an available method for " + (plugClass ? functionName(plugClass):'this element') + '.');
}}else{
throw new TypeError("We're sorry, ".concat(type, " is not a valid parameter. You must use a string representing the method you wish to invoke."));
}
return this;
};
$$$1.fn.foundation=foundation;
return $$$1;
}};
Foundation.util={
throttle: function throttle(func, delay){
var timer=null;
return function (){
var context=this,
args=arguments;
if(timer===null){
timer=setTimeout(function (){
func.apply(context, args);
timer=null;
}, delay);
}};}};
window.Foundation=Foundation;
(function (){
if(!Date.now||!window.Date.now) window.Date.now=Date.now=function (){
return new Date().getTime();
};
var vendors=['webkit', 'moz'];
for (var i=0; i < vendors.length&&!window.requestAnimationFrame; ++i){
var vp=vendors[i];
window.requestAnimationFrame=window[vp + 'RequestAnimationFrame'];
window.cancelAnimationFrame=window[vp + 'CancelAnimationFrame']||window[vp + 'CancelRequestAnimationFrame'];
}
if(/iP(ad|hone|od).*OS 6/.test(window.navigator.userAgent)||!window.requestAnimationFrame||!window.cancelAnimationFrame){
var lastTime=0;
window.requestAnimationFrame=function (callback){
var now=Date.now();
var nextTime=Math.max(lastTime + 16, now);
return setTimeout(function (){
callback(lastTime=nextTime);
}, nextTime - now);
};
window.cancelAnimationFrame=clearTimeout;
}
if(!window.performance||!window.performance.now){
window.performance={
start: Date.now(),
now: function now(){
return Date.now() - this.start;
}};}})();
if(!Function.prototype.bind){
Function.prototype.bind=function (oThis){
if(typeof this!=='function'){
throw new TypeError('Function.prototype.bind - what is trying to be bound is not callable');
}
var aArgs=Array.prototype.slice.call(arguments, 1),
fToBind=this,
fNOP=function fNOP(){},
fBound=function fBound(){
return fToBind.apply(this instanceof fNOP ? this:oThis, aArgs.concat(Array.prototype.slice.call(arguments)));
};
if(this.prototype){
fNOP.prototype=this.prototype;
}
fBound.prototype=new fNOP();
return fBound;
};}
function functionName(fn){
if(typeof Function.prototype.name==='undefined'){
var funcNameRegex=/function\s([^(]{1,})\(/;
var results=funcNameRegex.exec(fn.toString());
return results&&results.length > 1 ? results[1].trim():"";
}else if(typeof fn.prototype==='undefined'){
return fn.constructor.name;
}else{
return fn.prototype.constructor.name;
}}
function parseValue(str){
if('true'===str) return true;else if('false'===str) return false;else if(!isNaN(str * 1)) return parseFloat(str);
return str;
}
function hyphenate(str){
return str.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();
}
var Box={
ImNotTouchingYou: ImNotTouchingYou,
OverlapArea: OverlapArea,
GetDimensions: GetDimensions,
GetOffsets: GetOffsets,
GetExplicitOffsets: GetExplicitOffsets
};
function ImNotTouchingYou(element, parent, lrOnly, tbOnly, ignoreBottom){
return OverlapArea(element, parent, lrOnly, tbOnly, ignoreBottom)===0;
}
function OverlapArea(element, parent, lrOnly, tbOnly, ignoreBottom){
var eleDims=GetDimensions(element),
topOver,
bottomOver,
leftOver,
rightOver;
if(parent){
var parDims=GetDimensions(parent);
bottomOver=parDims.height + parDims.offset.top - (eleDims.offset.top + eleDims.height);
topOver=eleDims.offset.top - parDims.offset.top;
leftOver=eleDims.offset.left - parDims.offset.left;
rightOver=parDims.width + parDims.offset.left - (eleDims.offset.left + eleDims.width);
}else{
bottomOver=eleDims.windowDims.height + eleDims.windowDims.offset.top - (eleDims.offset.top + eleDims.height);
topOver=eleDims.offset.top - eleDims.windowDims.offset.top;
leftOver=eleDims.offset.left - eleDims.windowDims.offset.left;
rightOver=eleDims.windowDims.width - (eleDims.offset.left + eleDims.width);
}
bottomOver=ignoreBottom ? 0:Math.min(bottomOver, 0);
topOver=Math.min(topOver, 0);
leftOver=Math.min(leftOver, 0);
rightOver=Math.min(rightOver, 0);
if(lrOnly){
return leftOver + rightOver;
}
if(tbOnly){
return topOver + bottomOver;
}
return Math.sqrt(topOver * topOver + bottomOver * bottomOver + leftOver * leftOver + rightOver * rightOver);
}
function GetDimensions(elem){
elem=elem.length ? elem[0]:elem;
if(elem===window||elem===document){
throw new Error("I'm sorry, Dave. I'm afraid I can't do that.");
}
var rect=elem.getBoundingClientRect(),
parRect=elem.parentNode.getBoundingClientRect(),
winRect=document.body.getBoundingClientRect(),
winY=window.pageYOffset,
winX=window.pageXOffset;
return {
width: rect.width,
height: rect.height,
offset: {
top: rect.top + winY,
left: rect.left + winX
},
parentDims: {
width: parRect.width,
height: parRect.height,
offset: {
top: parRect.top + winY,
left: parRect.left + winX
}},
windowDims: {
width: winRect.width,
height: winRect.height,
offset: {
top: winY,
left: winX
}}
};}
function GetOffsets(element, anchor, position, vOffset, hOffset, isOverflow){
console.log("NOTE: GetOffsets is deprecated in favor of GetExplicitOffsets and will be removed in 6.5");
switch (position){
case 'top':
return rtl() ? GetExplicitOffsets(element, anchor, 'top', 'left', vOffset, hOffset, isOverflow):GetExplicitOffsets(element, anchor, 'top', 'right', vOffset, hOffset, isOverflow);
case 'bottom':
return rtl() ? GetExplicitOffsets(element, anchor, 'bottom', 'left', vOffset, hOffset, isOverflow):GetExplicitOffsets(element, anchor, 'bottom', 'right', vOffset, hOffset, isOverflow);
case 'center top':
return GetExplicitOffsets(element, anchor, 'top', 'center', vOffset, hOffset, isOverflow);
case 'center bottom':
return GetExplicitOffsets(element, anchor, 'bottom', 'center', vOffset, hOffset, isOverflow);
case 'center left':
return GetExplicitOffsets(element, anchor, 'left', 'center', vOffset, hOffset, isOverflow);
case 'center right':
return GetExplicitOffsets(element, anchor, 'right', 'center', vOffset, hOffset, isOverflow);
case 'left bottom':
return GetExplicitOffsets(element, anchor, 'bottom', 'left', vOffset, hOffset, isOverflow);
case 'right bottom':
return GetExplicitOffsets(element, anchor, 'bottom', 'right', vOffset, hOffset, isOverflow);
case 'center':
return {
left: $eleDims.windowDims.offset.left + $eleDims.windowDims.width / 2 - $eleDims.width / 2 + hOffset,
top: $eleDims.windowDims.offset.top + $eleDims.windowDims.height / 2 - ($eleDims.height / 2 + vOffset)
};
case 'reveal':
return {
left: ($eleDims.windowDims.width - $eleDims.width) / 2 + hOffset,
top: $eleDims.windowDims.offset.top + vOffset
};
case 'reveal full':
return {
left: $eleDims.windowDims.offset.left,
top: $eleDims.windowDims.offset.top
};
break;
default:
return {
left: rtl() ? $anchorDims.offset.left - $eleDims.width + $anchorDims.width - hOffset:$anchorDims.offset.left + hOffset,
top: $anchorDims.offset.top + $anchorDims.height + vOffset
};}}
function GetExplicitOffsets(element, anchor, position, alignment, vOffset, hOffset, isOverflow){
var $eleDims=GetDimensions(element),
$anchorDims=anchor ? GetDimensions(anchor):null;
var topVal, leftVal;
switch (position){
case 'top':
topVal=$anchorDims.offset.top - ($eleDims.height + vOffset);
break;
case 'bottom':
topVal=$anchorDims.offset.top + $anchorDims.height + vOffset;
break;
case 'left':
leftVal=$anchorDims.offset.left - ($eleDims.width + hOffset);
break;
case 'right':
leftVal=$anchorDims.offset.left + $anchorDims.width + hOffset;
break;
}
switch (position){
case 'top':
case 'bottom':
switch (alignment){
case 'left':
leftVal=$anchorDims.offset.left + hOffset;
break;
case 'right':
leftVal=$anchorDims.offset.left - $eleDims.width + $anchorDims.width - hOffset;
break;
case 'center':
leftVal=isOverflow ? hOffset:$anchorDims.offset.left + $anchorDims.width / 2 - $eleDims.width / 2 + hOffset;
break;
}
break;
case 'right':
case 'left':
switch (alignment){
case 'bottom':
topVal=$anchorDims.offset.top - vOffset + $anchorDims.height - $eleDims.height;
break;
case 'top':
topVal=$anchorDims.offset.top + vOffset;
break;
case 'center':
topVal=$anchorDims.offset.top + vOffset + $anchorDims.height / 2 - $eleDims.height / 2;
break;
}
break;
}
return {
top: topVal,
left: leftVal
};}
function onImagesLoaded(images, callback){
var unloaded=images.length;
if(unloaded===0){
callback();
}
images.each(function (){
if(this.complete&&typeof this.naturalWidth!=='undefined'){
singleImageLoaded();
}else{
var image=new Image();
var events="load.zf.images error.zf.images";
(0, _jquery2.default)(image).one(events, function me(event){
(0, _jquery2.default)(this).off(events, me);
singleImageLoaded();
});
image.src=(0, _jquery2.default)(this).attr('src');
}});
function singleImageLoaded(){
unloaded--;
if(unloaded===0){
callback();
}}
}
var keyCodes={
9: 'TAB',
13: 'ENTER',
27: 'ESCAPE',
32: 'SPACE',
35: 'END',
36: 'HOME',
37: 'ARROW_LEFT',
38: 'ARROW_UP',
39: 'ARROW_RIGHT',
40: 'ARROW_DOWN'
};
var commands={};
function findFocusable($element){
if(!$element){
return false;
}
return $element.find('a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, *[tabindex], *[contenteditable]').filter(function (){
if(!(0, _jquery2.default)(this).is(':visible')||(0, _jquery2.default)(this).attr('tabindex') < 0){
return false;
}
return true;
});
}
function parseKey(event){
var key=keyCodes[event.which||event.keyCode]||String.fromCharCode(event.which).toUpperCase();
key=key.replace(/\W+/, '');
if(event.shiftKey) key="SHIFT_".concat(key);
if(event.ctrlKey) key="CTRL_".concat(key);
if(event.altKey) key="ALT_".concat(key);
key=key.replace(/_$/, '');
return key;
}
var Keyboard={
keys: getKeyCodes(keyCodes),
parseKey: parseKey,
handleKey: function handleKey(event, component, functions){
var commandList=commands[component],
keyCode=this.parseKey(event),
cmds,
command,
fn;
if(!commandList) return console.warn('Component not defined!');
if(typeof commandList.ltr==='undefined'){
cmds=commandList;
}else{
if(rtl()) cmds=_jquery2.default.extend({}, commandList.ltr, commandList.rtl);else cmds=_jquery2.default.extend({}, commandList.rtl, commandList.ltr);
}
command=cmds[keyCode];
fn=functions[command];
if(fn&&typeof fn==='function'){
var returnValue=fn.apply();
if(functions.handled||typeof functions.handled==='function'){
functions.handled(returnValue);
}}else{
if(functions.unhandled||typeof functions.unhandled==='function'){
functions.unhandled();
}}
},
findFocusable: findFocusable,
register: function register(componentName, cmds){
commands[componentName]=cmds;
},
trapFocus: function trapFocus($element){
var $focusable=findFocusable($element),
$firstFocusable=$focusable.eq(0),
$lastFocusable=$focusable.eq(-1);
$element.on('keydown.zf.trapfocus', function (event){
if(event.target===$lastFocusable[0]&&parseKey(event)==='TAB'){
event.preventDefault();
$firstFocusable.focus();
}else if(event.target===$firstFocusable[0]&&parseKey(event)==='SHIFT_TAB'){
event.preventDefault();
$lastFocusable.focus();
}});
},
releaseFocus: function releaseFocus($element){
$element.off('keydown.zf.trapfocus');
}};
function getKeyCodes(kcs){
var k={};
for (var kc in kcs){
k[kcs[kc]]=kcs[kc];
}
return k;
}
var initClasses=['mui-enter', 'mui-leave'];
var activeClasses=['mui-enter-active', 'mui-leave-active'];
var Motion={
animateIn: function animateIn(element, animation, cb){
animate(true, element, animation, cb);
},
animateOut: function animateOut(element, animation, cb){
animate(false, element, animation, cb);
}};
function Move(duration, elem, fn){
var anim,
prog,
start=null;
if(duration===0){
fn.apply(elem);
elem.trigger('finished.zf.animate', [elem]).triggerHandler('finished.zf.animate', [elem]);
return;
}
function move(ts){
if(!start) start=ts;
prog=ts - start;
fn.apply(elem);
if(prog < duration){
anim=window.requestAnimationFrame(move, elem);
}else{
window.cancelAnimationFrame(anim);
elem.trigger('finished.zf.animate', [elem]).triggerHandler('finished.zf.animate', [elem]);
}}
anim=window.requestAnimationFrame(move);
}
function animate(isIn, element, animation, cb){
element=(0, _jquery2.default)(element).eq(0);
if(!element.length) return;
var initClass=isIn ? initClasses[0]:initClasses[1];
var activeClass=isIn ? activeClasses[0]:activeClasses[1];
reset();
element.addClass(animation).css('transition', 'none');
requestAnimationFrame(function (){
element.addClass(initClass);
if(isIn) element.show();
});
requestAnimationFrame(function (){
element[0].offsetWidth;
element.css('transition', '').addClass(activeClass);
});
element.one(transitionend(element), finish);
function finish(){
if(!isIn) element.hide();
reset();
if(cb) cb.apply(element);
}
function reset(){
element[0].style.transitionDuration=0;
element.removeClass("".concat(initClass, " ").concat(activeClass, " ").concat(animation));
}}
var Nest={
Feather: function Feather(menu){
var type=arguments.length > 1&&arguments[1]!==undefined ? arguments[1]:'zf';
menu.attr('role', 'menubar');
var items=menu.find('li').attr({
'role': 'menuitem'
}),
subMenuClass="is-".concat(type, "-submenu"),
subItemClass="".concat(subMenuClass, "-item"),
hasSubClass="is-".concat(type, "-submenu-parent"),
applyAria=type!=='accordion';
items.each(function (){
var $item=(0, _jquery2.default)(this),
$sub=$item.children('ul');
if($sub.length){
$item.addClass(hasSubClass);
$sub.addClass("submenu ".concat(subMenuClass)).attr({
'data-submenu': ''
});
if(applyAria){
$item.attr({
'aria-haspopup': true,
'aria-label': $item.children('a:first').text()
});
if(type==='drilldown'){
$item.attr({
'aria-expanded': false
});
}}
$sub.addClass("submenu ".concat(subMenuClass)).attr({
'data-submenu': '',
'role': 'menubar'
});
if(type==='drilldown'){
$sub.attr({
'aria-hidden': true
});
}}
if($item.parent('[data-submenu]').length){
$item.addClass("is-submenu-item ".concat(subItemClass));
}});
return;
},
Burn: function Burn(menu, type){
var
subMenuClass="is-".concat(type, "-submenu"),
subItemClass="".concat(subMenuClass, "-item"),
hasSubClass="is-".concat(type, "-submenu-parent");
menu.find('>li, > li > ul, .menu, .menu > li, [data-submenu] > li').removeClass("".concat(subMenuClass, " ").concat(subItemClass, " ").concat(hasSubClass, " is-submenu-item submenu is-active")).removeAttr('data-submenu').css('display', '');
}};
function Timer(elem, options, cb){
var _this=this,
duration=options.duration,
nameSpace=Object.keys(elem.data())[0]||'timer',
remain=-1,
start,
timer;
this.isPaused=false;
this.restart=function (){
remain=-1;
clearTimeout(timer);
this.start();
};
this.start=function (){
this.isPaused=false; // if(!elem.data('paused')){ return false; }//maybe implement this sanity check if used for other things.
clearTimeout(timer);
remain=remain <=0 ? duration:remain;
elem.data('paused', false);
start=Date.now();
timer=setTimeout(function (){
if(options.infinite){
_this.restart();
}
if(cb&&typeof cb==='function'){
cb();
}}, remain);
elem.trigger("timerstart.zf.".concat(nameSpace));
};
this.pause=function (){
this.isPaused=true; //if(elem.data('paused')){ return false; }//maybe implement this sanity check if used for other things.
clearTimeout(timer);
elem.data('paused', true);
var end=Date.now();
remain=remain - (end - start);
elem.trigger("timerpaused.zf.".concat(nameSpace));
};}
var Touch={};
var startPosX,
startPosY,
startTime,
elapsedTime,
startEvent,
isMoving=false,
didMoved=false;
function onTouchEnd(e){
this.removeEventListener('touchmove', onTouchMove);
this.removeEventListener('touchend', onTouchEnd);
if(!didMoved){
var tapEvent=_jquery2.default.Event('tap', startEvent||e);
(0, _jquery2.default)(this).trigger(tapEvent);
}
startEvent=null;
isMoving=false;
didMoved=false;
}
function onTouchMove(e){
if(_jquery2.default.spotSwipe.preventDefault){
e.preventDefault();
}
if(isMoving){
var x=e.touches[0].pageX;
var y=e.touches[0].pageY;
var dx=startPosX - x;
var dir;
didMoved=true;
elapsedTime=new Date().getTime() - startTime;
if(Math.abs(dx) >=_jquery2.default.spotSwipe.moveThreshold&&elapsedTime <=_jquery2.default.spotSwipe.timeThreshold){
dir=dx > 0 ? 'left':'right';
}
if(dir){
e.preventDefault();
onTouchEnd.apply(this, arguments);
(0, _jquery2.default)(this).trigger(_jquery2.default.Event('swipe', e), dir).trigger(_jquery2.default.Event("swipe".concat(dir), e));
}}
}
function onTouchStart(e){
if(e.touches.length==1){
startPosX=e.touches[0].pageX;
startPosY=e.touches[0].pageY;
startEvent=e;
isMoving=true;
didMoved=false;
startTime=new Date().getTime();
this.addEventListener('touchmove', onTouchMove, false);
this.addEventListener('touchend', onTouchEnd, false);
}}
function init(){
this.addEventListener&&this.addEventListener('touchstart', onTouchStart, false);
}
var SpotSwipe =
function (){
function SpotSwipe($$$1){
_classCallCheck(this, SpotSwipe);
this.version='1.0.0';
this.enabled='ontouchstart' in document.documentElement;
this.preventDefault=false;
this.moveThreshold=75;
this.timeThreshold=200;
this.$=$$$1;
this._init();
}
_createClass(SpotSwipe, [{
key: "_init",
value: function _init(){
var $$$1=this.$;
$$$1.event.special.swipe={
setup: init
};
$$$1.event.special.tap={
setup: init
};
$$$1.each(['left', 'up', 'down', 'right'], function (){
$$$1.event.special["swipe".concat(this)]={
setup: function setup(){
$$$1(this).on('swipe', $$$1.noop);
}};});
}}]);
return SpotSwipe;
}();
Touch.setupSpotSwipe=function ($$$1){
$$$1.spotSwipe=new SpotSwipe($$$1);
};
Touch.setupTouchHandler=function ($$$1){
$$$1.fn.addTouch=function (){
this.each(function (i, el){
$$$1(el).bind('touchstart touchmove touchend touchcancel', function (event){
handleTouch(event);
});
});
var handleTouch=function handleTouch(event){
var touches=event.changedTouches,
first=touches[0],
eventTypes={
touchstart: 'mousedown',
touchmove: 'mousemove',
touchend: 'mouseup'
},
type=eventTypes[event.type],
simulatedEvent;
if('MouseEvent' in window&&typeof window.MouseEvent==='function'){
simulatedEvent=new window.MouseEvent(type, {
'bubbles': true,
'cancelable': true,
'screenX': first.screenX,
'screenY': first.screenY,
'clientX': first.clientX,
'clientY': first.clientY
});
}else{
simulatedEvent=document.createEvent('MouseEvent');
simulatedEvent.initMouseEvent(type, true, true, window, 1, first.screenX, first.screenY, first.clientX, first.clientY, false, false, false, false, 0
, null);
}
first.target.dispatchEvent(simulatedEvent);
};};
};
Touch.init=function ($$$1){
if(typeof $$$1.spotSwipe==='undefined'){
Touch.setupSpotSwipe($$$1);
Touch.setupTouchHandler($$$1);
}};
var MutationObserver=function (){
var prefixes=['WebKit', 'Moz', 'O', 'Ms', ''];
for (var i=0; i < prefixes.length; i++){
if("".concat(prefixes[i], "MutationObserver") in window){
return window["".concat(prefixes[i], "MutationObserver")];
}}
return false;
}();
var triggers=function triggers(el, type){
el.data(type).split(' ').forEach(function (id){
(0, _jquery2.default)("#".concat(id))[type==='close' ? 'trigger':'triggerHandler']("".concat(type, ".zf.trigger"), [el]);
});
};
var Triggers={
Listeners: {
Basic: {},
Global: {}},
Initializers: {}};
Triggers.Listeners.Basic={
openListener: function openListener(){
triggers((0, _jquery2.default)(this), 'open');
},
closeListener: function closeListener(){
var id=(0, _jquery2.default)(this).data('close');
if(id){
triggers((0, _jquery2.default)(this), 'close');
}else{
(0, _jquery2.default)(this).trigger('close.zf.trigger');
}},
toggleListener: function toggleListener(){
var id=(0, _jquery2.default)(this).data('toggle');
if(id){
triggers((0, _jquery2.default)(this), 'toggle');
}else{
(0, _jquery2.default)(this).trigger('toggle.zf.trigger');
}},
closeableListener: function closeableListener(e){
e.stopPropagation();
var animation=(0, _jquery2.default)(this).data('closable');
if(animation!==''){
Motion.animateOut((0, _jquery2.default)(this), animation, function (){
(0, _jquery2.default)(this).trigger('closed.zf');
});
}else{
(0, _jquery2.default)(this).fadeOut().trigger('closed.zf');
}},
toggleFocusListener: function toggleFocusListener(){
var id=(0, _jquery2.default)(this).data('toggle-focus');
(0, _jquery2.default)("#".concat(id)).triggerHandler('toggle.zf.trigger', [(0, _jquery2.default)(this)]);
}};
Triggers.Initializers.addOpenListener=function ($elem){
$elem.off('click.zf.trigger', Triggers.Listeners.Basic.openListener);
$elem.on('click.zf.trigger', '[data-open]', Triggers.Listeners.Basic.openListener);
};
Triggers.Initializers.addCloseListener=function ($elem){
$elem.off('click.zf.trigger', Triggers.Listeners.Basic.closeListener);
$elem.on('click.zf.trigger', '[data-close]', Triggers.Listeners.Basic.closeListener);
};
Triggers.Initializers.addToggleListener=function ($elem){
$elem.off('click.zf.trigger', Triggers.Listeners.Basic.toggleListener);
$elem.on('click.zf.trigger', '[data-toggle]', Triggers.Listeners.Basic.toggleListener);
};
Triggers.Initializers.addCloseableListener=function ($elem){
$elem.off('close.zf.trigger', Triggers.Listeners.Basic.closeableListener);
$elem.on('close.zf.trigger', '[data-closeable], [data-closable]', Triggers.Listeners.Basic.closeableListener);
};
Triggers.Initializers.addToggleFocusListener=function ($elem){
$elem.off('focus.zf.trigger blur.zf.trigger', Triggers.Listeners.Basic.toggleFocusListener);
$elem.on('focus.zf.trigger blur.zf.trigger', '[data-toggle-focus]', Triggers.Listeners.Basic.toggleFocusListener);
};
Triggers.Listeners.Global={
resizeListener: function resizeListener($nodes){
if(!MutationObserver){
$nodes.each(function (){
(0, _jquery2.default)(this).triggerHandler('resizeme.zf.trigger');
});
}
$nodes.attr('data-events', "resize");
},
scrollListener: function scrollListener($nodes){
if(!MutationObserver){
$nodes.each(function (){
(0, _jquery2.default)(this).triggerHandler('scrollme.zf.trigger');
});
}
$nodes.attr('data-events', "scroll");
},
closeMeListener: function closeMeListener(e, pluginId){
var plugin=e.namespace.split('.')[0];
var plugins=(0, _jquery2.default)("[data-".concat(plugin, "]")).not("[data-yeti-box=\"".concat(pluginId, "\"]"));
plugins.each(function (){
var _this=(0, _jquery2.default)(this);
_this.triggerHandler('close.zf.trigger', [_this]);
});
}};
Triggers.Initializers.addClosemeListener=function (pluginName){
var yetiBoxes=(0, _jquery2.default)('[data-yeti-box]'),
plugNames=['dropdown', 'tooltip', 'reveal'];
if(pluginName){
if(typeof pluginName==='string'){
plugNames.push(pluginName);
}else if(_typeof(pluginName)==='object'&&typeof pluginName[0]==='string') ;else {
console.error('Plugin names must be strings');
}}
if(yetiBoxes.length){
var listeners=plugNames.map(function (name){
return "closeme.zf.".concat(name);
}).join(' ');
(0, _jquery2.default)(window).off(listeners).on(listeners, Triggers.Listeners.Global.closeMeListener);
}};
function debounceGlobalListener(debounce, trigger, listener){
var timer,
args=Array.prototype.slice.call(arguments, 3);
(0, _jquery2.default)(window).off(trigger).on(trigger, function (e){
if(timer){
clearTimeout(timer);
}
timer=setTimeout(function (){
listener.apply(null, args);
}, debounce||10);
});
}
Triggers.Initializers.addResizeListener=function (debounce){
var $nodes=(0, _jquery2.default)('[data-resize]');
if($nodes.length){
debounceGlobalListener(debounce, 'resize.zf.trigger', Triggers.Listeners.Global.resizeListener, $nodes);
}};
Triggers.Initializers.addScrollListener=function (debounce){
var $nodes=(0, _jquery2.default)('[data-scroll]');
if($nodes.length){
debounceGlobalListener(debounce, 'scroll.zf.trigger', Triggers.Listeners.Global.scrollListener, $nodes);
}};
Triggers.Initializers.addMutationEventsListener=function ($elem){
if(!MutationObserver){
return false;
}
var $nodes=$elem.find('[data-resize], [data-scroll], [data-mutate]');
var listeningElementsMutation=function listeningElementsMutation(mutationRecordsList){
var $target=(0, _jquery2.default)(mutationRecordsList[0].target);
switch (mutationRecordsList[0].type){
case "attributes":
if($target.attr("data-events")==="scroll"&&mutationRecordsList[0].attributeName==="data-events"){
$target.triggerHandler('scrollme.zf.trigger', [$target, window.pageYOffset]);
}
if($target.attr("data-events")==="resize"&&mutationRecordsList[0].attributeName==="data-events"){
$target.triggerHandler('resizeme.zf.trigger', [$target]);
}
if(mutationRecordsList[0].attributeName==="style"){
$target.closest("[data-mutate]").attr("data-events", "mutate");
$target.closest("[data-mutate]").triggerHandler('mutateme.zf.trigger', [$target.closest("[data-mutate]")]);
}
break;
case "childList":
$target.closest("[data-mutate]").attr("data-events", "mutate");
$target.closest("[data-mutate]").triggerHandler('mutateme.zf.trigger', [$target.closest("[data-mutate]")]);
break;
default:
return false;
}};
if($nodes.length){
for (var i=0; i <=$nodes.length - 1; i++){
var elementObserver=new MutationObserver(listeningElementsMutation);
elementObserver.observe($nodes[i], {
attributes: true,
childList: true,
characterData: false,
subtree: true,
attributeFilter: ["data-events", "style"]
});
}}
};
Triggers.Initializers.addSimpleListeners=function (){
var $document=(0, _jquery2.default)(document);
Triggers.Initializers.addOpenListener($document);
Triggers.Initializers.addCloseListener($document);
Triggers.Initializers.addToggleListener($document);
Triggers.Initializers.addCloseableListener($document);
Triggers.Initializers.addToggleFocusListener($document);
};
Triggers.Initializers.addGlobalListeners=function (){
var $document=(0, _jquery2.default)(document);
Triggers.Initializers.addMutationEventsListener($document);
Triggers.Initializers.addResizeListener();
Triggers.Initializers.addScrollListener();
Triggers.Initializers.addClosemeListener();
};
Triggers.init=function ($$$1, Foundation){
onLoad($$$1(window), function (){
if($$$1.triggersInitialized!==true){
Triggers.Initializers.addSimpleListeners();
Triggers.Initializers.addGlobalListeners();
$$$1.triggersInitialized=true;
}});
if(Foundation){
Foundation.Triggers=Triggers;
Foundation.IHearYou=Triggers.Initializers.addGlobalListeners;
}};
var Plugin =
function (){
function Plugin(element, options){
_classCallCheck(this, Plugin);
this._setup(element, options);
var pluginName=getPluginName(this);
this.uuid=GetYoDigits(6, pluginName);
if(!this.$element.attr("data-".concat(pluginName))){
this.$element.attr("data-".concat(pluginName), this.uuid);
}
if(!this.$element.data('zfPlugin')){
this.$element.data('zfPlugin', this);
}
this.$element.trigger("init.zf.".concat(pluginName));
}
_createClass(Plugin, [{
key: "destroy",
value: function destroy(){
this._destroy();
var pluginName=getPluginName(this);
this.$element.removeAttr("data-".concat(pluginName)).removeData('zfPlugin')
.trigger("destroyed.zf.".concat(pluginName));
for (var prop in this){
this[prop]=null;
}}
}]);
return Plugin;
}();
function hyphenate$1(str){
return str.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();
}
function getPluginName(obj){
if(typeof obj.constructor.name!=='undefined'){
return hyphenate$1(obj.constructor.name);
}else{
return hyphenate$1(obj.className);
}}
var Abide =
function (_Plugin){
_inherits(Abide, _Plugin);
function Abide(){
_classCallCheck(this, Abide);
return _possibleConstructorReturn(this, _getPrototypeOf(Abide).apply(this, arguments));
}
_createClass(Abide, [{
key: "_setup",
value: function _setup(element){
var options=arguments.length > 1&&arguments[1]!==undefined ? arguments[1]:{};
this.$element=element;
this.options=_jquery2.default.extend(true, {}, Abide.defaults, this.$element.data(), options);
this.className='Abide';
this._init();
}
}, {
key: "_init",
value: function _init(){
var _this2=this;
this.$inputs=_jquery2.default.merge(this.$element.find('input').not('[type=submit]'),
this.$element.find('textarea, select')
);
var $globalErrors=this.$element.find('[data-abide-error]');
if(this.options.a11yAttributes){
this.$inputs.each(function (i, input){
return _this2.addA11yAttributes((0, _jquery2.default)(input));
});
$globalErrors.each(function (i, error){
return _this2.addGlobalErrorA11yAttributes((0, _jquery2.default)(error));
});
}
this._events();
}
}, {
key: "_events",
value: function _events(){
var _this3=this;
this.$element.off('.abide').on('reset.zf.abide', function (){
_this3.resetForm();
}).on('submit.zf.abide', function (){
return _this3.validateForm();
});
if(this.options.validateOn==='fieldChange'){
this.$inputs.off('change.zf.abide').on('change.zf.abide', function (e){
_this3.validateInput((0, _jquery2.default)(e.target));
});
}
if(this.options.liveValidate){
this.$inputs.off('input.zf.abide').on('input.zf.abide', function (e){
_this3.validateInput((0, _jquery2.default)(e.target));
});
}
if(this.options.validateOnBlur){
this.$inputs.off('blur.zf.abide').on('blur.zf.abide', function (e){
_this3.validateInput((0, _jquery2.default)(e.target));
});
}}
}, {
key: "_reflow",
value: function _reflow(){
this._init();
}
}, {
key: "requiredCheck",
value: function requiredCheck($el){
if(!$el.attr('required')) return true;
var isGood=true;
switch ($el[0].type){
case 'checkbox':
isGood=$el[0].checked;
break;
case 'select':
case 'select-one':
case 'select-multiple':
var opt=$el.find('option:selected');
if(!opt.length||!opt.val()) isGood=false;
break;
default:
if(!$el.val()||!$el.val().length) isGood=false;
}
return isGood;
}
}, {
key: "findFormError",
value: function findFormError($el){
var id=$el[0].id;
var $error=$el.siblings(this.options.formErrorSelector);
if(!$error.length){
$error=$el.parent().find(this.options.formErrorSelector);
}
if(id){
$error=$error.add(this.$element.find("[data-form-error-for=\"".concat(id, "\"]")));
}
return $error;
}
}, {
key: "findLabel",
value: function findLabel($el){
var id=$el[0].id;
var $label=this.$element.find("label[for=\"".concat(id, "\"]"));
if(!$label.length){
return $el.closest('label');
}
return $label;
}
}, {
key: "findRadioLabels",
value: function findRadioLabels($els){
var _this4=this;
var labels=$els.map(function (i, el){
var id=el.id;
var $label=_this4.$element.find("label[for=\"".concat(id, "\"]"));
if(!$label.length){
$label=(0, _jquery2.default)(el).closest('label');
}
return $label[0];
});
return (0, _jquery2.default)(labels);
}
}, {
key: "addErrorClasses",
value: function addErrorClasses($el){
var $label=this.findLabel($el);
var $formError=this.findFormError($el);
if($label.length){
$label.addClass(this.options.labelErrorClass);
}
if($formError.length){
$formError.addClass(this.options.formErrorClass);
}
$el.addClass(this.options.inputErrorClass).attr({
'data-invalid': '',
'aria-invalid': true
});
}
}, {
key: "addA11yAttributes",
value: function addA11yAttributes($el){
var $errors=this.findFormError($el);
var $labels=$errors.filter('label');
var $error=$errors.first();
if(!$errors.length) return;
if(typeof $el.attr('aria-describedby')==='undefined'){
var errorId=$error.attr('id');
if(typeof errorId==='undefined'){
errorId=GetYoDigits(6, 'abide-error');
$error.attr('id', errorId);
}
$el.attr('aria-describedby', errorId);
}
if($labels.filter('[for]').length < $labels.length){
var elemId=$el.attr('id');
if(typeof elemId==='undefined'){
elemId=GetYoDigits(6, 'abide-input');
$el.attr('id', elemId);
}
$labels.each(function (i, label){
var $label=(0, _jquery2.default)(label);
if(typeof $label.attr('for')==='undefined') $label.attr('for', elemId);
});
}
$errors.each(function (i, label){
var $label=(0, _jquery2.default)(label);
if(typeof $label.attr('role')==='undefined') $label.attr('role', 'alert');
}).end();
}
}, {
key: "addGlobalErrorA11yAttributes",
value: function addGlobalErrorA11yAttributes($el){
if(typeof $el.attr('aria-live')==='undefined') $el.attr('aria-live', this.options.a11yErrorLevel);
}
}, {
key: "removeRadioErrorClasses",
value: function removeRadioErrorClasses(groupName){
var $els=this.$element.find(":radio[name=\"".concat(groupName, "\"]"));
var $labels=this.findRadioLabels($els);
var $formErrors=this.findFormError($els);
if($labels.length){
$labels.removeClass(this.options.labelErrorClass);
}
if($formErrors.length){
$formErrors.removeClass(this.options.formErrorClass);
}
$els.removeClass(this.options.inputErrorClass).attr({
'data-invalid': null,
'aria-invalid': null
});
}
}, {
key: "removeErrorClasses",
value: function removeErrorClasses($el){
if($el[0].type=='radio'){
return this.removeRadioErrorClasses($el.attr('name'));
}
var $label=this.findLabel($el);
var $formError=this.findFormError($el);
if($label.length){
$label.removeClass(this.options.labelErrorClass);
}
if($formError.length){
$formError.removeClass(this.options.formErrorClass);
}
$el.removeClass(this.options.inputErrorClass).attr({
'data-invalid': null,
'aria-invalid': null
});
}
}, {
key: "validateInput",
value: function validateInput($el){
var clearRequire=this.requiredCheck($el),
validated=false,
customValidator=true,
validator=$el.attr('data-validator'),
equalTo=true;
if($el.is('[data-abide-ignore]')||$el.is('[type="hidden"]')||$el.is('[disabled]')){
return true;
}
switch ($el[0].type){
case 'radio':
validated=this.validateRadio($el.attr('name'));
break;
case 'checkbox':
validated=clearRequire;
break;
case 'select':
case 'select-one':
case 'select-multiple':
validated=clearRequire;
break;
default:
validated=this.validateText($el);
}
if(validator){
customValidator=this.matchValidation($el, validator, $el.attr('required'));
}
if($el.attr('data-equalto')){
equalTo=this.options.validators.equalTo($el);
}
var goodToGo=[clearRequire, validated, customValidator, equalTo].indexOf(false)===-1;
var message=(goodToGo ? 'valid':'invalid') + '.zf.abide';
if(goodToGo){
var dependentElements=this.$element.find("[data-equalto=\"".concat($el.attr('id'), "\"]"));
if(dependentElements.length){
var _this=this;
dependentElements.each(function (){
if((0, _jquery2.default)(this).val()){
_this.validateInput((0, _jquery2.default)(this));
}});
}}
this[goodToGo ? 'removeErrorClasses':'addErrorClasses']($el);
$el.trigger(message, [$el]);
return goodToGo;
}
}, {
key: "validateForm",
value: function validateForm(){
var _this5=this;
var acc=[];
var _this=this;
this.$inputs.each(function (){
acc.push(_this.validateInput((0, _jquery2.default)(this)));
});
var noError=acc.indexOf(false)===-1;
this.$element.find('[data-abide-error]').each(function (i, elem){
var $elem=(0, _jquery2.default)(elem);
if(_this5.options.a11yAttributes) _this5.addGlobalErrorA11yAttributes($elem);
$elem.css('display', noError ? 'none':'block');
});
this.$element.trigger((noError ? 'formvalid':'forminvalid') + '.zf.abide', [this.$element]);
return noError;
}
}, {
key: "validateText",
value: function validateText($el, pattern){
pattern=pattern||$el.attr('pattern')||$el.attr('type');
var inputText=$el.val();
var valid=false;
if(inputText.length){
if(this.options.patterns.hasOwnProperty(pattern)){
valid=this.options.patterns[pattern].test(inputText);
}
else if(pattern!==$el.attr('type')){
valid=new RegExp(pattern).test(inputText);
}else{
valid=true;
}}
else if(!$el.prop('required')){
valid=true;
}
return valid;
}
}, {
key: "validateRadio",
value: function validateRadio(groupName){
var $group=this.$element.find(":radio[name=\"".concat(groupName, "\"]"));
var valid=false,
required=false;
$group.each(function (i, e){
if((0, _jquery2.default)(e).attr('required')){
required=true;
}});
if(!required) valid=true;
if(!valid){
$group.each(function (i, e){
if((0, _jquery2.default)(e).prop('checked')){
valid=true;
}});
}
return valid;
}
}, {
key: "matchValidation",
value: function matchValidation($el, validators, required){
var _this6=this;
required=required ? true:false;
var clear=validators.split(' ').map(function (v){
return _this6.options.validators[v]($el, required, $el.parent());
});
return clear.indexOf(false)===-1;
}
}, {
key: "resetForm",
value: function resetForm(){
var $form=this.$element,
opts=this.options;
(0, _jquery2.default)(".".concat(opts.labelErrorClass), $form).not('small').removeClass(opts.labelErrorClass);
(0, _jquery2.default)(".".concat(opts.inputErrorClass), $form).not('small').removeClass(opts.inputErrorClass);
(0, _jquery2.default)("".concat(opts.formErrorSelector, ".").concat(opts.formErrorClass)).removeClass(opts.formErrorClass);
$form.find('[data-abide-error]').css('display', 'none');
(0, _jquery2.default)(':input', $form).not(':button, :submit, :reset, :hidden, :radio, :checkbox, [data-abide-ignore]').val('').attr({
'data-invalid': null,
'aria-invalid': null
});
(0, _jquery2.default)(':input:radio', $form).not('[data-abide-ignore]').prop('checked', false).attr({
'data-invalid': null,
'aria-invalid': null
});
(0, _jquery2.default)(':input:checkbox', $form).not('[data-abide-ignore]').prop('checked', false).attr({
'data-invalid': null,
'aria-invalid': null
});
$form.trigger('formreset.zf.abide', [$form]);
}
}, {
key: "_destroy",
value: function _destroy(){
var _this=this;
this.$element.off('.abide').find('[data-abide-error]').css('display', 'none');
this.$inputs.off('.abide').each(function (){
_this.removeErrorClasses((0, _jquery2.default)(this));
});
}}]);
return Abide;
}(Plugin);
Abide.defaults={
validateOn: 'fieldChange',
labelErrorClass: 'is-invalid-label',
inputErrorClass: 'is-invalid-input',
formErrorSelector: '.form-error',
formErrorClass: 'is-visible',
a11yAttributes: true,
a11yErrorLevel: 'assertive',
liveValidate: false,
validateOnBlur: false,
patterns: {
alpha: /^[a-zA-Z]+$/,
alpha_numeric: /^[a-zA-Z0-9]+$/,
integer: /^[-+]?\d+$/,
number: /^[-+]?\d*(?:[\.\,]\d+)?$/,
card: /^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|(?:222[1-9]|2[3-6][0-9]{2}|27[0-1][0-9]|2720)[0-9]{12}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11})$/,
cvv: /^([0-9]){3,4}$/,
email: /^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+$/,
url: /^((?:(https?|ftps?|file|ssh|sftp):\/\/|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}\/)(?:[^\s()<>]+|\((?:[^\s()<>]+|(?:\([^\s()<>]+\)))*\))+(?:\((?:[^\s()<>]+|(?:\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:\'".,<>?\xab\xbb\u201c\u201d\u2018\u2019]))$/,
domain: /^([a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,8}$/,
datetime: /^([0-2][0-9]{3})\-([0-1][0-9])\-([0-3][0-9])T([0-5][0-9])\:([0-5][0-9])\:([0-5][0-9])(Z|([\-\+]([0-1][0-9])\:00))$/,
date: /(?:19|20)[0-9]{2}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-9])|(?:(?!02)(?:0[1-9]|1[0-2])-(?:30))|(?:(?:0[13578]|1[02])-31))$/,
time: /^(0[0-9]|1[0-9]|2[0-3])(:[0-5][0-9]){2}$/,
dateISO: /^\d{4}[\/\-]\d{1,2}[\/\-]\d{1,2}$/,
month_day_year: /^(0[1-9]|1[012])[- \/.](0[1-9]|[12][0-9]|3[01])[- \/.]\d{4}$/,
day_month_year: /^(0[1-9]|[12][0-9]|3[01])[- \/.](0[1-9]|1[012])[- \/.]\d{4}$/,
color: /^#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/,
website: {
test: function test(text){
return Abide.defaults.patterns['domain'].test(text)||Abide.defaults.patterns['url'].test(text);
}}
},
validators: {
equalTo: function equalTo(el, required, parent){
return (0, _jquery2.default)("#".concat(el.attr('data-equalto'))).val()===el.val();
}}
};
var Accordion =
function (_Plugin){
_inherits(Accordion, _Plugin);
function Accordion(){
_classCallCheck(this, Accordion);
return _possibleConstructorReturn(this, _getPrototypeOf(Accordion).apply(this, arguments));
}
_createClass(Accordion, [{
key: "_setup",
value: function _setup(element, options){
this.$element=element;
this.options=_jquery2.default.extend({}, Accordion.defaults, this.$element.data(), options);
this.className='Accordion';
this._init();
Keyboard.register('Accordion', {
'ENTER': 'toggle',
'SPACE': 'toggle',
'ARROW_DOWN': 'next',
'ARROW_UP': 'previous'
});
}
}, {
key: "_init",
value: function _init(){
var _this2=this;
this._isInitializing=true;
this.$element.attr('role', 'tablist');
this.$tabs=this.$element.children('[data-accordion-item]');
this.$tabs.each(function (idx, el){
var $el=(0, _jquery2.default)(el),
$content=$el.children('[data-tab-content]'),
id=$content[0].id||GetYoDigits(6, 'accordion'),
linkId=el.id ? "".concat(el.id, "-label"):"".concat(id, "-label");
$el.find('a:first').attr({
'aria-controls': id,
'role': 'tab',
'id': linkId,
'aria-expanded': false,
'aria-selected': false
});
$content.attr({
'role': 'tabpanel',
'aria-labelledby': linkId,
'aria-hidden': true,
'id': id
});
});
var $initActive=this.$element.find('.is-active').children('[data-tab-content]');
if($initActive.length){
this._initialAnchor=$initActive.prev('a').attr('href');
this._openSingleTab($initActive);
}
this._checkDeepLink=function (){
var anchor=window.location.hash;
if(!anchor.length){
if(_this2._isInitializing) return;
if(_this2._initialAnchor) anchor=_this2._initialAnchor;
}
var $anchor=anchor&&(0, _jquery2.default)(anchor);
var $link=anchor&&_this2.$element.find("[href$=\"".concat(anchor, "\"]"));
var isOwnAnchor = !!($anchor.length&&$link.length);
if($anchor&&$link&&$link.length){
if(!$link.parent('[data-accordion-item]').hasClass('is-active')){
_this2._openSingleTab($anchor);
}}else{
_this2._closeAllTabs();
}
if(isOwnAnchor){
if(_this2.options.deepLinkSmudge){
onLoad((0, _jquery2.default)(window), function (){
var offset=_this2.$element.offset();
(0, _jquery2.default)('html, body').animate({
scrollTop: offset.top
}, _this2.options.deepLinkSmudgeDelay);
});
}
_this2.$element.trigger('deeplink.zf.accordion', [$link, $anchor]);
}};
if(this.options.deepLink){
this._checkDeepLink();
}
this._events();
this._isInitializing=false;
}
}, {
key: "_events",
value: function _events(){
var _this=this;
this.$tabs.each(function (){
var $elem=(0, _jquery2.default)(this);
var $tabContent=$elem.children('[data-tab-content]');
if($tabContent.length){
$elem.children('a').off('click.zf.accordion keydown.zf.accordion').on('click.zf.accordion', function (e){
e.preventDefault();
_this.toggle($tabContent);
}).on('keydown.zf.accordion', function (e){
Keyboard.handleKey(e, 'Accordion', {
toggle: function toggle(){
_this.toggle($tabContent);
},
next: function next(){
var $a=$elem.next().find('a').focus();
if(!_this.options.multiExpand){
$a.trigger('click.zf.accordion');
}},
previous: function previous(){
var $a=$elem.prev().find('a').focus();
if(!_this.options.multiExpand){
$a.trigger('click.zf.accordion');
}},
handled: function handled(){
e.preventDefault();
e.stopPropagation();
}});
});
}});
if(this.options.deepLink){
(0, _jquery2.default)(window).on('hashchange', this._checkDeepLink);
}}
}, {
key: "toggle",
value: function toggle($target){
if($target.closest('[data-accordion]').is('[disabled]')){
console.info('Cannot toggle an accordion that is disabled.');
return;
}
if($target.parent().hasClass('is-active')){
this.up($target);
}else{
this.down($target);
}
if(this.options.deepLink){
var anchor=$target.prev('a').attr('href');
if(this.options.updateHistory){
history.pushState({}, '', anchor);
}else{
history.replaceState({}, '', anchor);
}}
}
}, {
key: "down",
value: function down($target){
if($target.closest('[data-accordion]').is('[disabled]')){
console.info('Cannot call down on an accordion that is disabled.');
return;
}
if(this.options.multiExpand) this._openTab($target);else this._openSingleTab($target);
}
}, {
key: "up",
value: function up($target){
if(this.$element.is('[disabled]')){
console.info('Cannot call up on an accordion that is disabled.');
return;
}
var $targetItem=$target.parent();
if(!$targetItem.hasClass('is-active')) return;
var $othersItems=$targetItem.siblings();
if(!this.options.allowAllClosed&&!$othersItems.hasClass('is-active')) return;
this._closeTab($target);
}
}, {
key: "_openSingleTab",
value: function _openSingleTab($target){
var $activeContents=this.$element.children('.is-active').children('[data-tab-content]');
if($activeContents.length){
this._closeTab($activeContents.not($target));
}
this._openTab($target);
}
}, {
key: "_openTab",
value: function _openTab($target){
var _this3=this;
var $targetItem=$target.parent();
var targetContentId=$target.attr('aria-labelledby');
$target.attr('aria-hidden', false);
$targetItem.addClass('is-active');
(0, _jquery2.default)("#".concat(targetContentId)).attr({
'aria-expanded': true,
'aria-selected': true
});
$target.slideDown(this.options.slideSpeed, function (){
_this3.$element.trigger('down.zf.accordion', [$target]);
});
}
}, {
key: "_closeTab",
value: function _closeTab($target){
var _this4=this;
var $targetItem=$target.parent();
var targetContentId=$target.attr('aria-labelledby');
$target.attr('aria-hidden', true);
$targetItem.removeClass('is-active');
(0, _jquery2.default)("#".concat(targetContentId)).attr({
'aria-expanded': false,
'aria-selected': false
});
$target.slideUp(this.options.slideSpeed, function (){
_this4.$element.trigger('up.zf.accordion', [$target]);
});
}
}, {
key: "_closeAllTabs",
value: function _closeAllTabs(){
var $activeTabs=this.$element.children('.is-active').children('[data-tab-content]');
if($activeTabs.length){
this._closeTab($activeTabs);
}}
}, {
key: "_destroy",
value: function _destroy(){
this.$element.find('[data-tab-content]').stop(true).slideUp(0).css('display', '');
this.$element.find('a').off('.zf.accordion');
if(this.options.deepLink){
(0, _jquery2.default)(window).off('hashchange', this._checkDeepLink);
}}
}]);
return Accordion;
}(Plugin);
Accordion.defaults={
slideSpeed: 250,
multiExpand: false,
allowAllClosed: false,
deepLink: false,
deepLinkSmudge: false,
deepLinkSmudgeDelay: 300,
updateHistory: false
};
var AccordionMenu =
function (_Plugin){
_inherits(AccordionMenu, _Plugin);
function AccordionMenu(){
_classCallCheck(this, AccordionMenu);
return _possibleConstructorReturn(this, _getPrototypeOf(AccordionMenu).apply(this, arguments));
}
_createClass(AccordionMenu, [{
key: "_setup",
value: function _setup(element, options){
this.$element=element;
this.options=_jquery2.default.extend({}, AccordionMenu.defaults, this.$element.data(), options);
this.className='AccordionMenu';
this._init();
Keyboard.register('AccordionMenu', {
'ENTER': 'toggle',
'SPACE': 'toggle',
'ARROW_RIGHT': 'open',
'ARROW_UP': 'up',
'ARROW_DOWN': 'down',
'ARROW_LEFT': 'close',
'ESCAPE': 'closeAll'
});
}
}, {
key: "_init",
value: function _init(){
Nest.Feather(this.$element, 'accordion');
var _this=this;
this.$element.find('[data-submenu]').not('.is-active').slideUp(0);
this.$element.attr({
'role': 'tree',
'aria-multiselectable': this.options.multiOpen
});
this.$menuLinks=this.$element.find('.is-accordion-submenu-parent');
this.$menuLinks.each(function (){
var linkId=this.id||GetYoDigits(6, 'acc-menu-link'),
$elem=(0, _jquery2.default)(this),
$sub=$elem.children('[data-submenu]'),
subId=$sub[0].id||GetYoDigits(6, 'acc-menu'),
isActive=$sub.hasClass('is-active');
if(_this.options.parentLink){
var $anchor=$elem.children('a');
$anchor.clone().prependTo($sub).wrap('<li data-is-parent-link class="is-submenu-parent-item is-submenu-item is-accordion-submenu-item"></li>');
}
if(_this.options.submenuToggle){
$elem.addClass('has-submenu-toggle');
$elem.children('a').after('<button id="' + linkId + '" class="submenu-toggle" aria-controls="' + subId + '" aria-expanded="' + isActive + '" title="' + _this.options.submenuToggleText + '"><span class="submenu-toggle-text">' + _this.options.submenuToggleText + '</span></button>');
}else{
$elem.attr({
'aria-controls': subId,
'aria-expanded': isActive,
'id': linkId
});
}
$sub.attr({
'aria-labelledby': linkId,
'aria-hidden': !isActive,
'role': 'group',
'id': subId
});
});
this.$element.find('li').attr({
'role': 'treeitem'
});
var initPanes=this.$element.find('.is-active');
if(initPanes.length){
var _this=this;
initPanes.each(function (){
_this.down((0, _jquery2.default)(this));
});
}
this._events();
}
}, {
key: "_events",
value: function _events(){
var _this=this;
this.$element.find('li').each(function (){
var $submenu=(0, _jquery2.default)(this).children('[data-submenu]');
if($submenu.length){
if(_this.options.submenuToggle){
(0, _jquery2.default)(this).children('.submenu-toggle').off('click.zf.accordionMenu').on('click.zf.accordionMenu', function (e){
_this.toggle($submenu);
});
}else{
(0, _jquery2.default)(this).children('a').off('click.zf.accordionMenu').on('click.zf.accordionMenu', function (e){
e.preventDefault();
_this.toggle($submenu);
});
}}
}).on('keydown.zf.accordionmenu', function (e){
var $element=(0, _jquery2.default)(this),
$elements=$element.parent('ul').children('li'),
$prevElement,
$nextElement,
$target=$element.children('[data-submenu]');
$elements.each(function (i){
if((0, _jquery2.default)(this).is($element)){
$prevElement=$elements.eq(Math.max(0, i - 1)).find('a').first();
$nextElement=$elements.eq(Math.min(i + 1, $elements.length - 1)).find('a').first();
if((0, _jquery2.default)(this).children('[data-submenu]:visible').length){
$nextElement=$element.find('li:first-child').find('a').first();
}
if((0, _jquery2.default)(this).is(':first-child')){
$prevElement=$element.parents('li').first().find('a').first();
}else if($prevElement.parents('li').first().children('[data-submenu]:visible').length){
$prevElement=$prevElement.parents('li').find('li:last-child').find('a').first();
}
if((0, _jquery2.default)(this).is(':last-child')){
$nextElement=$element.parents('li').first().next('li').find('a').first();
}
return;
}});
Keyboard.handleKey(e, 'AccordionMenu', {
open: function open(){
if($target.is(':hidden')){
_this.down($target);
$target.find('li').first().find('a').first().focus();
}},
close: function close(){
if($target.length&&!$target.is(':hidden')){
_this.up($target);
}else if($element.parent('[data-submenu]').length){
_this.up($element.parent('[data-submenu]'));
$element.parents('li').first().find('a').first().focus();
}},
up: function up(){
$prevElement.focus();
return true;
},
down: function down(){
$nextElement.focus();
return true;
},
toggle: function toggle(){
if(_this.options.submenuToggle){
return false;
}
if($element.children('[data-submenu]').length){
_this.toggle($element.children('[data-submenu]'));
return true;
}},
closeAll: function closeAll(){
_this.hideAll();
},
handled: function handled(preventDefault){
if(preventDefault){
e.preventDefault();
}
e.stopImmediatePropagation();
}});
});
}
}, {
key: "hideAll",
value: function hideAll(){
this.up(this.$element.find('[data-submenu]'));
}
}, {
key: "showAll",
value: function showAll(){
this.down(this.$element.find('[data-submenu]'));
}
}, {
key: "toggle",
value: function toggle($target){
if(!$target.is(':animated')){
if(!$target.is(':hidden')){
this.up($target);
}else{
this.down($target);
}}
}
}, {
key: "down",
value: function down($target){
var _this2=this;
if(!this.options.multiOpen){
this.up(this.$element.find('.is-active').not($target.parentsUntil(this.$element).add($target)));
}
$target.addClass('is-active').attr({
'aria-hidden': false
});
if(this.options.submenuToggle){
$target.prev('.submenu-toggle').attr({
'aria-expanded': true
});
}else{
$target.parent('.is-accordion-submenu-parent').attr({
'aria-expanded': true
});
}
$target.slideDown(this.options.slideSpeed, function (){
_this2.$element.trigger('down.zf.accordionMenu', [$target]);
});
}
}, {
key: "up",
value: function up($target){
var _this3=this;
var $submenus=$target.find('[data-submenu]');
var $allmenus=$target.add($submenus);
$submenus.slideUp(0);
$allmenus.removeClass('is-active').attr('aria-hidden', true);
if(this.options.submenuToggle){
$allmenus.prev('.submenu-toggle').attr('aria-expanded', false);
}else{
$allmenus.parent('.is-accordion-submenu-parent').attr('aria-expanded', false);
}
$target.slideUp(this.options.slideSpeed, function (){
_this3.$element.trigger('up.zf.accordionMenu', [$target]);
});
}
}, {
key: "_destroy",
value: function _destroy(){
this.$element.find('[data-submenu]').slideDown(0).css('display', '');
this.$element.find('a').off('click.zf.accordionMenu');
this.$element.find('[data-is-parent-link]').detach();
if(this.options.submenuToggle){
this.$element.find('.has-submenu-toggle').removeClass('has-submenu-toggle');
this.$element.find('.submenu-toggle').remove();
}
Nest.Burn(this.$element, 'accordion');
}}]);
return AccordionMenu;
}(Plugin);
AccordionMenu.defaults={
parentLink: false,
slideSpeed: 250,
submenuToggle: false,
submenuToggleText: 'Toggle menu',
multiOpen: true
};
var Drilldown =
function (_Plugin){
_inherits(Drilldown, _Plugin);
function Drilldown(){
_classCallCheck(this, Drilldown);
return _possibleConstructorReturn(this, _getPrototypeOf(Drilldown).apply(this, arguments));
}
_createClass(Drilldown, [{
key: "_setup",
value: function _setup(element, options){
this.$element=element;
this.options=_jquery2.default.extend({}, Drilldown.defaults, this.$element.data(), options);
this.className='Drilldown';
this._init();
Keyboard.register('Drilldown', {
'ENTER': 'open',
'SPACE': 'open',
'ARROW_RIGHT': 'next',
'ARROW_UP': 'up',
'ARROW_DOWN': 'down',
'ARROW_LEFT': 'previous',
'ESCAPE': 'close',
'TAB': 'down',
'SHIFT_TAB': 'up'
});
}
}, {
key: "_init",
value: function _init(){
Nest.Feather(this.$element, 'drilldown');
if(this.options.autoApplyClass){
this.$element.addClass('drilldown');
}
this.$element.attr({
'role': 'tree',
'aria-multiselectable': false
});
this.$submenuAnchors=this.$element.find('li.is-drilldown-submenu-parent').children('a');
this.$submenus=this.$submenuAnchors.parent('li').children('[data-submenu]').attr('role', 'group');
this.$menuItems=this.$element.find('li').not('.js-drilldown-back').attr('role', 'treeitem').find('a');
this.$currentMenu=this.$element;
this.$element.attr('data-mutate', this.$element.attr('data-drilldown')||GetYoDigits(6, 'drilldown'));
this._prepareMenu();
this._registerEvents();
this._keyboardEvents();
}
}, {
key: "_prepareMenu",
value: function _prepareMenu(){
var _this=this;
this.$submenuAnchors.each(function (){
var $link=(0, _jquery2.default)(this);
var $sub=$link.parent();
if(_this.options.parentLink){
$link.clone().prependTo($sub.children('[data-submenu]')).wrap('<li data-is-parent-link class="is-submenu-parent-item is-submenu-item is-drilldown-submenu-item" role="menuitem"></li>');
}
$link.data('savedHref', $link.attr('href')).removeAttr('href').attr('tabindex', 0);
$link.children('[data-submenu]').attr({
'aria-hidden': true,
'tabindex': 0,
'role': 'group'
});
_this._events($link);
});
this.$submenus.each(function (){
var $menu=(0, _jquery2.default)(this),
$back=$menu.find('.js-drilldown-back');
if(!$back.length){
switch (_this.options.backButtonPosition){
case "bottom":
$menu.append(_this.options.backButton);
break;
case "top":
$menu.prepend(_this.options.backButton);
break;
default:
console.error("Unsupported backButtonPosition value '" + _this.options.backButtonPosition + "'");
}}
_this._back($menu);
});
this.$submenus.addClass('invisible');
if(!this.options.autoHeight){
this.$submenus.addClass('drilldown-submenu-cover-previous');
}
if(!this.$element.parent().hasClass('is-drilldown')){
this.$wrapper=(0, _jquery2.default)(this.options.wrapper).addClass('is-drilldown');
if(this.options.animateHeight) this.$wrapper.addClass('animate-height');
this.$element.wrap(this.$wrapper);
}
this.$wrapper=this.$element.parent();
this.$wrapper.css(this._getMaxDims());
}}, {
key: "_resize",
value: function _resize(){
this.$wrapper.css({
'max-width': 'none',
'min-height': 'none'
});
this.$wrapper.css(this._getMaxDims());
}
}, {
key: "_events",
value: function _events($elem){
var _this=this;
$elem.off('click.zf.drilldown').on('click.zf.drilldown', function (e){
if((0, _jquery2.default)(e.target).parentsUntil('ul', 'li').hasClass('is-drilldown-submenu-parent')){
e.stopImmediatePropagation();
e.preventDefault();
}
_this._show($elem.parent('li'));
if(_this.options.closeOnClick){
var $body=(0, _jquery2.default)('body');
$body.off('.zf.drilldown').on('click.zf.drilldown', function (e){
if(e.target===_this.$element[0]||_jquery2.default.contains(_this.$element[0], e.target)){
return;
}
e.preventDefault();
_this._hideAll();
$body.off('.zf.drilldown');
});
}});
}
}, {
key: "_registerEvents",
value: function _registerEvents(){
if(this.options.scrollTop){
this._bindHandler=this._scrollTop.bind(this);
this.$element.on('open.zf.drilldown hide.zf.drilldown closed.zf.drilldown', this._bindHandler);
}
this.$element.on('mutateme.zf.trigger', this._resize.bind(this));
}
}, {
key: "_scrollTop",
value: function _scrollTop(){
var _this=this;
var $scrollTopElement=_this.options.scrollTopElement!='' ? (0, _jquery2.default)(_this.options.scrollTopElement):_this.$element,
scrollPos=parseInt($scrollTopElement.offset().top + _this.options.scrollTopOffset, 10);
(0, _jquery2.default)('html, body').stop(true).animate({
scrollTop: scrollPos
}, _this.options.animationDuration, _this.options.animationEasing, function (){
if(this===(0, _jquery2.default)('html')[0]) _this.$element.trigger('scrollme.zf.drilldown');
});
}
}, {
key: "_keyboardEvents",
value: function _keyboardEvents(){
var _this=this;
this.$menuItems.add(this.$element.find('.js-drilldown-back > a, .is-submenu-parent-item > a')).on('keydown.zf.drilldown', function (e){
var $element=(0, _jquery2.default)(this),
$elements=$element.parent('li').parent('ul').children('li').children('a'),
$prevElement,
$nextElement;
$elements.each(function (i){
if((0, _jquery2.default)(this).is($element)){
$prevElement=$elements.eq(Math.max(0, i - 1));
$nextElement=$elements.eq(Math.min(i + 1, $elements.length - 1));
return;
}});
Keyboard.handleKey(e, 'Drilldown', {
next: function next(){
if($element.is(_this.$submenuAnchors)){
_this._show($element.parent('li'));
$element.parent('li').one(transitionend($element), function (){
$element.parent('li').find('ul li a').not('.js-drilldown-back a').first().focus();
});
return true;
}},
previous: function previous(){
_this._hide($element.parent('li').parent('ul'));
$element.parent('li').parent('ul').one(transitionend($element), function (){
setTimeout(function (){
$element.parent('li').parent('ul').parent('li').children('a').first().focus();
}, 1);
});
return true;
},
up: function up(){
$prevElement.focus();
return !$element.is(_this.$element.find('> li:first-child > a'));
},
down: function down(){
$nextElement.focus();
return !$element.is(_this.$element.find('> li:last-child > a'));
},
close: function close(){
if(!$element.is(_this.$element.find('> li > a'))){
_this._hide($element.parent().parent());
$element.parent().parent().siblings('a').focus();
}},
open: function open(){
if(_this.options.parentLink&&$element.attr('href')){
return false;
}else if(!$element.is(_this.$menuItems)){
_this._hide($element.parent('li').parent('ul'));
$element.parent('li').parent('ul').one(transitionend($element), function (){
setTimeout(function (){
$element.parent('li').parent('ul').parent('li').children('a').first().focus();
}, 1);
});
return true;
}else if($element.is(_this.$submenuAnchors)){
_this._show($element.parent('li'));
$element.parent('li').one(transitionend($element), function (){
$element.parent('li').find('ul li a').not('.js-drilldown-back a').first().focus();
});
return true;
}},
handled: function handled(preventDefault){
if(preventDefault){
e.preventDefault();
}
e.stopImmediatePropagation();
}});
});
}
}, {
key: "_hideAll",
value: function _hideAll(){
var $elem=this.$element.find('.is-drilldown-submenu.is-active').addClass('is-closing');
if(this.options.autoHeight) this.$wrapper.css({
height: $elem.parent().closest('ul').data('calcHeight')
});
$elem.one(transitionend($elem), function (e){
$elem.removeClass('is-active is-closing');
});
this.$element.trigger('closed.zf.drilldown');
}
}, {
key: "_back",
value: function _back($elem){
var _this=this;
$elem.off('click.zf.drilldown');
$elem.children('.js-drilldown-back').on('click.zf.drilldown', function (e){
e.stopImmediatePropagation();
_this._hide($elem);
var parentSubMenu=$elem.parent('li').parent('ul').parent('li');
if(parentSubMenu.length){
_this._show(parentSubMenu);
}});
}
}, {
key: "_menuLinkEvents",
value: function _menuLinkEvents(){
var _this=this;
this.$menuItems.not('.is-drilldown-submenu-parent').off('click.zf.drilldown').on('click.zf.drilldown', function (e){
setTimeout(function (){
_this._hideAll();
}, 0);
});
}
}, {
key: "_setShowSubMenuClasses",
value: function _setShowSubMenuClasses($elem, trigger){
$elem.addClass('is-active').removeClass('invisible').attr('aria-hidden', false);
$elem.parent('li').attr('aria-expanded', true);
if(trigger===true){
this.$element.trigger('open.zf.drilldown', [$elem]);
}}
}, {
key: "_setHideSubMenuClasses",
value: function _setHideSubMenuClasses($elem, trigger){
$elem.removeClass('is-active').addClass('invisible').attr('aria-hidden', true);
$elem.parent('li').attr('aria-expanded', false);
if(trigger===true){
$elem.trigger('hide.zf.drilldown', [$elem]);
}}
}, {
key: "_showMenu",
value: function _showMenu($elem, autoFocus){
var _this=this;
var $expandedSubmenus=this.$element.find('li[aria-expanded="true"] > ul[data-submenu]');
$expandedSubmenus.each(function (index){
_this._setHideSubMenuClasses((0, _jquery2.default)(this));
});
this.$currentMenu=$elem;
if($elem.is('[data-drilldown]')){
if(autoFocus===true) $elem.find('li[role="treeitem"] > a').first().focus();
if(this.options.autoHeight) this.$wrapper.css('height', $elem.data('calcHeight'));
return;
}
var $submenus=$elem.children().first().parentsUntil('[data-drilldown]', '[data-submenu]');
$submenus.each(function (index){
if(index===0&&_this.options.autoHeight){
_this.$wrapper.css('height', (0, _jquery2.default)(this).data('calcHeight'));
}
var isLastChild=index==$submenus.length - 1;
if(isLastChild===true){
(0, _jquery2.default)(this).one(transitionend((0, _jquery2.default)(this)), function (){
if(autoFocus===true){
$elem.find('li[role="treeitem"] > a').first().focus();
}});
}
_this._setShowSubMenuClasses((0, _jquery2.default)(this), isLastChild);
});
}
}, {
key: "_show",
value: function _show($elem){
var $submenu=$elem.children('[data-submenu]');
$elem.attr('aria-expanded', true);
this.$currentMenu=$submenu;
$submenu.addClass('is-active').removeClass('invisible').attr('aria-hidden', false);
if(this.options.autoHeight){
this.$wrapper.css({
height: $submenu.data('calcHeight')
});
}
this.$element.trigger('open.zf.drilldown', [$elem]);
}
}, {
key: "_hide",
value: function _hide($elem){
if(this.options.autoHeight) this.$wrapper.css({
height: $elem.parent().closest('ul').data('calcHeight')
});
$elem.parent('li').attr('aria-expanded', false);
$elem.attr('aria-hidden', true);
$elem.addClass('is-closing').one(transitionend($elem), function (){
$elem.removeClass('is-active is-closing');
$elem.blur().addClass('invisible');
});
$elem.trigger('hide.zf.drilldown', [$elem]);
}
}, {
key: "_getMaxDims",
value: function _getMaxDims(){
var maxHeight=0,
result={},
_this=this;
this.$submenus.add(this.$element).each(function (){
var numOfElems=(0, _jquery2.default)(this).children('li').length;
var height=Box.GetDimensions(this).height;
maxHeight=height > maxHeight ? height:maxHeight;
if(_this.options.autoHeight){
(0, _jquery2.default)(this).data('calcHeight', height);
}});
if(this.options.autoHeight) result['height']=this.$currentMenu.data('calcHeight');else result['min-height']="".concat(maxHeight, "px");
result['max-width']="".concat(this.$element[0].getBoundingClientRect().width, "px");
return result;
}
}, {
key: "_destroy",
value: function _destroy(){
if(this.options.scrollTop) this.$element.off('.zf.drilldown', this._bindHandler);
this._hideAll();
this.$element.off('mutateme.zf.trigger');
Nest.Burn(this.$element, 'drilldown');
this.$element.unwrap().find('.js-drilldown-back, .is-submenu-parent-item').remove().end().find('.is-active, .is-closing, .is-drilldown-submenu').removeClass('is-active is-closing is-drilldown-submenu').end().find('[data-submenu]').removeAttr('aria-hidden tabindex role');
this.$submenuAnchors.each(function (){
(0, _jquery2.default)(this).off('.zf.drilldown');
});
this.$element.find('[data-is-parent-link]').detach();
this.$submenus.removeClass('drilldown-submenu-cover-previous invisible');
this.$element.find('a').each(function (){
var $link=(0, _jquery2.default)(this);
$link.removeAttr('tabindex');
if($link.data('savedHref')){
$link.attr('href', $link.data('savedHref')).removeData('savedHref');
}else{
return;
}});
}}]);
return Drilldown;
}(Plugin);
Drilldown.defaults={
autoApplyClass: true,
backButton: '<li class="js-drilldown-back"><a tabindex="0">Back</a></li>',
backButtonPosition: 'top',
wrapper: '<div></div>',
parentLink: false,
closeOnClick: false,
autoHeight: false,
animateHeight: false,
scrollTop: false,
scrollTopElement: '',
scrollTopOffset: 0,
animationDuration: 500,
animationEasing: 'swing'
};
var POSITIONS=['left', 'right', 'top', 'bottom'];
var VERTICAL_ALIGNMENTS=['top', 'bottom', 'center'];
var HORIZONTAL_ALIGNMENTS=['left', 'right', 'center'];
var ALIGNMENTS={
'left': VERTICAL_ALIGNMENTS,
'right': VERTICAL_ALIGNMENTS,
'top': HORIZONTAL_ALIGNMENTS,
'bottom': HORIZONTAL_ALIGNMENTS
};
function nextItem(item, array){
var currentIdx=array.indexOf(item);
if(currentIdx===array.length - 1){
return array[0];
}else{
return array[currentIdx + 1];
}}
var Positionable =
function (_Plugin){
_inherits(Positionable, _Plugin);
function Positionable(){
_classCallCheck(this, Positionable);
return _possibleConstructorReturn(this, _getPrototypeOf(Positionable).apply(this, arguments));
}
_createClass(Positionable, [{
key: "_init",
value: function _init(){
this.triedPositions={};
this.position=this.options.position==='auto' ? this._getDefaultPosition():this.options.position;
this.alignment=this.options.alignment==='auto' ? this._getDefaultAlignment():this.options.alignment;
this.originalPosition=this.position;
this.originalAlignment=this.alignment;
}}, {
key: "_getDefaultPosition",
value: function _getDefaultPosition(){
return 'bottom';
}}, {
key: "_getDefaultAlignment",
value: function _getDefaultAlignment(){
switch (this.position){
case 'bottom':
case 'top':
return rtl() ? 'right':'left';
case 'left':
case 'right':
return 'bottom';
}}
}, {
key: "_reposition",
value: function _reposition(){
if(this._alignmentsExhausted(this.position)){
this.position=nextItem(this.position, POSITIONS);
this.alignment=ALIGNMENTS[this.position][0];
}else{
this._realign();
}}
}, {
key: "_realign",
value: function _realign(){
this._addTriedPosition(this.position, this.alignment);
this.alignment=nextItem(this.alignment, ALIGNMENTS[this.position]);
}}, {
key: "_addTriedPosition",
value: function _addTriedPosition(position, alignment){
this.triedPositions[position]=this.triedPositions[position]||[];
this.triedPositions[position].push(alignment);
}}, {
key: "_positionsExhausted",
value: function _positionsExhausted(){
var isExhausted=true;
for (var i=0; i < POSITIONS.length; i++){
isExhausted=isExhausted&&this._alignmentsExhausted(POSITIONS[i]);
}
return isExhausted;
}}, {
key: "_alignmentsExhausted",
value: function _alignmentsExhausted(position){
return this.triedPositions[position]&&this.triedPositions[position].length==ALIGNMENTS[position].length;
}}, {
key: "_getVOffset",
value: function _getVOffset(){
return this.options.vOffset;
}}, {
key: "_getHOffset",
value: function _getHOffset(){
return this.options.hOffset;
}}, {
key: "_setPosition",
value: function _setPosition($anchor, $element, $parent){
if($anchor.attr('aria-expanded')==='false'){
return false;
}
var $eleDims=Box.GetDimensions($element),
$anchorDims=Box.GetDimensions($anchor);
if(!this.options.allowOverlap){
this.position=this.originalPosition;
this.alignment=this.originalAlignment;
}
$element.offset(Box.GetExplicitOffsets($element, $anchor, this.position, this.alignment, this._getVOffset(), this._getHOffset()));
if(!this.options.allowOverlap){
var minOverlap=100000000;
var minCoordinates={
position: this.position,
alignment: this.alignment
};
while (!this._positionsExhausted()){
var overlap=Box.OverlapArea($element, $parent, false, false, this.options.allowBottomOverlap);
if(overlap===0){
return;
}
if(overlap < minOverlap){
minOverlap=overlap;
minCoordinates={
position: this.position,
alignment: this.alignment
};}
this._reposition();
$element.offset(Box.GetExplicitOffsets($element, $anchor, this.position, this.alignment, this._getVOffset(), this._getHOffset()));
}
this.position=minCoordinates.position;
this.alignment=minCoordinates.alignment;
$element.offset(Box.GetExplicitOffsets($element, $anchor, this.position, this.alignment, this._getVOffset(), this._getHOffset()));
}}
}]);
return Positionable;
}(Plugin);
Positionable.defaults={
position: 'auto',
alignment: 'auto',
allowOverlap: false,
allowBottomOverlap: true,
vOffset: 0,
hOffset: 0
};
var Dropdown =
function (_Positionable){
_inherits(Dropdown, _Positionable);
function Dropdown(){
_classCallCheck(this, Dropdown);
return _possibleConstructorReturn(this, _getPrototypeOf(Dropdown).apply(this, arguments));
}
_createClass(Dropdown, [{
key: "_setup",
value: function _setup(element, options){
this.$element=element;
this.options=_jquery2.default.extend({}, Dropdown.defaults, this.$element.data(), options);
this.className='Dropdown';
Triggers.init(_jquery2.default);
this._init();
Keyboard.register('Dropdown', {
'ENTER': 'toggle',
'SPACE': 'toggle',
'ESCAPE': 'close'
});
}
}, {
key: "_init",
value: function _init(){
var $id=this.$element.attr('id');
this.$anchors=(0, _jquery2.default)("[data-toggle=\"".concat($id, "\"]")).length ? (0, _jquery2.default)("[data-toggle=\"".concat($id, "\"]")):(0, _jquery2.default)("[data-open=\"".concat($id, "\"]"));
this.$anchors.attr({
'aria-controls': $id,
'data-is-focus': false,
'data-yeti-box': $id,
'aria-haspopup': true,
'aria-expanded': false
});
this._setCurrentAnchor(this.$anchors.first());
if(this.options.parentClass){
this.$parent=this.$element.parents('.' + this.options.parentClass);
}else{
this.$parent=null;
}
if(typeof this.$element.attr('aria-labelledby')==='undefined'){
if(typeof this.$currentAnchor.attr('id')==='undefined'){
this.$currentAnchor.attr('id', GetYoDigits(6, 'dd-anchor'));
}
this.$element.attr('aria-labelledby', this.$currentAnchor.attr('id'));
}
this.$element.attr({
'aria-hidden': 'true',
'data-yeti-box': $id,
'data-resize': $id
});
_get(_getPrototypeOf(Dropdown.prototype), "_init", this).call(this);
this._events();
}}, {
key: "_getDefaultPosition",
value: function _getDefaultPosition(){
var position=this.$element[0].className.match(/(top|left|right|bottom)/g);
if(position){
return position[0];
}else{
return 'bottom';
}}
}, {
key: "_getDefaultAlignment",
value: function _getDefaultAlignment(){
var horizontalPosition=/float-(\S+)/.exec(this.$currentAnchor.attr('class'));
if(horizontalPosition){
return horizontalPosition[1];
}
return _get(_getPrototypeOf(Dropdown.prototype), "_getDefaultAlignment", this).call(this);
}
}, {
key: "_setPosition",
value: function _setPosition(){
this.$element.removeClass("has-position-".concat(this.position, " has-alignment-").concat(this.alignment));
_get(_getPrototypeOf(Dropdown.prototype), "_setPosition", this).call(this, this.$currentAnchor, this.$element, this.$parent);
this.$element.addClass("has-position-".concat(this.position, " has-alignment-").concat(this.alignment));
}
}, {
key: "_setCurrentAnchor",
value: function _setCurrentAnchor(el){
this.$currentAnchor=(0, _jquery2.default)(el);
}
}, {
key: "_events",
value: function _events(){
var _this=this;
this.$element.on({
'open.zf.trigger': this.open.bind(this),
'close.zf.trigger': this.close.bind(this),
'toggle.zf.trigger': this.toggle.bind(this),
'resizeme.zf.trigger': this._setPosition.bind(this)
});
this.$anchors.off('click.zf.trigger').on('click.zf.trigger', function (){
_this._setCurrentAnchor(this);
});
if(this.options.hover){
this.$anchors.off('mouseenter.zf.dropdown mouseleave.zf.dropdown').on('mouseenter.zf.dropdown', function (){
_this._setCurrentAnchor(this);
var bodyData=(0, _jquery2.default)('body').data();
if(typeof bodyData.whatinput==='undefined'||bodyData.whatinput==='mouse'){
clearTimeout(_this.timeout);
_this.timeout=setTimeout(function (){
_this.open();
_this.$anchors.data('hover', true);
}, _this.options.hoverDelay);
}}).on('mouseleave.zf.dropdown', ignoreMousedisappear(function (){
clearTimeout(_this.timeout);
_this.timeout=setTimeout(function (){
_this.close();
_this.$anchors.data('hover', false);
}, _this.options.hoverDelay);
}));
if(this.options.hoverPane){
this.$element.off('mouseenter.zf.dropdown mouseleave.zf.dropdown').on('mouseenter.zf.dropdown', function (){
clearTimeout(_this.timeout);
}).on('mouseleave.zf.dropdown', ignoreMousedisappear(function (){
clearTimeout(_this.timeout);
_this.timeout=setTimeout(function (){
_this.close();
_this.$anchors.data('hover', false);
}, _this.options.hoverDelay);
}));
}}
this.$anchors.add(this.$element).on('keydown.zf.dropdown', function (e){
var $target=(0, _jquery2.default)(this),
visibleFocusableElements=Keyboard.findFocusable(_this.$element);
Keyboard.handleKey(e, 'Dropdown', {
open: function open(){
if($target.is(_this.$anchors)&&!$target.is('input, textarea')){
_this.open();
_this.$element.attr('tabindex', -1).focus();
e.preventDefault();
}},
close: function close(){
_this.close();
_this.$anchors.focus();
}});
});
}
}, {
key: "_addBodyHandler",
value: function _addBodyHandler(){
var $body=(0, _jquery2.default)(document.body).not(this.$element),
_this=this;
$body.off('click.zf.dropdown').on('click.zf.dropdown', function (e){
if(_this.$anchors.is(e.target)||_this.$anchors.find(e.target).length){
return;
}
if(_this.$element.is(e.target)||_this.$element.find(e.target).length){
return;
}
_this.close();
$body.off('click.zf.dropdown');
});
}
}, {
key: "open",
value: function open(){
this.$element.trigger('closeme.zf.dropdown', this.$element.attr('id'));
this.$anchors.addClass('hover').attr({
'aria-expanded': true
});// this.$element;
this.$element.addClass('is-opening');
this._setPosition();
this.$element.removeClass('is-opening').addClass('is-open').attr({
'aria-hidden': false
});
if(this.options.autoFocus){
var $focusable=Keyboard.findFocusable(this.$element);
if($focusable.length){
$focusable.eq(0).focus();
}}
if(this.options.closeOnClick){
this._addBodyHandler();
}
if(this.options.trapFocus){
Keyboard.trapFocus(this.$element);
}
this.$element.trigger('show.zf.dropdown', [this.$element]);
}
}, {
key: "close",
value: function close(){
if(!this.$element.hasClass('is-open')){
return false;
}
this.$element.removeClass('is-open').attr({
'aria-hidden': true
});
this.$anchors.removeClass('hover').attr('aria-expanded', false);
this.$element.trigger('hide.zf.dropdown', [this.$element]);
if(this.options.trapFocus){
Keyboard.releaseFocus(this.$element);
}}
}, {
key: "toggle",
value: function toggle(){
if(this.$element.hasClass('is-open')){
if(this.$anchors.data('hover')) return;
this.close();
}else{
this.open();
}}
}, {
key: "_destroy",
value: function _destroy(){
this.$element.off('.zf.trigger').hide();
this.$anchors.off('.zf.dropdown');
(0, _jquery2.default)(document.body).off('click.zf.dropdown');
}}]);
return Dropdown;
}(Positionable);
Dropdown.defaults={
parentClass: null,
hoverDelay: 250,
hover: false,
hoverPane: false,
vOffset: 0,
hOffset: 0,
position: 'auto',
alignment: 'auto',
allowOverlap: false,
allowBottomOverlap: true,
trapFocus: false,
autoFocus: false,
closeOnClick: false
};
var DropdownMenu =
function (_Plugin){
_inherits(DropdownMenu, _Plugin);
function DropdownMenu(){
_classCallCheck(this, DropdownMenu);
return _possibleConstructorReturn(this, _getPrototypeOf(DropdownMenu).apply(this, arguments));
}
_createClass(DropdownMenu, [{
key: "_setup",
value: function _setup(element, options){
this.$element=element;
this.options=_jquery2.default.extend({}, DropdownMenu.defaults, this.$element.data(), options);
this.className='DropdownMenu';
this._init();
Keyboard.register('DropdownMenu', {
'ENTER': 'open',
'SPACE': 'open',
'ARROW_RIGHT': 'next',
'ARROW_UP': 'up',
'ARROW_DOWN': 'down',
'ARROW_LEFT': 'previous',
'ESCAPE': 'close'
});
}
}, {
key: "_init",
value: function _init(){
Nest.Feather(this.$element, 'dropdown');
var subs=this.$element.find('li.is-dropdown-submenu-parent');
this.$element.children('.is-dropdown-submenu-parent').children('.is-dropdown-submenu').addClass('first-sub');
this.$menuItems=this.$element.find('[role="menuitem"]');
this.$tabs=this.$element.children('[role="menuitem"]');
this.$tabs.find('ul.is-dropdown-submenu').addClass(this.options.verticalClass);
if(this.options.alignment==='auto'){
if(this.$element.hasClass(this.options.rightClass)||rtl()||this.$element.parents('.top-bar-right').is('*')){
this.options.alignment='right';
subs.addClass('opens-left');
}else{
this.options.alignment='left';
subs.addClass('opens-right');
}}else{
if(this.options.alignment==='right'){
subs.addClass('opens-left');
}else{
subs.addClass('opens-right');
}}
this.changed=false;
this._events();
}}, {
key: "_isVertical",
value: function _isVertical(){
return this.$tabs.css('display')==='block'||this.$element.css('flex-direction')==='column';
}}, {
key: "_isRtl",
value: function _isRtl(){
return this.$element.hasClass('align-right')||rtl()&&!this.$element.hasClass('align-left');
}
}, {
key: "_events",
value: function _events(){
var _this=this,
hasTouch='ontouchstart' in window||typeof window.ontouchstart!=='undefined',
parClass='is-dropdown-submenu-parent';
var handleClickFn=function handleClickFn(e){
var $elem=(0, _jquery2.default)(e.target).parentsUntil('ul', ".".concat(parClass)),
hasSub=$elem.hasClass(parClass),
hasClicked=$elem.attr('data-is-click')==='true',
$sub=$elem.children('.is-dropdown-submenu');
if(hasSub){
if(hasClicked){
if(!_this.options.closeOnClick||!_this.options.clickOpen&&!hasTouch||_this.options.forceFollow&&hasTouch){
return;
}else{
e.stopImmediatePropagation();
e.preventDefault();
_this._hide($elem);
}}else{
e.preventDefault();
e.stopImmediatePropagation();
_this._show($sub);
$elem.add($elem.parentsUntil(_this.$element, ".".concat(parClass))).attr('data-is-click', true);
}}
};
if(this.options.clickOpen||hasTouch){
this.$menuItems.on('click.zf.dropdownmenu touchstart.zf.dropdownmenu', handleClickFn);
}
if(_this.options.closeOnClickInside){
this.$menuItems.on('click.zf.dropdownmenu', function (e){
var $elem=(0, _jquery2.default)(this),
hasSub=$elem.hasClass(parClass);
if(!hasSub){
_this._hide();
}});
}
if(!this.options.disableHover){
this.$menuItems.on('mouseenter.zf.dropdownmenu', function (e){
var $elem=(0, _jquery2.default)(this),
hasSub=$elem.hasClass(parClass);
if(hasSub){
clearTimeout($elem.data('_delay'));
$elem.data('_delay', setTimeout(function (){
_this._show($elem.children('.is-dropdown-submenu'));
}, _this.options.hoverDelay));
}}).on('mouseleave.zf.dropdownMenu', ignoreMousedisappear(function (e){
var $elem=(0, _jquery2.default)(this),
hasSub=$elem.hasClass(parClass);
if(hasSub&&_this.options.autoclose){
if($elem.attr('data-is-click')==='true'&&_this.options.clickOpen){
return false;
}
clearTimeout($elem.data('_delay'));
$elem.data('_delay', setTimeout(function (){
_this._hide($elem);
}, _this.options.closingTime));
}}));
}
this.$menuItems.on('keydown.zf.dropdownmenu', function (e){
var $element=(0, _jquery2.default)(e.target).parentsUntil('ul', '[role="menuitem"]'),
isTab=_this.$tabs.index($element) > -1,
$elements=isTab ? _this.$tabs:$element.siblings('li').add($element),
$prevElement,
$nextElement;
$elements.each(function (i){
if((0, _jquery2.default)(this).is($element)){
$prevElement=$elements.eq(i - 1);
$nextElement=$elements.eq(i + 1);
return;
}});
var nextSibling=function nextSibling(){
$nextElement.children('a:first').focus();
e.preventDefault();
},
prevSibling=function prevSibling(){
$prevElement.children('a:first').focus();
e.preventDefault();
},
openSub=function openSub(){
var $sub=$element.children('ul.is-dropdown-submenu');
if($sub.length){
_this._show($sub);
$element.find('li > a:first').focus();
e.preventDefault();
}else{
return;
}},
closeSub=function closeSub(){
var close=$element.parent('ul').parent('li');
close.children('a:first').focus();
_this._hide(close);
e.preventDefault();
};
var functions={
open: openSub,
close: function close(){
_this._hide(_this.$element);
_this.$menuItems.eq(0).children('a').focus();
e.preventDefault();
},
handled: function handled(){
e.stopImmediatePropagation();
}};
if(isTab){
if(_this._isVertical()){
if(_this._isRtl()){
_jquery2.default.extend(functions, {
down: nextSibling,
up: prevSibling,
next: closeSub,
previous: openSub
});
}else{
_jquery2.default.extend(functions, {
down: nextSibling,
up: prevSibling,
next: openSub,
previous: closeSub
});
}}else{
if(_this._isRtl()){
_jquery2.default.extend(functions, {
next: prevSibling,
previous: nextSibling,
down: openSub,
up: closeSub
});
}else{
_jquery2.default.extend(functions, {
next: nextSibling,
previous: prevSibling,
down: openSub,
up: closeSub
});
}}
}else{
if(_this._isRtl()){
_jquery2.default.extend(functions, {
next: closeSub,
previous: openSub,
down: nextSibling,
up: prevSibling
});
}else{
_jquery2.default.extend(functions, {
next: openSub,
previous: closeSub,
down: nextSibling,
up: prevSibling
});
}}
Keyboard.handleKey(e, 'DropdownMenu', functions);
});
}
}, {
key: "_addBodyHandler",
value: function _addBodyHandler(){
var $body=(0, _jquery2.default)(document.body),
_this=this;
$body.off('mouseup.zf.dropdownmenu touchend.zf.dropdownmenu').on('mouseup.zf.dropdownmenu touchend.zf.dropdownmenu', function (e){
var $link=_this.$element.find(e.target);
if($link.length){
return;
}
_this._hide();
$body.off('mouseup.zf.dropdownmenu touchend.zf.dropdownmenu');
});
}
}, {
key: "_show",
value: function _show($sub){
var idx=this.$tabs.index(this.$tabs.filter(function (i, el){
return (0, _jquery2.default)(el).find($sub).length > 0;
}));
var $sibs=$sub.parent('li.is-dropdown-submenu-parent').siblings('li.is-dropdown-submenu-parent');
this._hide($sibs, idx);
$sub.css('visibility', 'hidden').addClass('js-dropdown-active').parent('li.is-dropdown-submenu-parent').addClass('is-active');
var clear=Box.ImNotTouchingYou($sub, null, true);
if(!clear){
var oldClass=this.options.alignment==='left' ? '-right':'-left',
$parentLi=$sub.parent('.is-dropdown-submenu-parent');
$parentLi.removeClass("opens".concat(oldClass)).addClass("opens-".concat(this.options.alignment));
clear=Box.ImNotTouchingYou($sub, null, true);
if(!clear){
$parentLi.removeClass("opens-".concat(this.options.alignment)).addClass('opens-inner');
}
this.changed=true;
}
$sub.css('visibility', '');
if(this.options.closeOnClick){
this._addBodyHandler();
}
this.$element.trigger('show.zf.dropdownmenu', [$sub]);
}
}, {
key: "_hide",
value: function _hide($elem, idx){
var $toClose;
if($elem&&$elem.length){
$toClose=$elem;
}else if(typeof idx!=='undefined'){
$toClose=this.$tabs.not(function (i, el){
return i===idx;
});
}else{
$toClose=this.$element;
}
var somethingToClose=$toClose.hasClass('is-active')||$toClose.find('.is-active').length > 0;
if(somethingToClose){
$toClose.find('li.is-active').add($toClose).attr({
'data-is-click': false
}).removeClass('is-active');
$toClose.find('ul.js-dropdown-active').removeClass('js-dropdown-active');
if(this.changed||$toClose.find('opens-inner').length){
var oldClass=this.options.alignment==='left' ? 'right':'left';
$toClose.find('li.is-dropdown-submenu-parent').add($toClose).removeClass("opens-inner opens-".concat(this.options.alignment)).addClass("opens-".concat(oldClass));
this.changed=false;
}
this.$element.trigger('hide.zf.dropdownmenu', [$toClose]);
}}
}, {
key: "_destroy",
value: function _destroy(){
this.$menuItems.off('.zf.dropdownmenu').removeAttr('data-is-click').removeClass('is-right-arrow is-left-arrow is-down-arrow opens-right opens-left opens-inner');
(0, _jquery2.default)(document.body).off('.zf.dropdownmenu');
Nest.Burn(this.$element, 'dropdown');
}}]);
return DropdownMenu;
}(Plugin);
DropdownMenu.defaults={
disableHover: false,
autoclose: true,
hoverDelay: 50,
clickOpen: false,
closingTime: 500,
alignment: 'auto',
closeOnClick: true,
closeOnClickInside: true,
verticalClass: 'vertical',
rightClass: 'align-right',
forceFollow: true
};
var Equalizer =
function (_Plugin){
_inherits(Equalizer, _Plugin);
function Equalizer(){
_classCallCheck(this, Equalizer);
return _possibleConstructorReturn(this, _getPrototypeOf(Equalizer).apply(this, arguments));
}
_createClass(Equalizer, [{
key: "_setup",
value: function _setup(element, options){
this.$element=element;
this.options=_jquery2.default.extend({}, Equalizer.defaults, this.$element.data(), options);
this.className='Equalizer';
this._init();
}
}, {
key: "_init",
value: function _init(){
var eqId=this.$element.attr('data-equalizer')||'';
var $watched=this.$element.find("[data-equalizer-watch=\"".concat(eqId, "\"]"));
MediaQuery._init();
this.$watched=$watched.length ? $watched:this.$element.find('[data-equalizer-watch]');
this.$element.attr('data-resize', eqId||GetYoDigits(6, 'eq'));
this.$element.attr('data-mutate', eqId||GetYoDigits(6, 'eq'));
this.hasNested=this.$element.find('[data-equalizer]').length > 0;
this.isNested=this.$element.parentsUntil(document.body, '[data-equalizer]').length > 0;
this.isOn=false;
this._bindHandler={
onResizeMeBound: this._onResizeMe.bind(this),
onPostEqualizedBound: this._onPostEqualized.bind(this)
};
var imgs=this.$element.find('img');
var tooSmall;
if(this.options.equalizeOn){
tooSmall=this._checkMQ();
(0, _jquery2.default)(window).on('changed.zf.mediaquery', this._checkMQ.bind(this));
}else{
this._events();
}
if(typeof tooSmall!=='undefined'&&tooSmall===false||typeof tooSmall==='undefined'){
if(imgs.length){
onImagesLoaded(imgs, this._reflow.bind(this));
}else{
this._reflow();
}}
}
}, {
key: "_pauseEvents",
value: function _pauseEvents(){
this.isOn=false;
this.$element.off({
'.zf.equalizer': this._bindHandler.onPostEqualizedBound,
'resizeme.zf.trigger': this._bindHandler.onResizeMeBound,
'mutateme.zf.trigger': this._bindHandler.onResizeMeBound
});
}
}, {
key: "_onResizeMe",
value: function _onResizeMe(e){
this._reflow();
}
}, {
key: "_onPostEqualized",
value: function _onPostEqualized(e){
if(e.target!==this.$element[0]){
this._reflow();
}}
}, {
key: "_events",
value: function _events(){
this._pauseEvents();
if(this.hasNested){
this.$element.on('postequalized.zf.equalizer', this._bindHandler.onPostEqualizedBound);
}else{
this.$element.on('resizeme.zf.trigger', this._bindHandler.onResizeMeBound);
this.$element.on('mutateme.zf.trigger', this._bindHandler.onResizeMeBound);
}
this.isOn=true;
}
}, {
key: "_checkMQ",
value: function _checkMQ(){
var tooSmall = !MediaQuery.is(this.options.equalizeOn);
if(tooSmall){
if(this.isOn){
this._pauseEvents();
this.$watched.css('height', 'auto');
}}else{
if(!this.isOn){
this._events();
}}
return tooSmall;
}
}, {
key: "_killswitch",
value: function _killswitch(){
return;
}
}, {
key: "_reflow",
value: function _reflow(){
if(!this.options.equalizeOnStack){
if(this._isStacked()){
this.$watched.css('height', 'auto');
return false;
}}
if(this.options.equalizeByRow){
this.getHeightsByRow(this.applyHeightByRow.bind(this));
}else{
this.getHeights(this.applyHeight.bind(this));
}}
}, {
key: "_isStacked",
value: function _isStacked(){
if(!this.$watched[0]||!this.$watched[1]){
return true;
}
return this.$watched[0].getBoundingClientRect().top!==this.$watched[1].getBoundingClientRect().top;
}
}, {
key: "getHeights",
value: function getHeights(cb){
var heights=[];
for (var i=0, len=this.$watched.length; i < len; i++){
this.$watched[i].style.height='auto';
heights.push(this.$watched[i].offsetHeight);
}
cb(heights);
}
}, {
key: "getHeightsByRow",
value: function getHeightsByRow(cb){
var lastElTopOffset=this.$watched.length ? this.$watched.first().offset().top:0,
groups=[],
group=0;
groups[group]=[];
for (var i=0, len=this.$watched.length; i < len; i++){
this.$watched[i].style.height='auto';
var elOffsetTop=(0, _jquery2.default)(this.$watched[i]).offset().top;
if(elOffsetTop!=lastElTopOffset){
group++;
groups[group]=[];
lastElTopOffset=elOffsetTop;
}
groups[group].push([this.$watched[i], this.$watched[i].offsetHeight]);
}
for (var j=0, ln=groups.length; j < ln; j++){
var heights=(0, _jquery2.default)(groups[j]).map(function (){
return this[1];
}).get();
var max=Math.max.apply(null, heights);
groups[j].push(max);
}
cb(groups);
}
}, {
key: "applyHeight",
value: function applyHeight(heights){
var max=Math.max.apply(null, heights);
this.$element.trigger('preequalized.zf.equalizer');
this.$watched.css('height', max);
this.$element.trigger('postequalized.zf.equalizer');
}
}, {
key: "applyHeightByRow",
value: function applyHeightByRow(groups){
this.$element.trigger('preequalized.zf.equalizer');
for (var i=0, len=groups.length; i < len; i++){
var groupsILength=groups[i].length,
max=groups[i][groupsILength - 1];
if(groupsILength <=2){
(0, _jquery2.default)(groups[i][0][0]).css({
'height': 'auto'
});
continue;
}
this.$element.trigger('preequalizedrow.zf.equalizer');
for (var j=0, lenJ=groupsILength - 1; j < lenJ; j++){
(0, _jquery2.default)(groups[i][j][0]).css({
'height': max
});
}
this.$element.trigger('postequalizedrow.zf.equalizer');
}
this.$element.trigger('postequalized.zf.equalizer');
}
}, {
key: "_destroy",
value: function _destroy(){
this._pauseEvents();
this.$watched.css('height', 'auto');
}}]);
return Equalizer;
}(Plugin);
Equalizer.defaults={
equalizeOnStack: false,
equalizeByRow: false,
equalizeOn: ''
};
var Interchange =
function (_Plugin){
_inherits(Interchange, _Plugin);
function Interchange(){
_classCallCheck(this, Interchange);
return _possibleConstructorReturn(this, _getPrototypeOf(Interchange).apply(this, arguments));
}
_createClass(Interchange, [{
key: "_setup",
value: function _setup(element, options){
this.$element=element;
this.options=_jquery2.default.extend({}, Interchange.defaults, options);
this.rules=[];
this.currentPath='';
this.className='Interchange';
this._init();
this._events();
}
}, {
key: "_init",
value: function _init(){
MediaQuery._init();
var id=this.$element[0].id||GetYoDigits(6, 'interchange');
this.$element.attr({
'data-resize': id,
'id': id
});
this._addBreakpoints();
this._generateRules();
this._reflow();
}
}, {
key: "_events",
value: function _events(){
var _this2=this;
this.$element.off('resizeme.zf.trigger').on('resizeme.zf.trigger', function (){
return _this2._reflow();
});
}
}, {
key: "_reflow",
value: function _reflow(){
var match;
for (var i in this.rules){
if(this.rules.hasOwnProperty(i)){
var rule=this.rules[i];
if(window.matchMedia(rule.query).matches){
match=rule;
}}
}
if(match){
this.replace(match.path);
}}
}, {
key: "_addBreakpoints",
value: function _addBreakpoints(){
for (var i in MediaQuery.queries){
if(MediaQuery.queries.hasOwnProperty(i)){
var query=MediaQuery.queries[i];
Interchange.SPECIAL_QUERIES[query.name]=query.value;
}}
}
}, {
key: "_generateRules",
value: function _generateRules(element){
var rulesList=[];
var rules;
if(this.options.rules){
rules=this.options.rules;
}else{
rules=this.$element.data('interchange');
}
rules=typeof rules==='string' ? rules.match(/\[.*?, .*?\]/g):rules;
for (var i in rules){
if(rules.hasOwnProperty(i)){
var rule=rules[i].slice(1, -1).split(', ');
var path=rule.slice(0, -1).join('');
var query=rule[rule.length - 1];
if(Interchange.SPECIAL_QUERIES[query]){
query=Interchange.SPECIAL_QUERIES[query];
}
rulesList.push({
path: path,
query: query
});
}}
this.rules=rulesList;
}
}, {
key: "replace",
value: function replace(path){
if(this.currentPath===path) return;
var _this=this,
trigger='replaced.zf.interchange';
if(this.$element[0].nodeName==='IMG'){
this.$element.attr('src', path).on('load', function (){
_this.currentPath=path;
}).trigger(trigger);
}
else if(path.match(/\.(gif|jpg|jpeg|png|svg|tiff)([?#].*)?/i)){
path=path.replace(/\(/g, '%28').replace(/\)/g, '%29');
this.$element.css({
'background-image': 'url(' + path + ')'
}).trigger(trigger);
}else{
_jquery2.default.get(path, function (response){
_this.$element.html(response).trigger(trigger);
(0, _jquery2.default)(response).foundation();
_this.currentPath=path;
});
}
}
}, {
key: "_destroy",
value: function _destroy(){
this.$element.off('resizeme.zf.trigger');
}}]);
return Interchange;
}(Plugin);
Interchange.defaults={
rules: null
};
Interchange.SPECIAL_QUERIES={
'landscape': 'screen and (orientation: landscape)',
'portrait': 'screen and (orientation: portrait)',
'retina': 'only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx)'
};
var SmoothScroll =
function (_Plugin){
_inherits(SmoothScroll, _Plugin);
function SmoothScroll(){
_classCallCheck(this, SmoothScroll);
return _possibleConstructorReturn(this, _getPrototypeOf(SmoothScroll).apply(this, arguments));
}
_createClass(SmoothScroll, [{
key: "_setup",
value: function _setup(element, options){
this.$element=element;
this.options=_jquery2.default.extend({}, SmoothScroll.defaults, this.$element.data(), options);
this.className='SmoothScroll';
this._init();
}
}, {
key: "_init",
value: function _init(){
var id=this.$element[0].id||GetYoDigits(6, 'smooth-scroll');
this.$element.attr({
id: id
});
this._events();
}
}, {
key: "_events",
value: function _events(){
this.$element.on('click.zf.smoothScroll', this._handleLinkClick);
this.$element.on('click.zf.smoothScroll', 'a[href^="#"]', this._handleLinkClick);
}
}, {
key: "_handleLinkClick",
value: function _handleLinkClick(e){
var _this=this;
if(!(0, _jquery2.default)(e.currentTarget).is('a[href^="#"]')) return;
var arrival=e.currentTarget.getAttribute('href');
this._inTransition=true;
SmoothScroll.scrollToLoc(arrival, this.options, function (){
_this._inTransition=false;
});
e.preventDefault();
}}, {
key: "_destroy",
value: function _destroy(){
this.$element.off('click.zf.smoothScroll', this._handleLinkClick);
this.$element.off('click.zf.smoothScroll', 'a[href^="#"]', this._handleLinkClick);
}}], [{
key: "scrollToLoc",
value: function scrollToLoc(loc){
var options=arguments.length > 1&&arguments[1]!==undefined ? arguments[1]:SmoothScroll.defaults;
var callback=arguments.length > 2 ? arguments[2]:undefined;
var $loc=(0, _jquery2.default)(loc);
if(!$loc.length) return false;
var scrollPos=Math.round($loc.offset().top - options.threshold / 2 - options.offset);
(0, _jquery2.default)('html, body').stop(true).animate({
scrollTop: scrollPos
}, options.animationDuration, options.animationEasing, function (){
if(typeof callback==='function'){
callback();
}});
}}]);
return SmoothScroll;
}(Plugin);
SmoothScroll.defaults={
animationDuration: 500,
animationEasing: 'linear',
threshold: 50,
offset: 0
};
var Magellan =
function (_Plugin){
_inherits(Magellan, _Plugin);
function Magellan(){
_classCallCheck(this, Magellan);
return _possibleConstructorReturn(this, _getPrototypeOf(Magellan).apply(this, arguments));
}
_createClass(Magellan, [{
key: "_setup",
value: function _setup(element, options){
this.$element=element;
this.options=_jquery2.default.extend({}, Magellan.defaults, this.$element.data(), options);
this.className='Magellan';
this._init();
this.calcPoints();
}
}, {
key: "_init",
value: function _init(){
var id=this.$element[0].id||GetYoDigits(6, 'magellan');
this.$targets=(0, _jquery2.default)('[data-magellan-target]');
this.$links=this.$element.find('a');
this.$element.attr({
'data-resize': id,
'data-scroll': id,
'id': id
});
this.$active=(0, _jquery2.default)();
this.scrollPos=parseInt(window.pageYOffset, 10);
this._events();
}
}, {
key: "calcPoints",
value: function calcPoints(){
var _this=this,
body=document.body,
html=document.documentElement;
this.points=[];
this.winHeight=Math.round(Math.max(window.innerHeight, html.clientHeight));
this.docHeight=Math.round(Math.max(body.scrollHeight, body.offsetHeight, html.clientHeight, html.scrollHeight, html.offsetHeight));
this.$targets.each(function (){
var $tar=(0, _jquery2.default)(this),
pt=Math.round($tar.offset().top - _this.options.threshold);
$tar.targetPoint=pt;
_this.points.push(pt);
});
}
}, {
key: "_events",
value: function _events(){
var _this=this,
$body=(0, _jquery2.default)('html, body'),
opts={
duration: _this.options.animationDuration,
easing: _this.options.animationEasing
};
(0, _jquery2.default)(window).one('load', function (){
if(_this.options.deepLinking){
if(location.hash){
_this.scrollToLoc(location.hash);
}}
_this.calcPoints();
_this._updateActive();
});
_this.onLoadListener=onLoad((0, _jquery2.default)(window), function (){
_this.$element.on({
'resizeme.zf.trigger': _this.reflow.bind(_this),
'scrollme.zf.trigger': _this._updateActive.bind(_this)
}).on('click.zf.magellan', 'a[href^="#"]', function (e){
e.preventDefault();
var arrival=this.getAttribute('href');
_this.scrollToLoc(arrival);
});
});
this._deepLinkScroll=function (e){
if(_this.options.deepLinking){
_this.scrollToLoc(window.location.hash);
}};
(0, _jquery2.default)(window).on('hashchange', this._deepLinkScroll);
}
}, {
key: "scrollToLoc",
value: function scrollToLoc(loc){
this._inTransition=true;
var _this=this;
var options={
animationEasing: this.options.animationEasing,
animationDuration: this.options.animationDuration,
threshold: this.options.threshold,
offset: this.options.offset
};
SmoothScroll.scrollToLoc(loc, options, function (){
_this._inTransition=false;
});
}
}, {
key: "reflow",
value: function reflow(){
this.calcPoints();
this._updateActive();
}
}, {
key: "_updateActive",
value: function _updateActive()
{
var _this2=this;
if(this._inTransition) return;
var newScrollPos=parseInt(window.pageYOffset, 10);
var isScrollingUp=this.scrollPos > newScrollPos;
this.scrollPos=newScrollPos;
var activeIdx;
if(newScrollPos < this.points[0]) ;
else if(newScrollPos + this.winHeight===this.docHeight){
activeIdx=this.points.length - 1;
}else{
var visibleLinks=this.points.filter(function (p, i){
return p - _this2.options.offset - (isScrollingUp ? _this2.options.threshold:0) <=newScrollPos;
});
activeIdx=visibleLinks.length ? visibleLinks.length - 1:0;
}
var $oldActive=this.$active;
var activeHash='';
if(typeof activeIdx!=='undefined'){
this.$active=this.$links.filter('[href="#' + this.$targets.eq(activeIdx).data('magellan-target') + '"]');
if(this.$active.length) activeHash=this.$active[0].getAttribute('href');
}else{
this.$active=(0, _jquery2.default)();
}
var isNewActive = !(!this.$active.length&&!$oldActive.length)&&!this.$active.is($oldActive);
var isNewHash=activeHash!==window.location.hash;
if(isNewActive){
$oldActive.removeClass(this.options.activeClass);
this.$active.addClass(this.options.activeClass);
}
if(this.options.deepLinking&&isNewHash){
if(window.history.pushState){
var url=activeHash ? activeHash:window.location.pathname + window.location.search;
window.history.pushState(null, null, url);
}else{
window.location.hash=activeHash;
}}
if(isNewActive){
this.$element.trigger('update.zf.magellan', [this.$active]);
}}
}, {
key: "_destroy",
value: function _destroy(){
this.$element.off('.zf.trigger .zf.magellan').find(".".concat(this.options.activeClass)).removeClass(this.options.activeClass);
if(this.options.deepLinking){
var hash=this.$active[0].getAttribute('href');
window.location.hash.replace(hash, '');
}
(0, _jquery2.default)(window).off('hashchange', this._deepLinkScroll);
if(this.onLoadListener) (0, _jquery2.default)(window).off(this.onLoadListener);
}}]);
return Magellan;
}(Plugin);
Magellan.defaults={
animationDuration: 500,
animationEasing: 'linear',
threshold: 50,
activeClass: 'is-active',
deepLinking: false,
offset: 0
};
var OffCanvas =
function (_Plugin){
_inherits(OffCanvas, _Plugin);
function OffCanvas(){
_classCallCheck(this, OffCanvas);
return _possibleConstructorReturn(this, _getPrototypeOf(OffCanvas).apply(this, arguments));
}
_createClass(OffCanvas, [{
key: "_setup",
value: function _setup(element, options){
var _this2=this;
this.className='OffCanvas';
this.$element=element;
this.options=_jquery2.default.extend({}, OffCanvas.defaults, this.$element.data(), options);
this.contentClasses={
base: [],
reveal: []
};
this.$lastTrigger=(0, _jquery2.default)();
this.$triggers=(0, _jquery2.default)();
this.position='left';
this.$content=(0, _jquery2.default)();
this.nested = !!this.options.nested;
(0, _jquery2.default)(['push', 'overlap']).each(function (index, val){
_this2.contentClasses.base.push('has-transition-' + val);
});
(0, _jquery2.default)(['left', 'right', 'top', 'bottom']).each(function (index, val){
_this2.contentClasses.base.push('has-position-' + val);
_this2.contentClasses.reveal.push('has-reveal-' + val);
});
Triggers.init(_jquery2.default);
MediaQuery._init();
this._init();
this._events();
Keyboard.register('OffCanvas', {
'ESCAPE': 'close'
});
}
}, {
key: "_init",
value: function _init(){
var id=this.$element.attr('id');
this.$element.attr('aria-hidden', 'true');
if(this.options.contentId){
this.$content=(0, _jquery2.default)('#' + this.options.contentId);
}else if(this.$element.siblings('[data-off-canvas-content]').length){
this.$content=this.$element.siblings('[data-off-canvas-content]').first();
}else{
this.$content=this.$element.closest('[data-off-canvas-content]').first();
}
if(!this.options.contentId){
this.nested=this.$element.siblings('[data-off-canvas-content]').length===0;
}else if(this.options.contentId&&this.options.nested===null){
console.warn('Remember to use the nested option if using the content ID option!');
}
if(this.nested===true){
this.options.transition='overlap';
this.$element.removeClass('is-transition-push');
}
this.$element.addClass("is-transition-".concat(this.options.transition, " is-closed"));
this.$triggers=(0, _jquery2.default)(document).find('[data-open="' + id + '"], [data-close="' + id + '"], [data-toggle="' + id + '"]').attr('aria-expanded', 'false').attr('aria-controls', id);
this.position=this.$element.is('.position-left, .position-top, .position-right, .position-bottom') ? this.$element.attr('class').match(/position\-(left|top|right|bottom)/)[1]:this.position;
if(this.options.contentOverlay===true){
var overlay=document.createElement('div');
var overlayPosition=(0, _jquery2.default)(this.$element).css("position")==='fixed' ? 'is-overlay-fixed':'is-overlay-absolute';
overlay.setAttribute('class', 'js-off-canvas-overlay ' + overlayPosition);
this.$overlay=(0, _jquery2.default)(overlay);
if(overlayPosition==='is-overlay-fixed'){
(0, _jquery2.default)(this.$overlay).insertAfter(this.$element);
}else{
this.$content.append(this.$overlay);
}}
var revealOnRegExp=new RegExp(RegExpEscape(this.options.revealClass) + '([^\\s]+)', 'g');
var revealOnClass=revealOnRegExp.exec(this.$element[0].className);
if(revealOnClass){
this.options.isRevealed=true;
this.options.revealOn=this.options.revealOn||revealOnClass[1];
}
if(this.options.isRevealed===true&&this.options.revealOn){
this.$element.first().addClass("".concat(this.options.revealClass).concat(this.options.revealOn));
this._setMQChecker();
}
if(this.options.transitionTime){
this.$element.css('transition-duration', this.options.transitionTime);
}
this._removeContentClasses();
}
}, {
key: "_events",
value: function _events(){
this.$element.off('.zf.trigger .zf.offcanvas').on({
'open.zf.trigger': this.open.bind(this),
'close.zf.trigger': this.close.bind(this),
'toggle.zf.trigger': this.toggle.bind(this),
'keydown.zf.offcanvas': this._handleKeyboard.bind(this)
});
if(this.options.closeOnClick===true){
var $target=this.options.contentOverlay ? this.$overlay:this.$content;
$target.on({
'click.zf.offcanvas': this.close.bind(this)
});
}}
}, {
key: "_setMQChecker",
value: function _setMQChecker(){
var _this=this;
this.onLoadListener=onLoad((0, _jquery2.default)(window), function (){
if(MediaQuery.atLeast(_this.options.revealOn)){
_this.reveal(true);
}});
(0, _jquery2.default)(window).on('changed.zf.mediaquery', function (){
if(MediaQuery.atLeast(_this.options.revealOn)){
_this.reveal(true);
}else{
_this.reveal(false);
}});
}
}, {
key: "_removeContentClasses",
value: function _removeContentClasses(hasReveal){
if(typeof hasReveal!=='boolean'){
this.$content.removeClass(this.contentClasses.base.join(' '));
}else if(hasReveal===false){
this.$content.removeClass("has-reveal-".concat(this.position));
}}
}, {
key: "_addContentClasses",
value: function _addContentClasses(hasReveal){
this._removeContentClasses(hasReveal);
if(typeof hasReveal!=='boolean'){
this.$content.addClass("has-transition-".concat(this.options.transition, " has-position-").concat(this.position));
}else if(hasReveal===true){
this.$content.addClass("has-reveal-".concat(this.position));
}}
}, {
key: "reveal",
value: function reveal(isRevealed){
if(isRevealed){
this.close();
this.isRevealed=true;
this.$element.attr('aria-hidden', 'false');
this.$element.off('open.zf.trigger toggle.zf.trigger');
this.$element.removeClass('is-closed');
}else{
this.isRevealed=false;
this.$element.attr('aria-hidden', 'true');
this.$element.off('open.zf.trigger toggle.zf.trigger').on({
'open.zf.trigger': this.open.bind(this),
'toggle.zf.trigger': this.toggle.bind(this)
});
this.$element.addClass('is-closed');
}
this._addContentClasses(isRevealed);
}
}, {
key: "_stopScrolling",
value: function _stopScrolling(event){
return false;
} // Taken and adapted from http://stackoverflow.com/questions/16889447/prevent-full-page-scrolling-ios
}, {
key: "_recordScrollable",
value: function _recordScrollable(event){
var elem=this;
if(elem.scrollHeight!==elem.clientHeight){
if(elem.scrollTop===0){
elem.scrollTop=1;
}
if(elem.scrollTop===elem.scrollHeight - elem.clientHeight){
elem.scrollTop=elem.scrollHeight - elem.clientHeight - 1;
}}
elem.allowUp=elem.scrollTop > 0;
elem.allowDown=elem.scrollTop < elem.scrollHeight - elem.clientHeight;
elem.lastY=event.originalEvent.pageY;
}}, {
key: "_stopScrollPropagation",
value: function _stopScrollPropagation(event){
var elem=this;
var up=event.pageY < elem.lastY;
var down = !up;
elem.lastY=event.pageY;
if(up&&elem.allowUp||down&&elem.allowDown){
event.stopPropagation();
}else{
event.preventDefault();
}}
}, {
key: "open",
value: function open(event, trigger){
if(this.$element.hasClass('is-open')||this.isRevealed){
return;
}
var _this=this;
if(trigger){
this.$lastTrigger=trigger;
}
if(this.options.forceTo==='top'){
window.scrollTo(0, 0);
}else if(this.options.forceTo==='bottom'){
window.scrollTo(0, document.body.scrollHeight);
}
if(this.options.transitionTime&&this.options.transition!=='overlap'){
this.$element.siblings('[data-off-canvas-content]').css('transition-duration', this.options.transitionTime);
}else{
this.$element.siblings('[data-off-canvas-content]').css('transition-duration', '');
}
this.$element.addClass('is-open').removeClass('is-closed');
this.$triggers.attr('aria-expanded', 'true');
this.$element.attr('aria-hidden', 'false');
this.$content.addClass('is-open-' + this.position);
if(this.options.contentScroll===false){
(0, _jquery2.default)('body').addClass('is-off-canvas-open').on('touchmove', this._stopScrolling);
this.$element.on('touchstart', this._recordScrollable);
this.$element.on('touchmove', this._stopScrollPropagation);
}
if(this.options.contentOverlay===true){
this.$overlay.addClass('is-visible');
}
if(this.options.closeOnClick===true&&this.options.contentOverlay===true){
this.$overlay.addClass('is-closable');
}
if(this.options.autoFocus===true){
this.$element.one(transitionend(this.$element), function (){
if(!_this.$element.hasClass('is-open')){
return;
}
var canvasFocus=_this.$element.find('[data-autofocus]');
if(canvasFocus.length){
canvasFocus.eq(0).focus();
}else{
_this.$element.find('a, button').eq(0).focus();
}});
}
if(this.options.trapFocus===true){
this.$content.attr('tabindex', '-1');
Keyboard.trapFocus(this.$element);
}
this._addContentClasses();
this.$element.trigger('opened.zf.offcanvas');
}
}, {
key: "close",
value: function close(cb){
if(!this.$element.hasClass('is-open')||this.isRevealed){
return;
}
var _this=this;
this.$element.removeClass('is-open');
this.$element.attr('aria-hidden', 'true')
.trigger('closed.zf.offcanvas');
this.$content.removeClass('is-open-left is-open-top is-open-right is-open-bottom');
if(this.options.contentScroll===false){
(0, _jquery2.default)('body').removeClass('is-off-canvas-open').off('touchmove', this._stopScrolling);
this.$element.off('touchstart', this._recordScrollable);
this.$element.off('touchmove', this._stopScrollPropagation);
}
if(this.options.contentOverlay===true){
this.$overlay.removeClass('is-visible');
}
if(this.options.closeOnClick===true&&this.options.contentOverlay===true){
this.$overlay.removeClass('is-closable');
}
this.$triggers.attr('aria-expanded', 'false');
if(this.options.trapFocus===true){
this.$content.removeAttr('tabindex');
Keyboard.releaseFocus(this.$element);
}
this.$element.one(transitionend(this.$element), function (e){
_this.$element.addClass('is-closed');
_this._removeContentClasses();
});
}
}, {
key: "toggle",
value: function toggle(event, trigger){
if(this.$element.hasClass('is-open')){
this.close(event, trigger);
}else{
this.open(event, trigger);
}}
}, {
key: "_handleKeyboard",
value: function _handleKeyboard(e){
var _this3=this;
Keyboard.handleKey(e, 'OffCanvas', {
close: function close(){
_this3.close();
_this3.$lastTrigger.focus();
return true;
},
handled: function handled(){
e.stopPropagation();
e.preventDefault();
}});
}
}, {
key: "_destroy",
value: function _destroy(){
this.close();
this.$element.off('.zf.trigger .zf.offcanvas');
this.$overlay.off('.zf.offcanvas');
if(this.onLoadListener) (0, _jquery2.default)(window).off(this.onLoadListener);
}}]);
return OffCanvas;
}(Plugin);
OffCanvas.defaults={
closeOnClick: true,
contentOverlay: true,
contentId: null,
nested: null,
contentScroll: true,
transitionTime: null,
transition: 'push',
forceTo: null,
isRevealed: false,
revealOn: null,
autoFocus: true,
revealClass: 'reveal-for-',
trapFocus: false
};
var Orbit =
function (_Plugin){
_inherits(Orbit, _Plugin);
function Orbit(){
_classCallCheck(this, Orbit);
return _possibleConstructorReturn(this, _getPrototypeOf(Orbit).apply(this, arguments));
}
_createClass(Orbit, [{
key: "_setup",
value: function _setup(element, options){
this.$element=element;
this.options=_jquery2.default.extend({}, Orbit.defaults, this.$element.data(), options);
this.className='Orbit';
Touch.init(_jquery2.default);
this._init();
Keyboard.register('Orbit', {
'ltr': {
'ARROW_RIGHT': 'next',
'ARROW_LEFT': 'previous'
},
'rtl': {
'ARROW_LEFT': 'next',
'ARROW_RIGHT': 'previous'
}});
}
}, {
key: "_init",
value: function _init(){
this._reset();
this.$wrapper=this.$element.find(".".concat(this.options.containerClass));
this.$slides=this.$element.find(".".concat(this.options.slideClass));
var $images=this.$element.find('img'),
initActive=this.$slides.filter('.is-active'),
id=this.$element[0].id||GetYoDigits(6, 'orbit');
this.$element.attr({
'data-resize': id,
'id': id
});
if(!initActive.length){
this.$slides.eq(0).addClass('is-active');
}
if(!this.options.useMUI){
this.$slides.addClass('no-motionui');
}
if($images.length){
onImagesLoaded($images, this._prepareForOrbit.bind(this));
}else{
this._prepareForOrbit();
}
if(this.options.bullets){
this._loadBullets();
}
this._events();
if(this.options.autoPlay&&this.$slides.length > 1){
this.geoSync();
}
if(this.options.accessible){
this.$wrapper.attr('tabindex', 0);
}}
}, {
key: "_loadBullets",
value: function _loadBullets(){
this.$bullets=this.$element.find(".".concat(this.options.boxOfBullets)).find('button');
}
}, {
key: "geoSync",
value: function geoSync(){
var _this=this;
this.timer=new Timer(this.$element, {
duration: this.options.timerDelay,
infinite: false
}, function (){
_this.changeSlide(true);
});
this.timer.start();
}
}, {
key: "_prepareForOrbit",
value: function _prepareForOrbit(){
this._setWrapperHeight();
}
}, {
key: "_setWrapperHeight",
value: function _setWrapperHeight(cb){
var max=0,
temp,
counter=0,
_this=this;
this.$slides.each(function (){
temp=this.getBoundingClientRect().height;
(0, _jquery2.default)(this).attr('data-slide', counter);
if(!/mui/g.test((0, _jquery2.default)(this)[0].className)&&_this.$slides.filter('.is-active')[0]!==_this.$slides.eq(counter)[0]){
(0, _jquery2.default)(this).css({
'display': 'none'
});
}
max=temp > max ? temp:max;
counter++;
});
if(counter===this.$slides.length){
this.$wrapper.css({
'height': max
});
if(cb){
cb(max);
}}
}
}, {
key: "_setSlideHeight",
value: function _setSlideHeight(height){
this.$slides.each(function (){
(0, _jquery2.default)(this).css('max-height', height);
});
}
}, {
key: "_events",
value: function _events(){
var _this=this;
this.$element.off('.resizeme.zf.trigger').on({
'resizeme.zf.trigger': this._prepareForOrbit.bind(this)
});
if(this.$slides.length > 1){
if(this.options.swipe){
this.$slides.off('swipeleft.zf.orbit swiperight.zf.orbit').on('swipeleft.zf.orbit', function (e){
e.preventDefault();
_this.changeSlide(true);
}).on('swiperight.zf.orbit', function (e){
e.preventDefault();
_this.changeSlide(false);
});
}
if(this.options.autoPlay){
this.$slides.on('click.zf.orbit', function (){
_this.$element.data('clickedOn', _this.$element.data('clickedOn') ? false:true);
_this.timer[_this.$element.data('clickedOn') ? 'pause':'start']();
});
if(this.options.pauseOnHover){
this.$element.on('mouseenter.zf.orbit', function (){
_this.timer.pause();
}).on('mouseleave.zf.orbit', function (){
if(!_this.$element.data('clickedOn')){
_this.timer.start();
}});
}}
if(this.options.navButtons){
var $controls=this.$element.find(".".concat(this.options.nextClass, ", .").concat(this.options.prevClass));
$controls.attr('tabindex', 0)
.on('click.zf.orbit touchend.zf.orbit', function (e){
e.preventDefault();
_this.changeSlide((0, _jquery2.default)(this).hasClass(_this.options.nextClass));
});
}
if(this.options.bullets){
this.$bullets.on('click.zf.orbit touchend.zf.orbit', function (){
if(/is-active/g.test(this.className)){
return false;
}
var idx=(0, _jquery2.default)(this).data('slide'),
ltr=idx > _this.$slides.filter('.is-active').data('slide'),
$slide=_this.$slides.eq(idx);
_this.changeSlide(ltr, $slide, idx);
});
}
if(this.options.accessible){
this.$wrapper.add(this.$bullets).on('keydown.zf.orbit', function (e){
Keyboard.handleKey(e, 'Orbit', {
next: function next(){
_this.changeSlide(true);
},
previous: function previous(){
_this.changeSlide(false);
},
handled: function handled(){
if((0, _jquery2.default)(e.target).is(_this.$bullets)){
_this.$bullets.filter('.is-active').focus();
}}
});
});
}}
}
}, {
key: "_reset",
value: function _reset(){
if(typeof this.$slides=='undefined'){
return;
}
if(this.$slides.length > 1){
this.$element.off('.zf.orbit').find('*').off('.zf.orbit');
if(this.options.autoPlay){
this.timer.restart();
}
this.$slides.each(function (el){
(0, _jquery2.default)(el).removeClass('is-active is-active is-in').removeAttr('aria-live').hide();
});
this.$slides.first().addClass('is-active').show();
this.$element.trigger('slidechange.zf.orbit', [this.$slides.first()]);
if(this.options.bullets){
this._updateBullets(0);
}}
}
}, {
key: "changeSlide",
value: function changeSlide(isLTR, chosenSlide, idx){
if(!this.$slides){
return;
}
var $curSlide=this.$slides.filter('.is-active').eq(0);
if(/mui/g.test($curSlide[0].className)){
return false;
}
var $firstSlide=this.$slides.first(),
$lastSlide=this.$slides.last(),
dirIn=isLTR ? 'Right':'Left',
dirOut=isLTR ? 'Left':'Right',
_this=this,
$newSlide;
if(!chosenSlide){
$newSlide=isLTR ?
this.options.infiniteWrap ? $curSlide.next(".".concat(this.options.slideClass)).length ? $curSlide.next(".".concat(this.options.slideClass)):$firstSlide:$curSlide.next(".".concat(this.options.slideClass)) :
this.options.infiniteWrap ? $curSlide.prev(".".concat(this.options.slideClass)).length ? $curSlide.prev(".".concat(this.options.slideClass)):$lastSlide:$curSlide.prev(".".concat(this.options.slideClass));
}else{
$newSlide=chosenSlide;
}
if($newSlide.length){
this.$element.trigger('beforeslidechange.zf.orbit', [$curSlide, $newSlide]);
if(this.options.bullets){
idx=idx||this.$slides.index($newSlide);
this._updateBullets(idx);
}
if(this.options.useMUI&&!this.$element.is(':hidden')){
Motion.animateIn($newSlide.addClass('is-active'), this.options["animInFrom".concat(dirIn)], function (){
$newSlide.css({
'display': 'block'
}).attr('aria-live', 'polite');
});
Motion.animateOut($curSlide.removeClass('is-active'), this.options["animOutTo".concat(dirOut)], function (){
$curSlide.removeAttr('aria-live');
if(_this.options.autoPlay&&!_this.timer.isPaused){
_this.timer.restart();
}});
}else{
$curSlide.removeClass('is-active is-in').removeAttr('aria-live').hide();
$newSlide.addClass('is-active is-in').attr('aria-live', 'polite').show();
if(this.options.autoPlay&&!this.timer.isPaused){
this.timer.restart();
}}
this.$element.trigger('slidechange.zf.orbit', [$newSlide]);
}}
}, {
key: "_updateBullets",
value: function _updateBullets(idx){
var $oldBullet=this.$element.find(".".concat(this.options.boxOfBullets)).find('.is-active').removeClass('is-active').blur(),
span=$oldBullet.find('span:last').detach(),
$newBullet=this.$bullets.eq(idx).addClass('is-active').append(span);
}
}, {
key: "_destroy",
value: function _destroy(){
this.$element.off('.zf.orbit').find('*').off('.zf.orbit').end().hide();
}}]);
return Orbit;
}(Plugin);
Orbit.defaults={
bullets: true,
navButtons: true,
animInFromRight: 'slide-in-right',
animOutToRight: 'slide-out-right',
animInFromLeft: 'slide-in-left',
animOutToLeft: 'slide-out-left',
autoPlay: true,
timerDelay: 5000,
infiniteWrap: true,
swipe: true,
pauseOnHover: true,
accessible: true,
containerClass: 'orbit-container',
slideClass: 'orbit-slide',
boxOfBullets: 'orbit-bullets',
nextClass: 'orbit-next',
prevClass: 'orbit-previous',
useMUI: true
};
var MenuPlugins={
dropdown: {
cssClass: 'dropdown',
plugin: DropdownMenu
},
drilldown: {
cssClass: 'drilldown',
plugin: Drilldown
},
accordion: {
cssClass: 'accordion-menu',
plugin: AccordionMenu
}};
var ResponsiveMenu =
function (_Plugin){
_inherits(ResponsiveMenu, _Plugin);
function ResponsiveMenu(){
_classCallCheck(this, ResponsiveMenu);
return _possibleConstructorReturn(this, _getPrototypeOf(ResponsiveMenu).apply(this, arguments));
}
_createClass(ResponsiveMenu, [{
key: "_setup",
value: function _setup(element, options){
this.$element=(0, _jquery2.default)(element);
this.rules=this.$element.data('responsive-menu');
this.currentMq=null;
this.currentPlugin=null;
this.className='ResponsiveMenu';
this._init();
this._events();
}
}, {
key: "_init",
value: function _init(){
MediaQuery._init();
if(typeof this.rules==='string'){
var rulesTree={};
var rules=this.rules.split(' ');
for (var i=0; i < rules.length; i++){
var rule=rules[i].split('-');
var ruleSize=rule.length > 1 ? rule[0]:'small';
var rulePlugin=rule.length > 1 ? rule[1]:rule[0];
if(MenuPlugins[rulePlugin]!==null){
rulesTree[ruleSize]=MenuPlugins[rulePlugin];
}}
this.rules=rulesTree;
}
if(!_jquery2.default.isEmptyObject(this.rules)){
this._checkMediaQueries();
}
this.$element.attr('data-mutate', this.$element.attr('data-mutate')||GetYoDigits(6, 'responsive-menu'));
}
}, {
key: "_events",
value: function _events(){
var _this=this;
(0, _jquery2.default)(window).on('changed.zf.mediaquery', function (){
_this._checkMediaQueries();
});
}
}, {
key: "_checkMediaQueries",
value: function _checkMediaQueries(){
var matchedMq,
_this=this;
_jquery2.default.each(this.rules, function (key){
if(MediaQuery.atLeast(key)){
matchedMq=key;
}});
if(!matchedMq) return;
if(this.currentPlugin instanceof this.rules[matchedMq].plugin) return;
_jquery2.default.each(MenuPlugins, function (key, value){
_this.$element.removeClass(value.cssClass);
});
this.$element.addClass(this.rules[matchedMq].cssClass);
if(this.currentPlugin) this.currentPlugin.destroy();
this.currentPlugin=new this.rules[matchedMq].plugin(this.$element, {});
}
}, {
key: "_destroy",
value: function _destroy(){
this.currentPlugin.destroy();
(0, _jquery2.default)(window).off('.zf.ResponsiveMenu');
}}]);
return ResponsiveMenu;
}(Plugin);
ResponsiveMenu.defaults={};
var ResponsiveToggle =
function (_Plugin){
_inherits(ResponsiveToggle, _Plugin);
function ResponsiveToggle(){
_classCallCheck(this, ResponsiveToggle);
return _possibleConstructorReturn(this, _getPrototypeOf(ResponsiveToggle).apply(this, arguments));
}
_createClass(ResponsiveToggle, [{
key: "_setup",
value: function _setup(element, options){
this.$element=(0, _jquery2.default)(element);
this.options=_jquery2.default.extend({}, ResponsiveToggle.defaults, this.$element.data(), options);
this.className='ResponsiveToggle';
this._init();
this._events();
}
}, {
key: "_init",
value: function _init(){
MediaQuery._init();
var targetID=this.$element.data('responsive-toggle');
if(!targetID){
console.error('Your tab bar needs an ID of a Menu as the value of data-tab-bar.');
}
this.$targetMenu=(0, _jquery2.default)("#".concat(targetID));
this.$toggler=this.$element.find('[data-toggle]').filter(function (){
var target=(0, _jquery2.default)(this).data('toggle');
return target===targetID||target==="";
});
this.options=_jquery2.default.extend({}, this.options, this.$targetMenu.data());
if(this.options.animate){
var input=this.options.animate.split(' ');
this.animationIn=input[0];
this.animationOut=input[1]||null;
}
this._update();
}
}, {
key: "_events",
value: function _events(){
this._updateMqHandler=this._update.bind(this);
(0, _jquery2.default)(window).on('changed.zf.mediaquery', this._updateMqHandler);
this.$toggler.on('click.zf.responsiveToggle', this.toggleMenu.bind(this));
}
}, {
key: "_update",
value: function _update(){
if(!MediaQuery.atLeast(this.options.hideFor)){
this.$element.show();
this.$targetMenu.hide();
}else{
this.$element.hide();
this.$targetMenu.show();
}}
}, {
key: "toggleMenu",
value: function toggleMenu(){
var _this2=this;
if(!MediaQuery.atLeast(this.options.hideFor)){
if(this.options.animate){
if(this.$targetMenu.is(':hidden')){
Motion.animateIn(this.$targetMenu, this.animationIn, function (){
_this2.$element.trigger('toggled.zf.responsiveToggle');
_this2.$targetMenu.find('[data-mutate]').triggerHandler('mutateme.zf.trigger');
});
}else{
Motion.animateOut(this.$targetMenu, this.animationOut, function (){
_this2.$element.trigger('toggled.zf.responsiveToggle');
});
}}else{
this.$targetMenu.toggle(0);
this.$targetMenu.find('[data-mutate]').trigger('mutateme.zf.trigger');
this.$element.trigger('toggled.zf.responsiveToggle');
}}
}}, {
key: "_destroy",
value: function _destroy(){
this.$element.off('.zf.responsiveToggle');
this.$toggler.off('.zf.responsiveToggle');
(0, _jquery2.default)(window).off('changed.zf.mediaquery', this._updateMqHandler);
}}]);
return ResponsiveToggle;
}(Plugin);
ResponsiveToggle.defaults={
hideFor: 'medium',
animate: false
};
var Reveal =
function (_Plugin){
_inherits(Reveal, _Plugin);
function Reveal(){
_classCallCheck(this, Reveal);
return _possibleConstructorReturn(this, _getPrototypeOf(Reveal).apply(this, arguments));
}
_createClass(Reveal, [{
key: "_setup",
value: function _setup(element, options){
this.$element=element;
this.options=_jquery2.default.extend({}, Reveal.defaults, this.$element.data(), options);
this.className='Reveal';
this._init();
Triggers.init(_jquery2.default);
Keyboard.register('Reveal', {
'ESCAPE': 'close'
});
}
}, {
key: "_init",
value: function _init(){
var _this2=this;
MediaQuery._init();
this.id=this.$element.attr('id');
this.isActive=false;
this.cached={
mq: MediaQuery.current
};
this.$anchor=(0, _jquery2.default)("[data-open=\"".concat(this.id, "\"]")).length ? (0, _jquery2.default)("[data-open=\"".concat(this.id, "\"]")):(0, _jquery2.default)("[data-toggle=\"".concat(this.id, "\"]"));
this.$anchor.attr({
'aria-controls': this.id,
'aria-haspopup': true,
'tabindex': 0
});
if(this.options.fullScreen||this.$element.hasClass('full')){
this.options.fullScreen=true;
this.options.overlay=false;
}
if(this.options.overlay&&!this.$overlay){
this.$overlay=this._makeOverlay(this.id);
}
this.$element.attr({
'role': 'dialog',
'aria-hidden': true,
'data-yeti-box': this.id,
'data-resize': this.id
});
if(this.$overlay){
this.$element.detach().appendTo(this.$overlay);
}else{
this.$element.detach().appendTo((0, _jquery2.default)(this.options.appendTo));
this.$element.addClass('without-overlay');
}
this._events();
if(this.options.deepLink&&window.location.hash==="#".concat(this.id)){
this.onLoadListener=onLoad((0, _jquery2.default)(window), function (){
return _this2.open();
});
}}
}, {
key: "_makeOverlay",
value: function _makeOverlay(){
var additionalOverlayClasses='';
if(this.options.additionalOverlayClasses){
additionalOverlayClasses=' ' + this.options.additionalOverlayClasses;
}
return (0, _jquery2.default)('<div></div>').addClass('reveal-overlay' + additionalOverlayClasses).appendTo(this.options.appendTo);
}
}, {
key: "_updatePosition",
value: function _updatePosition(){
var width=this.$element.outerWidth();
var outerWidth=(0, _jquery2.default)(window).width();
var height=this.$element.outerHeight();
var outerHeight=(0, _jquery2.default)(window).height();
var left,
top=null;
if(this.options.hOffset==='auto'){
left=parseInt((outerWidth - width) / 2, 10);
}else{
left=parseInt(this.options.hOffset, 10);
}
if(this.options.vOffset==='auto'){
if(height > outerHeight){
top=parseInt(Math.min(100, outerHeight / 10), 10);
}else{
top=parseInt((outerHeight - height) / 4, 10);
}}else if(this.options.vOffset!==null){
top=parseInt(this.options.vOffset, 10);
}
if(top!==null){
this.$element.css({
top: top + 'px'
});
}
if(!this.$overlay||this.options.hOffset!=='auto'){
this.$element.css({
left: left + 'px'
});
this.$element.css({
margin: '0px'
});
}}
}, {
key: "_events",
value: function _events(){
var _this3=this;
var _this=this;
this.$element.on({
'open.zf.trigger': this.open.bind(this),
'close.zf.trigger': function closeZfTrigger(event, $element){
if(event.target===_this.$element[0]||(0, _jquery2.default)(event.target).parents('[data-closable]')[0]===$element){
return _this3.close.apply(_this3);
}},
'toggle.zf.trigger': this.toggle.bind(this),
'resizeme.zf.trigger': function resizemeZfTrigger(){
_this._updatePosition();
}});
if(this.options.closeOnClick&&this.options.overlay){
this.$overlay.off('.zf.reveal').on('click.zf.reveal', function (e){
if(e.target===_this.$element[0]||_jquery2.default.contains(_this.$element[0], e.target)||!_jquery2.default.contains(document, e.target)){
return;
}
_this.close();
});
}
if(this.options.deepLink){
(0, _jquery2.default)(window).on("hashchange.zf.reveal:".concat(this.id), this._handleState.bind(this));
}}
}, {
key: "_handleState",
value: function _handleState(e){
if(window.location.hash==='#' + this.id&&!this.isActive){
this.open();
}else{
this.close();
}}
}, {
key: "_disableScroll",
value: function _disableScroll(scrollTop){
scrollTop=scrollTop||(0, _jquery2.default)(window).scrollTop();
if((0, _jquery2.default)(document).height() > (0, _jquery2.default)(window).height()){
(0, _jquery2.default)("html").css("top", -scrollTop);
}}
}, {
key: "_enableScroll",
value: function _enableScroll(scrollTop){
scrollTop=scrollTop||parseInt((0, _jquery2.default)("html").css("top"));
if((0, _jquery2.default)(document).height() > (0, _jquery2.default)(window).height()){
(0, _jquery2.default)("html").css("top", "");
(0, _jquery2.default)(window).scrollTop(-scrollTop);
}}
}, {
key: "open",
value: function open(){
var _this4=this;
var hash="#".concat(this.id);
if(this.options.deepLink&&window.location.hash!==hash){
if(window.history.pushState){
if(this.options.updateHistory){
window.history.pushState({}, '', hash);
}else{
window.history.replaceState({}, '', hash);
}}else{
window.location.hash=hash;
}}
this.$activeAnchor=(0, _jquery2.default)(document.activeElement).is(this.$anchor) ? (0, _jquery2.default)(document.activeElement):this.$anchor;
this.isActive=true;
this.$element.css({
'visibility': 'hidden'
}).show().scrollTop(0);
if(this.options.overlay){
this.$overlay.css({
'visibility': 'hidden'
}).show();
}
this._updatePosition();
this.$element.hide().css({
'visibility': ''
});
if(this.$overlay){
this.$overlay.css({
'visibility': ''
}).hide();
if(this.$element.hasClass('fast')){
this.$overlay.addClass('fast');
}else if(this.$element.hasClass('slow')){
this.$overlay.addClass('slow');
}}
if(!this.options.multipleOpened){
this.$element.trigger('closeme.zf.reveal', this.id);
}
this._disableScroll();
var _this=this;
if(this.options.animationIn){
var afterAnimation=function afterAnimation(){
_this.$element.attr({
'aria-hidden': false,
'tabindex': -1
}).focus();
_this._addGlobalClasses();
Keyboard.trapFocus(_this.$element);
};
if(this.options.overlay){
Motion.animateIn(this.$overlay, 'fade-in');
}
Motion.animateIn(this.$element, this.options.animationIn, function (){
if(_this4.$element){
_this4.focusableElements=Keyboard.findFocusable(_this4.$element);
afterAnimation();
}});
}else{
if(this.options.overlay){
this.$overlay.show(0);
}
this.$element.show(this.options.showDelay);
}
this.$element.attr({
'aria-hidden': false,
'tabindex': -1
}).focus();
Keyboard.trapFocus(this.$element);
this._addGlobalClasses();
this._addGlobalListeners();
this.$element.trigger('open.zf.reveal');
}
}, {
key: "_addGlobalClasses",
value: function _addGlobalClasses(){
var updateScrollbarClass=function updateScrollbarClass(){
(0, _jquery2.default)('html').toggleClass('zf-has-scroll', !!((0, _jquery2.default)(document).height() > (0, _jquery2.default)(window).height()));
};
this.$element.on('resizeme.zf.trigger.revealScrollbarListener', function (){
return updateScrollbarClass();
});
updateScrollbarClass();
(0, _jquery2.default)('html').addClass('is-reveal-open');
}
}, {
key: "_removeGlobalClasses",
value: function _removeGlobalClasses(){
this.$element.off('resizeme.zf.trigger.revealScrollbarListener');
(0, _jquery2.default)('html').removeClass('is-reveal-open');
(0, _jquery2.default)('html').removeClass('zf-has-scroll');
}
}, {
key: "_addGlobalListeners",
value: function _addGlobalListeners(){
var _this=this;
if(!this.$element){
return;
}
this.focusableElements=Keyboard.findFocusable(this.$element);
if(!this.options.overlay&&this.options.closeOnClick&&!this.options.fullScreen){
(0, _jquery2.default)('body').on('click.zf.reveal', function (e){
if(e.target===_this.$element[0]||_jquery2.default.contains(_this.$element[0], e.target)||!_jquery2.default.contains(document, e.target)){
return;
}
_this.close();
});
}
if(this.options.closeOnEsc){
(0, _jquery2.default)(window).on('keydown.zf.reveal', function (e){
Keyboard.handleKey(e, 'Reveal', {
close: function close(){
if(_this.options.closeOnEsc){
_this.close();
}}
});
});
}}
}, {
key: "close",
value: function close(){
if(!this.isActive||!this.$element.is(':visible')){
return false;
}
var _this=this;
if(this.options.animationOut){
if(this.options.overlay){
Motion.animateOut(this.$overlay, 'fade-out');
}
Motion.animateOut(this.$element, this.options.animationOut, finishUp);
}else{
this.$element.hide(this.options.hideDelay);
if(this.options.overlay){
this.$overlay.hide(0, finishUp);
}else{
finishUp();
}}
if(this.options.closeOnEsc){
(0, _jquery2.default)(window).off('keydown.zf.reveal');
}
if(!this.options.overlay&&this.options.closeOnClick){
(0, _jquery2.default)('body').off('click.zf.reveal');
}
this.$element.off('keydown.zf.reveal');
function finishUp(){
var scrollTop=parseInt((0, _jquery2.default)("html").css("top"));
if((0, _jquery2.default)('.reveal:visible').length===0){
_this._removeGlobalClasses();
}
Keyboard.releaseFocus(_this.$element);
_this.$element.attr('aria-hidden', true);
_this._enableScroll(scrollTop);
_this.$element.trigger('closed.zf.reveal');
}
if(this.options.resetOnClose){
this.$element.html(this.$element.html());
}
this.isActive=false;
if(_this.options.deepLink&&window.location.hash==="#".concat(this.id)){
if(window.history.replaceState){
var urlWithoutHash=window.location.pathname + window.location.search;
if(this.options.updateHistory){
window.history.pushState({}, '', urlWithoutHash);
}else{
window.history.replaceState('', document.title, urlWithoutHash);
}}else{
window.location.hash='';
}}
this.$activeAnchor.focus();
}
}, {
key: "toggle",
value: function toggle(){
if(this.isActive){
this.close();
}else{
this.open();
}}
}, {
key: "_destroy",
value: function _destroy(){
if(this.options.overlay){
this.$element.appendTo((0, _jquery2.default)(this.options.appendTo));
this.$overlay.hide().off().remove();
}
this.$element.hide().off();
this.$anchor.off('.zf');
(0, _jquery2.default)(window).off(".zf.reveal:".concat(this.id));
if(this.onLoadListener) (0, _jquery2.default)(window).off(this.onLoadListener);
if((0, _jquery2.default)('.reveal:visible').length===0){
this._removeGlobalClasses();
}}
}]);
return Reveal;
}(Plugin);
Reveal.defaults={
animationIn: '',
animationOut: '',
showDelay: 0,
hideDelay: 0,
closeOnClick: true,
closeOnEsc: true,
multipleOpened: false,
vOffset: 'auto',
hOffset: 'auto',
fullScreen: false,
overlay: true,
resetOnClose: false,
deepLink: false,
updateHistory: false,
appendTo: "body",
additionalOverlayClasses: ''
};
var Slider =
function (_Plugin){
_inherits(Slider, _Plugin);
function Slider(){
_classCallCheck(this, Slider);
return _possibleConstructorReturn(this, _getPrototypeOf(Slider).apply(this, arguments));
}
_createClass(Slider, [{
key: "_setup",
value: function _setup(element, options){
this.$element=element;
this.options=_jquery2.default.extend({}, Slider.defaults, this.$element.data(), options);
this.className='Slider';
Touch.init(_jquery2.default);
Triggers.init(_jquery2.default);
this._init();
Keyboard.register('Slider', {
'ltr': {
'ARROW_RIGHT': 'increase',
'ARROW_UP': 'increase',
'ARROW_DOWN': 'decrease',
'ARROW_LEFT': 'decrease',
'SHIFT_ARROW_RIGHT': 'increase_fast',
'SHIFT_ARROW_UP': 'increase_fast',
'SHIFT_ARROW_DOWN': 'decrease_fast',
'SHIFT_ARROW_LEFT': 'decrease_fast',
'HOME': 'min',
'END': 'max'
},
'rtl': {
'ARROW_LEFT': 'increase',
'ARROW_RIGHT': 'decrease',
'SHIFT_ARROW_LEFT': 'increase_fast',
'SHIFT_ARROW_RIGHT': 'decrease_fast'
}});
}
}, {
key: "_init",
value: function _init(){
this.inputs=this.$element.find('input');
this.handles=this.$element.find('[data-slider-handle]');
this.$handle=this.handles.eq(0);
this.$input=this.inputs.length ? this.inputs.eq(0):(0, _jquery2.default)("#".concat(this.$handle.attr('aria-controls')));
this.$fill=this.$element.find('[data-slider-fill]').css(this.options.vertical ? 'height':'width', 0);
if(this.options.disabled||this.$element.hasClass(this.options.disabledClass)){
this.options.disabled=true;
this.$element.addClass(this.options.disabledClass);
}
if(!this.inputs.length){
this.inputs=(0, _jquery2.default)().add(this.$input);
this.options.binding=true;
}
this._setInitAttr(0);
if(this.handles[1]){
this.options.doubleSided=true;
this.$handle2=this.handles.eq(1);
this.$input2=this.inputs.length > 1 ? this.inputs.eq(1):(0, _jquery2.default)("#".concat(this.$handle2.attr('aria-controls')));
if(!this.inputs[1]){
this.inputs=this.inputs.add(this.$input2);
}
this._setInitAttr(1);
}
this.setHandles();
this._events();
}}, {
key: "setHandles",
value: function setHandles(){
var _this2=this;
if(this.handles[1]){
this._setHandlePos(this.$handle, this.inputs.eq(0).val(), true, function (){
_this2._setHandlePos(_this2.$handle2, _this2.inputs.eq(1).val(), true);
});
}else{
this._setHandlePos(this.$handle, this.inputs.eq(0).val(), true);
}}
}, {
key: "_reflow",
value: function _reflow(){
this.setHandles();
}
}, {
key: "_pctOfBar",
value: function _pctOfBar(value){
var pctOfBar=percent(value - this.options.start, this.options.end - this.options.start);
switch (this.options.positionValueFunction){
case "pow":
pctOfBar=this._logTransform(pctOfBar);
break;
case "log":
pctOfBar=this._powTransform(pctOfBar);
break;
}
return pctOfBar.toFixed(2);
}
}, {
key: "_value",
value: function _value(pctOfBar){
switch (this.options.positionValueFunction){
case "pow":
pctOfBar=this._powTransform(pctOfBar);
break;
case "log":
pctOfBar=this._logTransform(pctOfBar);
break;
}
var value=(this.options.end - this.options.start) * pctOfBar + parseFloat(this.options.start);
return value;
}
}, {
key: "_logTransform",
value: function _logTransform(value){
return baseLog(this.options.nonLinearBase, value * (this.options.nonLinearBase - 1) + 1);
}
}, {
key: "_powTransform",
value: function _powTransform(value){
return (Math.pow(this.options.nonLinearBase, value) - 1) / (this.options.nonLinearBase - 1);
}
}, {
key: "_setHandlePos",
value: function _setHandlePos($hndl, location, noInvert, cb){
if(this.$element.hasClass(this.options.disabledClass)){
return;
}
location=parseFloat(location);
if(location < this.options.start){
location=this.options.start;
}else if(location > this.options.end){
location=this.options.end;
}
var isDbl=this.options.doubleSided;
if(this.options.vertical&&!noInvert){
location=this.options.end - location;
}
if(isDbl){
if(this.handles.index($hndl)===0){
var h2Val=parseFloat(this.$handle2.attr('aria-valuenow'));
location=location >=h2Val ? h2Val - this.options.step:location;
}else{
var h1Val=parseFloat(this.$handle.attr('aria-valuenow'));
location=location <=h1Val ? h1Val + this.options.step:location;
}}
var _this=this,
vert=this.options.vertical,
hOrW=vert ? 'height':'width',
lOrT=vert ? 'top':'left',
handleDim=$hndl[0].getBoundingClientRect()[hOrW],
elemDim=this.$element[0].getBoundingClientRect()[hOrW],
pctOfBar=this._pctOfBar(location),
pxToMove=(elemDim - handleDim) * pctOfBar,
movement=(percent(pxToMove, elemDim) * 100).toFixed(this.options.decimal);
location=parseFloat(location.toFixed(this.options.decimal));
var css={};
this._setValues($hndl, location);
if(isDbl){
var isLeftHndl=this.handles.index($hndl)===0,
dim,
handlePct=~~(percent(handleDim, elemDim) * 100);
if(isLeftHndl){
css[lOrT]="".concat(movement, "%");
dim=parseFloat(this.$handle2[0].style[lOrT]) - movement + handlePct;
if(cb&&typeof cb==='function'){
cb();
}}else{
var handlePos=parseFloat(this.$handle[0].style[lOrT]);
dim=movement - (isNaN(handlePos) ? (this.options.initialStart - this.options.start) / ((this.options.end - this.options.start) / 100):handlePos) + handlePct;
}
css["min-".concat(hOrW)]="".concat(dim, "%");
}
this.$element.one('finished.zf.animate', function (){
_this.$element.trigger('moved.zf.slider', [$hndl]);
});
var moveTime=this.$element.data('dragging') ? 1000 / 60:this.options.moveTime;
Move(moveTime, $hndl, function (){
if(isNaN(movement)){
$hndl.css(lOrT, "".concat(pctOfBar * 100, "%"));
}else{
$hndl.css(lOrT, "".concat(movement, "%"));
}
if(!_this.options.doubleSided){
_this.$fill.css(hOrW, "".concat(pctOfBar * 100, "%"));
}else{
_this.$fill.css(css);
}});
clearTimeout(_this.timeout);
_this.timeout=setTimeout(function (){
_this.$element.trigger('changed.zf.slider', [$hndl]);
}, _this.options.changedDelay);
}
}, {
key: "_setInitAttr",
value: function _setInitAttr(idx){
var initVal=idx===0 ? this.options.initialStart:this.options.initialEnd;
var id=this.inputs.eq(idx).attr('id')||GetYoDigits(6, 'slider');
this.inputs.eq(idx).attr({
'id': id,
'max': this.options.end,
'min': this.options.start,
'step': this.options.step
});
this.inputs.eq(idx).val(initVal);
this.handles.eq(idx).attr({
'role': 'slider',
'aria-controls': id,
'aria-valuemax': this.options.end,
'aria-valuemin': this.options.start,
'aria-valuenow': initVal,
'aria-orientation': this.options.vertical ? 'vertical':'horizontal',
'tabindex': 0
});
}
}, {
key: "_setValues",
value: function _setValues($handle, val){
var idx=this.options.doubleSided ? this.handles.index($handle):0;
this.inputs.eq(idx).val(val);
$handle.attr('aria-valuenow', val);
}
}, {
key: "_handleEvent",
value: function _handleEvent(e, $handle, val){
var value, hasVal;
if(!val){
e.preventDefault();
var _this=this,
vertical=this.options.vertical,
param=vertical ? 'height':'width',
direction=vertical ? 'top':'left',
eventOffset=vertical ? e.pageY:e.pageX,
halfOfHandle=this.$handle[0].getBoundingClientRect()[param] / 2,
barDim=this.$element[0].getBoundingClientRect()[param],
windowScroll=vertical ? (0, _jquery2.default)(window).scrollTop():(0, _jquery2.default)(window).scrollLeft();
var elemOffset=this.$element.offset()[direction];
if(e.clientY===e.pageY){
eventOffset=eventOffset + windowScroll;
}
var eventFromBar=eventOffset - elemOffset;
var barXY;
if(eventFromBar < 0){
barXY=0;
}else if(eventFromBar > barDim){
barXY=barDim;
}else{
barXY=eventFromBar;
}
var offsetPct=percent(barXY, barDim);
value=this._value(offsetPct);
if(rtl()&&!this.options.vertical){
value=this.options.end - value;
}
value=_this._adjustValue(null, value);
hasVal=false;
if(!$handle){
var firstHndlPos=absPosition(this.$handle, direction, barXY, param),
secndHndlPos=absPosition(this.$handle2, direction, barXY, param);
$handle=firstHndlPos <=secndHndlPos ? this.$handle:this.$handle2;
}}else{
value=this._adjustValue(null, val);
hasVal=true;
}
this._setHandlePos($handle, value, hasVal);
}
}, {
key: "_adjustValue",
value: function _adjustValue($handle, value){
var val,
step=this.options.step,
div=parseFloat(step / 2),
left,
prev_val,
next_val;
if(!!$handle){
val=parseFloat($handle.attr('aria-valuenow'));
}else{
val=value;
}
if(val >=0){
left=val % step;
}else{
left=step + val % step;
}
prev_val=val - left;
next_val=prev_val + step;
if(left===0){
return val;
}
val=val >=prev_val + div ? next_val:prev_val;
return val;
}
}, {
key: "_events",
value: function _events(){
this._eventsForHandle(this.$handle);
if(this.handles[1]){
this._eventsForHandle(this.$handle2);
}}
}, {
key: "_eventsForHandle",
value: function _eventsForHandle($handle){
var _this=this,
curHandle;
var handleChangeEvent=function handleChangeEvent(e){
var idx=_this.inputs.index((0, _jquery2.default)(this));
_this._handleEvent(e, _this.handles.eq(idx), (0, _jquery2.default)(this).val());
};
this.inputs.off('keyup.zf.slider').on('keyup.zf.slider', function (e){
if(e.keyCode==13) handleChangeEvent.call(this, e);
});
this.inputs.off('change.zf.slider').on('change.zf.slider', handleChangeEvent);
if(this.options.clickSelect){
this.$element.off('click.zf.slider').on('click.zf.slider', function (e){
if(_this.$element.data('dragging')){
return false;
}
if(!(0, _jquery2.default)(e.target).is('[data-slider-handle]')){
if(_this.options.doubleSided){
_this._handleEvent(e);
}else{
_this._handleEvent(e, _this.$handle);
}}
});
}
if(this.options.draggable){
this.handles.addTouch();
var $body=(0, _jquery2.default)('body');
$handle.off('mousedown.zf.slider').on('mousedown.zf.slider', function (e){
$handle.addClass('is-dragging');
_this.$fill.addClass('is-dragging');
_this.$element.data('dragging', true);
curHandle=(0, _jquery2.default)(e.currentTarget);
$body.on('mousemove.zf.slider', function (e){
e.preventDefault();
_this._handleEvent(e, curHandle);
}).on('mouseup.zf.slider', function (e){
_this._handleEvent(e, curHandle);
$handle.removeClass('is-dragging');
_this.$fill.removeClass('is-dragging');
_this.$element.data('dragging', false);
$body.off('mousemove.zf.slider mouseup.zf.slider');
});
})
.on('selectstart.zf.slider touchmove.zf.slider', function (e){
e.preventDefault();
});
}
$handle.off('keydown.zf.slider').on('keydown.zf.slider', function (e){
var _$handle=(0, _jquery2.default)(this),
idx=_this.options.doubleSided ? _this.handles.index(_$handle):0,
oldValue=parseFloat(_this.inputs.eq(idx).val()),
newValue;
Keyboard.handleKey(e, 'Slider', {
decrease: function decrease(){
newValue=oldValue - _this.options.step;
},
increase: function increase(){
newValue=oldValue + _this.options.step;
},
decrease_fast: function decrease_fast(){
newValue=oldValue - _this.options.step * 10;
},
increase_fast: function increase_fast(){
newValue=oldValue + _this.options.step * 10;
},
min: function min(){
newValue=_this.options.start;
},
max: function max(){
newValue=_this.options.end;
},
handled: function handled(){
e.preventDefault();
_this._setHandlePos(_$handle, newValue, true);
}});
});
}
}, {
key: "_destroy",
value: function _destroy(){
this.handles.off('.zf.slider');
this.inputs.off('.zf.slider');
this.$element.off('.zf.slider');
clearTimeout(this.timeout);
}}]);
return Slider;
}(Plugin);
Slider.defaults={
start: 0,
end: 100,
step: 1,
initialStart: 0,
initialEnd: 100,
binding: false,
clickSelect: true,
vertical: false,
draggable: true,
disabled: false,
doubleSided: false,
decimal: 2,
moveTime: 200,
disabledClass: 'disabled',
invertVertical: false,
changedDelay: 500,
nonLinearBase: 5,
positionValueFunction: 'linear'
};
function percent(frac, num){
return frac / num;
}
function absPosition($handle, dir, clickPos, param){
return Math.abs($handle.position()[dir] + $handle[param]() / 2 - clickPos);
}
function baseLog(base, value){
return Math.log(value) / Math.log(base);
}
var Sticky =
function (_Plugin){
_inherits(Sticky, _Plugin);
function Sticky(){
_classCallCheck(this, Sticky);
return _possibleConstructorReturn(this, _getPrototypeOf(Sticky).apply(this, arguments));
}
_createClass(Sticky, [{
key: "_setup",
value: function _setup(element, options){
this.$element=element;
this.options=_jquery2.default.extend({}, Sticky.defaults, this.$element.data(), options);
this.className='Sticky';
Triggers.init(_jquery2.default);
this._init();
}
}, {
key: "_init",
value: function _init(){
MediaQuery._init();
var $parent=this.$element.parent('[data-sticky-container]'),
id=this.$element[0].id||GetYoDigits(6, 'sticky'),
_this=this;
if($parent.length){
this.$container=$parent;
}else{
this.wasWrapped=true;
this.$element.wrap(this.options.container);
this.$container=this.$element.parent();
}
this.$container.addClass(this.options.containerClass);
this.$element.addClass(this.options.stickyClass).attr({
'data-resize': id,
'data-mutate': id
});
if(this.options.anchor!==''){
(0, _jquery2.default)('#' + _this.options.anchor).attr({
'data-mutate': id
});
}
this.scrollCount=this.options.checkEvery;
this.isStuck=false;
this.onLoadListener=onLoad((0, _jquery2.default)(window), function (){
_this.containerHeight=_this.$element.css("display")=="none" ? 0:_this.$element[0].getBoundingClientRect().height;
_this.$container.css('height', _this.containerHeight);
_this.elemHeight=_this.containerHeight;
if(_this.options.anchor!==''){
_this.$anchor=(0, _jquery2.default)('#' + _this.options.anchor);
}else{
_this._parsePoints();
}
_this._setSizes(function (){
var scroll=window.pageYOffset;
_this._calc(false, scroll);
if(!_this.isStuck){
_this._removeSticky(scroll >=_this.topPoint ? false:true);
}});
_this._events(id.split('-').reverse().join('-'));
});
}
}, {
key: "_parsePoints",
value: function _parsePoints(){
var top=this.options.topAnchor=="" ? 1:this.options.topAnchor,
btm=this.options.btmAnchor=="" ? document.documentElement.scrollHeight:this.options.btmAnchor,
pts=[top, btm],
breaks={};
for (var i=0, len=pts.length; i < len&&pts[i]; i++){
var pt;
if(typeof pts[i]==='number'){
pt=pts[i];
}else{
var place=pts[i].split(':'),
anchor=(0, _jquery2.default)("#".concat(place[0]));
pt=anchor.offset().top;
if(place[1]&&place[1].toLowerCase()==='bottom'){
pt +=anchor[0].getBoundingClientRect().height;
}}
breaks[i]=pt;
}
this.points=breaks;
return;
}
}, {
key: "_events",
value: function _events(id){
var _this=this,
scrollListener=this.scrollListener="scroll.zf.".concat(id);
if(this.isOn){
return;
}
if(this.canStick){
this.isOn=true;
(0, _jquery2.default)(window).off(scrollListener).on(scrollListener, function (e){
if(_this.scrollCount===0){
_this.scrollCount=_this.options.checkEvery;
_this._setSizes(function (){
_this._calc(false, window.pageYOffset);
});
}else{
_this.scrollCount--;
_this._calc(false, window.pageYOffset);
}});
}
this.$element.off('resizeme.zf.trigger').on('resizeme.zf.trigger', function (e, el){
_this._eventsHandler(id);
});
this.$element.on('mutateme.zf.trigger', function (e, el){
_this._eventsHandler(id);
});
if(this.$anchor){
this.$anchor.on('mutateme.zf.trigger', function (e, el){
_this._eventsHandler(id);
});
}}
}, {
key: "_eventsHandler",
value: function _eventsHandler(id){
var _this=this,
scrollListener=this.scrollListener="scroll.zf.".concat(id);
_this._setSizes(function (){
_this._calc(false);
if(_this.canStick){
if(!_this.isOn){
_this._events(id);
}}else if(_this.isOn){
_this._pauseListeners(scrollListener);
}});
}
}, {
key: "_pauseListeners",
value: function _pauseListeners(scrollListener){
this.isOn=false;
(0, _jquery2.default)(window).off(scrollListener);
this.$element.trigger('pause.zf.sticky');
}
}, {
key: "_calc",
value: function _calc(checkSizes, scroll){
if(checkSizes){
this._setSizes();
}
if(!this.canStick){
if(this.isStuck){
this._removeSticky(true);
}
return false;
}
if(!scroll){
scroll=window.pageYOffset;
}
if(scroll >=this.topPoint){
if(scroll <=this.bottomPoint){
if(!this.isStuck){
this._setSticky();
}}else{
if(this.isStuck){
this._removeSticky(false);
}}
}else{
if(this.isStuck){
this._removeSticky(true);
}}
}
}, {
key: "_setSticky",
value: function _setSticky(){
var _this=this,
stickTo=this.options.stickTo,
mrgn=stickTo==='top' ? 'marginTop':'marginBottom',
notStuckTo=stickTo==='top' ? 'bottom':'top',
css={};
css[mrgn]="".concat(this.options[mrgn], "em");
css[stickTo]=0;
css[notStuckTo]='auto';
this.isStuck=true;
this.$element.removeClass("is-anchored is-at-".concat(notStuckTo)).addClass("is-stuck is-at-".concat(stickTo)).css(css)
.trigger("sticky.zf.stuckto:".concat(stickTo));
this.$element.on("transitionend webkitTransitionEnd oTransitionEnd otransitionend MSTransitionEnd", function (){
_this._setSizes();
});
}
}, {
key: "_removeSticky",
value: function _removeSticky(isTop){
var stickTo=this.options.stickTo,
stickToTop=stickTo==='top',
css={},
anchorPt=(this.points ? this.points[1] - this.points[0]:this.anchorHeight) - this.elemHeight,
mrgn=stickToTop ? 'marginTop':'marginBottom',
topOrBottom=isTop ? 'top':'bottom';
css[mrgn]=0;
css['bottom']='auto';
if(isTop){
css['top']=0;
}else{
css['top']=anchorPt;
}
this.isStuck=false;
this.$element.removeClass("is-stuck is-at-".concat(stickTo)).addClass("is-anchored is-at-".concat(topOrBottom)).css(css)
.trigger("sticky.zf.unstuckfrom:".concat(topOrBottom));
}
}, {
key: "_setSizes",
value: function _setSizes(cb){
this.canStick=MediaQuery.is(this.options.stickyOn);
if(!this.canStick){
if(cb&&typeof cb==='function'){
cb();
}}
var newElemWidth=this.$container[0].getBoundingClientRect().width,
comp=window.getComputedStyle(this.$container[0]),
pdngl=parseInt(comp['padding-left'], 10),
pdngr=parseInt(comp['padding-right'], 10);
if(this.$anchor&&this.$anchor.length){
this.anchorHeight=this.$anchor[0].getBoundingClientRect().height;
}else{
this._parsePoints();
}
this.$element.css({
'max-width': "".concat(newElemWidth - pdngl - pdngr, "px")
});
var newContainerHeight=this.$element[0].getBoundingClientRect().height||this.containerHeight;
if(this.$element.css("display")=="none"){
newContainerHeight=0;
}
this.containerHeight=newContainerHeight;
this.$container.css({
height: newContainerHeight
});
this.elemHeight=newContainerHeight;
if(!this.isStuck){
if(this.$element.hasClass('is-at-bottom')){
var anchorPt=(this.points ? this.points[1] - this.$container.offset().top:this.anchorHeight) - this.elemHeight;
this.$element.css('top', anchorPt);
}}
this._setBreakPoints(newContainerHeight, function (){
if(cb&&typeof cb==='function'){
cb();
}});
}
}, {
key: "_setBreakPoints",
value: function _setBreakPoints(elemHeight, cb){
if(!this.canStick){
if(cb&&typeof cb==='function'){
cb();
}else{
return false;
}}
var mTop=emCalc(this.options.marginTop),
mBtm=emCalc(this.options.marginBottom),
topPoint=this.points ? this.points[0]:this.$anchor.offset().top,
bottomPoint=this.points ? this.points[1]:topPoint + this.anchorHeight,
winHeight=window.innerHeight;
if(this.options.stickTo==='top'){
topPoint -=mTop;
bottomPoint -=elemHeight + mTop;
}else if(this.options.stickTo==='bottom'){
topPoint -=winHeight - (elemHeight + mBtm);
bottomPoint -=winHeight - mBtm;
}
this.topPoint=topPoint;
this.bottomPoint=bottomPoint;
if(cb&&typeof cb==='function'){
cb();
}}
}, {
key: "_destroy",
value: function _destroy(){
this._removeSticky(true);
this.$element.removeClass("".concat(this.options.stickyClass, " is-anchored is-at-top")).css({
height: '',
top: '',
bottom: '',
'max-width': ''
}).off('resizeme.zf.trigger').off('mutateme.zf.trigger');
if(this.$anchor&&this.$anchor.length){
this.$anchor.off('change.zf.sticky');
}
if(this.scrollListener) (0, _jquery2.default)(window).off(this.scrollListener);
if(this.onLoadListener) (0, _jquery2.default)(window).off(this.onLoadListener);
if(this.wasWrapped){
this.$element.unwrap();
}else{
this.$container.removeClass(this.options.containerClass).css({
height: ''
});
}}
}]);
return Sticky;
}(Plugin);
Sticky.defaults={
container: '<div data-sticky-container></div>',
stickTo: 'top',
anchor: '',
topAnchor: '',
btmAnchor: '',
marginTop: 1,
marginBottom: 1,
stickyOn: 'medium',
stickyClass: 'sticky',
containerClass: 'sticky-container',
checkEvery: -1
};
function emCalc(em){
return parseInt(window.getComputedStyle(document.body, null).fontSize, 10) * em;
}
var Tabs =
function (_Plugin){
_inherits(Tabs, _Plugin);
function Tabs(){
_classCallCheck(this, Tabs);
return _possibleConstructorReturn(this, _getPrototypeOf(Tabs).apply(this, arguments));
}
_createClass(Tabs, [{
key: "_setup",
value: function _setup(element, options){
this.$element=element;
this.options=_jquery2.default.extend({}, Tabs.defaults, this.$element.data(), options);
this.className='Tabs';
this._init();
Keyboard.register('Tabs', {
'ENTER': 'open',
'SPACE': 'open',
'ARROW_RIGHT': 'next',
'ARROW_UP': 'previous',
'ARROW_DOWN': 'next',
'ARROW_LEFT': 'previous' // 'TAB': 'next',
});
}
}, {
key: "_init",
value: function _init(){
var _this2=this;
var _this=this;
this._isInitializing=true;
this.$element.attr({
'role': 'tablist'
});
this.$tabTitles=this.$element.find(".".concat(this.options.linkClass));
this.$tabContent=(0, _jquery2.default)("[data-tabs-content=\"".concat(this.$element[0].id, "\"]"));
this.$tabTitles.each(function (){
var $elem=(0, _jquery2.default)(this),
$link=$elem.find('a'),
isActive=$elem.hasClass("".concat(_this.options.linkActiveClass)),
hash=$link.attr('data-tabs-target')||$link[0].hash.slice(1),
linkId=$link[0].id ? $link[0].id:"".concat(hash, "-label"),
$tabContent=(0, _jquery2.default)("#".concat(hash));
$elem.attr({
'role': 'presentation'
});
$link.attr({
'role': 'tab',
'aria-controls': hash,
'aria-selected': isActive,
'id': linkId,
'tabindex': isActive ? '0':'-1'
});
$tabContent.attr({
'role': 'tabpanel',
'aria-labelledby': linkId
});
if(isActive){
_this._initialAnchor="#".concat(hash);
}
if(!isActive){
$tabContent.attr('aria-hidden', 'true');
}
if(isActive&&_this.options.autoFocus){
_this.onLoadListener=onLoad((0, _jquery2.default)(window), function (){
(0, _jquery2.default)('html, body').animate({
scrollTop: $elem.offset().top
}, _this.options.deepLinkSmudgeDelay, function (){
$link.focus();
});
});
}});
if(this.options.matchHeight){
var $images=this.$tabContent.find('img');
if($images.length){
onImagesLoaded($images, this._setHeight.bind(this));
}else{
this._setHeight();
}}
this._checkDeepLink=function (){
var anchor=window.location.hash;
if(!anchor.length){
if(_this2._isInitializing) return;
if(_this2._initialAnchor) anchor=_this2._initialAnchor;
}
var $anchor=anchor&&(0, _jquery2.default)(anchor);
var $link=anchor&&_this2.$element.find('[href$="' + anchor + '"]');
var isOwnAnchor = !!($anchor.length&&$link.length);
if($anchor&&$anchor.length&&$link&&$link.length){
_this2.selectTab($anchor, true);
}else{
_this2._collapse();
}
if(isOwnAnchor){
if(_this2.options.deepLinkSmudge){
var offset=_this2.$element.offset();
(0, _jquery2.default)('html, body').animate({
scrollTop: offset.top
}, _this2.options.deepLinkSmudgeDelay);
}
_this2.$element.trigger('deeplink.zf.tabs', [$link, $anchor]);
}};
if(this.options.deepLink){
this._checkDeepLink();
}
this._events();
this._isInitializing=false;
}
}, {
key: "_events",
value: function _events(){
this._addKeyHandler();
this._addClickHandler();
this._setHeightMqHandler=null;
if(this.options.matchHeight){
this._setHeightMqHandler=this._setHeight.bind(this);
(0, _jquery2.default)(window).on('changed.zf.mediaquery', this._setHeightMqHandler);
}
if(this.options.deepLink){
(0, _jquery2.default)(window).on('hashchange', this._checkDeepLink);
}}
}, {
key: "_addClickHandler",
value: function _addClickHandler(){
var _this=this;
this.$element.off('click.zf.tabs').on('click.zf.tabs', ".".concat(this.options.linkClass), function (e){
e.preventDefault();
e.stopPropagation();
_this._handleTabChange((0, _jquery2.default)(this));
});
}
}, {
key: "_addKeyHandler",
value: function _addKeyHandler(){
var _this=this;
this.$tabTitles.off('keydown.zf.tabs').on('keydown.zf.tabs', function (e){
if(e.which===9) return;
var $element=(0, _jquery2.default)(this),
$elements=$element.parent('ul').children('li'),
$prevElement,
$nextElement;
$elements.each(function (i){
if((0, _jquery2.default)(this).is($element)){
if(_this.options.wrapOnKeys){
$prevElement=i===0 ? $elements.last():$elements.eq(i - 1);
$nextElement=i===$elements.length - 1 ? $elements.first():$elements.eq(i + 1);
}else{
$prevElement=$elements.eq(Math.max(0, i - 1));
$nextElement=$elements.eq(Math.min(i + 1, $elements.length - 1));
}
return;
}});
Keyboard.handleKey(e, 'Tabs', {
open: function open(){
$element.find('[role="tab"]').focus();
_this._handleTabChange($element);
},
previous: function previous(){
$prevElement.find('[role="tab"]').focus();
_this._handleTabChange($prevElement);
},
next: function next(){
$nextElement.find('[role="tab"]').focus();
_this._handleTabChange($nextElement);
},
handled: function handled(){
e.stopPropagation();
e.preventDefault();
}});
});
}
}, {
key: "_handleTabChange",
value: function _handleTabChange($target, historyHandled){
if($target.hasClass("".concat(this.options.linkActiveClass))){
if(this.options.activeCollapse){
this._collapse();
}
return;
}
var $oldTab=this.$element.find(".".concat(this.options.linkClass, ".").concat(this.options.linkActiveClass)),
$tabLink=$target.find('[role="tab"]'),
target=$tabLink.attr('data-tabs-target'),
anchor=target&&target.length ? "#".concat(target):$tabLink[0].hash,
$targetContent=this.$tabContent.find(anchor);
this._collapseTab($oldTab);
this._openTab($target);
if(this.options.deepLink&&!historyHandled){
if(this.options.updateHistory){
history.pushState({}, '', anchor);
}else{
history.replaceState({}, '', anchor);
}}
this.$element.trigger('change.zf.tabs', [$target, $targetContent]);
$targetContent.find("[data-mutate]").trigger("mutateme.zf.trigger");
}
}, {
key: "_openTab",
value: function _openTab($target){
var $tabLink=$target.find('[role="tab"]'),
hash=$tabLink.attr('data-tabs-target')||$tabLink[0].hash.slice(1),
$targetContent=this.$tabContent.find("#".concat(hash));
$target.addClass("".concat(this.options.linkActiveClass));
$tabLink.attr({
'aria-selected': 'true',
'tabindex': '0'
});
$targetContent.addClass("".concat(this.options.panelActiveClass)).removeAttr('aria-hidden');
}
}, {
key: "_collapseTab",
value: function _collapseTab($target){
var $target_anchor=$target.removeClass("".concat(this.options.linkActiveClass)).find('[role="tab"]').attr({
'aria-selected': 'false',
'tabindex': -1
});
(0, _jquery2.default)("#".concat($target_anchor.attr('aria-controls'))).removeClass("".concat(this.options.panelActiveClass)).attr({
'aria-hidden': 'true'
});
}
}, {
key: "_collapse",
value: function _collapse(){
var $activeTab=this.$element.find(".".concat(this.options.linkClass, ".").concat(this.options.linkActiveClass));
if($activeTab.length){
this._collapseTab($activeTab);
this.$element.trigger('collapse.zf.tabs', [$activeTab]);
}}
}, {
key: "selectTab",
value: function selectTab(elem, historyHandled){
var idStr;
if(_typeof(elem)==='object'){
idStr=elem[0].id;
}else{
idStr=elem;
}
if(idStr.indexOf('#') < 0){
idStr="#".concat(idStr);
}
var $target=this.$tabTitles.has("[href$=\"".concat(idStr, "\"]"));
this._handleTabChange($target, historyHandled);
}}, {
key: "_setHeight",
value: function _setHeight(){
var max=0,
_this=this;
this.$tabContent.find(".".concat(this.options.panelClass)).css('height', '').each(function (){
var panel=(0, _jquery2.default)(this),
isActive=panel.hasClass("".concat(_this.options.panelActiveClass));
if(!isActive){
panel.css({
'visibility': 'hidden',
'display': 'block'
});
}
var temp=this.getBoundingClientRect().height;
if(!isActive){
panel.css({
'visibility': '',
'display': ''
});
}
max=temp > max ? temp:max;
}).css('height', "".concat(max, "px"));
}
}, {
key: "_destroy",
value: function _destroy(){
this.$element.find(".".concat(this.options.linkClass)).off('.zf.tabs').hide().end().find(".".concat(this.options.panelClass)).hide();
if(this.options.matchHeight){
if(this._setHeightMqHandler!=null){
(0, _jquery2.default)(window).off('changed.zf.mediaquery', this._setHeightMqHandler);
}}
if(this.options.deepLink){
(0, _jquery2.default)(window).off('hashchange', this._checkDeepLink);
}
if(this.onLoadListener){
(0, _jquery2.default)(window).off(this.onLoadListener);
}}
}]);
return Tabs;
}(Plugin);
Tabs.defaults={
deepLink: false,
deepLinkSmudge: false,
deepLinkSmudgeDelay: 300,
updateHistory: false,
autoFocus: false,
wrapOnKeys: true,
matchHeight: false,
activeCollapse: false,
linkClass: 'tabs-title',
linkActiveClass: 'is-active',
panelClass: 'tabs-panel',
panelActiveClass: 'is-active'
};
var Toggler =
function (_Plugin){
_inherits(Toggler, _Plugin);
function Toggler(){
_classCallCheck(this, Toggler);
return _possibleConstructorReturn(this, _getPrototypeOf(Toggler).apply(this, arguments));
}
_createClass(Toggler, [{
key: "_setup",
value: function _setup(element, options){
this.$element=element;
this.options=_jquery2.default.extend({}, Toggler.defaults, element.data(), options);
this.className='';
this.className='Toggler';
Triggers.init(_jquery2.default);
this._init();
this._events();
}
}, {
key: "_init",
value: function _init(){
var input;
if(this.options.animate){
input=this.options.animate.split(' ');
this.animationIn=input[0];
this.animationOut=input[1]||null;
}else{
input=this.$element.data('toggler');
this.className=input[0]==='.' ? input.slice(1):input;
}
var id=this.$element[0].id,
$triggers=(0, _jquery2.default)("[data-open~=\"".concat(id, "\"], [data-close~=\"").concat(id, "\"], [data-toggle~=\"").concat(id, "\"]"));
$triggers.attr('aria-expanded', !this.$element.is(':hidden'));
$triggers.each(function (index, trigger){
var $trigger=(0, _jquery2.default)(trigger);
var controls=$trigger.attr('aria-controls')||'';
var containsId=new RegExp("\\b".concat(RegExpEscape(id), "\\b")).test(controls);
if(!containsId) $trigger.attr('aria-controls', controls ? "".concat(controls, " ").concat(id):id);
});
}
}, {
key: "_events",
value: function _events(){
this.$element.off('toggle.zf.trigger').on('toggle.zf.trigger', this.toggle.bind(this));
}
}, {
key: "toggle",
value: function toggle(){
this[this.options.animate ? '_toggleAnimate':'_toggleClass']();
}}, {
key: "_toggleClass",
value: function _toggleClass(){
this.$element.toggleClass(this.className);
var isOn=this.$element.hasClass(this.className);
if(isOn){
this.$element.trigger('on.zf.toggler');
}else{
this.$element.trigger('off.zf.toggler');
}
this._updateARIA(isOn);
this.$element.find('[data-mutate]').trigger('mutateme.zf.trigger');
}}, {
key: "_toggleAnimate",
value: function _toggleAnimate(){
var _this=this;
if(this.$element.is(':hidden')){
Motion.animateIn(this.$element, this.animationIn, function (){
_this._updateARIA(true);
this.trigger('on.zf.toggler');
this.find('[data-mutate]').trigger('mutateme.zf.trigger');
});
}else{
Motion.animateOut(this.$element, this.animationOut, function (){
_this._updateARIA(false);
this.trigger('off.zf.toggler');
this.find('[data-mutate]').trigger('mutateme.zf.trigger');
});
}}
}, {
key: "_updateARIA",
value: function _updateARIA(isOn){
var id=this.$element[0].id;
(0, _jquery2.default)("[data-open=\"".concat(id, "\"], [data-close=\"").concat(id, "\"], [data-toggle=\"").concat(id, "\"]")).attr({
'aria-expanded': isOn ? true:false
});
}
}, {
key: "_destroy",
value: function _destroy(){
this.$element.off('.zf.toggler');
}}]);
return Toggler;
}(Plugin);
Toggler.defaults={
animate: false
};
var Tooltip =
function (_Positionable){
_inherits(Tooltip, _Positionable);
function Tooltip(){
_classCallCheck(this, Tooltip);
return _possibleConstructorReturn(this, _getPrototypeOf(Tooltip).apply(this, arguments));
}
_createClass(Tooltip, [{
key: "_setup",
value: function _setup(element, options){
this.$element=element;
this.options=_jquery2.default.extend({}, Tooltip.defaults, this.$element.data(), options);
this.className='Tooltip';
this.isActive=false;
this.isClick=false;
Triggers.init(_jquery2.default);
this._init();
}
}, {
key: "_init",
value: function _init(){
MediaQuery._init();
var elemId=this.$element.attr('aria-describedby')||GetYoDigits(6, 'tooltip');
this.options.tipText=this.options.tipText||this.$element.attr('title');
this.template=this.options.template ? (0, _jquery2.default)(this.options.template):this._buildTemplate(elemId);
if(this.options.allowHtml){
this.template.appendTo(document.body).html(this.options.tipText).hide();
}else{
this.template.appendTo(document.body).text(this.options.tipText).hide();
}
this.$element.attr({
'title': '',
'aria-describedby': elemId,
'data-yeti-box': elemId,
'data-toggle': elemId,
'data-resize': elemId
}).addClass(this.options.triggerClass);
_get(_getPrototypeOf(Tooltip.prototype), "_init", this).call(this);
this._events();
}}, {
key: "_getDefaultPosition",
value: function _getDefaultPosition(){
var position=this.$element[0].className.match(/\b(top|left|right|bottom)\b/g);
return position ? position[0]:'top';
}}, {
key: "_getDefaultAlignment",
value: function _getDefaultAlignment(){
return 'center';
}}, {
key: "_getHOffset",
value: function _getHOffset(){
if(this.position==='left'||this.position==='right'){
return this.options.hOffset + this.options.tooltipWidth;
}else{
return this.options.hOffset;
}}
}, {
key: "_getVOffset",
value: function _getVOffset(){
if(this.position==='top'||this.position==='bottom'){
return this.options.vOffset + this.options.tooltipHeight;
}else{
return this.options.vOffset;
}}
}, {
key: "_buildTemplate",
value: function _buildTemplate(id){
var templateClasses="".concat(this.options.tooltipClass, " ").concat(this.options.templateClasses).trim();
var $template=(0, _jquery2.default)('<div></div>').addClass(templateClasses).attr({
'role': 'tooltip',
'aria-hidden': true,
'data-is-active': false,
'data-is-focus': false,
'id': id
});
return $template;
}
}, {
key: "_setPosition",
value: function _setPosition(){
_get(_getPrototypeOf(Tooltip.prototype), "_setPosition", this).call(this, this.$element, this.template);
}
}, {
key: "show",
value: function show(){
if(this.options.showOn!=='all'&&!MediaQuery.is(this.options.showOn)){
return false;
}
var _this=this;
this.template.css('visibility', 'hidden').show();
this._setPosition();
this.template.removeClass('top bottom left right').addClass(this.position);
this.template.removeClass('align-top align-bottom align-left align-right align-center').addClass('align-' + this.alignment);
this.$element.trigger('closeme.zf.tooltip', this.template.attr('id'));
this.template.attr({
'data-is-active': true,
'aria-hidden': false
});
_this.isActive=true;
this.template.stop().hide().css('visibility', '').fadeIn(this.options.fadeInDuration, function (){
});
this.$element.trigger('show.zf.tooltip');
}
}, {
key: "hide",
value: function hide(){
var _this=this;
this.template.stop().attr({
'aria-hidden': true,
'data-is-active': false
}).fadeOut(this.options.fadeOutDuration, function (){
_this.isActive=false;
_this.isClick=false;
});
this.$element.trigger('hide.zf.tooltip');
}
}, {
key: "_events",
value: function _events(){
var _this=this;
var $template=this.template;
var isFocus=false;
if(!this.options.disableHover){
this.$element.on('mouseenter.zf.tooltip', function (e){
if(!_this.isActive){
_this.timeout=setTimeout(function (){
_this.show();
}, _this.options.hoverDelay);
}}).on('mouseleave.zf.tooltip', ignoreMousedisappear(function (e){
clearTimeout(_this.timeout);
if(!isFocus||_this.isClick&&!_this.options.clickOpen){
_this.hide();
}}));
}
if(this.options.clickOpen){
this.$element.on('mousedown.zf.tooltip', function (e){
e.stopImmediatePropagation();
if(_this.isClick) ;else {
_this.isClick=true;
if((_this.options.disableHover||!_this.$element.attr('tabindex'))&&!_this.isActive){
_this.show();
}}
});
}else{
this.$element.on('mousedown.zf.tooltip', function (e){
e.stopImmediatePropagation();
_this.isClick=true;
});
}
if(!this.options.disableForTouch){
this.$element.on('tap.zf.tooltip touchend.zf.tooltip', function (e){
_this.isActive ? _this.hide():_this.show();
});
}
this.$element.on({
'close.zf.trigger': this.hide.bind(this)
});
this.$element.on('focus.zf.tooltip', function (e){
isFocus=true;
if(_this.isClick){
if(!_this.options.clickOpen){
isFocus=false;
}
return false;
}else{
_this.show();
}}).on('focusout.zf.tooltip', function (e){
isFocus=false;
_this.isClick=false;
_this.hide();
}).on('resizeme.zf.trigger', function (){
if(_this.isActive){
_this._setPosition();
}});
}
}, {
key: "toggle",
value: function toggle(){
if(this.isActive){
this.hide();
}else{
this.show();
}}
}, {
key: "_destroy",
value: function _destroy(){
this.$element.attr('title', this.template.text()).off('.zf.trigger .zf.tooltip').removeClass(this.options.triggerClass).removeClass('top right left bottom').removeAttr('aria-describedby data-disable-hover data-resize data-toggle data-tooltip data-yeti-box');
this.template.remove();
}}]);
return Tooltip;
}(Positionable);
Tooltip.defaults={
disableForTouch: false,
hoverDelay: 200,
fadeInDuration: 150,
fadeOutDuration: 150,
disableHover: false,
templateClasses: '',
tooltipClass: 'tooltip',
triggerClass: 'has-tip',
showOn: 'small',
template: '',
tipText: '',
touchCloseText: 'Tap to close.',
clickOpen: true,
position: 'auto',
alignment: 'auto',
allowOverlap: false,
allowBottomOverlap: false,
vOffset: 0,
hOffset: 0,
tooltipHeight: 14,
tooltipWidth: 12,
allowHtml: false
};
var MenuPlugins$1={
tabs: {
cssClass: 'tabs',
plugin: Tabs
},
accordion: {
cssClass: 'accordion',
plugin: Accordion
}};
var ResponsiveAccordionTabs =
function (_Plugin){
_inherits(ResponsiveAccordionTabs, _Plugin);
function ResponsiveAccordionTabs(){
_classCallCheck(this, ResponsiveAccordionTabs);
return _possibleConstructorReturn(this, _getPrototypeOf(ResponsiveAccordionTabs).apply(this, arguments));
}
_createClass(ResponsiveAccordionTabs, [{
key: "_setup",
value: function _setup(element, options){
this.$element=(0, _jquery2.default)(element);
this.options=_jquery2.default.extend({}, this.$element.data(), options);
this.rules=this.$element.data('responsive-accordion-tabs');
this.currentMq=null;
this.currentPlugin=null;
this.className='ResponsiveAccordionTabs';
if(!this.$element.attr('id')){
this.$element.attr('id', GetYoDigits(6, 'responsiveaccordiontabs'));
}
this._init();
this._events();
}
}, {
key: "_init",
value: function _init(){
MediaQuery._init();
if(typeof this.rules==='string'){
var rulesTree={};
var rules=this.rules.split(' ');
for (var i=0; i < rules.length; i++){
var rule=rules[i].split('-');
var ruleSize=rule.length > 1 ? rule[0]:'small';
var rulePlugin=rule.length > 1 ? rule[1]:rule[0];
if(MenuPlugins$1[rulePlugin]!==null){
rulesTree[ruleSize]=MenuPlugins$1[rulePlugin];
}}
this.rules=rulesTree;
}
this._getAllOptions();
if(!_jquery2.default.isEmptyObject(this.rules)){
this._checkMediaQueries();
}}
}, {
key: "_getAllOptions",
value: function _getAllOptions(){
var _this=this;
_this.allOptions={};
for (var key in MenuPlugins$1){
if(MenuPlugins$1.hasOwnProperty(key)){
var obj=MenuPlugins$1[key];
try {
var dummyPlugin=(0, _jquery2.default)('<ul></ul>');
var tmpPlugin=new obj.plugin(dummyPlugin, _this.options);
for (var keyKey in tmpPlugin.options){
if(tmpPlugin.options.hasOwnProperty(keyKey)&&keyKey!=='zfPlugin'){
var objObj=tmpPlugin.options[keyKey];
_this.allOptions[keyKey]=objObj;
}}
tmpPlugin.destroy();
} catch (e){}}
}}
}, {
key: "_events",
value: function _events(){
this._changedZfMediaQueryHandler=this._checkMediaQueries.bind(this);
(0, _jquery2.default)(window).on('changed.zf.mediaquery', this._changedZfMediaQueryHandler);
}
}, {
key: "_checkMediaQueries",
value: function _checkMediaQueries(){
var matchedMq,
_this=this;
_jquery2.default.each(this.rules, function (key){
if(MediaQuery.atLeast(key)){
matchedMq=key;
}});
if(!matchedMq) return;
if(this.currentPlugin instanceof this.rules[matchedMq].plugin) return;
_jquery2.default.each(MenuPlugins$1, function (key, value){
_this.$element.removeClass(value.cssClass);
});
this.$element.addClass(this.rules[matchedMq].cssClass);
if(this.currentPlugin){
if(!this.currentPlugin.$element.data('zfPlugin')&&this.storezfData) this.currentPlugin.$element.data('zfPlugin', this.storezfData);
this.currentPlugin.destroy();
}
this._handleMarkup(this.rules[matchedMq].cssClass);
this.currentPlugin=new this.rules[matchedMq].plugin(this.$element, {});
this.storezfData=this.currentPlugin.$element.data('zfPlugin');
}}, {
key: "_handleMarkup",
value: function _handleMarkup(toSet){
var _this=this,
fromString='accordion';
var $panels=(0, _jquery2.default)('[data-tabs-content=' + this.$element.attr('id') + ']');
if($panels.length) fromString='tabs';
if(fromString===toSet){
return;
}
var tabsTitle=_this.allOptions.linkClass ? _this.allOptions.linkClass:'tabs-title';
var tabsPanel=_this.allOptions.panelClass ? _this.allOptions.panelClass:'tabs-panel';
this.$element.removeAttr('role');
var $liHeads=this.$element.children('.' + tabsTitle + ',[data-accordion-item]').removeClass(tabsTitle).removeClass('accordion-item').removeAttr('data-accordion-item');
var $liHeadsA=$liHeads.children('a').removeClass('accordion-title');
if(fromString==='tabs'){
$panels=$panels.children('.' + tabsPanel).removeClass(tabsPanel).removeAttr('role').removeAttr('aria-hidden').removeAttr('aria-labelledby');
$panels.children('a').removeAttr('role').removeAttr('aria-controls').removeAttr('aria-selected');
}else{
$panels=$liHeads.children('[data-tab-content]').removeClass('accordion-content');
}
$panels.css({
display: '',
visibility: ''
});
$liHeads.css({
display: '',
visibility: ''
});
if(toSet==='accordion'){
$panels.each(function (key, value){
(0, _jquery2.default)(value).appendTo($liHeads.get(key)).addClass('accordion-content').attr('data-tab-content', '').removeClass('is-active').css({
height: ''
});
(0, _jquery2.default)('[data-tabs-content=' + _this.$element.attr('id') + ']').after('<div id="tabs-placeholder-' + _this.$element.attr('id') + '"></div>').detach();
$liHeads.addClass('accordion-item').attr('data-accordion-item', '');
$liHeadsA.addClass('accordion-title');
});
}else if(toSet==='tabs'){
var $tabsContent=(0, _jquery2.default)('[data-tabs-content=' + _this.$element.attr('id') + ']');
var $placeholder=(0, _jquery2.default)('#tabs-placeholder-' + _this.$element.attr('id'));
if($placeholder.length){
$tabsContent=(0, _jquery2.default)('<div class="tabs-content"></div>').insertAfter($placeholder).attr('data-tabs-content', _this.$element.attr('id'));
$placeholder.remove();
}else{
$tabsContent=(0, _jquery2.default)('<div class="tabs-content"></div>').insertAfter(_this.$element).attr('data-tabs-content', _this.$element.attr('id'));
}
$panels.each(function (key, value){
var tempValue=(0, _jquery2.default)(value).appendTo($tabsContent).addClass(tabsPanel);
var hash=$liHeadsA.get(key).hash.slice(1);
var id=(0, _jquery2.default)(value).attr('id')||GetYoDigits(6, 'accordion');
if(hash!==id){
if(hash!==''){
(0, _jquery2.default)(value).attr('id', hash);
}else{
hash=id;
(0, _jquery2.default)(value).attr('id', hash);
(0, _jquery2.default)($liHeadsA.get(key)).attr('href', (0, _jquery2.default)($liHeadsA.get(key)).attr('href').replace('#', '') + '#' + hash);
}}
var isActive=(0, _jquery2.default)($liHeads.get(key)).hasClass('is-active');
if(isActive){
tempValue.addClass('is-active');
}});
$liHeads.addClass(tabsTitle);
}}
}, {
key: "_destroy",
value: function _destroy(){
if(this.currentPlugin) this.currentPlugin.destroy();
(0, _jquery2.default)(window).off('changed.zf.mediaquery', this._changedZfMediaQueryHandler);
}}]);
return ResponsiveAccordionTabs;
}(Plugin);
ResponsiveAccordionTabs.defaults={};
Foundation.addToJquery(_jquery2.default);
Foundation.rtl=rtl;
Foundation.GetYoDigits=GetYoDigits;
Foundation.transitionend=transitionend;
Foundation.RegExpEscape=RegExpEscape;
Foundation.onLoad=onLoad;
Foundation.Box=Box;
Foundation.onImagesLoaded=onImagesLoaded;
Foundation.Keyboard=Keyboard;
Foundation.MediaQuery=MediaQuery;
Foundation.Motion=Motion;
Foundation.Move=Move;
Foundation.Nest=Nest;
Foundation.Timer=Timer;
Touch.init(_jquery2.default);
Triggers.init(_jquery2.default, Foundation);
MediaQuery._init();
Foundation.plugin(Abide, 'Abide');
Foundation.plugin(Accordion, 'Accordion');
Foundation.plugin(AccordionMenu, 'AccordionMenu');
Foundation.plugin(Drilldown, 'Drilldown');
Foundation.plugin(Dropdown, 'Dropdown');
Foundation.plugin(DropdownMenu, 'DropdownMenu');
Foundation.plugin(Equalizer, 'Equalizer');
Foundation.plugin(Interchange, 'Interchange');
Foundation.plugin(Magellan, 'Magellan');
Foundation.plugin(OffCanvas, 'OffCanvas');
Foundation.plugin(Orbit, 'Orbit');
Foundation.plugin(ResponsiveMenu, 'ResponsiveMenu');
Foundation.plugin(ResponsiveToggle, 'ResponsiveToggle');
Foundation.plugin(Reveal, 'Reveal');
Foundation.plugin(Slider, 'Slider');
Foundation.plugin(SmoothScroll, 'SmoothScroll');
Foundation.plugin(Sticky, 'Sticky');
Foundation.plugin(Tabs, 'Tabs');
Foundation.plugin(Toggler, 'Toggler');
Foundation.plugin(Tooltip, 'Tooltip');
Foundation.plugin(ResponsiveAccordionTabs, 'ResponsiveAccordionTabs');
exports.default=Foundation;
exports.CoreUtils=foundation_core_utils;
exports.Core=Foundation;
exports.Box=Box;
exports.onImagesLoaded=onImagesLoaded;
exports.Keyboard=Keyboard;
exports.MediaQuery=MediaQuery;
exports.Motion=Motion;
exports.Move=Move;
exports.Nest=Nest;
exports.Timer=Timer;
exports.Touch=Touch;
exports.Triggers=Triggers;
exports.Abide=Abide;
exports.Accordion=Accordion;
exports.AccordionMenu=AccordionMenu;
exports.Drilldown=Drilldown;
exports.Dropdown=Dropdown;
exports.DropdownMenu=DropdownMenu;
exports.Equalizer=Equalizer;
exports.Interchange=Interchange;
exports.Magellan=Magellan;
exports.OffCanvas=OffCanvas;
exports.Orbit=Orbit;
exports.ResponsiveMenu=ResponsiveMenu;
exports.ResponsiveToggle=ResponsiveToggle;
exports.Reveal=Reveal;
exports.Slider=Slider;
exports.SmoothScroll=SmoothScroll;
exports.Sticky=Sticky;
exports.Tabs=Tabs;
exports.Toggler=Toggler;
exports.Tooltip=Tooltip;
exports.ResponsiveAccordionTabs=ResponsiveAccordionTabs;
exports.Foundation=Foundation;
})
]);
(()=>{var n={243:function(n,t,r){n=r.nmd(n),function(){var e,u="Expected a function",i="__lodash_hash_undefined__",o="__lodash_placeholder__",f=32,a=128,c=1/0,l=9007199254740991,s=NaN,h=4294967295,p=[["ary",a],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",f],["partialRight",64],["rearg",256]],v="[object Arguments]",_="[object Array]",g="[object Boolean]",y="[object Date]",d="[object Error]",w="[object Function]",b="[object GeneratorFunction]",m="[object Map]",x="[object Number]",j="[object Object]",A="[object Promise]",k="[object RegExp]",O="[object Set]",E="[object String]",I="[object Symbol]",R="[object WeakMap]",z="[object ArrayBuffer]",S="[object DataView]",C="[object Float32Array]",L="[object Float64Array]",W="[object Int8Array]",T="[object Int16Array]",U="[object Int32Array]",B="[object Uint8Array]",D="[object Uint8ClampedArray]",$="[object Uint16Array]",M="[object Uint32Array]",F=/\b__p \+='';/g,N=/\b(__p \+=) '' \+/g,P=/(__e\(.*?\)|\b__t\)) \+\n'';/g,q=/&(?:amp|lt|gt|quot|#39);/g,Z=/[&<>"']/g,K=RegExp(q.source),V=RegExp(Z.source),G=/<%-([\s\S]+?)%>/g,H=/<%([\s\S]+?)%>/g,J=/<%=([\s\S]+?)%>/g,Y=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Q=/^\w*$/,X=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,nn=/[\\^$.*+?()[\]{}|]/g,tn=RegExp(nn.source),rn=/^\s+/,en=/\s/,un=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,on=/\{\n\/\* \[wrapped with (.+)\] \*/,fn=/,? & /,an=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,cn=/[()=,{}\[\]\/\s]/,ln=/\\(\\)?/g,sn=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,hn=/\w*$/,pn=/^[-+]0x[0-9a-f]+$/i,vn=/^0b[01]+$/i,_n=/^\[object .+?Constructor\]$/,gn=/^0o[0-7]+$/i,yn=/^(?:0|[1-9]\d*)$/,dn=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,wn=/($^)/,bn=/['\n\r\u2028\u2029\\]/g,mn="\\ud800-\\udfff",xn="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",jn="\\u2700-\\u27bf",An="a-z\\xdf-\\xf6\\xf8-\\xff",kn="A-Z\\xc0-\\xd6\\xd8-\\xde",On="\\ufe0e\\ufe0f",En="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",In="["+mn+"]",Rn="["+En+"]",zn="["+xn+"]",Sn="\\d+",Cn="["+jn+"]",Ln="["+An+"]",Wn="[^"+mn+En+Sn+jn+An+kn+"]",Tn="\\ud83c[\\udffb-\\udfff]",Un="[^"+mn+"]",Bn="(?:\\ud83c[\\udde6-\\uddff]){2}",Dn="[\\ud800-\\udbff][\\udc00-\\udfff]",$n="["+kn+"]",Mn="\\u200d",Fn="(?:"+Ln+"|"+Wn+")",Nn="(?:"+$n+"|"+Wn+")",Pn="(?:['’](?:d|ll|m|re|s|t|ve))?",qn="(?:['’](?:D|LL|M|RE|S|T|VE))?",Zn="(?:"+zn+"|"+Tn+")?",Kn="["+On+"]?",Vn=Kn+Zn+"(?:"+Mn+"(?:"+[Un,Bn,Dn].join("|")+")"+Kn+Zn+")*",Gn="(?:"+[Cn,Bn,Dn].join("|")+")"+Vn,Hn="(?:"+[Un+zn+"?",zn,Bn,Dn,In].join("|")+")",Jn=RegExp("['’]","g"),Yn=RegExp(zn,"g"),Qn=RegExp(Tn+"(?="+Tn+")|"+Hn+Vn,"g"),Xn=RegExp([$n+"?"+Ln+"+"+Pn+"(?="+[Rn,$n,"$"].join("|")+")",Nn+"+"+qn+"(?="+[Rn,$n+Fn,"$"].join("|")+")",$n+"?"+Fn+"+"+Pn,$n+"+"+qn,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Sn,Gn].join("|"),"g"),nt=RegExp("["+Mn+mn+xn+On+"]"),tt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,rt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],et=-1,ut={};ut[C]=ut[L]=ut[W]=ut[T]=ut[U]=ut[B]=ut[D]=ut[$]=ut[M]=!0,ut[v]=ut[_]=ut[z]=ut[g]=ut[S]=ut[y]=ut[d]=ut[w]=ut[m]=ut[x]=ut[j]=ut[k]=ut[O]=ut[E]=ut[R]=!1;var it={};it[v]=it[_]=it[z]=it[S]=it[g]=it[y]=it[C]=it[L]=it[W]=it[T]=it[U]=it[m]=it[x]=it[j]=it[k]=it[O]=it[E]=it[I]=it[B]=it[D]=it[$]=it[M]=!0,it[d]=it[w]=it[R]=!1;var ot={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},ft=parseFloat,at=parseInt,ct="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,lt="object"==typeof self&&self&&self.Object===Object&&self,st=ct||lt||Function("return this")(),ht=t&&!t.nodeType&&t,pt=ht&&n&&!n.nodeType&&n,vt=pt&&pt.exports===ht,_t=vt&&ct.process,gt=function(){try{return pt&&pt.require&&pt.require("util").types||_t&&_t.binding&&_t.binding("util")}catch(n){}}(),yt=gt&&gt.isArrayBuffer,dt=gt&&gt.isDate,wt=gt&&gt.isMap,bt=gt&&gt.isRegExp,mt=gt&&gt.isSet,xt=gt&&gt.isTypedArray;function jt(n,t,r){switch(r.length){case 0:return n.call(t);case 1:return n.call(t,r[0]);case 2:return n.call(t,r[0],r[1]);case 3:return n.call(t,r[0],r[1],r[2])}return n.apply(t,r)}function At(n,t,r,e){for(var u=-1,i=null==n?0:n.length;++u<i;){var o=n[u];t(e,o,r(o),n)}return e}function kt(n,t){for(var r=-1,e=null==n?0:n.length;++r<e&&!1!==t(n[r],r,n););return n}function Ot(n,t){for(var r=null==n?0:n.length;r--&&!1!==t(n[r],r,n););return n}function Et(n,t){for(var r=-1,e=null==n?0:n.length;++r<e;)if(!t(n[r],r,n))return!1;return!0}function It(n,t){for(var r=-1,e=null==n?0:n.length,u=0,i=[];++r<e;){var o=n[r];t(o,r,n)&&(i[u++]=o)}return i}function Rt(n,t){return!(null==n||!n.length)&&$t(n,t,0)>-1}function zt(n,t,r){for(var e=-1,u=null==n?0:n.length;++e<u;)if(r(t,n[e]))return!0;return!1}function St(n,t){for(var r=-1,e=null==n?0:n.length,u=Array(e);++r<e;)u[r]=t(n[r],r,n);return u}function Ct(n,t){for(var r=-1,e=t.length,u=n.length;++r<e;)n[u+r]=t[r];return n}function Lt(n,t,r,e){var u=-1,i=null==n?0:n.length;for(e&&i&&(r=n[++u]);++u<i;)r=t(r,n[u],u,n);return r}function Wt(n,t,r,e){var u=null==n?0:n.length;for(e&&u&&(r=n[--u]);u--;)r=t(r,n[u],u,n);return r}function Tt(n,t){for(var r=-1,e=null==n?0:n.length;++r<e;)if(t(n[r],r,n))return!0;return!1}var Ut=Pt("length");function Bt(n,t,r){var e;return r(n,function(n,r,u){if(t(n,r,u))return e=r,!1}),e}function Dt(n,t,r,e){for(var u=n.length,i=r+(e?1:-1);e?i--:++i<u;)if(t(n[i],i,n))return i;return-1}function $t(n,t,r){return t==t?function(n,t,r){for(var e=r-1,u=n.length;++e<u;)if(n[e]===t)return e;return-1}(n,t,r):Dt(n,Ft,r)}function Mt(n,t,r,e){for(var u=r-1,i=n.length;++u<i;)if(e(n[u],t))return u;return-1}function Ft(n){return n!=n}function Nt(n,t){var r=null==n?0:n.length;return r?Kt(n,t)/r:s}function Pt(n){return function(t){return null==t?e:t[n]}}function qt(n){return function(t){return null==n?e:n[t]}}function Zt(n,t,r,e,u){return u(n,function(n,u,i){r=e?(e=!1,n):t(r,n,u,i)}),r}function Kt(n,t){for(var r,u=-1,i=n.length;++u<i;){var o=t(n[u]);o!==e&&(r=r===e?o:r+o)}return r}function Vt(n,t){for(var r=-1,e=Array(n);++r<n;)e[r]=t(r);return e}function Gt(n){return n?n.slice(0,sr(n)+1).replace(rn,""):n}function Ht(n){return function(t){return n(t)}}function Jt(n,t){return St(t,function(t){return n[t]})}function Yt(n,t){return n.has(t)}function Qt(n,t){for(var r=-1,e=n.length;++r<e&&$t(t,n[r],0)>-1;);return r}function Xt(n,t){for(var r=n.length;r--&&$t(t,n[r],0)>-1;);return r}var nr=qt({À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",Ĳ:"IJ",ĳ:"ij",Œ:"Oe",œ:"oe",ŉ:"'n",ſ:"s"}),tr=qt({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"});function rr(n){return"\\"+ot[n]}function er(n){return nt.test(n)}function ur(n){var t=-1,r=Array(n.size);return n.forEach(function(n,e){r[++t]=[e,n]}),r}function ir(n,t){return function(r){return n(t(r))}}function or(n,t){for(var r=-1,e=n.length,u=0,i=[];++r<e;){var f=n[r];f!==t&&f!==o||(n[r]=o,i[u++]=r)}return i}function fr(n){var t=-1,r=Array(n.size);return n.forEach(function(n){r[++t]=n}),r}function ar(n){var t=-1,r=Array(n.size);return n.forEach(function(n){r[++t]=[n,n]}),r}function cr(n){return er(n)?function(n){for(var t=Qn.lastIndex=0;Qn.test(n);)++t;return t}(n):Ut(n)}function lr(n){return er(n)?function(n){return n.match(Qn)||[]}(n):function(n){return n.split("")}(n)}function sr(n){for(var t=n.length;t--&&en.test(n.charAt(t)););return t}var hr=qt({"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"}),pr=function n(t){var r,en=(t=null==t?st:pr.defaults(st.Object(),t,pr.pick(st,rt))).Array,mn=t.Date,xn=t.Error,jn=t.Function,An=t.Math,kn=t.Object,On=t.RegExp,En=t.String,In=t.TypeError,Rn=en.prototype,zn=jn.prototype,Sn=kn.prototype,Cn=t["__core-js_shared__"],Ln=zn.toString,Wn=Sn.hasOwnProperty,Tn=0,Un=(r=/[^.]+$/.exec(Cn&&Cn.keys&&Cn.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"",Bn=Sn.toString,Dn=Ln.call(kn),$n=st._,Mn=On("^"+Ln.call(Wn).replace(nn,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Fn=vt?t.Buffer:e,Nn=t.Symbol,Pn=t.Uint8Array,qn=Fn?Fn.allocUnsafe:e,Zn=ir(kn.getPrototypeOf,kn),Kn=kn.create,Vn=Sn.propertyIsEnumerable,Gn=Rn.splice,Hn=Nn?Nn.isConcatSpreadable:e,Qn=Nn?Nn.iterator:e,nt=Nn?Nn.toStringTag:e,ot=function(){try{var n=ai(kn,"defineProperty");return n({},"",{}),n}catch(n){}}(),ct=t.clearTimeout!==st.clearTimeout&&t.clearTimeout,lt=mn&&mn.now!==st.Date.now&&mn.now,ht=t.setTimeout!==st.setTimeout&&t.setTimeout,pt=An.ceil,_t=An.floor,gt=kn.getOwnPropertySymbols,Ut=Fn?Fn.isBuffer:e,qt=t.isFinite,vr=Rn.join,_r=ir(kn.keys,kn),gr=An.max,yr=An.min,dr=mn.now,wr=t.parseInt,br=An.random,mr=Rn.reverse,xr=ai(t,"DataView"),jr=ai(t,"Map"),Ar=ai(t,"Promise"),kr=ai(t,"Set"),Or=ai(t,"WeakMap"),Er=ai(kn,"create"),Ir=Or&&new Or,Rr={},zr=Ui(xr),Sr=Ui(jr),Cr=Ui(Ar),Lr=Ui(kr),Wr=Ui(Or),Tr=Nn?Nn.prototype:e,Ur=Tr?Tr.valueOf:e,Br=Tr?Tr.toString:e;function Dr(n){if(nf(n)&&!Po(n)&&!(n instanceof Nr)){if(n instanceof Fr)return n;if(Wn.call(n,"__wrapped__"))return Bi(n)}return new Fr(n)}var $r=function(){function n(){}return function(t){if(!Xo(t))return{};if(Kn)return Kn(t);n.prototype=t;var r=new n;return n.prototype=e,r}}();function Mr(){}function Fr(n,t){this.__wrapped__=n,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=e}function Nr(n){this.__wrapped__=n,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=h,this.__views__=[]}function Pr(n){var t=-1,r=null==n?0:n.length;for(this.clear();++t<r;){var e=n[t];this.set(e[0],e[1])}}function qr(n){var t=-1,r=null==n?0:n.length;for(this.clear();++t<r;){var e=n[t];this.set(e[0],e[1])}}function Zr(n){var t=-1,r=null==n?0:n.length;for(this.clear();++t<r;){var e=n[t];this.set(e[0],e[1])}}function Kr(n){var t=-1,r=null==n?0:n.length;for(this.__data__=new Zr;++t<r;)this.add(n[t])}function Vr(n){var t=this.__data__=new qr(n);this.size=t.size}function Gr(n,t){var r=Po(n),e=!r&&No(n),u=!r&&!e&&Vo(n),i=!r&&!e&&!u&&cf(n),o=r||e||u||i,f=o?Vt(n.length,En):[],a=f.length;for(var c in n)!t&&!Wn.call(n,c)||o&&("length"==c||u&&("offset"==c||"parent"==c)||i&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||_i(c,a))||f.push(c);return f}function Hr(n){var t=n.length;return t?n[Ze(0,t-1)]:e}function Jr(n,t){return Si(Ou(n),ie(t,0,n.length))}function Yr(n){return Si(Ou(n))}function Qr(n,t,r){(r!==e&&!$o(n[t],r)||r===e&&!(t in n))&&ee(n,t,r)}function Xr(n,t,r){var u=n[t];Wn.call(n,t)&&$o(u,r)&&(r!==e||t in n)||ee(n,t,r)}function ne(n,t){for(var r=n.length;r--;)if($o(n[r][0],t))return r;return-1}function te(n,t,r,e){return le(n,function(n,u,i){t(e,n,r(n),i)}),e}function re(n,t){return n&&Eu(t,Sf(t),n)}function ee(n,t,r){"__proto__"==t&&ot?ot(n,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):n[t]=r}function ue(n,t){for(var r=-1,u=t.length,i=en(u),o=null==n;++r<u;)i[r]=o?e:Of(n,t[r]);return i}function ie(n,t,r){return n==n&&(r!==e&&(n=n<=r?n:r),t!==e&&(n=n>=t?n:t)),n}function oe(n,t,r,u,i,o){var f,a=1&t,c=2&t,l=4&t;if(r&&(f=i?r(n,u,i,o):r(n)),f!==e)return f;if(!Xo(n))return n;var s=Po(n);if(s){if(f=function(n){var t=n.length,r=new n.constructor(t);return t&&"string"==typeof n[0]&&Wn.call(n,"index")&&(r.index=n.index,r.input=n.input),r}(n),!a)return Ou(n,f)}else{var h=si(n),p=h==w||h==b;if(Vo(n))return bu(n,a);if(h==j||h==v||p&&!i){if(f=c||p?{}:pi(n),!a)return c?function(n,t){return Eu(n,li(n),t)}(n,function(n,t){return n&&Eu(t,Cf(t),n)}(f,n)):function(n,t){return Eu(n,ci(n),t)}(n,re(f,n))}else{if(!it[h])return i?n:{};f=function(n,t,r){var e,u=n.constructor;switch(t){case z:return mu(n);case g:case y:return new u(+n);case S:return function(n,t){var r=t?mu(n.buffer):n.buffer;return new n.constructor(r,n.byteOffset,n.byteLength)}(n,r);case C:case L:case W:case T:case U:case B:case D:case $:case M:return xu(n,r);case m:return new u;case x:case E:return new u(n);case k:return function(n){var t=new n.constructor(n.source,hn.exec(n));return t.lastIndex=n.lastIndex,t}(n);case O:return new u;case I:return e=n,Ur?kn(Ur.call(e)):{}}}(n,h,a)}}o||(o=new Vr);var _=o.get(n);if(_)return _;o.set(n,f),of(n)?n.forEach(function(e){f.add(oe(e,t,r,e,n,o))}):tf(n)&&n.forEach(function(e,u){f.set(u,oe(e,t,r,u,n,o))});var d=s?e:(l?c?ti:ni:c?Cf:Sf)(n);return kt(d||n,function(e,u){d&&(e=n[u=e]),Xr(f,u,oe(e,t,r,u,n,o))}),f}function fe(n,t,r){var u=r.length;if(null==n)return!u;for(n=kn(n);u--;){var i=r[u],o=t[i],f=n[i];if(f===e&&!(i in n)||!o(f))return!1}return!0}function ae(n,t,r){if("function"!=typeof n)throw new In(u);return Ei(function(){n.apply(e,r)},t)}function ce(n,t,r,e){var u=-1,i=Rt,o=!0,f=n.length,a=[],c=t.length;if(!f)return a;r&&(t=St(t,Ht(r))),e?(i=zt,o=!1):t.length>=200&&(i=Yt,o=!1,t=new Kr(t));n:for(;++u<f;){var l=n[u],s=null==r?l:r(l);if(l=e||0!==l?l:0,o&&s==s){for(var h=c;h--;)if(t[h]===s)continue n;a.push(l)}else i(t,s,e)||a.push(l)}return a}Dr.templateSettings={escape:G,evaluate:H,interpolate:J,variable:"",imports:{_:Dr}},Dr.prototype=Mr.prototype,Dr.prototype.constructor=Dr,Fr.prototype=$r(Mr.prototype),Fr.prototype.constructor=Fr,Nr.prototype=$r(Mr.prototype),Nr.prototype.constructor=Nr,Pr.prototype.clear=function(){this.__data__=Er?Er(null):{},this.size=0},Pr.prototype.delete=function(n){var t=this.has(n)&&delete this.__data__[n];return this.size-=t?1:0,t},Pr.prototype.get=function(n){var t=this.__data__;if(Er){var r=t[n];return r===i?e:r}return Wn.call(t,n)?t[n]:e},Pr.prototype.has=function(n){var t=this.__data__;return Er?t[n]!==e:Wn.call(t,n)},Pr.prototype.set=function(n,t){var r=this.__data__;return this.size+=this.has(n)?0:1,r[n]=Er&&t===e?i:t,this},qr.prototype.clear=function(){this.__data__=[],this.size=0},qr.prototype.delete=function(n){var t=this.__data__,r=ne(t,n);return!(r<0||(r==t.length-1?t.pop():Gn.call(t,r,1),--this.size,0))},qr.prototype.get=function(n){var t=this.__data__,r=ne(t,n);return r<0?e:t[r][1]},qr.prototype.has=function(n){return ne(this.__data__,n)>-1},qr.prototype.set=function(n,t){var r=this.__data__,e=ne(r,n);return e<0?(++this.size,r.push([n,t])):r[e][1]=t,this},Zr.prototype.clear=function(){this.size=0,this.__data__={hash:new Pr,map:new(jr||qr),string:new Pr}},Zr.prototype.delete=function(n){var t=oi(this,n).delete(n);return this.size-=t?1:0,t},Zr.prototype.get=function(n){return oi(this,n).get(n)},Zr.prototype.has=function(n){return oi(this,n).has(n)},Zr.prototype.set=function(n,t){var r=oi(this,n),e=r.size;return r.set(n,t),this.size+=r.size==e?0:1,this},Kr.prototype.add=Kr.prototype.push=function(n){return this.__data__.set(n,i),this},Kr.prototype.has=function(n){return this.__data__.has(n)},Vr.prototype.clear=function(){this.__data__=new qr,this.size=0},Vr.prototype.delete=function(n){var t=this.__data__,r=t.delete(n);return this.size=t.size,r},Vr.prototype.get=function(n){return this.__data__.get(n)},Vr.prototype.has=function(n){return this.__data__.has(n)},Vr.prototype.set=function(n,t){var r=this.__data__;if(r instanceof qr){var e=r.__data__;if(!jr||e.length<199)return e.push([n,t]),this.size=++r.size,this;r=this.__data__=new Zr(e)}return r.set(n,t),this.size=r.size,this};var le=zu(de),se=zu(we,!0);function he(n,t){var r=!0;return le(n,function(n,e,u){return r=!!t(n,e,u)}),r}function pe(n,t,r){for(var u=-1,i=n.length;++u<i;){var o=n[u],f=t(o);if(null!=f&&(a===e?f==f&&!af(f):r(f,a)))var a=f,c=o}return c}function ve(n,t){var r=[];return le(n,function(n,e,u){t(n,e,u)&&r.push(n)}),r}function _e(n,t,r,e,u){var i=-1,o=n.length;for(r||(r=vi),u||(u=[]);++i<o;){var f=n[i];t>0&&r(f)?t>1?_e(f,t-1,r,e,u):Ct(u,f):e||(u[u.length]=f)}return u}var ge=Su(),ye=Su(!0);function de(n,t){return n&&ge(n,t,Sf)}function we(n,t){return n&&ye(n,t,Sf)}function be(n,t){return It(t,function(t){return Jo(n[t])})}function me(n,t){for(var r=0,u=(t=gu(t,n)).length;null!=n&&r<u;)n=n[Ti(t[r++])];return r&&r==u?n:e}function xe(n,t,r){var e=t(n);return Po(n)?e:Ct(e,r(n))}function je(n){return null==n?n===e?"[object Undefined]":"[object Null]":nt&&nt in kn(n)?function(n){var t=Wn.call(n,nt),r=n[nt];try{n[nt]=e;var u=!0}catch(n){}var i=Bn.call(n);return u&&(t?n[nt]=r:delete n[nt]),i}(n):function(n){return Bn.call(n)}(n)}function Ae(n,t){return n>t}function ke(n,t){return null!=n&&Wn.call(n,t)}function Oe(n,t){return null!=n&&t in kn(n)}function Ee(n,t,r){for(var u=r?zt:Rt,i=n[0].length,o=n.length,f=o,a=en(o),c=1/0,l=[];f--;){var s=n[f];f&&t&&(s=St(s,Ht(t))),c=yr(s.length,c),a[f]=!r&&(t||i>=120&&s.length>=120)?new Kr(f&&s):e}s=n[0];var h=-1,p=a[0];n:for(;++h<i&&l.length<c;){var v=s[h],_=t?t(v):v;if(v=r||0!==v?v:0,!(p?Yt(p,_):u(l,_,r))){for(f=o;--f;){var g=a[f];if(!(g?Yt(g,_):u(n[f],_,r)))continue n}p&&p.push(_),l.push(v)}}return l}function Ie(n,t,r){var u=null==(n=Ai(n,t=gu(t,n)))?n:n[Ti(Gi(t))];return null==u?e:jt(u,n,r)}function Re(n){return nf(n)&&je(n)==v}function ze(n,t,r,u,i){return n===t||(null==n||null==t||!nf(n)&&!nf(t)?n!=n&&t!=t:function(n,t,r,u,i,o){var f=Po(n),a=Po(t),c=f?_:si(n),l=a?_:si(t),s=(c=c==v?j:c)==j,h=(l=l==v?j:l)==j,p=c==l;if(p&&Vo(n)){if(!Vo(t))return!1;f=!0,s=!1}if(p&&!s)return o||(o=new Vr),f||cf(n)?Qu(n,t,r,u,i,o):function(n,t,r,e,u,i,o){switch(r){case S:if(n.byteLength!=t.byteLength||n.byteOffset!=t.byteOffset)return!1;n=n.buffer,t=t.buffer;case z:return!(n.byteLength!=t.byteLength||!i(new Pn(n),new Pn(t)));case g:case y:case x:return $o(+n,+t);case d:return n.name==t.name&&n.message==t.message;case k:case E:return n==t+"";case m:var f=ur;case O:var a=1&e;if(f||(f=fr),n.size!=t.size&&!a)return!1;var c=o.get(n);if(c)return c==t;e|=2,o.set(n,t);var l=Qu(f(n),f(t),e,u,i,o);return o.delete(n),l;case I:if(Ur)return Ur.call(n)==Ur.call(t)}return!1}(n,t,c,r,u,i,o);if(!(1&r)){var w=s&&Wn.call(n,"__wrapped__"),b=h&&Wn.call(t,"__wrapped__");if(w||b){var A=w?n.value():n,R=b?t.value():t;return o||(o=new Vr),i(A,R,r,u,o)}}return!!p&&(o||(o=new Vr),function(n,t,r,u,i,o){var f=1&r,a=ni(n),c=a.length;if(c!=ni(t).length&&!f)return!1;for(var l=c;l--;){var s=a[l];if(!(f?s in t:Wn.call(t,s)))return!1}var h=o.get(n),p=o.get(t);if(h&&p)return h==t&&p==n;var v=!0;o.set(n,t),o.set(t,n);for(var _=f;++l<c;){var g=n[s=a[l]],y=t[s];if(u)var d=f?u(y,g,s,t,n,o):u(g,y,s,n,t,o);if(!(d===e?g===y||i(g,y,r,u,o):d)){v=!1;break}_||(_="constructor"==s)}if(v&&!_){var w=n.constructor,b=t.constructor;w==b||!("constructor"in n)||!("constructor"in t)||"function"==typeof w&&w instanceof w&&"function"==typeof b&&b instanceof b||(v=!1)}return o.delete(n),o.delete(t),v}(n,t,r,u,i,o))}(n,t,r,u,ze,i))}function Se(n,t,r,u){var i=r.length,o=i,f=!u;if(null==n)return!o;for(n=kn(n);i--;){var a=r[i];if(f&&a[2]?a[1]!==n[a[0]]:!(a[0]in n))return!1}for(;++i<o;){var c=(a=r[i])[0],l=n[c],s=a[1];if(f&&a[2]){if(l===e&&!(c in n))return!1}else{var h=new Vr;if(u)var p=u(l,s,c,n,t,h);if(!(p===e?ze(s,l,3,u,h):p))return!1}}return!0}function Ce(n){return!(!Xo(n)||(t=n,Un&&Un in t))&&(Jo(n)?Mn:_n).test(Ui(n));var t}function Le(n){return"function"==typeof n?n:null==n?ea:"object"==typeof n?Po(n)?De(n[0],n[1]):Be(n):ha(n)}function We(n){if(!bi(n))return _r(n);var t=[];for(var r in kn(n))Wn.call(n,r)&&"constructor"!=r&&t.push(r);return t}function Te(n,t){return n<t}function Ue(n,t){var r=-1,e=Zo(n)?en(n.length):[];return le(n,function(n,u,i){e[++r]=t(n,u,i)}),e}function Be(n){var t=fi(n);return 1==t.length&&t[0][2]?xi(t[0][0],t[0][1]):function(r){return r===n||Se(r,n,t)}}function De(n,t){return yi(n)&&mi(t)?xi(Ti(n),t):function(r){var u=Of(r,n);return u===e&&u===t?Ef(r,n):ze(t,u,3)}}function $e(n,t,r,u,i){n!==t&&ge(t,function(o,f){if(i||(i=new Vr),Xo(o))!function(n,t,r,u,i,o,f){var a=ki(n,r),c=ki(t,r),l=f.get(c);if(l)Qr(n,r,l);else{var s=o?o(a,c,r+"",n,t,f):e,h=s===e;if(h){var p=Po(c),v=!p&&Vo(c),_=!p&&!v&&cf(c);s=c,p||v||_?Po(a)?s=a:Ko(a)?s=Ou(a):v?(h=!1,s=bu(c,!0)):_?(h=!1,s=xu(c,!0)):s=[]:ef(c)||No(c)?(s=a,No(a)?s=yf(a):Xo(a)&&!Jo(a)||(s=pi(c))):h=!1}h&&(f.set(c,s),i(s,c,u,o,f),f.delete(c)),Qr(n,r,s)}}(n,t,f,r,$e,u,i);else{var a=u?u(ki(n,f),o,f+"",n,t,i):e;a===e&&(a=o),Qr(n,f,a)}},Cf)}function Me(n,t){var r=n.length;if(r)return _i(t+=t<0?r:0,r)?n[t]:e}function Fe(n,t,r){t=t.length?St(t,function(n){return Po(n)?function(t){return me(t,1===n.length?n[0]:n)}:n}):[ea];var e=-1;t=St(t,Ht(ii()));var u=Ue(n,function(n,r,u){var i=St(t,function(t){return t(n)});return{criteria:i,index:++e,value:n}});return function(n){var t=n.length;for(n.sort(function(n,t){return function(n,t,r){for(var e=-1,u=n.criteria,i=t.criteria,o=u.length,f=r.length;++e<o;){var a=ju(u[e],i[e]);if(a)return e>=f?a:a*("desc"==r[e]?-1:1)}return n.index-t.index}(n,t,r)});t--;)n[t]=n[t].value;return n}(u)}function Ne(n,t,r){for(var e=-1,u=t.length,i={};++e<u;){var o=t[e],f=me(n,o);r(f,o)&&Je(i,gu(o,n),f)}return i}function Pe(n,t,r,e){var u=e?Mt:$t,i=-1,o=t.length,f=n;for(n===t&&(t=Ou(t)),r&&(f=St(n,Ht(r)));++i<o;)for(var a=0,c=t[i],l=r?r(c):c;(a=u(f,l,a,e))>-1;)f!==n&&Gn.call(f,a,1),Gn.call(n,a,1);return n}function qe(n,t){for(var r=n?t.length:0,e=r-1;r--;){var u=t[r];if(r==e||u!==i){var i=u;_i(u)?Gn.call(n,u,1):au(n,u)}}return n}function Ze(n,t){return n+_t(br()*(t-n+1))}function Ke(n,t){var r="";if(!n||t<1||t>l)return r;do{t%2&&(r+=n),(t=_t(t/2))&&(n+=n)}while(t);return r}function Ve(n,t){return Ii(ji(n,t,ea),n+"")}function Ge(n){return Hr(Mf(n))}function He(n,t){var r=Mf(n);return Si(r,ie(t,0,r.length))}function Je(n,t,r,u){if(!Xo(n))return n;for(var i=-1,o=(t=gu(t,n)).length,f=o-1,a=n;null!=a&&++i<o;){var c=Ti(t[i]),l=r;if("__proto__"===c||"constructor"===c||"prototype"===c)return n;if(i!=f){var s=a[c];(l=u?u(s,c,a):e)===e&&(l=Xo(s)?s:_i(t[i+1])?[]:{})}Xr(a,c,l),a=a[c]}return n}var Ye=Ir?function(n,t){return Ir.set(n,t),n}:ea,Qe=ot?function(n,t){return ot(n,"toString",{configurable:!0,enumerable:!1,value:na(t),writable:!0})}:ea;function Xe(n){return Si(Mf(n))}function nu(n,t,r){var e=-1,u=n.length;t<0&&(t=-t>u?0:u+t),(r=r>u?u:r)<0&&(r+=u),u=t>r?0:r-t>>>0,t>>>=0;for(var i=en(u);++e<u;)i[e]=n[e+t];return i}function tu(n,t){var r;return le(n,function(n,e,u){return!(r=t(n,e,u))}),!!r}function ru(n,t,r){var e=0,u=null==n?e:n.length;if("number"==typeof t&&t==t&&u<=2147483647){for(;e<u;){var i=e+u>>>1,o=n[i];null!==o&&!af(o)&&(r?o<=t:o<t)?e=i+1:u=i}return u}return eu(n,t,ea,r)}function eu(n,t,r,u){var i=0,o=null==n?0:n.length;if(0===o)return 0;for(var f=(t=r(t))!=t,a=null===t,c=af(t),l=t===e;i<o;){var s=_t((i+o)/2),h=r(n[s]),p=h!==e,v=null===h,_=h==h,g=af(h);if(f)var y=u||_;else y=l?_&&(u||p):a?_&&p&&(u||!v):c?_&&p&&!v&&(u||!g):!v&&!g&&(u?h<=t:h<t);y?i=s+1:o=s}return yr(o,4294967294)}function uu(n,t){for(var r=-1,e=n.length,u=0,i=[];++r<e;){var o=n[r],f=t?t(o):o;if(!r||!$o(f,a)){var a=f;i[u++]=0===o?0:o}}return i}function iu(n){return"number"==typeof n?n:af(n)?s:+n}function ou(n){if("string"==typeof n)return n;if(Po(n))return St(n,ou)+"";if(af(n))return Br?Br.call(n):"";var t=n+"";return"0"==t&&1/n==-1/0?"-0":t}function fu(n,t,r){var e=-1,u=Rt,i=n.length,o=!0,f=[],a=f;if(r)o=!1,u=zt;else if(i>=200){var c=t?null:Ku(n);if(c)return fr(c);o=!1,u=Yt,a=new Kr}else a=t?[]:f;n:for(;++e<i;){var l=n[e],s=t?t(l):l;if(l=r||0!==l?l:0,o&&s==s){for(var h=a.length;h--;)if(a[h]===s)continue n;t&&a.push(s),f.push(l)}else u(a,s,r)||(a!==f&&a.push(s),f.push(l))}return f}function au(n,t){return null==(n=Ai(n,t=gu(t,n)))||delete n[Ti(Gi(t))]}function cu(n,t,r,e){return Je(n,t,r(me(n,t)),e)}function lu(n,t,r,e){for(var u=n.length,i=e?u:-1;(e?i--:++i<u)&&t(n[i],i,n););return r?nu(n,e?0:i,e?i+1:u):nu(n,e?i+1:0,e?u:i)}function su(n,t){var r=n;return r instanceof Nr&&(r=r.value()),Lt(t,function(n,t){return t.func.apply(t.thisArg,Ct([n],t.args))},r)}function hu(n,t,r){var e=n.length;if(e<2)return e?fu(n[0]):[];for(var u=-1,i=en(e);++u<e;)for(var o=n[u],f=-1;++f<e;)f!=u&&(i[u]=ce(i[u]||o,n[f],t,r));return fu(_e(i,1),t,r)}function pu(n,t,r){for(var u=-1,i=n.length,o=t.length,f={};++u<i;){var a=u<o?t[u]:e;r(f,n[u],a)}return f}function vu(n){return Ko(n)?n:[]}function _u(n){return"function"==typeof n?n:ea}function gu(n,t){return Po(n)?n:yi(n,t)?[n]:Wi(df(n))}var yu=Ve;function du(n,t,r){var u=n.length;return r=r===e?u:r,!t&&r>=u?n:nu(n,t,r)}var wu=ct||function(n){return st.clearTimeout(n)};function bu(n,t){if(t)return n.slice();var r=n.length,e=qn?qn(r):new n.constructor(r);return n.copy(e),e}function mu(n){var t=new n.constructor(n.byteLength);return new Pn(t).set(new Pn(n)),t}function xu(n,t){var r=t?mu(n.buffer):n.buffer;return new n.constructor(r,n.byteOffset,n.length)}function ju(n,t){if(n!==t){var r=n!==e,u=null===n,i=n==n,o=af(n),f=t!==e,a=null===t,c=t==t,l=af(t);if(!a&&!l&&!o&&n>t||o&&f&&c&&!a&&!l||u&&f&&c||!r&&c||!i)return 1;if(!u&&!o&&!l&&n<t||l&&r&&i&&!u&&!o||a&&r&&i||!f&&i||!c)return-1}return 0}function Au(n,t,r,e){for(var u=-1,i=n.length,o=r.length,f=-1,a=t.length,c=gr(i-o,0),l=en(a+c),s=!e;++f<a;)l[f]=t[f];for(;++u<o;)(s||u<i)&&(l[r[u]]=n[u]);for(;c--;)l[f++]=n[u++];return l}function ku(n,t,r,e){for(var u=-1,i=n.length,o=-1,f=r.length,a=-1,c=t.length,l=gr(i-f,0),s=en(l+c),h=!e;++u<l;)s[u]=n[u];for(var p=u;++a<c;)s[p+a]=t[a];for(;++o<f;)(h||u<i)&&(s[p+r[o]]=n[u++]);return s}function Ou(n,t){var r=-1,e=n.length;for(t||(t=en(e));++r<e;)t[r]=n[r];return t}function Eu(n,t,r,u){var i=!r;r||(r={});for(var o=-1,f=t.length;++o<f;){var a=t[o],c=u?u(r[a],n[a],a,r,n):e;c===e&&(c=n[a]),i?ee(r,a,c):Xr(r,a,c)}return r}function Iu(n,t){return function(r,e){var u=Po(r)?At:te,i=t?t():{};return u(r,n,ii(e,2),i)}}function Ru(n){return Ve(function(t,r){var u=-1,i=r.length,o=i>1?r[i-1]:e,f=i>2?r[2]:e;for(o=n.length>3&&"function"==typeof o?(i--,o):e,f&&gi(r[0],r[1],f)&&(o=i<3?e:o,i=1),t=kn(t);++u<i;){var a=r[u];a&&n(t,a,u,o)}return t})}function zu(n,t){return function(r,e){if(null==r)return r;if(!Zo(r))return n(r,e);for(var u=r.length,i=t?u:-1,o=kn(r);(t?i--:++i<u)&&!1!==e(o[i],i,o););return r}}function Su(n){return function(t,r,e){for(var u=-1,i=kn(t),o=e(t),f=o.length;f--;){var a=o[n?f:++u];if(!1===r(i[a],a,i))break}return t}}function Cu(n){return function(t){var r=er(t=df(t))?lr(t):e,u=r?r[0]:t.charAt(0),i=r?du(r,1).join(""):t.slice(1);return u[n]()+i}}function Lu(n){return function(t){return Lt(Yf(Pf(t).replace(Jn,"")),n,"")}}function Wu(n){return function(){var t=arguments;switch(t.length){case 0:return new n;case 1:return new n(t[0]);case 2:return new n(t[0],t[1]);case 3:return new n(t[0],t[1],t[2]);case 4:return new n(t[0],t[1],t[2],t[3]);case 5:return new n(t[0],t[1],t[2],t[3],t[4]);case 6:return new n(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new n(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var r=$r(n.prototype),e=n.apply(r,t);return Xo(e)?e:r}}function Tu(n){return function(t,r,u){var i=kn(t);if(!Zo(t)){var o=ii(r,3);t=Sf(t),r=function(n){return o(i[n],n,i)}}var f=n(t,r,u);return f>-1?i[o?t[f]:f]:e}}function Uu(n){return Xu(function(t){var r=t.length,i=r,o=Fr.prototype.thru;for(n&&t.reverse();i--;){var f=t[i];if("function"!=typeof f)throw new In(u);if(o&&!a&&"wrapper"==ei(f))var a=new Fr([],!0)}for(i=a?i:r;++i<r;){var c=ei(f=t[i]),l="wrapper"==c?ri(f):e;a=l&&di(l[0])&&424==l[1]&&!l[4].length&&1==l[9]?a[ei(l[0])].apply(a,l[3]):1==f.length&&di(f)?a[c]():a.thru(f)}return function(){var n=arguments,e=n[0];if(a&&1==n.length&&Po(e))return a.plant(e).value();for(var u=0,i=r?t[u].apply(this,n):e;++u<r;)i=t[u].call(this,i);return i}})}function Bu(n,t,r,u,i,o,f,c,l,s){var h=t&a,p=1&t,v=2&t,_=24&t,g=512&t,y=v?e:Wu(n);return function a(){for(var d=arguments.length,w=en(d),b=d;b--;)w[b]=arguments[b];if(_)var m=ui(a),x=function(n,t){for(var r=n.length,e=0;r--;)n[r]===t&&++e;return e}(w,m);if(u&&(w=Au(w,u,i,_)),o&&(w=ku(w,o,f,_)),d-=x,_&&d<s){var j=or(w,m);return qu(n,t,Bu,a.placeholder,r,w,j,c,l,s-d)}var A=p?r:this,k=v?A[n]:n;return d=w.length,c?w=function(n,t){for(var r=n.length,u=yr(t.length,r),i=Ou(n);u--;){var o=t[u];n[u]=_i(o,r)?i[o]:e}return n}(w,c):g&&d>1&&w.reverse(),h&&l<d&&(w.length=l),this&&this!==st&&this instanceof a&&(k=y||Wu(k)),k.apply(A,w)}}function Du(n,t){return function(r,e){return function(n,t,r,e){return de(n,function(n,u,i){t(e,r(n),u,i)}),e}(r,n,t(e),{})}}function $u(n,t){return function(r,u){var i;if(r===e&&u===e)return t;if(r!==e&&(i=r),u!==e){if(i===e)return u;"string"==typeof r||"string"==typeof u?(r=ou(r),u=ou(u)):(r=iu(r),u=iu(u)),i=n(r,u)}return i}}function Mu(n){return Xu(function(t){return t=St(t,Ht(ii())),Ve(function(r){var e=this;return n(t,function(n){return jt(n,e,r)})})})}function Fu(n,t){var r=(t=t===e?" ":ou(t)).length;if(r<2)return r?Ke(t,n):t;var u=Ke(t,pt(n/cr(t)));return er(t)?du(lr(u),0,n).join(""):u.slice(0,n)}function Nu(n){return function(t,r,u){return u&&"number"!=typeof u&&gi(t,r,u)&&(r=u=e),t=pf(t),r===e?(r=t,t=0):r=pf(r),function(n,t,r,e){for(var u=-1,i=gr(pt((t-n)/(r||1)),0),o=en(i);i--;)o[e?i:++u]=n,n+=r;return o}(t,r,u=u===e?t<r?1:-1:pf(u),n)}}function Pu(n){return function(t,r){return"string"==typeof t&&"string"==typeof r||(t=gf(t),r=gf(r)),n(t,r)}}function qu(n,t,r,u,i,o,a,c,l,s){var h=8&t;t|=h?f:64,4&(t&=~(h?64:f))||(t&=-4);var p=[n,t,i,h?o:e,h?a:e,h?e:o,h?e:a,c,l,s],v=r.apply(e,p);return di(n)&&Oi(v,p),v.placeholder=u,Ri(v,n,t)}function Zu(n){var t=An[n];return function(n,r){if(n=gf(n),(r=null==r?0:yr(vf(r),292))&&qt(n)){var e=(df(n)+"e").split("e");return+((e=(df(t(e[0]+"e"+(+e[1]+r)))+"e").split("e"))[0]+"e"+(+e[1]-r))}return t(n)}}var Ku=kr&&1/fr(new kr([,-0]))[1]==c?function(n){return new kr(n)}:aa;function Vu(n){return function(t){var r=si(t);return r==m?ur(t):r==O?ar(t):function(n,t){return St(t,function(t){return[t,n[t]]})}(t,n(t))}}function Gu(n,t,r,i,c,l,s,h){var p=2&t;if(!p&&"function"!=typeof n)throw new In(u);var v=i?i.length:0;if(v||(t&=-97,i=c=e),s=s===e?s:gr(vf(s),0),h=h===e?h:vf(h),v-=c?c.length:0,64&t){var _=i,g=c;i=c=e}var y=p?e:ri(n),d=[n,t,r,i,c,_,g,l,s,h];if(y&&function(n,t){var r=n[1],e=t[1],u=r|e,i=u<131,f=e==a&&8==r||e==a&&256==r&&n[7].length<=t[8]||384==e&&t[7].length<=t[8]&&8==r;if(!i&&!f)return n;1&e&&(n[2]=t[2],u|=1&r?0:4);var c=t[3];if(c){var l=n[3];n[3]=l?Au(l,c,t[4]):c,n[4]=l?or(n[3],o):t[4]}(c=t[5])&&(l=n[5],n[5]=l?ku(l,c,t[6]):c,n[6]=l?or(n[5],o):t[6]),(c=t[7])&&(n[7]=c),e&a&&(n[8]=null==n[8]?t[8]:yr(n[8],t[8])),null==n[9]&&(n[9]=t[9]),n[0]=t[0],n[1]=u}(d,y),n=d[0],t=d[1],r=d[2],i=d[3],c=d[4],!(h=d[9]=d[9]===e?p?0:n.length:gr(d[9]-v,0))&&24&t&&(t&=-25),t&&1!=t)w=8==t||16==t?function(n,t,r){var u=Wu(n);return function i(){for(var o=arguments.length,f=en(o),a=o,c=ui(i);a--;)f[a]=arguments[a];var l=o<3&&f[0]!==c&&f[o-1]!==c?[]:or(f,c);return(o-=l.length)<r?qu(n,t,Bu,i.placeholder,e,f,l,e,e,r-o):jt(this&&this!==st&&this instanceof i?u:n,this,f)}}(n,t,h):t!=f&&33!=t||c.length?Bu.apply(e,d):function(n,t,r,e){var u=1&t,i=Wu(n);return function t(){for(var o=-1,f=arguments.length,a=-1,c=e.length,l=en(c+f),s=this&&this!==st&&this instanceof t?i:n;++a<c;)l[a]=e[a];for(;f--;)l[a++]=arguments[++o];return jt(s,u?r:this,l)}}(n,t,r,i);else var w=function(n,t,r){var e=1&t,u=Wu(n);return function t(){return(this&&this!==st&&this instanceof t?u:n).apply(e?r:this,arguments)}}(n,t,r);return Ri((y?Ye:Oi)(w,d),n,t)}function Hu(n,t,r,u){return n===e||$o(n,Sn[r])&&!Wn.call(u,r)?t:n}function Ju(n,t,r,u,i,o){return Xo(n)&&Xo(t)&&(o.set(t,n),$e(n,t,e,Ju,o),o.delete(t)),n}function Yu(n){return ef(n)?e:n}function Qu(n,t,r,u,i,o){var f=1&r,a=n.length,c=t.length;if(a!=c&&!(f&&c>a))return!1;var l=o.get(n),s=o.get(t);if(l&&s)return l==t&&s==n;var h=-1,p=!0,v=2&r?new Kr:e;for(o.set(n,t),o.set(t,n);++h<a;){var _=n[h],g=t[h];if(u)var y=f?u(g,_,h,t,n,o):u(_,g,h,n,t,o);if(y!==e){if(y)continue;p=!1;break}if(v){if(!Tt(t,function(n,t){if(!Yt(v,t)&&(_===n||i(_,n,r,u,o)))return v.push(t)})){p=!1;break}}else if(_!==g&&!i(_,g,r,u,o)){p=!1;break}}return o.delete(n),o.delete(t),p}function Xu(n){return Ii(ji(n,e,Pi),n+"")}function ni(n){return xe(n,Sf,ci)}function ti(n){return xe(n,Cf,li)}var ri=Ir?function(n){return Ir.get(n)}:aa;function ei(n){for(var t=n.name+"",r=Rr[t],e=Wn.call(Rr,t)?r.length:0;e--;){var u=r[e],i=u.func;if(null==i||i==n)return u.name}return t}function ui(n){return(Wn.call(Dr,"placeholder")?Dr:n).placeholder}function ii(){var n=Dr.iteratee||ua;return n=n===ua?Le:n,arguments.length?n(arguments[0],arguments[1]):n}function oi(n,t){var r,e,u=n.__data__;return("string"==(e=typeof(r=t))||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==r:null===r)?u["string"==typeof t?"string":"hash"]:u.map}function fi(n){for(var t=Sf(n),r=t.length;r--;){var e=t[r],u=n[e];t[r]=[e,u,mi(u)]}return t}function ai(n,t){var r=function(n,t){return null==n?e:n[t]}(n,t);return Ce(r)?r:e}var ci=gt?function(n){return null==n?[]:(n=kn(n),It(gt(n),function(t){return Vn.call(n,t)}))}:_a,li=gt?function(n){for(var t=[];n;)Ct(t,ci(n)),n=Zn(n);return t}:_a,si=je;function hi(n,t,r){for(var e=-1,u=(t=gu(t,n)).length,i=!1;++e<u;){var o=Ti(t[e]);if(!(i=null!=n&&r(n,o)))break;n=n[o]}return i||++e!=u?i:!!(u=null==n?0:n.length)&&Qo(u)&&_i(o,u)&&(Po(n)||No(n))}function pi(n){return"function"!=typeof n.constructor||bi(n)?{}:$r(Zn(n))}function vi(n){return Po(n)||No(n)||!!(Hn&&n&&n[Hn])}function _i(n,t){var r=typeof n;return!!(t=null==t?l:t)&&("number"==r||"symbol"!=r&&yn.test(n))&&n>-1&&n%1==0&&n<t}function gi(n,t,r){if(!Xo(r))return!1;var e=typeof t;return!!("number"==e?Zo(r)&&_i(t,r.length):"string"==e&&t in r)&&$o(r[t],n)}function yi(n,t){if(Po(n))return!1;var r=typeof n;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=n&&!af(n))||Q.test(n)||!Y.test(n)||null!=t&&n in kn(t)}function di(n){var t=ei(n),r=Dr[t];if("function"!=typeof r||!(t in Nr.prototype))return!1;if(n===r)return!0;var e=ri(r);return!!e&&n===e[0]}(xr&&si(new xr(new ArrayBuffer(1)))!=S||jr&&si(new jr)!=m||Ar&&si(Ar.resolve())!=A||kr&&si(new kr)!=O||Or&&si(new Or)!=R)&&(si=function(n){var t=je(n),r=t==j?n.constructor:e,u=r?Ui(r):"";if(u)switch(u){case zr:return S;case Sr:return m;case Cr:return A;case Lr:return O;case Wr:return R}return t});var wi=Cn?Jo:ga;function bi(n){var t=n&&n.constructor;return n===("function"==typeof t&&t.prototype||Sn)}function mi(n){return n==n&&!Xo(n)}function xi(n,t){return function(r){return null!=r&&r[n]===t&&(t!==e||n in kn(r))}}function ji(n,t,r){return t=gr(t===e?n.length-1:t,0),function(){for(var e=arguments,u=-1,i=gr(e.length-t,0),o=en(i);++u<i;)o[u]=e[t+u];u=-1;for(var f=en(t+1);++u<t;)f[u]=e[u];return f[t]=r(o),jt(n,this,f)}}function Ai(n,t){return t.length<2?n:me(n,nu(t,0,-1))}function ki(n,t){if(("constructor"!==t||"function"!=typeof n[t])&&"__proto__"!=t)return n[t]}var Oi=zi(Ye),Ei=ht||function(n,t){return st.setTimeout(n,t)},Ii=zi(Qe);function Ri(n,t,r){var e=t+"";return Ii(n,function(n,t){var r=t.length;if(!r)return n;var e=r-1;return t[e]=(r>1?"& ":"")+t[e],t=t.join(r>2?", ":" "),n.replace(un,"{\n/* [wrapped with "+t+"] */\n")}(e,function(n,t){return kt(p,function(r){var e="_."+r[0];t&r[1]&&!Rt(n,e)&&n.push(e)}),n.sort()}(function(n){var t=n.match(on);return t?t[1].split(fn):[]}(e),r)))}function zi(n){var t=0,r=0;return function(){var u=dr(),i=16-(u-r);if(r=u,i>0){if(++t>=800)return arguments[0]}else t=0;return n.apply(e,arguments)}}function Si(n,t){var r=-1,u=n.length,i=u-1;for(t=t===e?u:t;++r<t;){var o=Ze(r,i),f=n[o];n[o]=n[r],n[r]=f}return n.length=t,n}var Ci,Li,Wi=(Ci=Lo(function(n){var t=[];return 46===n.charCodeAt(0)&&t.push(""),n.replace(X,function(n,r,e,u){t.push(e?u.replace(ln,"$1"):r||n)}),t},function(n){return 500===Li.size&&Li.clear(),n}),Li=Ci.cache,Ci);function Ti(n){if("string"==typeof n||af(n))return n;var t=n+"";return"0"==t&&1/n==-1/0?"-0":t}function Ui(n){if(null!=n){try{return Ln.call(n)}catch(n){}try{return n+""}catch(n){}}return""}function Bi(n){if(n instanceof Nr)return n.clone();var t=new Fr(n.__wrapped__,n.__chain__);return t.__actions__=Ou(n.__actions__),t.__index__=n.__index__,t.__values__=n.__values__,t}var Di=Ve(function(n,t){return Ko(n)?ce(n,_e(t,1,Ko,!0)):[]}),$i=Ve(function(n,t){var r=Gi(t);return Ko(r)&&(r=e),Ko(n)?ce(n,_e(t,1,Ko,!0),ii(r,2)):[]}),Mi=Ve(function(n,t){var r=Gi(t);return Ko(r)&&(r=e),Ko(n)?ce(n,_e(t,1,Ko,!0),e,r):[]});function Fi(n,t,r){var e=null==n?0:n.length;if(!e)return-1;var u=null==r?0:vf(r);return u<0&&(u=gr(e+u,0)),Dt(n,ii(t,3),u)}function Ni(n,t,r){var u=null==n?0:n.length;if(!u)return-1;var i=u-1;return r!==e&&(i=vf(r),i=r<0?gr(u+i,0):yr(i,u-1)),Dt(n,ii(t,3),i,!0)}function Pi(n){return null!=n&&n.length?_e(n,1):[]}function qi(n){return n&&n.length?n[0]:e}var Zi=Ve(function(n){var t=St(n,vu);return t.length&&t[0]===n[0]?Ee(t):[]}),Ki=Ve(function(n){var t=Gi(n),r=St(n,vu);return t===Gi(r)?t=e:r.pop(),r.length&&r[0]===n[0]?Ee(r,ii(t,2)):[]}),Vi=Ve(function(n){var t=Gi(n),r=St(n,vu);return(t="function"==typeof t?t:e)&&r.pop(),r.length&&r[0]===n[0]?Ee(r,e,t):[]});function Gi(n){var t=null==n?0:n.length;return t?n[t-1]:e}var Hi=Ve(Ji);function Ji(n,t){return n&&n.length&&t&&t.length?Pe(n,t):n}var Yi=Xu(function(n,t){var r=null==n?0:n.length,e=ue(n,t);return qe(n,St(t,function(n){return _i(n,r)?+n:n}).sort(ju)),e});function Qi(n){return null==n?n:mr.call(n)}var Xi=Ve(function(n){return fu(_e(n,1,Ko,!0))}),no=Ve(function(n){var t=Gi(n);return Ko(t)&&(t=e),fu(_e(n,1,Ko,!0),ii(t,2))}),to=Ve(function(n){var t=Gi(n);return t="function"==typeof t?t:e,fu(_e(n,1,Ko,!0),e,t)});function ro(n){if(!n||!n.length)return[];var t=0;return n=It(n,function(n){if(Ko(n))return t=gr(n.length,t),!0}),Vt(t,function(t){return St(n,Pt(t))})}function eo(n,t){if(!n||!n.length)return[];var r=ro(n);return null==t?r:St(r,function(n){return jt(t,e,n)})}var uo=Ve(function(n,t){return Ko(n)?ce(n,t):[]}),io=Ve(function(n){return hu(It(n,Ko))}),oo=Ve(function(n){var t=Gi(n);return Ko(t)&&(t=e),hu(It(n,Ko),ii(t,2))}),fo=Ve(function(n){var t=Gi(n);return t="function"==typeof t?t:e,hu(It(n,Ko),e,t)}),ao=Ve(ro),co=Ve(function(n){var t=n.length,r=t>1?n[t-1]:e;return r="function"==typeof r?(n.pop(),r):e,eo(n,r)});function lo(n){var t=Dr(n);return t.__chain__=!0,t}function so(n,t){return t(n)}var ho=Xu(function(n){var t=n.length,r=t?n[0]:0,u=this.__wrapped__,i=function(t){return ue(t,n)};return!(t>1||this.__actions__.length)&&u instanceof Nr&&_i(r)?((u=u.slice(r,+r+(t?1:0))).__actions__.push({func:so,args:[i],thisArg:e}),new Fr(u,this.__chain__).thru(function(n){return t&&!n.length&&n.push(e),n})):this.thru(i)}),po=Iu(function(n,t,r){Wn.call(n,r)?++n[r]:ee(n,r,1)}),vo=Tu(Fi),_o=Tu(Ni);function go(n,t){return(Po(n)?kt:le)(n,ii(t,3))}function yo(n,t){return(Po(n)?Ot:se)(n,ii(t,3))}var wo=Iu(function(n,t,r){Wn.call(n,r)?n[r].push(t):ee(n,r,[t])}),bo=Ve(function(n,t,r){var e=-1,u="function"==typeof t,i=Zo(n)?en(n.length):[];return le(n,function(n){i[++e]=u?jt(t,n,r):Ie(n,t,r)}),i}),mo=Iu(function(n,t,r){ee(n,r,t)});function xo(n,t){return(Po(n)?St:Ue)(n,ii(t,3))}var jo=Iu(function(n,t,r){n[r?0:1].push(t)},function(){return[[],[]]}),Ao=Ve(function(n,t){if(null==n)return[];var r=t.length;return r>1&&gi(n,t[0],t[1])?t=[]:r>2&&gi(t[0],t[1],t[2])&&(t=[t[0]]),Fe(n,_e(t,1),[])}),ko=lt||function(){return st.Date.now()};function Oo(n,t,r){return t=r?e:t,t=n&&null==t?n.length:t,Gu(n,a,e,e,e,e,t)}function Eo(n,t){var r;if("function"!=typeof t)throw new In(u);return n=vf(n),function(){return--n>0&&(r=t.apply(this,arguments)),n<=1&&(t=e),r}}var Io=Ve(function(n,t,r){var e=1;if(r.length){var u=or(r,ui(Io));e|=f}return Gu(n,e,t,r,u)}),Ro=Ve(function(n,t,r){var e=3;if(r.length){var u=or(r,ui(Ro));e|=f}return Gu(t,e,n,r,u)});function zo(n,t,r){var i,o,f,a,c,l,s=0,h=!1,p=!1,v=!0;if("function"!=typeof n)throw new In(u);function _(t){var r=i,u=o;return i=o=e,s=t,a=n.apply(u,r)}function g(n){var r=n-l;return l===e||r>=t||r<0||p&&n-s>=f}function y(){var n=ko();if(g(n))return d(n);c=Ei(y,function(n){var r=t-(n-l);return p?yr(r,f-(n-s)):r}(n))}function d(n){return c=e,v&&i?_(n):(i=o=e,a)}function w(){var n=ko(),r=g(n);if(i=arguments,o=this,l=n,r){if(c===e)return function(n){return s=n,c=Ei(y,t),h?_(n):a}(l);if(p)return wu(c),c=Ei(y,t),_(l)}return c===e&&(c=Ei(y,t)),a}return t=gf(t)||0,Xo(r)&&(h=!!r.leading,f=(p="maxWait"in r)?gr(gf(r.maxWait)||0,t):f,v="trailing"in r?!!r.trailing:v),w.cancel=function(){c!==e&&wu(c),s=0,i=l=o=c=e},w.flush=function(){return c===e?a:d(ko())},w}var So=Ve(function(n,t){return ae(n,1,t)}),Co=Ve(function(n,t,r){return ae(n,gf(t)||0,r)});function Lo(n,t){if("function"!=typeof n||null!=t&&"function"!=typeof t)throw new In(u);var r=function(){var e=arguments,u=t?t.apply(this,e):e[0],i=r.cache;if(i.has(u))return i.get(u);var o=n.apply(this,e);return r.cache=i.set(u,o)||i,o};return r.cache=new(Lo.Cache||Zr),r}function Wo(n){if("function"!=typeof n)throw new In(u);return function(){var t=arguments;switch(t.length){case 0:return!n.call(this);case 1:return!n.call(this,t[0]);case 2:return!n.call(this,t[0],t[1]);case 3:return!n.call(this,t[0],t[1],t[2])}return!n.apply(this,t)}}Lo.Cache=Zr;var To=yu(function(n,t){var r=(t=1==t.length&&Po(t[0])?St(t[0],Ht(ii())):St(_e(t,1),Ht(ii()))).length;return Ve(function(e){for(var u=-1,i=yr(e.length,r);++u<i;)e[u]=t[u].call(this,e[u]);return jt(n,this,e)})}),Uo=Ve(function(n,t){var r=or(t,ui(Uo));return Gu(n,f,e,t,r)}),Bo=Ve(function(n,t){var r=or(t,ui(Bo));return Gu(n,64,e,t,r)}),Do=Xu(function(n,t){return Gu(n,256,e,e,e,t)});function $o(n,t){return n===t||n!=n&&t!=t}var Mo=Pu(Ae),Fo=Pu(function(n,t){return n>=t}),No=Re(function(){return arguments}())?Re:function(n){return nf(n)&&Wn.call(n,"callee")&&!Vn.call(n,"callee")},Po=en.isArray,qo=yt?Ht(yt):function(n){return nf(n)&&je(n)==z};function Zo(n){return null!=n&&Qo(n.length)&&!Jo(n)}function Ko(n){return nf(n)&&Zo(n)}var Vo=Ut||ga,Go=dt?Ht(dt):function(n){return nf(n)&&je(n)==y};function Ho(n){if(!nf(n))return!1;var t=je(n);return t==d||"[object DOMException]"==t||"string"==typeof n.message&&"string"==typeof n.name&&!ef(n)}function Jo(n){if(!Xo(n))return!1;var t=je(n);return t==w||t==b||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Yo(n){return"number"==typeof n&&n==vf(n)}function Qo(n){return"number"==typeof n&&n>-1&&n%1==0&&n<=l}function Xo(n){var t=typeof n;return null!=n&&("object"==t||"function"==t)}function nf(n){return null!=n&&"object"==typeof n}var tf=wt?Ht(wt):function(n){return nf(n)&&si(n)==m};function rf(n){return"number"==typeof n||nf(n)&&je(n)==x}function ef(n){if(!nf(n)||je(n)!=j)return!1;var t=Zn(n);if(null===t)return!0;var r=Wn.call(t,"constructor")&&t.constructor;return"function"==typeof r&&r instanceof r&&Ln.call(r)==Dn}var uf=bt?Ht(bt):function(n){return nf(n)&&je(n)==k},of=mt?Ht(mt):function(n){return nf(n)&&si(n)==O};function ff(n){return"string"==typeof n||!Po(n)&&nf(n)&&je(n)==E}function af(n){return"symbol"==typeof n||nf(n)&&je(n)==I}var cf=xt?Ht(xt):function(n){return nf(n)&&Qo(n.length)&&!!ut[je(n)]},lf=Pu(Te),sf=Pu(function(n,t){return n<=t});function hf(n){if(!n)return[];if(Zo(n))return ff(n)?lr(n):Ou(n);if(Qn&&n[Qn])return function(n){for(var t,r=[];!(t=n.next()).done;)r.push(t.value);return r}(n[Qn]());var t=si(n);return(t==m?ur:t==O?fr:Mf)(n)}function pf(n){return n?(n=gf(n))===c||n===-1/0?17976931348623157e292*(n<0?-1:1):n==n?n:0:0===n?n:0}function vf(n){var t=pf(n),r=t%1;return t==t?r?t-r:t:0}function _f(n){return n?ie(vf(n),0,h):0}function gf(n){if("number"==typeof n)return n;if(af(n))return s;if(Xo(n)){var t="function"==typeof n.valueOf?n.valueOf():n;n=Xo(t)?t+"":t}if("string"!=typeof n)return 0===n?n:+n;n=Gt(n);var r=vn.test(n);return r||gn.test(n)?at(n.slice(2),r?2:8):pn.test(n)?s:+n}function yf(n){return Eu(n,Cf(n))}function df(n){return null==n?"":ou(n)}var wf=Ru(function(n,t){if(bi(t)||Zo(t))Eu(t,Sf(t),n);else for(var r in t)Wn.call(t,r)&&Xr(n,r,t[r])}),bf=Ru(function(n,t){Eu(t,Cf(t),n)}),mf=Ru(function(n,t,r,e){Eu(t,Cf(t),n,e)}),xf=Ru(function(n,t,r,e){Eu(t,Sf(t),n,e)}),jf=Xu(ue),Af=Ve(function(n,t){n=kn(n);var r=-1,u=t.length,i=u>2?t[2]:e;for(i&&gi(t[0],t[1],i)&&(u=1);++r<u;)for(var o=t[r],f=Cf(o),a=-1,c=f.length;++a<c;){var l=f[a],s=n[l];(s===e||$o(s,Sn[l])&&!Wn.call(n,l))&&(n[l]=o[l])}return n}),kf=Ve(function(n){return n.push(e,Ju),jt(Wf,e,n)});function Of(n,t,r){var u=null==n?e:me(n,t);return u===e?r:u}function Ef(n,t){return null!=n&&hi(n,t,Oe)}var If=Du(function(n,t,r){null!=t&&"function"!=typeof t.toString&&(t=Bn.call(t)),n[t]=r},na(ea)),Rf=Du(function(n,t,r){null!=t&&"function"!=typeof t.toString&&(t=Bn.call(t)),Wn.call(n,t)?n[t].push(r):n[t]=[r]},ii),zf=Ve(Ie);function Sf(n){return Zo(n)?Gr(n):We(n)}function Cf(n){return Zo(n)?Gr(n,!0):function(n){if(!Xo(n))return function(n){var t=[];if(null!=n)for(var r in kn(n))t.push(r);return t}(n);var t=bi(n),r=[];for(var e in n)("constructor"!=e||!t&&Wn.call(n,e))&&r.push(e);return r}(n)}var Lf=Ru(function(n,t,r){$e(n,t,r)}),Wf=Ru(function(n,t,r,e){$e(n,t,r,e)}),Tf=Xu(function(n,t){var r={};if(null==n)return r;var e=!1;t=St(t,function(t){return t=gu(t,n),e||(e=t.length>1),t}),Eu(n,ti(n),r),e&&(r=oe(r,7,Yu));for(var u=t.length;u--;)au(r,t[u]);return r}),Uf=Xu(function(n,t){return null==n?{}:function(n,t){return Ne(n,t,function(t,r){return Ef(n,r)})}(n,t)});function Bf(n,t){if(null==n)return{};var r=St(ti(n),function(n){return[n]});return t=ii(t),Ne(n,r,function(n,r){return t(n,r[0])})}var Df=Vu(Sf),$f=Vu(Cf);function Mf(n){return null==n?[]:Jt(n,Sf(n))}var Ff=Lu(function(n,t,r){return t=t.toLowerCase(),n+(r?Nf(t):t)});function Nf(n){return Jf(df(n).toLowerCase())}function Pf(n){return(n=df(n))&&n.replace(dn,nr).replace(Yn,"")}var qf=Lu(function(n,t,r){return n+(r?"-":"")+t.toLowerCase()}),Zf=Lu(function(n,t,r){return n+(r?" ":"")+t.toLowerCase()}),Kf=Cu("toLowerCase"),Vf=Lu(function(n,t,r){return n+(r?"_":"")+t.toLowerCase()}),Gf=Lu(function(n,t,r){return n+(r?" ":"")+Jf(t)}),Hf=Lu(function(n,t,r){return n+(r?" ":"")+t.toUpperCase()}),Jf=Cu("toUpperCase");function Yf(n,t,r){return n=df(n),(t=r?e:t)===e?function(n){return tt.test(n)}(n)?function(n){return n.match(Xn)||[]}(n):function(n){return n.match(an)||[]}(n):n.match(t)||[]}var Qf=Ve(function(n,t){try{return jt(n,e,t)}catch(n){return Ho(n)?n:new xn(n)}}),Xf=Xu(function(n,t){return kt(t,function(t){t=Ti(t),ee(n,t,Io(n[t],n))}),n});function na(n){return function(){return n}}var ta=Uu(),ra=Uu(!0);function ea(n){return n}function ua(n){return Le("function"==typeof n?n:oe(n,1))}var ia=Ve(function(n,t){return function(r){return Ie(r,n,t)}}),oa=Ve(function(n,t){return function(r){return Ie(n,r,t)}});function fa(n,t,r){var e=Sf(t),u=be(t,e);null!=r||Xo(t)&&(u.length||!e.length)||(r=t,t=n,n=this,u=be(t,Sf(t)));var i=!(Xo(r)&&"chain"in r&&!r.chain),o=Jo(n);return kt(u,function(r){var e=t[r];n[r]=e,o&&(n.prototype[r]=function(){var t=this.__chain__;if(i||t){var r=n(this.__wrapped__);return(r.__actions__=Ou(this.__actions__)).push({func:e,args:arguments,thisArg:n}),r.__chain__=t,r}return e.apply(n,Ct([this.value()],arguments))})}),n}function aa(){}var ca=Mu(St),la=Mu(Et),sa=Mu(Tt);function ha(n){return yi(n)?Pt(Ti(n)):function(n){return function(t){return me(t,n)}}(n)}var pa=Nu(),va=Nu(!0);function _a(){return[]}function ga(){return!1}var ya,da=$u(function(n,t){return n+t},0),wa=Zu("ceil"),ba=$u(function(n,t){return n/t},1),ma=Zu("floor"),xa=$u(function(n,t){return n*t},1),ja=Zu("round"),Aa=$u(function(n,t){return n-t},0);return Dr.after=function(n,t){if("function"!=typeof t)throw new In(u);return n=vf(n),function(){if(--n<1)return t.apply(this,arguments)}},Dr.ary=Oo,Dr.assign=wf,Dr.assignIn=bf,Dr.assignInWith=mf,Dr.assignWith=xf,Dr.at=jf,Dr.before=Eo,Dr.bind=Io,Dr.bindAll=Xf,Dr.bindKey=Ro,Dr.castArray=function(){if(!arguments.length)return[];var n=arguments[0];return Po(n)?n:[n]},Dr.chain=lo,Dr.chunk=function(n,t,r){t=(r?gi(n,t,r):t===e)?1:gr(vf(t),0);var u=null==n?0:n.length;if(!u||t<1)return[];for(var i=0,o=0,f=en(pt(u/t));i<u;)f[o++]=nu(n,i,i+=t);return f},Dr.compact=function(n){for(var t=-1,r=null==n?0:n.length,e=0,u=[];++t<r;){var i=n[t];i&&(u[e++]=i)}return u},Dr.concat=function(){var n=arguments.length;if(!n)return[];for(var t=en(n-1),r=arguments[0],e=n;e--;)t[e-1]=arguments[e];return Ct(Po(r)?Ou(r):[r],_e(t,1))},Dr.cond=function(n){var t=null==n?0:n.length,r=ii();return n=t?St(n,function(n){if("function"!=typeof n[1])throw new In(u);return[r(n[0]),n[1]]}):[],Ve(function(r){for(var e=-1;++e<t;){var u=n[e];if(jt(u[0],this,r))return jt(u[1],this,r)}})},Dr.conforms=function(n){return function(n){var t=Sf(n);return function(r){return fe(r,n,t)}}(oe(n,1))},Dr.constant=na,Dr.countBy=po,Dr.create=function(n,t){var r=$r(n);return null==t?r:re(r,t)},Dr.curry=function n(t,r,u){var i=Gu(t,8,e,e,e,e,e,r=u?e:r);return i.placeholder=n.placeholder,i},Dr.curryRight=function n(t,r,u){var i=Gu(t,16,e,e,e,e,e,r=u?e:r);return i.placeholder=n.placeholder,i},Dr.debounce=zo,Dr.defaults=Af,Dr.defaultsDeep=kf,Dr.defer=So,Dr.delay=Co,Dr.difference=Di,Dr.differenceBy=$i,Dr.differenceWith=Mi,Dr.drop=function(n,t,r){var u=null==n?0:n.length;return u?nu(n,(t=r||t===e?1:vf(t))<0?0:t,u):[]},Dr.dropRight=function(n,t,r){var u=null==n?0:n.length;return u?nu(n,0,(t=u-(t=r||t===e?1:vf(t)))<0?0:t):[]},Dr.dropRightWhile=function(n,t){return n&&n.length?lu(n,ii(t,3),!0,!0):[]},Dr.dropWhile=function(n,t){return n&&n.length?lu(n,ii(t,3),!0):[]},Dr.fill=function(n,t,r,u){var i=null==n?0:n.length;return i?(r&&"number"!=typeof r&&gi(n,t,r)&&(r=0,u=i),function(n,t,r,u){var i=n.length;for((r=vf(r))<0&&(r=-r>i?0:i+r),(u=u===e||u>i?i:vf(u))<0&&(u+=i),u=r>u?0:_f(u);r<u;)n[r++]=t;return n}(n,t,r,u)):[]},Dr.filter=function(n,t){return(Po(n)?It:ve)(n,ii(t,3))},Dr.flatMap=function(n,t){return _e(xo(n,t),1)},Dr.flatMapDeep=function(n,t){return _e(xo(n,t),c)},Dr.flatMapDepth=function(n,t,r){return r=r===e?1:vf(r),_e(xo(n,t),r)},Dr.flatten=Pi,Dr.flattenDeep=function(n){return null!=n&&n.length?_e(n,c):[]},Dr.flattenDepth=function(n,t){return null!=n&&n.length?_e(n,t=t===e?1:vf(t)):[]},Dr.flip=function(n){return Gu(n,512)},Dr.flow=ta,Dr.flowRight=ra,Dr.fromPairs=function(n){for(var t=-1,r=null==n?0:n.length,e={};++t<r;){var u=n[t];e[u[0]]=u[1]}return e},Dr.functions=function(n){return null==n?[]:be(n,Sf(n))},Dr.functionsIn=function(n){return null==n?[]:be(n,Cf(n))},Dr.groupBy=wo,Dr.initial=function(n){return null!=n&&n.length?nu(n,0,-1):[]},Dr.intersection=Zi,Dr.intersectionBy=Ki,Dr.intersectionWith=Vi,Dr.invert=If,Dr.invertBy=Rf,Dr.invokeMap=bo,Dr.iteratee=ua,Dr.keyBy=mo,Dr.keys=Sf,Dr.keysIn=Cf,Dr.map=xo,Dr.mapKeys=function(n,t){var r={};return t=ii(t,3),de(n,function(n,e,u){ee(r,t(n,e,u),n)}),r},Dr.mapValues=function(n,t){var r={};return t=ii(t,3),de(n,function(n,e,u){ee(r,e,t(n,e,u))}),r},Dr.matches=function(n){return Be(oe(n,1))},Dr.matchesProperty=function(n,t){return De(n,oe(t,1))},Dr.memoize=Lo,Dr.merge=Lf,Dr.mergeWith=Wf,Dr.method=ia,Dr.methodOf=oa,Dr.mixin=fa,Dr.negate=Wo,Dr.nthArg=function(n){return n=vf(n),Ve(function(t){return Me(t,n)})},Dr.omit=Tf,Dr.omitBy=function(n,t){return Bf(n,Wo(ii(t)))},Dr.once=function(n){return Eo(2,n)},Dr.orderBy=function(n,t,r,u){return null==n?[]:(Po(t)||(t=null==t?[]:[t]),Po(r=u?e:r)||(r=null==r?[]:[r]),Fe(n,t,r))},Dr.over=ca,Dr.overArgs=To,Dr.overEvery=la,Dr.overSome=sa,Dr.partial=Uo,Dr.partialRight=Bo,Dr.partition=jo,Dr.pick=Uf,Dr.pickBy=Bf,Dr.property=ha,Dr.propertyOf=function(n){return function(t){return null==n?e:me(n,t)}},Dr.pull=Hi,Dr.pullAll=Ji,Dr.pullAllBy=function(n,t,r){return n&&n.length&&t&&t.length?Pe(n,t,ii(r,2)):n},Dr.pullAllWith=function(n,t,r){return n&&n.length&&t&&t.length?Pe(n,t,e,r):n},Dr.pullAt=Yi,Dr.range=pa,Dr.rangeRight=va,Dr.rearg=Do,Dr.reject=function(n,t){return(Po(n)?It:ve)(n,Wo(ii(t,3)))},Dr.remove=function(n,t){var r=[];if(!n||!n.length)return r;var e=-1,u=[],i=n.length;for(t=ii(t,3);++e<i;){var o=n[e];t(o,e,n)&&(r.push(o),u.push(e))}return qe(n,u),r},Dr.rest=function(n,t){if("function"!=typeof n)throw new In(u);return Ve(n,t=t===e?t:vf(t))},Dr.reverse=Qi,Dr.sampleSize=function(n,t,r){return t=(r?gi(n,t,r):t===e)?1:vf(t),(Po(n)?Jr:He)(n,t)},Dr.set=function(n,t,r){return null==n?n:Je(n,t,r)},Dr.setWith=function(n,t,r,u){return u="function"==typeof u?u:e,null==n?n:Je(n,t,r,u)},Dr.shuffle=function(n){return(Po(n)?Yr:Xe)(n)},Dr.slice=function(n,t,r){var u=null==n?0:n.length;return u?(r&&"number"!=typeof r&&gi(n,t,r)?(t=0,r=u):(t=null==t?0:vf(t),r=r===e?u:vf(r)),nu(n,t,r)):[]},Dr.sortBy=Ao,Dr.sortedUniq=function(n){return n&&n.length?uu(n):[]},Dr.sortedUniqBy=function(n,t){return n&&n.length?uu(n,ii(t,2)):[]},Dr.split=function(n,t,r){return r&&"number"!=typeof r&&gi(n,t,r)&&(t=r=e),(r=r===e?h:r>>>0)?(n=df(n))&&("string"==typeof t||null!=t&&!uf(t))&&!(t=ou(t))&&er(n)?du(lr(n),0,r):n.split(t,r):[]},Dr.spread=function(n,t){if("function"!=typeof n)throw new In(u);return t=null==t?0:gr(vf(t),0),Ve(function(r){var e=r[t],u=du(r,0,t);return e&&Ct(u,e),jt(n,this,u)})},Dr.tail=function(n){var t=null==n?0:n.length;return t?nu(n,1,t):[]},Dr.take=function(n,t,r){return n&&n.length?nu(n,0,(t=r||t===e?1:vf(t))<0?0:t):[]},Dr.takeRight=function(n,t,r){var u=null==n?0:n.length;return u?nu(n,(t=u-(t=r||t===e?1:vf(t)))<0?0:t,u):[]},Dr.takeRightWhile=function(n,t){return n&&n.length?lu(n,ii(t,3),!1,!0):[]},Dr.takeWhile=function(n,t){return n&&n.length?lu(n,ii(t,3)):[]},Dr.tap=function(n,t){return t(n),n},Dr.throttle=function(n,t,r){var e=!0,i=!0;if("function"!=typeof n)throw new In(u);return Xo(r)&&(e="leading"in r?!!r.leading:e,i="trailing"in r?!!r.trailing:i),zo(n,t,{leading:e,maxWait:t,trailing:i})},Dr.thru=so,Dr.toArray=hf,Dr.toPairs=Df,Dr.toPairsIn=$f,Dr.toPath=function(n){return Po(n)?St(n,Ti):af(n)?[n]:Ou(Wi(df(n)))},Dr.toPlainObject=yf,Dr.transform=function(n,t,r){var e=Po(n),u=e||Vo(n)||cf(n);if(t=ii(t,4),null==r){var i=n&&n.constructor;r=u?e?new i:[]:Xo(n)&&Jo(i)?$r(Zn(n)):{}}return(u?kt:de)(n,function(n,e,u){return t(r,n,e,u)}),r},Dr.unary=function(n){return Oo(n,1)},Dr.union=Xi,Dr.unionBy=no,Dr.unionWith=to,Dr.uniq=function(n){return n&&n.length?fu(n):[]},Dr.uniqBy=function(n,t){return n&&n.length?fu(n,ii(t,2)):[]},Dr.uniqWith=function(n,t){return t="function"==typeof t?t:e,n&&n.length?fu(n,e,t):[]},Dr.unset=function(n,t){return null==n||au(n,t)},Dr.unzip=ro,Dr.unzipWith=eo,Dr.update=function(n,t,r){return null==n?n:cu(n,t,_u(r))},Dr.updateWith=function(n,t,r,u){return u="function"==typeof u?u:e,null==n?n:cu(n,t,_u(r),u)},Dr.values=Mf,Dr.valuesIn=function(n){return null==n?[]:Jt(n,Cf(n))},Dr.without=uo,Dr.words=Yf,Dr.wrap=function(n,t){return Uo(_u(t),n)},Dr.xor=io,Dr.xorBy=oo,Dr.xorWith=fo,Dr.zip=ao,Dr.zipObject=function(n,t){return pu(n||[],t||[],Xr)},Dr.zipObjectDeep=function(n,t){return pu(n||[],t||[],Je)},Dr.zipWith=co,Dr.entries=Df,Dr.entriesIn=$f,Dr.extend=bf,Dr.extendWith=mf,fa(Dr,Dr),Dr.add=da,Dr.attempt=Qf,Dr.camelCase=Ff,Dr.capitalize=Nf,Dr.ceil=wa,Dr.clamp=function(n,t,r){return r===e&&(r=t,t=e),r!==e&&(r=(r=gf(r))==r?r:0),t!==e&&(t=(t=gf(t))==t?t:0),ie(gf(n),t,r)},Dr.clone=function(n){return oe(n,4)},Dr.cloneDeep=function(n){return oe(n,5)},Dr.cloneDeepWith=function(n,t){return oe(n,5,t="function"==typeof t?t:e)},Dr.cloneWith=function(n,t){return oe(n,4,t="function"==typeof t?t:e)},Dr.conformsTo=function(n,t){return null==t||fe(n,t,Sf(t))},Dr.deburr=Pf,Dr.defaultTo=function(n,t){return null==n||n!=n?t:n},Dr.divide=ba,Dr.endsWith=function(n,t,r){n=df(n),t=ou(t);var u=n.length,i=r=r===e?u:ie(vf(r),0,u);return(r-=t.length)>=0&&n.slice(r,i)==t},Dr.eq=$o,Dr.escape=function(n){return(n=df(n))&&V.test(n)?n.replace(Z,tr):n},Dr.escapeRegExp=function(n){return(n=df(n))&&tn.test(n)?n.replace(nn,"\\$&"):n},Dr.every=function(n,t,r){var u=Po(n)?Et:he;return r&&gi(n,t,r)&&(t=e),u(n,ii(t,3))},Dr.find=vo,Dr.findIndex=Fi,Dr.findKey=function(n,t){return Bt(n,ii(t,3),de)},Dr.findLast=_o,Dr.findLastIndex=Ni,Dr.findLastKey=function(n,t){return Bt(n,ii(t,3),we)},Dr.floor=ma,Dr.forEach=go,Dr.forEachRight=yo,Dr.forIn=function(n,t){return null==n?n:ge(n,ii(t,3),Cf)},Dr.forInRight=function(n,t){return null==n?n:ye(n,ii(t,3),Cf)},Dr.forOwn=function(n,t){return n&&de(n,ii(t,3))},Dr.forOwnRight=function(n,t){return n&&we(n,ii(t,3))},Dr.get=Of,Dr.gt=Mo,Dr.gte=Fo,Dr.has=function(n,t){return null!=n&&hi(n,t,ke)},Dr.hasIn=Ef,Dr.head=qi,Dr.identity=ea,Dr.includes=function(n,t,r,e){n=Zo(n)?n:Mf(n),r=r&&!e?vf(r):0;var u=n.length;return r<0&&(r=gr(u+r,0)),ff(n)?r<=u&&n.indexOf(t,r)>-1:!!u&&$t(n,t,r)>-1},Dr.indexOf=function(n,t,r){var e=null==n?0:n.length;if(!e)return-1;var u=null==r?0:vf(r);return u<0&&(u=gr(e+u,0)),$t(n,t,u)},Dr.inRange=function(n,t,r){return t=pf(t),r===e?(r=t,t=0):r=pf(r),function(n,t,r){return n>=yr(t,r)&&n<gr(t,r)}(n=gf(n),t,r)},Dr.invoke=zf,Dr.isArguments=No,Dr.isArray=Po,Dr.isArrayBuffer=qo,Dr.isArrayLike=Zo,Dr.isArrayLikeObject=Ko,Dr.isBoolean=function(n){return!0===n||!1===n||nf(n)&&je(n)==g},Dr.isBuffer=Vo,Dr.isDate=Go,Dr.isElement=function(n){return nf(n)&&1===n.nodeType&&!ef(n)},Dr.isEmpty=function(n){if(null==n)return!0;if(Zo(n)&&(Po(n)||"string"==typeof n||"function"==typeof n.splice||Vo(n)||cf(n)||No(n)))return!n.length;var t=si(n);if(t==m||t==O)return!n.size;if(bi(n))return!We(n).length;for(var r in n)if(Wn.call(n,r))return!1;return!0},Dr.isEqual=function(n,t){return ze(n,t)},Dr.isEqualWith=function(n,t,r){var u=(r="function"==typeof r?r:e)?r(n,t):e;return u===e?ze(n,t,e,r):!!u},Dr.isError=Ho,Dr.isFinite=function(n){return"number"==typeof n&&qt(n)},Dr.isFunction=Jo,Dr.isInteger=Yo,Dr.isLength=Qo,Dr.isMap=tf,Dr.isMatch=function(n,t){return n===t||Se(n,t,fi(t))},Dr.isMatchWith=function(n,t,r){return r="function"==typeof r?r:e,Se(n,t,fi(t),r)},Dr.isNaN=function(n){return rf(n)&&n!=+n},Dr.isNative=function(n){if(wi(n))throw new xn("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return Ce(n)},Dr.isNil=function(n){return null==n},Dr.isNull=function(n){return null===n},Dr.isNumber=rf,Dr.isObject=Xo,Dr.isObjectLike=nf,Dr.isPlainObject=ef,Dr.isRegExp=uf,Dr.isSafeInteger=function(n){return Yo(n)&&n>=-9007199254740991&&n<=l},Dr.isSet=of,Dr.isString=ff,Dr.isSymbol=af,Dr.isTypedArray=cf,Dr.isUndefined=function(n){return n===e},Dr.isWeakMap=function(n){return nf(n)&&si(n)==R},Dr.isWeakSet=function(n){return nf(n)&&"[object WeakSet]"==je(n)},Dr.join=function(n,t){return null==n?"":vr.call(n,t)},Dr.kebabCase=qf,Dr.last=Gi,Dr.lastIndexOf=function(n,t,r){var u=null==n?0:n.length;if(!u)return-1;var i=u;return r!==e&&(i=(i=vf(r))<0?gr(u+i,0):yr(i,u-1)),t==t?function(n,t,r){for(var e=r+1;e--;)if(n[e]===t)return e;return e}(n,t,i):Dt(n,Ft,i,!0)},Dr.lowerCase=Zf,Dr.lowerFirst=Kf,Dr.lt=lf,Dr.lte=sf,Dr.max=function(n){return n&&n.length?pe(n,ea,Ae):e},Dr.maxBy=function(n,t){return n&&n.length?pe(n,ii(t,2),Ae):e},Dr.mean=function(n){return Nt(n,ea)},Dr.meanBy=function(n,t){return Nt(n,ii(t,2))},Dr.min=function(n){return n&&n.length?pe(n,ea,Te):e},Dr.minBy=function(n,t){return n&&n.length?pe(n,ii(t,2),Te):e},Dr.stubArray=_a,Dr.stubFalse=ga,Dr.stubObject=function(){return{}},Dr.stubString=function(){return""},Dr.stubTrue=function(){return!0},Dr.multiply=xa,Dr.nth=function(n,t){return n&&n.length?Me(n,vf(t)):e},Dr.noConflict=function(){return st._===this&&(st._=$n),this},Dr.noop=aa,Dr.now=ko,Dr.pad=function(n,t,r){n=df(n);var e=(t=vf(t))?cr(n):0;if(!t||e>=t)return n;var u=(t-e)/2;return Fu(_t(u),r)+n+Fu(pt(u),r)},Dr.padEnd=function(n,t,r){n=df(n);var e=(t=vf(t))?cr(n):0;return t&&e<t?n+Fu(t-e,r):n},Dr.padStart=function(n,t,r){n=df(n);var e=(t=vf(t))?cr(n):0;return t&&e<t?Fu(t-e,r)+n:n},Dr.parseInt=function(n,t,r){return r||null==t?t=0:t&&(t=+t),wr(df(n).replace(rn,""),t||0)},Dr.random=function(n,t,r){if(r&&"boolean"!=typeof r&&gi(n,t,r)&&(t=r=e),r===e&&("boolean"==typeof t?(r=t,t=e):"boolean"==typeof n&&(r=n,n=e)),n===e&&t===e?(n=0,t=1):(n=pf(n),t===e?(t=n,n=0):t=pf(t)),n>t){var u=n;n=t,t=u}if(r||n%1||t%1){var i=br();return yr(n+i*(t-n+ft("1e-"+((i+"").length-1))),t)}return Ze(n,t)},Dr.reduce=function(n,t,r){var e=Po(n)?Lt:Zt,u=arguments.length<3;return e(n,ii(t,4),r,u,le)},Dr.reduceRight=function(n,t,r){var e=Po(n)?Wt:Zt,u=arguments.length<3;return e(n,ii(t,4),r,u,se)},Dr.repeat=function(n,t,r){return t=(r?gi(n,t,r):t===e)?1:vf(t),Ke(df(n),t)},Dr.replace=function(){var n=arguments,t=df(n[0]);return n.length<3?t:t.replace(n[1],n[2])},Dr.result=function(n,t,r){var u=-1,i=(t=gu(t,n)).length;for(i||(i=1,n=e);++u<i;){var o=null==n?e:n[Ti(t[u])];o===e&&(u=i,o=r),n=Jo(o)?o.call(n):o}return n},Dr.round=ja,Dr.runInContext=n,Dr.sample=function(n){return(Po(n)?Hr:Ge)(n)},Dr.size=function(n){if(null==n)return 0;if(Zo(n))return ff(n)?cr(n):n.length;var t=si(n);return t==m||t==O?n.size:We(n).length},Dr.snakeCase=Vf,Dr.some=function(n,t,r){var u=Po(n)?Tt:tu;return r&&gi(n,t,r)&&(t=e),u(n,ii(t,3))},Dr.sortedIndex=function(n,t){return ru(n,t)},Dr.sortedIndexBy=function(n,t,r){return eu(n,t,ii(r,2))},Dr.sortedIndexOf=function(n,t){var r=null==n?0:n.length;if(r){var e=ru(n,t);if(e<r&&$o(n[e],t))return e}return-1},Dr.sortedLastIndex=function(n,t){return ru(n,t,!0)},Dr.sortedLastIndexBy=function(n,t,r){return eu(n,t,ii(r,2),!0)},Dr.sortedLastIndexOf=function(n,t){if(null!=n&&n.length){var r=ru(n,t,!0)-1;if($o(n[r],t))return r}return-1},Dr.startCase=Gf,Dr.startsWith=function(n,t,r){return n=df(n),r=null==r?0:ie(vf(r),0,n.length),t=ou(t),n.slice(r,r+t.length)==t},Dr.subtract=Aa,Dr.sum=function(n){return n&&n.length?Kt(n,ea):0},Dr.sumBy=function(n,t){return n&&n.length?Kt(n,ii(t,2)):0},Dr.template=function(n,t,r){var u=Dr.templateSettings;r&&gi(n,t,r)&&(t=e),n=df(n),t=mf({},t,u,Hu);var i,o,f=mf({},t.imports,u.imports,Hu),a=Sf(f),c=Jt(f,a),l=0,s=t.interpolate||wn,h="__p +='",p=On((t.escape||wn).source+"|"+s.source+"|"+(s===J?sn:wn).source+"|"+(t.evaluate||wn).source+"|$","g"),v="//# sourceURL="+(Wn.call(t,"sourceURL")?(t.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++et+"]")+"\n";n.replace(p,function(t,r,e,u,f,a){return e||(e=u),h+=n.slice(l,a).replace(bn,rr),r&&(i=!0,h+="' +\n__e("+r+") +\n'"),f&&(o=!0,h+="';\n"+f+";\n__p +='"),e&&(h+="' +\n((__t=("+e+"))==null ? '':__t) +\n'"),l=a+t.length,t}),h+="';\n";var _=Wn.call(t,"variable")&&t.variable;if(_){if(cn.test(_))throw new xn("Invalid `variable` option passed into `_.template`")}else h="with (obj){\n"+h+"\n}\n";h=(o?h.replace(F,""):h).replace(N,"$1").replace(P,"$1;"),h="function("+(_||"obj")+"){\n"+(_?"":"obj||(obj={});\n")+"var __t, __p=''"+(i?", __e=_.escape":"")+(o?", __j=Array.prototype.join;\nfunction print(){ __p +=__j.call(arguments, '') }\n":";\n")+h+"return __p\n}";var g=Qf(function(){return jn(a,v+"return "+h).apply(e,c)});if(g.source=h,Ho(g))throw g;return g},Dr.times=function(n,t){if((n=vf(n))<1||n>l)return[];var r=h,e=yr(n,h);t=ii(t),n-=h;for(var u=Vt(e,t);++r<n;)t(r);return u},Dr.toFinite=pf,Dr.toInteger=vf,Dr.toLength=_f,Dr.toLower=function(n){return df(n).toLowerCase()},Dr.toNumber=gf,Dr.toSafeInteger=function(n){return n?ie(vf(n),-9007199254740991,l):0===n?n:0},Dr.toString=df,Dr.toUpper=function(n){return df(n).toUpperCase()},Dr.trim=function(n,t,r){if((n=df(n))&&(r||t===e))return Gt(n);if(!n||!(t=ou(t)))return n;var u=lr(n),i=lr(t);return du(u,Qt(u,i),Xt(u,i)+1).join("")},Dr.trimEnd=function(n,t,r){if((n=df(n))&&(r||t===e))return n.slice(0,sr(n)+1);if(!n||!(t=ou(t)))return n;var u=lr(n);return du(u,0,Xt(u,lr(t))+1).join("")},Dr.trimStart=function(n,t,r){if((n=df(n))&&(r||t===e))return n.replace(rn,"");if(!n||!(t=ou(t)))return n;var u=lr(n);return du(u,Qt(u,lr(t))).join("")},Dr.truncate=function(n,t){var r=30,u="...";if(Xo(t)){var i="separator"in t?t.separator:i;r="length"in t?vf(t.length):r,u="omission"in t?ou(t.omission):u}var o=(n=df(n)).length;if(er(n)){var f=lr(n);o=f.length}if(r>=o)return n;var a=r-cr(u);if(a<1)return u;var c=f?du(f,0,a).join(""):n.slice(0,a);if(i===e)return c+u;if(f&&(a+=c.length-a),uf(i)){if(n.slice(a).search(i)){var l,s=c;for(i.global||(i=On(i.source,df(hn.exec(i))+"g")),i.lastIndex=0;l=i.exec(s);)var h=l.index;c=c.slice(0,h===e?a:h)}}else if(n.indexOf(ou(i),a)!=a){var p=c.lastIndexOf(i);p>-1&&(c=c.slice(0,p))}return c+u},Dr.unescape=function(n){return(n=df(n))&&K.test(n)?n.replace(q,hr):n},Dr.uniqueId=function(n){var t=++Tn;return df(n)+t},Dr.upperCase=Hf,Dr.upperFirst=Jf,Dr.each=go,Dr.eachRight=yo,Dr.first=qi,fa(Dr,(ya={},de(Dr,function(n,t){Wn.call(Dr.prototype,t)||(ya[t]=n)}),ya),{chain:!1}),Dr.VERSION="4.17.21",kt(["bind","bindKey","curry","curryRight","partial","partialRight"],function(n){Dr[n].placeholder=Dr}),kt(["drop","take"],function(n,t){Nr.prototype[n]=function(r){r=r===e?1:gr(vf(r),0);var u=this.__filtered__&&!t?new Nr(this):this.clone();return u.__filtered__?u.__takeCount__=yr(r,u.__takeCount__):u.__views__.push({size:yr(r,h),type:n+(u.__dir__<0?"Right":"")}),u},Nr.prototype[n+"Right"]=function(t){return this.reverse()[n](t).reverse()}}),kt(["filter","map","takeWhile"],function(n,t){var r=t+1,e=1==r||3==r;Nr.prototype[n]=function(n){var t=this.clone();return t.__iteratees__.push({iteratee:ii(n,3),type:r}),t.__filtered__=t.__filtered__||e,t}}),kt(["head","last"],function(n,t){var r="take"+(t?"Right":"");Nr.prototype[n]=function(){return this[r](1).value()[0]}}),kt(["initial","tail"],function(n,t){var r="drop"+(t?"":"Right");Nr.prototype[n]=function(){return this.__filtered__?new Nr(this):this[r](1)}}),Nr.prototype.compact=function(){return this.filter(ea)},Nr.prototype.find=function(n){return this.filter(n).head()},Nr.prototype.findLast=function(n){return this.reverse().find(n)},Nr.prototype.invokeMap=Ve(function(n,t){return"function"==typeof n?new Nr(this):this.map(function(r){return Ie(r,n,t)})}),Nr.prototype.reject=function(n){return this.filter(Wo(ii(n)))},Nr.prototype.slice=function(n,t){n=vf(n);var r=this;return r.__filtered__&&(n>0||t<0)?new Nr(r):(n<0?r=r.takeRight(-n):n&&(r=r.drop(n)),t!==e&&(r=(t=vf(t))<0?r.dropRight(-t):r.take(t-n)),r)},Nr.prototype.takeRightWhile=function(n){return this.reverse().takeWhile(n).reverse()},Nr.prototype.toArray=function(){return this.take(h)},de(Nr.prototype,function(n,t){var r=/^(?:filter|find|map|reject)|While$/.test(t),u=/^(?:head|last)$/.test(t),i=Dr[u?"take"+("last"==t?"Right":""):t],o=u||/^find/.test(t);i&&(Dr.prototype[t]=function(){var t=this.__wrapped__,f=u?[1]:arguments,a=t instanceof Nr,c=f[0],l=a||Po(t),s=function(n){var t=i.apply(Dr,Ct([n],f));return u&&h?t[0]:t};l&&r&&"function"==typeof c&&1!=c.length&&(a=l=!1);var h=this.__chain__,p=!!this.__actions__.length,v=o&&!h,_=a&&!p;if(!o&&l){t=_?t:new Nr(this);var g=n.apply(t,f);return g.__actions__.push({func:so,args:[s],thisArg:e}),new Fr(g,h)}return v&&_?n.apply(this,f):(g=this.thru(s),v?u?g.value()[0]:g.value():g)})}),kt(["pop","push","shift","sort","splice","unshift"],function(n){var t=Rn[n],r=/^(?:push|sort|unshift)$/.test(n)?"tap":"thru",e=/^(?:pop|shift)$/.test(n);Dr.prototype[n]=function(){var n=arguments;if(e&&!this.__chain__){var u=this.value();return t.apply(Po(u)?u:[],n)}return this[r](function(r){return t.apply(Po(r)?r:[],n)})}}),de(Nr.prototype,function(n,t){var r=Dr[t];if(r){var e=r.name+"";Wn.call(Rr,e)||(Rr[e]=[]),Rr[e].push({name:t,func:r})}}),Rr[Bu(e,2).name]=[{name:"wrapper",func:e}],Nr.prototype.clone=function(){var n=new Nr(this.__wrapped__);return n.__actions__=Ou(this.__actions__),n.__dir__=this.__dir__,n.__filtered__=this.__filtered__,n.__iteratees__=Ou(this.__iteratees__),n.__takeCount__=this.__takeCount__,n.__views__=Ou(this.__views__),n},Nr.prototype.reverse=function(){if(this.__filtered__){var n=new Nr(this);n.__dir__=-1,n.__filtered__=!0}else(n=this.clone()).__dir__*=-1;return n},Nr.prototype.value=function(){var n=this.__wrapped__.value(),t=this.__dir__,r=Po(n),e=t<0,u=r?n.length:0,i=function(n,t,r){for(var e=-1,u=r.length;++e<u;){var i=r[e],o=i.size;switch(i.type){case"drop":n+=o;break;case"dropRight":t-=o;break;case"take":t=yr(t,n+o);break;case"takeRight":n=gr(n,t-o)}}return{start:n,end:t}}(0,u,this.__views__),o=i.start,f=i.end,a=f-o,c=e?f:o-1,l=this.__iteratees__,s=l.length,h=0,p=yr(a,this.__takeCount__);if(!r||!e&&u==a&&p==a)return su(n,this.__actions__);var v=[];n:for(;a--&&h<p;){for(var _=-1,g=n[c+=t];++_<s;){var y=l[_],d=y.iteratee,w=y.type,b=d(g);if(2==w)g=b;else if(!b){if(1==w)continue n;break n}}v[h++]=g}return v},Dr.prototype.at=ho,Dr.prototype.chain=function(){return lo(this)},Dr.prototype.commit=function(){return new Fr(this.value(),this.__chain__)},Dr.prototype.next=function(){this.__values__===e&&(this.__values__=hf(this.value()));var n=this.__index__>=this.__values__.length;return{done:n,value:n?e:this.__values__[this.__index__++]}},Dr.prototype.plant=function(n){for(var t,r=this;r instanceof Mr;){var u=Bi(r);u.__index__=0,u.__values__=e,t?i.__wrapped__=u:t=u;var i=u;r=r.__wrapped__}return i.__wrapped__=n,t},Dr.prototype.reverse=function(){var n=this.__wrapped__;if(n instanceof Nr){var t=n;return this.__actions__.length&&(t=new Nr(this)),(t=t.reverse()).__actions__.push({func:so,args:[Qi],thisArg:e}),new Fr(t,this.__chain__)}return this.thru(Qi)},Dr.prototype.toJSON=Dr.prototype.valueOf=Dr.prototype.value=function(){return su(this.__wrapped__,this.__actions__)},Dr.prototype.first=Dr.prototype.head,Qn&&(Dr.prototype[Qn]=function(){return this}),Dr}();"function"==typeof define&&"object"==typeof define.amd&&define.amd?(st._=pr,define(function(){return pr})):pt?((pt.exports=pr)._=pr,ht._=pr):st._=pr}.call(this)}},t={};function r(e){var u=t[e];if(void 0!==u)return u.exports;var i=t[e]={id:e,loaded:!1,exports:{}};return n[e].call(i.exports,i,i.exports,r),i.loaded=!0,i.exports}r.n=n=>{var t=n&&n.__esModule?()=>n.default:()=>n;return r.d(t,{a:t}),t},r.d=(n,t)=>{for(var e in t)r.o(t,e)&&!r.o(n,e)&&Object.defineProperty(n,e,{enumerable:!0,get:t[e]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(n){if("object"==typeof window)return window}}(),r.o=(n,t)=>Object.prototype.hasOwnProperty.call(n,t),r.nmd=n=>(n.paths=[],n.children||(n.children=[]),n),(()=>{"use strict";var n=r(243);!function(){function t(){if(!r.g.wp_consent_type&&!r.g.wp_fallback_consent_type)return;const t={};let e=!1;Object.entries(r.g._googlesitekitConsentCategoryMap).forEach(n=>{let[u,i]=n;r.g.wp_has_consent&&r.g.wp_has_consent(u)&&(i.forEach(n=>{t[n]="granted"}),e=e||!!i.length)}),e&&!(0,n.isEqual)(t,r.g._googlesitekitConsents)&&(r.g.gtag("consent","update",t),r.g._googlesitekitConsents=t)}r.g.document.addEventListener("wp_listen_for_consent_change",function(n){if(n.detail){const t={};let e=!1;Object.keys(n.detail).forEach(u=>{if(r.g._googlesitekitConsentCategoryMap[u]){const i="allow"===n.detail[u]?"granted":"denied",o=r.g._googlesitekitConsentCategoryMap[u];o.forEach(n=>{t[n]=i}),e=!!o.length}}),e&&r.g.gtag("consent","update",t)}}),r.g.document.addEventListener("wp_consent_type_defined",t),r.g.document.addEventListener("DOMContentLoaded",()=>{r.g.waitfor_consent_hook||t()})}()})()})();
!function(e){"use strict";"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof module&&module.exports?module.exports=e(require("jquery")):jQuery&&!jQuery.fn.hoverIntent&&e(jQuery)}(function(f){"use strict";function u(e){return"function"==typeof e}var i,r,v={interval:100,sensitivity:6,timeout:0},s=0,a=function(e){i=e.pageX,r=e.pageY},p=function(e,t,n,o){if(Math.sqrt((n.pX-i)*(n.pX-i)+(n.pY-r)*(n.pY-r))<o.sensitivity)return t.off(n.event,a),delete n.timeoutId,n.isActive=!0,e.pageX=i,e.pageY=r,delete n.pX,delete n.pY,o.over.apply(t[0],[e]);n.pX=i,n.pY=r,n.timeoutId=setTimeout(function(){p(e,t,n,o)},o.interval)};f.fn.hoverIntent=function(e,t,n){function o(e){var u=f.extend({},e),r=f(this),v=((t=r.data("hoverIntent"))||r.data("hoverIntent",t={}),t[i]),t=(v||(t[i]=v={id:i}),v.timeoutId&&(v.timeoutId=clearTimeout(v.timeoutId)),v.event="mousemove.hoverIntent.hoverIntent"+i);"mouseenter"===e.type?v.isActive||(v.pX=u.pageX,v.pY=u.pageY,r.off(t,a).on(t,a),v.timeoutId=setTimeout(function(){p(u,r,v,d)},d.interval)):v.isActive&&(r.off(t,a),v.timeoutId=setTimeout(function(){var e,t,n,o,i;e=u,t=r,n=v,o=d.out,(i=t.data("hoverIntent"))&&delete i[n.id],o.apply(t[0],[e])},d.timeout))}var i=s++,d=f.extend({},v);f.isPlainObject(e)?(d=f.extend(d,e),u(d.out)||(d.out=d.over)):d=u(t)?f.extend(d,{over:e,out:t,selector:n}):f.extend(d,{over:e,out:e,selector:t});return this.on({"mouseenter.hoverIntent":o,"mouseleave.hoverIntent":o},d.selector)}});
(function($){
"use strict";
$.maxmegamenu=function(menu, options){
var plugin=this;
var $menu=$(menu);
var $wrap=$(menu).parent();
var $toggle_bar=$menu.siblings(".mega-menu-toggle");
var html_body_class_timeout;
var defaults={
event: $menu.attr("data-event"),
effect: $menu.attr("data-effect"),
effect_speed: parseInt($menu.attr("data-effect-speed")),
effect_mobile: $menu.attr("data-effect-mobile"),
effect_speed_mobile: parseInt($menu.attr("data-effect-speed-mobile")),
panel_width: $menu.attr("data-panel-width"),
panel_inner_width: $menu.attr("data-panel-inner-width"),
mobile_force_width: $menu.attr("data-mobile-force-width"),
mobile_overlay: $menu.attr("data-mobile-overlay"),
mobile_state: $menu.attr("data-mobile-state"),
mobile_direction: $menu.attr("data-mobile-direction"),
second_click: $menu.attr("data-second-click"),
vertical_behaviour: $menu.attr("data-vertical-behaviour"),
document_click: $menu.attr("data-document-click"),
breakpoint: $menu.attr("data-breakpoint"),
unbind_events: $menu.attr("data-unbind"),
hover_intent_timeout: $menu.attr("data-hover-intent-timeout"),
hover_intent_interval: $menu.attr("data-hover-intent-interval")
};
plugin.settings={};
var items_with_submenus=$("li.mega-menu-megamenu.mega-menu-item-has-children," +
"li.mega-menu-flyout.mega-menu-item-has-children," +
"li.mega-menu-tabbed > ul.mega-sub-menu > li.mega-menu-item-has-children," +
"li.mega-menu-flyout li.mega-menu-item-has-children", $menu);
var collapse_children_parents=$("li.mega-menu-megamenu li.mega-menu-item-has-children.mega-collapse-children > a.mega-menu-link", $menu);
plugin.addAnimatingClass=function(element){
if(plugin.settings.effect==="disabled"){
return;
}
$(".mega-animating").removeClass("mega-animating");
var timeout=plugin.settings.effect_speed + parseInt(plugin.settings.hover_intent_timeout, 10);
element.addClass("mega-animating");
setTimeout(function(){
element.removeClass("mega-animating");
}, timeout);
};
plugin.hideAllPanels=function(){
$(".mega-toggle-on > a.mega-menu-link", $menu).each(function(){
plugin.hidePanel($(this), false);
});
};
plugin.expandMobileSubMenus=function(){
if(plugin.settings.mobile_direction!=='vertical'){
return;
}
$(".mega-menu-item-has-children.mega-expand-on-mobile > a.mega-menu-link", $menu).each(function(){
plugin.showPanel($(this), true);
});
if(plugin.settings.mobile_state=='expand_all'){
$(".mega-menu-item-has-children:not(.mega-toggle-on) > a.mega-menu-link", $menu).each(function(){
plugin.showPanel($(this), true);
});
}
if(plugin.settings.mobile_state=='expand_active'){
const activeItemSelectors=[
"li.mega-current-menu-ancestor.mega-menu-item-has-children > a.mega-menu-link",
"li.mega-current-menu-item.mega-menu-item-has-children > a.mega-menu-link",
"li.mega-current-menu-parent.mega-menu-item-has-children > a.mega-menu-link",
"li.mega-current_page_ancestor.mega-menu-item-has-children > a.mega-menu-link",
"li.mega-current_page_item.mega-menu-item-has-children > a.mega-menu-link"
];
$menu.find(activeItemSelectors.join(', ')).each(function(){
plugin.showPanel($(this), true);
});
}}
plugin.hideSiblingPanels=function(anchor, immediate){
anchor.parent().parent().find(".mega-toggle-on").children("a.mega-menu-link").each(function(){
plugin.hidePanel($(this), immediate);
});
};
plugin.isDesktopView=function(){
var width=Math.max(document.documentElement.clientWidth||0, window.innerWidth||0);
return width > plugin.settings.breakpoint;
};
plugin.isMobileView=function(){
return !plugin.isDesktopView();
};
plugin.showPanel=function(anchor, immediate){
if($.isNumeric(anchor)){
anchor=$("li.mega-menu-item-" + anchor, $menu).find("a.mega-menu-link").first();
}else if(anchor.is("li.mega-menu-item")){
anchor=anchor.find("a.mega-menu-link").first();
}
anchor.parent().triggerHandler("before_open_panel");
anchor.parent().find("[aria-expanded]").first().attr("aria-expanded", "true");
$(".mega-animating").removeClass("mega-animating");
if(plugin.isMobileView()&&anchor.parent().hasClass("mega-hide-sub-menu-on-mobile")){
return;
}
if(plugin.isDesktopView()&&($menu.hasClass("mega-menu-horizontal")||$menu.hasClass("mega-menu-vertical"))&&!anchor.parent().hasClass("mega-collapse-children")){
plugin.hideSiblingPanels(anchor, true);
}
if((plugin.isMobileView()&&$wrap.hasClass("mega-keyboard-navigation"))||plugin.settings.vertical_behaviour==="accordion"){
plugin.hideSiblingPanels(anchor, false);
}
plugin.calculateDynamicSubmenuWidths(anchor);
if(plugin.shouldUseSlideAnimation(anchor, immediate)){
var speed=plugin.isMobileView() ? plugin.settings.effect_speed_mobile:plugin.settings.effect_speed;
anchor.siblings(".mega-sub-menu").css("display", "none").animate({"height":"show", "paddingTop":"show", "paddingBottom":"show", "minHeight":"show"}, speed, function(){
$(this).css("display", "");
});
}
anchor.parent().addClass("mega-toggle-on").triggerHandler("open_panel");
};
plugin.shouldUseSlideAnimation=function(anchor, immediate){
if(immediate==true){
return false;
}
if(anchor.parent().hasClass("mega-collapse-children")){
return true;
}
if(plugin.isDesktopView()&&plugin.settings.effect==="slide"){
return true;
}
if(plugin.isMobileView()){
if(plugin.settings.effect_mobile==="slide"){
return true;
}
if(plugin.isMobileOffCanvas()){
return plugin.settings.mobile_direction!=="horizontal";
}}
return false;
};
plugin.hidePanel=function(anchor, immediate){
if($.isNumeric(anchor)){
anchor=$("li.mega-menu-item-" + anchor, $menu).find("a.mega-menu-link").first();
}else if(anchor.is("li.mega-menu-item")){
anchor=anchor.find("a.mega-menu-link").first();
}
anchor.parent().triggerHandler("before_close_panel");
anchor.parent().find("[aria-expanded]").first().attr("aria-expanded", "false");
if(plugin.shouldUseSlideAnimation(anchor)){
var speed=plugin.isMobileView() ? plugin.settings.effect_speed_mobile:plugin.settings.effect_speed;
anchor.siblings(".mega-sub-menu").animate({"height":"hide", "paddingTop":"hide", "paddingBottom":"hide", "minHeight":"hide"}, speed, function(){
anchor.siblings(".mega-sub-menu").css("display", "");
anchor.parent().removeClass("mega-toggle-on").triggerHandler("close_panel");
});
return;
}
if(immediate){
anchor.siblings(".mega-sub-menu").css("display", "none").delay(plugin.settings.effect_speed).queue(function(){
$(this).css("display", "").dequeue();
});
}
anchor.siblings(".mega-sub-menu").find(".widget_media_video video").each(function(){
this.player.pause();
});
anchor.parent().removeClass("mega-toggle-on").triggerHandler("close_panel");
plugin.addAnimatingClass(anchor.parent());
};
plugin.calculateDynamicSubmenuWidths=function(anchor){
if(anchor.parent().hasClass("mega-menu-megamenu")&&anchor.parent().parent().hasClass("max-mega-menu")&&plugin.settings.panel_width){
if(plugin.isDesktopView()){
var submenu_offset=$menu.offset();
var target_offset=$(plugin.settings.panel_width).offset();
if(plugin.settings.panel_width=='100vw'){
target_offset=$('body').offset();
anchor.siblings(".mega-sub-menu").css({
left: (target_offset.left - submenu_offset.left) + "px"
});
}else if($(plugin.settings.panel_width).length > 0){
anchor.siblings(".mega-sub-menu").css({
width: $(plugin.settings.panel_width).outerWidth(),
left: (target_offset.left - submenu_offset.left) + "px"
});
}}else{
anchor.siblings(".mega-sub-menu").css({
width: "",
left: ""
});
}}
if(anchor.parent().hasClass("mega-menu-megamenu")&&anchor.parent().parent().hasClass("max-mega-menu")&&plugin.settings.panel_inner_width&&$(plugin.settings.panel_inner_width).length > 0){
var target_width=0;
if($(plugin.settings.panel_inner_width).length){
target_width=parseInt($(plugin.settings.panel_inner_width).width(), 10);
}else{
target_width=parseInt(plugin.settings.panel_inner_width, 10);
}
anchor.siblings(".mega-sub-menu").css({
"paddingLeft": "",
"paddingRight": ""
});
var submenu_width=parseInt(anchor.siblings(".mega-sub-menu").innerWidth(), 10);
if(plugin.isDesktopView()&&target_width > 0&&target_width < submenu_width){
anchor.siblings(".mega-sub-menu").css({
"paddingLeft": (submenu_width - target_width) / 2 + "px",
"paddingRight": (submenu_width - target_width) / 2 + "px"
});
}}
};
plugin.bindClickEvents=function(){
if($wrap.data('has-click-events')===true){
return;
}
$wrap.data('has-click-events', true);
var dragging=false;
$(document).on({
"touchmove": function(e){ dragging=true; },
"touchstart": function(e){ dragging=false; }});
$(document).on("click touchend", function(e){
if(!dragging&&plugin.settings.document_click==="collapse"&&! $(e.target).closest(".mega-menu-wrap").length){
plugin.hideAllPanels();
plugin.hideMobileMenu();
}
dragging=false;
});
var clickable_parents=$("> a.mega-menu-link", items_with_submenus).add(collapse_children_parents);
clickable_parents.on("touchend.megamenu", function(e){
if(plugin.settings.event==="hover_intent"){
plugin.unbindHoverIntentEvents();
}
if(plugin.settings.event==="hover"){
plugin.unbindHoverEvents();
}});
clickable_parents.on("click.megamenu", function(e){
if($(e.target).hasClass('mega-indicator')){
return;
}
if(plugin.isDesktopView()&&$(this).parent().hasClass("mega-toggle-on")&&$(this).closest("ul.mega-sub-menu").parent().hasClass("mega-menu-tabbed")){
if(plugin.settings.second_click==="go"){
return;
}else{
e.preventDefault();
return;
}}
if(dragging){
return;
}
if(plugin.isMobileView()&&$(this).parent().hasClass("mega-hide-sub-menu-on-mobile")){
return;
}
if((plugin.settings.second_click==="go"||$(this).parent().hasClass("mega-click-click-go"))&&$(this).attr("href")!==undefined){
if(!$(this).parent().hasClass("mega-toggle-on")){
e.preventDefault();
plugin.showPanel($(this));
}}else{
e.preventDefault();
if($(this).parent().hasClass("mega-toggle-on")){
plugin.hidePanel($(this), false);
}else{
plugin.showPanel($(this));
}}
});
if(plugin.settings.second_click==="disabled"){
clickable_parents.off("click.megamenu");
}
$(".mega-close-after-click:not(.mega-menu-item-has-children) > a.mega-menu-link", $menu).on("click", function(){
plugin.hideAllPanels();
plugin.hideMobileMenu();
});
$("button.mega-close", $wrap).on("click", function(e){
plugin.hideMobileMenu();
});
};
plugin.bindHoverEvents=function(){
items_with_submenus.on({
"mouseenter.megamenu":function(){
plugin.unbindClickEvents();
if(! $(this).hasClass("mega-toggle-on")){
plugin.showPanel($(this).children("a.mega-menu-link"));
}},
"mouseleave.megamenu":function(){
if($(this).hasClass("mega-toggle-on")&&! $(this).hasClass("mega-disable-collapse")&&! $(this).parent().parent().hasClass("mega-menu-tabbed")){
plugin.hidePanel($(this).children("a.mega-menu-link"), false);
}}
});
};
plugin.bindHoverIntentEvents=function(){
items_with_submenus.hoverIntent({
over: function (){
plugin.unbindClickEvents();
if(! $(this).hasClass("mega-toggle-on")){
plugin.showPanel($(this).children("a.mega-menu-link"));
}},
out: function (){
if($(this).hasClass("mega-toggle-on")&&! $(this).hasClass("mega-disable-collapse")&&! $(this).parent().parent().hasClass("mega-menu-tabbed")){
plugin.hidePanel($(this).children("a.mega-menu-link"), false);
}},
timeout: plugin.settings.hover_intent_timeout,
interval: plugin.settings.hover_intent_interval
});
};
plugin.isMobileOffCanvas=function(){
return plugin.settings.effect_mobile==='slide_left'||plugin.settings.effect_mobile==='slide_right';
}
plugin.bindKeyboardEvents=function(){
const tab_key=9;
const escape_key=27;
const enter_key=13;
const left_arrow_key=37;
const up_arrow_key=38;
const right_arrow_key=39;
const down_arrow_key=40;
const space_key=32;
const $firstFocusable=$menu.find("a.mega-menu-link").first();
const $lastFocusable=$wrap.find("button.mega-close").first();
var isMobileOffCanvasHorizontal=function(){
return plugin.isMobileOffCanvas()&&plugin.settings.mobile_direction==='horizontal';
}
var shouldTrapFocusInCurrentSubMenu=function(){
return isMobileOffCanvasHorizontal()&&(keyCode===up_arrow_key||keyCode===down_arrow_key||keyCode===tab_key);
}
$lastFocusable.on('keydown.megamenu', function(e){
var keyCode=e.keyCode||e.which;
if(plugin.isMobileView()&&plugin.isMobileOffCanvas()&&keyCode===tab_key&&! e.shiftKey){
e.preventDefault();
$firstFocusable.trigger('focus');
}});
$firstFocusable.on('keydown.megamenu', function(e){
var keyCode=e.keyCode||e.which;
if(plugin.isMobileView()&&plugin.isMobileOffCanvas()&&keyCode===tab_key&&e.shiftKey){
e.preventDefault();
$lastFocusable.trigger('focus');
}});
$wrap.on("keyup.megamenu", ".max-mega-menu, .mega-menu-toggle", function(e){
var keyCode=e.keyCode||e.which;
var active_link=$(e.target);
if(keyCode===tab_key){
$wrap.addClass("mega-keyboard-navigation");
plugin.bindClickEvents();
if(plugin.isDesktopView()&&keyCode===tab_key&&active_link.is(".mega-menu-link")&&active_link.parent().parent().hasClass('max-mega-menu')){
plugin.hideAllPanels();
}}
});
$wrap.on("keydown.megamenu", "a.mega-menu-link, .mega-indicator, .mega-menu-toggle-block, .mega-menu-toggle-animated-block button, button.mega-close", function(e){
if(! $wrap.hasClass("mega-keyboard-navigation")){
return;
}
var keyCode=e.keyCode||e.which;
var active_link=$(e.target);
if(keyCode===space_key&&active_link.is(".mega-menu-link")){
e.preventDefault();
if(active_link.parent().is(items_with_submenus)){
if(active_link.parent().hasClass("mega-toggle-on")&&! active_link.closest("ul.mega-sub-menu").parent().hasClass("mega-menu-tabbed")){
plugin.hidePanel(active_link);
}else{
plugin.showPanel(active_link);
}}
}
if(keyCode===space_key&&active_link.is("mega-indicator")){
e.preventDefault();
if(active_link.parent().parent().hasClass("mega-toggle-on")&&! active_link.closest("ul.mega-sub-menu").parent().hasClass("mega-menu-tabbed")){
plugin.hidePanel(active_link.parent());
}else{
plugin.showPanel(active_link.parent());
}}
if(keyCode===escape_key){
var submenu_open=$(".mega-toggle-on", $menu).length!==0;
if(submenu_open){
var focused_menu_item=$menu.find(":focus");
if(focused_menu_item.closest('.mega-menu-flyout.mega-toggle-on').length!==0){
var nearest_parent_of_focused_item_li=focused_menu_item.closest('.mega-toggle-on');
var nearest_parent_of_focused_item_a=$("> a.mega-menu-link", nearest_parent_of_focused_item_li);
plugin.hidePanel(nearest_parent_of_focused_item_a);
nearest_parent_of_focused_item_a.trigger('focus');
}
if(focused_menu_item.closest('.mega-menu-megamenu.mega-toggle-on').length!==0){
var nearest_parent_of_focused_item_li=focused_menu_item.closest('.mega-menu-megamenu.mega-toggle-on');
var nearest_parent_of_focused_item_a=$("> a.mega-menu-link", nearest_parent_of_focused_item_li);
plugin.hidePanel(nearest_parent_of_focused_item_a);
nearest_parent_of_focused_item_a.trigger('focus');
}}
if(plugin.isMobileView()&&! submenu_open){
plugin.hideMobileMenu();
}}
if(keyCode===space_key||keyCode===enter_key){
if(active_link.is(".mega-menu-toggle-block button, .mega-menu-toggle-animated-block button")){
e.preventDefault();
if($toggle_bar.hasClass("mega-menu-open")){
plugin.hideMobileMenu();
}else{
plugin.showMobileMenu();
html_body_class_timeout=setTimeout(function(){
$menu.find("a.mega-menu-link").first().trigger('focus');
}, plugin.settings.effect_speed_mobile);
}}
}
if(keyCode===enter_key){
if(active_link.is(".mega-indicator")){
if(active_link.closest("li.mega-menu-item").hasClass("mega-toggle-on")&&! active_link.closest("ul.mega-sub-menu").parent().hasClass("mega-menu-tabbed")){
plugin.hidePanel(active_link.parent());
}else{
plugin.showPanel(active_link.parent());
}
return;
}
if(active_link.parent().is(items_with_submenus)){
if(plugin.isMobileView()&&active_link.parent().is(".mega-hide-sub-menu-on-mobile")){
return;
}
if(active_link.is("[href]")===false){
if(active_link.parent().hasClass("mega-toggle-on")&&! active_link.closest("ul.mega-sub-menu").parent().hasClass("mega-menu-tabbed")){
plugin.hidePanel(active_link);
}else{
plugin.showPanel(active_link);
}
return;
}
if(active_link.parent().hasClass("mega-toggle-on")&&! active_link.closest("ul.mega-sub-menu").parent().hasClass("mega-menu-tabbed")){
return;
}else{
e.preventDefault();
plugin.showPanel(active_link);
}}
}
if(shouldTrapFocusInCurrentSubMenu()){
var focused_item=$(":focus", $menu);
if(focused_item.length===0){
e.preventDefault();
$("> li.mega-menu-item:visible", $menu).find("> a.mega-menu-link, .mega-search span[role=button]").first().trigger('focus');
return;
}
var next_item_to_focus=focused_item.parent().nextAll("li.mega-menu-item:visible").find("> a.mega-menu-link, .mega-search span[role=button]").first();
if(next_item_to_focus.length===0&&focused_item.closest(".mega-menu-megamenu").length!==0){
var all_li_parents=focused_item.parentsUntil(".mega-menu-megamenu");
if(focused_item.is(all_li_parents.find("a.mega-menu-link").last())){
next_item_to_focus=all_li_parents.find(".mega-back-button:visible > a.mega-menu-link").first();
}}
if(next_item_to_focus.length===0){
next_item_to_focus=focused_item.parent().prevAll("li.mega-menu-item:visible").find("> a.mega-menu-link, .mega-search span[role=button]").first();
}
if(next_item_to_focus.length!==0){
e.preventDefault();
next_item_to_focus.trigger('focus');
}}
var shouldGoToNextTopLevelItem=function(){
return(( keyCode===right_arrow_key&&plugin.isDesktopView())||(keyCode===down_arrow_key&&plugin.isMobileView()) )&&$menu.hasClass("mega-menu-horizontal");
}
var shouldGoToPreviousTopLevelItem=function(){
return(( keyCode===left_arrow_key&&plugin.isDesktopView())||(keyCode===up_arrow_key&&plugin.isMobileView()) )&&$menu.hasClass("mega-menu-horizontal");
}
if(shouldGoToNextTopLevelItem()){
e.preventDefault();
var next_top_level_item=$("> .mega-toggle-on", $menu).nextAll("li.mega-menu-item:visible").find("> a.mega-menu-link, .mega-search span[role=button]").first();
if(next_top_level_item.length===0){
next_top_level_item=$(":focus", $menu).parent().nextAll("li.mega-menu-item:visible").find("> a.mega-menu-link, .mega-search span[role=button]").first();
}
if(next_top_level_item.length===0){
next_top_level_item=$(":focus", $menu).parent().parent().parent().nextAll("li.mega-menu-item:visible").find("> a.mega-menu-link, .mega-search span[role=button]").first();
}
plugin.hideAllPanels();
next_top_level_item.trigger('focus');
}
if(shouldGoToPreviousTopLevelItem()){
e.preventDefault();
var prev_top_level_item=$("> .mega-toggle-on", $menu).prevAll("li.mega-menu-item:visible").find("> a.mega-menu-link, .mega-search span[role=button]").last();
if(prev_top_level_item.length===0){
prev_top_level_item=$(":focus", $menu).parent().prevAll("li.mega-menu-item:visible").find("> a.mega-menu-link, .mega-search span[role=button]").last();
}
if(prev_top_level_item.length===0){
prev_top_level_item=$(":focus", $menu).parent().parent().parent().prevAll("li.mega-menu-item:visible").find("> a.mega-menu-link, .mega-search span[role=button]").last();
}
plugin.hideAllPanels();
prev_top_level_item.trigger('focus');
}});
$wrap.on("focusout.megamenu", function(e){
if($wrap.hasClass("mega-keyboard-navigation")){
setTimeout(function(){
var menu_has_focus=$wrap.find(":focus").length > 0;
if(! menu_has_focus){
$wrap.removeClass("mega-keyboard-navigation");
plugin.hideAllPanels();
plugin.hideMobileMenu();
}}, 10);
}});
};
plugin.unbindAllEvents=function(){
$("ul.mega-sub-menu, li.mega-menu-item, li.mega-menu-row, li.mega-menu-column, a.mega-menu-link, .mega-indicator", $menu).off().unbind();
};
plugin.unbindClickEvents=function(){
if($wrap.hasClass('mega-keyboard-navigation')){
return;
}
$("> a.mega-menu-link", items_with_submenus).not(collapse_children_parents).off("click.megamenu touchend.megamenu");
$wrap.data('has-click-events', false);
};
plugin.unbindHoverEvents=function(){
items_with_submenus.off("mouseenter.megamenu mouseleave.megamenu");
};
plugin.unbindHoverIntentEvents=function(){
items_with_submenus.off("mouseenter mouseleave").removeProp("hoverIntent_t").removeProp("hoverIntent_s");
};
plugin.unbindKeyboardEvents=function(){
$wrap.off("keyup.megamenu keydown.megamenu focusout.megamenu");
};
plugin.unbindMegaMenuEvents=function(){
if(plugin.settings.event==="hover_intent"){
plugin.unbindHoverIntentEvents();
}
if(plugin.settings.event==="hover"){
plugin.unbindHoverEvents();
}
plugin.unbindClickEvents();
plugin.unbindKeyboardEvents();
};
plugin.bindMegaMenuEvents=function(){
plugin.unbindMegaMenuEvents();
if(plugin.isDesktopView()&&plugin.settings.event==="hover_intent"){
plugin.bindHoverIntentEvents();
}
if(plugin.isDesktopView()&&plugin.settings.event==="hover"){
plugin.bindHoverEvents();
}
plugin.bindClickEvents();
plugin.bindKeyboardEvents();
};
plugin.checkWidth=function(){
if(plugin.isMobileView()&&$menu.data("view")==="desktop"){
plugin.switchToMobile();
}
if(plugin.isDesktopView()&&$menu.data("view")==="mobile"){
plugin.switchToDesktop();
}
plugin.calculateDynamicSubmenuWidths($("> li.mega-menu-megamenu > a.mega-menu-link", $menu));
};
plugin.reverseRightAlignedItems=function(){
if(! $("body").hasClass("rtl")&&$menu.hasClass("mega-menu-horizontal")&&$menu.css("display")!=='flex'){
$menu.append($menu.children("li.mega-item-align-right").get().reverse());
}};
plugin.addClearClassesToMobileItems=function(){
$(".mega-menu-row", $menu).each(function(){
$("> .mega-sub-menu > .mega-menu-column:not(.mega-hide-on-mobile)", $(this)).filter(":even").addClass("mega-menu-clear");
});
};
plugin.initDesktop=function(){
$menu.data("view", "desktop");
plugin.bindMegaMenuEvents();
plugin.initIndicators();
};
plugin.initMobile=function(){
plugin.switchToMobile();
};
plugin.switchToDesktop=function(){
$menu.data("view", "desktop");
plugin.bindMegaMenuEvents();
plugin.reverseRightAlignedItems();
plugin.hideAllPanels();
plugin.hideMobileMenu(true);
$menu.removeAttr('role');
$menu.removeAttr('aria-modal');
$menu.removeAttr('aria-hidden');
};
plugin.switchToMobile=function(){
$menu.data("view", "mobile");
if(plugin.isMobileOffCanvas()&&$toggle_bar.is(":visible")){
$menu.attr('role', 'dialog');
$menu.attr('aria-modal', 'true');
$menu.attr('aria-hidden', 'true');
}
plugin.bindMegaMenuEvents();
plugin.initIndicators();
plugin.reverseRightAlignedItems();
plugin.addClearClassesToMobileItems();
plugin.hideAllPanels();
plugin.expandMobileSubMenus();
};
plugin.initToggleBar=function(){
$toggle_bar.on("click", function(e){
if($(e.target).is(".mega-menu-toggle, .mega-menu-toggle-custom-block *, .mega-menu-toggle-block, .mega-menu-toggle-animated-block, .mega-menu-toggle-animated-block *, .mega-toggle-blocks-left, .mega-toggle-blocks-center, .mega-toggle-blocks-right, .mega-toggle-label, .mega-toggle-label span")){
e.preventDefault();
if($(this).hasClass("mega-menu-open")){
plugin.hideMobileMenu();
}else{
plugin.showMobileMenu();
}}
});
};
plugin.initIndicators=function(){
$menu.off('click.megamenu', '.mega-indicator');
$menu.on('click.megamenu', '.mega-indicator', function(e){
e.preventDefault();
e.stopPropagation();
if($(this).closest(".mega-menu-item").hasClass("mega-toggle-on")){
if(! $(this).closest("ul.mega-sub-menu").parent().hasClass("mega-menu-tabbed")||plugin.isMobileView()){
plugin.hidePanel($(this).parent(), false);
}}else{
plugin.showPanel($(this).parent(), false);
}});
};
plugin.hideMobileMenu=function(force){
force=force||false;
if(! $toggle_bar.is(":visible")&&! force){
return;
}
$menu.attr("aria-hidden", "true");
html_body_class_timeout=setTimeout(function(){
$("body").removeClass($menu.attr("id") + "-mobile-open");
$("html").removeClass($menu.attr("id") + "-off-canvas-open");
}, plugin.settings.effect_speed_mobile);
if($wrap.hasClass("mega-keyboard-navigation")){
$(".mega-menu-toggle-block button, button.mega-toggle-animated", $toggle_bar).first().trigger('focus');
}
$(".mega-toggle-label, .mega-toggle-animated", $toggle_bar).attr("aria-expanded", "false");
if(plugin.settings.effect_mobile==="slide"&&! force){
$menu.animate({"height":"hide"}, plugin.settings.effect_speed_mobile, function(){
$menu.css({
width: "",
left: "",
display: ""
});
$toggle_bar.removeClass("mega-menu-open");
});
}else{
$menu.css({
width: "",
left: "",
display: ""
});
$toggle_bar.removeClass("mega-menu-open");
}
$menu.triggerHandler("mmm:hideMobileMenu");
};
plugin.showMobileMenu=function(){
if(! $toggle_bar.is(":visible")){
return;
}
clearTimeout(html_body_class_timeout);
$("body").addClass($menu.attr("id") + "-mobile-open");
plugin.expandMobileSubMenus();
if(plugin.isMobileOffCanvas()){
$("html").addClass($menu.attr("id") + "-off-canvas-open");
}
if(plugin.settings.effect_mobile==="slide"){
$menu.animate({"height":"show"}, plugin.settings.effect_speed_mobile, function(){
$(this).css("display", "");
});
}
$(".mega-toggle-label, .mega-toggle-animated", $toggle_bar).attr("aria-expanded", "true");
$toggle_bar.addClass("mega-menu-open");
plugin.toggleBarForceWidth();
$menu.attr("aria-hidden", "false");
$menu.triggerHandler("mmm:showMobileMenu");
};
plugin.toggleBarForceWidth=function(){
if($(plugin.settings.mobile_force_width).length&&(plugin.settings.effect_mobile==="slide"||plugin.settings.effect_mobile==="disabled") ){
var submenu_offset=$toggle_bar.offset();
var target_offset=$(plugin.settings.mobile_force_width).offset();
$menu.css({
width: $(plugin.settings.mobile_force_width).outerWidth(),
left: (target_offset.left - submenu_offset.left) + "px"
});
}};
plugin.doConsoleChecks=function(){
if(plugin.settings.mobile_force_width!="false"&&! $(plugin.settings.mobile_force_width).length&&(plugin.settings.effect_mobile==="slide"||plugin.settings.effect_mobile==="disabled") ){
console.warn('Max Mega Menu #' + $wrap.attr('id') + ': Mobile Force Width element (' + plugin.settings.mobile_force_width + ') not found');
}
const cssWidthRegex=/^((\d+(\.\d+)?(px|%|em|rem|vw|vh|ch|ex|cm|mm|in|pt|pc))|auto)$/i;
if(plugin.settings.panel_width!==undefined&&! cssWidthRegex.test(plugin.settings.panel_width)&&! $(plugin.settings.panel_width).length){
console.warn('Max Mega Menu #' + $wrap.attr('id') + ': Panel Width (Outer) element (' + plugin.settings.panel_width + ') not found');
}
if(plugin.settings.panel_inner_width!==undefined&&! cssWidthRegex.test(plugin.settings.panel_inner_width)&&! $(plugin.settings.panel_inner_width).length){
console.warn('Max Mega Menu #' + $wrap.attr('id') + ': Panel Width (Inner) element (' + plugin.settings.panel_inner_width + ') not found');
}}
plugin.init=function(){
$menu.triggerHandler("before_mega_menu_init");
plugin.settings=$.extend({}, defaults, options);
if(window.console){
plugin.doConsoleChecks();
}
$menu.removeClass("mega-no-js");
plugin.initToggleBar();
if(plugin.settings.unbind_events==="true"){
plugin.unbindAllEvents();
}
$(window).on("load", function(){
plugin.calculateDynamicSubmenuWidths($("> li.mega-menu-megamenu > a.mega-menu-link", $menu));
});
if(plugin.isDesktopView()){
plugin.initDesktop();
}else{
plugin.initMobile();
}
$(window).on("resize", function(){
plugin.checkWidth();
});
$menu.triggerHandler("after_mega_menu_init");
};
plugin.init();
};
$.fn.maxmegamenu=function(options){
return this.each(function(){
if(undefined===$(this).data("maxmegamenu")){
var plugin=new $.maxmegamenu(this, options);
$(this).data("maxmegamenu", plugin);
}});
};
$(function(){
$(".max-mega-menu").maxmegamenu();
});
}(jQuery));
let WPFormsUserJourney=window.WPFormsUserJourney||((n,s)=>{let u={init(){u.checkCleanupCookie();let e=u.getUserJourneyData();var r=Math.round(Date.now()/1e3);0!==Object.keys(e).length||""===n.referrer||n.referrer.startsWith(s.location.origin)||(e[r-2]=n.referrer+"|#|{ReferrerPageTitle}");let t=s.location.href+"|#|"+n.title;"undefined"!=typeof wpforms_user_journey&&wpforms_user_journey.page_id&&(t+="|#|"+Number(wpforms_user_journey.page_id));var o=encodeURIComponent(u.addSlashes(t)),a=u.getLatestTimeStamp(e);e[a]===o&&delete e[a],e[r]=o,e=u.getLastData(e),u.setUserJourneyInputs(e),u.setUserJourneyData(e)},getObjectKeysAsNumbers(e){return Object.keys(e).map(e=>Number.parseInt(e,10))},getLatestTimeStamp(e){e=u.getObjectKeysAsNumbers(e);return Math.max(...e).toString()},checkCleanupCookie(){u.createCookie("_wpfuj","",0),"1"===u.getCookie(wpforms_user_journey.cleanup_cookie_name)&&(localStorage.removeItem(wpforms_user_journey.storage_name),u.createCookie(wpforms_user_journey.cleanup_cookie_name,"",0))},setUserJourneyInputs(t){let o=wpforms_user_journey.storage_name;n.querySelectorAll("form.wpforms-form").forEach(e=>{let r=e.querySelector(`input[name="${o}"]`);r||((r=n.createElement("input")).type="hidden",r.name=o,e.appendChild(r)),r.value=JSON.stringify(t)})},setUserJourneyData(e){u.setLocalStorage(JSON.stringify(e))},setLocalStorage(e){try{localStorage.setItem(wpforms_user_journey.storage_name,e)}catch(e){u.debug("Error setting local storage:",e)}},getLastData(e){var r=Object.entries(e).sort(([e],[r])=>Number(e)-Number(r)),t=[];let o=2;var a=Math.floor(Date.now()/1e3)-31536e3;for(let e=r.length-1;0<=e;--e){var[s,n]=r[e];if(Number(s)<a)break;if(t.length>=wpforms_user_journey.max_data_items)break;var u=String(s).length+String(n).length+6;if(o+u>wpforms_user_journey.max_data_size)break;o+=u,t.push([s,n])}return Object.fromEntries(t)},getUserJourneyData(){let e={};try{var r=JSON.parse(u.getLocalStorage());r&&"object"==typeof r&&!Array.isArray(r)&&(e=r)}catch(e){u.debug("Error parsing JSON:",e)}return e},getLocalStorage(){let e=null;try{e=localStorage.getItem(wpforms_user_journey.storage_name)}catch(e){u.debug("Error getting local storage:",e)}return e},createCookie(e,r,t){let o="",a="";var s;wpforms_user_journey.is_ssl&&(a=";secure"),o=t?-1===t?"":((s=new Date).setTime(s.getTime()+24*t*60*60*1e3),";expires="+s.toGMTString()):";expires=Thu, 01 Jan 1970 00:00:01 GMT",n.cookie=e+"="+r+o+";path=/;samesite=strict"+a},getCookie(e){var r,t=e+"=";for(r of n.cookie.split(";")){let e=r;for(;" "===e.charAt(0);)e=e.substring(1,e.length);if(0===e.indexOf(t))return e.substring(t.length,e.length)}return null},addSlashes(e){return(e+"").replace(/[\\"]/g,"\\$&")},debug(...e){wpforms_user_journey.is_debug&&console.log("User Journey:",...e)}};return u})(document,window);WPFormsUserJourney.init();