view/frontend/web/js/bootstrap.min.js
/*!
* Bootstrap v3.3.7 (http://getbootstrap.com)
* Copyright 2011-2016 Twitter, Inc.
* Licensed under the MIT license
*/
if ('undefined' === typeof jQuery)
throw new Error("Bootstrap's JavaScript requires jQuery"); +
(function(a) {
'use strict';
var b = a.fn.jquery.split(' ')[0].split('.');
if (
(b[0] < 2 && b[1] < 9) ||
(1 === b[0] && 9 === b[1] && b[2] < 1) ||
b[0] > 3
)
throw new Error(
"Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than version 4"
);
})(jQuery), +(function(a) {
'use strict';
function b() {
var a = document.createElement('bootstrap'),
b = {
WebkitTransition: 'webkitTransitionEnd',
MozTransition: 'transitionend',
OTransition: 'oTransitionEnd otransitionend',
transition: 'transitionend',
};
for (var c in b)
if (void 0 !== a.style[c]) return { end: b[c] };
return !1;
}
(a.fn.emulateTransitionEnd = function(b) {
var c = !1,
d = this;
a(this).one('bsTransitionEnd', function() {
c = !0;
});
var e = function() {
c || a(d).trigger(a.support.transition.end);
};
return setTimeout(e, b), this;
}),
a(function() {
(a.support.transition = b()),
a.support.transition &&
(a.event.special.bsTransitionEnd = {
bindType: a.support.transition.end,
delegateType: a.support.transition.end,
handle: function(b) {
if (a(b.target).is(this))
return b.handleObj.handler.apply(this, arguments);
},
});
});
})(jQuery), +(function(a) {
'use strict';
function b(b) {
return this.each(function() {
var c = a(this),
e = c.data('bs.alert');
e || c.data('bs.alert', (e = new d(this))),
'string' === typeof b && e[b].call(c);
});
}
var c = '[data-dismiss="alert"]',
d = function(b) {
a(b).on('click', c, this.close);
};
(d.VERSION = '3.3.7'),
(d.TRANSITION_DURATION = 150),
(d.prototype.close = function(b) {
function c() {
g.detach().trigger('closed.bs.alert').remove();
}
var e = a(this),
f = e.attr('data-target');
f || ((f = e.attr('href')), (f = f && f.replace(/.*(?=#[^\s]*$)/, '')));
var g = a('#' === f ? [] : f);
b && b.preventDefault(),
g.length || (g = e.closest('.alert')),
g.trigger((b = a.Event('close.bs.alert'))),
b.isDefaultPrevented() ||
(g.removeClass('in'),
a.support.transition && g.hasClass('fade') ?
g
.one('bsTransitionEnd', c)
.emulateTransitionEnd(d.TRANSITION_DURATION) :
c());
});
var e = a.fn.alert;
(a.fn.alert = b),
(a.fn.alert.Constructor = d),
(a.fn.alert.noConflict = function() {
return (a.fn.alert = e), this;
}),
a(document).on('click.bs.alert.data-api', c, d.prototype.close);
})(jQuery), +(function(a) {
'use strict';
function b(b) {
return this.each(function() {
var d = a(this),
e = d.data('bs.button'),
f = 'object' === typeof b && b;
e || d.data('bs.button', (e = new c(this, f))),
'toggle' === b ? e.toggle() : b && e.setState(b);
});
}
var c = function(b, d) {
(this.$element = a(b)),
(this.options = a.extend({}, c.DEFAULTS, d)),
(this.isLoading = !1);
};
(c.VERSION = '3.3.7'),
(c.DEFAULTS = { loadingText: 'loading...' }),
(c.prototype.setState = function(b) {
var c = 'disabled',
d = this.$element,
e = d.is('input') ? 'val' : 'html',
f = d.data();
(b += 'Text'),
null === f.resetText && d.data('resetText', d[e]()),
setTimeout(
a.proxy(function() {
d[e](null === f[b] ? this.options[b] : f[b]),
'loadingText' === b ?
((this.isLoading = !0),
d.addClass(c).attr(c, c).prop(c, !0)) :
this.isLoading &&
((this.isLoading = !1),
d.removeClass(c).removeAttr(c).prop(c, !1));
}, this),
0
);
}),
(c.prototype.toggle = function() {
var a = !0,
b = this.$element.closest('[data-toggle="buttons"]');
if (b.length) {
var c = this.$element.find('input');
'radio' === c.prop('type') ?
(c.prop('checked') && (a = !1),
b.find('.active').removeClass('active'),
this.$element.addClass('active')) :
'checkbox' === c.prop('type') &&
(c.prop('checked') !== this.$element.hasClass('active') &&
(a = !1),
this.$element.toggleClass('active')),
c.prop('checked', this.$element.hasClass('active')),
a && c.trigger('change');
} else
this.$element.attr('aria-pressed', !this.$element.hasClass('active')),
this.$element.toggleClass('active');
});
var d = a.fn.button;
(a.fn.button = b),
(a.fn.button.Constructor = c),
(a.fn.button.noConflict = function() {
return (a.fn.button = d), this;
}),
a(document)
.on('click.bs.button.data-api', '[data-toggle^="button"]', function(
c
) {
var d = a(c.target).closest('.btn');
b.call(d, 'toggle'),
a(c.target).is('input[type="radio"], input[type="checkbox"]') ||
(c.preventDefault(),
d.is('input,button') ?
d.trigger('focus') :
d
.find('input:visible,button:visible')
.first()
.trigger('focus'));
})
.on(
'focus.bs.button.data-api blur.bs.button.data-api',
'[data-toggle^="button"]',
function(b) {
a(b.target)
.closest('.btn')
.toggleClass('focus', /^focus(in)?$/.test(b.type));
}
);
})(jQuery), +(function(a) {
'use strict';
function b(b) {
return this.each(function() {
var d = a(this),
e = d.data('bs.carousel'),
f = a.extend({}, c.DEFAULTS, d.data(), 'object' === typeof b && b),
g = 'string' === typeof b ? b : f.slide;
e || d.data('bs.carousel', (e = new c(this, f))),
'number' === typeof b ?
e.to(b) :
g ?
e[g]() :
f.interval && e.pause().cycle();
});
}
var c = function(b, c) {
(this.$element = a(b)),
(this.$indicators = this.$element.find('.carousel-indicators')),
(this.options = c),
(this.paused = null),
(this.sliding = null),
(this.interval = null),
(this.$active = null),
(this.$items = null),
this.options.keyboard &&
this.$element.on('keydown.bs.carousel', a.proxy(this.keydown, this)),
'hover' === this.options.pause &&
!('ontouchstart' in document.documentElement) &&
this.$element
.on('mouseenter.bs.carousel', a.proxy(this.pause, this))
.on('mouseleave.bs.carousel', a.proxy(this.cycle, this));
};
(c.VERSION = '3.3.7'),
(c.TRANSITION_DURATION = 600),
(c.DEFAULTS = { interval: 5e3, pause: 'hover', wrap: !0, keyboard: !0 }),
(c.prototype.keydown = function(a) {
if (!/input|textarea/i.test(a.target.tagName)) {
switch (a.which) {
case 37:
this.prev();
break;
case 39:
this.next();
break;
default:
return;
}
a.preventDefault();
}
}),
(c.prototype.cycle = function(b) {
return (
b || (this.paused = !1),
this.interval && clearInterval(this.interval),
this.options.interval &&
!this.paused &&
(this.interval = setInterval(
a.proxy(this.next, this),
this.options.interval
)),
this
);
}),
(c.prototype.getItemIndex = function(a) {
return (
(this.$items = a.parent().children('.item')),
this.$items.index(a || this.$active)
);
}),
(c.prototype.getItemForDirection = function(a, b) {
var c = this.getItemIndex(b),
d =
('prev' === a && 0 === c) ||
('next' === a && c === this.$items.length - 1);
if (d && !this.options.wrap) return b;
var e = 'prev' === a ? -1 : 1,
f = (c + e) % this.$items.length;
return this.$items.eq(f);
}),
(c.prototype.to = function(a) {
var b = this,
c = this.getItemIndex(
(this.$active = this.$element.find('.item.active'))
);
if (!(a > this.$items.length - 1 || a < 0))
return this.sliding ?
this.$element.one('slid.bs.carousel', function() {
b.to(a);
}) :
c === a ?
this.pause().cycle() :
this.slide(a > c ? 'next' : 'prev', this.$items.eq(a));
}),
(c.prototype.pause = function(b) {
return (
b || (this.paused = !0),
this.$element.find('.next, .prev').length &&
a.support.transition &&
(this.$element.trigger(a.support.transition.end), this.cycle(!0)),
(this.interval = clearInterval(this.interval)),
this
);
}),
(c.prototype.next = function() {
if (!this.sliding) return this.slide('next');
}),
(c.prototype.prev = function() {
if (!this.sliding) return this.slide('prev');
}),
(c.prototype.slide = function(b, d) {
var e = this.$element.find('.item.active'),
f = d || this.getItemForDirection(b, e),
g = this.interval,
h = 'next' === b ? 'left' : 'right',
i = this;
if (f.hasClass('active')) return (this.sliding = !1);
var j = f[0],
k = a.Event('slide.bs.carousel', { relatedTarget: j, direction: h });
if ((this.$element.trigger(k), !k.isDefaultPrevented())) {
if (
((this.sliding = !0), g && this.pause(), this.$indicators.length)
) {
this.$indicators.find('.active').removeClass('active');
var l = a(this.$indicators.children()[this.getItemIndex(f)]);
l && l.addClass('active');
}
var m = a.Event('slid.bs.carousel', {
relatedTarget: j,
direction: h,
});
return (
a.support.transition && this.$element.hasClass('slide') ?
(f.addClass(b),
f[0].offsetWidth,
e.addClass(h),
f.addClass(h),
e
.one('bsTransitionEnd', function() {
f.removeClass([b, h].join(' ')).addClass('active'),
e.removeClass(['active', h].join(' ')),
(i.sliding = !1),
setTimeout(function() {
i.$element.trigger(m);
}, 0);
})
.emulateTransitionEnd(c.TRANSITION_DURATION)) :
(e.removeClass('active'),
f.addClass('active'),
(this.sliding = !1),
this.$element.trigger(m)),
g && this.cycle(),
this
);
}
});
var d = a.fn.carousel;
(a.fn.carousel = b),
(a.fn.carousel.Constructor = c),
(a.fn.carousel.noConflict = function() {
return (a.fn.carousel = d), this;
});
var e = function(c) {
var d,
e = a(this),
f = a(
e.attr('data-target') ||
((d = e.attr('href')) && d.replace(/.*(?=#[^\s]+$)/, ''))
);
if (f.hasClass('carousel')) {
var g = a.extend({}, f.data(), e.data()),
h = e.attr('data-slide-to');
h && (g.interval = !1),
b.call(f, g),
h && f.data('bs.carousel').to(h),
c.preventDefault();
}
};
a(document)
.on('click.bs.carousel.data-api', '[data-slide]', e)
.on('click.bs.carousel.data-api', '[data-slide-to]', e),
a(window).on('load', function() {
a('[data-ride="carousel"]').each(function() {
var c = a(this);
b.call(c, c.data());
});
});
})(jQuery), +(function(a) {
'use strict';
function b(b) {
var c,
d =
b.attr('data-target') ||
((c = b.attr('href')) && c.replace(/.*(?=#[^\s]+$)/, ''));
return a(d);
}
function c(b) {
return this.each(function() {
var c = a(this),
e = c.data('bs.collapse'),
f = a.extend({}, d.DEFAULTS, c.data(), 'object' === typeof b && b);
!e && f.toggle && /show|hide/.test(b) && (f.toggle = !1),
e || c.data('bs.collapse', (e = new d(this, f))),
'string' === typeof b && e[b]();
});
}
var d = function(b, c) {
(this.$element = a(b)),
(this.options = a.extend({}, d.DEFAULTS, c)),
(this.$trigger = a(
'[data-toggle="collapse"][href="#' +
b.id +
'"],[data-toggle="collapse"][data-target="#' +
b.id +
'"]'
)),
(this.transitioning = null),
this.options.parent ?
(this.$parent = this.getParent()) :
this.addAriaAndCollapsedClass(this.$element, this.$trigger),
this.options.toggle && this.toggle();
};
(d.VERSION = '3.3.7'),
(d.TRANSITION_DURATION = 350),
(d.DEFAULTS = { toggle: !0 }),
(d.prototype.dimension = function() {
var a = this.$element.hasClass('width');
return a ? 'width' : 'height';
}),
(d.prototype.show = function() {
if (!this.transitioning && !this.$element.hasClass('in')) {
var b,
e =
this.$parent &&
this.$parent.children('.panel').children('.in, .collapsing');
if (!(
e &&
e.length &&
((b = e.data('bs.collapse')), b && b.transitioning)
)) {
var f = a.Event('show.bs.collapse');
if ((this.$element.trigger(f), !f.isDefaultPrevented())) {
e &&
e.length &&
(c.call(e, 'hide'), b || e.data('bs.collapse', null));
var g = this.dimension();
this.$element
.removeClass('collapse')
.addClass('collapsing')[g](0)
.attr('aria-expanded', !0),
this.$trigger
.removeClass('collapsed')
.attr('aria-expanded', !0),
(this.transitioning = 1);
var h = function() {
this.$element
.removeClass('collapsing')
.addClass('collapse in')[g](''),
(this.transitioning = 0),
this.$element.trigger('shown.bs.collapse');
};
if (!a.support.transition) return h.call(this);
var i = a.camelCase(['scroll', g].join('-'));
this.$element
.one('bsTransitionEnd', a.proxy(h, this))
.emulateTransitionEnd(d.TRANSITION_DURATION)[g](this.$element[0][i]);
}
}
}
}),
(d.prototype.hide = function() {
if (!this.transitioning && this.$element.hasClass('in')) {
var b = a.Event('hide.bs.collapse');
if ((this.$element.trigger(b), !b.isDefaultPrevented())) {
var c = this.dimension();
this.$element[c](this.$element[c]())[0].offsetHeight,
this.$element
.addClass('collapsing')
.removeClass('collapse in')
.attr('aria-expanded', !1),
this.$trigger.addClass('collapsed').attr('aria-expanded', !1),
(this.transitioning = 1);
var e = function() {
(this.transitioning = 0),
this.$element
.removeClass('collapsing')
.addClass('collapse')
.trigger('hidden.bs.collapse');
};
return a.support.transition ?
void this.$element[c](0)
.one('bsTransitionEnd', a.proxy(e, this))
.emulateTransitionEnd(d.TRANSITION_DURATION) :
e.call(this);
}
}
}),
(d.prototype.toggle = function() {
this[this.$element.hasClass('in') ? 'hide' : 'show']();
}),
(d.prototype.getParent = function() {
return a(this.options.parent)
.find(
'[data-toggle="collapse"][data-parent="' +
this.options.parent +
'"]'
)
.each(
a.proxy(function(c, d) {
var e = a(d);
this.addAriaAndCollapsedClass(b(e), e);
}, this)
)
.end();
}),
(d.prototype.addAriaAndCollapsedClass = function(a, b) {
var c = a.hasClass('in');
a.attr('aria-expanded', c),
b.toggleClass('collapsed', !c).attr('aria-expanded', c);
});
var e = a.fn.collapse;
(a.fn.collapse = c),
(a.fn.collapse.Constructor = d),
(a.fn.collapse.noConflict = function() {
return (a.fn.collapse = e), this;
}),
a(document).on(
'click.bs.collapse.data-api',
'[data-toggle="collapse"]',
function(d) {
var e = a(this);
e.attr('data-target') || d.preventDefault();
var f = b(e),
g = f.data('bs.collapse'),
h = g ? 'toggle' : e.data();
c.call(f, h);
}
);
})(jQuery), +(function(a) {
'use strict';
function b(b) {
var c = b.attr('data-target');
c ||
((c = b.attr('href')),
(c = c && /#[A-Za-z]/.test(c) && c.replace(/.*(?=#[^\s]*$)/, '')));
var d = c && a(c);
return d && d.length ? d : b.parent();
}
function c(c) {
(c && 3 === c.which) ||
(a(e).remove(),
a(f).each(function() {
var d = a(this),
e = b(d),
f = { relatedTarget: this };
e.hasClass('open') &&
((c &&
'click' === c.type &&
/input|textarea/i.test(c.target.tagName) &&
a.contains(e[0], c.target)) ||
(e.trigger((c = a.Event('hide.bs.dropdown', f))),
c.isDefaultPrevented() ||
(d.attr('aria-expanded', 'false'),
e
.removeClass('open')
.trigger(a.Event('hidden.bs.dropdown', f)))));
}));
}
function d(b) {
return this.each(function() {
var c = a(this),
d = c.data('bs.dropdown');
d || c.data('bs.dropdown', (d = new g(this))),
'string' === typeof b && d[b].call(c);
});
}
var e = '.dropdown-backdrop',
f = '[data-toggle="dropdown"]',
g = function(b) {
a(b).on('click.bs.dropdown', this.toggle);
};
(g.VERSION = '3.3.7'),
(g.prototype.toggle = function(d) {
var e = a(this);
if (!e.is('.disabled, :disabled')) {
var f = b(e),
g = f.hasClass('open');
if ((c(), !g)) {
'ontouchstart' in document.documentElement &&
!f.closest('.navbar-nav').length &&
a(document.createElement('div'))
.addClass('dropdown-backdrop')
.insertAfter(a(this))
.on('click', c);
var h = { relatedTarget: this };
if (
(f.trigger((d = a.Event('show.bs.dropdown', h))),
d.isDefaultPrevented())
)
return;
e.trigger('focus').attr('aria-expanded', 'true'),
f.toggleClass('open').trigger(a.Event('shown.bs.dropdown', h));
}
return !1;
}
}),
(g.prototype.keydown = function(c) {
if (
/(38|40|27|32)/.test(c.which) &&
!/input|textarea/i.test(c.target.tagName)
) {
var d = a(this);
if (
(c.preventDefault(),
c.stopPropagation(), !d.is('.disabled, :disabled'))
) {
var e = b(d),
g = e.hasClass('open');
if ((!g && 27 !== c.which) || (g && 27 === c.which))
return (
27 === c.which && e.find(f).trigger('focus'), d.trigger('click')
);
var h = ' li:not(.disabled):visible a',
i = e.find('.dropdown-menu' + h);
if (i.length) {
var j = i.index(c.target);
38 === c.which && j > 0 && j--,
40 === c.which && j < i.length - 1 && j++, ~j || (j = 0),
i.eq(j).trigger('focus');
}
}
}
});
var h = a.fn.dropdown;
(a.fn.dropdown = d),
(a.fn.dropdown.Constructor = g),
(a.fn.dropdown.noConflict = function() {
return (a.fn.dropdown = h), this;
}),
a(document)
.on('click.bs.dropdown.data-api', c)
.on('click.bs.dropdown.data-api', '.dropdown form', function(a) {
a.stopPropagation();
})
.on('click.bs.dropdown.data-api', f, g.prototype.toggle)
.on('keydown.bs.dropdown.data-api', f, g.prototype.keydown)
.on(
'keydown.bs.dropdown.data-api',
'.dropdown-menu',
g.prototype.keydown
);
})(jQuery), +(function(a) {
'use strict';
function b(b, d) {
return this.each(function() {
var e = a(this),
f = e.data('bs.modal'),
g = a.extend({}, c.DEFAULTS, e.data(), 'object' === typeof b && b);
f || e.data('bs.modal', (f = new c(this, g))),
'string' === typeof b ? f[b](d) : g.show && f.show(d);
});
}
var c = function(b, c) {
(this.options = c),
(this.$body = a(document.body)),
(this.$element = a(b)),
(this.$dialog = this.$element.find('.modal-dialog')),
(this.$backdrop = null),
(this.isShown = null),
(this.originalBodyPad = null),
(this.scrollbarWidth = 0),
(this.ignoreBackdropClick = !1),
this.options.remote &&
this.$element.find('.modal-content').load(
this.options.remote,
a.proxy(function() {
this.$element.trigger('loaded.bs.modal');
}, this)
);
};
(c.VERSION = '3.3.7'),
(c.TRANSITION_DURATION = 300),
(c.BACKDROP_TRANSITION_DURATION = 150),
(c.DEFAULTS = { backdrop: !0, keyboard: !0, show: !0 }),
(c.prototype.toggle = function(a) {
return this.isShown ? this.hide() : this.show(a);
}),
(c.prototype.show = function(b) {
var d = this,
e = a.Event('show.bs.modal', { relatedTarget: b });
this.$element.trigger(e),
this.isShown ||
e.isDefaultPrevented() ||
((this.isShown = !0),
this.checkScrollbar(),
this.setScrollbar(),
this.$body.addClass('modal-open'),
this.escape(),
this.resize(),
this.$element.on(
'click.dismiss.bs.modal',
'[data-dismiss="modal"]',
a.proxy(this.hide, this)
),
this.$dialog.on('mousedown.dismiss.bs.modal', function() {
d.$element.one('mouseup.dismiss.bs.modal', function(b) {
a(b.target).is(d.$element) && (d.ignoreBackdropClick = !0);
});
}),
this.backdrop(function() {
var e = a.support.transition && d.$element.hasClass('fade');
d.$element.parent().length || d.$element.appendTo(d.$body),
d.$element.show().scrollTop(0),
d.adjustDialog(),
e && d.$element[0].offsetWidth,
d.$element.addClass('in'),
d.enforceFocus();
var f = a.Event('shown.bs.modal', { relatedTarget: b });
e
?
d.$dialog
.one('bsTransitionEnd', function() {
d.$element.trigger('focus').trigger(f);
})
.emulateTransitionEnd(c.TRANSITION_DURATION) :
d.$element.trigger('focus').trigger(f);
}));
}),
(c.prototype.hide = function(b) {
b && b.preventDefault(),
(b = a.Event('hide.bs.modal')),
this.$element.trigger(b),
this.isShown &&
!b.isDefaultPrevented() &&
((this.isShown = !1),
this.escape(),
this.resize(),
a(document).off('focusin.bs.modal'),
this.$element
.removeClass('in')
.off('click.dismiss.bs.modal')
.off('mouseup.dismiss.bs.modal'),
this.$dialog.off('mousedown.dismiss.bs.modal'),
a.support.transition && this.$element.hasClass('fade') ?
this.$element
.one('bsTransitionEnd', a.proxy(this.hideModal, this))
.emulateTransitionEnd(c.TRANSITION_DURATION) :
this.hideModal());
}),
(c.prototype.enforceFocus = function() {
a(document)
.off('focusin.bs.modal')
.on(
'focusin.bs.modal',
a.proxy(function(a) {
document === a.target ||
this.$element[0] === a.target ||
this.$element.has(a.target).length ||
this.$element.trigger('focus');
}, this)
);
}),
(c.prototype.escape = function() {
this.isShown && this.options.keyboard ?
this.$element.on(
'keydown.dismiss.bs.modal',
a.proxy(function(a) {
27 === a.which && this.hide();
}, this)
) :
this.isShown || this.$element.off('keydown.dismiss.bs.modal');
}),
(c.prototype.resize = function() {
this.isShown ?
a(window).on('resize.bs.modal', a.proxy(this.handleUpdate, this)) :
a(window).off('resize.bs.modal');
}),
(c.prototype.hideModal = function() {
var a = this;
this.$element.hide(),
this.backdrop(function() {
a.$body.removeClass('modal-open'),
a.resetAdjustments(),
a.resetScrollbar(),
a.$element.trigger('hidden.bs.modal');
});
}),
(c.prototype.removeBackdrop = function() {
this.$backdrop && this.$backdrop.remove(), (this.$backdrop = null);
}),
(c.prototype.backdrop = function(b) {
var d = this,
e = this.$element.hasClass('fade') ? 'fade' : '';
if (this.isShown && this.options.backdrop) {
var f = a.support.transition && e;
if (
((this.$backdrop = a(document.createElement('div'))
.addClass('modal-backdrop ' + e)
.appendTo(this.$body)),
this.$element.on(
'click.dismiss.bs.modal',
a.proxy(function(a) {
return this.ignoreBackdropClick ?
void(this.ignoreBackdropClick = !1) :
void(
a.target === a.currentTarget &&
('static' === this.options.backdrop ?
this.$element[0].focus() :
this.hide())
);
}, this)
),
f && this.$backdrop[0].offsetWidth,
this.$backdrop.addClass('in'), !b)
)
return;
f
?
this.$backdrop
.one('bsTransitionEnd', b)
.emulateTransitionEnd(c.BACKDROP_TRANSITION_DURATION) :
b();
} else if (!this.isShown && this.$backdrop) {
this.$backdrop.removeClass('in');
var g = function() {
d.removeBackdrop(), b && b();
};
a.support.transition && this.$element.hasClass('fade') ?
this.$backdrop
.one('bsTransitionEnd', g)
.emulateTransitionEnd(c.BACKDROP_TRANSITION_DURATION) :
g();
} else b && b();
}),
(c.prototype.handleUpdate = function() {
this.adjustDialog();
}),
(c.prototype.adjustDialog = function() {
var a =
this.$element[0].scrollHeight > document.documentElement.clientHeight;
this.$element.css({
paddingLeft: !this.bodyIsOverflowing && a ? this.scrollbarWidth : '',
paddingRight: this.bodyIsOverflowing && !a ? this.scrollbarWidth : '',
});
}),
(c.prototype.resetAdjustments = function() {
this.$element.css({ paddingLeft: '', paddingRight: '' });
}),
(c.prototype.checkScrollbar = function() {
var a = window.innerWidth;
if (!a) {
var b = document.documentElement.getBoundingClientRect();
a = b.right - Math.abs(b.left);
}
(this.bodyIsOverflowing = document.body.clientWidth < a),
(this.scrollbarWidth = this.measureScrollbar());
}),
(c.prototype.setScrollbar = function() {
var a = parseInt(this.$body.css('padding-right') || 0, 10);
(this.originalBodyPad = document.body.style.paddingRight || ''),
this.bodyIsOverflowing &&
this.$body.css('padding-right', a + this.scrollbarWidth);
}),
(c.prototype.resetScrollbar = function() {
this.$body.css('padding-right', this.originalBodyPad);
}),
(c.prototype.measureScrollbar = function() {
var a = document.createElement('div');
(a.className = 'modal-scrollbar-measure'), this.$body.append(a);
var b = a.offsetWidth - a.clientWidth;
return this.$body[0].removeChild(a), b;
});
var d = a.fn.modal;
(a.fn.modal = b),
(a.fn.modal.Constructor = c),
(a.fn.modal.noConflict = function() {
return (a.fn.modal = d), this;
}),
a(document).on(
'click.bs.modal.data-api',
'[data-toggle="modal"]',
function(c) {
var d = a(this),
e = d.attr('href'),
f = a(
d.attr('data-target') || (e && e.replace(/.*(?=#[^\s]+$)/, ''))
),
g = f.data('bs.modal') ?
'toggle' :
a.extend({ remote: !/#/.test(e) && e }, f.data(), d.data());
d.is('a') && c.preventDefault(),
f.one('show.bs.modal', function(a) {
a.isDefaultPrevented() ||
f.one('hidden.bs.modal', function() {
d.is(':visible') && d.trigger('focus');
});
}),
b.call(f, g, this);
}
);
})(jQuery), +(function(a) {
'use strict';
function b(b) {
return this.each(function() {
var d = a(this),
e = d.data('bs.tooltip'),
f = 'object' === typeof b && b;
(!e && /destroy|hide/.test(b)) ||
(e || d.data('bs.tooltip', (e = new c(this, f))),
'string' === typeof b && e[b]());
});
}
var c = function(a, b) {
(this.type = null),
(this.options = null),
(this.enabled = null),
(this.timeout = null),
(this.hoverState = null),
(this.$element = null),
(this.inState = null),
this.init('tooltip', a, b);
};
(c.VERSION = '3.3.7'),
(c.TRANSITION_DURATION = 150),
(c.DEFAULTS = {
animation: !0,
placement: 'top',
selector: !1,
template: '<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',
trigger: 'hover focus',
title: '',
delay: 0,
html: !1,
container: !1,
viewport: { selector: 'body', padding: 0 },
}),
(c.prototype.init = function(b, c, d) {
if (
((this.enabled = !0),
(this.type = b),
(this.$element = a(c)),
(this.options = this.getOptions(d)),
(this.$viewport =
this.options.viewport &&
a(
a.isFunction(this.options.viewport) ?
this.options.viewport.call(this, this.$element) :
this.options.viewport.selector || this.options.viewport
)),
(this.inState = { click: !1, hover: !1, focus: !1 }),
this.$element[0] instanceof document.constructor &&
!this.options.selector)
)
throw new Error(
'`selector` option must be specified when initializing ' +
this.type +
' on the window.document object!'
);
for (var e = this.options.trigger.split(' '), f = e.length; f--;) {
var g = e[f];
if ('click' === g)
this.$element.on(
'click.' + this.type,
this.options.selector,
a.proxy(this.toggle, this)
);
else if ('manual' !== g) {
var h = 'hover' === g ? 'mouseenter' : 'focusin',
i = 'hover' === g ? 'mouseleave' : 'focusout';
this.$element.on(
h + '.' + this.type,
this.options.selector,
a.proxy(this.enter, this)
),
this.$element.on(
i + '.' + this.type,
this.options.selector,
a.proxy(this.leave, this)
);
}
}
this.options.selector ?
(this._options = a.extend({}, this.options, {
trigger: 'manual',
selector: '',
})) :
this.fixTitle();
}),
(c.prototype.getDefaults = function() {
return c.DEFAULTS;
}),
(c.prototype.getOptions = function(b) {
return (
(b = a.extend({}, this.getDefaults(), this.$element.data(), b)),
b.delay &&
'number' === typeof b.delay &&
(b.delay = { show: b.delay, hide: b.delay }),
b
);
}),
(c.prototype.getDelegateOptions = function() {
var b = {},
c = this.getDefaults();
return (
this._options &&
a.each(this._options, function(a, d) {
c[a] !== d && (b[a] = d);
}),
b
);
}),
(c.prototype.enter = function(b) {
var c =
b instanceof this.constructor ?
b :
a(b.currentTarget).data('bs.' + this.type);
return (
c ||
((c = new this.constructor(
b.currentTarget,
this.getDelegateOptions()
)),
a(b.currentTarget).data('bs.' + this.type, c)),
b instanceof a.Event &&
(c.inState['focusin' === b.type ? 'focus' : 'hover'] = !0),
c.tip().hasClass('in') || 'in' === c.hoverState ?
void(c.hoverState = 'in') :
(clearTimeout(c.timeout),
(c.hoverState = 'in'),
c.options.delay && c.options.delay.show ?
void(c.timeout = setTimeout(function() {
'in' === c.hoverState && c.show();
}, c.options.delay.show)) :
c.show())
);
}),
(c.prototype.isInStateTrue = function() {
for (var a in this.inState)
if (this.inState[a]) return !0;
return !1;
}),
(c.prototype.leave = function(b) {
var c =
b instanceof this.constructor ?
b :
a(b.currentTarget).data('bs.' + this.type);
if (
(c ||
((c = new this.constructor(
b.currentTarget,
this.getDelegateOptions()
)),
a(b.currentTarget).data('bs.' + this.type, c)),
b instanceof a.Event &&
(c.inState['focusout' === b.type ? 'focus' : 'hover'] = !1), !c.isInStateTrue())
)
return (
clearTimeout(c.timeout),
(c.hoverState = 'out'),
c.options.delay && c.options.delay.hide ?
void(c.timeout = setTimeout(function() {
'out' === c.hoverState && c.hide();
}, c.options.delay.hide)) :
c.hide()
);
}),
(c.prototype.show = function() {
var b = a.Event('show.bs.' + this.type);
if (this.hasContent() && this.enabled) {
this.$element.trigger(b);
var d = a.contains(
this.$element[0].ownerDocument.documentElement,
this.$element[0]
);
if (b.isDefaultPrevented() || !d) return;
var e = this,
f = this.tip(),
g = this.getUID(this.type);
this.setContent(),
f.attr('id', g),
this.$element.attr('aria-describedby', g),
this.options.animation && f.addClass('fade');
var h =
'function' === typeof this.options.placement ?
this.options.placement.call(this, f[0], this.$element[0]) :
this.options.placement,
i = /\s?auto?\s?/i,
j = i.test(h);
j && (h = h.replace(i, '') || 'top'),
f
.detach()
.css({ top: 0, left: 0, display: 'block' })
.addClass(h)
.data('bs.' + this.type, this),
this.options.container ?
f.appendTo(this.options.container) :
f.insertAfter(this.$element),
this.$element.trigger('inserted.bs.' + this.type);
var k = this.getPosition(),
l = f[0].offsetWidth,
m = f[0].offsetHeight;
if (j) {
var n = h,
o = this.getPosition(this.$viewport);
(h =
'bottom' === h && k.bottom + m > o.bottom ?
'top' :
'top' === h && k.top - m < o.top ?
'bottom' :
'right' === h && k.right + l > o.width ?
'left' :
'left' === h && k.left - l < o.left ?
'right' :
h),
f.removeClass(n).addClass(h);
}
var p = this.getCalculatedOffset(h, k, l, m);
this.applyPlacement(p, h);
var q = function() {
var a = e.hoverState;
e.$element.trigger('shown.bs.' + e.type),
(e.hoverState = null),
'out' === a && e.leave(e);
};
a.support.transition && this.$tip.hasClass('fade') ?
f
.one('bsTransitionEnd', q)
.emulateTransitionEnd(c.TRANSITION_DURATION) :
q();
}
}),
(c.prototype.applyPlacement = function(b, c) {
var d = this.tip(),
e = d[0].offsetWidth,
f = d[0].offsetHeight,
g = parseInt(d.css('margin-top'), 10),
h = parseInt(d.css('margin-left'), 10);
isNaN(g) && (g = 0),
isNaN(h) && (h = 0),
(b.top += g),
(b.left += h),
a.offset.setOffset(
d[0],
a.extend({
using: function(a) {
d.css({ top: Math.round(a.top), left: Math.round(a.left) });
},
},
b
),
0
),
d.addClass('in');
var i = d[0].offsetWidth,
j = d[0].offsetHeight;
'top' === c && j !== f && (b.top = b.top + f - j);
var k = this.getViewportAdjustedDelta(c, b, i, j);
k.left ? (b.left += k.left) : (b.top += k.top);
var l = /top|bottom/.test(c),
m = l ? 2 * k.left - e + i : 2 * k.top - f + j,
n = l ? 'offsetWidth' : 'offsetHeight';
d.offset(b), this.replaceArrow(m, d[0][n], l);
}),
(c.prototype.replaceArrow = function(a, b, c) {
this.arrow()
.css(c ? 'left' : 'top', 50 * (1 - a / b) + '%')
.css(c ? 'top' : 'left', '');
}),
(c.prototype.setContent = function() {
var a = this.tip(),
b = this.getTitle();
a.find('.tooltip-inner')[this.options.html ? 'html' : 'text'](b),
a.removeClass('fade in top bottom left right');
}),
(c.prototype.hide = function(b) {
function d() {
'in' !== e.hoverState && f.detach(),
e.$element &&
e.$element
.removeAttr('aria-describedby')
.trigger('hidden.bs.' + e.type),
b && b();
}
var e = this,
f = a(this.$tip),
g = a.Event('hide.bs.' + this.type);
if ((this.$element.trigger(g), !g.isDefaultPrevented()))
return (
f.removeClass('in'),
a.support.transition && f.hasClass('fade') ?
f
.one('bsTransitionEnd', d)
.emulateTransitionEnd(c.TRANSITION_DURATION) :
d(),
(this.hoverState = null),
this
);
}),
(c.prototype.fixTitle = function() {
var a = this.$element;
(a.attr('title') || 'string' !== typeof a.attr('data-original-title')) &&
a
.attr('data-original-title', a.attr('title') || '')
.attr('title', '');
}),
(c.prototype.hasContent = function() {
return this.getTitle();
}),
(c.prototype.getPosition = function(b) {
b = b || this.$element;
var c = b[0],
d = 'BODY' === c.tagName,
e = c.getBoundingClientRect();
null === e.width &&
(e = a.extend({}, e, {
width: e.right - e.left,
height: e.bottom - e.top,
}));
var f = window.SVGElement && c instanceof window.SVGElement,
g = d ? { top: 0, left: 0 } : f ? null : b.offset(),
h = {
scroll: d ?
document.documentElement.scrollTop || document.body.scrollTop : b.scrollTop(),
},
i = d ? { width: a(window).width(), height: a(window).height() } :
null;
return a.extend({}, e, h, i, g);
}),
(c.prototype.getCalculatedOffset = function(a, b, c, d) {
return 'bottom' === a ? { top: b.top + b.height, left: b.left + b.width / 2 - c / 2 } :
'top' === a ? { top: b.top - d, left: b.left + b.width / 2 - c / 2 } :
'left' === a ? { top: b.top + b.height / 2 - d / 2, left: b.left - c } : { top: b.top + b.height / 2 - d / 2, left: b.left + b.width };
}),
(c.prototype.getViewportAdjustedDelta = function(a, b, c, d) {
var e = { top: 0, left: 0 };
if (!this.$viewport) return e;
var f = (this.options.viewport && this.options.viewport.padding) || 0,
g = this.getPosition(this.$viewport);
if (/right|left/.test(a)) {
var h = b.top - f - g.scroll,
i = b.top + f - g.scroll + d;
h < g.top ?
(e.top = g.top - h) :
i > g.top + g.height && (e.top = g.top + g.height - i);
} else {
var j = b.left - f,
k = b.left + f + c;
j < g.left ?
(e.left = g.left - j) :
k > g.right && (e.left = g.left + g.width - k);
}
return e;
}),
(c.prototype.getTitle = function() {
var a,
b = this.$element,
c = this.options;
return (a =
b.attr('data-original-title') ||
('function' === typeof c.title ? c.title.call(b[0]) : c.title));
}),
(c.prototype.getUID = function(a) {
do a += ~~(1e6 * Math.random());
while (document.getElementById(a));
return a;
}),
(c.prototype.tip = function() {
if (!this.$tip &&
((this.$tip = a(this.options.template)), 1 !== this.$tip.length)
)
throw new Error(
this.type +
' `template` option must consist of exactly 1 top-level element!'
);
return this.$tip;
}),
(c.prototype.arrow = function() {
return (this.$arrow = this.$arrow || this.tip().find('.tooltip-arrow'));
}),
(c.prototype.enable = function() {
this.enabled = !0;
}),
(c.prototype.disable = function() {
this.enabled = !1;
}),
(c.prototype.toggleEnabled = function() {
this.enabled = !this.enabled;
}),
(c.prototype.toggle = function(b) {
var c = this;
b &&
((c = a(b.currentTarget).data('bs.' + this.type)),
c ||
((c = new this.constructor(
b.currentTarget,
this.getDelegateOptions()
)),
a(b.currentTarget).data('bs.' + this.type, c))),
b ?
((c.inState.click = !c.inState.click),
c.isInStateTrue() ? c.enter(c) : c.leave(c)) :
c.tip().hasClass('in') ?
c.leave(c) :
c.enter(c);
}),
(c.prototype.destroy = function() {
var a = this;
clearTimeout(this.timeout),
this.hide(function() {
a.$element.off('.' + a.type).removeData('bs.' + a.type),
a.$tip && a.$tip.detach(),
(a.$tip = null),
(a.$arrow = null),
(a.$viewport = null),
(a.$element = null);
});
});
var d = a.fn.tooltip;
(a.fn.tooltip = b),
(a.fn.tooltip.Constructor = c),
(a.fn.tooltip.noConflict = function() {
return (a.fn.tooltip = d), this;
});
})(jQuery), +(function(a) {
'use strict';
function b(b) {
return this.each(function() {
var d = a(this),
e = d.data('bs.popover'),
f = 'object' === typeof b && b;
(!e && /destroy|hide/.test(b)) ||
(e || d.data('bs.popover', (e = new c(this, f))),
'string' === typeof b && e[b]());
});
}
var c = function(a, b) {
this.init('popover', a, b);
};
if (!a.fn.tooltip) throw new Error('Popover requires tooltip.js');
(c.VERSION = '3.3.7'),
(c.DEFAULTS = a.extend({}, a.fn.tooltip.Constructor.DEFAULTS, {
placement: 'right',
trigger: 'click',
content: '',
template: '<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>',
})),
(c.prototype = a.extend({}, a.fn.tooltip.Constructor.prototype)),
(c.prototype.constructor = c),
(c.prototype.getDefaults = function() {
return c.DEFAULTS;
}),
(c.prototype.setContent = function() {
var a = this.tip(),
b = this.getTitle(),
c = this.getContent();
a.find('.popover-title')[this.options.html ? 'html' : 'text'](b),
a
.find('.popover-content')
.children()
.detach()
.end()[
this.options.html ?
'string' === typeof c ?
'html' :
'append' :
'text'
](c),
a.removeClass('fade top bottom left right in'),
a.find('.popover-title').html() || a.find('.popover-title').hide();
}),
(c.prototype.hasContent = function() {
return this.getTitle() || this.getContent();
}),
(c.prototype.getContent = function() {
var a = this.$element,
b = this.options;
return (
a.attr('data-content') ||
('function' === typeof b.content ? b.content.call(a[0]) : b.content)
);
}),
(c.prototype.arrow = function() {
return (this.$arrow = this.$arrow || this.tip().find('.arrow'));
});
var d = a.fn.popover;
(a.fn.popover = b),
(a.fn.popover.Constructor = c),
(a.fn.popover.noConflict = function() {
return (a.fn.popover = d), this;
});
})(jQuery), +(function(a) {
'use strict';
function b(c, d) {
(this.$body = a(document.body)),
(this.$scrollElement = a(a(c).is(document.body) ? window : c)),
(this.options = a.extend({}, b.DEFAULTS, d)),
(this.selector = (this.options.target || '') + ' .nav li > a'),
(this.offsets = []),
(this.targets = []),
(this.activeTarget = null),
(this.scrollHeight = 0),
this.$scrollElement.on(
'scroll.bs.scrollspy',
a.proxy(this.process, this)
),
this.refresh(),
this.process();
}
function c(c) {
return this.each(function() {
var d = a(this),
e = d.data('bs.scrollspy'),
f = 'object' === typeof c && c;
e || d.data('bs.scrollspy', (e = new b(this, f))),
'string' === typeof c && e[c]();
});
}
(b.VERSION = '3.3.7'),
(b.DEFAULTS = { offset: 10 }),
(b.prototype.getScrollHeight = function() {
return (
this.$scrollElement[0].scrollHeight ||
Math.max(
this.$body[0].scrollHeight,
document.documentElement.scrollHeight
)
);
}),
(b.prototype.refresh = function() {
var b = this,
c = 'offset',
d = 0;
(this.offsets = []),
(this.targets = []),
(this.scrollHeight = this.getScrollHeight()),
a.isWindow(this.$scrollElement[0]) ||
((c = 'position'), (d = this.$scrollElement.scrollTop())),
this.$body
.find(this.selector)
.map(function() {
var b = a(this),
e = b.data('target') || b.attr('href'),
f = /^#./.test(e) && a(e);
return (
(f && f.length && f.is(':visible') && [
[f[c]().top + d, e]
]) ||
null
);
})
.sort(function(a, b) {
return a[0] - b[0];
})
.each(function() {
b.offsets.push(this[0]), b.targets.push(this[1]);
});
}),
(b.prototype.process = function() {
var a,
b = this.$scrollElement.scrollTop() + this.options.offset,
c = this.getScrollHeight(),
d = this.options.offset + c - this.$scrollElement.height(),
e = this.offsets,
f = this.targets,
g = this.activeTarget;
if ((this.scrollHeight !== c && this.refresh(), b >= d))
return g !== (a = f[f.length - 1]) && this.activate(a);
if (g && b < e[0]) return (this.activeTarget = null), this.clear();
for (a = e.length; a--;)
g !== f[a] &&
b >= e[a] &&
(void 0 === e[a + 1] || b < e[a + 1]) &&
this.activate(f[a]);
}),
(b.prototype.activate = function(b) {
(this.activeTarget = b), this.clear();
var c =
this.selector +
'[data-target="' +
b +
'"],' +
this.selector +
'[href="' +
b +
'"]',
d = a(c).parents('li').addClass('active');
d.parent('.dropdown-menu').length &&
(d = d.closest('li.dropdown').addClass('active')),
d.trigger('activate.bs.scrollspy');
}),
(b.prototype.clear = function() {
a(this.selector)
.parentsUntil(this.options.target, '.active')
.removeClass('active');
});
var d = a.fn.scrollspy;
(a.fn.scrollspy = c),
(a.fn.scrollspy.Constructor = b),
(a.fn.scrollspy.noConflict = function() {
return (a.fn.scrollspy = d), this;
}),
a(window).on('load.bs.scrollspy.data-api', function() {
a('[data-spy="scroll"]').each(function() {
var b = a(this);
c.call(b, b.data());
});
});
})(jQuery), +(function(a) {
'use strict';
function b(b) {
return this.each(function() {
var d = a(this),
e = d.data('bs.tab');
e || d.data('bs.tab', (e = new c(this))),
'string' === typeof b && e[b]();
});
}
var c = function(b) {
this.element = a(b);
};
(c.VERSION = '3.3.7'),
(c.TRANSITION_DURATION = 150),
(c.prototype.show = function() {
var b = this.element,
c = b.closest('ul:not(.dropdown-menu)'),
d = b.data('target');
if (
(d ||
((d = b.attr('href')), (d = d && d.replace(/.*(?=#[^\s]*$)/, ''))), !b.parent('li').hasClass('active'))
) {
var e = c.find('.active:last a'),
f = a.Event('hide.bs.tab', { relatedTarget: b[0] }),
g = a.Event('show.bs.tab', { relatedTarget: e[0] });
if (
(e.trigger(f),
b.trigger(g), !g.isDefaultPrevented() && !f.isDefaultPrevented())
) {
var h = a(d);
this.activate(b.closest('li'), c),
this.activate(h, h.parent(), function() {
e.trigger({ type: 'hidden.bs.tab', relatedTarget: b[0] }),
b.trigger({ type: 'shown.bs.tab', relatedTarget: e[0] });
});
}
}
}),
(c.prototype.activate = function(b, d, e) {
function f() {
g
.removeClass('active')
.find('> .dropdown-menu > .active')
.removeClass('active')
.end()
.find('[data-toggle="tab"]')
.attr('aria-expanded', !1),
b
.addClass('active')
.find('[data-toggle="tab"]')
.attr('aria-expanded', !0),
h ? (b[0].offsetWidth, b.addClass('in')) : b.removeClass('fade'),
b.parent('.dropdown-menu').length &&
b
.closest('li.dropdown')
.addClass('active')
.end()
.find('[data-toggle="tab"]')
.attr('aria-expanded', !0),
e && e();
}
var g = d.find('> .active'),
h =
e &&
a.support.transition &&
((g.length && g.hasClass('fade')) || !!d.find('> .fade').length);
g.length && h ?
g
.one('bsTransitionEnd', f)
.emulateTransitionEnd(c.TRANSITION_DURATION) :
f(),
g.removeClass('in');
});
var d = a.fn.tab;
(a.fn.tab = b),
(a.fn.tab.Constructor = c),
(a.fn.tab.noConflict = function() {
return (a.fn.tab = d), this;
});
var e = function(c) {
c.preventDefault(), b.call(a(this), 'show');
};
a(document)
.on('click.bs.tab.data-api', '[data-toggle="tab"]', e)
.on('click.bs.tab.data-api', '[data-toggle="pill"]', e);
})(jQuery), +(function(a) {
'use strict';
function b(b) {
return this.each(function() {
var d = a(this),
e = d.data('bs.affix'),
f = 'object' === typeof b && b;
e || d.data('bs.affix', (e = new c(this, f))),
'string' === typeof b && e[b]();
});
}
var c = function(b, d) {
(this.options = a.extend({}, c.DEFAULTS, d)),
(this.$target = a(this.options.target)
.on('scroll.bs.affix.data-api', a.proxy(this.checkPosition, this))
.on(
'click.bs.affix.data-api',
a.proxy(this.checkPositionWithEventLoop, this)
)),
(this.$element = a(b)),
(this.affixed = null),
(this.unpin = null),
(this.pinnedOffset = null),
this.checkPosition();
};
(c.VERSION = '3.3.7'),
(c.RESET = 'affix affix-top affix-bottom'),
(c.DEFAULTS = { offset: 0, target: window }),
(c.prototype.getState = function(a, b, c, d) {
var e = this.$target.scrollTop(),
f = this.$element.offset(),
g = this.$target.height();
if (null !== c && 'top' === this.affixed) return e < c && 'top';
if ('bottom' === this.affixed)
return null !== c ?
!(e + this.unpin <= f.top) && 'bottom' :
!(e + g <= a - d) && 'bottom';
var h = null === this.affixed,
i = h ? e : f.top,
j = h ? g : b;
return null !== c && e <= c ?
'top' :
null !== d && i + j >= a - d && 'bottom';
}),
(c.prototype.getPinnedOffset = function() {
if (this.pinnedOffset) return this.pinnedOffset;
this.$element.removeClass(c.RESET).addClass('affix');
var a = this.$target.scrollTop(),
b = this.$element.offset();
return (this.pinnedOffset = b.top - a);
}),
(c.prototype.checkPositionWithEventLoop = function() {
setTimeout(a.proxy(this.checkPosition, this), 1);
}),
(c.prototype.checkPosition = function() {
if (this.$element.is(':visible')) {
var b = this.$element.height(),
d = this.options.offset,
e = d.top,
f = d.bottom,
g = Math.max(a(document).height(), a(document.body).height());
'object' !== typeof d && (f = e = d),
'function' === typeof e && (e = d.top(this.$element)),
'function' === typeof f && (f = d.bottom(this.$element));
var h = this.getState(g, b, e, f);
if (this.affixed !== h) {
null !== this.unpin && this.$element.css('top', '');
var i = 'affix' + (h ? '-' + h : ''),
j = a.Event(i + '.bs.affix');
if ((this.$element.trigger(j), j.isDefaultPrevented())) return;
(this.affixed = h),
(this.unpin = 'bottom' === h ? this.getPinnedOffset() : null),
this.$element
.removeClass(c.RESET)
.addClass(i)
.trigger(i.replace('affix', 'affixed') + '.bs.affix');
}
'bottom' === h && this.$element.offset({ top: g - b - f });
}
});
var d = a.fn.affix;
(a.fn.affix = b),
(a.fn.affix.Constructor = c),
(a.fn.affix.noConflict = function() {
return (a.fn.affix = d), this;
}),
a(window).on('load', function() {
a('[data-spy="affix"]').each(function() {
var c = a(this),
d = c.data();
(d.offset = d.offset || {}),
null !== d.offsetBottom && (d.offset.bottom = d.offsetBottom),
null !== d.offsetTop && (d.offset.top = d.offsetTop),
b.call(c, d);
});
});
})(jQuery);