jekyll-theme-clean-blog 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (76) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE.txt +21 -0
  3. data/README.md +24 -0
  4. data/_includes/footer.html +45 -0
  5. data/_includes/head.html +24 -0
  6. data/_includes/navbar.html +26 -0
  7. data/_includes/scripts.html +10 -0
  8. data/_layouts/default.html +19 -0
  9. data/_layouts/home.html +65 -0
  10. data/_layouts/page.html +34 -0
  11. data/_layouts/post.html +50 -0
  12. data/_sass/styles.scss +2 -0
  13. data/assets/mail.js +75 -0
  14. data/assets/main.scss +5 -0
  15. data/assets/scripts.js +3 -0
  16. data/assets/vendor/bootstrap/css/bootstrap-grid.css +1567 -0
  17. data/assets/vendor/bootstrap/css/bootstrap-grid.min.css +7 -0
  18. data/assets/vendor/bootstrap/css/bootstrap-reboot.css +342 -0
  19. data/assets/vendor/bootstrap/css/bootstrap-reboot.min.css +8 -0
  20. data/assets/vendor/bootstrap/css/bootstrap.css +8374 -0
  21. data/assets/vendor/bootstrap/css/bootstrap.min.css +7 -0
  22. data/assets/vendor/bootstrap/js/bootstrap.bundle.js +6287 -0
  23. data/assets/vendor/bootstrap/js/bootstrap.bundle.min.js +7 -0
  24. data/assets/vendor/bootstrap/js/bootstrap.js +3850 -0
  25. data/assets/vendor/bootstrap/js/bootstrap.min.js +7 -0
  26. data/assets/vendor/font-awesome/css/font-awesome.css +2337 -0
  27. data/assets/vendor/font-awesome/css/font-awesome.min.css +4 -0
  28. data/assets/vendor/font-awesome/fonts/FontAwesome.otf +0 -0
  29. data/assets/vendor/font-awesome/fonts/fontawesome-webfont.eot +0 -0
  30. data/assets/vendor/font-awesome/fonts/fontawesome-webfont.svg +2671 -0
  31. data/assets/vendor/font-awesome/fonts/fontawesome-webfont.ttf +0 -0
  32. data/assets/vendor/font-awesome/fonts/fontawesome-webfont.woff +0 -0
  33. data/assets/vendor/font-awesome/fonts/fontawesome-webfont.woff2 +0 -0
  34. data/assets/vendor/font-awesome/less/animated.less +34 -0
  35. data/assets/vendor/font-awesome/less/bordered-pulled.less +25 -0
  36. data/assets/vendor/font-awesome/less/core.less +12 -0
  37. data/assets/vendor/font-awesome/less/fixed-width.less +6 -0
  38. data/assets/vendor/font-awesome/less/font-awesome.less +18 -0
  39. data/assets/vendor/font-awesome/less/icons.less +789 -0
  40. data/assets/vendor/font-awesome/less/larger.less +13 -0
  41. data/assets/vendor/font-awesome/less/list.less +19 -0
  42. data/assets/vendor/font-awesome/less/mixins.less +60 -0
  43. data/assets/vendor/font-awesome/less/path.less +15 -0
  44. data/assets/vendor/font-awesome/less/rotated-flipped.less +20 -0
  45. data/assets/vendor/font-awesome/less/screen-reader.less +5 -0
  46. data/assets/vendor/font-awesome/less/stacked.less +20 -0
  47. data/assets/vendor/font-awesome/less/variables.less +800 -0
  48. data/assets/vendor/font-awesome/scss/_animated.scss +34 -0
  49. data/assets/vendor/font-awesome/scss/_bordered-pulled.scss +25 -0
  50. data/assets/vendor/font-awesome/scss/_core.scss +12 -0
  51. data/assets/vendor/font-awesome/scss/_fixed-width.scss +6 -0
  52. data/assets/vendor/font-awesome/scss/_icons.scss +789 -0
  53. data/assets/vendor/font-awesome/scss/_larger.scss +13 -0
  54. data/assets/vendor/font-awesome/scss/_list.scss +19 -0
  55. data/assets/vendor/font-awesome/scss/_mixins.scss +60 -0
  56. data/assets/vendor/font-awesome/scss/_path.scss +15 -0
  57. data/assets/vendor/font-awesome/scss/_rotated-flipped.scss +20 -0
  58. data/assets/vendor/font-awesome/scss/_screen-reader.scss +5 -0
  59. data/assets/vendor/font-awesome/scss/_stacked.scss +20 -0
  60. data/assets/vendor/font-awesome/scss/_variables.scss +800 -0
  61. data/assets/vendor/font-awesome/scss/font-awesome.scss +18 -0
  62. data/assets/vendor/jquery/jquery.js +10253 -0
  63. data/assets/vendor/jquery/jquery.min.js +4 -0
  64. data/assets/vendor/startbootstrap-clean-blog/js/clean-blog.min.js +6 -0
  65. data/assets/vendor/startbootstrap-clean-blog/js/jqBootstrapValidation.js +937 -0
  66. data/assets/vendor/startbootstrap-clean-blog/scss/_bootstrap-overrides.scss +27 -0
  67. data/assets/vendor/startbootstrap-clean-blog/scss/_contact.scss +60 -0
  68. data/assets/vendor/startbootstrap-clean-blog/scss/_footer.scss +13 -0
  69. data/assets/vendor/startbootstrap-clean-blog/scss/_global.scss +81 -0
  70. data/assets/vendor/startbootstrap-clean-blog/scss/_masthead.scss +82 -0
  71. data/assets/vendor/startbootstrap-clean-blog/scss/_mixins.scss +68 -0
  72. data/assets/vendor/startbootstrap-clean-blog/scss/_navbar.scss +100 -0
  73. data/assets/vendor/startbootstrap-clean-blog/scss/_post.scss +42 -0
  74. data/assets/vendor/startbootstrap-clean-blog/scss/_variables.scss +33 -0
  75. data/assets/vendor/startbootstrap-clean-blog/scss/clean-blog.scss +9 -0
  76. metadata +160 -0
