(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(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;
})
]);
!function(t){"use strict";"function"==typeof define&&define.amd?define(["jquery"],t):t(jQuery)}(function(x){"use strict";var t,e,i,n,W,C,o,s,r,l,a,h,u;function E(t,e,i){return[parseFloat(t[0])*(a.test(t[0])?e/100:1),parseFloat(t[1])*(a.test(t[1])?i/100:1)]}function L(t,e){return parseInt(x.css(t,e),10)||0}function N(t){return null!=t&&t===t.window}x.ui=x.ui||{},x.ui.version="1.13.3",
x.extend(x.expr.pseudos,{data:x.expr.createPseudo?x.expr.createPseudo(function(e){return function(t){return!!x.data(t,e)}}):function(t,e,i){return!!x.data(t,i[3])}}),
x.fn.extend({disableSelection:(t="onselectstart"in document.createElement("div")?"selectstart":"mousedown",function(){return this.on(t+".ui-disableSelection",function(t){t.preventDefault()})}),enableSelection:function(){return this.off(".ui-disableSelection")}}),
x.ui.focusable=function(t,e){var i,n,o,s=t.nodeName.toLowerCase();return"area"===s?(o=(i=t.parentNode).name,!(!t.href||!o||"map"!==i.nodeName.toLowerCase())&&0<(i=x("img[usemap='#"+o+"']")).length&&i.is(":visible")):(/^(input|select|textarea|button|object)$/.test(s)?(n=!t.disabled)&&(o=x(t).closest("fieldset")[0])&&(n=!o.disabled):n="a"===s&&t.href||e,n&&x(t).is(":visible")&&function(t){var e=t.css("visibility");for(;"inherit"===e;)t=t.parent(),e=t.css("visibility");return"visible"===e}(x(t)))},x.extend(x.expr.pseudos,{focusable:function(t){return x.ui.focusable(t,null!=x.attr(t,"tabindex"))}}),x.fn._form=function(){return"string"==typeof this[0].form?this.closest("form"):x(this[0].form)},
x.ui.formResetMixin={_formResetHandler:function(){var e=x(this);setTimeout(function(){var t=e.data("ui-form-reset-instances");x.each(t,function(){this.refresh()})})},_bindFormResetHandler:function(){var t;this.form=this.element._form(),this.form.length&&((t=this.form.data("ui-form-reset-instances")||[]).length||this.form.on("reset.ui-form-reset",this._formResetHandler),t.push(this),this.form.data("ui-form-reset-instances",t))},_unbindFormResetHandler:function(){var t;this.form.length&&((t=this.form.data("ui-form-reset-instances")).splice(x.inArray(this,t),1),t.length?this.form.data("ui-form-reset-instances",t):this.form.removeData("ui-form-reset-instances").off("reset.ui-form-reset"))}},x.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase()),
x.expr.pseudos||(x.expr.pseudos=x.expr[":"]),x.uniqueSort||(x.uniqueSort=x.unique),x.escapeSelector||(e=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\x80-\uFFFF\w-]/g,i=function(t,e){return e?"\0"===t?"�":t.slice(0,-1)+"\\"+t.charCodeAt(t.length-1).toString(16)+" ":"\\"+t},x.escapeSelector=function(t){return(t+"").replace(e,i)}),x.fn.even&&x.fn.odd||x.fn.extend({even:function(){return this.filter(function(t){return t%2==0})},odd:function(){return this.filter(function(t){return t%2==1})}}),
x.ui.keyCode={BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38},
x.fn.labels=function(){var t,e,i;return this.length?this[0].labels&&this[0].labels.length?this.pushStack(this[0].labels):(e=this.eq(0).parents("label"),(t=this.attr("id"))&&(i=(i=this.eq(0).parents().last()).add((i.length?i:this).siblings()),t="label[for='"+x.escapeSelector(t)+"']",e=e.add(i.find(t).addBack(t))),this.pushStack(e)):this.pushStack([])},x.ui.plugin={add:function(t,e,i){var n,o=x.ui[t].prototype;for(n in i)o.plugins[n]=o.plugins[n]||[],o.plugins[n].push([e,i[n]])},call:function(t,e,i,n){var o,s=t.plugins[e];if(s&&(n||t.element[0].parentNode&&11!==t.element[0].parentNode.nodeType))for(o=0;o<s.length;o++)t.options[s[o][0]]&&s[o][1].apply(t.element,i)}},
W=Math.max,C=Math.abs,o=/left|center|right/,s=/top|center|bottom/,r=/[\+\-]\d+(\.[\d]+)?%?/,l=/^\w+/,a=/%$/,h=x.fn.position,x.position={scrollbarWidth:function(){var t,e,i;return void 0!==n?n:(i=(e=x("<div style='display:block;position:absolute;width:200px;height:200px;overflow:hidden;'><div style='height:300px;width:auto;'></div></div>")).children()[0],x("body").append(e),t=i.offsetWidth,e.css("overflow","scroll"),t===(i=i.offsetWidth)&&(i=e[0].clientWidth),e.remove(),n=t-i)},getScrollInfo:function(t){var e=t.isWindow||t.isDocument?"":t.element.css("overflow-x"),i=t.isWindow||t.isDocument?"":t.element.css("overflow-y"),e="scroll"===e||"auto"===e&&t.width<t.element[0].scrollWidth;return{width:"scroll"===i||"auto"===i&&t.height<t.element[0].scrollHeight?x.position.scrollbarWidth():0,height:e?x.position.scrollbarWidth():0}},getWithinInfo:function(t){var e=x(t||window),i=N(e[0]),n=!!e[0]&&9===e[0].nodeType;return{element:e,isWindow:i,isDocument:n,offset:!i&&!n?x(t).offset():{left:0,top:0},scrollLeft:e.scrollLeft(),scrollTop:e.scrollTop(),width:e.outerWidth(),height:e.outerHeight()}}},x.fn.position=function(f){var c,d,p,g,m,v,y,w,b,_,t,e;return f&&f.of?(v="string"==typeof(f=x.extend({},f)).of?x(document).find(f.of):x(f.of),y=x.position.getWithinInfo(f.within),w=x.position.getScrollInfo(y),b=(f.collision||"flip").split(" "),_={},e=9===(e=(t=v)[0]).nodeType?{width:t.width(),height:t.height(),offset:{top:0,left:0}}:N(e)?{width:t.width(),height:t.height(),offset:{top:t.scrollTop(),left:t.scrollLeft()}}:e.preventDefault?{width:0,height:0,offset:{top:e.pageY,left:e.pageX}}:{width:t.outerWidth(),height:t.outerHeight(),offset:t.offset()},v[0].preventDefault&&(f.at="left top"),d=e.width,p=e.height,m=x.extend({},g=e.offset),x.each(["my","at"],function(){var t,e,i=(f[this]||"").split(" ");(i=1===i.length?o.test(i[0])?i.concat(["center"]):s.test(i[0])?["center"].concat(i):["center","center"]:i)[0]=o.test(i[0])?i[0]:"center",i[1]=s.test(i[1])?i[1]:"center",t=r.exec(i[0]),e=r.exec(i[1]),_[this]=[t?t[0]:0,e?e[0]:0],f[this]=[l.exec(i[0])[0],l.exec(i[1])[0]]}),1===b.length&&(b[1]=b[0]),"right"===f.at[0]?m.left+=d:"center"===f.at[0]&&(m.left+=d/2),"bottom"===f.at[1]?m.top+=p:"center"===f.at[1]&&(m.top+=p/2),c=E(_.at,d,p),m.left+=c[0],m.top+=c[1],this.each(function(){var i,t,r=x(this),l=r.outerWidth(),a=r.outerHeight(),e=L(this,"marginLeft"),n=L(this,"marginTop"),o=l+e+L(this,"marginRight")+w.width,s=a+n+L(this,"marginBottom")+w.height,h=x.extend({},m),u=E(_.my,r.outerWidth(),r.outerHeight());"right"===f.my[0]?h.left-=l:"center"===f.my[0]&&(h.left-=l/2),"bottom"===f.my[1]?h.top-=a:"center"===f.my[1]&&(h.top-=a/2),h.left+=u[0],h.top+=u[1],i={marginLeft:e,marginTop:n},x.each(["left","top"],function(t,e){x.ui.position[b[t]]&&x.ui.position[b[t]][e](h,{targetWidth:d,targetHeight:p,elemWidth:l,elemHeight:a,collisionPosition:i,collisionWidth:o,collisionHeight:s,offset:[c[0]+u[0],c[1]+u[1]],my:f.my,at:f.at,within:y,elem:r})}),f.using&&(t=function(t){var e=g.left-h.left,i=e+d-l,n=g.top-h.top,o=n+p-a,s={target:{element:v,left:g.left,top:g.top,width:d,height:p},element:{element:r,left:h.left,top:h.top,width:l,height:a},horizontal:i<0?"left":0<e?"right":"center",vertical:o<0?"top":0<n?"bottom":"middle"};d<l&&C(e+i)<d&&(s.horizontal="center"),p<a&&C(n+o)<p&&(s.vertical="middle"),W(C(e),C(i))>W(C(n),C(o))?s.important="horizontal":s.important="vertical",f.using.call(this,t,s)}),r.offset(x.extend(h,{using:t}))})):h.apply(this,arguments)},x.ui.position={fit:{left:function(t,e){var i,n=e.within,o=n.isWindow?n.scrollLeft:n.offset.left,n=n.width,s=t.left-e.collisionPosition.marginLeft,r=o-s,l=s+e.collisionWidth-n-o;n<e.collisionWidth?0<r&&l<=0?(i=t.left+r+e.collisionWidth-n-o,t.left+=r-i):t.left=!(0<l&&r<=0)&&l<r?o+n-e.collisionWidth:o:0<r?t.left+=r:0<l?t.left-=l:t.left=W(t.left-s,t.left)},top:function(t,e){var i,n=e.within,n=n.isWindow?n.scrollTop:n.offset.top,o=e.within.height,s=t.top-e.collisionPosition.marginTop,r=n-s,l=s+e.collisionHeight-o-n;o<e.collisionHeight?0<r&&l<=0?(i=t.top+r+e.collisionHeight-o-n,t.top+=r-i):t.top=!(0<l&&r<=0)&&l<r?n+o-e.collisionHeight:n:0<r?t.top+=r:0<l?t.top-=l:t.top=W(t.top-s,t.top)}},flip:{left:function(t,e){var i=e.within,n=i.offset.left+i.scrollLeft,o=i.width,i=i.isWindow?i.scrollLeft:i.offset.left,s=t.left-e.collisionPosition.marginLeft,r=s-i,s=s+e.collisionWidth-o-i,l="left"===e.my[0]?-e.elemWidth:"right"===e.my[0]?e.elemWidth:0,a="left"===e.at[0]?e.targetWidth:"right"===e.at[0]?-e.targetWidth:0,h=-2*e.offset[0];r<0?((o=t.left+l+a+h+e.collisionWidth-o-n)<0||o<C(r))&&(t.left+=l+a+h):0<s&&(0<(n=t.left-e.collisionPosition.marginLeft+l+a+h-i)||C(n)<s)&&(t.left+=l+a+h)},top:function(t,e){var i=e.within,n=i.offset.top+i.scrollTop,o=i.height,i=i.isWindow?i.scrollTop:i.offset.top,s=t.top-e.collisionPosition.marginTop,r=s-i,s=s+e.collisionHeight-o-i,l="top"===e.my[1]?-e.elemHeight:"bottom"===e.my[1]?e.elemHeight:0,a="top"===e.at[1]?e.targetHeight:"bottom"===e.at[1]?-e.targetHeight:0,h=-2*e.offset[1];r<0?((o=t.top+l+a+h+e.collisionHeight-o-n)<0||o<C(r))&&(t.top+=l+a+h):0<s&&(0<(n=t.top-e.collisionPosition.marginTop+l+a+h-i)||C(n)<s)&&(t.top+=l+a+h)}},flipfit:{left:function(){x.ui.position.flip.left.apply(this,arguments),x.ui.position.fit.left.apply(this,arguments)},top:function(){x.ui.position.flip.top.apply(this,arguments),x.ui.position.fit.top.apply(this,arguments)}}},x.ui.safeActiveElement=function(e){var i;try{i=e.activeElement}catch(t){i=e.body}return i=(i=i||e.body).nodeName?i:e.body},x.ui.safeBlur=function(t){t&&"body"!==t.nodeName.toLowerCase()&&x(t).trigger("blur")},
x.fn.scrollParent=function(t){var e=this.css("position"),i="absolute"===e,n=t?/(auto|scroll|hidden)/:/(auto|scroll)/,t=this.parents().filter(function(){var t=x(this);return(!i||"static"!==t.css("position"))&&n.test(t.css("overflow")+t.css("overflow-y")+t.css("overflow-x"))}).eq(0);return"fixed"!==e&&t.length?t:x(this[0].ownerDocument||document)},
x.extend(x.expr.pseudos,{tabbable:function(t){var e=x.attr(t,"tabindex"),i=null!=e;return(!i||0<=e)&&x.ui.focusable(t,i)}}),
x.fn.extend({uniqueId:(u=0,function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++u)})}),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&x(this).removeAttr("id")})}});
var f,c=0,d=Array.prototype.hasOwnProperty,p=Array.prototype.slice;x.cleanData=(f=x.cleanData,function(t){for(var e,i,n=0;null!=(i=t[n]);n++)(e=x._data(i,"events"))&&e.remove&&x(i).triggerHandler("remove");f(t)}),x.widget=function(t,i,e){var n,o,s,r={},l=t.split(".")[0],a=l+"-"+(t=t.split(".")[1]);return e||(e=i,i=x.Widget),Array.isArray(e)&&(e=x.extend.apply(null,[{}].concat(e))),x.expr.pseudos[a.toLowerCase()]=function(t){return!!x.data(t,a)},x[l]=x[l]||{},n=x[l][t],o=x[l][t]=function(t,e){if(!this||!this._createWidget)return new o(t,e);arguments.length&&this._createWidget(t,e)},x.extend(o,n,{version:e.version,_proto:x.extend({},e),_childConstructors:[]}),(s=new i).options=x.widget.extend({},s.options),x.each(e,function(e,n){function o(){return i.prototype[e].apply(this,arguments)}function s(t){return i.prototype[e].apply(this,t)}r[e]="function"!=typeof n?n:function(){var t,e=this._super,i=this._superApply;return this._super=o,this._superApply=s,t=n.apply(this,arguments),this._super=e,this._superApply=i,t}}),o.prototype=x.widget.extend(s,{widgetEventPrefix:n&&s.widgetEventPrefix||t},r,{constructor:o,namespace:l,widgetName:t,widgetFullName:a}),n?(x.each(n._childConstructors,function(t,e){var i=e.prototype;x.widget(i.namespace+"."+i.widgetName,o,e._proto)}),delete n._childConstructors):i._childConstructors.push(o),x.widget.bridge(t,o),o},x.widget.extend=function(t){for(var e,i,n=p.call(arguments,1),o=0,s=n.length;o<s;o++)for(e in n[o])i=n[o][e],d.call(n[o],e)&&void 0!==i&&(x.isPlainObject(i)?t[e]=x.isPlainObject(t[e])?x.widget.extend({},t[e],i):x.widget.extend({},i):t[e]=i);return t},x.widget.bridge=function(s,e){var r=e.prototype.widgetFullName||s;x.fn[s]=function(i){var t="string"==typeof i,n=p.call(arguments,1),o=this;return t?this.length||"instance"!==i?this.each(function(){var t,e=x.data(this,r);return"instance"===i?(o=e,!1):e?"function"!=typeof e[i]||"_"===i.charAt(0)?x.error("no such method '"+i+"' for "+s+" widget instance"):(t=e[i].apply(e,n))!==e&&void 0!==t?(o=t&&t.jquery?o.pushStack(t.get()):t,!1):void 0:x.error("cannot call methods on "+s+" prior to initialization; attempted to call method '"+i+"'")}):o=void 0:(n.length&&(i=x.widget.extend.apply(null,[i].concat(n))),this.each(function(){var t=x.data(this,r);t?(t.option(i||{}),t._init&&t._init()):x.data(this,r,new e(i,this))})),o}},x.Widget=function(){},x.Widget._childConstructors=[],x.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"<div>",options:{classes:{},disabled:!1,create:null},_createWidget:function(t,e){e=x(e||this.defaultElement||this)[0],this.element=x(e),this.uuid=c++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=x(),this.hoverable=x(),this.focusable=x(),this.classesElementLookup={},e!==this&&(x.data(e,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t){t.target===e&&this.destroy()}}),this.document=x(e.style?e.ownerDocument:e.document||e),this.window=x(this.document[0].defaultView||this.document[0].parentWindow)),this.options=x.widget.extend({},this.options,this._getCreateOptions(),t),this._create(),this.options.disabled&&this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:x.noop,_create:x.noop,_init:x.noop,destroy:function(){var i=this;this._destroy(),x.each(this.classesElementLookup,function(t,e){i._removeClass(e,t)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:x.noop,widget:function(){return this.element},option:function(t,e){var i,n,o,s=t;if(0===arguments.length)return x.widget.extend({},this.options);if("string"==typeof t)if(s={},t=(i=t.split(".")).shift(),i.length){for(n=s[t]=x.widget.extend({},this.options[t]),o=0;o<i.length-1;o++)n[i[o]]=n[i[o]]||{},n=n[i[o]];if(t=i.pop(),1===arguments.length)return void 0===n[t]?null:n[t];n[t]=e}else{if(1===arguments.length)return void 0===this.options[t]?null:this.options[t];s[t]=e}return this._setOptions(s),this},_setOptions:function(t){for(var e in t)this._setOption(e,t[e]);return this},_setOption:function(t,e){return"classes"===t&&this._setOptionClasses(e),this.options[t]=e,"disabled"===t&&this._setOptionDisabled(e),this},_setOptionClasses:function(t){var e,i,n;for(e in t)n=this.classesElementLookup[e],t[e]!==this.options.classes[e]&&n&&n.length&&(i=x(n.get()),this._removeClass(n,e),i.addClass(this._classes({element:i,keys:e,classes:t,add:!0})))},_setOptionDisabled:function(t){this._toggleClass(this.widget(),this.widgetFullName+"-disabled",null,!!t),t&&(this._removeClass(this.hoverable,null,"ui-state-hover"),this._removeClass(this.focusable,null,"ui-state-focus"))},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_classes:function(o){var s=[],r=this;function t(t,e){for(var i,n=0;n<t.length;n++)i=r.classesElementLookup[t[n]]||x(),i=o.add?(function(){var i=[];o.element.each(function(t,e){x.map(r.classesElementLookup,function(t){return t}).some(function(t){return t.is(e)})||i.push(e)}),r._on(x(i),{remove:"_untrackClassesElement"})}(),x(x.uniqueSort(i.get().concat(o.element.get())))):x(i.not(o.element).get()),r.classesElementLookup[t[n]]=i,s.push(t[n]),e&&o.classes[t[n]]&&s.push(o.classes[t[n]])}return(o=x.extend({element:this.element,classes:this.options.classes||{}},o)).keys&&t(o.keys.match(/\S+/g)||[],!0),o.extra&&t(o.extra.match(/\S+/g)||[]),s.join(" ")},_untrackClassesElement:function(i){var n=this;x.each(n.classesElementLookup,function(t,e){-1!==x.inArray(i.target,e)&&(n.classesElementLookup[t]=x(e.not(i.target).get()))}),this._off(x(i.target))},_removeClass:function(t,e,i){return this._toggleClass(t,e,i,!1)},_addClass:function(t,e,i){return this._toggleClass(t,e,i,!0)},_toggleClass:function(t,e,i,n){var o="string"==typeof t||null===t,e={extra:o?e:i,keys:o?t:e,element:o?this.element:t,add:n="boolean"==typeof n?n:i};return e.element.toggleClass(this._classes(e),n),this},_on:function(o,s,t){var r,l=this;"boolean"!=typeof o&&(t=s,s=o,o=!1),t?(s=r=x(s),this.bindings=this.bindings.add(s)):(t=s,s=this.element,r=this.widget()),x.each(t,function(t,e){function i(){if(o||!0!==l.options.disabled&&!x(this).hasClass("ui-state-disabled"))return("string"==typeof e?l[e]:e).apply(l,arguments)}"string"!=typeof e&&(i.guid=e.guid=e.guid||i.guid||x.guid++);var t=t.match(/^([\w:-]*)\s*(.*)$/),n=t[1]+l.eventNamespace,t=t[2];t?r.on(n,t,i):s.on(n,i)})},_off:function(t,e){e=(e||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,t.off(e),this.bindings=x(this.bindings.not(t).get()),this.focusable=x(this.focusable.not(t).get()),this.hoverable=x(this.hoverable.not(t).get())},_delay:function(t,e){var i=this;return setTimeout(function(){return("string"==typeof t?i[t]:t).apply(i,arguments)},e||0)},_hoverable:function(t){this.hoverable=this.hoverable.add(t),this._on(t,{mouseenter:function(t){this._addClass(x(t.currentTarget),null,"ui-state-hover")},mouseleave:function(t){this._removeClass(x(t.currentTarget),null,"ui-state-hover")}})},_focusable:function(t){this.focusable=this.focusable.add(t),this._on(t,{focusin:function(t){this._addClass(x(t.currentTarget),null,"ui-state-focus")},focusout:function(t){this._removeClass(x(t.currentTarget),null,"ui-state-focus")}})},_trigger:function(t,e,i){var n,o,s=this.options[t];if(i=i||{},(e=x.Event(e)).type=(t===this.widgetEventPrefix?t:this.widgetEventPrefix+t).toLowerCase(),e.target=this.element[0],o=e.originalEvent)for(n in o)n in e||(e[n]=o[n]);return this.element.trigger(e,i),!("function"==typeof s&&!1===s.apply(this.element[0],[e].concat(i))||e.isDefaultPrevented())}},x.each({show:"fadeIn",hide:"fadeOut"},function(s,r){x.Widget.prototype["_"+s]=function(e,t,i){var n,o=(t="string"==typeof t?{effect:t}:t)?!0!==t&&"number"!=typeof t&&t.effect||r:s;"number"==typeof(t=t||{})?t={duration:t}:!0===t&&(t={}),n=!x.isEmptyObject(t),t.complete=i,t.delay&&e.delay(t.delay),n&&x.effects&&x.effects.effect[o]?e[s](t):o!==s&&e[o]?e[o](t.duration,t.easing,i):e.queue(function(t){x(this)[s](),i&&i.call(e[0]),t()})}})});
(()=>{"use strict";var t={d:(e,n)=>{for(var r in n)t.o(n,r)&&!t.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:n[r]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};t.r(e),t.d(e,{actions:()=>P,addAction:()=>A,addFilter:()=>m,applyFilters:()=>w,applyFiltersAsync:()=>I,createHooks:()=>h,currentAction:()=>x,currentFilter:()=>T,defaultHooks:()=>f,didAction:()=>j,didFilter:()=>z,doAction:()=>g,doActionAsync:()=>k,doingAction:()=>O,doingFilter:()=>S,filters:()=>Z,hasAction:()=>_,hasFilter:()=>v,removeAction:()=>p,removeAllActions:()=>F,removeAllFilters:()=>b,removeFilter:()=>y});const n=function(t){return"string"!=typeof t||""===t?(console.error("The namespace must be a non-empty string."),!1):!!/^[a-zA-Z][a-zA-Z0-9_.\-\/]*$/.test(t)||(console.error("The namespace can only contain numbers, letters, dashes, periods, underscores and slashes."),!1)};const r=function(t){return"string"!=typeof t||""===t?(console.error("The hook name must be a non-empty string."),!1):/^__/.test(t)?(console.error("The hook name cannot begin with `__`."),!1):!!/^[a-zA-Z][a-zA-Z0-9_.-]*$/.test(t)||(console.error("The hook name can only contain numbers, letters, dashes, periods and underscores."),!1)};const o=function(t,e){return function(o,i,s,c=10){const l=t[e];if(!r(o))return;if(!n(i))return;if("function"!=typeof s)return void console.error("The hook callback must be a function.");if("number"!=typeof c)return void console.error("If specified, the hook priority must be a number.");const a={callback:s,priority:c,namespace:i};if(l[o]){const t=l[o].handlers;let e;for(e=t.length;e>0&&!(c>=t[e-1].priority);e--);e===t.length?t[e]=a:t.splice(e,0,a),l.__current.forEach((t=>{t.name===o&&t.currentIndex>=e&&t.currentIndex++}))}else l[o]={handlers:[a],runs:0};"hookAdded"!==o&&t.doAction("hookAdded",o,i,s,c)}};const i=function(t,e,o=!1){return function(i,s){const c=t[e];if(!r(i))return;if(!o&&!n(s))return;if(!c[i])return 0;let l=0;if(o)l=c[i].handlers.length,c[i]={runs:c[i].runs,handlers:[]};else{const t=c[i].handlers;for(let e=t.length-1;e>=0;e--)t[e].namespace===s&&(t.splice(e,1),l++,c.__current.forEach((t=>{t.name===i&&t.currentIndex>=e&&t.currentIndex--})))}return"hookRemoved"!==i&&t.doAction("hookRemoved",i,s),l}};const s=function(t,e){return function(n,r){const o=t[e];return void 0!==r?n in o&&o[n].handlers.some((t=>t.namespace===r)):n in o}};const c=function(t,e,n,r){return function(o,...i){const s=t[e];s[o]||(s[o]={handlers:[],runs:0}),s[o].runs++;const c=s[o].handlers;if(!c||!c.length)return n?i[0]:void 0;const l={name:o,currentIndex:0};return(r?async function(){try{s.__current.add(l);let t=n?i[0]:void 0;for(;l.currentIndex<c.length;){const e=c[l.currentIndex];t=await e.callback.apply(null,i),n&&(i[0]=t),l.currentIndex++}return n?t:void 0}finally{s.__current.delete(l)}}:function(){try{s.__current.add(l);let t=n?i[0]:void 0;for(;l.currentIndex<c.length;){t=c[l.currentIndex].callback.apply(null,i),n&&(i[0]=t),l.currentIndex++}return n?t:void 0}finally{s.__current.delete(l)}})()}};const l=function(t,e){return function(){var n;const r=t[e],o=Array.from(r.__current);return null!==(n=o.at(-1)?.name)&&void 0!==n?n:null}};const a=function(t,e){return function(n){const r=t[e];return void 0===n?r.__current.size>0:Array.from(r.__current).some((t=>t.name===n))}};const u=function(t,e){return function(n){const o=t[e];if(r(n))return o[n]&&o[n].runs?o[n].runs:0}};class d{constructor(){this.actions=Object.create(null),this.actions.__current=new Set,this.filters=Object.create(null),this.filters.__current=new Set,this.addAction=o(this,"actions"),this.addFilter=o(this,"filters"),this.removeAction=i(this,"actions"),this.removeFilter=i(this,"filters"),this.hasAction=s(this,"actions"),this.hasFilter=s(this,"filters"),this.removeAllActions=i(this,"actions",!0),this.removeAllFilters=i(this,"filters",!0),this.doAction=c(this,"actions",!1,!1),this.doActionAsync=c(this,"actions",!1,!0),this.applyFilters=c(this,"filters",!0,!1),this.applyFiltersAsync=c(this,"filters",!0,!0),this.currentAction=l(this,"actions"),this.currentFilter=l(this,"filters"),this.doingAction=a(this,"actions"),this.doingFilter=a(this,"filters"),this.didAction=u(this,"actions"),this.didFilter=u(this,"filters")}}const h=function(){return new d},f=h(),{addAction:A,addFilter:m,removeAction:p,removeFilter:y,hasAction:_,hasFilter:v,removeAllActions:F,removeAllFilters:b,doAction:g,doActionAsync:k,applyFilters:w,applyFiltersAsync:I,currentAction:x,currentFilter:T,doingAction:O,doingFilter:S,didAction:j,didFilter:z,actions:P,filters:Z}=f;(window.wp=window.wp||{}).hooks=e})();
(()=>{var e={5951(){{const e="beaverbuilder",o=window.jQuery;o(document).on("ajaxComplete",function(t,n,i){if(!i.data||-1===i.data.indexOf("action=fl_builder_email")&&-1===i.data.indexOf("action=fl_builder_subscribe_form_submit"))return;let r;try{r=void 0!==n.responseJSON?n.responseJSON:JSON.parse(n.responseText)}catch(e){return}const s=r.data||{};if(!1!==s.error&&s.error)return;const a=new URLSearchParams(i.data),p=a.get("node_id");if(!p)return;const u=o(".fl-node-"+p).find(".fl-contact-form, .fl-subscribe-form").first();if(!u.length)return;const c=a.get("action");let l="unknown";"fl_builder_email"===c?l="contact":"fl_builder_subscribe_form_submit"===c&&(l="subscribe");const d=l+"_"+p,m=l+"_"+p;window.PUM.integrations.formSubmission(u,{formProvider:e,formId:d,formInstanceId:m})})}},3554(){{const e="bitform",o=window.jQuery;o(function(){document.querySelectorAll('[id^="form-bitforms"]').forEach(function(t){t.addEventListener("bf-form-submit-success",function(n){if(!n.detail||!n.detail.formId)return;const i=n.detail.formId.replace(/^bitforms_/,"").split("_"),r=i[0],s=i[2]||null;window.PUM.integrations.formSubmission(o(t),{formProvider:e,formId:r,formInstanceId:s})})})})}},806(){{const e="bricksbuilder",o=window.jQuery;o(document).on("bricks/form/success",function(t){const n=t.detail.elementId,i=t.detail.formData,r=o('[data-element-id="'+n+'"]');if(!r.length)return;const s=n,a=r.index('[data-element-id^="'+n.replace(/\d+$/,"")+'"]')+1;window.PUM.integrations.formSubmission(r,{formProvider:e,formId:s,formInstanceId:a,extras:{formData:i,elementId:n,bricksEvent:t.detail}})})}},5398(){{const e="calderaforms";let o;const t=(e,t)=>o=t.$form;(0,window.jQuery)(document).on("cf.ajax.request",t).on("cf.submission",function(t,n){if("complete"===n.data.status||"success"===n.data.status){const[t,n=null]=o.attr("id").split("_");window.PUM.integrations.formSubmission(o,{formProvider:e,formId:t,formInstanceId:n,extras:{state:Object.prototype.hasOwnProperty.call(window.cfstate,t)?window.cfstate[t]:null}})}})}},6508(){{const e="contactform7",o=window.jQuery;o(document).on("wpcf7mailsent",function(t,n){const i=t.detail.contactFormId,r=o(t.target),s=(t.detail.id||t.detail.unitTag).split("-").pop().replace("o","");window.PUM.integrations.formSubmission(r,{formProvider:e,formId:i,formInstanceId:s,extras:{details:n}});const a=r.find("input.wpcf7-pum"),p=!!a.length&&JSON.parse(a.val());"object"==typeof p&&void 0!==p.closedelay&&p.closedelay.toString().length>=3&&(p.closedelay=p.closedelay/1e3),window.PUM.forms.success(r,p)})}},2742(){{const e="elementor",o=window.jQuery;o(document).on("submit_success",".elementor-form",function(t,n){const i=o(this)[0],r=o(this).closest("[data-id]"),s=r.length?r.attr("data-id"):"unknown";window.PUM.integrations.formSubmission(i,{formProvider:e,formId:s})})}},334(){{const e="fluentforms",o=window.jQuery;o(document).on("fluentform_submission_success",function(t,n){if(!n||!n.config||!n.config.id)return;const i=n.config.id;let r=n.form;if(r&&r.length||(r=o("#fluentform_"+i)),!r||!r.length)return;const s=r.data("form_instance")||null;window.PUM.integrations.formSubmission(r,{formProvider:e,formId:i,formInstanceId:s})})}},9445(){{const e="formidableforms",o=window.jQuery;o(document).on("frmFormComplete",function(t,n,i){const r=o(n),s=r.find('input[name="form_id"]').val(),a=window.PUM.getPopup(r.find('input[name="pum_form_popup_id"]').val());window.PUM.integrations.formSubmission(r,{popup:a,formProvider:e,formId:s,extras:{response:i}})})}},5962(){{const e="forminator",o=window.jQuery;o(document).on("forminator:form:submit:success",function(t,n){const i=o(t.target),r=i.attr("data-form-id"),s=i.attr("data-render-id");window.PUM.integrations.formSubmission(i,{formProvider:e,formId:r,formInstanceId:s,extras:{formData:n}})})}},6370(){{const e="gravityforms",o=window.jQuery,t={};o(document).on("gform_confirmation_loaded",function(n,i){const r=o("#gform_confirmation_wrapper_"+i+",#gforms_confirmation_message_"+i)[0];window.PUM.integrations.formSubmission(r,{formProvider:e,formId:i}),window.PUM.forms.success(r,t[i]||{})}),o(function(){o(".gform_wrapper > form").each(function(){const e=o(this),n=e.attr("id").replace("gform_",""),i=e.find("input.gforms-pum"),r=!!i.length&&JSON.parse(i.val());r&&"object"==typeof r&&("object"==typeof r&&void 0!==r.closedelay&&r.closedelay.toString().length>=3&&(r.closedelay=r.closedelay/1e3),t[n]=r)})})}},2826(){{const e="happyforms",o=window.jQuery;o(document).on("happyforms.submitted",function(t,n){if(!n||!n.success||!n.data)return;const i=o(t.target);if(!i.length)return;const r=i.find('[name="happyforms_form_id"]').val(),s=o("form.happyforms-form").filter(function(){return o(this).find('[name="happyforms_form_id"]').val()===r}).index(i)+1;window.PUM.integrations.formSubmission(i,{formProvider:e,formId:r,formInstanceId:s})})}},8643(){{const e="htmlforms",o=window.jQuery;o(()=>{void 0!==window.html_forms&&window.html_forms.on("success",function(t){const n=t.getAttribute("data-id")||t.id?.replace("hf-form-","")||"unknown",i=o(".hf-form").filter(function(){return o(this).attr("data-id")===n||o(this).attr("id")?.replace("hf-form-","")===n}).index(t)+1;window.PUM.integrations.formSubmission(o(t),{formProvider:e,formId:n,formInstanceId:i})})})}},5693(){{const e="kaliForms",o=window.jQuery;document.addEventListener("kaliformProcessCompleted",function(t){const n=t.detail;if(!n||!n.form)return;const i=o(n.form),r=i.data("form-id"),s=i.attr("id");window.PUM.integrations.formSubmission(i,{formProvider:e,formId:r,formInstanceId:s})}),o(document).on("submit","form[data-form-id]",function(t){const n=o(this),i=n.attr("class");if(!i||!i.includes("kali-form"))return;const r=n.data("form-id"),s=n.attr("id"),a=function(o){o.detail&&o.detail.formId===r&&(window.PUM.integrations.formSubmission(n,{formProvider:e,formId:r,formInstanceId:s}),document.removeEventListener("kaliFormSuccess",a))};document.addEventListener("kaliFormSuccess",a),setTimeout(function(){document.removeEventListener("kaliFormSuccess",a)},3e4)}),o(document).on("pumAfterOpen",".pum",function(){const e=o(this),t=window.PUM.getSetting(e,"id");t&&e.find("form[data-form-id]").each(function(){const e=o(this);if(e.find('input[name="pum_form_popup_id"]').length)return;const n=e.attr("class");n&&n.includes("kali-form")&&e.append(o("<input>",{type:"hidden",name:"pum_form_popup_id",value:t}))})})}},8188(){{const e="mc4wp",o=window.jQuery;o(()=>{"undefined"!=typeof mc4wp&&mc4wp.forms.on("success",function(t,n){const i=o(t.element),r=t.id,s=o(".mc4wp-form-"+t.id).index(i)+1;window.PUM.integrations.formSubmission(i,{formProvider:e,formId:r,formInstanceId:s,extras:{form:t,data:n}})})})}},896(){!function(e){const o='form.tnp-subscription, form.tnp-ajax, form[action*="newsletter"]',t=(o,t)=>{const n=o.parentElement;if(!o||o.dataset.pumNewsletterObserved)return;o.dataset.pumNewsletterObserved="true";const i=new MutationObserver(()=>{const r=(e=>!e.querySelector('input[type="text"], input[type="email"], input[type="submit"], button[type="submit"]'))(o),s=n&&!n.contains(o)&&!n.querySelector("form");if(r||s){i.disconnect(),delete o.dataset.pumNewsletterObserved;const s=r?o:n;setTimeout(()=>((o,t)=>{o.dataset.pumNewsletterHandled||(o.dataset.pumNewsletterHandled="true",window.PUM&&window.PUM.integrations&&window.PUM.integrations.formSubmission(e(o),{formProvider:"newsletter",formId:null,formInstanceId:null,extras:{popupId:t}}))})(s,t),50)}});i.observe(o,{childList:!0,subtree:!0}),n&&i.observe(n,{childList:!0,subtree:!1}),setTimeout(()=>{i.disconnect(),delete o.dataset.pumNewsletterObserved},3e4)},n=(n,i)=>{n.find(o).each(function(){const o=e(this);o.find('input[name="pum_form_popup_id"]').length||(o.append(e("<input>",{type:"hidden",name:"pum_form_popup_id",value:i})),t(this,i))})};e(()=>{window.PUM&&(document.querySelectorAll(o).forEach(o=>{const n=e(o).closest(".pum"),i=n.length&&window.PUM?window.PUM.getSetting(n,"id"):null;t(o,i)}),e(document).on("pumAfterOpen",".pum",function(){const o=e(this),t=window.PUM.getSetting(o,"id");t&&n(o,t)}))})}(window.jQuery)},4408(){{const e="ninjaforms",o=window.jQuery;let t=!1;const n=()=>{"undefined"!=typeof Marionette&&"undefined"!=typeof nfRadio&&!1===t&&(t=Marionette.Object.extend({initialize:function(){this.listenTo(nfRadio.channel("forms"),"submit:response",this.popupMaker)},popupMaker:function(t,n,i,r){const s={};if(t.errors&&t.errors.length)return;const a=o("#nf-form-"+r+"-cont"),[p,u=null]=r.split("_");window.PUM.integrations.formSubmission(a,{formProvider:e,formId:p,formInstanceId:u,extras:{response:t}}),t.data&&t.data.actions&&(s.openpopup=void 0!==t.data.actions.openpopup,s.openpopup_id=s.openpopup?parseInt(t.data.actions.openpopup):0,s.closepopup=void 0!==t.data.actions.closepopup,s.closedelay=s.closepopup?parseInt(t.data.actions.closepopup):0,s.closepopup&&t.data.actions.closedelay&&(s.closedelay=parseInt(t.data.actions.closedelay))),window.PUM.forms.success(a,s)}}),new t)};o(n)}},3077(){{const e="wpforms",o=window.jQuery;o(document).on("wpformsAjaxSubmitSuccess",".wpforms-ajax-form",function(t,n){const i=o(this),r=i.data("formid"),s=o("form#"+i.attr("id")).index(i)+1;window.PUM.integrations.formSubmission(i,{formProvider:e,formId:r,formInstanceId:s})})}},9862(){{const e="wsforms",o=window.jQuery;o(document).on("wsf-submit-success wsf-save-success",function(t,n,i,r,s,a){window.PUM.integrations.formSubmission(o(s),{formProvider:e,formId:i,formInstanceId:r})})}},4932(){!function(e,o){"use strict";e.fn.popmake.version=1.21,e.fn.popmake.last_open_popup=null,window.ajaxurl=window.pum_vars.ajaxurl,window.PUM.init=function(){e(o).trigger("pumBeforeInit"),e(".pum").popmake(),e(o).trigger("pumInitialized"),"object"==typeof pum_vars.form_success&&(pum_vars.form_success=e.extend({popup_id:null,settings:{}}),PUM.forms.success(pum_vars.form_success.popup_id,pum_vars.form_success.settings)),PUM.integrations.init()},e(function(){if(PUM.hooks.applyFilters("pum.shouldInit",!0)){var e=PUM.hooks.applyFilters("pum.initHandler",PUM.init),o=PUM.hooks.applyFilters("pum.initPromises",[]);Promise.all(o).then(e)}}),e(".pum").on("pumInit",function(){var o=PUM.getPopup(this),t=PUM.getSetting(o,"id"),n=o.find("form");if(n.length){var i=e("<input>",{type:"hidden",name:"pum_form_popup_id",value:t});n.append(i)}}).on("pumAfterClose",window.PUM.actions.stopIframeVideosPlaying),e(".pum .pum-cta a, .pum a.pum-cta").on("click",function(){PUM.getPopup(this).trigger("pumConversion")})}(jQuery)},1583(){!function(e){"use strict";void 0===e.fn.on&&(e.fn.on=function(e,o,t){return this.delegate(o,e,t)}),void 0===e.fn.off&&(e.fn.off=function(e,o,t){return this.undelegate(o,e,t)}),void 0===e.fn.bindFirst&&(e.fn.bindFirst=function(o,t){var n,i,r=e(this);r.unbind(o,t),r.bind(o,t),(i=(n=e._data(r[0]).events)[o]).unshift(i.pop()),n[o]=i}),void 0===e.fn.outerHtml&&(e.fn.outerHtml=function(){var o=e(this).clone();return e("<div/>").append(o).html()}),void 0===e.fn.isInViewport&&(e.fn.isInViewport=function(){var o=e(this).offset().top,t=o+e(this).outerHeight(),n=e(window).scrollTop(),i=n+e(window).height();return t>n&&o<i}),void 0===Date.now&&(Date.now=function(){return(new Date).getTime()})}(jQuery)},7096(){var e;!function(o,t){"use strict";var n,i,r="a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, *[tabindex], *[contenteditable]",s=".pum:not(.pum-accessibility-disabled)";e={forceFocus:function(o){i&&i.length&&!i[0].contains(o.target)&&(o.stopPropagation(),e.setFocusToFirstItem())},trapTabKey:function(e){if(9===e.keyCode){var t=i.find(".pum-container *").filter(r).filter(":visible"),n=o(":focus"),s=t.length,a=t.index(n);e.shiftKey?0===a&&(t.get(s-1).focus(),e.preventDefault()):a===s-1&&(t.get(0).focus(),e.preventDefault())}},setFocusToFirstItem:function(){i.find(".pum-container *").filter(r).filter(":visible").first().trigger("focus")},initiateFocusLock:function(){var r=PUM.getPopup(this),s=o(":focus");r.has(s).length||(n=s),i=r.on("keydown.pum_accessibility",e.trapTabKey),o(t).one("focusin.pum_accessibility",e.forceFocus),e.setFocusToFirstItem()}},o(t).on("pumInit",s,function(){PUM.getPopup(this).find("[tabindex]").each(function(){var e=o(this);e.data("tabindex",e.attr("tabindex")).prop("tabindex","0")})}).on("pumBeforeOpen",s,function(){}).on("pumAfterOpen",s,e.initiateFocusLock).on("pumAfterOpen",s,function(){var e=PUM.getPopup(this);i=e.attr("aria-modal","true")}).on("pumBeforeClose",s,function(){}).on("pumAfterClose",s,function(){PUM.getPopup(this).off("keydown.pum_accessibility").attr("aria-modal","false"),void 0!==n&&n.length&&n.trigger("focus"),i=null,o(t).off("focusin.pum_accessibility")}).on("pumSetupClose",s,function(){}).on("pumOpenPrevented",s,function(){}).on("pumClosePrevented",s,function(){}).on("pumBeforeReposition",s,function(){})}(jQuery,document)},7100(){!function(e){"use strict";e.fn.popmake.last_open_trigger=null,e.fn.popmake.last_close_trigger=null,e.fn.popmake.conversion_trigger=null;var o=!(void 0===pum_vars.analytics_api||!pum_vars.analytics_api);window.PUM_Analytics={beacon:function(t,n){var i=o?pum_vars.analytics_api:pum_vars.ajaxurl,r={route:window.pum.hooks.applyFilters("pum.analyticsBeaconRoute","/"+pum_vars.analytics_route+"/"),data:window.pum.hooks.applyFilters("pum.AnalyticsBeaconData",e.extend(!0,{event:"open",pid:null,_cache:+new Date},t)),callback:"function"==typeof n?n:function(){}};if(o?i+=r.route:r.data.action="pum_analytics",i){if("sendBeacon"in navigator)try{var s=new FormData;for(var a in r.data)if(Object.prototype.hasOwnProperty.call(r.data,a)){var p=r.data[a];"object"==typeof p&&null!==p&&(p=JSON.stringify(p)),s.append(a,p)}return void(navigator.sendBeacon(i,s)&&r.callback())}catch(e){console.warn("sendBeacon failed, falling back to image beacon:",e)}var u=new Image;e(u).on("error success load done",r.callback),u.src=i+"?"+e.param(r.data)}}},pum_vars.analytics_enabled&&(e(document).on("pumAfterOpen.core_analytics",".pum",function(){var o=window.PUM.getPopup(this),t={pid:parseInt(o.popmake("getSettings").id,10)||null};t.pid>0&&!e("body").hasClass("single-popup")&&window.PUM_Analytics.beacon(t)}),e(function(){window.PUM.coreFormAnalyticsHandler=function(o,t){if(!1!==t.ajax&&0!==t.popup.length){var n={pid:parseInt(t.popup.popmake("getSettings").id,10)||null,event:"conversion",eventData:{type:"form_submission",formProvider:t.formProvider||null,formId:t.formId||null,formKey:t.formKey||null,formInstanceId:t.formInstanceId||null}};n.pid>0&&!e("body").hasClass("single-popup")&&window.PUM_Analytics.beacon(n)}},window.PUM.hooks.addAction("pum.integration.form.success",window.PUM.coreFormAnalyticsHandler)}))}(jQuery)},8009(){!function(e,o,t){"use strict";function n(e){var o=e.popmake("getContainer"),t={display:"",opacity:""};e.css(t),o.css(t)}function i(e){return e.overlay_disabled?0:e.animation_speed/2}function r(e){return e.overlay_disabled?parseInt(e.animation_speed):e.animation_speed/2}e.fn.popmake.methods.animate_overlay=function(o,t,n){return PUM.getPopup(this).popmake("getSettings").overlay_disabled?e.fn.popmake.overlay_animations.none.apply(this,[t,n]):e.fn.popmake.overlay_animations[o]?e.fn.popmake.overlay_animations[o].apply(this,[t,n]):(window.console&&console.warn("Animation style "+o+" does not exist."),this)},e.fn.popmake.methods.animate=function(o){return e.fn.popmake.animations[o]?e.fn.popmake.animations[o].apply(this,Array.prototype.slice.call(arguments,1)):(window.console&&console.warn("Animation style "+o+" does not exist."),this)},e.fn.popmake.animations={none:function(e){var o=PUM.getPopup(this);return o.popmake("getContainer").css({opacity:1,display:"block"}),o.popmake("animate_overlay","none",0,function(){e!==t&&e()}),this},slide:function(e){var o=PUM.getPopup(this),s=o.popmake("getContainer"),a=o.popmake("getSettings"),p=o.popmake("animation_origin",a.animation_origin);return n(o),s.position(p),o.popmake("animate_overlay","fade",i(a),function(){s.popmake("reposition",function(o){s.animate(o,r(a),"swing",function(){e!==t&&e()})})}),this},fade:function(e){var o=PUM.getPopup(this),s=o.popmake("getContainer"),a=o.popmake("getSettings");return n(o),o.css({opacity:0,display:"block"}),s.css({opacity:0,display:"block"}),o.popmake("animate_overlay","fade",i(a),function(){s.animate({opacity:1},r(a),"swing",function(){e!==t&&e()})}),this},fadeAndSlide:function(e){var o=PUM.getPopup(this),s=o.popmake("getContainer"),a=o.popmake("getSettings"),p=o.popmake("animation_origin",a.animation_origin);return n(o),o.css({display:"block",opacity:0}),s.css({display:"block",opacity:0}),s.position(p),o.popmake("animate_overlay","fade",i(a),function(){s.popmake("reposition",function(o){o.opacity=1,s.animate(o,r(a),"swing",function(){e!==t&&e()})})}),this},grow:function(o){return e.fn.popmake.animations.fade.apply(this,arguments)},growAndSlide:function(o){return e.fn.popmake.animations.fadeAndSlide.apply(this,arguments)}},e.fn.popmake.overlay_animations={none:function(e,o){PUM.getPopup(this).css({opacity:1,display:"block"}),"function"==typeof o&&o()},fade:function(e,o){PUM.getPopup(this).css({opacity:0,display:"block"}).animate({opacity:1},e,"swing",o)},slide:function(e,o){PUM.getPopup(this).slideDown(e,o)}}}(jQuery,document)},6176(){!function(e,o){"use strict";e(o).on("pumInit",".pum",function(){e(this).popmake("getContainer").trigger("popmakeInit")}).on("pumBeforeOpen",".pum",function(){e(this).popmake("getContainer").addClass("active").trigger("popmakeBeforeOpen")}).on("pumAfterOpen",".pum",function(){e(this).popmake("getContainer").trigger("popmakeAfterOpen")}).on("pumBeforeClose",".pum",function(){e(this).popmake("getContainer").trigger("popmakeBeforeClose")}).on("pumAfterClose",".pum",function(){e(this).popmake("getContainer").removeClass("active").trigger("popmakeAfterClose")}).on("pumSetupClose",".pum",function(){e(this).popmake("getContainer").trigger("popmakeSetupClose")}).on("pumOpenPrevented",".pum",function(){e(this).popmake("getContainer").removeClass("preventOpen").removeClass("active")}).on("pumClosePrevented",".pum",function(){e(this).popmake("getContainer").removeClass("preventClose")}).on("pumBeforeReposition",".pum",function(){e(this).popmake("getContainer").trigger("popmakeBeforeReposition")})}(jQuery,document)},2744(){!function(e){"use strict";e.fn.popmake.callbacks={reposition_using:function(o){e(this).css(o)}}}(jQuery,document)},4992(){!function(e){"use strict";var o,t=function(){return void 0===o&&(o="undefined"!=typeof MobileDetect?new MobileDetect(window.navigator.userAgent):{phone:function(){return!1},tablet:function(){return!1}}),o};e.extend(e.fn.popmake.methods,{checkConditions:function(){var o,n,i,r,s,a=PUM.getPopup(this),p=a.popmake("getSettings"),u=!0;if(p.disable_on_mobile&&t().phone())return!1;if(p.disable_on_tablet&&t().tablet())return!1;if(p.conditions.length)for(n=0;p.conditions.length>n;n++){for(r=p.conditions[n],o=!1,i=0;r.length>i;i++)if("boolean"!=typeof r[i]){if((!(s=e.extend({},{not_operand:!1},r[i])).not_operand&&a.popmake("checkCondition",s)||s.not_operand&&!a.popmake("checkCondition",s))&&(o=!0),e(this).trigger("pumCheckingCondition",[o,s]),o)break}else if(r[i]){o=!0;break}o||(u=!1)}return u},checkCondition:function(o){var t=o.target||null,n=o.settings||o;if(!t)return console.warn("Condition type not set."),!1;const r=i(t);return r?r.apply(this,[n,o]):e.fn.popmake.conditions[t]?e.fn.popmake.conditions[t].apply(this,[o]):window.console?(console.warn("Condition "+t+" does not exist."),!0):void 0}});let n={};const i=e=>(Object.keys(n).length||(n=window.PUM.hooks.applyFilters("popupMaker.conditionCallbacks",{})),n)[e]??!1;e.fn.popmake=e.fn.popmake||{},e.fn.popmake.conditions=e.fn.popmake.conditions||{}}(jQuery,document)},2760(){!function(e){"use strict";e.extend(e.fn.popmake,{cookie:function(o){function t(n,i,r){var s,a=new Date;if("undefined"!=typeof document){if(arguments.length>1){switch(typeof(r=e.extend({path:pum_vars.home_url},t.defaults,r)).expires){case"number":a.setMilliseconds(a.getMilliseconds()+864e5*r.expires),r.expires=a;break;case"string":a.setTime(1e3*e.fn.popmake.utilities.strtotime("+"+r.expires)),r.expires=a}try{s=JSON.stringify(i),/^[\{\[]/.test(s)&&(i=s)}catch(e){}return i=o.write?o.write(i,n):encodeURIComponent(String(i)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),n=(n=(n=encodeURIComponent(String(n))).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent)).replace(/[\(\)]/g,escape),document.cookie=[n,"=",i,r.expires?"; expires="+r.expires.toUTCString():"",r.path?"; path="+r.path:"",r.domain?"; domain="+r.domain:"",r.secure?"; secure":""].join("")}n||(s={});for(var p=document.cookie?document.cookie.split("; "):[],u=/(%[0-9A-Z]{2})+/g,c=0;c<p.length;c++){var l=p[c].split("="),d=l.slice(1).join("=");'"'===d.charAt(0)&&(d=d.slice(1,-1));try{var m=l[0].replace(u,decodeURIComponent);if(d=o.read?o.read(d,m):o(d,m)||d.replace(u,decodeURIComponent),this.json)try{d=JSON.parse(d)}catch(e){}if(n===m){s=d;break}n||(s[m]=d)}catch(e){}}return s}}return void 0===o&&(o=function(){}),t.set=t,t.get=function(e){return t.call(t,e)},t.getJSON=function(){return t.apply({json:!0},[].slice.call(arguments))},t.defaults={domain:pum_vars.cookie_domain?pum_vars.cookie_domain:""},t.remove=function(o,n){t(o,"",e.extend({},n,{expires:-1,path:""})),t(o,"",e.extend({},n,{expires:-1}))},t.process=function(e,o,n,i){return arguments.length>3&&"object"!=typeof arguments[2]&&void 0!==o?t.apply(t,[e,o,{expires:n,path:i}]):t.apply(t,[].slice.call(arguments,[0,2]))},t.withConverter=e.fn.popmake.cookie,t}()}),window.pm_cookie=e.pm_cookie=e.fn.popmake.cookie.process,window.pm_cookie_json=e.pm_cookie_json=e.fn.popmake.cookie.getJSON,window.pm_remove_cookie=e.pm_remove_cookie=e.fn.popmake.cookie.remove}(jQuery)},9655(){!function(e,o,t){"use strict";var n=function(o){e.pm_cookie(o.name,!0,o.session?null:o.time,o.path?pum_vars.home_url||"/":null),pum.hooks.doAction("popmake.setCookie",o)};e.extend(e.fn.popmake.methods,{addCookie:function(o){return pum.hooks.doAction("popmake.addCookie",arguments),e.fn.popmake.cookies[o]?e.fn.popmake.cookies[o].apply(this,Array.prototype.slice.call(arguments,1)):(window.console&&console.warn("Cookie type "+o+" does not exist."),this)},setCookie:n,checkCookies:function(o){var n,i=!1;if(o.cookie_name===t||null===o.cookie_name||""===o.cookie_name)return!1;switch(typeof o.cookie_name){case"object":case"array":for(n=0;o.cookie_name.length>n;n+=1)e.pm_cookie(o.cookie_name[n])!==t&&(i=!0);break;case"string":e.pm_cookie(o.cookie_name)!==t&&(i=!0)}return pum.hooks.doAction("popmake.checkCookies",o,i),i}}),e.fn.popmake.cookies=e.fn.popmake.cookies||{},e.extend(e.fn.popmake.cookies,{on_popup_open:function(e){var o=PUM.getPopup(this);o.on("pumAfterOpen",function(){o.popmake("setCookie",e)})},on_popup_close:function(e){var o=PUM.getPopup(this);o.on("pumBeforeClose",function(){o.popmake("setCookie",e)})},on_popup_conversion:function(e){var o=PUM.getPopup(this);o.on("pumConversion",function(){o.popmake("setCookie",e)})},form_submission:function(o){var t=PUM.getPopup(this);o=e.extend({form:"",formInstanceId:"",only_in_popup:!1},o),PUM.hooks.addAction("pum.integration.form.success",function(e,n){o.form.length&&PUM.integrations.checkFormKeyMatches(o.form,o.formInstanceId,n)&&(o.only_in_popup&&n.popup.length&&n.popup.is(t)||!o.only_in_popup)&&t.popmake("setCookie",o)})},manual:function(e){var o=PUM.getPopup(this);o.on("pumSetCookie",function(){o.popmake("setCookie",e)})},form_success:function(e){var o=PUM.getPopup(this);o.on("pumFormSuccess",function(){o.popmake("setCookie",e)})},pum_sub_form_success:function(e){var o=PUM.getPopup(this);o.find("form.pum-sub-form").on("success",function(){o.popmake("setCookie",e)})},pum_sub_form_already_subscribed:function(e){var o=PUM.getPopup(this);o.find("form.pum-sub-form").on("success",function(){o.popmake("setCookie",e)})},ninja_form_success:function(o){return e.fn.popmake.cookies.form_success.apply(this,arguments)},cf7_form_success:function(o){return e.fn.popmake.cookies.form_success.apply(this,arguments)},gforms_form_success:function(o){return e.fn.popmake.cookies.form_success.apply(this,arguments)}}),e(o).on("pumInit",".pum",function(){var e,o=PUM.getPopup(this),t=o.popmake("getSettings").cookies||[],n=null;if(t.length)for(e=0;t.length>e;e+=1)n=t[e],o.popmake("addCookie",n.event,n.settings)}),e(function(){var o=e(".pum-cookie");o.each(function(){var t=e(this),i=o.index(t),r=t.data("cookie-args");t.data("only-onscreen")?t.isInViewport()&&t.is(":visible")?n(r):e(window).on("scroll.pum-cookie-"+i,e.fn.popmake.utilities.throttle(function(o){t.isInViewport()&&t.is(":visible")&&(n(r),e(window).off("scroll.pum-cookie-"+i))},100)):n(r)})})}(jQuery,document)},2403(){var e,o=!1;!function(t,n){if(n=window.pum_vars||{debug_mode:!1},(o=void 0!==n.debug_mode&&n.debug_mode)||-1===window.location.href.indexOf("pum_debug")||(o=!0),o){var i=!1,r=!1,s=window.pum_debug_vars||{debug_mode_enabled:"Popup Maker: Debug Mode Enabled",debug_started_at:"Debug started at:",debug_more_info:"For more information on how to use this information visit https://wppopupmaker.com/docs/?utm_medium=js-debug-info&utm_campaign=contextual-help&utm_source=browser-console&utm_content=more-info",global_info:"Global Information",localized_vars:"Localized variables",popups_initializing:"Popups Initializing",popups_initialized:"Popups Initialized",single_popup_label:"Popup: #",theme_id:"Theme ID: ",label_method_call:"Method Call:",label_method_args:"Method Arguments:",label_popup_settings:"Settings",label_triggers:"Triggers",label_cookies:"Cookies",label_delay:"Delay:",label_conditions:"Conditions",label_cookie:"Cookie:",label_settings:"Settings:",label_selector:"Selector:",label_mobile_disabled:"Mobile Disabled:",label_tablet_disabled:"Tablet Disabled:",label_event:"Event: %s",triggers:[],cookies:[]};e={odump:function(e){return t.extend({},e)},logo:function(){console.log(" -------------------------------------------------------------\n|  ____                           __  __       _              |\n| |  _ \\ ___  _ __  _   _ _ __   |  \\/  | __ _| | _____ _ __  |\n| | |_) / _ \\| '_ \\| | | | '_ \\  | |\\/| |/ _` | |/ / _ \\ '__| |\n| |  __/ (_) | |_) | |_| | |_) | | |  | | (_| |   <  __/ |    |\n| |_|   \\___/| .__/ \\__,_| .__/  |_|  |_|\\__,_|_|\\_\\___|_|    |\n|            |_|         |_|                                  |\n -------------------------------------------------------------")},initialize:function(){i=!0,e.logo(),console.log("init popups ✔"),console.debug(s.debug_mode_enabled),console.log(s.debug_started_at,new Date),console.info(s.debug_more_info),e.divider(s.global_info),console.groupCollapsed(s.localized_vars),console.log("pum_vars:",e.odump(n)),t(document).trigger("pum_debug_initialize_localized_vars"),console.groupEnd(),t(document).trigger("pum_debug_initialize")},popup_event_header:function(o){var t=o.popmake("getSettings");r!==t.id&&(r=t.id,e.divider(s.single_popup_label+t.id+" - "+t.slug))},divider:function(e){try{var o=62,t=0,n=" "+new Array(63).join("-")+" ",i=e;"string"==typeof e?(e.length>62&&(i=i.substring(0,62)),o=62-i.length,(t={left:Math.floor(o/2),right:Math.floor(o/2)}).left+t.right===o-1&&t.right++,t.left=new Array(t.left+1).join(" "),t.right=new Array(t.right+1).join(" "),console.log(n+"\n|"+t.left+i+t.right+"|\n"+n)):console.log(n)}catch(e){console.error("Got a '"+e+"' when printing out the heading divider to the console.")}},click_trigger:function(e,o){var t,n=e.popmake("getSettings"),i=[".popmake-"+n.id,".popmake-"+decodeURIComponent(n.slug),'a[href$="#popmake-'+n.id+'"]'];o.extra_selectors&&""!==o.extra_selectors&&i.push(o.extra_selectors),t=(i=pum.hooks.applyFilters("pum.trigger.click_open.selectors",i,o,e)).join(", "),console.log(s.label_selector,t)},trigger:function(o,n){if("string"==typeof s.triggers[n.type]){switch(console.groupCollapsed(s.triggers[n.type]),n.type){case"auto_open":console.log(s.label_delay,n.settings.delay),console.log(s.label_cookie,n.settings.cookie_name);break;case"click_open":e.click_trigger(o,n.settings),console.log(s.label_cookie,n.settings.cookie_name)}t(document).trigger("pum_debug_render_trigger",o,n),console.groupEnd()}},cookie:function(o,n){if("string"==typeof s.cookies[n.event]){switch(console.groupCollapsed(s.cookies[n.event]),n.event){case"on_popup_open":case"on_popup_close":case"manual":case"ninja_form_success":console.log(s.label_cookie,e.odump(n.settings))}t(document).trigger("pum_debug_render_trigger",o,n),console.groupEnd()}}},t(document).on("pumInit",".pum",function(){var o=PUM.getPopup(t(this)),n=o.popmake("getSettings"),r=n.triggers||[],a=n.cookies||[],p=n.conditions||[],u=0;if(i||(e.initialize(),e.divider(s.popups_initializing)),console.groupCollapsed(s.single_popup_label+n.id+" - "+n.slug),console.log(s.theme_id,n.theme_id),r.length){for(console.groupCollapsed(s.label_triggers),u=0;r.length>u;u++)e.trigger(o,r[u]);console.groupEnd()}if(a.length){for(console.groupCollapsed(s.label_cookies),u=0;a.length>u;u+=1)e.cookie(o,a[u]);console.groupEnd()}p.length&&(console.groupCollapsed(s.label_conditions),console.log(p),console.groupEnd()),console.groupCollapsed(s.label_popup_settings),console.log(s.label_mobile_disabled,!1!==n.disable_on_mobile),console.log(s.label_tablet_disabled,!1!==n.disable_on_tablet),console.log(s.label_display_settings,e.odump(n)),o.trigger("pum_debug_popup_settings"),console.groupEnd(),console.groupEnd()}).on("pumBeforeOpen",".pum",function(){var o=PUM.getPopup(t(this)),n=t.fn.popmake.last_open_trigger;e.popup_event_header(o),console.groupCollapsed(s.label_event.replace("%s","pumBeforeOpen"));try{n=(n=t(t.fn.popmake.last_open_trigger)).length?n:t.fn.popmake.last_open_trigger.toString()}catch(e){n=""}finally{console.log(s.label_triggers,[n])}console.groupEnd()}).on("pumOpenPrevented",".pum",function(){var o=PUM.getPopup(t(this));e.popup_event_header(o),console.groupCollapsed(s.label_event.replace("%s","pumOpenPrevented")),console.groupEnd()}).on("pumAfterOpen",".pum",function(){var o=PUM.getPopup(t(this));e.popup_event_header(o),console.groupCollapsed(s.label_event.replace("%s","pumAfterOpen")),console.groupEnd()}).on("pumSetupClose",".pum",function(){var o=PUM.getPopup(t(this));e.popup_event_header(o),console.groupCollapsed(s.label_event.replace("%s","pumSetupClose")),console.groupEnd()}).on("pumClosePrevented",".pum",function(){var o=PUM.getPopup(t(this));e.popup_event_header(o),console.groupCollapsed(s.label_event.replace("%s","pumClosePrevented")),console.groupEnd()}).on("pumBeforeClose",".pum",function(){var o=PUM.getPopup(t(this));e.popup_event_header(o),console.groupCollapsed(s.label_event.replace("%s","pumBeforeClose")),console.groupEnd()}).on("pumAfterClose",".pum",function(){var o=PUM.getPopup(t(this));e.popup_event_header(o),console.groupCollapsed(s.label_event.replace("%s","pumAfterClose")),console.groupEnd()}).on("pumBeforeReposition",".pum",function(){var o=PUM.getPopup(t(this));e.popup_event_header(o),console.groupCollapsed(s.label_event.replace("%s","pumBeforeReposition")),console.groupEnd()}).on("pumAfterReposition",".pum",function(){var o=PUM.getPopup(t(this));e.popup_event_header(o),console.groupCollapsed(s.label_event.replace("%s","pumAfterReposition")),console.groupEnd()}).on("pumCheckingCondition",".pum",function(o,n,i){var r=PUM.getPopup(t(this));e.popup_event_header(r),console.groupCollapsed(s.label_event.replace("%s","pumCheckingCondition")),console.log((i.not_operand?"(!) ":"")+i.target+": "+n,i),console.groupEnd()})}}(jQuery)},4176(){!function(e){"use strict";e.fn.popmake.defaults={id:null,slug:"",theme_id:null,cookies:[],triggers:[],conditions:[],mobile_disabled:null,tablet_disabled:null,custom_height_auto:!1,scrollable_content:!1,position_from_trigger:!1,position_fixed:!1,overlay_disabled:!1,stackable:!1,disable_reposition:!1,close_on_overlay_click:!1,close_on_form_submission:!1,close_on_form_submission_delay:0,close_on_esc_press:!1,close_on_f4_press:!1,disable_on_mobile:!1,disable_on_tablet:!1,size:"medium",responsive_min_width:"0%",responsive_max_width:"100%",custom_width:"640px",custom_height:"380px",animation_type:"fade",animation_speed:"350",animation_origin:"center top",location:"center top",position_top:"100",position_bottom:"0",position_left:"0",position_right:"0",zindex:"1999999999",close_button_delay:"0",meta:{display:{stackable:!1,overlay_disabled:!1,size:"medium",responsive_max_width:"100",responsive_max_width_unit:"%",responsive_min_width:"0",responsive_min_width_unit:"%",custom_width:"640",custom_width_unit:"px",custom_height:"380",custom_height_unit:"px",custom_height_auto:!1,location:"center top",position_top:100,position_left:0,position_bottom:0,position_right:0,position_fixed:!1,animation_type:"fade",animation_speed:350,animation_origin:"center top",scrollable_content:!1,disable_reposition:!1,position_from_trigger:!1,overlay_zindex:!1,zindex:"1999999999"},close:{overlay_click:!1,esc_press:!1,f4_press:!1,text:"",button_delay:0},click_open:[]},container:{active_class:"active",attr:{class:"popmake"}},title:{attr:{class:"popmake-title"}},content:{attr:{class:"popmake-content"}},close:{close_speed:0,attr:{class:"popmake-close"}},overlay:{attr:{id:"popmake-overlay",class:"popmake-overlay"}}}}(jQuery,document)},3887(){!function(e){"use strict";var o={openpopup:!1,openpopup_id:0,closepopup:!1,closedelay:0,redirect_enabled:!1,redirect:"",cookie:!1};window.PUM=window.PUM||{},window.PUM.forms=window.PUM.forms||{},e.extend(window.PUM.forms,{form:{validation:{errors:[]},responseHandler:function(e,o){var t=o.data;o.success?window.PUM.forms.form.success(e,t):window.PUM.forms.form.errors(e,t)},display_errors:function(e,o){window.PUM.forms.messages.add(e,o||this.validation.errors,"error")},beforeAjax:function(o){var t=o.find('[type="submit"]'),n=t.find(".pum-form__loader");window.PUM.forms.messages.clear_all(o),n.length||(n=e('<span class="pum-form__loader"></span>'),""!==t.attr("value")?n.insertAfter(t):t.append(n)),t.prop("disabled",!0),n.show(),o.addClass("pum-form--loading").removeClass("pum-form--errors")},afterAjax:function(e){var o=e.find('[type="submit"]'),t=o.find(".pum-form__loader");o.prop("disabled",!1),t.hide(),e.removeClass("pum-form--loading")},success:function(e,o){void 0!==o.message&&""!==o.message&&window.PUM.forms.messages.add(e,[{message:o.message}]),e.trigger("success",[o]),!e.data("noredirect")&&void 0!==e.data("redirect_enabled")&&o.redirect&&(""!==o.redirect?window.location=o.redirect:window.location.reload(!0))},errors:function(e,o){void 0!==o.errors&&o.errors.length&&(console.log(o.errors),window.PUM.forms.form.display_errors(e,o.errors),window.PUM.forms.messages.scroll_to_first(e),e.addClass("pum-form--errors").trigger("errors",[o]))},submit:function(o){var t=e(this),n=t.pumSerializeObject();o.preventDefault(),o.stopPropagation(),window.PUM.forms.form.beforeAjax(t),e.ajax({type:"POST",dataType:"json",url:pum_vars.ajaxurl,data:{action:"pum_form",values:n}}).always(function(){window.PUM.forms.form.afterAjax(t)}).done(function(e){window.PUM.forms.form.responseHandler(t,e)}).error(function(e,o,t){console.log("Error: type of "+o+" with message of "+t)})}},messages:{add:function(o,t,n){var i=o.find(".pum-form__messages"),r=0;if(n=n||"success",t=t||[],!i.length)switch(i=e('<div class="pum-form__messages">').hide(),pum_vars.message_position){case"bottom":o.append(i.addClass("pum-form__messages--bottom"));break;case"top":o.prepend(i.addClass("pum-form__messages--top"))}if(["bottom","top"].indexOf(pum_vars.message_position)>=0)for(;t.length>r;r++)this.add_message(i,t[r].message,n);else for(;t.length>r;r++)void 0!==t[r].field?this.add_field_error(o,t[r]):this.add_message(i,t[r].message,n);i.is(":hidden")&&e(".pum-form__message",i).length&&i.slideDown()},add_message:function(o,t,n){var i=e('<p class="pum-form__message">').html(t);n=n||"success",i.addClass("pum-form__message--"+n),o.append(i),o.is(":visible")&&i.hide().slideDown()},add_field_error:function(o,t){var n=e('[name="'+t.field+'"]',o).parents(".pum-form__field").addClass("pum-form__field--error");this.add_message(n,t.message,"error")},clear_all:function(o,t){var n=o.find(".pum-form__messages"),i=n.find(".pum-form__message"),r=o.find(".pum-form__field.pum-form__field--error");t=t||!1,n.length&&i.slideUp("fast",function(){e(this).remove(),t&&n.hide()}),r.length&&r.removeClass("pum-form__field--error").find("p.pum-form__message").remove()},scroll_to_first:function(o){window.PUM.utilities.scrollTo(e(".pum-form__field.pum-form__field--error",o).eq(0))}},success:function(t,n){if(n=e.extend({},o,n)){var i=PUM.getPopup(t),r={},s=function(){n.openpopup&&PUM.getPopup(n.openpopup_id).length?PUM.open(n.openpopup_id):n.redirect_enabled&&(""!==n.redirect?window.location=n.redirect:window.location.reload(!0))};i.length&&(i.trigger("pumFormSuccess"),n.cookie&&(r=e.extend({name:"pum-"+PUM.getSetting(i,"id"),expires:"+1 year"},"object"==typeof n.cookie?n.cookie:{}),PUM.setCookie(i,r))),i.length&&n.closepopup?setTimeout(function(){i.popmake("close",s)},1e3*parseInt(n.closedelay)):s()}}})}(jQuery)},9068(){!function(e){"use strict";e.PUM=e.PUM||{},e.PUM.hooks=e.PUM.hooks||new function(){var e=Array.prototype.slice,o={removeFilter:function(e,t){return"string"==typeof e&&n("filters",e,t),o},applyFilters:function(){var t=e.call(arguments),n=t.shift();return"string"==typeof n?r("filters",n,t):o},addFilter:function(e,t,n,r){return"string"==typeof e&&"function"==typeof t&&i("filters",e,t,n=parseInt(n||10,10),r),o},removeAction:function(e,t){return"string"==typeof e&&n("actions",e,t),o},doAction:function(){var t=e.call(arguments),n=t.shift();return"string"==typeof n&&r("actions",n,t),o},addAction:function(e,t,n,r){return"string"==typeof e&&"function"==typeof t&&i("actions",e,t,n=parseInt(n||10,10),r),o}},t={actions:{},filters:{}};function n(e,o,n,i){var r,s,a;if(t[e][o])if(n)if(r=t[e][o],i)for(a=r.length;a--;)(s=r[a]).callback===n&&s.context===i&&r.splice(a,1);else for(a=r.length;a--;)r[a].callback===n&&r.splice(a,1);else t[e][o]=[]}function i(e,o,n,i,r){var s={callback:n,priority:i,context:r},a=t[e][o];a?(a.push(s),a=function(e){for(var o,t,n,i=1,r=e.length;i<r;i++){for(o=e[i],t=i;(n=e[t-1])&&n.priority>o.priority;)e[t]=e[t-1],--t;e[t]=o}return e}(a)):a=[s],t[e][o]=a}function r(e,o,n){var i,r,s=t[e][o];if(!s)return"filters"===e&&n[0];if(r=s.length,"filters"===e)for(i=0;i<r;i++)n[0]=s[i].callback.apply(s[i].context,n);else for(i=0;i<r;i++)s[i].callback.apply(s[i].context,n);return"filters"!==e||n[0]}return o},e.pum=e.PUM}(window)},4361(){!function(e){"use strict";function o(e){return e}window.PUM=window.PUM||{},window.PUM.integrations=window.PUM.integrations||{},e.extend(window.PUM.integrations,{init:function(){if(void 0!==pum_vars.form_submission){var e=pum_vars.form_submission;e.ajax=!1,e.popup=e.popupId>0?PUM.getPopup(e.popupId):null,PUM.integrations.formSubmission(null,e)}},formSubmission:function(t,n){var i=PUM.getPopup(t);(n=e.extend({popup:i,formProvider:null,formId:null,formInstanceId:null,formKey:null,ajax:!0,tracked:!1},n)).formKey=n.formKey||[n.formProvider,n.formId,n.formInstanceId].filter(o).join("_"),n.popup&&n.popup.length&&(n.popupId=PUM.getSetting(i,"id"),i.trigger("pumConversion")),window.PUM.hooks.doAction("pum.integration.form.success",t,n)},checkFormKeyMatches:function(e,o,t){o=""===o&&o;var n=-1!==["any"===e,"pumsubform"===e&&"pumsubform"===t.formProvider,e===t.formProvider+"_any",!o&&new RegExp("^"+e+"(_[d]*)?").test(t.formKey),!!o&&e+"_"+o===t.formKey].indexOf(!0);return window.PUM.hooks.applyFilters("pum.integration.checkFormKeyMatches",n,{formIdentifier:e,formInstanceId:o,submittedFormArgs:t})}})}(window.jQuery)},7081(){!function(e){"use strict";pum_vars&&void 0!==pum_vars.core_sub_forms_enabled&&!pum_vars.core_sub_forms_enabled||(window.PUM=window.PUM||{},window.PUM.newsletter=window.PUM.newsletter||{},e.extend(window.PUM.newsletter,{form:e.extend({},window.PUM.forms.form,{submit:function(o){var t=e(this),n=t.pumSerializeObject();o.preventDefault(),o.stopPropagation(),window.PUM.newsletter.form.beforeAjax(t),e.ajax({type:"POST",dataType:"json",url:pum_vars.ajaxurl,data:{action:"pum_sub_form",values:n}}).always(function(){window.PUM.newsletter.form.afterAjax(t)}).done(function(e){window.PUM.newsletter.form.responseHandler(t,e)}).error(function(e,o,t){console.log("Error: type of "+o+" with message of "+t)})}})}),e(document).on("submit","form.pum-sub-form",window.PUM.newsletter.form.submit).on("success","form.pum-sub-form",function(o,t){var n=e(o.target),i=n.data("settings")||{},r=n.pumSerializeObject(),s=PUM.getPopup(n),a=PUM.getSetting(s,"id"),p=e("form.pum-sub-form",s).index(n)+1;window.PUM.integrations.formSubmission(n,{formProvider:"pumsubform",formId:a,formInstanceId:p,extras:{data:t,values:r,settings:i}}),n.trigger("pumNewsletterSuccess",[t]).addClass("pum-newsletter-success"),n[0].reset(),window.PUM.hooks.doAction("pum-sub-form.success",t,n),"string"==typeof i.redirect&&""!==i.redirect&&(i.redirect=atob(i.redirect)),window.PUM.forms.success(n,i)}).on("error","form.pum-sub-form",function(o,t){var n=e(o.target);n.trigger("pumNewsletterError",[t]),window.PUM.hooks.doAction("pum-sub-form.errors",t,n)}))}(jQuery)},5675(){!function(e,o){"use strict";window.PUM.getLastOpenTrigger=function(){return e.fn.popmake.last_open_trigger},window.PUM.setLastOpenTrigger=o=>{e.fn.popmake.last_open_trigger=o},e.extend(e.fn.popmake.methods,{addTrigger:function(n){return function(){if(Object.keys(t).length)return t;t=window.PUM.hooks.applyFilters("popupMaker.triggers",{auto_open:function(o){var t=PUM.getPopup(this);setTimeout(function(){t.popmake("state","isOpen")||!t.popmake("checkCookies",o)&&t.popmake("checkConditions")&&(e.fn.popmake.last_open_trigger="Auto Open - Delay: "+o.delay,t.popmake("open"))},o.delay)},click_open:function(t){var n,i=PUM.getPopup(this),r=i.popmake("getSettings"),s=[".popmake-"+r.id,".popmake-"+decodeURIComponent(r.slug),'a[href$="#popmake-'+r.id+'"]'];t.extra_selectors&&""!==t.extra_selectors&&s.push(t.extra_selectors),n=(s=pum.hooks.applyFilters("pum.trigger.click_open.selectors",s,t,i)).join(", "),e(n).addClass("pum-trigger").css({cursor:"pointer"}),e(o).on("click.pumTrigger",n,function(o){var n=e(this),r=t.do_default||!1;i.has(n).length>0||i.popmake("state","isOpen")||!i.popmake("checkCookies",t)&&i.popmake("checkConditions")&&(n.data("do-default")?r=n.data("do-default"):(n.hasClass("do-default")||n.hasClass("popmake-do-default")||n.hasClass("pum-do-default"))&&(r=!0),o.ctrlKey||pum.hooks.applyFilters("pum.trigger.click_open.do_default",r,i,n)||(o.preventDefault(),o.stopPropagation()),e.fn.popmake.last_open_trigger=n,i.popmake("open"))})},form_submission:function(o){var t=PUM.getPopup(this);o=e.extend({form:"",formInstanceId:"",delay:0},o);PUM.hooks.addAction("pum.integration.form.success",function(n,i){o.form.length&&PUM.integrations.checkFormKeyMatches(o.form,o.formInstanceId,i)&&setTimeout(function(){t.popmake("state","isOpen")||!t.popmake("checkCookies",o)&&t.popmake("checkConditions")&&(e.fn.popmake.last_open_trigger="Form Submission",t.popmake("open"))},o.delay)})},admin_debug:function(){var t=PUM.getPopup(this);e(o).one("pumInitialized",function(){t.popmake("open")})}}),t=e.extend(t,e.fn.popmake.triggers),e.fn.popmake.triggers=t}(),e.fn.popmake.triggers[n]?e.fn.popmake.triggers[n].apply(this,Array.prototype.slice.call(arguments,1)):(window.console&&console.warn("Trigger type "+n+" does not exist."),this)}});let t={};e(o).on("pumInit",".pum",function(){var e,o=PUM.getPopup(this),t=o.popmake("getSettings").triggers||[],n=null;if(t.length)for(e=0;t.length>e;e+=1)n=t[e],o.popmake("addTrigger",n.type,n.settings)}),e.fn.popmake=e.fn.popmake||{},e.fn.popmake.triggers=e.fn.popmake.triggers||{}}(jQuery,document)},979(){!function(e){"use strict";window.PUM=window.PUM||{},window.PUM_URLTracking={init:function(){this.addPopupOpenTracking()},addPopupOpenTracking:function(){var o=this;e(document).on("pumAfterOpen.url_tracking",".pum",function(){var e=window.PUM.getPopup(this),t=e.popmake("getSettings"),n=parseInt(t.id,10);n>0&&o.processPopupLinks(e,n)})},processPopupLinks:function(o,t){var n=this;o.find("a[href]").each(function(){var i=e(this),r=i.attr("href");if(n.isInternalUrl(r)){var s={};s[window.pum_vars?.paramNames?.popup_id||"pid"]=t,window.PUM&&window.PUM.hooks&&(s=window.PUM.hooks.applyFilters("popupMaker.popup.linkUrlParams",s,o,i));var a=n.appendParamsToUrl(r,s);i.attr("href",a)}else n.shouldTrackClick(r)&&n.attachClickTracking(i,t,r)})},shouldTrackClick:function(e){return!!e&&-1===e.indexOf("cta=")},getLinkType:function(e){return 0===e.indexOf("mailto:")?"mailto":0===e.indexOf("tel:")?"tel":0===e.indexOf("javascript:")?"javascript":"#"===e||0===e.indexOf("#")?"anchor":0===e.indexOf("http")||0===e.indexOf("//")?"external":"other"},attachClickTracking:function(e,o,t){var n=this;e.data("pum-click-tracked")||(e.data("pum-click-tracked",!0),e.on("click.pum_tracking",function(){if(window.PUM_Analytics&&window.pum_vars&&window.pum_vars.analytics_enabled){var i={pid:o,event:"conversion",eventData:{type:"link_click",url:t,linkType:n.getLinkType(t)}};window.PUM&&window.PUM.hooks&&(i=window.PUM.hooks.applyFilters("popupMaker.popup.linkClickData",i,e)),window.PUM_Analytics.beacon(i)}}))},isInternalUrl:function(e){if(!e||"#"===e||0===e.indexOf("#"))return!1;if(/^[a-z][a-z0-9+.-]*:/i.test(e)&&!/^https?:/i.test(e))return!1;if(0===e.indexOf("/")&&0!==e.indexOf("//"))return!0;if(0===e.indexOf("//")&&(e=window.location.protocol+e),0===e.indexOf("http"))try{return new URL(e).hostname===window.location.hostname}catch(e){return!1}return!0},appendParamsToUrl:function(e,o){try{var t=new URL(e,window.location.origin);for(var n in o)Object.prototype.hasOwnProperty.call(o,n)&&o[n]&&t.searchParams.set(n,o[n]);return t.toString()}catch(t){var i="";for(var r in o)Object.prototype.hasOwnProperty.call(o,r)&&o[r]&&(i.length>0&&(i+="&"),i+=encodeURIComponent(r)+"="+encodeURIComponent(o[r]));if(i.length>0){var s=-1!==e.indexOf("?")?"&":"?";return e+s+i}return e}}},e(function(){window.PUM_URLTracking.init()})}(jQuery)},1472(){!function(e){"use strict";var o="color,date,datetime,datetime-local,email,hidden,month,number,password,range,search,tel,text,time,url,week".split(","),t="select,textarea".split(","),n=/\[([^\]]*)\]/g;function i(e,o,t){var n=o[0];o.length>1?(e[n]||(e[n]=o[1]?{}:[]),i(e[n],o.slice(1),t)):(n||(n=e.length),e[n]=t)}Array.prototype.indexOf||(Array.prototype.indexOf=function(e){if(null==this)throw new TypeError;var o=Object(this),t=o.length>>>0;if(0===t)return-1;var n=0;if(arguments.length>0&&((n=Number(arguments[1]))!=n?n=0:0!==n&&n!==1/0&&n!==-1/0&&(n=(n>0||-1)*Math.floor(Math.abs(n)))),n>=t)return-1;for(var i=n>=0?n:Math.max(t-Math.abs(n),0);i<t;i++)if(i in o&&o[i]===e)return i;return-1}),window.PUM=window.PUM||{},e.fn.popmake.utilities=window.PUM.utilities={scrollTo:function(o,t){var n=e(o)||e();n.length&&e("html, body").animate({scrollTop:n.offset().top-100},1e3,"swing",function(){var e=n.find(':input:not([type="button"]):not([type="hidden"]):not(button)').eq(0);e.hasClass("wp-editor-area")?tinyMCE.execCommand ("mceFocus",!1,e.attr("id")):e.focus(),"function"==typeof t&&t()})},inArray:function(e,o){return!!~o.indexOf(e)},convert_hex:function(e,o){return e=e.replace("#",""),"rgba("+parseInt(e.substring(0,2),16)+","+parseInt(e.substring(2,4),16)+","+parseInt(e.substring(4,6),16)+","+o/100+")"},debounce:function(e,o){var t;return function(){var n=this,i=arguments;window.clearTimeout(t),t=window.setTimeout(function(){e.apply(n,i)},o)}},throttle:function(e,o){var t=!1,n=function(){t=!1};return function(){t||(e.apply(this,arguments),window.setTimeout(n,o),t=!0)}},getXPath:function(o){var t,n,i,r,s,a=[];return e.each(e(o).parents(),function(o,p){if(t=e(p),n=t.attr("id")||"",i=t.attr("class")||"",r=t.get(0).tagName.toLowerCase(),s=t.parent().children(r).index(t),"body"===r)return!1;i.length>0&&(i=(i=i.split(" "))[0]),a.push(r+(n.length>0?"#"+n:i.length>0?"."+i.split(" ").join("."):":eq("+s+")"))}),a.reverse().join(" > ")},strtotime:function(e,o){var t,n,i,r,s,a,p,u,c,l,d=!1;if(!e)return d;if((n=(e=e.replace(/^\s+|\s+$/g,"").replace(/\s{2,}/g," ").replace(/[\t\r\n]/g,"").toLowerCase()).match(/^(\d{1,4})([\-\.\/\:])(\d{1,2})([\-\.\/\:])(\d{1,4})(?:\s(\d{1,2}):(\d{2})?:?(\d{2})?)?(?:\s([A-Z]+)?)?$/))&&n[2]===n[4])if(n[1]>1901)switch(n[2]){case"-":case"/":return n[3]>12||n[5]>31?d:new Date(n[1],parseInt(n[3],10)-1,n[5],n[6]||0,n[7]||0,n[8]||0,n[9]||0)/1e3;case".":return d}else if(n[5]>1901)switch(n[2]){case"-":case".":return n[3]>12||n[1]>31?d:new Date(n[5],parseInt(n[3],10)-1,n[1],n[6]||0,n[7]||0,n[8]||0,n[9]||0)/1e3;case"/":return n[1]>12||n[3]>31?d:new Date(n[5],parseInt(n[1],10)-1,n[3],n[6]||0,n[7]||0,n[8]||0,n[9]||0)/1e3}else switch(n[2]){case"-":return n[3]>12||n[5]>31||n[1]<70&&n[1]>38?d:(r=n[1]>=0&&n[1]<=38?+n[1]+2e3:n[1],new Date(r,parseInt(n[3],10)-1,n[5],n[6]||0,n[7]||0,n[8]||0,n[9]||0)/1e3);case".":return n[5]>=70?n[3]>12||n[1]>31?d:new Date(n[5],parseInt(n[3],10)-1,n[1],n[6]||0,n[7]||0,n[8]||0,n[9]||0)/1e3:n[5]<60&&!n[6]?n[1]>23||n[3]>59?d:(i=new Date,new Date(i.getFullYear(),i.getMonth(),i.getDate(),n[1]||0,n[3]||0,n[5]||0,n[9]||0)/1e3):d;case"/":return n[1]>12||n[3]>31||n[5]<70&&n[5]>38?d:(r=n[5]>=0&&n[5]<=38?+n[5]+2e3:n[5],new Date(r,parseInt(n[1],10)-1,n[3],n[6]||0,n[7]||0,n[8]||0,n[9]||0)/1e3);case":":return n[1]>23||n[3]>59||n[5]>59?d:(i=new Date,new Date(i.getFullYear(),i.getMonth(),i.getDate(),n[1]||0,n[3]||0,n[5]||0)/1e3)}if("now"===e)return null===o||isNaN(o)?(new Date).getTime()/1e3||0:o||0;if(t=Date.parse(e),!isNaN(t))return t/1e3||0;function m(e){var o=e.split(" "),t=o[0],n=o[1].substring(0,3),i=/\d+/.test(t),r=("last"===t?-1:1)*("ago"===o[2]?-1:1);if(i&&(r*=parseInt(t,10)),p.hasOwnProperty(n)&&!o[1].match(/^mon(day|\.)?$/i))return s["set"+p[n]](s["get"+p[n]]()+r);if("wee"===n)return s.setDate(s.getDate()+7*r);if("next"===t||"last"===t)!function(e,o,t){var n,i=a[o];void 0!==i&&(0===(n=i-s.getDay())?n=7*t:n>0&&"last"===e?n-=7:n<0&&"next"===e&&(n+=7),s.setDate(s.getDate()+n))}(t,n,r);else if(!i)return!1;return!0}if(s=o?new Date(1e3*o):new Date,a={sun:0,mon:1,tue:2,wed:3,thu:4,fri:5,sat:6},p={yea:"FullYear",mon:"Month",day:"Date",hou:"Hours",min:"Minutes",sec:"Seconds"},c="([+-]?\\d+\\s"+"(years?|months?|weeks?|days?|hours?|minutes?|min|seconds?|sec|sunday|sun\\.?|monday|mon\\.?|tuesday|tue\\.?|wednesday|wed\\.?|thursday|thu\\.?|friday|fri\\.?|saturday|sat\\.?)"+"|(last|next)\\s(years?|months?|weeks?|days?|hours?|minutes?|min|seconds?|sec|sunday|sun\\.?|monday|mon\\.?|tuesday|tue\\.?|wednesday|wed\\.?|thursday|thu\\.?|friday|fri\\.?|saturday|sat\\.?))(\\sago)?",!(n=e.match(new RegExp(c,"gi"))))return d;for(l=0,u=n.length;l<u;l+=1)if(!m(n[l]))return d;return s.getTime()/1e3},serializeObject:function(r){e.extend({},r);var s={},a=e.extend(!0,{include:[],exclude:[],includeByClass:""},r);return this.find(":input").each(function(){var r;!this.name||this.disabled||window.PUM.utilities.inArray(this.name,a.exclude)||a.include.length&&!window.PUM.utilities.inArray(this.name,a.include)||-1===this.className.indexOf(a.includeByClass)||(r=this.name.replace(n,"[$1").split("["))[0]&&(this.checked||window.PUM.utilities.inArray(this.type,o)||window.PUM.utilities.inArray(this.nodeName.toLowerCase(),t))&&("checkbox"===this.type&&r.push(""),i(s,r,e(this).val()))}),s}},e.fn.pumSerializeObject=window.PUM.utilities.serializeObject,e.fn.popmake.utilies=e.fn.popmake.utilities}(jQuery,document)},7364(){!function(){"use strict";function e(e){var o=this.constructor;return this.then(function(t){return o.resolve(e()).then(function(){return t})},function(t){return o.resolve(e()).then(function(){return o.reject(t)})})}var o=setTimeout;function t(e){return Boolean(e&&void 0!==e.length)}function n(){}function i(e){if(!(this instanceof i))throw new TypeError("Promises must be constructed via new");if("function"!=typeof e)throw new TypeError("not a function");this._state=0,this._handled=!1,this._value=void 0,this._deferreds=[],c(e,this)}function r(e,o){for(;3===e._state;)e=e._value;0!==e._state?(e._handled=!0,i._immediateFn(function(){var t=1===e._state?o.onFulfilled:o.onRejected;if(null!==t){var n;try{n=t(e._value)}catch(e){return void a(o.promise,e)}s(o.promise,n)}else(1===e._state?s:a)(o.promise,e._value)})):e._deferreds.push(o)}function s(e,o){try{if(o===e)throw new TypeError("A promise cannot be resolved with itself.");if(o&&("object"==typeof o||"function"==typeof o)){var t=o.then;if(o instanceof i)return e._state=3,e._value=o,void p(e);if("function"==typeof t)return void c((n=t,r=o,function(){n.apply(r,arguments)}),e)}e._state=1,e._value=o,p(e)}catch(o){a(e,o)}var n,r}function a(e,o){e._state=2,e._value=o,p(e)}function p(e){2===e._state&&0===e._deferreds.length&&i._immediateFn(function(){e._handled||i._unhandledRejectionFn(e._value)});for(var o=0,t=e._deferreds.length;o<t;o++)r(e,e._deferreds[o]);e._deferreds=null}function u(e,o,t){this.onFulfilled="function"==typeof e?e:null,this.onRejected="function"==typeof o?o:null,this.promise=t}function c(e,o){var t=!1;try{e(function(e){t||(t=!0,s(o,e))},function(e){t||(t=!0,a(o,e))})}catch(e){if(t)return;t=!0,a(o,e)}}i.prototype.catch=function(e){return this.then(null,e)},i.prototype.then=function(e,o){var t=new this.constructor(n);return r(this,new u(e,o,t)),t},i.prototype.finally=e,i.all=function(e){return new i(function(o,n){if(!t(e))return n(new TypeError("Promise.all accepts an array"));var i=Array.prototype.slice.call(e);if(0===i.length)return o([]);var r=i.length;function s(e,t){try{if(t&&("object"==typeof t||"function"==typeof t)){var a=t.then;if("function"==typeof a)return void a.call(t,function(o){s(e,o)},n)}i[e]=t,0===--r&&o(i)}catch(e){n(e)}}for(var a=0;a<i.length;a++)s(a,i[a])})},i.resolve=function(e){return e&&"object"==typeof e&&e.constructor===i?e:new i(function(o){o(e)})},i.reject=function(e){return new i(function(o,t){t(e)})},i.race=function(e){return new i(function(o,n){if(!t(e))return n(new TypeError("Promise.race accepts an array"));for(var r=0,s=e.length;r<s;r++)i.resolve(e[r]).then(o,n)})},i._immediateFn="function"==typeof setImmediate&&function(e){setImmediate(e)}||function(e){o(e,0)},i._unhandledRejectionFn=function(e){"undefined"!=typeof console&&console&&console.warn("Possible Unhandled Promise Rejection:",e)};var l=function(){if("undefined"!=typeof self)return self;if("undefined"!=typeof window)return window;if("undefined"!=typeof globalThis)return globalThis;throw new Error("unable to locate global object")}();"Promise"in l?l.Promise.prototype.finally||(l.Promise.prototype.finally=e):l.Promise=i}()}},o={};function t(n){var i=o[n];if(void 0!==i)return i.exports;var r=o[n]={exports:{}};return e[n].call(r.exports,r,r.exports,t),r.exports}t.n=e=>{var o=e&&e.__esModule?()=>e.default:()=>e;return t.d(o,{a:o}),o},t.d=(e,o)=>{for(var n in o)t.o(o,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:o[n]})},t.o=(e,o)=>Object.prototype.hasOwnProperty.call(e,o),(()=>{"use strict";t(7364),t(1583);const e=window.jQuery,o=t.n(e)(),n={validate:/^[a-z_][a-z0-9_]*(?:\[(?:\d*|[a-z0-9_]+)\])*$/i,key:/[a-z0-9_]+|(?=\[\])/gi,push:/^$/,fixed:/^\d+$/,named:/^[a-z0-9_]+$/i};function i(e,t){var i={},r={};function s(e,o,t){return e[o]=t,e}function a(e){return void 0===r[e]&&(r[e]=0),r[e]++}function p(){return i}this.addPair=function(r){if(!n.validate.test(r.name))return this;var p=function(e,o){var t,i=e.match(n.key);try{o=JSON.parse(o)}catch(e){}for(;void 0!==(t=i.pop());)n.push.test(t)?o=s([],a(e.replace(/\[\]$/,"")),o):n.fixed.test(t)?o=s([],t,o):n.named.test(t)&&(o=s({},t,o));return o}(r.name,function(e){return"checkbox"===o('[name="'+e.name+'"]',t).attr("type")&&"1"===e.value||e.value}(r));return i=e.extend(!0,i,p),this},this.addPairs=function(o){if(!e.isArray(o))throw new Error("formSerializer.addPairs expects an Array");for(var t=0,n=o.length;t<n;t++)this.addPair(o[t]);return this},this.serialize=p,this.serializeJSON=function(){return JSON.stringify(p())}}i.patterns=n,i.serializeObject=function(){var e;return e=this.is("form")?this.serializeArray():this.find(":input").serializeArray(),new i(o,this).addPairs(e).serialize()},i.serializeJSON=function(){var e;return e=this.is("form")?this.serializeArray():this.find(":input").serializeArray(),new i(o,this).addPairs(e).serializeJSON()},o.fn.pumSerializeObject=i.serializeObject,o.fn.pumSerializeJSON=i.serializeJSON,function(e,o,t){window.pum_vars=window.pum_vars||{default_theme:"0",home_url:"/",version:1.7,pm_dir_url:"",ajaxurl:"",restapi:!1,analytics_api:!1,rest_nonce:null,debug_mode:!1,disable_tracking:!0,message_position:"top",core_sub_forms_enabled:!0,popups:{}},window.pum_popups=window.pum_popups||{},window.pum_vars.popups=window.pum_popups,window.PUM={get:new function(){var e={},o=function(o,n,i){"boolean"==typeof n&&(i=n,n=!1);var r=n?n.selector+" "+o:o;return(t===e[r]||i)&&(e[r]=n?n.find(o):jQuery(o)),e[r]};return o.elementCache=e,o},getPopup:function(o){var t,n;return n=o,(t=isNaN(n)||parseInt(Number(n))!==parseInt(n)||isNaN(parseInt(n,10))?"current"===o?e(".pum-overlay.pum-active:eq(0)"):"open"===o?e(".pum-overlay.pum-active"):"closed"===o?e(".pum-overlay:not(.pum-active)"):o instanceof jQuery?o:e(o):PUM.get("#pum-"+o)).hasClass("pum-overlay")?t:t.hasClass("popmake")||t.parents(".pum-overlay").length?t.parents(".pum-overlay"):e()},open:function(e,o){PUM.getPopup(e).popmake("open",o)},close:function(e,o){PUM.getPopup(e).popmake("close",o)},preventOpen:function(e){PUM.getPopup(e).addClass("preventOpen")},getSettings:function(e){return PUM.getPopup(e).popmake("getSettings")},getSetting:function(e,o,n){var i=function(e,o){function t(e,o,t){return o?e[o.slice(0,t?-1:o.length)]:e}return o.split(".").reduce(function(e,o){return o?o.split("[").reduce(t,e):e},e)}(PUM.getSettings(e),o);return void 0!==i?i:n!==t?n:null},checkConditions:function(e){return PUM.getPopup(e).popmake("checkConditions")},getCookie:function(o){return e.pm_cookie(o)},getJSONCookie:function(o){return e.pm_cookie_json(o)},setCookie:function(e,o){PUM.getPopup(e).popmake("setCookie",jQuery.extend({name:"pum-"+PUM.getSetting(e,"id"),expires:"+30 days"},o))},setCookieRaw:function(o,t,n){e.pm_cookie(o,t,n)},clearCookie:function(o,t){e.pm_remove_cookie(o),"function"==typeof t&&t()},clearCookies:function(o,n){var i,r=PUM.getPopup(o).popmake("getSettings").cookies;if(r!==t&&r.length)for(i=0;r.length>i;i+=1)e.pm_remove_cookie(r[i].settings.name);"function"==typeof n&&n()},getClickTriggerSelector:function(e,o){var t=PUM.getPopup(e),n=PUM.getSettings(e),i=[".popmake-"+n.id,".popmake-"+decodeURIComponent(n.slug),'a[href$="#popmake-'+n.id+'"]'];return o.extra_selectors&&""!==o.extra_selectors&&i.push(o.extra_selectors),(i=pum.hooks.applyFilters("pum.trigger.click_open.selectors",i,o,t)).join(", ")},disableClickTriggers:function(n,i){if(n!==t)if(i!==t){var r=PUM.getClickTriggerSelector(n,i);e(r).removeClass("pum-trigger"),e(o).off("click.pumTrigger click.popmakeOpen",r)}else{var s=PUM.getSetting(n,"triggers",[]);if(s.length)for(var a=0;s.length>a;a++)-1!==pum.hooks.applyFilters("pum.disableClickTriggers.clickTriggerTypes",["click_open"]).indexOf(s[a].type)&&(r=PUM.getClickTriggerSelector(n,s[a].settings),e(r).removeClass("pum-trigger"),e(o).off("click.pumTrigger click.popmakeOpen",r))}},actions:{stopIframeVideosPlaying:function(){var o=PUM.getPopup(this),t=o.popmake("getContainer");o.hasClass("pum-has-videos")||(t.find("iframe").filter('[src*="youtube"],[src*="vimeo"]').each(function(){var o=e(this),t=o.attr("src"),n=t.replace("autoplay=1","1=1");n!==t&&(t=n),o.prop("src",t)}),t.find("video").each(function(){this.pause()}))}}},e.fn.popmake=function(t){return e.fn.popmake.methods[t]?(e(o).trigger("pumMethodCall",arguments),e.fn.popmake.methods[t].apply(this,Array.prototype.slice.call(arguments,1))):"object"!=typeof t&&t?void(window.console&&console.warn("Method "+t+" does not exist on $.fn.popmake")):e.fn.popmake.methods.init.apply(this,arguments)},e.fn.popmake.methods={init:function(){return this.each(function(){var o=PUM.getPopup(this),n=o.popmake("getSettings");if(n.theme_id<=0&&(n.theme_id=pum_vars.default_theme),n.disable_reposition!==t&&n.disable_reposition||e(window).on("resize",function(){(o.hasClass("pum-active")||o.find(".popmake.active").length)&&e.fn.popmake.utilities.throttle(setTimeout(function(){o.popmake("reposition")},25),500,!1)}),o.find(".pum-container").data("popmake",n),o.data("popmake",n).trigger("pumInit"),n.open_sound&&"none"!==n.open_sound){var i="custom"!==n.open_sound?new Audio(pum_vars.pm_dir_url+"assets/sounds/"+n.open_sound):new Audio(n.custom_sound);i.addEventListener("canplaythrough",function(){o.data("popAudio",i)}),i.addEventListener("error",function(){console.warn("Error occurred when trying to load Popup opening sound.")}),i.load()}return this})},getOverlay:function(){return PUM.getPopup(this)},getContainer:function(){return PUM.getPopup(this).find(".pum-container")},getTitle:function(){return PUM.getPopup(this).find(".pum-title")||null},getContent:function(){return PUM.getPopup(this).find(".pum-content")||null},getClose:function(){return PUM.getPopup(this).find(".pum-content + .pum-close")||null},getSettings:function(){var o=PUM.getPopup(this);return e.extend(!0,{},e.fn.popmake.defaults,o.data("popmake")||{},"object"==typeof pum_popups&&void 0!==pum_popups[o.attr("id")]?pum_popups[o.attr("id")]:{})},state:function(e){var o=PUM.getPopup(this);if(t!==e)switch(e){case"isOpen":return o.hasClass("pum-open")||o.popmake("getContainer").hasClass("active");case"isClosed":return!o.hasClass("pum-open")&&!o.popmake("getContainer").hasClass("active")}},open:function(o){var n=PUM.getPopup(this),i=n.popmake("getContainer"),r=n.popmake("getClose"),s=n.popmake("getSettings"),a=e("html");return n.trigger("pumBeforeOpen"),PUM.hooks.applyFilters("popupMaker.popup.preventOpen",!1,n,s)||n.hasClass("preventOpen")||i.hasClass("preventOpen")?(console.log("prevented"),n.removeClass("preventOpen").removeClass("pum-active").trigger("pumOpenPrevented"),this):(s.stackable||n.popmake("close_all"),n.popmake("initializeState"),n.addClass("pum-active"),s.close_button_delay>0&&r.fadeOut(0),a.addClass("pum-open"),s.overlay_disabled?a.addClass("pum-open-overlay-disabled"):a.addClass("pum-open-overlay"),s.position_fixed?a.addClass("pum-open-fixed"):a.addClass("pum-open-scrollable"),n.popmake("setup_close").popmake("reposition").queue(function(){var o=n.popmake("getContainer");n.css({display:"block",opacity:0}),o.css({display:"block",opacity:0}),e(this).dequeue()}).popmake("animate",s.animation_type,function(){s.close_button_delay>0&&setTimeout(function(){r.fadeIn()},s.close_button_delay),n.trigger("pumAfterOpen"),e(window).trigger("resize"),e.fn.popmake.last_open_popup=n,o!==t&&o()}),void 0!==n.data("popAudio")&&n.data("popAudio").play().catch(function(e){console.warn("Sound was not able to play when popup opened. Reason: "+e)}),this)},initializeState:function(){var e=PUM.getPopup(this),o=e.popmake("getContainer");return e.css({display:"",opacity:"",height:"",width:""}),o.css({display:"",opacity:"",height:"",width:""}),e[0].offsetHeight,o[0].offsetHeight,this},setup_close:function(){var n=PUM.getPopup(this),i=n.popmake("getClose"),r=n.popmake("getSettings");if((i=i.add(e(".popmake-close, .pum-close",n).not(i))).off("click.pum").on("click.pum",function(o){var i=e(this);i.hasClass("pum-do-default")||i.data("do-default")!==t&&i.data("do-default")||o.preventDefault(),e.fn.popmake.last_close_trigger="Close Button",n.popmake("close")}),r.close_on_esc_press||r.close_on_f4_press){const o=`keyup.popmake-${r.id}`;e(window).off(o).on(o,function(o){27===o.keyCode&&r.close_on_esc_press&&(e.fn.popmake.last_close_trigger="ESC Key",n.popmake("close")),115===o.keyCode&&r.close_on_f4_press&&(e.fn.popmake.last_close_trigger="F4 Key",n.popmake("close"))})}return r.close_on_overlay_click&&(n.on("pumAfterOpen",function(){e(o).on(`click.popmake-${r.id}`,function(o){e(o.target).closest(".pum-container").length||(e.fn.popmake.last_close_trigger="Overlay Click",n.popmake("close"))})}),n.on("pumAfterClose",function(){e(o).off(`click.popmake-${r.id}`)})),r.close_on_form_submission&&PUM.hooks.addAction("pum.integration.form.success",function(o,t){t.popup&&t.popup[0]===n[0]&&setTimeout(function(){e.fn.popmake.last_close_trigger="Form Submission",n.popmake("close")},r.close_on_form_submission_delay||0)}),n.trigger("pumSetupClose"),this},close:function(o){return this.each(function(){var n=PUM.getPopup(this),i=n.popmake("getContainer"),r=n.popmake("getClose"),s=n.popmake("getSettings");return r=r.add(e(".popmake-close, .pum-close",n).not(r)),n.trigger("pumBeforeClose"),n.hasClass("preventClose")||i.hasClass("preventClose")?(n.removeClass("preventClose").trigger("pumClosePrevented"),this):(i.fadeOut("fast",function(){n.is(":visible")&&n.fadeOut("fast"),e(window).off(`keyup.popmake-${s.id}`),n.off("click.popmake"),r.off("click.popmake"),1===e(".pum-active").length&&e("html").removeClass("pum-open").removeClass("pum-open-scrollable").removeClass("pum-open-overlay").removeClass("pum-open-overlay-disabled").removeClass("pum-open-fixed"),n.removeClass("pum-active").trigger("pumAfterClose"),o!==t&&o()}),this)})},close_all:function(){return e(".pum-active").popmake("close"),this},reposition:function(o){var t=PUM.getPopup(this).trigger("pumBeforeReposition"),n=t.popmake("getContainer"),i=t.popmake("getSettings"),r=i.location,s={my:"",at:"",of:window,collision:"none",using:"function"==typeof o?o:e.fn.popmake.callbacks.reposition_using},a={overlay:null,container:null},p=null;try{p=e(e.fn.popmake.last_open_trigger)}catch(o){p=e()}return i.position_from_trigger&&p.length?(s.of=p,r.indexOf("left")>=0&&(s.my+=" right",s.at+=" left"+(0!==i.position_left?"-"+i.position_left:"")),r.indexOf("right")>=0&&(s.my+=" left",s.at+=" right"+(0!==i.position_right?"+"+i.position_right:"")),r.indexOf("center")>=0&&(s.my="center"===r?"center":s.my+" center",s.at="center"===r?"center":s.at+" center"),r.indexOf("top")>=0&&(s.my+=" bottom",s.at+=" top"+(0!==i.position_top?"-"+i.position_top:"")),r.indexOf("bottom")>=0&&(s.my+=" top",s.at+=" bottom"+(0!==i.position_bottom?"+"+i.position_bottom:""))):(r.indexOf("left")>=0&&(s.my+=" left"+(0!==i.position_left?"+"+i.position_left:""),s.at+=" left"),r.indexOf("right")>=0&&(s.my+=" right"+(0!==i.position_right?"-"+i.position_right:""),s.at+=" right"),r.indexOf("center")>=0&&(s.my="center"===r?"center":s.my+" center",s.at="center"===r?"center":s.at+" center"),r.indexOf("top")>=0&&(s.my+=" top"+(0!==i.position_top?"+"+(e("body").hasClass("admin-bar")?parseInt(i.position_top,10)+32:i.position_top):""),s.at+=" top"),r.indexOf("bottom")>=0&&(s.my+=" bottom"+(0!==i.position_bottom?"-"+i.position_bottom:""),s.at+=" bottom")),s.my=s.my.trim(),s.at=s.at.trim(),t.is(":hidden")&&(a.overlay=t.css("opacity"),t.css({opacity:0}).show(0)),n.is(":hidden")&&(a.container=n.css("opacity"),n.css({opacity:0}).show(0)),i.position_fixed&&n.addClass("fixed"),"custom"===i.size?n.css({width:i.custom_width,height:i.custom_height_auto?"auto":i.custom_height}):"auto"!==i.size&&n.addClass("responsive").css({minWidth:""!==i.responsive_min_width?i.responsive_min_width:"auto",maxWidth:""!==i.responsive_max_width?i.responsive_max_width:"auto"}),t.trigger("pumAfterReposition"),n.addClass("custom-position").position(s).trigger("popmakeAfterReposition"),"center"===r&&n[0].offsetTop<0&&n.css({top:e("body").hasClass("admin-bar")?42:10}),a.overlay&&t.css({opacity:a.overlay}).hide(0),a.container&&n.css({opacity:a.container}).hide(0),this},animation_origin:function(e){var o=PUM.getPopup(this).popmake("getContainer"),t={my:"",at:""};switch(e){case"top":t={my:"left+"+o.offset().left+" bottom-100",at:"left top"};break;case"bottom":t={my:"left+"+o.offset().left+" top+100",at:"left bottom"};break;case"left":t={my:"right top+"+o.offset().top,at:"left top"};break;case"right":t={my:"left top+"+o.offset().top,at:"right top"};break;default:e.indexOf("left")>=0&&(t={my:t.my+" right",at:t.at+" left"}),e.indexOf("right")>=0&&(t={my:t.my+" left",at:t.at+" right"}),e.indexOf("center")>=0&&(t={my:t.my+" center",at:t.at+" center"}),e.indexOf("top")>=0&&(t={my:t.my+" bottom-100",at:t.at+" top"}),e.indexOf("bottom")>=0&&(t={my:t.my+" top+100",at:t.at+" bottom"}),t.my=t.my.trim(),t.at=t.at.trim()}return t.of=window,t.collision="none",t}}}(jQuery,document),window.PUM,t(2744),t(4176),t(9068),t(1472),t(8009),t(2760),t(9655),t(4992),t(7100),t(7096),t(3887),t(7081),t(4361),t(5675),t(979),t(6176),t(2403),t(5951),t(3554),t(806),t(5398),t(6508),t(2742),t(334),t(9445),t(5962),t(6370),t(2826),t(8643),t(5693),t(8188),t(896),t(4408),t(3077),t(9862),t(4932)})()})();
!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();
var sowb=window.sowb||{};jQuery(function(t){sowb.setupTabs=function(){t(".sow-tabs").each(function(e,s){var o=t(s),i=o.closest(".so-widget-sow-tabs");if(i.data("initialized"))return t(this);var a,r=o.find("> .sow-tabs-panel-container"),n=o.find("> .sow-tabs-tab-container > .sow-tabs-tab"),w=o.find(".sow-tabs-tab-selected").index(),d=r.find("> .sow-tabs-panel");d.not(":eq("+w+")").hide();var l=function(e){var s=sowTabs.scrollto_offset?sowTabs.scrollto_offset:90,o=i.offset().top-s;e?t("body,html").animate({scrollTop:o},200):window.scrollTo(0,o)},f=function(t){return sowTabs.scrollto_after_change&&(t.offset().top<window.scrollY||t.offset().top+t.height()>window.scrollY)},c=function(e,s){var o=t(e);if(o.is(".sow-tabs-tab-selected"))return f(o)&&l(!0),!0;var r=o.index();if(r>-1){a&&a.finish();var w=n.filter(".sow-tabs-tab-selected");w.removeClass("sow-tabs-tab-selected");var c=w.index(),b=d.eq(c).children(),u=d.eq(r).children();w.attr("aria-selected",!1),o.attr("aria-selected",!0),b.attr("aria-hidden","true"),a=d.eq(c).fadeOut("fast",function(){t(this).trigger("hide"),u.removeAttr("aria-hidden"),d.eq(r).fadeIn({duration:"fast",start:function(){(f(o)||sowTabs.always_scroll)&&t(window).trigger("resize"),t(sowb).trigger("setup_widgets")},complete:function(){t(this).trigger("show"),(s||f(o))&&l(!0)}})}),o.addClass("sow-tabs-tab-selected"),s||i.trigger("tab_change",[o,i])}};n.on("click",function(){c(this)}),n.on("keydown",function(e){const s=t(this);if("ArrowLeft"!==e.key&&"ArrowRight"!==e.key)return;let o;e.preventDefault(),"ArrowLeft"===e.key&&(o=s.prev().get(0)?s.prev():s.siblings().last()),"ArrowRight"===e.key&&(o=s.next().get(0)?s.next():s.siblings().first()),s!==o&&(o.trigger("focus"),c(o.get(0)))}),i.data("initialized",!0)})},sowb.setupTabs(),t(sowb).on("setup_widgets",sowb.setupTabs)}),window.sowb=sowb;