@@ -0,0 +1,7 @@
1
+ /*!
2
+ * Bootstrap v4.0.0-beta.2 (https://getbootstrap.com)
3
+ * Copyright 2011-2017 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
4
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
5
+ */
6
+ var bootstrap=function(t,e){"use strict";function n(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function i(t){return t&&"[object Function]"==={}.toString.call(t)}function r(t,e){if(1!==t.nodeType)return[];var n=window.getComputedStyle(t,null);return e?n[e]:n}function o(t){return"HTML"===t.nodeName?t:t.parentNode||t.host}function s(t){if(!t||-1!==["HTML","BODY","#document"].indexOf(t.nodeName))return window.document.body;var e=r(t),n=e.overflow,i=e.overflowX;return/(auto|scroll)/.test(n+e.overflowY+i)?t:s(o(t))}function a(t){var e=t&&t.offsetParent,n=e&&e.nodeName;return n&&"BODY"!==n&&"HTML"!==n?-1!==["TD","TABLE"].indexOf(e.nodeName)&&"static"===r(e,"position")?a(e):e:window.document.documentElement}function l(t){var e=t.nodeName;return"BODY"!==e&&("HTML"===e||a(t.firstElementChild)===t)}function c(t){return null!==t.parentNode?c(t.parentNode):t}function f(t,e){if(!(t&&t.nodeType&&e&&e.nodeType))return window.document.documentElement;var n=t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_FOLLOWING,i=n?t:e,r=n?e:t,o=document.createRange();o.setStart(i,0),o.setEnd(r,0);var s=o.commonAncestorContainer;if(t!==s&&e!==s||i.contains(r))return l(s)?s:a(s);var h=c(t);return h.host?f(h.host,e):f(t,c(e).host)}function h(t){var e="top"===(arguments.length>1&&void 0!==arguments[1]?arguments[1]:"top")?"scrollTop":"scrollLeft",n=t.nodeName;if("BODY"===n||"HTML"===n){var i=window.document.documentElement;return(window.document.scrollingElement||i)[e]}return t[e]}function u(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=h(e,"top"),r=h(e,"left"),o=n?-1:1;return t.top+=i*o,t.bottom+=i*o,t.left+=r*o,t.right+=r*o,t}function d(t,e){var n="x"===e?"Left":"Top",i="Left"===n?"Right":"Bottom";return+t["border"+n+"Width"].split("px")[0]+ +t["border"+i+"Width"].split("px")[0]}function p(t,e,n,i){return Math.max(e["offset"+t],e["scroll"+t],n["client"+t],n["offset"+t],n["scroll"+t],lt()?n["offset"+t]+i["margin"+("Height"===t?"Top":"Left")]+i["margin"+("Height"===t?"Bottom":"Right")]:0)}function g(){var t=window.document.body,e=window.document.documentElement,n=lt()&&window.getComputedStyle(e);return{height:p("Height",t,e,n),width:p("Width",t,e,n)}}function m(t){return ut({},t,{right:t.left+t.width,bottom:t.top+t.height})}function _(t){var e={};if(lt())try{e=t.getBoundingClientRect();var n=h(t,"top"),i=h(t,"left");e.top+=n,e.left+=i,e.bottom+=n,e.right+=i}catch(t){}else e=t.getBoundingClientRect();var o={left:e.left,top:e.top,width:e.right-e.left,height:e.bottom-e.top},s="HTML"===t.nodeName?g():{},a=s.width||t.clientWidth||o.right-o.left,l=s.height||t.clientHeight||o.bottom-o.top,c=t.offsetWidth-a,f=t.offsetHeight-l;if(c||f){var u=r(t);c-=d(u,"x"),f-=d(u,"y"),o.width-=c,o.height-=f}return m(o)}function v(t,e){var n=lt(),i="HTML"===e.nodeName,o=_(t),a=_(e),l=s(t),c=r(e),f=+c.borderTopWidth.split("px")[0],h=+c.borderLeftWidth.split("px")[0],d=m({top:o.top-a.top-f,left:o.left-a.left-h,width:o.width,height:o.height});if(d.marginTop=0,d.marginLeft=0,!n&&i){var p=+c.marginTop.split("px")[0],g=+c.marginLeft.split("px")[0];d.top-=f-p,d.bottom-=f-p,d.left-=h-g,d.right-=h-g,d.marginTop=p,d.marginLeft=g}return(n?e.contains(l):e===l&&"BODY"!==l.nodeName)&&(d=u(d,e)),d}function E(t){var e=window.document.documentElement,n=v(t,e),i=Math.max(e.clientWidth,window.innerWidth||0),r=Math.max(e.clientHeight,window.innerHeight||0),o=h(e),s=h(e,"left");return m({top:o-n.top+n.marginTop,left:s-n.left+n.marginLeft,width:i,height:r})}function T(t){var e=t.nodeName;return"BODY"!==e&&"HTML"!==e&&("fixed"===r(t,"position")||T(o(t)))}function b(t,e,n,i){var r={top:0,left:0},a=f(t,e);if("viewport"===i)r=E(a);else{var l=void 0;"scrollParent"===i?"BODY"===(l=s(o(t))).nodeName&&(l=window.document.documentElement):l="window"===i?window.document.documentElement:i;var c=v(l,a);if("HTML"!==l.nodeName||T(a))r=c;else{var h=g(),u=h.height,d=h.width;r.top+=c.top-c.marginTop,r.bottom=u+c.top,r.left+=c.left-c.marginLeft,r.right=d+c.left}}return r.left+=n,r.top+=n,r.right-=n,r.bottom-=n,r}function C(t){return t.width*t.height}function A(t,e,n,i,r){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0;if(-1===t.indexOf("auto"))return t;var s=b(n,i,o,r),a={top:{width:s.width,height:e.top-s.top},right:{width:s.right-e.right,height:s.height},bottom:{width:s.width,height:s.bottom-e.bottom},left:{width:e.left-s.left,height:s.height}},l=Object.keys(a).map(function(t){return ut({key:t},a[t],{area:C(a[t])})}).sort(function(t,e){return e.area-t.area}),c=l.filter(function(t){var e=t.width,i=t.height;return e>=n.clientWidth&&i>=n.clientHeight}),f=c.length>0?c[0].key:l[0].key,h=t.split("-")[1];return f+(h?"-"+h:"")}function I(t,e,n){return v(n,f(e,n))}function O(t){var e=window.getComputedStyle(t),n=parseFloat(e.marginTop)+parseFloat(e.marginBottom),i=parseFloat(e.marginLeft)+parseFloat(e.marginRight);return{width:t.offsetWidth+i,height:t.offsetHeight+n}}function y(t){var e={left:"right",right:"left",bottom:"top",top:"bottom"};return t.replace(/left|right|bottom|top/g,function(t){return e[t]})}function D(t,e,n){n=n.split("-")[0];var i=O(t),r={width:i.width,height:i.height},o=-1!==["right","left"].indexOf(n),s=o?"top":"left",a=o?"left":"top",l=o?"height":"width",c=o?"width":"height";return r[s]=e[s]+e[l]/2-i[l]/2,r[a]=n===a?e[a]-i[c]:e[y(a)],r}function S(t,e){return Array.prototype.find?t.find(e):t.filter(e)[0]}function w(t,e,n){if(Array.prototype.findIndex)return t.findIndex(function(t){return t[e]===n});var i=S(t,function(t){return t[e]===n});return t.indexOf(i)}function N(t,e,n){return(void 0===n?t:t.slice(0,w(t,"name",n))).forEach(function(t){t.function&&console.warn("`modifier.function` is deprecated, use `modifier.fn`!");var n=t.function||t.fn;t.enabled&&i(n)&&(e.offsets.popper=m(e.offsets.popper),e.offsets.reference=m(e.offsets.reference),e=n(e,t))}),e}function L(){if(!this.state.isDestroyed){var t={instance:this,styles:{},arrowStyles:{},attributes:{},flipped:!1,offsets:{}};t.offsets.reference=I(this.state,this.popper,this.reference),t.placement=A(this.options.placement,t.offsets.reference,this.popper,this.reference,this.options.modifiers.flip.boundariesElement,this.options.modifiers.flip.padding),t.originalPlacement=t.placement,t.offsets.popper=D(this.popper,t.offsets.reference,t.placement),t.offsets.popper.position="absolute",t=N(this.modifiers,t),this.state.isCreated?this.options.onUpdate(t):(this.state.isCreated=!0,this.options.onCreate(t))}}function P(t,e){return t.some(function(t){var n=t.name;return t.enabled&&n===e})}function R(t){for(var e=[!1,"ms","Webkit","Moz","O"],n=t.charAt(0).toUpperCase()+t.slice(1),i=0;i<e.length-1;i++){var r=e[i],o=r?""+r+n:t;if("undefined"!=typeof window.document.body.style[o])return o}return null}function H(){return this.state.isDestroyed=!0,P(this.modifiers,"applyStyle")&&(this.popper.removeAttribute("x-placement"),this.popper.style.left="",this.popper.style.position="",this.popper.style.top="",this.popper.style[R("transform")]=""),this.disableEventListeners(),this.options.removeOnDestroy&&this.popper.parentNode.removeChild(this.popper),this}function k(t,e,n,i){var r="BODY"===t.nodeName,o=r?window:t;o.addEventListener(e,n,{passive:!0}),r||k(s(o.parentNode),e,n,i),i.push(o)}function W(t,e,n,i){n.updateBound=i,window.addEventListener("resize",n.updateBound,{passive:!0});var r=s(t);return k(r,"scroll",n.updateBound,n.scrollParents),n.scrollElement=r,n.eventsEnabled=!0,n}function x(){this.state.eventsEnabled||(this.state=W(this.reference,this.options,this.state,this.scheduleUpdate))}function M(t,e){return window.removeEventListener("resize",e.updateBound),e.scrollParents.forEach(function(t){t.removeEventListener("scroll",e.updateBound)}),e.updateBound=null,e.scrollParents=[],e.scrollElement=null,e.eventsEnabled=!1,e}function U(){this.state.eventsEnabled&&(window.cancelAnimationFrame(this.scheduleUpdate),this.state=M(this.reference,this.state))}function V(t){return""!==t&&!isNaN(parseFloat(t))&&isFinite(t)}function F(t,e){Object.keys(e).forEach(function(n){var i="";-1!==["width","height","top","right","bottom","left"].indexOf(n)&&V(e[n])&&(i="px"),t.style[n]=e[n]+i})}function j(t,e){Object.keys(e).forEach(function(n){!1!==e[n]?t.setAttribute(n,e[n]):t.removeAttribute(n)})}function B(t,e,n){var i=S(t,function(t){return t.name===e}),r=!!i&&t.some(function(t){return t.name===n&&t.enabled&&t.order<i.order});if(!r){var o="`"+e+"`",s="`"+n+"`";console.warn(s+" modifier is required by "+o+" modifier in order to work, be sure to include it before "+o+"!")}return r}function G(t){return"end"===t?"start":"start"===t?"end":t}function K(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=pt.indexOf(t),i=pt.slice(n+1).concat(pt.slice(0,n));return e?i.reverse():i}function Q(t,e,n,i){var r=t.match(/((?:\-|\+)?\d*\.?\d*)(.*)/),o=+r[1],s=r[2];if(!o)return t;if(0===s.indexOf("%")){var a=void 0;switch(s){case"%p":a=n;break;case"%":case"%r":default:a=i}return m(a)[e]/100*o}if("vh"===s||"vw"===s){return("vh"===s?Math.max(document.documentElement.clientHeight,window.innerHeight||0):Math.max(document.documentElement.clientWidth,window.innerWidth||0))/100*o}return o}function Y(t,e,n,i){var r=[0,0],o=-1!==["right","left"].indexOf(i),s=t.split(/(\+|\-)/).map(function(t){return t.trim()}),a=s.indexOf(S(s,function(t){return-1!==t.search(/,|\s/)}));s[a]&&-1===s[a].indexOf(",")&&console.warn("Offsets separated by white space(s) are deprecated, use a comma (,) instead.");var l=/\s*,\s*|\s+/,c=-1!==a?[s.slice(0,a).concat([s[a].split(l)[0]]),[s[a].split(l)[1]].concat(s.slice(a+1))]:[s];return(c=c.map(function(t,i){var r=(1===i?!o:o)?"height":"width",s=!1;return t.reduce(function(t,e){return""===t[t.length-1]&&-1!==["+","-"].indexOf(e)?(t[t.length-1]=e,s=!0,t):s?(t[t.length-1]+=e,s=!1,t):t.concat(e)},[]).map(function(t){return Q(t,r,e,n)})})).forEach(function(t,e){t.forEach(function(n,i){V(n)&&(r[e]+=n*("-"===t[i-1]?-1:1))})}),r}e=e&&e.hasOwnProperty("default")?e.default:e;for(var X=function(){function t(t){return{}.toString.call(t).match(/\s([a-zA-Z]+)/)[1].toLowerCase()}function n(){return{bindType:o.end,delegateType:o.end,handle:function(t){if(e(t.target).is(this))return t.handleObj.handler.apply(this,arguments)}}}function i(){if(window.QUnit)return!1;var t=document.createElement("bootstrap");for(var e in s)if("undefined"!=typeof t.style[e])return{end:s[e]};return!1}function r(t){var n=this,i=!1;return e(this).one(a.TRANSITION_END,function(){i=!0}),setTimeout(function(){i||a.triggerTransitionEnd(n)},t),this}var o=!1,s={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"},a={TRANSITION_END:"bsTransitionEnd",getUID:function(t){do{t+=~~(1e6*Math.random())}while(document.getElementById(t));return t},getSelectorFromElement:function(t){var n=t.getAttribute("data-target");n&&"#"!==n||(n=t.getAttribute("href")||"");try{return e(document).find(n).length>0?n:null}catch(t){return null}},reflow:function(t){return t.offsetHeight},triggerTransitionEnd:function(t){e(t).trigger(o.end)},supportsTransitionEnd:function(){return Boolean(o)},isElement:function(t){return(t[0]||t).nodeType},typeCheckConfig:function(e,n,i){for(var r in i)if(Object.prototype.hasOwnProperty.call(i,r)){var o=i[r],s=n[r],l=s&&a.isElement(s)?"element":t(s);if(!new RegExp(o).test(l))throw new Error(e.toUpperCase()+': Option "'+r+'" provided type "'+l+'" but expected type "'+o+'".')}}};return o=i(),e.fn.emulateTransitionEnd=r,a.supportsTransitionEnd()&&(e.event.special[a.TRANSITION_END]=n()),a}(),q=function(t,e,i){return e&&n(t.prototype,e),i&&n(t,i),t},z=function(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e},Z=function(){var t="alert",n=e.fn[t],i={CLOSE:"close.bs.alert",CLOSED:"closed.bs.alert",CLICK_DATA_API:"click.bs.alert.data-api"},r={ALERT:"alert",FADE:"fade",SHOW:"show"},o=function(){function t(t){this._element=t}var n=t.prototype;return n.close=function(t){t=t||this._element;var e=this._getRootElement(t);this._triggerCloseEvent(e).isDefaultPrevented()||this._removeElement(e)},n.dispose=function(){e.removeData(this._element,"bs.alert"),this._element=null},n._getRootElement=function(t){var n=X.getSelectorFromElement(t),i=!1;return n&&(i=e(n)[0]),i||(i=e(t).closest("."+r.ALERT)[0]),i},n._triggerCloseEvent=function(t){var n=e.Event(i.CLOSE);return e(t).trigger(n),n},n._removeElement=function(t){var n=this;e(t).removeClass(r.SHOW),X.supportsTransitionEnd()&&e(t).hasClass(r.FADE)?e(t).one(X.TRANSITION_END,function(e){return n._destroyElement(t,e)}).emulateTransitionEnd(150):this._destroyElement(t)},n._destroyElement=function(t){e(t).detach().trigger(i.CLOSED).remove()},t._jQueryInterface=function(n){return this.each(function(){var i=e(this),r=i.data("bs.alert");r||(r=new t(this),i.data("bs.alert",r)),"close"===n&&r[n](this)})},t._handleDismiss=function(t){return function(e){e&&e.preventDefault(),t.close(this)}},q(t,null,[{key:"VERSION",get:function(){return"4.0.0-beta.2"}}]),t}();return e(document).on(i.CLICK_DATA_API,{DISMISS:'[data-dismiss="alert"]'}.DISMISS,o._handleDismiss(new o)),e.fn[t]=o._jQueryInterface,e.fn[t].Constructor=o,e.fn[t].noConflict=function(){return e.fn[t]=n,o._jQueryInterface},o}(),J=function(){var t="button",n=e.fn[t],i={ACTIVE:"active",BUTTON:"btn",FOCUS:"focus"},r={DATA_TOGGLE_CARROT:'[data-toggle^="button"]',DATA_TOGGLE:'[data-toggle="buttons"]',INPUT:"input",ACTIVE:".active",BUTTON:".btn"},o={CLICK_DATA_API:"click.bs.button.data-api",FOCUS_BLUR_DATA_API:"focus.bs.button.data-api blur.bs.button.data-api"},s=function(){function t(t){this._element=t}var n=t.prototype;return n.toggle=function(){var t=!0,n=!0,o=e(this._element).closest(r.DATA_TOGGLE)[0];if(o){var s=e(this._element).find(r.INPUT)[0];if(s){if("radio"===s.type)if(s.checked&&e(this._element).hasClass(i.ACTIVE))t=!1;else{var a=e(o).find(r.ACTIVE)[0];a&&e(a).removeClass(i.ACTIVE)}if(t){if(s.hasAttribute("disabled")||o.hasAttribute("disabled")||s.classList.contains("disabled")||o.classList.contains("disabled"))return;s.checked=!e(this._element).hasClass(i.ACTIVE),e(s).trigger("change")}s.focus(),n=!1}}n&&this._element.setAttribute("aria-pressed",!e(this._element).hasClass(i.ACTIVE)),t&&e(this._element).toggleClass(i.ACTIVE)},n.dispose=function(){e.removeData(this._element,"bs.button"),this._element=null},t._jQueryInterface=function(n){return this.each(function(){var i=e(this).data("bs.button");i||(i=new t(this),e(this).data("bs.button",i)),"toggle"===n&&i[n]()})},q(t,null,[{key:"VERSION",get:function(){return"4.0.0-beta.2"}}]),t}();return e(document).on(o.CLICK_DATA_API,r.DATA_TOGGLE_CARROT,function(t){t.preventDefault();var n=t.target;e(n).hasClass(i.BUTTON)||(n=e(n).closest(r.BUTTON)),s._jQueryInterface.call(e(n),"toggle")}).on(o.FOCUS_BLUR_DATA_API,r.DATA_TOGGLE_CARROT,function(t){var n=e(t.target).closest(r.BUTTON)[0];e(n).toggleClass(i.FOCUS,/^focus(in)?$/.test(t.type))}),e.fn[t]=s._jQueryInterface,e.fn[t].Constructor=s,e.fn[t].noConflict=function(){return e.fn[t]=n,s._jQueryInterface},s}(),$=function(){var t="carousel",n="bs.carousel",i="."+n,r=e.fn[t],o={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0},s={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean"},a={NEXT:"next",PREV:"prev",LEFT:"left",RIGHT:"right"},l={SLIDE:"slide"+i,SLID:"slid"+i,KEYDOWN:"keydown"+i,MOUSEENTER:"mouseenter"+i,MOUSELEAVE:"mouseleave"+i,TOUCHEND:"touchend"+i,LOAD_DATA_API:"load.bs.carousel.data-api",CLICK_DATA_API:"click.bs.carousel.data-api"},c={CAROUSEL:"carousel",ACTIVE:"active",SLIDE:"slide",RIGHT:"carousel-item-right",LEFT:"carousel-item-left",NEXT:"carousel-item-next",PREV:"carousel-item-prev",ITEM:"carousel-item"},f={ACTIVE:".active",ACTIVE_ITEM:".active.carousel-item",ITEM:".carousel-item",NEXT_PREV:".carousel-item-next, .carousel-item-prev",INDICATORS:".carousel-indicators",DATA_SLIDE:"[data-slide], [data-slide-to]",DATA_RIDE:'[data-ride="carousel"]'},h=function(){function r(t,n){this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this._config=this._getConfig(n),this._element=e(t)[0],this._indicatorsElement=e(this._element).find(f.INDICATORS)[0],this._addEventListeners()}var h=r.prototype;return h.next=function(){this._isSliding||this._slide(a.NEXT)},h.nextWhenVisible=function(){!document.hidden&&e(this._element).is(":visible")&&"hidden"!==e(this._element).css("visibility")&&this.next()},h.prev=function(){this._isSliding||this._slide(a.PREV)},h.pause=function(t){t||(this._isPaused=!0),e(this._element).find(f.NEXT_PREV)[0]&&X.supportsTransitionEnd()&&(X.triggerTransitionEnd(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null},h.cycle=function(t){t||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config.interval&&!this._isPaused&&(this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))},h.to=function(t){var n=this;this._activeElement=e(this._element).find(f.ACTIVE_ITEM)[0];var i=this._getItemIndex(this._activeElement);if(!(t>this._items.length-1||t<0))if(this._isSliding)e(this._element).one(l.SLID,function(){return n.to(t)});else{if(i===t)return this.pause(),void this.cycle();var r=t>i?a.NEXT:a.PREV;this._slide(r,this._items[t])}},h.dispose=function(){e(this._element).off(i),e.removeData(this._element,n),this._items=null,this._config=null,this._element=null,this._interval=null,this._isPaused=null,this._isSliding=null,this._activeElement=null,this._indicatorsElement=null},h._getConfig=function(n){return n=e.extend({},o,n),X.typeCheckConfig(t,n,s),n},h._addEventListeners=function(){var t=this;this._config.keyboard&&e(this._element).on(l.KEYDOWN,function(e){return t._keydown(e)}),"hover"===this._config.pause&&(e(this._element).on(l.MOUSEENTER,function(e){return t.pause(e)}).on(l.MOUSELEAVE,function(e){return t.cycle(e)}),"ontouchstart"in document.documentElement&&e(this._element).on(l.TOUCHEND,function(){t.pause(),t.touchTimeout&&clearTimeout(t.touchTimeout),t.touchTimeout=setTimeout(function(e){return t.cycle(e)},500+t._config.interval)}))},h._keydown=function(t){if(!/input|textarea/i.test(t.target.tagName))switch(t.which){case 37:t.preventDefault(),this.prev();break;case 39:t.preventDefault(),this.next();break;default:return}},h._getItemIndex=function(t){return this._items=e.makeArray(e(t).parent().find(f.ITEM)),this._items.indexOf(t)},h._getItemByDirection=function(t,e){var n=t===a.NEXT,i=t===a.PREV,r=this._getItemIndex(e),o=this._items.length-1;if((i&&0===r||n&&r===o)&&!this._config.wrap)return e;var s=(r+(t===a.PREV?-1:1))%this._items.length;return-1===s?this._items[this._items.length-1]:this._items[s]},h._triggerSlideEvent=function(t,n){var i=this._getItemIndex(t),r=this._getItemIndex(e(this._element).find(f.ACTIVE_ITEM)[0]),o=e.Event(l.SLIDE,{relatedTarget:t,direction:n,from:r,to:i});return e(this._element).trigger(o),o},h._setActiveIndicatorElement=function(t){if(this._indicatorsElement){e(this._indicatorsElement).find(f.ACTIVE).removeClass(c.ACTIVE);var n=this._indicatorsElement.children[this._getItemIndex(t)];n&&e(n).addClass(c.ACTIVE)}},h._slide=function(t,n){var i,r,o,s=this,h=e(this._element).find(f.ACTIVE_ITEM)[0],u=this._getItemIndex(h),d=n||h&&this._getItemByDirection(t,h),p=this._getItemIndex(d),g=Boolean(this._interval);if(t===a.NEXT?(i=c.LEFT,r=c.NEXT,o=a.LEFT):(i=c.RIGHT,r=c.PREV,o=a.RIGHT),d&&e(d).hasClass(c.ACTIVE))this._isSliding=!1;else if(!this._triggerSlideEvent(d,o).isDefaultPrevented()&&h&&d){this._isSliding=!0,g&&this.pause(),this._setActiveIndicatorElement(d);var m=e.Event(l.SLID,{relatedTarget:d,direction:o,from:u,to:p});X.supportsTransitionEnd()&&e(this._element).hasClass(c.SLIDE)?(e(d).addClass(r),X.reflow(d),e(h).addClass(i),e(d).addClass(i),e(h).one(X.TRANSITION_END,function(){e(d).removeClass(i+" "+r).addClass(c.ACTIVE),e(h).removeClass(c.ACTIVE+" "+r+" "+i),s._isSliding=!1,setTimeout(function(){return e(s._element).trigger(m)},0)}).emulateTransitionEnd(600)):(e(h).removeClass(c.ACTIVE),e(d).addClass(c.ACTIVE),this._isSliding=!1,e(this._element).trigger(m)),g&&this.cycle()}},r._jQueryInterface=function(t){return this.each(function(){var i=e(this).data(n),s=e.extend({},o,e(this).data());"object"==typeof t&&e.extend(s,t);var a="string"==typeof t?t:s.slide;if(i||(i=new r(this,s),e(this).data(n,i)),"number"==typeof t)i.to(t);else if("string"==typeof a){if("undefined"==typeof i[a])throw new Error('No method named "'+a+'"');i[a]()}else s.interval&&(i.pause(),i.cycle())})},r._dataApiClickHandler=function(t){var i=X.getSelectorFromElement(this);if(i){var o=e(i)[0];if(o&&e(o).hasClass(c.CAROUSEL)){var s=e.extend({},e(o).data(),e(this).data()),a=this.getAttribute("data-slide-to");a&&(s.interval=!1),r._jQueryInterface.call(e(o),s),a&&e(o).data(n).to(a),t.preventDefault()}}},q(r,null,[{key:"VERSION",get:function(){return"4.0.0-beta.2"}},{key:"Default",get:function(){return o}}]),r}();return e(document).on(l.CLICK_DATA_API,f.DATA_SLIDE,h._dataApiClickHandler),e(window).on(l.LOAD_DATA_API,function(){e(f.DATA_RIDE).each(function(){var t=e(this);h._jQueryInterface.call(t,t.data())})}),e.fn[t]=h._jQueryInterface,e.fn[t].Constructor=h,e.fn[t].noConflict=function(){return e.fn[t]=r,h._jQueryInterface},h}(),tt=function(){var t="collapse",n="bs.collapse",i=e.fn[t],r={toggle:!0,parent:""},o={toggle:"boolean",parent:"(string|element)"},s={SHOW:"show.bs.collapse",SHOWN:"shown.bs.collapse",HIDE:"hide.bs.collapse",HIDDEN:"hidden.bs.collapse",CLICK_DATA_API:"click.bs.collapse.data-api"},a={SHOW:"show",COLLAPSE:"collapse",COLLAPSING:"collapsing",COLLAPSED:"collapsed"},l={WIDTH:"width",HEIGHT:"height"},c={ACTIVES:".show, .collapsing",DATA_TOGGLE:'[data-toggle="collapse"]'},f=function(){function i(t,n){this._isTransitioning=!1,this._element=t,this._config=this._getConfig(n),this._triggerArray=e.makeArray(e('[data-toggle="collapse"][href="#'+t.id+'"],[data-toggle="collapse"][data-target="#'+t.id+'"]'));for(var i=e(c.DATA_TOGGLE),r=0;r<i.length;r++){var o=i[r],s=X.getSelectorFromElement(o);null!==s&&e(s).filter(t).length>0&&this._triggerArray.push(o)}this._parent=this._config.parent?this._getParent():null,this._config.parent||this._addAriaAndCollapsedClass(this._element,this._triggerArray),this._config.toggle&&this.toggle()}var f=i.prototype;return f.toggle=function(){e(this._element).hasClass(a.SHOW)?this.hide():this.show()},f.show=function(){var t=this;if(!this._isTransitioning&&!e(this._element).hasClass(a.SHOW)){var r,o;if(this._parent&&((r=e.makeArray(e(this._parent).children().children(c.ACTIVES))).length||(r=null)),!(r&&(o=e(r).data(n))&&o._isTransitioning)){var l=e.Event(s.SHOW);if(e(this._element).trigger(l),!l.isDefaultPrevented()){r&&(i._jQueryInterface.call(e(r),"hide"),o||e(r).data(n,null));var f=this._getDimension();e(this._element).removeClass(a.COLLAPSE).addClass(a.COLLAPSING),this._element.style[f]=0,this._triggerArray.length&&e(this._triggerArray).removeClass(a.COLLAPSED).attr("aria-expanded",!0),this.setTransitioning(!0);var h=function(){e(t._element).removeClass(a.COLLAPSING).addClass(a.COLLAPSE).addClass(a.SHOW),t._element.style[f]="",t.setTransitioning(!1),e(t._element).trigger(s.SHOWN)};if(X.supportsTransitionEnd()){var u="scroll"+(f[0].toUpperCase()+f.slice(1));e(this._element).one(X.TRANSITION_END,h).emulateTransitionEnd(600),this._element.style[f]=this._element[u]+"px"}else h()}}}},f.hide=function(){var t=this;if(!this._isTransitioning&&e(this._element).hasClass(a.SHOW)){var n=e.Event(s.HIDE);if(e(this._element).trigger(n),!n.isDefaultPrevented()){var i=this._getDimension();if(this._element.style[i]=this._element.getBoundingClientRect()[i]+"px",X.reflow(this._element),e(this._element).addClass(a.COLLAPSING).removeClass(a.COLLAPSE).removeClass(a.SHOW),this._triggerArray.length)for(var r=0;r<this._triggerArray.length;r++){var o=this._triggerArray[r],l=X.getSelectorFromElement(o);null!==l&&(e(l).hasClass(a.SHOW)||e(o).addClass(a.COLLAPSED).attr("aria-expanded",!1))}this.setTransitioning(!0);var c=function(){t.setTransitioning(!1),e(t._element).removeClass(a.COLLAPSING).addClass(a.COLLAPSE).trigger(s.HIDDEN)};this._element.style[i]="",X.supportsTransitionEnd()?e(this._element).one(X.TRANSITION_END,c).emulateTransitionEnd(600):c()}}},f.setTransitioning=function(t){this._isTransitioning=t},f.dispose=function(){e.removeData(this._element,n),this._config=null,this._parent=null,this._element=null,this._triggerArray=null,this._isTransitioning=null},f._getConfig=function(n){return n=e.extend({},r,n),n.toggle=Boolean(n.toggle),X.typeCheckConfig(t,n,o),n},f._getDimension=function(){return e(this._element).hasClass(l.WIDTH)?l.WIDTH:l.HEIGHT},f._getParent=function(){var t=this,n=null;X.isElement(this._config.parent)?(n=this._config.parent,"undefined"!=typeof this._config.parent.jquery&&(n=this._config.parent[0])):n=e(this._config.parent)[0];var r='[data-toggle="collapse"][data-parent="'+this._config.parent+'"]';return e(n).find(r).each(function(e,n){t._addAriaAndCollapsedClass(i._getTargetFromElement(n),[n])}),n},f._addAriaAndCollapsedClass=function(t,n){if(t){var i=e(t).hasClass(a.SHOW);n.length&&e(n).toggleClass(a.COLLAPSED,!i).attr("aria-expanded",i)}},i._getTargetFromElement=function(t){var n=X.getSelectorFromElement(t);return n?e(n)[0]:null},i._jQueryInterface=function(t){return this.each(function(){var o=e(this),s=o.data(n),a=e.extend({},r,o.data(),"object"==typeof t&&t);if(!s&&a.toggle&&/show|hide/.test(t)&&(a.toggle=!1),s||(s=new i(this,a),o.data(n,s)),"string"==typeof t){if("undefined"==typeof s[t])throw new Error('No method named "'+t+'"');s[t]()}})},q(i,null,[{key:"VERSION",get:function(){return"4.0.0-beta.2"}},{key:"Default",get:function(){return r}}]),i}();return e(document).on(s.CLICK_DATA_API,c.DATA_TOGGLE,function(t){"A"===t.currentTarget.tagName&&t.preventDefault();var i=e(this),r=X.getSelectorFromElement(this);e(r).each(function(){var t=e(this),r=t.data(n)?"toggle":i.data();f._jQueryInterface.call(t,r)})}),e.fn[t]=f._jQueryInterface,e.fn[t].Constructor=f,e.fn[t].noConflict=function(){return e.fn[t]=i,f._jQueryInterface},f}(),et=["native code","[object MutationObserverConstructor]"],nt="undefined"!=typeof window,it=["Edge","Trident","Firefox"],rt=0,ot=0;ot<it.length;ot+=1)if(nt&&navigator.userAgent.indexOf(it[ot])>=0){rt=1;break}var st=nt&&function(t){return et.some(function(e){return(t||"").toString().indexOf(e)>-1})}(window.MutationObserver)?function(t){var e=!1,n=0,i=document.createElement("span");return new MutationObserver(function(){t(),e=!1}).observe(i,{attributes:!0}),function(){e||(e=!0,i.setAttribute("x-index",n),n+=1)}}:function(t){var e=!1;return function(){e||(e=!0,setTimeout(function(){e=!1,t()},rt))}},at=void 0,lt=function(){return void 0===at&&(at=-1!==navigator.appVersion.indexOf("MSIE 10")),at},ct=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},ft=function(){function t(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}return function(e,n,i){return n&&t(e.prototype,n),i&&t(e,i),e}}(),ht=function(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t},ut=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(t[i]=n[i])}return t},dt=["auto-start","auto","auto-end","top-start","top","top-end","right-start","right","right-end","bottom-end","bottom","bottom-start","left-end","left","left-start"],pt=dt.slice(3),gt={FLIP:"flip",CLOCKWISE:"clockwise",COUNTERCLOCKWISE:"counterclockwise"},mt={placement:"bottom",eventsEnabled:!0,removeOnDestroy:!1,onCreate:function(){},onUpdate:function(){},modifiers:{shift:{order:100,enabled:!0,fn:function(t){var e=t.placement,n=e.split("-")[0],i=e.split("-")[1];if(i){var r=t.offsets,o=r.reference,s=r.popper,a=-1!==["bottom","top"].indexOf(n),l=a?"left":"top",c=a?"width":"height",f={start:ht({},l,o[l]),end:ht({},l,o[l]+o[c]-s[c])};t.offsets.popper=ut({},s,f[i])}return t}},offset:{order:200,enabled:!0,fn:function(t,e){var n=e.offset,i=t.placement,r=t.offsets,o=r.popper,s=r.reference,a=i.split("-")[0],l=void 0;return l=V(+n)?[+n,0]:Y(n,o,s,a),"left"===a?(o.top+=l[0],o.left-=l[1]):"right"===a?(o.top+=l[0],o.left+=l[1]):"top"===a?(o.left+=l[0],o.top-=l[1]):"bottom"===a&&(o.left+=l[0],o.top+=l[1]),t.popper=o,t},offset:0},preventOverflow:{order:300,enabled:!0,fn:function(t,e){var n=e.boundariesElement||a(t.instance.popper);t.instance.reference===n&&(n=a(n));var i=b(t.instance.popper,t.instance.reference,e.padding,n);e.boundaries=i;var r=e.priority,o=t.offsets.popper,s={primary:function(t){var n=o[t];return o[t]<i[t]&&!e.escapeWithReference&&(n=Math.max(o[t],i[t])),ht({},t,n)},secondary:function(t){var n="right"===t?"left":"top",r=o[n];return o[t]>i[t]&&!e.escapeWithReference&&(r=Math.min(o[n],i[t]-("right"===t?o.width:o.height))),ht({},n,r)}};return r.forEach(function(t){var e=-1!==["left","top"].indexOf(t)?"primary":"secondary";o=ut({},o,s[e](t))}),t.offsets.popper=o,t},priority:["left","right","top","bottom"],padding:5,boundariesElement:"scrollParent"},keepTogether:{order:400,enabled:!0,fn:function(t){var e=t.offsets,n=e.popper,i=e.reference,r=t.placement.split("-")[0],o=Math.floor,s=-1!==["top","bottom"].indexOf(r),a=s?"right":"bottom",l=s?"left":"top",c=s?"width":"height";return n[a]<o(i[l])&&(t.offsets.popper[l]=o(i[l])-n[c]),n[l]>o(i[a])&&(t.offsets.popper[l]=o(i[a])),t}},arrow:{order:500,enabled:!0,fn:function(t,e){if(!B(t.instance.modifiers,"arrow","keepTogether"))return t;var n=e.element;if("string"==typeof n){if(!(n=t.instance.popper.querySelector(n)))return t}else if(!t.instance.popper.contains(n))return console.warn("WARNING: `arrow.element` must be child of its popper element!"),t;var i=t.placement.split("-")[0],o=t.offsets,s=o.popper,a=o.reference,l=-1!==["left","right"].indexOf(i),c=l?"height":"width",f=l?"Top":"Left",h=f.toLowerCase(),u=l?"left":"top",d=l?"bottom":"right",p=O(n)[c];a[d]-p<s[h]&&(t.offsets.popper[h]-=s[h]-(a[d]-p)),a[h]+p>s[d]&&(t.offsets.popper[h]+=a[h]+p-s[d]);var g=a[h]+a[c]/2-p/2,_=r(t.instance.popper,"margin"+f).replace("px",""),v=g-m(t.offsets.popper)[h]-_;return v=Math.max(Math.min(s[c]-p,v),0),t.arrowElement=n,t.offsets.arrow={},t.offsets.arrow[h]=Math.round(v),t.offsets.arrow[u]="",t},element:"[x-arrow]"},flip:{order:600,enabled:!0,fn:function(t,e){if(P(t.instance.modifiers,"inner"))return t;if(t.flipped&&t.placement===t.originalPlacement)return t;var n=b(t.instance.popper,t.instance.reference,e.padding,e.boundariesElement),i=t.placement.split("-")[0],r=y(i),o=t.placement.split("-")[1]||"",s=[];switch(e.behavior){case gt.FLIP:s=[i,r];break;case gt.CLOCKWISE:s=K(i);break;case gt.COUNTERCLOCKWISE:s=K(i,!0);break;default:s=e.behavior}return s.forEach(function(a,l){if(i!==a||s.length===l+1)return t;i=t.placement.split("-")[0],r=y(i);var c=t.offsets.popper,f=t.offsets.reference,h=Math.floor,u="left"===i&&h(c.right)>h(f.left)||"right"===i&&h(c.left)<h(f.right)||"top"===i&&h(c.bottom)>h(f.top)||"bottom"===i&&h(c.top)<h(f.bottom),d=h(c.left)<h(n.left),p=h(c.right)>h(n.right),g=h(c.top)<h(n.top),m=h(c.bottom)>h(n.bottom),_="left"===i&&d||"right"===i&&p||"top"===i&&g||"bottom"===i&&m,v=-1!==["top","bottom"].indexOf(i),E=!!e.flipVariations&&(v&&"start"===o&&d||v&&"end"===o&&p||!v&&"start"===o&&g||!v&&"end"===o&&m);(u||_||E)&&(t.flipped=!0,(u||_)&&(i=s[l+1]),E&&(o=G(o)),t.placement=i+(o?"-"+o:""),t.offsets.popper=ut({},t.offsets.popper,D(t.instance.popper,t.offsets.reference,t.placement)),t=N(t.instance.modifiers,t,"flip"))}),t},behavior:"flip",padding:5,boundariesElement:"viewport"},inner:{order:700,enabled:!1,fn:function(t){var e=t.placement,n=e.split("-")[0],i=t.offsets,r=i.popper,o=i.reference,s=-1!==["left","right"].indexOf(n),a=-1===["top","left"].indexOf(n);return r[s?"left":"top"]=o[n]-(a?r[s?"width":"height"]:0),t.placement=y(e),t.offsets.popper=m(r),t}},hide:{order:800,enabled:!0,fn:function(t){if(!B(t.instance.modifiers,"hide","preventOverflow"))return t;var e=t.offsets.reference,n=S(t.instance.modifiers,function(t){return"preventOverflow"===t.name}).boundaries;if(e.bottom<n.top||e.left>n.right||e.top>n.bottom||e.right<n.left){if(!0===t.hide)return t;t.hide=!0,t.attributes["x-out-of-boundaries"]=""}else{if(!1===t.hide)return t;t.hide=!1,t.attributes["x-out-of-boundaries"]=!1}return t}},computeStyle:{order:850,enabled:!0,fn:function(t,e){var n=e.x,i=e.y,r=t.offsets.popper,o=S(t.instance.modifiers,function(t){return"applyStyle"===t.name}).gpuAcceleration;void 0!==o&&console.warn("WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!");var s=void 0!==o?o:e.gpuAcceleration,l=_(a(t.instance.popper)),c={position:r.position},f={left:Math.floor(r.left),top:Math.floor(r.top),bottom:Math.floor(r.bottom),right:Math.floor(r.right)},h="bottom"===n?"top":"bottom",u="right"===i?"left":"right",d=R("transform"),p=void 0,g=void 0;if(g="bottom"===h?-l.height+f.bottom:f.top,p="right"===u?-l.width+f.right:f.left,s&&d)c[d]="translate3d("+p+"px, "+g+"px, 0)",c[h]=0,c[u]=0,c.willChange="transform";else{var m="bottom"===h?-1:1,v="right"===u?-1:1;c[h]=g*m,c[u]=p*v,c.willChange=h+", "+u}var E={"x-placement":t.placement};return t.attributes=ut({},E,t.attributes),t.styles=ut({},c,t.styles),t.arrowStyles=ut({},t.offsets.arrow,t.arrowStyles),t},gpuAcceleration:!0,x:"bottom",y:"right"},applyStyle:{order:900,enabled:!0,fn:function(t){return F(t.instance.popper,t.styles),j(t.instance.popper,t.attributes),t.arrowElement&&Object.keys(t.arrowStyles).length&&F(t.arrowElement,t.arrowStyles),t},onLoad:function(t,e,n,i,r){var o=I(r,e,t),s=A(n.placement,o,e,t,n.modifiers.flip.boundariesElement,n.modifiers.flip.padding);return e.setAttribute("x-placement",s),F(e,{position:"absolute"}),n},gpuAcceleration:void 0}}},_t=function(){function t(e,n){var r=this,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};ct(this,t),this.scheduleUpdate=function(){return requestAnimationFrame(r.update)},this.update=st(this.update.bind(this)),this.options=ut({},t.Defaults,o),this.state={isDestroyed:!1,isCreated:!1,scrollParents:[]},this.reference=e.jquery?e[0]:e,this.popper=n.jquery?n[0]:n,this.options.modifiers={},Object.keys(ut({},t.Defaults.modifiers,o.modifiers)).forEach(function(e){r.options.modifiers[e]=ut({},t.Defaults.modifiers[e]||{},o.modifiers?o.modifiers[e]:{})}),this.modifiers=Object.keys(this.options.modifiers).map(function(t){return ut({name:t},r.options.modifiers[t])}).sort(function(t,e){return t.order-e.order}),this.modifiers.forEach(function(t){t.enabled&&i(t.onLoad)&&t.onLoad(r.reference,r.popper,r.options,t,r.state)}),this.update();var s=this.options.eventsEnabled;s&&this.enableEventListeners(),this.state.eventsEnabled=s}return ft(t,[{key:"update",value:function(){return L.call(this)}},{key:"destroy",value:function(){return H.call(this)}},{key:"enableEventListeners",value:function(){return x.call(this)}},{key:"disableEventListeners",value:function(){return U.call(this)}}]),t}();_t.Utils=("undefined"!=typeof window?window:global).PopperUtils,_t.placements=dt,_t.Defaults=mt;var vt=function(){if("undefined"==typeof _t)throw new Error("Bootstrap dropdown require Popper.js (https://popper.js.org)");var t="dropdown",n="bs.dropdown",i="."+n,r=e.fn[t],o=new RegExp("38|40|27"),s={HIDE:"hide"+i,HIDDEN:"hidden"+i,SHOW:"show"+i,SHOWN:"shown"+i,CLICK:"click"+i,CLICK_DATA_API:"click.bs.dropdown.data-api",KEYDOWN_DATA_API:"keydown.bs.dropdown.data-api",KEYUP_DATA_API:"keyup.bs.dropdown.data-api"},a={DISABLED:"disabled",SHOW:"show",DROPUP:"dropup",MENURIGHT:"dropdown-menu-right",MENULEFT:"dropdown-menu-left"},l={DATA_TOGGLE:'[data-toggle="dropdown"]',FORM_CHILD:".dropdown form",MENU:".dropdown-menu",NAVBAR_NAV:".navbar-nav",VISIBLE_ITEMS:".dropdown-menu .dropdown-item:not(.disabled)"},c={TOP:"top-start",TOPEND:"top-end",BOTTOM:"bottom-start",BOTTOMEND:"bottom-end"},f={offset:0,flip:!0},h={offset:"(number|string|function)",flip:"boolean"},u=function(){function r(t,e){this._element=t,this._popper=null,this._config=this._getConfig(e),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar(),this._addEventListeners()}var u=r.prototype;return u.toggle=function(){if(!this._element.disabled&&!e(this._element).hasClass(a.DISABLED)){var t=r._getParentFromElement(this._element),n=e(this._menu).hasClass(a.SHOW);if(r._clearMenus(),!n){var i={relatedTarget:this._element},o=e.Event(s.SHOW,i);if(e(t).trigger(o),!o.isDefaultPrevented()){var c=this._element;e(t).hasClass(a.DROPUP)&&(e(this._menu).hasClass(a.MENULEFT)||e(this._menu).hasClass(a.MENURIGHT))&&(c=t),this._popper=new _t(c,this._menu,this._getPopperConfig()),"ontouchstart"in document.documentElement&&!e(t).closest(l.NAVBAR_NAV).length&&e("body").children().on("mouseover",null,e.noop),this._element.focus(),this._element.setAttribute("aria-expanded",!0),e(this._menu).toggleClass(a.SHOW),e(t).toggleClass(a.SHOW).trigger(e.Event(s.SHOWN,i))}}}},u.dispose=function(){e.removeData(this._element,n),e(this._element).off(i),this._element=null,this._menu=null,null!==this._popper&&this._popper.destroy(),this._popper=null},u.update=function(){this._inNavbar=this._detectNavbar(),null!==this._popper&&this._popper.scheduleUpdate()},u._addEventListeners=function(){var t=this;e(this._element).on(s.CLICK,function(e){e.preventDefault(),e.stopPropagation(),t.toggle()})},u._getConfig=function(n){return n=e.extend({},this.constructor.Default,e(this._element).data(),n),X.typeCheckConfig(t,n,this.constructor.DefaultType),n},u._getMenuElement=function(){if(!this._menu){var t=r._getParentFromElement(this._element);this._menu=e(t).find(l.MENU)[0]}return this._menu},u._getPlacement=function(){var t=e(this._element).parent(),n=c.BOTTOM;return t.hasClass(a.DROPUP)?(n=c.TOP,e(this._menu).hasClass(a.MENURIGHT)&&(n=c.TOPEND)):e(this._menu).hasClass(a.MENURIGHT)&&(n=c.BOTTOMEND),n},u._detectNavbar=function(){return e(this._element).closest(".navbar").length>0},u._getPopperConfig=function(){var t=this,n={};"function"==typeof this._config.offset?n.fn=function(n){return n.offsets=e.extend({},n.offsets,t._config.offset(n.offsets)||{}),n}:n.offset=this._config.offset;var i={placement:this._getPlacement(),modifiers:{offset:n,flip:{enabled:this._config.flip}}};return this._inNavbar&&(i.modifiers.applyStyle={enabled:!this._inNavbar}),i},r._jQueryInterface=function(t){return this.each(function(){var i=e(this).data(n),o="object"==typeof t?t:null;if(i||(i=new r(this,o),e(this).data(n,i)),"string"==typeof t){if("undefined"==typeof i[t])throw new Error('No method named "'+t+'"');i[t]()}})},r._clearMenus=function(t){if(!t||3!==t.which&&("keyup"!==t.type||9===t.which))for(var i=e.makeArray(e(l.DATA_TOGGLE)),o=0;o<i.length;o++){var c=r._getParentFromElement(i[o]),f=e(i[o]).data(n),h={relatedTarget:i[o]};if(f){var u=f._menu;if(e(c).hasClass(a.SHOW)&&!(t&&("click"===t.type&&/input|textarea/i.test(t.target.tagName)||"keyup"===t.type&&9===t.which)&&e.contains(c,t.target))){var d=e.Event(s.HIDE,h);e(c).trigger(d),d.isDefaultPrevented()||("ontouchstart"in document.documentElement&&e("body").children().off("mouseover",null,e.noop),i[o].setAttribute("aria-expanded","false"),e(u).removeClass(a.SHOW),e(c).removeClass(a.SHOW).trigger(e.Event(s.HIDDEN,h)))}}}},r._getParentFromElement=function(t){var n,i=X.getSelectorFromElement(t);return i&&(n=e(i)[0]),n||t.parentNode},r._dataApiKeydownHandler=function(t){if(!(!o.test(t.which)||/button/i.test(t.target.tagName)&&32===t.which||/input|textarea/i.test(t.target.tagName)||(t.preventDefault(),t.stopPropagation(),this.disabled||e(this).hasClass(a.DISABLED)))){var n=r._getParentFromElement(this),i=e(n).hasClass(a.SHOW);if((i||27===t.which&&32===t.which)&&(!i||27!==t.which&&32!==t.which)){var s=e(n).find(l.VISIBLE_ITEMS).get();if(s.length){var c=s.indexOf(t.target);38===t.which&&c>0&&c--,40===t.which&&c<s.length-1&&c++,c<0&&(c=0),s[c].focus()}}else{if(27===t.which){var f=e(n).find(l.DATA_TOGGLE)[0];e(f).trigger("focus")}e(this).trigger("click")}}},q(r,null,[{key:"VERSION",get:function(){return"4.0.0-beta.2"}},{key:"Default",get:function(){return f}},{key:"DefaultType",get:function(){return h}}]),r}();return e(document).on(s.KEYDOWN_DATA_API,l.DATA_TOGGLE,u._dataApiKeydownHandler).on(s.KEYDOWN_DATA_API,l.MENU,u._dataApiKeydownHandler).on(s.CLICK_DATA_API+" "+s.KEYUP_DATA_API,u._clearMenus).on(s.CLICK_DATA_API,l.DATA_TOGGLE,function(t){t.preventDefault(),t.stopPropagation(),u._jQueryInterface.call(e(this),"toggle")}).on(s.CLICK_DATA_API,l.FORM_CHILD,function(t){t.stopPropagation()}),e.fn[t]=u._jQueryInterface,e.fn[t].Constructor=u,e.fn[t].noConflict=function(){return e.fn[t]=r,u._jQueryInterface},u}(),Et=function(){var t="modal",n=".bs.modal",i=e.fn[t],r={backdrop:!0,keyboard:!0,focus:!0,show:!0},o={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean",show:"boolean"},s={HIDE:"hide.bs.modal",HIDDEN:"hidden.bs.modal",SHOW:"show.bs.modal",SHOWN:"shown.bs.modal",FOCUSIN:"focusin.bs.modal",RESIZE:"resize.bs.modal",CLICK_DISMISS:"click.dismiss.bs.modal",KEYDOWN_DISMISS:"keydown.dismiss.bs.modal",MOUSEUP_DISMISS:"mouseup.dismiss.bs.modal",MOUSEDOWN_DISMISS:"mousedown.dismiss.bs.modal",CLICK_DATA_API:"click.bs.modal.data-api"},a={SCROLLBAR_MEASURER:"modal-scrollbar-measure",BACKDROP:"modal-backdrop",OPEN:"modal-open",FADE:"fade",SHOW:"show"},l={DIALOG:".modal-dialog",DATA_TOGGLE:'[data-toggle="modal"]',DATA_DISMISS:'[data-dismiss="modal"]',FIXED_CONTENT:".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",STICKY_CONTENT:".sticky-top",NAVBAR_TOGGLER:".navbar-toggler"},c=function(){function i(t,n){this._config=this._getConfig(n),this._element=t,this._dialog=e(t).find(l.DIALOG)[0],this._backdrop=null,this._isShown=!1,this._isBodyOverflowing=!1,this._ignoreBackdropClick=!1,this._originalBodyPadding=0,this._scrollbarWidth=0}var c=i.prototype;return c.toggle=function(t){return this._isShown?this.hide():this.show(t)},c.show=function(t){var n=this;if(!this._isTransitioning&&!this._isShown){X.supportsTransitionEnd()&&e(this._element).hasClass(a.FADE)&&(this._isTransitioning=!0);var i=e.Event(s.SHOW,{relatedTarget:t});e(this._element).trigger(i),this._isShown||i.isDefaultPrevented()||(this._isShown=!0,this._checkScrollbar(),this._setScrollbar(),this._adjustDialog(),e(document.body).addClass(a.OPEN),this._setEscapeEvent(),this._setResizeEvent(),e(this._element).on(s.CLICK_DISMISS,l.DATA_DISMISS,function(t){return n.hide(t)}),e(this._dialog).on(s.MOUSEDOWN_DISMISS,function(){e(n._element).one(s.MOUSEUP_DISMISS,function(t){e(t.target).is(n._element)&&(n._ignoreBackdropClick=!0)})}),this._showBackdrop(function(){return n._showElement(t)}))}},c.hide=function(t){var n=this;if(t&&t.preventDefault(),!this._isTransitioning&&this._isShown){var i=e.Event(s.HIDE);if(e(this._element).trigger(i),this._isShown&&!i.isDefaultPrevented()){this._isShown=!1;var r=X.supportsTransitionEnd()&&e(this._element).hasClass(a.FADE);r&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),e(document).off(s.FOCUSIN),e(this._element).removeClass(a.SHOW),e(this._element).off(s.CLICK_DISMISS),e(this._dialog).off(s.MOUSEDOWN_DISMISS),r?e(this._element).one(X.TRANSITION_END,function(t){return n._hideModal(t)}).emulateTransitionEnd(300):this._hideModal()}}},c.dispose=function(){e.removeData(this._element,"bs.modal"),e(window,document,this._element,this._backdrop).off(n),this._config=null,this._element=null,this._dialog=null,this._backdrop=null,this._isShown=null,this._isBodyOverflowing=null,this._ignoreBackdropClick=null,this._scrollbarWidth=null},c.handleUpdate=function(){this._adjustDialog()},c._getConfig=function(n){return n=e.extend({},r,n),X.typeCheckConfig(t,n,o),n},c._showElement=function(t){var n=this,i=X.supportsTransitionEnd()&&e(this._element).hasClass(a.FADE);this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE||document.body.appendChild(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.scrollTop=0,i&&X.reflow(this._element),e(this._element).addClass(a.SHOW),this._config.focus&&this._enforceFocus();var r=e.Event(s.SHOWN,{relatedTarget:t}),o=function(){n._config.focus&&n._element.focus(),n._isTransitioning=!1,e(n._element).trigger(r)};i?e(this._dialog).one(X.TRANSITION_END,o).emulateTransitionEnd(300):o()},c._enforceFocus=function(){var t=this;e(document).off(s.FOCUSIN).on(s.FOCUSIN,function(n){document===n.target||t._element===n.target||e(t._element).has(n.target).length||t._element.focus()})},c._setEscapeEvent=function(){var t=this;this._isShown&&this._config.keyboard?e(this._element).on(s.KEYDOWN_DISMISS,function(e){27===e.which&&(e.preventDefault(),t.hide())}):this._isShown||e(this._element).off(s.KEYDOWN_DISMISS)},c._setResizeEvent=function(){var t=this;this._isShown?e(window).on(s.RESIZE,function(e){return t.handleUpdate(e)}):e(window).off(s.RESIZE)},c._hideModal=function(){var t=this;this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._isTransitioning=!1,this._showBackdrop(function(){e(document.body).removeClass(a.OPEN),t._resetAdjustments(),t._resetScrollbar(),e(t._element).trigger(s.HIDDEN)})},c._removeBackdrop=function(){this._backdrop&&(e(this._backdrop).remove(),this._backdrop=null)},c._showBackdrop=function(t){var n=this,i=e(this._element).hasClass(a.FADE)?a.FADE:"";if(this._isShown&&this._config.backdrop){var r=X.supportsTransitionEnd()&&i;if(this._backdrop=document.createElement("div"),this._backdrop.className=a.BACKDROP,i&&e(this._backdrop).addClass(i),e(this._backdrop).appendTo(document.body),e(this._element).on(s.CLICK_DISMISS,function(t){n._ignoreBackdropClick?n._ignoreBackdropClick=!1:t.target===t.currentTarget&&("static"===n._config.backdrop?n._element.focus():n.hide())}),r&&X.reflow(this._backdrop),e(this._backdrop).addClass(a.SHOW),!t)return;if(!r)return void t();e(this._backdrop).one(X.TRANSITION_END,t).emulateTransitionEnd(150)}else if(!this._isShown&&this._backdrop){e(this._backdrop).removeClass(a.SHOW);var o=function(){n._removeBackdrop(),t&&t()};X.supportsTransitionEnd()&&e(this._element).hasClass(a.FADE)?e(this._backdrop).one(X.TRANSITION_END,o).emulateTransitionEnd(150):o()}else t&&t()},c._adjustDialog=function(){var t=this._element.scrollHeight>document.documentElement.clientHeight;!this._isBodyOverflowing&&t&&(this._element.style.paddingLeft=this._scrollbarWidth+"px"),this._isBodyOverflowing&&!t&&(this._element.style.paddingRight=this._scrollbarWidth+"px")},c._resetAdjustments=function(){this._element.style.paddingLeft="",this._element.style.paddingRight=""},c._checkScrollbar=function(){var t=document.body.getBoundingClientRect();this._isBodyOverflowing=t.left+t.right<window.innerWidth,this._scrollbarWidth=this._getScrollbarWidth()},c._setScrollbar=function(){var t=this;if(this._isBodyOverflowing){e(l.FIXED_CONTENT).each(function(n,i){var r=e(i)[0].style.paddingRight,o=e(i).css("padding-right");e(i).data("padding-right",r).css("padding-right",parseFloat(o)+t._scrollbarWidth+"px")}),e(l.STICKY_CONTENT).each(function(n,i){var r=e(i)[0].style.marginRight,o=e(i).css("margin-right");e(i).data("margin-right",r).css("margin-right",parseFloat(o)-t._scrollbarWidth+"px")}),e(l.NAVBAR_TOGGLER).each(function(n,i){var r=e(i)[0].style.marginRight,o=e(i).css("margin-right");e(i).data("margin-right",r).css("margin-right",parseFloat(o)+t._scrollbarWidth+"px")});var n=document.body.style.paddingRight,i=e("body").css("padding-right");e("body").data("padding-right",n).css("padding-right",parseFloat(i)+this._scrollbarWidth+"px")}},c._resetScrollbar=function(){e(l.FIXED_CONTENT).each(function(t,n){var i=e(n).data("padding-right");"undefined"!=typeof i&&e(n).css("padding-right",i).removeData("padding-right")}),e(l.STICKY_CONTENT+", "+l.NAVBAR_TOGGLER).each(function(t,n){var i=e(n).data("margin-right");"undefined"!=typeof i&&e(n).css("margin-right",i).removeData("margin-right")});var t=e("body").data("padding-right");"undefined"!=typeof t&&e("body").css("padding-right",t).removeData("padding-right")},c._getScrollbarWidth=function(){var t=document.createElement("div");t.className=a.SCROLLBAR_MEASURER,document.body.appendChild(t);var e=t.getBoundingClientRect().width-t.clientWidth;return document.body.removeChild(t),e},i._jQueryInterface=function(t,n){return this.each(function(){var r=e(this).data("bs.modal"),o=e.extend({},i.Default,e(this).data(),"object"==typeof t&&t);if(r||(r=new i(this,o),e(this).data("bs.modal",r)),"string"==typeof t){if("undefined"==typeof r[t])throw new Error('No method named "'+t+'"');r[t](n)}else o.show&&r.show(n)})},q(i,null,[{key:"VERSION",get:function(){return"4.0.0-beta.2"}},{key:"Default",get:function(){return r}}]),i}();return e(document).on(s.CLICK_DATA_API,l.DATA_TOGGLE,function(t){var n,i=this,r=X.getSelectorFromElement(this);r&&(n=e(r)[0]);var o=e(n).data("bs.modal")?"toggle":e.extend({},e(n).data(),e(this).data());"A"!==this.tagName&&"AREA"!==this.tagName||t.preventDefault();var a=e(n).one(s.SHOW,function(t){t.isDefaultPrevented()||a.one(s.HIDDEN,function(){e(i).is(":visible")&&i.focus()})});c._jQueryInterface.call(e(n),o,this)}),e.fn[t]=c._jQueryInterface,e.fn[t].Constructor=c,e.fn[t].noConflict=function(){return e.fn[t]=i,c._jQueryInterface},c}(),Tt=function(){if("undefined"==typeof _t)throw new Error("Bootstrap tooltips require Popper.js (https://popper.js.org)");var t="tooltip",n=".bs.tooltip",i=e.fn[t],r=new RegExp("(^|\\s)bs-tooltip\\S+","g"),o={animation:"boolean",template:"string",title:"(string|element|function)",trigger:"string",delay:"(number|object)",html:"boolean",selector:"(string|boolean)",placement:"(string|function)",offset:"(number|string)",container:"(string|element|boolean)",fallbackPlacement:"(string|array)"},s={AUTO:"auto",TOP:"top",RIGHT:"right",BOTTOM:"bottom",LEFT:"left"},a={animation:!0,template:'<div class="tooltip" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,selector:!1,placement:"top",offset:0,container:!1,fallbackPlacement:"flip"},l={SHOW:"show",OUT:"out"},c={HIDE:"hide"+n,HIDDEN:"hidden"+n,SHOW:"show"+n,SHOWN:"shown"+n,INSERTED:"inserted"+n,CLICK:"click"+n,FOCUSIN:"focusin"+n,FOCUSOUT:"focusout"+n,MOUSEENTER:"mouseenter"+n,MOUSELEAVE:"mouseleave"+n},f={FADE:"fade",SHOW:"show"},h={TOOLTIP:".tooltip",TOOLTIP_INNER:".tooltip-inner",ARROW:".arrow"},u={HOVER:"hover",FOCUS:"focus",CLICK:"click",MANUAL:"manual"},d=function(){function i(t,e){this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this.element=t,this.config=this._getConfig(e),this.tip=null,this._setListeners()}var d=i.prototype;return d.enable=function(){this._isEnabled=!0},d.disable=function(){this._isEnabled=!1},d.toggleEnabled=function(){this._isEnabled=!this._isEnabled},d.toggle=function(t){if(this._isEnabled)if(t){var n=this.constructor.DATA_KEY,i=e(t.currentTarget).data(n);i||(i=new this.constructor(t.currentTarget,this._getDelegateConfig()),e(t.currentTarget).data(n,i)),i._activeTrigger.click=!i._activeTrigger.click,i._isWithActiveTrigger()?i._enter(null,i):i._leave(null,i)}else{if(e(this.getTipElement()).hasClass(f.SHOW))return void this._leave(null,this);this._enter(null,this)}},d.dispose=function(){clearTimeout(this._timeout),e.removeData(this.element,this.constructor.DATA_KEY),e(this.element).off(this.constructor.EVENT_KEY),e(this.element).closest(".modal").off("hide.bs.modal"),this.tip&&e(this.tip).remove(),this._isEnabled=null,this._timeout=null,this._hoverState=null,this._activeTrigger=null,null!==this._popper&&this._popper.destroy(),this._popper=null,this.element=null,this.config=null,this.tip=null},d.show=function(){var t=this;if("none"===e(this.element).css("display"))throw new Error("Please use show on visible elements");var n=e.Event(this.constructor.Event.SHOW);if(this.isWithContent()&&this._isEnabled){e(this.element).trigger(n);var r=e.contains(this.element.ownerDocument.documentElement,this.element);if(n.isDefaultPrevented()||!r)return;var o=this.getTipElement(),s=X.getUID(this.constructor.NAME);o.setAttribute("id",s),this.element.setAttribute("aria-describedby",s),this.setContent(),this.config.animation&&e(o).addClass(f.FADE);var a="function"==typeof this.config.placement?this.config.placement.call(this,o,this.element):this.config.placement,c=this._getAttachment(a);this.addAttachmentClass(c);var u=!1===this.config.container?document.body:e(this.config.container);e(o).data(this.constructor.DATA_KEY,this),e.contains(this.element.ownerDocument.documentElement,this.tip)||e(o).appendTo(u),e(this.element).trigger(this.constructor.Event.INSERTED),this._popper=new _t(this.element,o,{placement:c,modifiers:{offset:{offset:this.config.offset},flip:{behavior:this.config.fallbackPlacement},arrow:{element:h.ARROW}},onCreate:function(e){e.originalPlacement!==e.placement&&t._handlePopperPlacementChange(e)},onUpdate:function(e){t._handlePopperPlacementChange(e)}}),e(o).addClass(f.SHOW),"ontouchstart"in document.documentElement&&e("body").children().on("mouseover",null,e.noop);var d=function(){t.config.animation&&t._fixTransition();var n=t._hoverState;t._hoverState=null,e(t.element).trigger(t.constructor.Event.SHOWN),n===l.OUT&&t._leave(null,t)};X.supportsTransitionEnd()&&e(this.tip).hasClass(f.FADE)?e(this.tip).one(X.TRANSITION_END,d).emulateTransitionEnd(i._TRANSITION_DURATION):d()}},d.hide=function(t){var n=this,i=this.getTipElement(),r=e.Event(this.constructor.Event.HIDE),o=function(){n._hoverState!==l.SHOW&&i.parentNode&&i.parentNode.removeChild(i),n._cleanTipClass(),n.element.removeAttribute("aria-describedby"),e(n.element).trigger(n.constructor.Event.HIDDEN),null!==n._popper&&n._popper.destroy(),t&&t()};e(this.element).trigger(r),r.isDefaultPrevented()||(e(i).removeClass(f.SHOW),"ontouchstart"in document.documentElement&&e("body").children().off("mouseover",null,e.noop),this._activeTrigger[u.CLICK]=!1,this._activeTrigger[u.FOCUS]=!1,this._activeTrigger[u.HOVER]=!1,X.supportsTransitionEnd()&&e(this.tip).hasClass(f.FADE)?e(i).one(X.TRANSITION_END,o).emulateTransitionEnd(150):o(),this._hoverState="")},d.update=function(){null!==this._popper&&this._popper.scheduleUpdate()},d.isWithContent=function(){return Boolean(this.getTitle())},d.addAttachmentClass=function(t){e(this.getTipElement()).addClass("bs-tooltip-"+t)},d.getTipElement=function(){return this.tip=this.tip||e(this.config.template)[0],this.tip},d.setContent=function(){var t=e(this.getTipElement());this.setElementContent(t.find(h.TOOLTIP_INNER),this.getTitle()),t.removeClass(f.FADE+" "+f.SHOW)},d.setElementContent=function(t,n){var i=this.config.html;"object"==typeof n&&(n.nodeType||n.jquery)?i?e(n).parent().is(t)||t.empty().append(n):t.text(e(n).text()):t[i?"html":"text"](n)},d.getTitle=function(){var t=this.element.getAttribute("data-original-title");return t||(t="function"==typeof this.config.title?this.config.title.call(this.element):this.config.title),t},d._getAttachment=function(t){return s[t.toUpperCase()]},d._setListeners=function(){var t=this;this.config.trigger.split(" ").forEach(function(n){if("click"===n)e(t.element).on(t.constructor.Event.CLICK,t.config.selector,function(e){return t.toggle(e)});else if(n!==u.MANUAL){var i=n===u.HOVER?t.constructor.Event.MOUSEENTER:t.constructor.Event.FOCUSIN,r=n===u.HOVER?t.constructor.Event.MOUSELEAVE:t.constructor.Event.FOCUSOUT;e(t.element).on(i,t.config.selector,function(e){return t._enter(e)}).on(r,t.config.selector,function(e){return t._leave(e)})}e(t.element).closest(".modal").on("hide.bs.modal",function(){return t.hide()})}),this.config.selector?this.config=e.extend({},this.config,{trigger:"manual",selector:""}):this._fixTitle()},d._fixTitle=function(){var t=typeof this.element.getAttribute("data-original-title");(this.element.getAttribute("title")||"string"!==t)&&(this.element.setAttribute("data-original-title",this.element.getAttribute("title")||""),this.element.setAttribute("title",""))},d._enter=function(t,n){var i=this.constructor.DATA_KEY;(n=n||e(t.currentTarget).data(i))||(n=new this.constructor(t.currentTarget,this._getDelegateConfig()),e(t.currentTarget).data(i,n)),t&&(n._activeTrigger["focusin"===t.type?u.FOCUS:u.HOVER]=!0),e(n.getTipElement()).hasClass(f.SHOW)||n._hoverState===l.SHOW?n._hoverState=l.SHOW:(clearTimeout(n._timeout),n._hoverState=l.SHOW,n.config.delay&&n.config.delay.show?n._timeout=setTimeout(function(){n._hoverState===l.SHOW&&n.show()},n.config.delay.show):n.show())},d._leave=function(t,n){var i=this.constructor.DATA_KEY;(n=n||e(t.currentTarget).data(i))||(n=new this.constructor(t.currentTarget,this._getDelegateConfig()),e(t.currentTarget).data(i,n)),t&&(n._activeTrigger["focusout"===t.type?u.FOCUS:u.HOVER]=!1),n._isWithActiveTrigger()||(clearTimeout(n._timeout),n._hoverState=l.OUT,n.config.delay&&n.config.delay.hide?n._timeout=setTimeout(function(){n._hoverState===l.OUT&&n.hide()},n.config.delay.hide):n.hide())},d._isWithActiveTrigger=function(){for(var t in this._activeTrigger)if(this._activeTrigger[t])return!0;return!1},d._getConfig=function(n){return"number"==typeof(n=e.extend({},this.constructor.Default,e(this.element).data(),n)).delay&&(n.delay={show:n.delay,hide:n.delay}),"number"==typeof n.title&&(n.title=n.title.toString()),"number"==typeof n.content&&(n.content=n.content.toString()),X.typeCheckConfig(t,n,this.constructor.DefaultType),n},d._getDelegateConfig=function(){var t={};if(this.config)for(var e in this.config)this.constructor.Default[e]!==this.config[e]&&(t[e]=this.config[e]);return t},d._cleanTipClass=function(){var t=e(this.getTipElement()),n=t.attr("class").match(r);null!==n&&n.length>0&&t.removeClass(n.join(""))},d._handlePopperPlacementChange=function(t){this._cleanTipClass(),this.addAttachmentClass(this._getAttachment(t.placement))},d._fixTransition=function(){var t=this.getTipElement(),n=this.config.animation;null===t.getAttribute("x-placement")&&(e(t).removeClass(f.FADE),this.config.animation=!1,this.hide(),this.show(),this.config.animation=n)},i._jQueryInterface=function(t){return this.each(function(){var n=e(this).data("bs.tooltip"),r="object"==typeof t&&t;if((n||!/dispose|hide/.test(t))&&(n||(n=new i(this,r),e(this).data("bs.tooltip",n)),"string"==typeof t)){if("undefined"==typeof n[t])throw new Error('No method named "'+t+'"');n[t]()}})},q(i,null,[{key:"VERSION",get:function(){return"4.0.0-beta.2"}},{key:"Default",get:function(){return a}},{key:"NAME",get:function(){return t}},{key:"DATA_KEY",get:function(){return"bs.tooltip"}},{key:"Event",get:function(){return c}},{key:"EVENT_KEY",get:function(){return n}},{key:"DefaultType",get:function(){return o}}]),i}();return e.fn[t]=d._jQueryInterface,e.fn[t].Constructor=d,e.fn[t].noConflict=function(){return e.fn[t]=i,d._jQueryInterface},d}(),bt=function(){var t="popover",n=".bs.popover",i=e.fn[t],r=new RegExp("(^|\\s)bs-popover\\S+","g"),o=e.extend({},Tt.Default,{placement:"right",trigger:"click",content:"",template:'<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>'}),s=e.extend({},Tt.DefaultType,{content:"(string|element|function)"}),a={FADE:"fade",SHOW:"show"},l={TITLE:".popover-header",CONTENT:".popover-body"},c={HIDE:"hide"+n,HIDDEN:"hidden"+n,SHOW:"show"+n,SHOWN:"shown"+n,INSERTED:"inserted"+n,CLICK:"click"+n,FOCUSIN:"focusin"+n,FOCUSOUT:"focusout"+n,MOUSEENTER:"mouseenter"+n,MOUSELEAVE:"mouseleave"+n},f=function(i){function f(){return i.apply(this,arguments)||this}z(f,i);var h=f.prototype;return h.isWithContent=function(){return this.getTitle()||this._getContent()},h.addAttachmentClass=function(t){e(this.getTipElement()).addClass("bs-popover-"+t)},h.getTipElement=function(){return this.tip=this.tip||e(this.config.template)[0],this.tip},h.setContent=function(){var t=e(this.getTipElement());this.setElementContent(t.find(l.TITLE),this.getTitle()),this.setElementContent(t.find(l.CONTENT),this._getContent()),t.removeClass(a.FADE+" "+a.SHOW)},h._getContent=function(){return this.element.getAttribute("data-content")||("function"==typeof this.config.content?this.config.content.call(this.element):this.config.content)},h._cleanTipClass=function(){var t=e(this.getTipElement()),n=t.attr("class").match(r);null!==n&&n.length>0&&t.removeClass(n.join(""))},f._jQueryInterface=function(t){return this.each(function(){var n=e(this).data("bs.popover"),i="object"==typeof t?t:null;if((n||!/destroy|hide/.test(t))&&(n||(n=new f(this,i),e(this).data("bs.popover",n)),"string"==typeof t)){if("undefined"==typeof n[t])throw new Error('No method named "'+t+'"');n[t]()}})},q(f,null,[{key:"VERSION",get:function(){return"4.0.0-beta.2"}},{key:"Default",get:function(){return o}},{key:"NAME",get:function(){return t}},{key:"DATA_KEY",get:function(){return"bs.popover"}},{key:"Event",get:function(){return c}},{key:"EVENT_KEY",get:function(){return n}},{key:"DefaultType",get:function(){return s}}]),f}(Tt);return e.fn[t]=f._jQueryInterface,e.fn[t].Constructor=f,e.fn[t].noConflict=function(){return e.fn[t]=i,f._jQueryInterface},f}(),Ct=function(){var t="scrollspy",n=e.fn[t],i={offset:10,method:"auto",target:""},r={offset:"number",method:"string",target:"(string|element)"},o={ACTIVATE:"activate.bs.scrollspy",SCROLL:"scroll.bs.scrollspy",LOAD_DATA_API:"load.bs.scrollspy.data-api"},s={DROPDOWN_ITEM:"dropdown-item",DROPDOWN_MENU:"dropdown-menu",ACTIVE:"active"},a={DATA_SPY:'[data-spy="scroll"]',ACTIVE:".active",NAV_LIST_GROUP:".nav, .list-group",NAV_LINKS:".nav-link",NAV_ITEMS:".nav-item",LIST_ITEMS:".list-group-item",DROPDOWN:".dropdown",DROPDOWN_ITEMS:".dropdown-item",DROPDOWN_TOGGLE:".dropdown-toggle"},l={OFFSET:"offset",POSITION:"position"},c=function(){function n(t,n){var i=this;this._element=t,this._scrollElement="BODY"===t.tagName?window:t,this._config=this._getConfig(n),this._selector=this._config.target+" "+a.NAV_LINKS+","+this._config.target+" "+a.LIST_ITEMS+","+this._config.target+" "+a.DROPDOWN_ITEMS,this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,e(this._scrollElement).on(o.SCROLL,function(t){return i._process(t)}),this.refresh(),this._process()}var c=n.prototype;return c.refresh=function(){var t=this,n=this._scrollElement!==this._scrollElement.window?l.POSITION:l.OFFSET,i="auto"===this._config.method?n:this._config.method,r=i===l.POSITION?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),e.makeArray(e(this._selector)).map(function(t){var n,o=X.getSelectorFromElement(t);if(o&&(n=e(o)[0]),n){var s=n.getBoundingClientRect();if(s.width||s.height)return[e(n)[i]().top+r,o]}return null}).filter(function(t){return t}).sort(function(t,e){return t[0]-e[0]}).forEach(function(e){t._offsets.push(e[0]),t._targets.push(e[1])})},c.dispose=function(){e.removeData(this._element,"bs.scrollspy"),e(this._scrollElement).off(".bs.scrollspy"),this._element=null,this._scrollElement=null,this._config=null,this._selector=null,this._offsets=null,this._targets=null,this._activeTarget=null,this._scrollHeight=null},c._getConfig=function(n){if("string"!=typeof(n=e.extend({},i,n)).target){var o=e(n.target).attr("id");o||(o=X.getUID(t),e(n.target).attr("id",o)),n.target="#"+o}return X.typeCheckConfig(t,n,r),n},c._getScrollTop=function(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop},c._getScrollHeight=function(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)},c._getOffsetHeight=function(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height},c._process=function(){var t=this._getScrollTop()+this._config.offset,e=this._getScrollHeight(),n=this._config.offset+e-this._getOffsetHeight();if(this._scrollHeight!==e&&this.refresh(),t>=n){var i=this._targets[this._targets.length-1];this._activeTarget!==i&&this._activate(i)}else{if(this._activeTarget&&t<this._offsets[0]&&this._offsets[0]>0)return this._activeTarget=null,void this._clear();for(var r=this._offsets.length;r--;)this._activeTarget!==this._targets[r]&&t>=this._offsets[r]&&("undefined"==typeof this._offsets[r+1]||t<this._offsets[r+1])&&this._activate(this._targets[r])}},c._activate=function(t){this._activeTarget=t,this._clear();var n=this._selector.split(",");n=n.map(function(e){return e+'[data-target="'+t+'"],'+e+'[href="'+t+'"]'});var i=e(n.join(","));i.hasClass(s.DROPDOWN_ITEM)?(i.closest(a.DROPDOWN).find(a.DROPDOWN_TOGGLE).addClass(s.ACTIVE),i.addClass(s.ACTIVE)):(i.addClass(s.ACTIVE),i.parents(a.NAV_LIST_GROUP).prev(a.NAV_LINKS+", "+a.LIST_ITEMS).addClass(s.ACTIVE),i.parents(a.NAV_LIST_GROUP).prev(a.NAV_ITEMS).children(a.NAV_LINKS).addClass(s.ACTIVE)),e(this._scrollElement).trigger(o.ACTIVATE,{relatedTarget:t})},c._clear=function(){e(this._selector).filter(a.ACTIVE).removeClass(s.ACTIVE)},n._jQueryInterface=function(t){return this.each(function(){var i=e(this).data("bs.scrollspy"),r="object"==typeof t&&t;if(i||(i=new n(this,r),e(this).data("bs.scrollspy",i)),"string"==typeof t){if("undefined"==typeof i[t])throw new Error('No method named "'+t+'"');i[t]()}})},q(n,null,[{key:"VERSION",get:function(){return"4.0.0-beta.2"}},{key:"Default",get:function(){return i}}]),n}();return e(window).on(o.LOAD_DATA_API,function(){for(var t=e.makeArray(e(a.DATA_SPY)),n=t.length;n--;){var i=e(t[n]);c._jQueryInterface.call(i,i.data())}}),e.fn[t]=c._jQueryInterface,e.fn[t].Constructor=c,e.fn[t].noConflict=function(){return e.fn[t]=n,c._jQueryInterface},c}(),At=function(){var t=e.fn.tab,n={HIDE:"hide.bs.tab",HIDDEN:"hidden.bs.tab",SHOW:"show.bs.tab",SHOWN:"shown.bs.tab",CLICK_DATA_API:"click.bs.tab.data-api"},i={DROPDOWN_MENU:"dropdown-menu",ACTIVE:"active",DISABLED:"disabled",FADE:"fade",SHOW:"show"},r={DROPDOWN:".dropdown",NAV_LIST_GROUP:".nav, .list-group",ACTIVE:".active",ACTIVE_UL:"> li > .active",DATA_TOGGLE:'[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]',DROPDOWN_TOGGLE:".dropdown-toggle",DROPDOWN_ACTIVE_CHILD:"> .dropdown-menu .active"},o=function(){function t(t){this._element=t}var o=t.prototype;return o.show=function(){var t=this;if(!(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&e(this._element).hasClass(i.ACTIVE)||e(this._element).hasClass(i.DISABLED))){var o,s,a=e(this._element).closest(r.NAV_LIST_GROUP)[0],l=X.getSelectorFromElement(this._element);if(a){var c="UL"===a.nodeName?r.ACTIVE_UL:r.ACTIVE;s=e.makeArray(e(a).find(c)),s=s[s.length-1]}var f=e.Event(n.HIDE,{relatedTarget:this._element}),h=e.Event(n.SHOW,{relatedTarget:s});if(s&&e(s).trigger(f),e(this._element).trigger(h),!h.isDefaultPrevented()&&!f.isDefaultPrevented()){l&&(o=e(l)[0]),this._activate(this._element,a);var u=function(){var i=e.Event(n.HIDDEN,{relatedTarget:t._element}),r=e.Event(n.SHOWN,{relatedTarget:s});e(s).trigger(i),e(t._element).trigger(r)};o?this._activate(o,o.parentNode,u):u()}}},o.dispose=function(){e.removeData(this._element,"bs.tab"),this._element=null},o._activate=function(t,n,o){var s,a=this,l=(s="UL"===n.nodeName?e(n).find(r.ACTIVE_UL):e(n).children(r.ACTIVE))[0],c=o&&X.supportsTransitionEnd()&&l&&e(l).hasClass(i.FADE),f=function(){return a._transitionComplete(t,l,c,o)};l&&c?e(l).one(X.TRANSITION_END,f).emulateTransitionEnd(150):f(),l&&e(l).removeClass(i.SHOW)},o._transitionComplete=function(t,n,o,s){if(n){e(n).removeClass(i.ACTIVE);var a=e(n.parentNode).find(r.DROPDOWN_ACTIVE_CHILD)[0];a&&e(a).removeClass(i.ACTIVE),"tab"===n.getAttribute("role")&&n.setAttribute("aria-selected",!1)}if(e(t).addClass(i.ACTIVE),"tab"===t.getAttribute("role")&&t.setAttribute("aria-selected",!0),o?(X.reflow(t),e(t).addClass(i.SHOW)):e(t).removeClass(i.FADE),t.parentNode&&e(t.parentNode).hasClass(i.DROPDOWN_MENU)){var l=e(t).closest(r.DROPDOWN)[0];l&&e(l).find(r.DROPDOWN_TOGGLE).addClass(i.ACTIVE),t.setAttribute("aria-expanded",!0)}s&&s()},t._jQueryInterface=function(n){return this.each(function(){var i=e(this),r=i.data("bs.tab");if(r||(r=new t(this),i.data("bs.tab",r)),"string"==typeof n){if("undefined"==typeof r[n])throw new Error('No method named "'+n+'"');r[n]()}})},q(t,null,[{key:"VERSION",get:function(){return"4.0.0-beta.2"}}]),t}();return e(document).on(n.CLICK_DATA_API,r.DATA_TOGGLE,function(t){t.preventDefault(),o._jQueryInterface.call(e(this),"show")}),e.fn.tab=o._jQueryInterface,e.fn.tab.Constructor=o,e.fn.tab.noConflict=function(){return e.fn.tab=t,o._jQueryInterface},o}();return function(){if("undefined"==typeof e)throw new Error("Bootstrap's JavaScript requires jQuery. jQuery must be included before Bootstrap's JavaScript.");var t=e.fn.jquery.split(" ")[0].split(".");if(t[0]<2&&t[1]<9||1===t[0]&&9===t[1]&&t[2]<1||t[0]>=4)throw new Error("Bootstrap's JavaScript requires at least jQuery v1.9.1 but less than v4.0.0")}(),t.Util=X,t.Alert=Z,t.Button=J,t.Carousel=$,t.Collapse=tt,t.Dropdown=vt,t.Modal=Et,t.Popover=bt,t.Scrollspy=Ct,t.Tab=At,t.Tooltip=Tt,t}({},$);
7
+ //# sourceMappingURL=bootstrap.bundle.min.js.map
@@ -0,0 +1,3850 @@
1
+ /*!
2
+ * Bootstrap v4.0.0-beta.2 (https://getbootstrap.com)
3
+ * Copyright 2011-2017 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
4
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
5
+ */
6
+ var bootstrap = (function (exports,$,Popper) {
7
+ 'use strict';
8
+
9
+ $ = $ && $.hasOwnProperty('default') ? $['default'] : $;
10
+ Popper = Popper && Popper.hasOwnProperty('default') ? Popper['default'] : Popper;
11
+
12
+ /**
13
+ * --------------------------------------------------------------------------
14
+ * Bootstrap (v4.0.0-beta.2): util.js
15
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
16
+ * --------------------------------------------------------------------------
17
+ */
18
+
19
+ var Util = function () {
20
+ /**
21
+ * ------------------------------------------------------------------------
22
+ * Private TransitionEnd Helpers
23
+ * ------------------------------------------------------------------------
24
+ */
25
+ var transition = false;
26
+ var MAX_UID = 1000000;
27
+ var TransitionEndEvent = {
28
+ WebkitTransition: 'webkitTransitionEnd',
29
+ MozTransition: 'transitionend',
30
+ OTransition: 'oTransitionEnd otransitionend',
31
+ transition: 'transitionend' // shoutout AngusCroll (https://goo.gl/pxwQGp)
32
+
33
+ };
34
+
35
+ function toType(obj) {
36
+ return {}.toString.call(obj).match(/\s([a-zA-Z]+)/)[1].toLowerCase();
37
+ }
38
+
39
+ function getSpecialTransitionEndEvent() {
40
+ return {
41
+ bindType: transition.end,
42
+ delegateType: transition.end,
43
+ handle: function handle(event) {
44
+ if ($(event.target).is(this)) {
45
+ return event.handleObj.handler.apply(this, arguments); // eslint-disable-line prefer-rest-params
46
+ }
47
+
48
+ return undefined; // eslint-disable-line no-undefined
49
+ }
50
+ };
51
+ }
52
+
53
+ function transitionEndTest() {
54
+ if (window.QUnit) {
55
+ return false;
56
+ }
57
+
58
+ var el = document.createElement('bootstrap');
59
+
60
+ for (var name in TransitionEndEvent) {
61
+ if (typeof el.style[name] !== 'undefined') {
62
+ return {
63
+ end: TransitionEndEvent[name]
64
+ };
65
+ }
66
+ }
67
+
68
+ return false;
69
+ }
70
+
71
+ function transitionEndEmulator(duration) {
72
+ var _this = this;
73
+
74
+ var called = false;
75
+ $(this).one(Util.TRANSITION_END, function () {
76
+ called = true;
77
+ });
78
+ setTimeout(function () {
79
+ if (!called) {
80
+ Util.triggerTransitionEnd(_this);
81
+ }
82
+ }, duration);
83
+ return this;
84
+ }
85
+
86
+ function setTransitionEndSupport() {
87
+ transition = transitionEndTest();
88
+ $.fn.emulateTransitionEnd = transitionEndEmulator;
89
+
90
+ if (Util.supportsTransitionEnd()) {
91
+ $.event.special[Util.TRANSITION_END] = getSpecialTransitionEndEvent();
92
+ }
93
+ }
94
+ /**
95
+ * --------------------------------------------------------------------------
96
+ * Public Util Api
97
+ * --------------------------------------------------------------------------
98
+ */
99
+
100
+
101
+ var Util = {
102
+ TRANSITION_END: 'bsTransitionEnd',
103
+ getUID: function getUID(prefix) {
104
+ do {
105
+ // eslint-disable-next-line no-bitwise
106
+ prefix += ~~(Math.random() * MAX_UID); // "~~" acts like a faster Math.floor() here
107
+ } while (document.getElementById(prefix));
108
+
109
+ return prefix;
110
+ },
111
+ getSelectorFromElement: function getSelectorFromElement(element) {
112
+ var selector = element.getAttribute('data-target');
113
+
114
+ if (!selector || selector === '#') {
115
+ selector = element.getAttribute('href') || '';
116
+ }
117
+
118
+ try {
119
+ var $selector = $(document).find(selector);
120
+ return $selector.length > 0 ? selector : null;
121
+ } catch (error) {
122
+ return null;
123
+ }
124
+ },
125
+ reflow: function reflow(element) {
126
+ return element.offsetHeight;
127
+ },
128
+ triggerTransitionEnd: function triggerTransitionEnd(element) {
129
+ $(element).trigger(transition.end);
130
+ },
131
+ supportsTransitionEnd: function supportsTransitionEnd() {
132
+ return Boolean(transition);
133
+ },
134
+ isElement: function isElement(obj) {
135
+ return (obj[0] || obj).nodeType;
136
+ },
137
+ typeCheckConfig: function typeCheckConfig(componentName, config, configTypes) {
138
+ for (var property in configTypes) {
139
+ if (Object.prototype.hasOwnProperty.call(configTypes, property)) {
140
+ var expectedTypes = configTypes[property];
141
+ var value = config[property];
142
+ var valueType = value && Util.isElement(value) ? 'element' : toType(value);
143
+
144
+ if (!new RegExp(expectedTypes).test(valueType)) {
145
+ throw new Error(componentName.toUpperCase() + ": " + ("Option \"" + property + "\" provided type \"" + valueType + "\" ") + ("but expected type \"" + expectedTypes + "\"."));
146
+ }
147
+ }
148
+ }
149
+ }
150
+ };
151
+ setTransitionEndSupport();
152
+ return Util;
153
+ }($);
154
+
155
+ function _defineProperties(target, props) {
156
+ for (var i = 0; i < props.length; i++) {
157
+ var descriptor = props[i];
158
+ descriptor.enumerable = descriptor.enumerable || false;
159
+ descriptor.configurable = true;
160
+ if ("value" in descriptor) descriptor.writable = true;
161
+ Object.defineProperty(target, descriptor.key, descriptor);
162
+ }
163
+ }
164
+
165
+ function _createClass(Constructor, protoProps, staticProps) {
166
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
167
+ if (staticProps) _defineProperties(Constructor, staticProps);
168
+ return Constructor;
169
+ }
170
+
171
+ var createClass = _createClass;
172
+
173
+ function _inheritsLoose(subClass, superClass) {
174
+ subClass.prototype = Object.create(superClass.prototype);
175
+ subClass.prototype.constructor = subClass;
176
+ subClass.__proto__ = superClass;
177
+ }
178
+
179
+ var inheritsLoose = _inheritsLoose;
180
+
181
+ /**
182
+ * --------------------------------------------------------------------------
183
+ * Bootstrap (v4.0.0-beta.2): alert.js
184
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
185
+ * --------------------------------------------------------------------------
186
+ */
187
+
188
+ var Alert = function () {
189
+ /**
190
+ * ------------------------------------------------------------------------
191
+ * Constants
192
+ * ------------------------------------------------------------------------
193
+ */
194
+ var NAME = 'alert';
195
+ var VERSION = '4.0.0-beta.2';
196
+ var DATA_KEY = 'bs.alert';
197
+ var EVENT_KEY = "." + DATA_KEY;
198
+ var DATA_API_KEY = '.data-api';
199
+ var JQUERY_NO_CONFLICT = $.fn[NAME];
200
+ var TRANSITION_DURATION = 150;
201
+ var Selector = {
202
+ DISMISS: '[data-dismiss="alert"]'
203
+ };
204
+ var Event = {
205
+ CLOSE: "close" + EVENT_KEY,
206
+ CLOSED: "closed" + EVENT_KEY,
207
+ CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY
208
+ };
209
+ var ClassName = {
210
+ ALERT: 'alert',
211
+ FADE: 'fade',
212
+ SHOW: 'show'
213
+ /**
214
+ * ------------------------------------------------------------------------
215
+ * Class Definition
216
+ * ------------------------------------------------------------------------
217
+ */
218
+
219
+ };
220
+
221
+ var Alert =
222
+ /*#__PURE__*/
223
+ function () {
224
+ function Alert(element) {
225
+ this._element = element;
226
+ } // getters
227
+
228
+
229
+ var _proto = Alert.prototype;
230
+
231
+ // public
232
+ _proto.close = function close(element) {
233
+ element = element || this._element;
234
+
235
+ var rootElement = this._getRootElement(element);
236
+
237
+ var customEvent = this._triggerCloseEvent(rootElement);
238
+
239
+ if (customEvent.isDefaultPrevented()) {
240
+ return;
241
+ }
242
+
243
+ this._removeElement(rootElement);
244
+ };
245
+
246
+ _proto.dispose = function dispose() {
247
+ $.removeData(this._element, DATA_KEY);
248
+ this._element = null;
249
+ }; // private
250
+
251
+
252
+ _proto._getRootElement = function _getRootElement(element) {
253
+ var selector = Util.getSelectorFromElement(element);
254
+ var parent = false;
255
+
256
+ if (selector) {
257
+ parent = $(selector)[0];
258
+ }
259
+
260
+ if (!parent) {
261
+ parent = $(element).closest("." + ClassName.ALERT)[0];
262
+ }
263
+
264
+ return parent;
265
+ };
266
+
267
+ _proto._triggerCloseEvent = function _triggerCloseEvent(element) {
268
+ var closeEvent = $.Event(Event.CLOSE);
269
+ $(element).trigger(closeEvent);
270
+ return closeEvent;
271
+ };
272
+
273
+ _proto._removeElement = function _removeElement(element) {
274
+ var _this = this;
275
+
276
+ $(element).removeClass(ClassName.SHOW);
277
+
278
+ if (!Util.supportsTransitionEnd() || !$(element).hasClass(ClassName.FADE)) {
279
+ this._destroyElement(element);
280
+
281
+ return;
282
+ }
283
+
284
+ $(element).one(Util.TRANSITION_END, function (event) {
285
+ return _this._destroyElement(element, event);
286
+ }).emulateTransitionEnd(TRANSITION_DURATION);
287
+ };
288
+
289
+ _proto._destroyElement = function _destroyElement(element) {
290
+ $(element).detach().trigger(Event.CLOSED).remove();
291
+ }; // static
292
+
293
+
294
+ Alert._jQueryInterface = function _jQueryInterface(config) {
295
+ return this.each(function () {
296
+ var $element = $(this);
297
+ var data = $element.data(DATA_KEY);
298
+
299
+ if (!data) {
300
+ data = new Alert(this);
301
+ $element.data(DATA_KEY, data);
302
+ }
303
+
304
+ if (config === 'close') {
305
+ data[config](this);
306
+ }
307
+ });
308
+ };
309
+
310
+ Alert._handleDismiss = function _handleDismiss(alertInstance) {
311
+ return function (event) {
312
+ if (event) {
313
+ event.preventDefault();
314
+ }
315
+
316
+ alertInstance.close(this);
317
+ };
318
+ };
319
+
320
+ createClass(Alert, null, [{
321
+ key: "VERSION",
322
+ get: function get() {
323
+ return VERSION;
324
+ }
325
+ }]);
326
+ return Alert;
327
+ }();
328
+ /**
329
+ * ------------------------------------------------------------------------
330
+ * Data Api implementation
331
+ * ------------------------------------------------------------------------
332
+ */
333
+
334
+
335
+ $(document).on(Event.CLICK_DATA_API, Selector.DISMISS, Alert._handleDismiss(new Alert()));
336
+ /**
337
+ * ------------------------------------------------------------------------
338
+ * jQuery
339
+ * ------------------------------------------------------------------------
340
+ */
341
+
342
+ $.fn[NAME] = Alert._jQueryInterface;
343
+ $.fn[NAME].Constructor = Alert;
344
+
345
+ $.fn[NAME].noConflict = function () {
346
+ $.fn[NAME] = JQUERY_NO_CONFLICT;
347
+ return Alert._jQueryInterface;
348
+ };
349
+
350
+ return Alert;
351
+ }($);
352
+
353
+ /**
354
+ * --------------------------------------------------------------------------
355
+ * Bootstrap (v4.0.0-beta.2): button.js
356
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
357
+ * --------------------------------------------------------------------------
358
+ */
359
+
360
+ var Button = function () {
361
+ /**
362
+ * ------------------------------------------------------------------------
363
+ * Constants
364
+ * ------------------------------------------------------------------------
365
+ */
366
+ var NAME = 'button';
367
+ var VERSION = '4.0.0-beta.2';
368
+ var DATA_KEY = 'bs.button';
369
+ var EVENT_KEY = "." + DATA_KEY;
370
+ var DATA_API_KEY = '.data-api';
371
+ var JQUERY_NO_CONFLICT = $.fn[NAME];
372
+ var ClassName = {
373
+ ACTIVE: 'active',
374
+ BUTTON: 'btn',
375
+ FOCUS: 'focus'
376
+ };
377
+ var Selector = {
378
+ DATA_TOGGLE_CARROT: '[data-toggle^="button"]',
379
+ DATA_TOGGLE: '[data-toggle="buttons"]',
380
+ INPUT: 'input',
381
+ ACTIVE: '.active',
382
+ BUTTON: '.btn'
383
+ };
384
+ var Event = {
385
+ CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY,
386
+ FOCUS_BLUR_DATA_API: "focus" + EVENT_KEY + DATA_API_KEY + " " + ("blur" + EVENT_KEY + DATA_API_KEY)
387
+ /**
388
+ * ------------------------------------------------------------------------
389
+ * Class Definition
390
+ * ------------------------------------------------------------------------
391
+ */
392
+
393
+ };
394
+
395
+ var Button =
396
+ /*#__PURE__*/
397
+ function () {
398
+ function Button(element) {
399
+ this._element = element;
400
+ } // getters
401
+
402
+
403
+ var _proto = Button.prototype;
404
+
405
+ // public
406
+ _proto.toggle = function toggle() {
407
+ var triggerChangeEvent = true;
408
+ var addAriaPressed = true;
409
+ var rootElement = $(this._element).closest(Selector.DATA_TOGGLE)[0];
410
+
411
+ if (rootElement) {
412
+ var input = $(this._element).find(Selector.INPUT)[0];
413
+
414
+ if (input) {
415
+ if (input.type === 'radio') {
416
+ if (input.checked && $(this._element).hasClass(ClassName.ACTIVE)) {
417
+ triggerChangeEvent = false;
418
+ } else {
419
+ var activeElement = $(rootElement).find(Selector.ACTIVE)[0];
420
+
421
+ if (activeElement) {
422
+ $(activeElement).removeClass(ClassName.ACTIVE);
423
+ }
424
+ }
425
+ }
426
+
427
+ if (triggerChangeEvent) {
428
+ if (input.hasAttribute('disabled') || rootElement.hasAttribute('disabled') || input.classList.contains('disabled') || rootElement.classList.contains('disabled')) {
429
+ return;
430
+ }
431
+
432
+ input.checked = !$(this._element).hasClass(ClassName.ACTIVE);
433
+ $(input).trigger('change');
434
+ }
435
+
436
+ input.focus();
437
+ addAriaPressed = false;
438
+ }
439
+ }
440
+
441
+ if (addAriaPressed) {
442
+ this._element.setAttribute('aria-pressed', !$(this._element).hasClass(ClassName.ACTIVE));
443
+ }
444
+
445
+ if (triggerChangeEvent) {
446
+ $(this._element).toggleClass(ClassName.ACTIVE);
447
+ }
448
+ };
449
+
450
+ _proto.dispose = function dispose() {
451
+ $.removeData(this._element, DATA_KEY);
452
+ this._element = null;
453
+ }; // static
454
+
455
+
456
+ Button._jQueryInterface = function _jQueryInterface(config) {
457
+ return this.each(function () {
458
+ var data = $(this).data(DATA_KEY);
459
+
460
+ if (!data) {
461
+ data = new Button(this);
462
+ $(this).data(DATA_KEY, data);
463
+ }
464
+
465
+ if (config === 'toggle') {
466
+ data[config]();
467
+ }
468
+ });
469
+ };
470
+
471
+ createClass(Button, null, [{
472
+ key: "VERSION",
473
+ get: function get() {
474
+ return VERSION;
475
+ }
476
+ }]);
477
+ return Button;
478
+ }();
479
+ /**
480
+ * ------------------------------------------------------------------------
481
+ * Data Api implementation
482
+ * ------------------------------------------------------------------------
483
+ */
484
+
485
+
486
+ $(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE_CARROT, function (event) {
487
+ event.preventDefault();
488
+ var button = event.target;
489
+
490
+ if (!$(button).hasClass(ClassName.BUTTON)) {
491
+ button = $(button).closest(Selector.BUTTON);
492
+ }
493
+
494
+ Button._jQueryInterface.call($(button), 'toggle');
495
+ }).on(Event.FOCUS_BLUR_DATA_API, Selector.DATA_TOGGLE_CARROT, function (event) {
496
+ var button = $(event.target).closest(Selector.BUTTON)[0];
497
+ $(button).toggleClass(ClassName.FOCUS, /^focus(in)?$/.test(event.type));
498
+ });
499
+ /**
500
+ * ------------------------------------------------------------------------
501
+ * jQuery
502
+ * ------------------------------------------------------------------------
503
+ */
504
+
505
+ $.fn[NAME] = Button._jQueryInterface;
506
+ $.fn[NAME].Constructor = Button;
507
+
508
+ $.fn[NAME].noConflict = function () {
509
+ $.fn[NAME] = JQUERY_NO_CONFLICT;
510
+ return Button._jQueryInterface;
511
+ };
512
+
513
+ return Button;
514
+ }($);
515
+
516
+ /**
517
+ * --------------------------------------------------------------------------
518
+ * Bootstrap (v4.0.0-beta.2): carousel.js
519
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
520
+ * --------------------------------------------------------------------------
521
+ */
522
+
523
+ var Carousel = function () {
524
+ /**
525
+ * ------------------------------------------------------------------------
526
+ * Constants
527
+ * ------------------------------------------------------------------------
528
+ */
529
+ var NAME = 'carousel';
530
+ var VERSION = '4.0.0-beta.2';
531
+ var DATA_KEY = 'bs.carousel';
532
+ var EVENT_KEY = "." + DATA_KEY;
533
+ var DATA_API_KEY = '.data-api';
534
+ var JQUERY_NO_CONFLICT = $.fn[NAME];
535
+ var TRANSITION_DURATION = 600;
536
+ var ARROW_LEFT_KEYCODE = 37; // KeyboardEvent.which value for left arrow key
537
+
538
+ var ARROW_RIGHT_KEYCODE = 39; // KeyboardEvent.which value for right arrow key
539
+
540
+ var TOUCHEVENT_COMPAT_WAIT = 500; // Time for mouse compat events to fire after touch
541
+
542
+ var Default = {
543
+ interval: 5000,
544
+ keyboard: true,
545
+ slide: false,
546
+ pause: 'hover',
547
+ wrap: true
548
+ };
549
+ var DefaultType = {
550
+ interval: '(number|boolean)',
551
+ keyboard: 'boolean',
552
+ slide: '(boolean|string)',
553
+ pause: '(string|boolean)',
554
+ wrap: 'boolean'
555
+ };
556
+ var Direction = {
557
+ NEXT: 'next',
558
+ PREV: 'prev',
559
+ LEFT: 'left',
560
+ RIGHT: 'right'
561
+ };
562
+ var Event = {
563
+ SLIDE: "slide" + EVENT_KEY,
564
+ SLID: "slid" + EVENT_KEY,
565
+ KEYDOWN: "keydown" + EVENT_KEY,
566
+ MOUSEENTER: "mouseenter" + EVENT_KEY,
567
+ MOUSELEAVE: "mouseleave" + EVENT_KEY,
568
+ TOUCHEND: "touchend" + EVENT_KEY,
569
+ LOAD_DATA_API: "load" + EVENT_KEY + DATA_API_KEY,
570
+ CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY
571
+ };
572
+ var ClassName = {
573
+ CAROUSEL: 'carousel',
574
+ ACTIVE: 'active',
575
+ SLIDE: 'slide',
576
+ RIGHT: 'carousel-item-right',
577
+ LEFT: 'carousel-item-left',
578
+ NEXT: 'carousel-item-next',
579
+ PREV: 'carousel-item-prev',
580
+ ITEM: 'carousel-item'
581
+ };
582
+ var Selector = {
583
+ ACTIVE: '.active',
584
+ ACTIVE_ITEM: '.active.carousel-item',
585
+ ITEM: '.carousel-item',
586
+ NEXT_PREV: '.carousel-item-next, .carousel-item-prev',
587
+ INDICATORS: '.carousel-indicators',
588
+ DATA_SLIDE: '[data-slide], [data-slide-to]',
589
+ DATA_RIDE: '[data-ride="carousel"]'
590
+ /**
591
+ * ------------------------------------------------------------------------
592
+ * Class Definition
593
+ * ------------------------------------------------------------------------
594
+ */
595
+
596
+ };
597
+
598
+ var Carousel =
599
+ /*#__PURE__*/
600
+ function () {
601
+ function Carousel(element, config) {
602
+ this._items = null;
603
+ this._interval = null;
604
+ this._activeElement = null;
605
+ this._isPaused = false;
606
+ this._isSliding = false;
607
+ this.touchTimeout = null;
608
+ this._config = this._getConfig(config);
609
+ this._element = $(element)[0];
610
+ this._indicatorsElement = $(this._element).find(Selector.INDICATORS)[0];
611
+
612
+ this._addEventListeners();
613
+ } // getters
614
+
615
+
616
+ var _proto = Carousel.prototype;
617
+
618
+ // public
619
+ _proto.next = function next() {
620
+ if (!this._isSliding) {
621
+ this._slide(Direction.NEXT);
622
+ }
623
+ };
624
+
625
+ _proto.nextWhenVisible = function nextWhenVisible() {
626
+ // Don't call next when the page isn't visible
627
+ // or the carousel or its parent isn't visible
628
+ if (!document.hidden && $(this._element).is(':visible') && $(this._element).css('visibility') !== 'hidden') {
629
+ this.next();
630
+ }
631
+ };
632
+
633
+ _proto.prev = function prev() {
634
+ if (!this._isSliding) {
635
+ this._slide(Direction.PREV);
636
+ }
637
+ };
638
+
639
+ _proto.pause = function pause(event) {
640
+ if (!event) {
641
+ this._isPaused = true;
642
+ }
643
+
644
+ if ($(this._element).find(Selector.NEXT_PREV)[0] && Util.supportsTransitionEnd()) {
645
+ Util.triggerTransitionEnd(this._element);
646
+ this.cycle(true);
647
+ }
648
+
649
+ clearInterval(this._interval);
650
+ this._interval = null;
651
+ };
652
+
653
+ _proto.cycle = function cycle(event) {
654
+ if (!event) {
655
+ this._isPaused = false;
656
+ }
657
+
658
+ if (this._interval) {
659
+ clearInterval(this._interval);
660
+ this._interval = null;
661
+ }
662
+
663
+ if (this._config.interval && !this._isPaused) {
664
+ this._interval = setInterval((document.visibilityState ? this.nextWhenVisible : this.next).bind(this), this._config.interval);
665
+ }
666
+ };
667
+
668
+ _proto.to = function to(index) {
669
+ var _this = this;
670
+
671
+ this._activeElement = $(this._element).find(Selector.ACTIVE_ITEM)[0];
672
+
673
+ var activeIndex = this._getItemIndex(this._activeElement);
674
+
675
+ if (index > this._items.length - 1 || index < 0) {
676
+ return;
677
+ }
678
+
679
+ if (this._isSliding) {
680
+ $(this._element).one(Event.SLID, function () {
681
+ return _this.to(index);
682
+ });
683
+ return;
684
+ }
685
+
686
+ if (activeIndex === index) {
687
+ this.pause();
688
+ this.cycle();
689
+ return;
690
+ }
691
+
692
+ var direction = index > activeIndex ? Direction.NEXT : Direction.PREV;
693
+
694
+ this._slide(direction, this._items[index]);
695
+ };
696
+
697
+ _proto.dispose = function dispose() {
698
+ $(this._element).off(EVENT_KEY);
699
+ $.removeData(this._element, DATA_KEY);
700
+ this._items = null;
701
+ this._config = null;
702
+ this._element = null;
703
+ this._interval = null;
704
+ this._isPaused = null;
705
+ this._isSliding = null;
706
+ this._activeElement = null;
707
+ this._indicatorsElement = null;
708
+ }; // private
709
+
710
+
711
+ _proto._getConfig = function _getConfig(config) {
712
+ config = $.extend({}, Default, config);
713
+ Util.typeCheckConfig(NAME, config, DefaultType);
714
+ return config;
715
+ };
716
+
717
+ _proto._addEventListeners = function _addEventListeners() {
718
+ var _this2 = this;
719
+
720
+ if (this._config.keyboard) {
721
+ $(this._element).on(Event.KEYDOWN, function (event) {
722
+ return _this2._keydown(event);
723
+ });
724
+ }
725
+
726
+ if (this._config.pause === 'hover') {
727
+ $(this._element).on(Event.MOUSEENTER, function (event) {
728
+ return _this2.pause(event);
729
+ }).on(Event.MOUSELEAVE, function (event) {
730
+ return _this2.cycle(event);
731
+ });
732
+
733
+ if ('ontouchstart' in document.documentElement) {
734
+ // if it's a touch-enabled device, mouseenter/leave are fired as
735
+ // part of the mouse compatibility events on first tap - the carousel
736
+ // would stop cycling until user tapped out of it;
737
+ // here, we listen for touchend, explicitly pause the carousel
738
+ // (as if it's the second time we tap on it, mouseenter compat event
739
+ // is NOT fired) and after a timeout (to allow for mouse compatibility
740
+ // events to fire) we explicitly restart cycling
741
+ $(this._element).on(Event.TOUCHEND, function () {
742
+ _this2.pause();
743
+
744
+ if (_this2.touchTimeout) {
745
+ clearTimeout(_this2.touchTimeout);
746
+ }
747
+
748
+ _this2.touchTimeout = setTimeout(function (event) {
749
+ return _this2.cycle(event);
750
+ }, TOUCHEVENT_COMPAT_WAIT + _this2._config.interval);
751
+ });
752
+ }
753
+ }
754
+ };
755
+
756
+ _proto._keydown = function _keydown(event) {
757
+ if (/input|textarea/i.test(event.target.tagName)) {
758
+ return;
759
+ }
760
+
761
+ switch (event.which) {
762
+ case ARROW_LEFT_KEYCODE:
763
+ event.preventDefault();
764
+ this.prev();
765
+ break;
766
+
767
+ case ARROW_RIGHT_KEYCODE:
768
+ event.preventDefault();
769
+ this.next();
770
+ break;
771
+
772
+ default:
773
+ return;
774
+ }
775
+ };
776
+
777
+ _proto._getItemIndex = function _getItemIndex(element) {
778
+ this._items = $.makeArray($(element).parent().find(Selector.ITEM));
779
+ return this._items.indexOf(element);
780
+ };
781
+
782
+ _proto._getItemByDirection = function _getItemByDirection(direction, activeElement) {
783
+ var isNextDirection = direction === Direction.NEXT;
784
+ var isPrevDirection = direction === Direction.PREV;
785
+
786
+ var activeIndex = this._getItemIndex(activeElement);
787
+
788
+ var lastItemIndex = this._items.length - 1;
789
+ var isGoingToWrap = isPrevDirection && activeIndex === 0 || isNextDirection && activeIndex === lastItemIndex;
790
+
791
+ if (isGoingToWrap && !this._config.wrap) {
792
+ return activeElement;
793
+ }
794
+
795
+ var delta = direction === Direction.PREV ? -1 : 1;
796
+ var itemIndex = (activeIndex + delta) % this._items.length;
797
+ return itemIndex === -1 ? this._items[this._items.length - 1] : this._items[itemIndex];
798
+ };
799
+
800
+ _proto._triggerSlideEvent = function _triggerSlideEvent(relatedTarget, eventDirectionName) {
801
+ var targetIndex = this._getItemIndex(relatedTarget);
802
+
803
+ var fromIndex = this._getItemIndex($(this._element).find(Selector.ACTIVE_ITEM)[0]);
804
+
805
+ var slideEvent = $.Event(Event.SLIDE, {
806
+ relatedTarget: relatedTarget,
807
+ direction: eventDirectionName,
808
+ from: fromIndex,
809
+ to: targetIndex
810
+ });
811
+ $(this._element).trigger(slideEvent);
812
+ return slideEvent;
813
+ };
814
+
815
+ _proto._setActiveIndicatorElement = function _setActiveIndicatorElement(element) {
816
+ if (this._indicatorsElement) {
817
+ $(this._indicatorsElement).find(Selector.ACTIVE).removeClass(ClassName.ACTIVE);
818
+
819
+ var nextIndicator = this._indicatorsElement.children[this._getItemIndex(element)];
820
+
821
+ if (nextIndicator) {
822
+ $(nextIndicator).addClass(ClassName.ACTIVE);
823
+ }
824
+ }
825
+ };
826
+
827
+ _proto._slide = function _slide(direction, element) {
828
+ var _this3 = this;
829
+
830
+ var activeElement = $(this._element).find(Selector.ACTIVE_ITEM)[0];
831
+
832
+ var activeElementIndex = this._getItemIndex(activeElement);
833
+
834
+ var nextElement = element || activeElement && this._getItemByDirection(direction, activeElement);
835
+
836
+ var nextElementIndex = this._getItemIndex(nextElement);
837
+
838
+ var isCycling = Boolean(this._interval);
839
+ var directionalClassName;
840
+ var orderClassName;
841
+ var eventDirectionName;
842
+
843
+ if (direction === Direction.NEXT) {
844
+ directionalClassName = ClassName.LEFT;
845
+ orderClassName = ClassName.NEXT;
846
+ eventDirectionName = Direction.LEFT;
847
+ } else {
848
+ directionalClassName = ClassName.RIGHT;
849
+ orderClassName = ClassName.PREV;
850
+ eventDirectionName = Direction.RIGHT;
851
+ }
852
+
853
+ if (nextElement && $(nextElement).hasClass(ClassName.ACTIVE)) {
854
+ this._isSliding = false;
855
+ return;
856
+ }
857
+
858
+ var slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName);
859
+
860
+ if (slideEvent.isDefaultPrevented()) {
861
+ return;
862
+ }
863
+
864
+ if (!activeElement || !nextElement) {
865
+ // some weirdness is happening, so we bail
866
+ return;
867
+ }
868
+
869
+ this._isSliding = true;
870
+
871
+ if (isCycling) {
872
+ this.pause();
873
+ }
874
+
875
+ this._setActiveIndicatorElement(nextElement);
876
+
877
+ var slidEvent = $.Event(Event.SLID, {
878
+ relatedTarget: nextElement,
879
+ direction: eventDirectionName,
880
+ from: activeElementIndex,
881
+ to: nextElementIndex
882
+ });
883
+
884
+ if (Util.supportsTransitionEnd() && $(this._element).hasClass(ClassName.SLIDE)) {
885
+ $(nextElement).addClass(orderClassName);
886
+ Util.reflow(nextElement);
887
+ $(activeElement).addClass(directionalClassName);
888
+ $(nextElement).addClass(directionalClassName);
889
+ $(activeElement).one(Util.TRANSITION_END, function () {
890
+ $(nextElement).removeClass(directionalClassName + " " + orderClassName).addClass(ClassName.ACTIVE);
891
+ $(activeElement).removeClass(ClassName.ACTIVE + " " + orderClassName + " " + directionalClassName);
892
+ _this3._isSliding = false;
893
+ setTimeout(function () {
894
+ return $(_this3._element).trigger(slidEvent);
895
+ }, 0);
896
+ }).emulateTransitionEnd(TRANSITION_DURATION);
897
+ } else {
898
+ $(activeElement).removeClass(ClassName.ACTIVE);
899
+ $(nextElement).addClass(ClassName.ACTIVE);
900
+ this._isSliding = false;
901
+ $(this._element).trigger(slidEvent);
902
+ }
903
+
904
+ if (isCycling) {
905
+ this.cycle();
906
+ }
907
+ }; // static
908
+
909
+
910
+ Carousel._jQueryInterface = function _jQueryInterface(config) {
911
+ return this.each(function () {
912
+ var data = $(this).data(DATA_KEY);
913
+
914
+ var _config = $.extend({}, Default, $(this).data());
915
+
916
+ if (typeof config === 'object') {
917
+ $.extend(_config, config);
918
+ }
919
+
920
+ var action = typeof config === 'string' ? config : _config.slide;
921
+
922
+ if (!data) {
923
+ data = new Carousel(this, _config);
924
+ $(this).data(DATA_KEY, data);
925
+ }
926
+
927
+ if (typeof config === 'number') {
928
+ data.to(config);
929
+ } else if (typeof action === 'string') {
930
+ if (typeof data[action] === 'undefined') {
931
+ throw new Error("No method named \"" + action + "\"");
932
+ }
933
+
934
+ data[action]();
935
+ } else if (_config.interval) {
936
+ data.pause();
937
+ data.cycle();
938
+ }
939
+ });
940
+ };
941
+
942
+ Carousel._dataApiClickHandler = function _dataApiClickHandler(event) {
943
+ var selector = Util.getSelectorFromElement(this);
944
+
945
+ if (!selector) {
946
+ return;
947
+ }
948
+
949
+ var target = $(selector)[0];
950
+
951
+ if (!target || !$(target).hasClass(ClassName.CAROUSEL)) {
952
+ return;
953
+ }
954
+
955
+ var config = $.extend({}, $(target).data(), $(this).data());
956
+ var slideIndex = this.getAttribute('data-slide-to');
957
+
958
+ if (slideIndex) {
959
+ config.interval = false;
960
+ }
961
+
962
+ Carousel._jQueryInterface.call($(target), config);
963
+
964
+ if (slideIndex) {
965
+ $(target).data(DATA_KEY).to(slideIndex);
966
+ }
967
+
968
+ event.preventDefault();
969
+ };
970
+
971
+ createClass(Carousel, null, [{
972
+ key: "VERSION",
973
+ get: function get() {
974
+ return VERSION;
975
+ }
976
+ }, {
977
+ key: "Default",
978
+ get: function get() {
979
+ return Default;
980
+ }
981
+ }]);
982
+ return Carousel;
983
+ }();
984
+ /**
985
+ * ------------------------------------------------------------------------
986
+ * Data Api implementation
987
+ * ------------------------------------------------------------------------
988
+ */
989
+
990
+
991
+ $(document).on(Event.CLICK_DATA_API, Selector.DATA_SLIDE, Carousel._dataApiClickHandler);
992
+ $(window).on(Event.LOAD_DATA_API, function () {
993
+ $(Selector.DATA_RIDE).each(function () {
994
+ var $carousel = $(this);
995
+
996
+ Carousel._jQueryInterface.call($carousel, $carousel.data());
997
+ });
998
+ });
999
+ /**
1000
+ * ------------------------------------------------------------------------
1001
+ * jQuery
1002
+ * ------------------------------------------------------------------------
1003
+ */
1004
+
1005
+ $.fn[NAME] = Carousel._jQueryInterface;
1006
+ $.fn[NAME].Constructor = Carousel;
1007
+
1008
+ $.fn[NAME].noConflict = function () {
1009
+ $.fn[NAME] = JQUERY_NO_CONFLICT;
1010
+ return Carousel._jQueryInterface;
1011
+ };
1012
+
1013
+ return Carousel;
1014
+ }($);
1015
+
1016
+ /**
1017
+ * --------------------------------------------------------------------------
1018
+ * Bootstrap (v4.0.0-beta.2): collapse.js
1019
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
1020
+ * --------------------------------------------------------------------------
1021
+ */
1022
+
1023
+ var Collapse = function () {
1024
+ /**
1025
+ * ------------------------------------------------------------------------
1026
+ * Constants
1027
+ * ------------------------------------------------------------------------
1028
+ */
1029
+ var NAME = 'collapse';
1030
+ var VERSION = '4.0.0-beta.2';
1031
+ var DATA_KEY = 'bs.collapse';
1032
+ var EVENT_KEY = "." + DATA_KEY;
1033
+ var DATA_API_KEY = '.data-api';
1034
+ var JQUERY_NO_CONFLICT = $.fn[NAME];
1035
+ var TRANSITION_DURATION = 600;
1036
+ var Default = {
1037
+ toggle: true,
1038
+ parent: ''
1039
+ };
1040
+ var DefaultType = {
1041
+ toggle: 'boolean',
1042
+ parent: '(string|element)'
1043
+ };
1044
+ var Event = {
1045
+ SHOW: "show" + EVENT_KEY,
1046
+ SHOWN: "shown" + EVENT_KEY,
1047
+ HIDE: "hide" + EVENT_KEY,
1048
+ HIDDEN: "hidden" + EVENT_KEY,
1049
+ CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY
1050
+ };
1051
+ var ClassName = {
1052
+ SHOW: 'show',
1053
+ COLLAPSE: 'collapse',
1054
+ COLLAPSING: 'collapsing',
1055
+ COLLAPSED: 'collapsed'
1056
+ };
1057
+ var Dimension = {
1058
+ WIDTH: 'width',
1059
+ HEIGHT: 'height'
1060
+ };
1061
+ var Selector = {
1062
+ ACTIVES: '.show, .collapsing',
1063
+ DATA_TOGGLE: '[data-toggle="collapse"]'
1064
+ /**
1065
+ * ------------------------------------------------------------------------
1066
+ * Class Definition
1067
+ * ------------------------------------------------------------------------
1068
+ */
1069
+
1070
+ };
1071
+
1072
+ var Collapse =
1073
+ /*#__PURE__*/
1074
+ function () {
1075
+ function Collapse(element, config) {
1076
+ this._isTransitioning = false;
1077
+ this._element = element;
1078
+ this._config = this._getConfig(config);
1079
+ this._triggerArray = $.makeArray($("[data-toggle=\"collapse\"][href=\"#" + element.id + "\"]," + ("[data-toggle=\"collapse\"][data-target=\"#" + element.id + "\"]")));
1080
+ var tabToggles = $(Selector.DATA_TOGGLE);
1081
+
1082
+ for (var i = 0; i < tabToggles.length; i++) {
1083
+ var elem = tabToggles[i];
1084
+ var selector = Util.getSelectorFromElement(elem);
1085
+
1086
+ if (selector !== null && $(selector).filter(element).length > 0) {
1087
+ this._triggerArray.push(elem);
1088
+ }
1089
+ }
1090
+
1091
+ this._parent = this._config.parent ? this._getParent() : null;
1092
+
1093
+ if (!this._config.parent) {
1094
+ this._addAriaAndCollapsedClass(this._element, this._triggerArray);
1095
+ }
1096
+
1097
+ if (this._config.toggle) {
1098
+ this.toggle();
1099
+ }
1100
+ } // getters
1101
+
1102
+
1103
+ var _proto = Collapse.prototype;
1104
+
1105
+ // public
1106
+ _proto.toggle = function toggle() {
1107
+ if ($(this._element).hasClass(ClassName.SHOW)) {
1108
+ this.hide();
1109
+ } else {
1110
+ this.show();
1111
+ }
1112
+ };
1113
+
1114
+ _proto.show = function show() {
1115
+ var _this = this;
1116
+
1117
+ if (this._isTransitioning || $(this._element).hasClass(ClassName.SHOW)) {
1118
+ return;
1119
+ }
1120
+
1121
+ var actives;
1122
+ var activesData;
1123
+
1124
+ if (this._parent) {
1125
+ actives = $.makeArray($(this._parent).children().children(Selector.ACTIVES));
1126
+
1127
+ if (!actives.length) {
1128
+ actives = null;
1129
+ }
1130
+ }
1131
+
1132
+ if (actives) {
1133
+ activesData = $(actives).data(DATA_KEY);
1134
+
1135
+ if (activesData && activesData._isTransitioning) {
1136
+ return;
1137
+ }
1138
+ }
1139
+
1140
+ var startEvent = $.Event(Event.SHOW);
1141
+ $(this._element).trigger(startEvent);
1142
+
1143
+ if (startEvent.isDefaultPrevented()) {
1144
+ return;
1145
+ }
1146
+
1147
+ if (actives) {
1148
+ Collapse._jQueryInterface.call($(actives), 'hide');
1149
+
1150
+ if (!activesData) {
1151
+ $(actives).data(DATA_KEY, null);
1152
+ }
1153
+ }
1154
+
1155
+ var dimension = this._getDimension();
1156
+
1157
+ $(this._element).removeClass(ClassName.COLLAPSE).addClass(ClassName.COLLAPSING);
1158
+ this._element.style[dimension] = 0;
1159
+
1160
+ if (this._triggerArray.length) {
1161
+ $(this._triggerArray).removeClass(ClassName.COLLAPSED).attr('aria-expanded', true);
1162
+ }
1163
+
1164
+ this.setTransitioning(true);
1165
+
1166
+ var complete = function complete() {
1167
+ $(_this._element).removeClass(ClassName.COLLAPSING).addClass(ClassName.COLLAPSE).addClass(ClassName.SHOW);
1168
+ _this._element.style[dimension] = '';
1169
+
1170
+ _this.setTransitioning(false);
1171
+
1172
+ $(_this._element).trigger(Event.SHOWN);
1173
+ };
1174
+
1175
+ if (!Util.supportsTransitionEnd()) {
1176
+ complete();
1177
+ return;
1178
+ }
1179
+
1180
+ var capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1);
1181
+ var scrollSize = "scroll" + capitalizedDimension;
1182
+ $(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(TRANSITION_DURATION);
1183
+ this._element.style[dimension] = this._element[scrollSize] + "px";
1184
+ };
1185
+
1186
+ _proto.hide = function hide() {
1187
+ var _this2 = this;
1188
+
1189
+ if (this._isTransitioning || !$(this._element).hasClass(ClassName.SHOW)) {
1190
+ return;
1191
+ }
1192
+
1193
+ var startEvent = $.Event(Event.HIDE);
1194
+ $(this._element).trigger(startEvent);
1195
+
1196
+ if (startEvent.isDefaultPrevented()) {
1197
+ return;
1198
+ }
1199
+
1200
+ var dimension = this._getDimension();
1201
+
1202
+ this._element.style[dimension] = this._element.getBoundingClientRect()[dimension] + "px";
1203
+ Util.reflow(this._element);
1204
+ $(this._element).addClass(ClassName.COLLAPSING).removeClass(ClassName.COLLAPSE).removeClass(ClassName.SHOW);
1205
+
1206
+ if (this._triggerArray.length) {
1207
+ for (var i = 0; i < this._triggerArray.length; i++) {
1208
+ var trigger = this._triggerArray[i];
1209
+ var selector = Util.getSelectorFromElement(trigger);
1210
+
1211
+ if (selector !== null) {
1212
+ var $elem = $(selector);
1213
+
1214
+ if (!$elem.hasClass(ClassName.SHOW)) {
1215
+ $(trigger).addClass(ClassName.COLLAPSED).attr('aria-expanded', false);
1216
+ }
1217
+ }
1218
+ }
1219
+ }
1220
+
1221
+ this.setTransitioning(true);
1222
+
1223
+ var complete = function complete() {
1224
+ _this2.setTransitioning(false);
1225
+
1226
+ $(_this2._element).removeClass(ClassName.COLLAPSING).addClass(ClassName.COLLAPSE).trigger(Event.HIDDEN);
1227
+ };
1228
+
1229
+ this._element.style[dimension] = '';
1230
+
1231
+ if (!Util.supportsTransitionEnd()) {
1232
+ complete();
1233
+ return;
1234
+ }
1235
+
1236
+ $(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(TRANSITION_DURATION);
1237
+ };
1238
+
1239
+ _proto.setTransitioning = function setTransitioning(isTransitioning) {
1240
+ this._isTransitioning = isTransitioning;
1241
+ };
1242
+
1243
+ _proto.dispose = function dispose() {
1244
+ $.removeData(this._element, DATA_KEY);
1245
+ this._config = null;
1246
+ this._parent = null;
1247
+ this._element = null;
1248
+ this._triggerArray = null;
1249
+ this._isTransitioning = null;
1250
+ }; // private
1251
+
1252
+
1253
+ _proto._getConfig = function _getConfig(config) {
1254
+ config = $.extend({}, Default, config);
1255
+ config.toggle = Boolean(config.toggle); // coerce string values
1256
+
1257
+ Util.typeCheckConfig(NAME, config, DefaultType);
1258
+ return config;
1259
+ };
1260
+
1261
+ _proto._getDimension = function _getDimension() {
1262
+ var hasWidth = $(this._element).hasClass(Dimension.WIDTH);
1263
+ return hasWidth ? Dimension.WIDTH : Dimension.HEIGHT;
1264
+ };
1265
+
1266
+ _proto._getParent = function _getParent() {
1267
+ var _this3 = this;
1268
+
1269
+ var parent = null;
1270
+
1271
+ if (Util.isElement(this._config.parent)) {
1272
+ parent = this._config.parent; // it's a jQuery object
1273
+
1274
+ if (typeof this._config.parent.jquery !== 'undefined') {
1275
+ parent = this._config.parent[0];
1276
+ }
1277
+ } else {
1278
+ parent = $(this._config.parent)[0];
1279
+ }
1280
+
1281
+ var selector = "[data-toggle=\"collapse\"][data-parent=\"" + this._config.parent + "\"]";
1282
+ $(parent).find(selector).each(function (i, element) {
1283
+ _this3._addAriaAndCollapsedClass(Collapse._getTargetFromElement(element), [element]);
1284
+ });
1285
+ return parent;
1286
+ };
1287
+
1288
+ _proto._addAriaAndCollapsedClass = function _addAriaAndCollapsedClass(element, triggerArray) {
1289
+ if (element) {
1290
+ var isOpen = $(element).hasClass(ClassName.SHOW);
1291
+
1292
+ if (triggerArray.length) {
1293
+ $(triggerArray).toggleClass(ClassName.COLLAPSED, !isOpen).attr('aria-expanded', isOpen);
1294
+ }
1295
+ }
1296
+ }; // static
1297
+
1298
+
1299
+ Collapse._getTargetFromElement = function _getTargetFromElement(element) {
1300
+ var selector = Util.getSelectorFromElement(element);
1301
+ return selector ? $(selector)[0] : null;
1302
+ };
1303
+
1304
+ Collapse._jQueryInterface = function _jQueryInterface(config) {
1305
+ return this.each(function () {
1306
+ var $this = $(this);
1307
+ var data = $this.data(DATA_KEY);
1308
+
1309
+ var _config = $.extend({}, Default, $this.data(), typeof config === 'object' && config);
1310
+
1311
+ if (!data && _config.toggle && /show|hide/.test(config)) {
1312
+ _config.toggle = false;
1313
+ }
1314
+
1315
+ if (!data) {
1316
+ data = new Collapse(this, _config);
1317
+ $this.data(DATA_KEY, data);
1318
+ }
1319
+
1320
+ if (typeof config === 'string') {
1321
+ if (typeof data[config] === 'undefined') {
1322
+ throw new Error("No method named \"" + config + "\"");
1323
+ }
1324
+
1325
+ data[config]();
1326
+ }
1327
+ });
1328
+ };
1329
+
1330
+ createClass(Collapse, null, [{
1331
+ key: "VERSION",
1332
+ get: function get() {
1333
+ return VERSION;
1334
+ }
1335
+ }, {
1336
+ key: "Default",
1337
+ get: function get() {
1338
+ return Default;
1339
+ }
1340
+ }]);
1341
+ return Collapse;
1342
+ }();
1343
+ /**
1344
+ * ------------------------------------------------------------------------
1345
+ * Data Api implementation
1346
+ * ------------------------------------------------------------------------
1347
+ */
1348
+
1349
+
1350
+ $(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
1351
+ // preventDefault only for <a> elements (which change the URL) not inside the collapsible element
1352
+ if (event.currentTarget.tagName === 'A') {
1353
+ event.preventDefault();
1354
+ }
1355
+
1356
+ var $trigger = $(this);
1357
+ var selector = Util.getSelectorFromElement(this);
1358
+ $(selector).each(function () {
1359
+ var $target = $(this);
1360
+ var data = $target.data(DATA_KEY);
1361
+ var config = data ? 'toggle' : $trigger.data();
1362
+
1363
+ Collapse._jQueryInterface.call($target, config);
1364
+ });
1365
+ });
1366
+ /**
1367
+ * ------------------------------------------------------------------------
1368
+ * jQuery
1369
+ * ------------------------------------------------------------------------
1370
+ */
1371
+
1372
+ $.fn[NAME] = Collapse._jQueryInterface;
1373
+ $.fn[NAME].Constructor = Collapse;
1374
+
1375
+ $.fn[NAME].noConflict = function () {
1376
+ $.fn[NAME] = JQUERY_NO_CONFLICT;
1377
+ return Collapse._jQueryInterface;
1378
+ };
1379
+
1380
+ return Collapse;
1381
+ }($);
1382
+
1383
+ /**
1384
+ * --------------------------------------------------------------------------
1385
+ * Bootstrap (v4.0.0-beta.2): dropdown.js
1386
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
1387
+ * --------------------------------------------------------------------------
1388
+ */
1389
+
1390
+ var Dropdown = function () {
1391
+ /**
1392
+ * Check for Popper dependency
1393
+ * Popper - https://popper.js.org
1394
+ */
1395
+ if (typeof Popper === 'undefined') {
1396
+ throw new Error('Bootstrap dropdown require Popper.js (https://popper.js.org)');
1397
+ }
1398
+ /**
1399
+ * ------------------------------------------------------------------------
1400
+ * Constants
1401
+ * ------------------------------------------------------------------------
1402
+ */
1403
+
1404
+
1405
+ var NAME = 'dropdown';
1406
+ var VERSION = '4.0.0-beta.2';
1407
+ var DATA_KEY = 'bs.dropdown';
1408
+ var EVENT_KEY = "." + DATA_KEY;
1409
+ var DATA_API_KEY = '.data-api';
1410
+ var JQUERY_NO_CONFLICT = $.fn[NAME];
1411
+ var ESCAPE_KEYCODE = 27; // KeyboardEvent.which value for Escape (Esc) key
1412
+
1413
+ var SPACE_KEYCODE = 32; // KeyboardEvent.which value for space key
1414
+
1415
+ var TAB_KEYCODE = 9; // KeyboardEvent.which value for tab key
1416
+
1417
+ var ARROW_UP_KEYCODE = 38; // KeyboardEvent.which value for up arrow key
1418
+
1419
+ var ARROW_DOWN_KEYCODE = 40; // KeyboardEvent.which value for down arrow key
1420
+
1421
+ var RIGHT_MOUSE_BUTTON_WHICH = 3; // MouseEvent.which value for the right button (assuming a right-handed mouse)
1422
+
1423
+ var REGEXP_KEYDOWN = new RegExp(ARROW_UP_KEYCODE + "|" + ARROW_DOWN_KEYCODE + "|" + ESCAPE_KEYCODE);
1424
+ var Event = {
1425
+ HIDE: "hide" + EVENT_KEY,
1426
+ HIDDEN: "hidden" + EVENT_KEY,
1427
+ SHOW: "show" + EVENT_KEY,
1428
+ SHOWN: "shown" + EVENT_KEY,
1429
+ CLICK: "click" + EVENT_KEY,
1430
+ CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY,
1431
+ KEYDOWN_DATA_API: "keydown" + EVENT_KEY + DATA_API_KEY,
1432
+ KEYUP_DATA_API: "keyup" + EVENT_KEY + DATA_API_KEY
1433
+ };
1434
+ var ClassName = {
1435
+ DISABLED: 'disabled',
1436
+ SHOW: 'show',
1437
+ DROPUP: 'dropup',
1438
+ MENURIGHT: 'dropdown-menu-right',
1439
+ MENULEFT: 'dropdown-menu-left'
1440
+ };
1441
+ var Selector = {
1442
+ DATA_TOGGLE: '[data-toggle="dropdown"]',
1443
+ FORM_CHILD: '.dropdown form',
1444
+ MENU: '.dropdown-menu',
1445
+ NAVBAR_NAV: '.navbar-nav',
1446
+ VISIBLE_ITEMS: '.dropdown-menu .dropdown-item:not(.disabled)'
1447
+ };
1448
+ var AttachmentMap = {
1449
+ TOP: 'top-start',
1450
+ TOPEND: 'top-end',
1451
+ BOTTOM: 'bottom-start',
1452
+ BOTTOMEND: 'bottom-end'
1453
+ };
1454
+ var Default = {
1455
+ offset: 0,
1456
+ flip: true
1457
+ };
1458
+ var DefaultType = {
1459
+ offset: '(number|string|function)',
1460
+ flip: 'boolean'
1461
+ /**
1462
+ * ------------------------------------------------------------------------
1463
+ * Class Definition
1464
+ * ------------------------------------------------------------------------
1465
+ */
1466
+
1467
+ };
1468
+
1469
+ var Dropdown =
1470
+ /*#__PURE__*/
1471
+ function () {
1472
+ function Dropdown(element, config) {
1473
+ this._element = element;
1474
+ this._popper = null;
1475
+ this._config = this._getConfig(config);
1476
+ this._menu = this._getMenuElement();
1477
+ this._inNavbar = this._detectNavbar();
1478
+
1479
+ this._addEventListeners();
1480
+ } // getters
1481
+
1482
+
1483
+ var _proto = Dropdown.prototype;
1484
+
1485
+ // public
1486
+ _proto.toggle = function toggle() {
1487
+ if (this._element.disabled || $(this._element).hasClass(ClassName.DISABLED)) {
1488
+ return;
1489
+ }
1490
+
1491
+ var parent = Dropdown._getParentFromElement(this._element);
1492
+
1493
+ var isActive = $(this._menu).hasClass(ClassName.SHOW);
1494
+
1495
+ Dropdown._clearMenus();
1496
+
1497
+ if (isActive) {
1498
+ return;
1499
+ }
1500
+
1501
+ var relatedTarget = {
1502
+ relatedTarget: this._element
1503
+ };
1504
+ var showEvent = $.Event(Event.SHOW, relatedTarget);
1505
+ $(parent).trigger(showEvent);
1506
+
1507
+ if (showEvent.isDefaultPrevented()) {
1508
+ return;
1509
+ }
1510
+
1511
+ var element = this._element; // for dropup with alignment we use the parent as popper container
1512
+
1513
+ if ($(parent).hasClass(ClassName.DROPUP)) {
1514
+ if ($(this._menu).hasClass(ClassName.MENULEFT) || $(this._menu).hasClass(ClassName.MENURIGHT)) {
1515
+ element = parent;
1516
+ }
1517
+ }
1518
+
1519
+ this._popper = new Popper(element, this._menu, this._getPopperConfig()); // if this is a touch-enabled device we add extra
1520
+ // empty mouseover listeners to the body's immediate children;
1521
+ // only needed because of broken event delegation on iOS
1522
+ // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html
1523
+
1524
+ if ('ontouchstart' in document.documentElement && !$(parent).closest(Selector.NAVBAR_NAV).length) {
1525
+ $('body').children().on('mouseover', null, $.noop);
1526
+ }
1527
+
1528
+ this._element.focus();
1529
+
1530
+ this._element.setAttribute('aria-expanded', true);
1531
+
1532
+ $(this._menu).toggleClass(ClassName.SHOW);
1533
+ $(parent).toggleClass(ClassName.SHOW).trigger($.Event(Event.SHOWN, relatedTarget));
1534
+ };
1535
+
1536
+ _proto.dispose = function dispose() {
1537
+ $.removeData(this._element, DATA_KEY);
1538
+ $(this._element).off(EVENT_KEY);
1539
+ this._element = null;
1540
+ this._menu = null;
1541
+
1542
+ if (this._popper !== null) {
1543
+ this._popper.destroy();
1544
+ }
1545
+
1546
+ this._popper = null;
1547
+ };
1548
+
1549
+ _proto.update = function update() {
1550
+ this._inNavbar = this._detectNavbar();
1551
+
1552
+ if (this._popper !== null) {
1553
+ this._popper.scheduleUpdate();
1554
+ }
1555
+ }; // private
1556
+
1557
+
1558
+ _proto._addEventListeners = function _addEventListeners() {
1559
+ var _this = this;
1560
+
1561
+ $(this._element).on(Event.CLICK, function (event) {
1562
+ event.preventDefault();
1563
+ event.stopPropagation();
1564
+
1565
+ _this.toggle();
1566
+ });
1567
+ };
1568
+
1569
+ _proto._getConfig = function _getConfig(config) {
1570
+ config = $.extend({}, this.constructor.Default, $(this._element).data(), config);
1571
+ Util.typeCheckConfig(NAME, config, this.constructor.DefaultType);
1572
+ return config;
1573
+ };
1574
+
1575
+ _proto._getMenuElement = function _getMenuElement() {
1576
+ if (!this._menu) {
1577
+ var parent = Dropdown._getParentFromElement(this._element);
1578
+
1579
+ this._menu = $(parent).find(Selector.MENU)[0];
1580
+ }
1581
+
1582
+ return this._menu;
1583
+ };
1584
+
1585
+ _proto._getPlacement = function _getPlacement() {
1586
+ var $parentDropdown = $(this._element).parent();
1587
+ var placement = AttachmentMap.BOTTOM; // Handle dropup
1588
+
1589
+ if ($parentDropdown.hasClass(ClassName.DROPUP)) {
1590
+ placement = AttachmentMap.TOP;
1591
+
1592
+ if ($(this._menu).hasClass(ClassName.MENURIGHT)) {
1593
+ placement = AttachmentMap.TOPEND;
1594
+ }
1595
+ } else if ($(this._menu).hasClass(ClassName.MENURIGHT)) {
1596
+ placement = AttachmentMap.BOTTOMEND;
1597
+ }
1598
+
1599
+ return placement;
1600
+ };
1601
+
1602
+ _proto._detectNavbar = function _detectNavbar() {
1603
+ return $(this._element).closest('.navbar').length > 0;
1604
+ };
1605
+
1606
+ _proto._getPopperConfig = function _getPopperConfig() {
1607
+ var _this2 = this;
1608
+
1609
+ var offsetConf = {};
1610
+
1611
+ if (typeof this._config.offset === 'function') {
1612
+ offsetConf.fn = function (data) {
1613
+ data.offsets = $.extend({}, data.offsets, _this2._config.offset(data.offsets) || {});
1614
+ return data;
1615
+ };
1616
+ } else {
1617
+ offsetConf.offset = this._config.offset;
1618
+ }
1619
+
1620
+ var popperConfig = {
1621
+ placement: this._getPlacement(),
1622
+ modifiers: {
1623
+ offset: offsetConf,
1624
+ flip: {
1625
+ enabled: this._config.flip
1626
+ }
1627
+ } // Disable Popper.js for Dropdown in Navbar
1628
+
1629
+ };
1630
+
1631
+ if (this._inNavbar) {
1632
+ popperConfig.modifiers.applyStyle = {
1633
+ enabled: !this._inNavbar
1634
+ };
1635
+ }
1636
+
1637
+ return popperConfig;
1638
+ }; // static
1639
+
1640
+
1641
+ Dropdown._jQueryInterface = function _jQueryInterface(config) {
1642
+ return this.each(function () {
1643
+ var data = $(this).data(DATA_KEY);
1644
+
1645
+ var _config = typeof config === 'object' ? config : null;
1646
+
1647
+ if (!data) {
1648
+ data = new Dropdown(this, _config);
1649
+ $(this).data(DATA_KEY, data);
1650
+ }
1651
+
1652
+ if (typeof config === 'string') {
1653
+ if (typeof data[config] === 'undefined') {
1654
+ throw new Error("No method named \"" + config + "\"");
1655
+ }
1656
+
1657
+ data[config]();
1658
+ }
1659
+ });
1660
+ };
1661
+
1662
+ Dropdown._clearMenus = function _clearMenus(event) {
1663
+ if (event && (event.which === RIGHT_MOUSE_BUTTON_WHICH || event.type === 'keyup' && event.which !== TAB_KEYCODE)) {
1664
+ return;
1665
+ }
1666
+
1667
+ var toggles = $.makeArray($(Selector.DATA_TOGGLE));
1668
+
1669
+ for (var i = 0; i < toggles.length; i++) {
1670
+ var parent = Dropdown._getParentFromElement(toggles[i]);
1671
+
1672
+ var context = $(toggles[i]).data(DATA_KEY);
1673
+ var relatedTarget = {
1674
+ relatedTarget: toggles[i]
1675
+ };
1676
+
1677
+ if (!context) {
1678
+ continue;
1679
+ }
1680
+
1681
+ var dropdownMenu = context._menu;
1682
+
1683
+ if (!$(parent).hasClass(ClassName.SHOW)) {
1684
+ continue;
1685
+ }
1686
+
1687
+ if (event && (event.type === 'click' && /input|textarea/i.test(event.target.tagName) || event.type === 'keyup' && event.which === TAB_KEYCODE) && $.contains(parent, event.target)) {
1688
+ continue;
1689
+ }
1690
+
1691
+ var hideEvent = $.Event(Event.HIDE, relatedTarget);
1692
+ $(parent).trigger(hideEvent);
1693
+
1694
+ if (hideEvent.isDefaultPrevented()) {
1695
+ continue;
1696
+ } // if this is a touch-enabled device we remove the extra
1697
+ // empty mouseover listeners we added for iOS support
1698
+
1699
+
1700
+ if ('ontouchstart' in document.documentElement) {
1701
+ $('body').children().off('mouseover', null, $.noop);
1702
+ }
1703
+
1704
+ toggles[i].setAttribute('aria-expanded', 'false');
1705
+ $(dropdownMenu).removeClass(ClassName.SHOW);
1706
+ $(parent).removeClass(ClassName.SHOW).trigger($.Event(Event.HIDDEN, relatedTarget));
1707
+ }
1708
+ };
1709
+
1710
+ Dropdown._getParentFromElement = function _getParentFromElement(element) {
1711
+ var parent;
1712
+ var selector = Util.getSelectorFromElement(element);
1713
+
1714
+ if (selector) {
1715
+ parent = $(selector)[0];
1716
+ }
1717
+
1718
+ return parent || element.parentNode;
1719
+ };
1720
+
1721
+ Dropdown._dataApiKeydownHandler = function _dataApiKeydownHandler(event) {
1722
+ if (!REGEXP_KEYDOWN.test(event.which) || /button/i.test(event.target.tagName) && event.which === SPACE_KEYCODE || /input|textarea/i.test(event.target.tagName)) {
1723
+ return;
1724
+ }
1725
+
1726
+ event.preventDefault();
1727
+ event.stopPropagation();
1728
+
1729
+ if (this.disabled || $(this).hasClass(ClassName.DISABLED)) {
1730
+ return;
1731
+ }
1732
+
1733
+ var parent = Dropdown._getParentFromElement(this);
1734
+
1735
+ var isActive = $(parent).hasClass(ClassName.SHOW);
1736
+
1737
+ if (!isActive && (event.which !== ESCAPE_KEYCODE || event.which !== SPACE_KEYCODE) || isActive && (event.which === ESCAPE_KEYCODE || event.which === SPACE_KEYCODE)) {
1738
+ if (event.which === ESCAPE_KEYCODE) {
1739
+ var toggle = $(parent).find(Selector.DATA_TOGGLE)[0];
1740
+ $(toggle).trigger('focus');
1741
+ }
1742
+
1743
+ $(this).trigger('click');
1744
+ return;
1745
+ }
1746
+
1747
+ var items = $(parent).find(Selector.VISIBLE_ITEMS).get();
1748
+
1749
+ if (!items.length) {
1750
+ return;
1751
+ }
1752
+
1753
+ var index = items.indexOf(event.target);
1754
+
1755
+ if (event.which === ARROW_UP_KEYCODE && index > 0) {
1756
+ // up
1757
+ index--;
1758
+ }
1759
+
1760
+ if (event.which === ARROW_DOWN_KEYCODE && index < items.length - 1) {
1761
+ // down
1762
+ index++;
1763
+ }
1764
+
1765
+ if (index < 0) {
1766
+ index = 0;
1767
+ }
1768
+
1769
+ items[index].focus();
1770
+ };
1771
+
1772
+ createClass(Dropdown, null, [{
1773
+ key: "VERSION",
1774
+ get: function get() {
1775
+ return VERSION;
1776
+ }
1777
+ }, {
1778
+ key: "Default",
1779
+ get: function get() {
1780
+ return Default;
1781
+ }
1782
+ }, {
1783
+ key: "DefaultType",
1784
+ get: function get() {
1785
+ return DefaultType;
1786
+ }
1787
+ }]);
1788
+ return Dropdown;
1789
+ }();
1790
+ /**
1791
+ * ------------------------------------------------------------------------
1792
+ * Data Api implementation
1793
+ * ------------------------------------------------------------------------
1794
+ */
1795
+
1796
+
1797
+ $(document).on(Event.KEYDOWN_DATA_API, Selector.DATA_TOGGLE, Dropdown._dataApiKeydownHandler).on(Event.KEYDOWN_DATA_API, Selector.MENU, Dropdown._dataApiKeydownHandler).on(Event.CLICK_DATA_API + " " + Event.KEYUP_DATA_API, Dropdown._clearMenus).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
1798
+ event.preventDefault();
1799
+ event.stopPropagation();
1800
+
1801
+ Dropdown._jQueryInterface.call($(this), 'toggle');
1802
+ }).on(Event.CLICK_DATA_API, Selector.FORM_CHILD, function (e) {
1803
+ e.stopPropagation();
1804
+ });
1805
+ /**
1806
+ * ------------------------------------------------------------------------
1807
+ * jQuery
1808
+ * ------------------------------------------------------------------------
1809
+ */
1810
+
1811
+ $.fn[NAME] = Dropdown._jQueryInterface;
1812
+ $.fn[NAME].Constructor = Dropdown;
1813
+
1814
+ $.fn[NAME].noConflict = function () {
1815
+ $.fn[NAME] = JQUERY_NO_CONFLICT;
1816
+ return Dropdown._jQueryInterface;
1817
+ };
1818
+
1819
+ return Dropdown;
1820
+ }($, Popper);
1821
+
1822
+ /**
1823
+ * --------------------------------------------------------------------------
1824
+ * Bootstrap (v4.0.0-beta.2): modal.js
1825
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
1826
+ * --------------------------------------------------------------------------
1827
+ */
1828
+
1829
+ var Modal = function () {
1830
+ /**
1831
+ * ------------------------------------------------------------------------
1832
+ * Constants
1833
+ * ------------------------------------------------------------------------
1834
+ */
1835
+ var NAME = 'modal';
1836
+ var VERSION = '4.0.0-beta.2';
1837
+ var DATA_KEY = 'bs.modal';
1838
+ var EVENT_KEY = "." + DATA_KEY;
1839
+ var DATA_API_KEY = '.data-api';
1840
+ var JQUERY_NO_CONFLICT = $.fn[NAME];
1841
+ var TRANSITION_DURATION = 300;
1842
+ var BACKDROP_TRANSITION_DURATION = 150;
1843
+ var ESCAPE_KEYCODE = 27; // KeyboardEvent.which value for Escape (Esc) key
1844
+
1845
+ var Default = {
1846
+ backdrop: true,
1847
+ keyboard: true,
1848
+ focus: true,
1849
+ show: true
1850
+ };
1851
+ var DefaultType = {
1852
+ backdrop: '(boolean|string)',
1853
+ keyboard: 'boolean',
1854
+ focus: 'boolean',
1855
+ show: 'boolean'
1856
+ };
1857
+ var Event = {
1858
+ HIDE: "hide" + EVENT_KEY,
1859
+ HIDDEN: "hidden" + EVENT_KEY,
1860
+ SHOW: "show" + EVENT_KEY,
1861
+ SHOWN: "shown" + EVENT_KEY,
1862
+ FOCUSIN: "focusin" + EVENT_KEY,
1863
+ RESIZE: "resize" + EVENT_KEY,
1864
+ CLICK_DISMISS: "click.dismiss" + EVENT_KEY,
1865
+ KEYDOWN_DISMISS: "keydown.dismiss" + EVENT_KEY,
1866
+ MOUSEUP_DISMISS: "mouseup.dismiss" + EVENT_KEY,
1867
+ MOUSEDOWN_DISMISS: "mousedown.dismiss" + EVENT_KEY,
1868
+ CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY
1869
+ };
1870
+ var ClassName = {
1871
+ SCROLLBAR_MEASURER: 'modal-scrollbar-measure',
1872
+ BACKDROP: 'modal-backdrop',
1873
+ OPEN: 'modal-open',
1874
+ FADE: 'fade',
1875
+ SHOW: 'show'
1876
+ };
1877
+ var Selector = {
1878
+ DIALOG: '.modal-dialog',
1879
+ DATA_TOGGLE: '[data-toggle="modal"]',
1880
+ DATA_DISMISS: '[data-dismiss="modal"]',
1881
+ FIXED_CONTENT: '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top',
1882
+ STICKY_CONTENT: '.sticky-top',
1883
+ NAVBAR_TOGGLER: '.navbar-toggler'
1884
+ /**
1885
+ * ------------------------------------------------------------------------
1886
+ * Class Definition
1887
+ * ------------------------------------------------------------------------
1888
+ */
1889
+
1890
+ };
1891
+
1892
+ var Modal =
1893
+ /*#__PURE__*/
1894
+ function () {
1895
+ function Modal(element, config) {
1896
+ this._config = this._getConfig(config);
1897
+ this._element = element;
1898
+ this._dialog = $(element).find(Selector.DIALOG)[0];
1899
+ this._backdrop = null;
1900
+ this._isShown = false;
1901
+ this._isBodyOverflowing = false;
1902
+ this._ignoreBackdropClick = false;
1903
+ this._originalBodyPadding = 0;
1904
+ this._scrollbarWidth = 0;
1905
+ } // getters
1906
+
1907
+
1908
+ var _proto = Modal.prototype;
1909
+
1910
+ // public
1911
+ _proto.toggle = function toggle(relatedTarget) {
1912
+ return this._isShown ? this.hide() : this.show(relatedTarget);
1913
+ };
1914
+
1915
+ _proto.show = function show(relatedTarget) {
1916
+ var _this = this;
1917
+
1918
+ if (this._isTransitioning || this._isShown) {
1919
+ return;
1920
+ }
1921
+
1922
+ if (Util.supportsTransitionEnd() && $(this._element).hasClass(ClassName.FADE)) {
1923
+ this._isTransitioning = true;
1924
+ }
1925
+
1926
+ var showEvent = $.Event(Event.SHOW, {
1927
+ relatedTarget: relatedTarget
1928
+ });
1929
+ $(this._element).trigger(showEvent);
1930
+
1931
+ if (this._isShown || showEvent.isDefaultPrevented()) {
1932
+ return;
1933
+ }
1934
+
1935
+ this._isShown = true;
1936
+
1937
+ this._checkScrollbar();
1938
+
1939
+ this._setScrollbar();
1940
+
1941
+ this._adjustDialog();
1942
+
1943
+ $(document.body).addClass(ClassName.OPEN);
1944
+
1945
+ this._setEscapeEvent();
1946
+
1947
+ this._setResizeEvent();
1948
+
1949
+ $(this._element).on(Event.CLICK_DISMISS, Selector.DATA_DISMISS, function (event) {
1950
+ return _this.hide(event);
1951
+ });
1952
+ $(this._dialog).on(Event.MOUSEDOWN_DISMISS, function () {
1953
+ $(_this._element).one(Event.MOUSEUP_DISMISS, function (event) {
1954
+ if ($(event.target).is(_this._element)) {
1955
+ _this._ignoreBackdropClick = true;
1956
+ }
1957
+ });
1958
+ });
1959
+
1960
+ this._showBackdrop(function () {
1961
+ return _this._showElement(relatedTarget);
1962
+ });
1963
+ };
1964
+
1965
+ _proto.hide = function hide(event) {
1966
+ var _this2 = this;
1967
+
1968
+ if (event) {
1969
+ event.preventDefault();
1970
+ }
1971
+
1972
+ if (this._isTransitioning || !this._isShown) {
1973
+ return;
1974
+ }
1975
+
1976
+ var hideEvent = $.Event(Event.HIDE);
1977
+ $(this._element).trigger(hideEvent);
1978
+
1979
+ if (!this._isShown || hideEvent.isDefaultPrevented()) {
1980
+ return;
1981
+ }
1982
+
1983
+ this._isShown = false;
1984
+ var transition = Util.supportsTransitionEnd() && $(this._element).hasClass(ClassName.FADE);
1985
+
1986
+ if (transition) {
1987
+ this._isTransitioning = true;
1988
+ }
1989
+
1990
+ this._setEscapeEvent();
1991
+
1992
+ this._setResizeEvent();
1993
+
1994
+ $(document).off(Event.FOCUSIN);
1995
+ $(this._element).removeClass(ClassName.SHOW);
1996
+ $(this._element).off(Event.CLICK_DISMISS);
1997
+ $(this._dialog).off(Event.MOUSEDOWN_DISMISS);
1998
+
1999
+ if (transition) {
2000
+ $(this._element).one(Util.TRANSITION_END, function (event) {
2001
+ return _this2._hideModal(event);
2002
+ }).emulateTransitionEnd(TRANSITION_DURATION);
2003
+ } else {
2004
+ this._hideModal();
2005
+ }
2006
+ };
2007
+
2008
+ _proto.dispose = function dispose() {
2009
+ $.removeData(this._element, DATA_KEY);
2010
+ $(window, document, this._element, this._backdrop).off(EVENT_KEY);
2011
+ this._config = null;
2012
+ this._element = null;
2013
+ this._dialog = null;
2014
+ this._backdrop = null;
2015
+ this._isShown = null;
2016
+ this._isBodyOverflowing = null;
2017
+ this._ignoreBackdropClick = null;
2018
+ this._scrollbarWidth = null;
2019
+ };
2020
+
2021
+ _proto.handleUpdate = function handleUpdate() {
2022
+ this._adjustDialog();
2023
+ }; // private
2024
+
2025
+
2026
+ _proto._getConfig = function _getConfig(config) {
2027
+ config = $.extend({}, Default, config);
2028
+ Util.typeCheckConfig(NAME, config, DefaultType);
2029
+ return config;
2030
+ };
2031
+
2032
+ _proto._showElement = function _showElement(relatedTarget) {
2033
+ var _this3 = this;
2034
+
2035
+ var transition = Util.supportsTransitionEnd() && $(this._element).hasClass(ClassName.FADE);
2036
+
2037
+ if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {
2038
+ // don't move modals dom position
2039
+ document.body.appendChild(this._element);
2040
+ }
2041
+
2042
+ this._element.style.display = 'block';
2043
+
2044
+ this._element.removeAttribute('aria-hidden');
2045
+
2046
+ this._element.scrollTop = 0;
2047
+
2048
+ if (transition) {
2049
+ Util.reflow(this._element);
2050
+ }
2051
+
2052
+ $(this._element).addClass(ClassName.SHOW);
2053
+
2054
+ if (this._config.focus) {
2055
+ this._enforceFocus();
2056
+ }
2057
+
2058
+ var shownEvent = $.Event(Event.SHOWN, {
2059
+ relatedTarget: relatedTarget
2060
+ });
2061
+
2062
+ var transitionComplete = function transitionComplete() {
2063
+ if (_this3._config.focus) {
2064
+ _this3._element.focus();
2065
+ }
2066
+
2067
+ _this3._isTransitioning = false;
2068
+ $(_this3._element).trigger(shownEvent);
2069
+ };
2070
+
2071
+ if (transition) {
2072
+ $(this._dialog).one(Util.TRANSITION_END, transitionComplete).emulateTransitionEnd(TRANSITION_DURATION);
2073
+ } else {
2074
+ transitionComplete();
2075
+ }
2076
+ };
2077
+
2078
+ _proto._enforceFocus = function _enforceFocus() {
2079
+ var _this4 = this;
2080
+
2081
+ $(document).off(Event.FOCUSIN) // guard against infinite focus loop
2082
+ .on(Event.FOCUSIN, function (event) {
2083
+ if (document !== event.target && _this4._element !== event.target && !$(_this4._element).has(event.target).length) {
2084
+ _this4._element.focus();
2085
+ }
2086
+ });
2087
+ };
2088
+
2089
+ _proto._setEscapeEvent = function _setEscapeEvent() {
2090
+ var _this5 = this;
2091
+
2092
+ if (this._isShown && this._config.keyboard) {
2093
+ $(this._element).on(Event.KEYDOWN_DISMISS, function (event) {
2094
+ if (event.which === ESCAPE_KEYCODE) {
2095
+ event.preventDefault();
2096
+
2097
+ _this5.hide();
2098
+ }
2099
+ });
2100
+ } else if (!this._isShown) {
2101
+ $(this._element).off(Event.KEYDOWN_DISMISS);
2102
+ }
2103
+ };
2104
+
2105
+ _proto._setResizeEvent = function _setResizeEvent() {
2106
+ var _this6 = this;
2107
+
2108
+ if (this._isShown) {
2109
+ $(window).on(Event.RESIZE, function (event) {
2110
+ return _this6.handleUpdate(event);
2111
+ });
2112
+ } else {
2113
+ $(window).off(Event.RESIZE);
2114
+ }
2115
+ };
2116
+
2117
+ _proto._hideModal = function _hideModal() {
2118
+ var _this7 = this;
2119
+
2120
+ this._element.style.display = 'none';
2121
+
2122
+ this._element.setAttribute('aria-hidden', true);
2123
+
2124
+ this._isTransitioning = false;
2125
+
2126
+ this._showBackdrop(function () {
2127
+ $(document.body).removeClass(ClassName.OPEN);
2128
+
2129
+ _this7._resetAdjustments();
2130
+
2131
+ _this7._resetScrollbar();
2132
+
2133
+ $(_this7._element).trigger(Event.HIDDEN);
2134
+ });
2135
+ };
2136
+
2137
+ _proto._removeBackdrop = function _removeBackdrop() {
2138
+ if (this._backdrop) {
2139
+ $(this._backdrop).remove();
2140
+ this._backdrop = null;
2141
+ }
2142
+ };
2143
+
2144
+ _proto._showBackdrop = function _showBackdrop(callback) {
2145
+ var _this8 = this;
2146
+
2147
+ var animate = $(this._element).hasClass(ClassName.FADE) ? ClassName.FADE : '';
2148
+
2149
+ if (this._isShown && this._config.backdrop) {
2150
+ var doAnimate = Util.supportsTransitionEnd() && animate;
2151
+ this._backdrop = document.createElement('div');
2152
+ this._backdrop.className = ClassName.BACKDROP;
2153
+
2154
+ if (animate) {
2155
+ $(this._backdrop).addClass(animate);
2156
+ }
2157
+
2158
+ $(this._backdrop).appendTo(document.body);
2159
+ $(this._element).on(Event.CLICK_DISMISS, function (event) {
2160
+ if (_this8._ignoreBackdropClick) {
2161
+ _this8._ignoreBackdropClick = false;
2162
+ return;
2163
+ }
2164
+
2165
+ if (event.target !== event.currentTarget) {
2166
+ return;
2167
+ }
2168
+
2169
+ if (_this8._config.backdrop === 'static') {
2170
+ _this8._element.focus();
2171
+ } else {
2172
+ _this8.hide();
2173
+ }
2174
+ });
2175
+
2176
+ if (doAnimate) {
2177
+ Util.reflow(this._backdrop);
2178
+ }
2179
+
2180
+ $(this._backdrop).addClass(ClassName.SHOW);
2181
+
2182
+ if (!callback) {
2183
+ return;
2184
+ }
2185
+
2186
+ if (!doAnimate) {
2187
+ callback();
2188
+ return;
2189
+ }
2190
+
2191
+ $(this._backdrop).one(Util.TRANSITION_END, callback).emulateTransitionEnd(BACKDROP_TRANSITION_DURATION);
2192
+ } else if (!this._isShown && this._backdrop) {
2193
+ $(this._backdrop).removeClass(ClassName.SHOW);
2194
+
2195
+ var callbackRemove = function callbackRemove() {
2196
+ _this8._removeBackdrop();
2197
+
2198
+ if (callback) {
2199
+ callback();
2200
+ }
2201
+ };
2202
+
2203
+ if (Util.supportsTransitionEnd() && $(this._element).hasClass(ClassName.FADE)) {
2204
+ $(this._backdrop).one(Util.TRANSITION_END, callbackRemove).emulateTransitionEnd(BACKDROP_TRANSITION_DURATION);
2205
+ } else {
2206
+ callbackRemove();
2207
+ }
2208
+ } else if (callback) {
2209
+ callback();
2210
+ }
2211
+ }; // ----------------------------------------------------------------------
2212
+ // the following methods are used to handle overflowing modals
2213
+ // todo (fat): these should probably be refactored out of modal.js
2214
+ // ----------------------------------------------------------------------
2215
+
2216
+
2217
+ _proto._adjustDialog = function _adjustDialog() {
2218
+ var isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight;
2219
+
2220
+ if (!this._isBodyOverflowing && isModalOverflowing) {
2221
+ this._element.style.paddingLeft = this._scrollbarWidth + "px";
2222
+ }
2223
+
2224
+ if (this._isBodyOverflowing && !isModalOverflowing) {
2225
+ this._element.style.paddingRight = this._scrollbarWidth + "px";
2226
+ }
2227
+ };
2228
+
2229
+ _proto._resetAdjustments = function _resetAdjustments() {
2230
+ this._element.style.paddingLeft = '';
2231
+ this._element.style.paddingRight = '';
2232
+ };
2233
+
2234
+ _proto._checkScrollbar = function _checkScrollbar() {
2235
+ var rect = document.body.getBoundingClientRect();
2236
+ this._isBodyOverflowing = rect.left + rect.right < window.innerWidth;
2237
+ this._scrollbarWidth = this._getScrollbarWidth();
2238
+ };
2239
+
2240
+ _proto._setScrollbar = function _setScrollbar() {
2241
+ var _this9 = this;
2242
+
2243
+ if (this._isBodyOverflowing) {
2244
+ // Note: DOMNode.style.paddingRight returns the actual value or '' if not set
2245
+ // while $(DOMNode).css('padding-right') returns the calculated value or 0 if not set
2246
+ // Adjust fixed content padding
2247
+ $(Selector.FIXED_CONTENT).each(function (index, element) {
2248
+ var actualPadding = $(element)[0].style.paddingRight;
2249
+ var calculatedPadding = $(element).css('padding-right');
2250
+ $(element).data('padding-right', actualPadding).css('padding-right', parseFloat(calculatedPadding) + _this9._scrollbarWidth + "px");
2251
+ }); // Adjust sticky content margin
2252
+
2253
+ $(Selector.STICKY_CONTENT).each(function (index, element) {
2254
+ var actualMargin = $(element)[0].style.marginRight;
2255
+ var calculatedMargin = $(element).css('margin-right');
2256
+ $(element).data('margin-right', actualMargin).css('margin-right', parseFloat(calculatedMargin) - _this9._scrollbarWidth + "px");
2257
+ }); // Adjust navbar-toggler margin
2258
+
2259
+ $(Selector.NAVBAR_TOGGLER).each(function (index, element) {
2260
+ var actualMargin = $(element)[0].style.marginRight;
2261
+ var calculatedMargin = $(element).css('margin-right');
2262
+ $(element).data('margin-right', actualMargin).css('margin-right', parseFloat(calculatedMargin) + _this9._scrollbarWidth + "px");
2263
+ }); // Adjust body padding
2264
+
2265
+ var actualPadding = document.body.style.paddingRight;
2266
+ var calculatedPadding = $('body').css('padding-right');
2267
+ $('body').data('padding-right', actualPadding).css('padding-right', parseFloat(calculatedPadding) + this._scrollbarWidth + "px");
2268
+ }
2269
+ };
2270
+
2271
+ _proto._resetScrollbar = function _resetScrollbar() {
2272
+ // Restore fixed content padding
2273
+ $(Selector.FIXED_CONTENT).each(function (index, element) {
2274
+ var padding = $(element).data('padding-right');
2275
+
2276
+ if (typeof padding !== 'undefined') {
2277
+ $(element).css('padding-right', padding).removeData('padding-right');
2278
+ }
2279
+ }); // Restore sticky content and navbar-toggler margin
2280
+
2281
+ $(Selector.STICKY_CONTENT + ", " + Selector.NAVBAR_TOGGLER).each(function (index, element) {
2282
+ var margin = $(element).data('margin-right');
2283
+
2284
+ if (typeof margin !== 'undefined') {
2285
+ $(element).css('margin-right', margin).removeData('margin-right');
2286
+ }
2287
+ }); // Restore body padding
2288
+
2289
+ var padding = $('body').data('padding-right');
2290
+
2291
+ if (typeof padding !== 'undefined') {
2292
+ $('body').css('padding-right', padding).removeData('padding-right');
2293
+ }
2294
+ };
2295
+
2296
+ _proto._getScrollbarWidth = function _getScrollbarWidth() {
2297
+ // thx d.walsh
2298
+ var scrollDiv = document.createElement('div');
2299
+ scrollDiv.className = ClassName.SCROLLBAR_MEASURER;
2300
+ document.body.appendChild(scrollDiv);
2301
+ var scrollbarWidth = scrollDiv.getBoundingClientRect().width - scrollDiv.clientWidth;
2302
+ document.body.removeChild(scrollDiv);
2303
+ return scrollbarWidth;
2304
+ }; // static
2305
+
2306
+
2307
+ Modal._jQueryInterface = function _jQueryInterface(config, relatedTarget) {
2308
+ return this.each(function () {
2309
+ var data = $(this).data(DATA_KEY);
2310
+
2311
+ var _config = $.extend({}, Modal.Default, $(this).data(), typeof config === 'object' && config);
2312
+
2313
+ if (!data) {
2314
+ data = new Modal(this, _config);
2315
+ $(this).data(DATA_KEY, data);
2316
+ }
2317
+
2318
+ if (typeof config === 'string') {
2319
+ if (typeof data[config] === 'undefined') {
2320
+ throw new Error("No method named \"" + config + "\"");
2321
+ }
2322
+
2323
+ data[config](relatedTarget);
2324
+ } else if (_config.show) {
2325
+ data.show(relatedTarget);
2326
+ }
2327
+ });
2328
+ };
2329
+
2330
+ createClass(Modal, null, [{
2331
+ key: "VERSION",
2332
+ get: function get() {
2333
+ return VERSION;
2334
+ }
2335
+ }, {
2336
+ key: "Default",
2337
+ get: function get() {
2338
+ return Default;
2339
+ }
2340
+ }]);
2341
+ return Modal;
2342
+ }();
2343
+ /**
2344
+ * ------------------------------------------------------------------------
2345
+ * Data Api implementation
2346
+ * ------------------------------------------------------------------------
2347
+ */
2348
+
2349
+
2350
+ $(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
2351
+ var _this10 = this;
2352
+
2353
+ var target;
2354
+ var selector = Util.getSelectorFromElement(this);
2355
+
2356
+ if (selector) {
2357
+ target = $(selector)[0];
2358
+ }
2359
+
2360
+ var config = $(target).data(DATA_KEY) ? 'toggle' : $.extend({}, $(target).data(), $(this).data());
2361
+
2362
+ if (this.tagName === 'A' || this.tagName === 'AREA') {
2363
+ event.preventDefault();
2364
+ }
2365
+
2366
+ var $target = $(target).one(Event.SHOW, function (showEvent) {
2367
+ if (showEvent.isDefaultPrevented()) {
2368
+ // only register focus restorer if modal will actually get shown
2369
+ return;
2370
+ }
2371
+
2372
+ $target.one(Event.HIDDEN, function () {
2373
+ if ($(_this10).is(':visible')) {
2374
+ _this10.focus();
2375
+ }
2376
+ });
2377
+ });
2378
+
2379
+ Modal._jQueryInterface.call($(target), config, this);
2380
+ });
2381
+ /**
2382
+ * ------------------------------------------------------------------------
2383
+ * jQuery
2384
+ * ------------------------------------------------------------------------
2385
+ */
2386
+
2387
+ $.fn[NAME] = Modal._jQueryInterface;
2388
+ $.fn[NAME].Constructor = Modal;
2389
+
2390
+ $.fn[NAME].noConflict = function () {
2391
+ $.fn[NAME] = JQUERY_NO_CONFLICT;
2392
+ return Modal._jQueryInterface;
2393
+ };
2394
+
2395
+ return Modal;
2396
+ }($);
2397
+
2398
+ /**
2399
+ * --------------------------------------------------------------------------
2400
+ * Bootstrap (v4.0.0-beta.2): tooltip.js
2401
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
2402
+ * --------------------------------------------------------------------------
2403
+ */
2404
+
2405
+ var Tooltip = function () {
2406
+ /**
2407
+ * Check for Popper dependency
2408
+ * Popper - https://popper.js.org
2409
+ */
2410
+ if (typeof Popper === 'undefined') {
2411
+ throw new Error('Bootstrap tooltips require Popper.js (https://popper.js.org)');
2412
+ }
2413
+ /**
2414
+ * ------------------------------------------------------------------------
2415
+ * Constants
2416
+ * ------------------------------------------------------------------------
2417
+ */
2418
+
2419
+
2420
+ var NAME = 'tooltip';
2421
+ var VERSION = '4.0.0-beta.2';
2422
+ var DATA_KEY = 'bs.tooltip';
2423
+ var EVENT_KEY = "." + DATA_KEY;
2424
+ var JQUERY_NO_CONFLICT = $.fn[NAME];
2425
+ var TRANSITION_DURATION = 150;
2426
+ var CLASS_PREFIX = 'bs-tooltip';
2427
+ var BSCLS_PREFIX_REGEX = new RegExp("(^|\\s)" + CLASS_PREFIX + "\\S+", 'g');
2428
+ var DefaultType = {
2429
+ animation: 'boolean',
2430
+ template: 'string',
2431
+ title: '(string|element|function)',
2432
+ trigger: 'string',
2433
+ delay: '(number|object)',
2434
+ html: 'boolean',
2435
+ selector: '(string|boolean)',
2436
+ placement: '(string|function)',
2437
+ offset: '(number|string)',
2438
+ container: '(string|element|boolean)',
2439
+ fallbackPlacement: '(string|array)'
2440
+ };
2441
+ var AttachmentMap = {
2442
+ AUTO: 'auto',
2443
+ TOP: 'top',
2444
+ RIGHT: 'right',
2445
+ BOTTOM: 'bottom',
2446
+ LEFT: 'left'
2447
+ };
2448
+ var Default = {
2449
+ animation: true,
2450
+ template: '<div class="tooltip" role="tooltip">' + '<div class="arrow"></div>' + '<div class="tooltip-inner"></div></div>',
2451
+ trigger: 'hover focus',
2452
+ title: '',
2453
+ delay: 0,
2454
+ html: false,
2455
+ selector: false,
2456
+ placement: 'top',
2457
+ offset: 0,
2458
+ container: false,
2459
+ fallbackPlacement: 'flip'
2460
+ };
2461
+ var HoverState = {
2462
+ SHOW: 'show',
2463
+ OUT: 'out'
2464
+ };
2465
+ var Event = {
2466
+ HIDE: "hide" + EVENT_KEY,
2467
+ HIDDEN: "hidden" + EVENT_KEY,
2468
+ SHOW: "show" + EVENT_KEY,
2469
+ SHOWN: "shown" + EVENT_KEY,
2470
+ INSERTED: "inserted" + EVENT_KEY,
2471
+ CLICK: "click" + EVENT_KEY,
2472
+ FOCUSIN: "focusin" + EVENT_KEY,
2473
+ FOCUSOUT: "focusout" + EVENT_KEY,
2474
+ MOUSEENTER: "mouseenter" + EVENT_KEY,
2475
+ MOUSELEAVE: "mouseleave" + EVENT_KEY
2476
+ };
2477
+ var ClassName = {
2478
+ FADE: 'fade',
2479
+ SHOW: 'show'
2480
+ };
2481
+ var Selector = {
2482
+ TOOLTIP: '.tooltip',
2483
+ TOOLTIP_INNER: '.tooltip-inner',
2484
+ ARROW: '.arrow'
2485
+ };
2486
+ var Trigger = {
2487
+ HOVER: 'hover',
2488
+ FOCUS: 'focus',
2489
+ CLICK: 'click',
2490
+ MANUAL: 'manual'
2491
+ /**
2492
+ * ------------------------------------------------------------------------
2493
+ * Class Definition
2494
+ * ------------------------------------------------------------------------
2495
+ */
2496
+
2497
+ };
2498
+
2499
+ var Tooltip =
2500
+ /*#__PURE__*/
2501
+ function () {
2502
+ function Tooltip(element, config) {
2503
+ // private
2504
+ this._isEnabled = true;
2505
+ this._timeout = 0;
2506
+ this._hoverState = '';
2507
+ this._activeTrigger = {};
2508
+ this._popper = null; // protected
2509
+
2510
+ this.element = element;
2511
+ this.config = this._getConfig(config);
2512
+ this.tip = null;
2513
+
2514
+ this._setListeners();
2515
+ } // getters
2516
+
2517
+
2518
+ var _proto = Tooltip.prototype;
2519
+
2520
+ // public
2521
+ _proto.enable = function enable() {
2522
+ this._isEnabled = true;
2523
+ };
2524
+
2525
+ _proto.disable = function disable() {
2526
+ this._isEnabled = false;
2527
+ };
2528
+
2529
+ _proto.toggleEnabled = function toggleEnabled() {
2530
+ this._isEnabled = !this._isEnabled;
2531
+ };
2532
+
2533
+ _proto.toggle = function toggle(event) {
2534
+ if (!this._isEnabled) {
2535
+ return;
2536
+ }
2537
+
2538
+ if (event) {
2539
+ var dataKey = this.constructor.DATA_KEY;
2540
+ var context = $(event.currentTarget).data(dataKey);
2541
+
2542
+ if (!context) {
2543
+ context = new this.constructor(event.currentTarget, this._getDelegateConfig());
2544
+ $(event.currentTarget).data(dataKey, context);
2545
+ }
2546
+
2547
+ context._activeTrigger.click = !context._activeTrigger.click;
2548
+
2549
+ if (context._isWithActiveTrigger()) {
2550
+ context._enter(null, context);
2551
+ } else {
2552
+ context._leave(null, context);
2553
+ }
2554
+ } else {
2555
+ if ($(this.getTipElement()).hasClass(ClassName.SHOW)) {
2556
+ this._leave(null, this);
2557
+
2558
+ return;
2559
+ }
2560
+
2561
+ this._enter(null, this);
2562
+ }
2563
+ };
2564
+
2565
+ _proto.dispose = function dispose() {
2566
+ clearTimeout(this._timeout);
2567
+ $.removeData(this.element, this.constructor.DATA_KEY);
2568
+ $(this.element).off(this.constructor.EVENT_KEY);
2569
+ $(this.element).closest('.modal').off('hide.bs.modal');
2570
+
2571
+ if (this.tip) {
2572
+ $(this.tip).remove();
2573
+ }
2574
+
2575
+ this._isEnabled = null;
2576
+ this._timeout = null;
2577
+ this._hoverState = null;
2578
+ this._activeTrigger = null;
2579
+
2580
+ if (this._popper !== null) {
2581
+ this._popper.destroy();
2582
+ }
2583
+
2584
+ this._popper = null;
2585
+ this.element = null;
2586
+ this.config = null;
2587
+ this.tip = null;
2588
+ };
2589
+
2590
+ _proto.show = function show() {
2591
+ var _this = this;
2592
+
2593
+ if ($(this.element).css('display') === 'none') {
2594
+ throw new Error('Please use show on visible elements');
2595
+ }
2596
+
2597
+ var showEvent = $.Event(this.constructor.Event.SHOW);
2598
+
2599
+ if (this.isWithContent() && this._isEnabled) {
2600
+ $(this.element).trigger(showEvent);
2601
+ var isInTheDom = $.contains(this.element.ownerDocument.documentElement, this.element);
2602
+
2603
+ if (showEvent.isDefaultPrevented() || !isInTheDom) {
2604
+ return;
2605
+ }
2606
+
2607
+ var tip = this.getTipElement();
2608
+ var tipId = Util.getUID(this.constructor.NAME);
2609
+ tip.setAttribute('id', tipId);
2610
+ this.element.setAttribute('aria-describedby', tipId);
2611
+ this.setContent();
2612
+
2613
+ if (this.config.animation) {
2614
+ $(tip).addClass(ClassName.FADE);
2615
+ }
2616
+
2617
+ var placement = typeof this.config.placement === 'function' ? this.config.placement.call(this, tip, this.element) : this.config.placement;
2618
+
2619
+ var attachment = this._getAttachment(placement);
2620
+
2621
+ this.addAttachmentClass(attachment);
2622
+ var container = this.config.container === false ? document.body : $(this.config.container);
2623
+ $(tip).data(this.constructor.DATA_KEY, this);
2624
+
2625
+ if (!$.contains(this.element.ownerDocument.documentElement, this.tip)) {
2626
+ $(tip).appendTo(container);
2627
+ }
2628
+
2629
+ $(this.element).trigger(this.constructor.Event.INSERTED);
2630
+ this._popper = new Popper(this.element, tip, {
2631
+ placement: attachment,
2632
+ modifiers: {
2633
+ offset: {
2634
+ offset: this.config.offset
2635
+ },
2636
+ flip: {
2637
+ behavior: this.config.fallbackPlacement
2638
+ },
2639
+ arrow: {
2640
+ element: Selector.ARROW
2641
+ }
2642
+ },
2643
+ onCreate: function onCreate(data) {
2644
+ if (data.originalPlacement !== data.placement) {
2645
+ _this._handlePopperPlacementChange(data);
2646
+ }
2647
+ },
2648
+ onUpdate: function onUpdate(data) {
2649
+ _this._handlePopperPlacementChange(data);
2650
+ }
2651
+ });
2652
+ $(tip).addClass(ClassName.SHOW); // if this is a touch-enabled device we add extra
2653
+ // empty mouseover listeners to the body's immediate children;
2654
+ // only needed because of broken event delegation on iOS
2655
+ // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html
2656
+
2657
+ if ('ontouchstart' in document.documentElement) {
2658
+ $('body').children().on('mouseover', null, $.noop);
2659
+ }
2660
+
2661
+ var complete = function complete() {
2662
+ if (_this.config.animation) {
2663
+ _this._fixTransition();
2664
+ }
2665
+
2666
+ var prevHoverState = _this._hoverState;
2667
+ _this._hoverState = null;
2668
+ $(_this.element).trigger(_this.constructor.Event.SHOWN);
2669
+
2670
+ if (prevHoverState === HoverState.OUT) {
2671
+ _this._leave(null, _this);
2672
+ }
2673
+ };
2674
+
2675
+ if (Util.supportsTransitionEnd() && $(this.tip).hasClass(ClassName.FADE)) {
2676
+ $(this.tip).one(Util.TRANSITION_END, complete).emulateTransitionEnd(Tooltip._TRANSITION_DURATION);
2677
+ } else {
2678
+ complete();
2679
+ }
2680
+ }
2681
+ };
2682
+
2683
+ _proto.hide = function hide(callback) {
2684
+ var _this2 = this;
2685
+
2686
+ var tip = this.getTipElement();
2687
+ var hideEvent = $.Event(this.constructor.Event.HIDE);
2688
+
2689
+ var complete = function complete() {
2690
+ if (_this2._hoverState !== HoverState.SHOW && tip.parentNode) {
2691
+ tip.parentNode.removeChild(tip);
2692
+ }
2693
+
2694
+ _this2._cleanTipClass();
2695
+
2696
+ _this2.element.removeAttribute('aria-describedby');
2697
+
2698
+ $(_this2.element).trigger(_this2.constructor.Event.HIDDEN);
2699
+
2700
+ if (_this2._popper !== null) {
2701
+ _this2._popper.destroy();
2702
+ }
2703
+
2704
+ if (callback) {
2705
+ callback();
2706
+ }
2707
+ };
2708
+
2709
+ $(this.element).trigger(hideEvent);
2710
+
2711
+ if (hideEvent.isDefaultPrevented()) {
2712
+ return;
2713
+ }
2714
+
2715
+ $(tip).removeClass(ClassName.SHOW); // if this is a touch-enabled device we remove the extra
2716
+ // empty mouseover listeners we added for iOS support
2717
+
2718
+ if ('ontouchstart' in document.documentElement) {
2719
+ $('body').children().off('mouseover', null, $.noop);
2720
+ }
2721
+
2722
+ this._activeTrigger[Trigger.CLICK] = false;
2723
+ this._activeTrigger[Trigger.FOCUS] = false;
2724
+ this._activeTrigger[Trigger.HOVER] = false;
2725
+
2726
+ if (Util.supportsTransitionEnd() && $(this.tip).hasClass(ClassName.FADE)) {
2727
+ $(tip).one(Util.TRANSITION_END, complete).emulateTransitionEnd(TRANSITION_DURATION);
2728
+ } else {
2729
+ complete();
2730
+ }
2731
+
2732
+ this._hoverState = '';
2733
+ };
2734
+
2735
+ _proto.update = function update() {
2736
+ if (this._popper !== null) {
2737
+ this._popper.scheduleUpdate();
2738
+ }
2739
+ }; // protected
2740
+
2741
+
2742
+ _proto.isWithContent = function isWithContent() {
2743
+ return Boolean(this.getTitle());
2744
+ };
2745
+
2746
+ _proto.addAttachmentClass = function addAttachmentClass(attachment) {
2747
+ $(this.getTipElement()).addClass(CLASS_PREFIX + "-" + attachment);
2748
+ };
2749
+
2750
+ _proto.getTipElement = function getTipElement() {
2751
+ this.tip = this.tip || $(this.config.template)[0];
2752
+ return this.tip;
2753
+ };
2754
+
2755
+ _proto.setContent = function setContent() {
2756
+ var $tip = $(this.getTipElement());
2757
+ this.setElementContent($tip.find(Selector.TOOLTIP_INNER), this.getTitle());
2758
+ $tip.removeClass(ClassName.FADE + " " + ClassName.SHOW);
2759
+ };
2760
+
2761
+ _proto.setElementContent = function setElementContent($element, content) {
2762
+ var html = this.config.html;
2763
+
2764
+ if (typeof content === 'object' && (content.nodeType || content.jquery)) {
2765
+ // content is a DOM node or a jQuery
2766
+ if (html) {
2767
+ if (!$(content).parent().is($element)) {
2768
+ $element.empty().append(content);
2769
+ }
2770
+ } else {
2771
+ $element.text($(content).text());
2772
+ }
2773
+ } else {
2774
+ $element[html ? 'html' : 'text'](content);
2775
+ }
2776
+ };
2777
+
2778
+ _proto.getTitle = function getTitle() {
2779
+ var title = this.element.getAttribute('data-original-title');
2780
+
2781
+ if (!title) {
2782
+ title = typeof this.config.title === 'function' ? this.config.title.call(this.element) : this.config.title;
2783
+ }
2784
+
2785
+ return title;
2786
+ }; // private
2787
+
2788
+
2789
+ _proto._getAttachment = function _getAttachment(placement) {
2790
+ return AttachmentMap[placement.toUpperCase()];
2791
+ };
2792
+
2793
+ _proto._setListeners = function _setListeners() {
2794
+ var _this3 = this;
2795
+
2796
+ var triggers = this.config.trigger.split(' ');
2797
+ triggers.forEach(function (trigger) {
2798
+ if (trigger === 'click') {
2799
+ $(_this3.element).on(_this3.constructor.Event.CLICK, _this3.config.selector, function (event) {
2800
+ return _this3.toggle(event);
2801
+ });
2802
+ } else if (trigger !== Trigger.MANUAL) {
2803
+ var eventIn = trigger === Trigger.HOVER ? _this3.constructor.Event.MOUSEENTER : _this3.constructor.Event.FOCUSIN;
2804
+ var eventOut = trigger === Trigger.HOVER ? _this3.constructor.Event.MOUSELEAVE : _this3.constructor.Event.FOCUSOUT;
2805
+ $(_this3.element).on(eventIn, _this3.config.selector, function (event) {
2806
+ return _this3._enter(event);
2807
+ }).on(eventOut, _this3.config.selector, function (event) {
2808
+ return _this3._leave(event);
2809
+ });
2810
+ }
2811
+
2812
+ $(_this3.element).closest('.modal').on('hide.bs.modal', function () {
2813
+ return _this3.hide();
2814
+ });
2815
+ });
2816
+
2817
+ if (this.config.selector) {
2818
+ this.config = $.extend({}, this.config, {
2819
+ trigger: 'manual',
2820
+ selector: ''
2821
+ });
2822
+ } else {
2823
+ this._fixTitle();
2824
+ }
2825
+ };
2826
+
2827
+ _proto._fixTitle = function _fixTitle() {
2828
+ var titleType = typeof this.element.getAttribute('data-original-title');
2829
+
2830
+ if (this.element.getAttribute('title') || titleType !== 'string') {
2831
+ this.element.setAttribute('data-original-title', this.element.getAttribute('title') || '');
2832
+ this.element.setAttribute('title', '');
2833
+ }
2834
+ };
2835
+
2836
+ _proto._enter = function _enter(event, context) {
2837
+ var dataKey = this.constructor.DATA_KEY;
2838
+ context = context || $(event.currentTarget).data(dataKey);
2839
+
2840
+ if (!context) {
2841
+ context = new this.constructor(event.currentTarget, this._getDelegateConfig());
2842
+ $(event.currentTarget).data(dataKey, context);
2843
+ }
2844
+
2845
+ if (event) {
2846
+ context._activeTrigger[event.type === 'focusin' ? Trigger.FOCUS : Trigger.HOVER] = true;
2847
+ }
2848
+
2849
+ if ($(context.getTipElement()).hasClass(ClassName.SHOW) || context._hoverState === HoverState.SHOW) {
2850
+ context._hoverState = HoverState.SHOW;
2851
+ return;
2852
+ }
2853
+
2854
+ clearTimeout(context._timeout);
2855
+ context._hoverState = HoverState.SHOW;
2856
+
2857
+ if (!context.config.delay || !context.config.delay.show) {
2858
+ context.show();
2859
+ return;
2860
+ }
2861
+
2862
+ context._timeout = setTimeout(function () {
2863
+ if (context._hoverState === HoverState.SHOW) {
2864
+ context.show();
2865
+ }
2866
+ }, context.config.delay.show);
2867
+ };
2868
+
2869
+ _proto._leave = function _leave(event, context) {
2870
+ var dataKey = this.constructor.DATA_KEY;
2871
+ context = context || $(event.currentTarget).data(dataKey);
2872
+
2873
+ if (!context) {
2874
+ context = new this.constructor(event.currentTarget, this._getDelegateConfig());
2875
+ $(event.currentTarget).data(dataKey, context);
2876
+ }
2877
+
2878
+ if (event) {
2879
+ context._activeTrigger[event.type === 'focusout' ? Trigger.FOCUS : Trigger.HOVER] = false;
2880
+ }
2881
+
2882
+ if (context._isWithActiveTrigger()) {
2883
+ return;
2884
+ }
2885
+
2886
+ clearTimeout(context._timeout);
2887
+ context._hoverState = HoverState.OUT;
2888
+
2889
+ if (!context.config.delay || !context.config.delay.hide) {
2890
+ context.hide();
2891
+ return;
2892
+ }
2893
+
2894
+ context._timeout = setTimeout(function () {
2895
+ if (context._hoverState === HoverState.OUT) {
2896
+ context.hide();
2897
+ }
2898
+ }, context.config.delay.hide);
2899
+ };
2900
+
2901
+ _proto._isWithActiveTrigger = function _isWithActiveTrigger() {
2902
+ for (var trigger in this._activeTrigger) {
2903
+ if (this._activeTrigger[trigger]) {
2904
+ return true;
2905
+ }
2906
+ }
2907
+
2908
+ return false;
2909
+ };
2910
+
2911
+ _proto._getConfig = function _getConfig(config) {
2912
+ config = $.extend({}, this.constructor.Default, $(this.element).data(), config);
2913
+
2914
+ if (typeof config.delay === 'number') {
2915
+ config.delay = {
2916
+ show: config.delay,
2917
+ hide: config.delay
2918
+ };
2919
+ }
2920
+
2921
+ if (typeof config.title === 'number') {
2922
+ config.title = config.title.toString();
2923
+ }
2924
+
2925
+ if (typeof config.content === 'number') {
2926
+ config.content = config.content.toString();
2927
+ }
2928
+
2929
+ Util.typeCheckConfig(NAME, config, this.constructor.DefaultType);
2930
+ return config;
2931
+ };
2932
+
2933
+ _proto._getDelegateConfig = function _getDelegateConfig() {
2934
+ var config = {};
2935
+
2936
+ if (this.config) {
2937
+ for (var key in this.config) {
2938
+ if (this.constructor.Default[key] !== this.config[key]) {
2939
+ config[key] = this.config[key];
2940
+ }
2941
+ }
2942
+ }
2943
+
2944
+ return config;
2945
+ };
2946
+
2947
+ _proto._cleanTipClass = function _cleanTipClass() {
2948
+ var $tip = $(this.getTipElement());
2949
+ var tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX);
2950
+
2951
+ if (tabClass !== null && tabClass.length > 0) {
2952
+ $tip.removeClass(tabClass.join(''));
2953
+ }
2954
+ };
2955
+
2956
+ _proto._handlePopperPlacementChange = function _handlePopperPlacementChange(data) {
2957
+ this._cleanTipClass();
2958
+
2959
+ this.addAttachmentClass(this._getAttachment(data.placement));
2960
+ };
2961
+
2962
+ _proto._fixTransition = function _fixTransition() {
2963
+ var tip = this.getTipElement();
2964
+ var initConfigAnimation = this.config.animation;
2965
+
2966
+ if (tip.getAttribute('x-placement') !== null) {
2967
+ return;
2968
+ }
2969
+
2970
+ $(tip).removeClass(ClassName.FADE);
2971
+ this.config.animation = false;
2972
+ this.hide();
2973
+ this.show();
2974
+ this.config.animation = initConfigAnimation;
2975
+ }; // static
2976
+
2977
+
2978
+ Tooltip._jQueryInterface = function _jQueryInterface(config) {
2979
+ return this.each(function () {
2980
+ var data = $(this).data(DATA_KEY);
2981
+
2982
+ var _config = typeof config === 'object' && config;
2983
+
2984
+ if (!data && /dispose|hide/.test(config)) {
2985
+ return;
2986
+ }
2987
+
2988
+ if (!data) {
2989
+ data = new Tooltip(this, _config);
2990
+ $(this).data(DATA_KEY, data);
2991
+ }
2992
+
2993
+ if (typeof config === 'string') {
2994
+ if (typeof data[config] === 'undefined') {
2995
+ throw new Error("No method named \"" + config + "\"");
2996
+ }
2997
+
2998
+ data[config]();
2999
+ }
3000
+ });
3001
+ };
3002
+
3003
+ createClass(Tooltip, null, [{
3004
+ key: "VERSION",
3005
+ get: function get() {
3006
+ return VERSION;
3007
+ }
3008
+ }, {
3009
+ key: "Default",
3010
+ get: function get() {
3011
+ return Default;
3012
+ }
3013
+ }, {
3014
+ key: "NAME",
3015
+ get: function get() {
3016
+ return NAME;
3017
+ }
3018
+ }, {
3019
+ key: "DATA_KEY",
3020
+ get: function get() {
3021
+ return DATA_KEY;
3022
+ }
3023
+ }, {
3024
+ key: "Event",
3025
+ get: function get() {
3026
+ return Event;
3027
+ }
3028
+ }, {
3029
+ key: "EVENT_KEY",
3030
+ get: function get() {
3031
+ return EVENT_KEY;
3032
+ }
3033
+ }, {
3034
+ key: "DefaultType",
3035
+ get: function get() {
3036
+ return DefaultType;
3037
+ }
3038
+ }]);
3039
+ return Tooltip;
3040
+ }();
3041
+ /**
3042
+ * ------------------------------------------------------------------------
3043
+ * jQuery
3044
+ * ------------------------------------------------------------------------
3045
+ */
3046
+
3047
+
3048
+ $.fn[NAME] = Tooltip._jQueryInterface;
3049
+ $.fn[NAME].Constructor = Tooltip;
3050
+
3051
+ $.fn[NAME].noConflict = function () {
3052
+ $.fn[NAME] = JQUERY_NO_CONFLICT;
3053
+ return Tooltip._jQueryInterface;
3054
+ };
3055
+
3056
+ return Tooltip;
3057
+ }($, Popper);
3058
+
3059
+ /**
3060
+ * --------------------------------------------------------------------------
3061
+ * Bootstrap (v4.0.0-beta.2): popover.js
3062
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
3063
+ * --------------------------------------------------------------------------
3064
+ */
3065
+
3066
+ var Popover = function () {
3067
+ /**
3068
+ * ------------------------------------------------------------------------
3069
+ * Constants
3070
+ * ------------------------------------------------------------------------
3071
+ */
3072
+ var NAME = 'popover';
3073
+ var VERSION = '4.0.0-beta.2';
3074
+ var DATA_KEY = 'bs.popover';
3075
+ var EVENT_KEY = "." + DATA_KEY;
3076
+ var JQUERY_NO_CONFLICT = $.fn[NAME];
3077
+ var CLASS_PREFIX = 'bs-popover';
3078
+ var BSCLS_PREFIX_REGEX = new RegExp("(^|\\s)" + CLASS_PREFIX + "\\S+", 'g');
3079
+ var Default = $.extend({}, Tooltip.Default, {
3080
+ placement: 'right',
3081
+ trigger: 'click',
3082
+ content: '',
3083
+ template: '<div class="popover" role="tooltip">' + '<div class="arrow"></div>' + '<h3 class="popover-header"></h3>' + '<div class="popover-body"></div></div>'
3084
+ });
3085
+ var DefaultType = $.extend({}, Tooltip.DefaultType, {
3086
+ content: '(string|element|function)'
3087
+ });
3088
+ var ClassName = {
3089
+ FADE: 'fade',
3090
+ SHOW: 'show'
3091
+ };
3092
+ var Selector = {
3093
+ TITLE: '.popover-header',
3094
+ CONTENT: '.popover-body'
3095
+ };
3096
+ var Event = {
3097
+ HIDE: "hide" + EVENT_KEY,
3098
+ HIDDEN: "hidden" + EVENT_KEY,
3099
+ SHOW: "show" + EVENT_KEY,
3100
+ SHOWN: "shown" + EVENT_KEY,
3101
+ INSERTED: "inserted" + EVENT_KEY,
3102
+ CLICK: "click" + EVENT_KEY,
3103
+ FOCUSIN: "focusin" + EVENT_KEY,
3104
+ FOCUSOUT: "focusout" + EVENT_KEY,
3105
+ MOUSEENTER: "mouseenter" + EVENT_KEY,
3106
+ MOUSELEAVE: "mouseleave" + EVENT_KEY
3107
+ /**
3108
+ * ------------------------------------------------------------------------
3109
+ * Class Definition
3110
+ * ------------------------------------------------------------------------
3111
+ */
3112
+
3113
+ };
3114
+
3115
+ var Popover =
3116
+ /*#__PURE__*/
3117
+ function (_Tooltip) {
3118
+ inheritsLoose(Popover, _Tooltip);
3119
+
3120
+ function Popover() {
3121
+ return _Tooltip.apply(this, arguments) || this;
3122
+ }
3123
+
3124
+ var _proto = Popover.prototype;
3125
+
3126
+ // overrides
3127
+ _proto.isWithContent = function isWithContent() {
3128
+ return this.getTitle() || this._getContent();
3129
+ };
3130
+
3131
+ _proto.addAttachmentClass = function addAttachmentClass(attachment) {
3132
+ $(this.getTipElement()).addClass(CLASS_PREFIX + "-" + attachment);
3133
+ };
3134
+
3135
+ _proto.getTipElement = function getTipElement() {
3136
+ this.tip = this.tip || $(this.config.template)[0];
3137
+ return this.tip;
3138
+ };
3139
+
3140
+ _proto.setContent = function setContent() {
3141
+ var $tip = $(this.getTipElement()); // we use append for html objects to maintain js events
3142
+
3143
+ this.setElementContent($tip.find(Selector.TITLE), this.getTitle());
3144
+ this.setElementContent($tip.find(Selector.CONTENT), this._getContent());
3145
+ $tip.removeClass(ClassName.FADE + " " + ClassName.SHOW);
3146
+ }; // private
3147
+
3148
+
3149
+ _proto._getContent = function _getContent() {
3150
+ return this.element.getAttribute('data-content') || (typeof this.config.content === 'function' ? this.config.content.call(this.element) : this.config.content);
3151
+ };
3152
+
3153
+ _proto._cleanTipClass = function _cleanTipClass() {
3154
+ var $tip = $(this.getTipElement());
3155
+ var tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX);
3156
+
3157
+ if (tabClass !== null && tabClass.length > 0) {
3158
+ $tip.removeClass(tabClass.join(''));
3159
+ }
3160
+ }; // static
3161
+
3162
+
3163
+ Popover._jQueryInterface = function _jQueryInterface(config) {
3164
+ return this.each(function () {
3165
+ var data = $(this).data(DATA_KEY);
3166
+
3167
+ var _config = typeof config === 'object' ? config : null;
3168
+
3169
+ if (!data && /destroy|hide/.test(config)) {
3170
+ return;
3171
+ }
3172
+
3173
+ if (!data) {
3174
+ data = new Popover(this, _config);
3175
+ $(this).data(DATA_KEY, data);
3176
+ }
3177
+
3178
+ if (typeof config === 'string') {
3179
+ if (typeof data[config] === 'undefined') {
3180
+ throw new Error("No method named \"" + config + "\"");
3181
+ }
3182
+
3183
+ data[config]();
3184
+ }
3185
+ });
3186
+ };
3187
+
3188
+ createClass(Popover, null, [{
3189
+ key: "VERSION",
3190
+ // getters
3191
+ get: function get() {
3192
+ return VERSION;
3193
+ }
3194
+ }, {
3195
+ key: "Default",
3196
+ get: function get() {
3197
+ return Default;
3198
+ }
3199
+ }, {
3200
+ key: "NAME",
3201
+ get: function get() {
3202
+ return NAME;
3203
+ }
3204
+ }, {
3205
+ key: "DATA_KEY",
3206
+ get: function get() {
3207
+ return DATA_KEY;
3208
+ }
3209
+ }, {
3210
+ key: "Event",
3211
+ get: function get() {
3212
+ return Event;
3213
+ }
3214
+ }, {
3215
+ key: "EVENT_KEY",
3216
+ get: function get() {
3217
+ return EVENT_KEY;
3218
+ }
3219
+ }, {
3220
+ key: "DefaultType",
3221
+ get: function get() {
3222
+ return DefaultType;
3223
+ }
3224
+ }]);
3225
+ return Popover;
3226
+ }(Tooltip);
3227
+ /**
3228
+ * ------------------------------------------------------------------------
3229
+ * jQuery
3230
+ * ------------------------------------------------------------------------
3231
+ */
3232
+
3233
+
3234
+ $.fn[NAME] = Popover._jQueryInterface;
3235
+ $.fn[NAME].Constructor = Popover;
3236
+
3237
+ $.fn[NAME].noConflict = function () {
3238
+ $.fn[NAME] = JQUERY_NO_CONFLICT;
3239
+ return Popover._jQueryInterface;
3240
+ };
3241
+
3242
+ return Popover;
3243
+ }($);
3244
+
3245
+ /**
3246
+ * --------------------------------------------------------------------------
3247
+ * Bootstrap (v4.0.0-beta.2): scrollspy.js
3248
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
3249
+ * --------------------------------------------------------------------------
3250
+ */
3251
+
3252
+ var ScrollSpy = function () {
3253
+ /**
3254
+ * ------------------------------------------------------------------------
3255
+ * Constants
3256
+ * ------------------------------------------------------------------------
3257
+ */
3258
+ var NAME = 'scrollspy';
3259
+ var VERSION = '4.0.0-beta.2';
3260
+ var DATA_KEY = 'bs.scrollspy';
3261
+ var EVENT_KEY = "." + DATA_KEY;
3262
+ var DATA_API_KEY = '.data-api';
3263
+ var JQUERY_NO_CONFLICT = $.fn[NAME];
3264
+ var Default = {
3265
+ offset: 10,
3266
+ method: 'auto',
3267
+ target: ''
3268
+ };
3269
+ var DefaultType = {
3270
+ offset: 'number',
3271
+ method: 'string',
3272
+ target: '(string|element)'
3273
+ };
3274
+ var Event = {
3275
+ ACTIVATE: "activate" + EVENT_KEY,
3276
+ SCROLL: "scroll" + EVENT_KEY,
3277
+ LOAD_DATA_API: "load" + EVENT_KEY + DATA_API_KEY
3278
+ };
3279
+ var ClassName = {
3280
+ DROPDOWN_ITEM: 'dropdown-item',
3281
+ DROPDOWN_MENU: 'dropdown-menu',
3282
+ ACTIVE: 'active'
3283
+ };
3284
+ var Selector = {
3285
+ DATA_SPY: '[data-spy="scroll"]',
3286
+ ACTIVE: '.active',
3287
+ NAV_LIST_GROUP: '.nav, .list-group',
3288
+ NAV_LINKS: '.nav-link',
3289
+ NAV_ITEMS: '.nav-item',
3290
+ LIST_ITEMS: '.list-group-item',
3291
+ DROPDOWN: '.dropdown',
3292
+ DROPDOWN_ITEMS: '.dropdown-item',
3293
+ DROPDOWN_TOGGLE: '.dropdown-toggle'
3294
+ };
3295
+ var OffsetMethod = {
3296
+ OFFSET: 'offset',
3297
+ POSITION: 'position'
3298
+ /**
3299
+ * ------------------------------------------------------------------------
3300
+ * Class Definition
3301
+ * ------------------------------------------------------------------------
3302
+ */
3303
+
3304
+ };
3305
+
3306
+ var ScrollSpy =
3307
+ /*#__PURE__*/
3308
+ function () {
3309
+ function ScrollSpy(element, config) {
3310
+ var _this = this;
3311
+
3312
+ this._element = element;
3313
+ this._scrollElement = element.tagName === 'BODY' ? window : element;
3314
+ this._config = this._getConfig(config);
3315
+ this._selector = this._config.target + " " + Selector.NAV_LINKS + "," + (this._config.target + " " + Selector.LIST_ITEMS + ",") + (this._config.target + " " + Selector.DROPDOWN_ITEMS);
3316
+ this._offsets = [];
3317
+ this._targets = [];
3318
+ this._activeTarget = null;
3319
+ this._scrollHeight = 0;
3320
+ $(this._scrollElement).on(Event.SCROLL, function (event) {
3321
+ return _this._process(event);
3322
+ });
3323
+ this.refresh();
3324
+
3325
+ this._process();
3326
+ } // getters
3327
+
3328
+
3329
+ var _proto = ScrollSpy.prototype;
3330
+
3331
+ // public
3332
+ _proto.refresh = function refresh() {
3333
+ var _this2 = this;
3334
+
3335
+ var autoMethod = this._scrollElement !== this._scrollElement.window ? OffsetMethod.POSITION : OffsetMethod.OFFSET;
3336
+ var offsetMethod = this._config.method === 'auto' ? autoMethod : this._config.method;
3337
+ var offsetBase = offsetMethod === OffsetMethod.POSITION ? this._getScrollTop() : 0;
3338
+ this._offsets = [];
3339
+ this._targets = [];
3340
+ this._scrollHeight = this._getScrollHeight();
3341
+ var targets = $.makeArray($(this._selector));
3342
+ targets.map(function (element) {
3343
+ var target;
3344
+ var targetSelector = Util.getSelectorFromElement(element);
3345
+
3346
+ if (targetSelector) {
3347
+ target = $(targetSelector)[0];
3348
+ }
3349
+
3350
+ if (target) {
3351
+ var targetBCR = target.getBoundingClientRect();
3352
+
3353
+ if (targetBCR.width || targetBCR.height) {
3354
+ // todo (fat): remove sketch reliance on jQuery position/offset
3355
+ return [$(target)[offsetMethod]().top + offsetBase, targetSelector];
3356
+ }
3357
+ }
3358
+
3359
+ return null;
3360
+ }).filter(function (item) {
3361
+ return item;
3362
+ }).sort(function (a, b) {
3363
+ return a[0] - b[0];
3364
+ }).forEach(function (item) {
3365
+ _this2._offsets.push(item[0]);
3366
+
3367
+ _this2._targets.push(item[1]);
3368
+ });
3369
+ };
3370
+
3371
+ _proto.dispose = function dispose() {
3372
+ $.removeData(this._element, DATA_KEY);
3373
+ $(this._scrollElement).off(EVENT_KEY);
3374
+ this._element = null;
3375
+ this._scrollElement = null;
3376
+ this._config = null;
3377
+ this._selector = null;
3378
+ this._offsets = null;
3379
+ this._targets = null;
3380
+ this._activeTarget = null;
3381
+ this._scrollHeight = null;
3382
+ }; // private
3383
+
3384
+
3385
+ _proto._getConfig = function _getConfig(config) {
3386
+ config = $.extend({}, Default, config);
3387
+
3388
+ if (typeof config.target !== 'string') {
3389
+ var id = $(config.target).attr('id');
3390
+
3391
+ if (!id) {
3392
+ id = Util.getUID(NAME);
3393
+ $(config.target).attr('id', id);
3394
+ }
3395
+
3396
+ config.target = "#" + id;
3397
+ }
3398
+
3399
+ Util.typeCheckConfig(NAME, config, DefaultType);
3400
+ return config;
3401
+ };
3402
+
3403
+ _proto._getScrollTop = function _getScrollTop() {
3404
+ return this._scrollElement === window ? this._scrollElement.pageYOffset : this._scrollElement.scrollTop;
3405
+ };
3406
+
3407
+ _proto._getScrollHeight = function _getScrollHeight() {
3408
+ return this._scrollElement.scrollHeight || Math.max(document.body.scrollHeight, document.documentElement.scrollHeight);
3409
+ };
3410
+
3411
+ _proto._getOffsetHeight = function _getOffsetHeight() {
3412
+ return this._scrollElement === window ? window.innerHeight : this._scrollElement.getBoundingClientRect().height;
3413
+ };
3414
+
3415
+ _proto._process = function _process() {
3416
+ var scrollTop = this._getScrollTop() + this._config.offset;
3417
+
3418
+ var scrollHeight = this._getScrollHeight();
3419
+
3420
+ var maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight();
3421
+
3422
+ if (this._scrollHeight !== scrollHeight) {
3423
+ this.refresh();
3424
+ }
3425
+
3426
+ if (scrollTop >= maxScroll) {
3427
+ var target = this._targets[this._targets.length - 1];
3428
+
3429
+ if (this._activeTarget !== target) {
3430
+ this._activate(target);
3431
+ }
3432
+
3433
+ return;
3434
+ }
3435
+
3436
+ if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) {
3437
+ this._activeTarget = null;
3438
+
3439
+ this._clear();
3440
+
3441
+ return;
3442
+ }
3443
+
3444
+ for (var i = this._offsets.length; i--;) {
3445
+ var isActiveTarget = this._activeTarget !== this._targets[i] && scrollTop >= this._offsets[i] && (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1]);
3446
+
3447
+ if (isActiveTarget) {
3448
+ this._activate(this._targets[i]);
3449
+ }
3450
+ }
3451
+ };
3452
+
3453
+ _proto._activate = function _activate(target) {
3454
+ this._activeTarget = target;
3455
+
3456
+ this._clear();
3457
+
3458
+ var queries = this._selector.split(','); // eslint-disable-next-line arrow-body-style
3459
+
3460
+
3461
+ queries = queries.map(function (selector) {
3462
+ return selector + "[data-target=\"" + target + "\"]," + (selector + "[href=\"" + target + "\"]");
3463
+ });
3464
+ var $link = $(queries.join(','));
3465
+
3466
+ if ($link.hasClass(ClassName.DROPDOWN_ITEM)) {
3467
+ $link.closest(Selector.DROPDOWN).find(Selector.DROPDOWN_TOGGLE).addClass(ClassName.ACTIVE);
3468
+ $link.addClass(ClassName.ACTIVE);
3469
+ } else {
3470
+ // Set triggered link as active
3471
+ $link.addClass(ClassName.ACTIVE); // Set triggered links parents as active
3472
+ // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor
3473
+
3474
+ $link.parents(Selector.NAV_LIST_GROUP).prev(Selector.NAV_LINKS + ", " + Selector.LIST_ITEMS).addClass(ClassName.ACTIVE); // Handle special case when .nav-link is inside .nav-item
3475
+
3476
+ $link.parents(Selector.NAV_LIST_GROUP).prev(Selector.NAV_ITEMS).children(Selector.NAV_LINKS).addClass(ClassName.ACTIVE);
3477
+ }
3478
+
3479
+ $(this._scrollElement).trigger(Event.ACTIVATE, {
3480
+ relatedTarget: target
3481
+ });
3482
+ };
3483
+
3484
+ _proto._clear = function _clear() {
3485
+ $(this._selector).filter(Selector.ACTIVE).removeClass(ClassName.ACTIVE);
3486
+ }; // static
3487
+
3488
+
3489
+ ScrollSpy._jQueryInterface = function _jQueryInterface(config) {
3490
+ return this.each(function () {
3491
+ var data = $(this).data(DATA_KEY);
3492
+
3493
+ var _config = typeof config === 'object' && config;
3494
+
3495
+ if (!data) {
3496
+ data = new ScrollSpy(this, _config);
3497
+ $(this).data(DATA_KEY, data);
3498
+ }
3499
+
3500
+ if (typeof config === 'string') {
3501
+ if (typeof data[config] === 'undefined') {
3502
+ throw new Error("No method named \"" + config + "\"");
3503
+ }
3504
+
3505
+ data[config]();
3506
+ }
3507
+ });
3508
+ };
3509
+
3510
+ createClass(ScrollSpy, null, [{
3511
+ key: "VERSION",
3512
+ get: function get() {
3513
+ return VERSION;
3514
+ }
3515
+ }, {
3516
+ key: "Default",
3517
+ get: function get() {
3518
+ return Default;
3519
+ }
3520
+ }]);
3521
+ return ScrollSpy;
3522
+ }();
3523
+ /**
3524
+ * ------------------------------------------------------------------------
3525
+ * Data Api implementation
3526
+ * ------------------------------------------------------------------------
3527
+ */
3528
+
3529
+
3530
+ $(window).on(Event.LOAD_DATA_API, function () {
3531
+ var scrollSpys = $.makeArray($(Selector.DATA_SPY));
3532
+
3533
+ for (var i = scrollSpys.length; i--;) {
3534
+ var $spy = $(scrollSpys[i]);
3535
+
3536
+ ScrollSpy._jQueryInterface.call($spy, $spy.data());
3537
+ }
3538
+ });
3539
+ /**
3540
+ * ------------------------------------------------------------------------
3541
+ * jQuery
3542
+ * ------------------------------------------------------------------------
3543
+ */
3544
+
3545
+ $.fn[NAME] = ScrollSpy._jQueryInterface;
3546
+ $.fn[NAME].Constructor = ScrollSpy;
3547
+
3548
+ $.fn[NAME].noConflict = function () {
3549
+ $.fn[NAME] = JQUERY_NO_CONFLICT;
3550
+ return ScrollSpy._jQueryInterface;
3551
+ };
3552
+
3553
+ return ScrollSpy;
3554
+ }($);
3555
+
3556
+ /**
3557
+ * --------------------------------------------------------------------------
3558
+ * Bootstrap (v4.0.0-beta.2): tab.js
3559
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
3560
+ * --------------------------------------------------------------------------
3561
+ */
3562
+
3563
+ var Tab = function () {
3564
+ /**
3565
+ * ------------------------------------------------------------------------
3566
+ * Constants
3567
+ * ------------------------------------------------------------------------
3568
+ */
3569
+ var NAME = 'tab';
3570
+ var VERSION = '4.0.0-beta.2';
3571
+ var DATA_KEY = 'bs.tab';
3572
+ var EVENT_KEY = "." + DATA_KEY;
3573
+ var DATA_API_KEY = '.data-api';
3574
+ var JQUERY_NO_CONFLICT = $.fn[NAME];
3575
+ var TRANSITION_DURATION = 150;
3576
+ var Event = {
3577
+ HIDE: "hide" + EVENT_KEY,
3578
+ HIDDEN: "hidden" + EVENT_KEY,
3579
+ SHOW: "show" + EVENT_KEY,
3580
+ SHOWN: "shown" + EVENT_KEY,
3581
+ CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY
3582
+ };
3583
+ var ClassName = {
3584
+ DROPDOWN_MENU: 'dropdown-menu',
3585
+ ACTIVE: 'active',
3586
+ DISABLED: 'disabled',
3587
+ FADE: 'fade',
3588
+ SHOW: 'show'
3589
+ };
3590
+ var Selector = {
3591
+ DROPDOWN: '.dropdown',
3592
+ NAV_LIST_GROUP: '.nav, .list-group',
3593
+ ACTIVE: '.active',
3594
+ ACTIVE_UL: '> li > .active',
3595
+ DATA_TOGGLE: '[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]',
3596
+ DROPDOWN_TOGGLE: '.dropdown-toggle',
3597
+ DROPDOWN_ACTIVE_CHILD: '> .dropdown-menu .active'
3598
+ /**
3599
+ * ------------------------------------------------------------------------
3600
+ * Class Definition
3601
+ * ------------------------------------------------------------------------
3602
+ */
3603
+
3604
+ };
3605
+
3606
+ var Tab =
3607
+ /*#__PURE__*/
3608
+ function () {
3609
+ function Tab(element) {
3610
+ this._element = element;
3611
+ } // getters
3612
+
3613
+
3614
+ var _proto = Tab.prototype;
3615
+
3616
+ // public
3617
+ _proto.show = function show() {
3618
+ var _this = this;
3619
+
3620
+ if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && $(this._element).hasClass(ClassName.ACTIVE) || $(this._element).hasClass(ClassName.DISABLED)) {
3621
+ return;
3622
+ }
3623
+
3624
+ var target;
3625
+ var previous;
3626
+ var listElement = $(this._element).closest(Selector.NAV_LIST_GROUP)[0];
3627
+ var selector = Util.getSelectorFromElement(this._element);
3628
+
3629
+ if (listElement) {
3630
+ var itemSelector = listElement.nodeName === 'UL' ? Selector.ACTIVE_UL : Selector.ACTIVE;
3631
+ previous = $.makeArray($(listElement).find(itemSelector));
3632
+ previous = previous[previous.length - 1];
3633
+ }
3634
+
3635
+ var hideEvent = $.Event(Event.HIDE, {
3636
+ relatedTarget: this._element
3637
+ });
3638
+ var showEvent = $.Event(Event.SHOW, {
3639
+ relatedTarget: previous
3640
+ });
3641
+
3642
+ if (previous) {
3643
+ $(previous).trigger(hideEvent);
3644
+ }
3645
+
3646
+ $(this._element).trigger(showEvent);
3647
+
3648
+ if (showEvent.isDefaultPrevented() || hideEvent.isDefaultPrevented()) {
3649
+ return;
3650
+ }
3651
+
3652
+ if (selector) {
3653
+ target = $(selector)[0];
3654
+ }
3655
+
3656
+ this._activate(this._element, listElement);
3657
+
3658
+ var complete = function complete() {
3659
+ var hiddenEvent = $.Event(Event.HIDDEN, {
3660
+ relatedTarget: _this._element
3661
+ });
3662
+ var shownEvent = $.Event(Event.SHOWN, {
3663
+ relatedTarget: previous
3664
+ });
3665
+ $(previous).trigger(hiddenEvent);
3666
+ $(_this._element).trigger(shownEvent);
3667
+ };
3668
+
3669
+ if (target) {
3670
+ this._activate(target, target.parentNode, complete);
3671
+ } else {
3672
+ complete();
3673
+ }
3674
+ };
3675
+
3676
+ _proto.dispose = function dispose() {
3677
+ $.removeData(this._element, DATA_KEY);
3678
+ this._element = null;
3679
+ }; // private
3680
+
3681
+
3682
+ _proto._activate = function _activate(element, container, callback) {
3683
+ var _this2 = this;
3684
+
3685
+ var activeElements;
3686
+
3687
+ if (container.nodeName === 'UL') {
3688
+ activeElements = $(container).find(Selector.ACTIVE_UL);
3689
+ } else {
3690
+ activeElements = $(container).children(Selector.ACTIVE);
3691
+ }
3692
+
3693
+ var active = activeElements[0];
3694
+ var isTransitioning = callback && Util.supportsTransitionEnd() && active && $(active).hasClass(ClassName.FADE);
3695
+
3696
+ var complete = function complete() {
3697
+ return _this2._transitionComplete(element, active, isTransitioning, callback);
3698
+ };
3699
+
3700
+ if (active && isTransitioning) {
3701
+ $(active).one(Util.TRANSITION_END, complete).emulateTransitionEnd(TRANSITION_DURATION);
3702
+ } else {
3703
+ complete();
3704
+ }
3705
+
3706
+ if (active) {
3707
+ $(active).removeClass(ClassName.SHOW);
3708
+ }
3709
+ };
3710
+
3711
+ _proto._transitionComplete = function _transitionComplete(element, active, isTransitioning, callback) {
3712
+ if (active) {
3713
+ $(active).removeClass(ClassName.ACTIVE);
3714
+ var dropdownChild = $(active.parentNode).find(Selector.DROPDOWN_ACTIVE_CHILD)[0];
3715
+
3716
+ if (dropdownChild) {
3717
+ $(dropdownChild).removeClass(ClassName.ACTIVE);
3718
+ }
3719
+
3720
+ if (active.getAttribute('role') === 'tab') {
3721
+ active.setAttribute('aria-selected', false);
3722
+ }
3723
+ }
3724
+
3725
+ $(element).addClass(ClassName.ACTIVE);
3726
+
3727
+ if (element.getAttribute('role') === 'tab') {
3728
+ element.setAttribute('aria-selected', true);
3729
+ }
3730
+
3731
+ if (isTransitioning) {
3732
+ Util.reflow(element);
3733
+ $(element).addClass(ClassName.SHOW);
3734
+ } else {
3735
+ $(element).removeClass(ClassName.FADE);
3736
+ }
3737
+
3738
+ if (element.parentNode && $(element.parentNode).hasClass(ClassName.DROPDOWN_MENU)) {
3739
+ var dropdownElement = $(element).closest(Selector.DROPDOWN)[0];
3740
+
3741
+ if (dropdownElement) {
3742
+ $(dropdownElement).find(Selector.DROPDOWN_TOGGLE).addClass(ClassName.ACTIVE);
3743
+ }
3744
+
3745
+ element.setAttribute('aria-expanded', true);
3746
+ }
3747
+
3748
+ if (callback) {
3749
+ callback();
3750
+ }
3751
+ }; // static
3752
+
3753
+
3754
+ Tab._jQueryInterface = function _jQueryInterface(config) {
3755
+ return this.each(function () {
3756
+ var $this = $(this);
3757
+ var data = $this.data(DATA_KEY);
3758
+
3759
+ if (!data) {
3760
+ data = new Tab(this);
3761
+ $this.data(DATA_KEY, data);
3762
+ }
3763
+
3764
+ if (typeof config === 'string') {
3765
+ if (typeof data[config] === 'undefined') {
3766
+ throw new Error("No method named \"" + config + "\"");
3767
+ }
3768
+
3769
+ data[config]();
3770
+ }
3771
+ });
3772
+ };
3773
+
3774
+ createClass(Tab, null, [{
3775
+ key: "VERSION",
3776
+ get: function get() {
3777
+ return VERSION;
3778
+ }
3779
+ }]);
3780
+ return Tab;
3781
+ }();
3782
+ /**
3783
+ * ------------------------------------------------------------------------
3784
+ * Data Api implementation
3785
+ * ------------------------------------------------------------------------
3786
+ */
3787
+
3788
+
3789
+ $(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
3790
+ event.preventDefault();
3791
+
3792
+ Tab._jQueryInterface.call($(this), 'show');
3793
+ });
3794
+ /**
3795
+ * ------------------------------------------------------------------------
3796
+ * jQuery
3797
+ * ------------------------------------------------------------------------
3798
+ */
3799
+
3800
+ $.fn[NAME] = Tab._jQueryInterface;
3801
+ $.fn[NAME].Constructor = Tab;
3802
+
3803
+ $.fn[NAME].noConflict = function () {
3804
+ $.fn[NAME] = JQUERY_NO_CONFLICT;
3805
+ return Tab._jQueryInterface;
3806
+ };
3807
+
3808
+ return Tab;
3809
+ }($);
3810
+
3811
+ /**
3812
+ * --------------------------------------------------------------------------
3813
+ * Bootstrap (v4.0.0-alpha.6): index.js
3814
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
3815
+ * --------------------------------------------------------------------------
3816
+ */
3817
+
3818
+ (function () {
3819
+ if (typeof $ === 'undefined') {
3820
+ throw new Error('Bootstrap\'s JavaScript requires jQuery. jQuery must be included before Bootstrap\'s JavaScript.');
3821
+ }
3822
+
3823
+ var version = $.fn.jquery.split(' ')[0].split('.');
3824
+ var minMajor = 1;
3825
+ var ltMajor = 2;
3826
+ var minMinor = 9;
3827
+ var minPatch = 1;
3828
+ var maxMajor = 4;
3829
+
3830
+ if (version[0] < ltMajor && version[1] < minMinor || version[0] === minMajor && version[1] === minMinor && version[2] < minPatch || version[0] >= maxMajor) {
3831
+ throw new Error('Bootstrap\'s JavaScript requires at least jQuery v1.9.1 but less than v4.0.0');
3832
+ }
3833
+ })($);
3834
+
3835
+ exports.Util = Util;
3836
+ exports.Alert = Alert;
3837
+ exports.Button = Button;
3838
+ exports.Carousel = Carousel;
3839
+ exports.Collapse = Collapse;
3840
+ exports.Dropdown = Dropdown;
3841
+ exports.Modal = Modal;
3842
+ exports.Popover = Popover;
3843
+ exports.Scrollspy = ScrollSpy;
3844
+ exports.Tab = Tab;
3845
+ exports.Tooltip = Tooltip;
3846
+
3847
+ return exports;
3848
+
3849
+ }({},$,Popper));
3850
+ //# sourceMappingURL=bootstrap.js.map