0
0
mirror of https://github.com/twbs/bootstrap.git synced 2025-01-17 09:52:29 +01:00
This commit is contained in:
XhmikosR 2019-04-18 14:47:52 +03:00 committed by GitHub
parent 5c5b15a077
commit 091aa1e9fd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
48 changed files with 2632 additions and 2060 deletions

File diff suppressed because one or more lines are too long

View File

@ -33,7 +33,7 @@ body {
background-color: #fff;
}
[tabindex="-1"]:focus {
[tabindex="-1"]:focus:not(:focus-visible) {
outline: 0 !important;
}

File diff suppressed because one or more lines are too long

View File

@ -4,5 +4,5 @@
* Copyright 2011-2019 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
*/*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus{outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:transparent}a:hover{color:#0056b3;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg{overflow:hidden;vertical-align:middle}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}select{word-wrap:normal}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important}
*/*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus:not(:focus-visible){outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:transparent}a:hover{color:#0056b3;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg{overflow:hidden;vertical-align:middle}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}select{word-wrap:normal}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important}
/*# sourceMappingURL=bootstrap-reboot.min.css.map */

File diff suppressed because one or more lines are too long

View File

@ -63,7 +63,7 @@ body {
background-color: #fff;
}
[tabindex="-1"]:focus {
[tabindex="-1"]:focus:not(:focus-visible) {
outline: 0 !important;
}
@ -1876,7 +1876,7 @@ textarea.form-control {
margin-left: -1.25rem;
}
.form-check-input:disabled ~ .form-check-label {
.form-check-input[disabled] ~ .form-check-label {
color: #6c757d;
}
@ -2260,6 +2260,9 @@ fieldset:disabled a.btn {
}
.btn-primary:focus, .btn-primary.focus {
color: #fff;
background-color: #0069d9;
border-color: #0062cc;
box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
}
@ -2294,6 +2297,9 @@ fieldset:disabled a.btn {
}
.btn-secondary:focus, .btn-secondary.focus {
color: #fff;
background-color: #5a6268;
border-color: #545b62;
box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);
}
@ -2328,6 +2334,9 @@ fieldset:disabled a.btn {
}
.btn-success:focus, .btn-success.focus {
color: #fff;
background-color: #218838;
border-color: #1e7e34;
box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
}
@ -2362,6 +2371,9 @@ fieldset:disabled a.btn {
}
.btn-info:focus, .btn-info.focus {
color: #fff;
background-color: #138496;
border-color: #117a8b;
box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}
@ -2396,6 +2408,9 @@ fieldset:disabled a.btn {
}
.btn-warning:focus, .btn-warning.focus {
color: #212529;
background-color: #e0a800;
border-color: #d39e00;
box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}
@ -2430,6 +2445,9 @@ fieldset:disabled a.btn {
}
.btn-danger:focus, .btn-danger.focus {
color: #fff;
background-color: #c82333;
border-color: #bd2130;
box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
}
@ -2464,6 +2482,9 @@ fieldset:disabled a.btn {
}
.btn-light:focus, .btn-light.focus {
color: #212529;
background-color: #e2e6ea;
border-color: #dae0e5;
box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}
@ -2498,6 +2519,9 @@ fieldset:disabled a.btn {
}
.btn-dark:focus, .btn-dark.focus {
color: #fff;
background-color: #23272b;
border-color: #1d2124;
box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);
}
@ -3447,11 +3471,11 @@ input[type="button"].btn-block {
border-color: #b3d7ff;
}
.custom-control-input:disabled ~ .custom-control-label {
.custom-control-input[disabled] ~ .custom-control-label {
color: #6c757d;
}
.custom-control-input:disabled ~ .custom-control-label::before {
.custom-control-input[disabled] ~ .custom-control-label::before {
background-color: #e9ecef;
}
@ -3644,7 +3668,7 @@ input[type="button"].btn-block {
box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.custom-file-input:disabled ~ .custom-file-label {
.custom-file-input[disabled] ~ .custom-file-label {
background-color: #e9ecef;
}
@ -4569,6 +4593,10 @@ input[type="button"].btn-block {
content: "/";
}
.breadcrumb-item + .breadcrumb-item:hover::before {
text-decoration: underline;
}
.breadcrumb-item + .breadcrumb-item:hover::before {
text-decoration: none;
}
@ -4669,25 +4697,15 @@ input[type="button"].btn-block {
.badge {
display: inline-block;
padding: 0.25em 0.4em;
padding: 0.25em 0.5em;
font-size: 75%;
font-weight: 700;
line-height: 1;
color: #fff;
text-align: center;
white-space: nowrap;
vertical-align: baseline;
border-radius: 0.25rem;
transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
.badge {
transition: none;
}
}
a.badge:hover, a.badge:focus {
text-decoration: none;
}
.badge:empty {
@ -4699,132 +4717,6 @@ a.badge:hover, a.badge:focus {
top: -1px;
}
.badge-pill {
padding-right: 0.6em;
padding-left: 0.6em;
border-radius: 10rem;
}
.badge-primary {
color: #fff;
background-color: #007bff;
}
a.badge-primary:hover, a.badge-primary:focus {
color: #fff;
background-color: #0062cc;
}
a.badge-primary:focus, a.badge-primary.focus {
outline: 0;
box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}
.badge-secondary {
color: #fff;
background-color: #6c757d;
}
a.badge-secondary:hover, a.badge-secondary:focus {
color: #fff;
background-color: #545b62;
}
a.badge-secondary:focus, a.badge-secondary.focus {
outline: 0;
box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}
.badge-success {
color: #fff;
background-color: #28a745;
}
a.badge-success:hover, a.badge-success:focus {
color: #fff;
background-color: #1e7e34;
}
a.badge-success:focus, a.badge-success.focus {
outline: 0;
box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}
.badge-info {
color: #fff;
background-color: #17a2b8;
}
a.badge-info:hover, a.badge-info:focus {
color: #fff;
background-color: #117a8b;
}
a.badge-info:focus, a.badge-info.focus {
outline: 0;
box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}
.badge-warning {
color: #212529;
background-color: #ffc107;
}
a.badge-warning:hover, a.badge-warning:focus {
color: #212529;
background-color: #d39e00;
}
a.badge-warning:focus, a.badge-warning.focus {
outline: 0;
box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}
.badge-danger {
color: #fff;
background-color: #dc3545;
}
a.badge-danger:hover, a.badge-danger:focus {
color: #fff;
background-color: #bd2130;
}
a.badge-danger:focus, a.badge-danger.focus {
outline: 0;
box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
}
.badge-light {
color: #212529;
background-color: #f8f9fa;
}
a.badge-light:hover, a.badge-light:focus {
color: #212529;
background-color: #dae0e5;
}
a.badge-light:focus, a.badge-light.focus {
outline: 0;
box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}
.badge-dark {
color: #fff;
background-color: #343a40;
}
a.badge-dark:hover, a.badge-dark:focus {
color: #fff;
background-color: #1d2124;
}
a.badge-dark:focus, a.badge-dark.focus {
outline: 0;
box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}
.jumbotron {
padding: 2rem 1rem;
margin-bottom: 2rem;
@ -4878,10 +4770,6 @@ a.badge-dark:focus, a.badge-dark.focus {
border-color: #b8daff;
}
.alert-primary hr {
border-top-color: #9fcdff;
}
.alert-primary .alert-link {
color: #002752;
}
@ -4892,10 +4780,6 @@ a.badge-dark:focus, a.badge-dark.focus {
border-color: #d6d8db;
}
.alert-secondary hr {
border-top-color: #c8cbcf;
}
.alert-secondary .alert-link {
color: #202326;
}
@ -4906,10 +4790,6 @@ a.badge-dark:focus, a.badge-dark.focus {
border-color: #c3e6cb;
}
.alert-success hr {
border-top-color: #b1dfbb;
}
.alert-success .alert-link {
color: #0b2e13;
}
@ -4920,10 +4800,6 @@ a.badge-dark:focus, a.badge-dark.focus {
border-color: #bee5eb;
}
.alert-info hr {
border-top-color: #abdde5;
}
.alert-info .alert-link {
color: #062c33;
}
@ -4934,10 +4810,6 @@ a.badge-dark:focus, a.badge-dark.focus {
border-color: #ffeeba;
}
.alert-warning hr {
border-top-color: #ffe8a1;
}
.alert-warning .alert-link {
color: #533f03;
}
@ -4948,10 +4820,6 @@ a.badge-dark:focus, a.badge-dark.focus {
border-color: #f5c6cb;
}
.alert-danger hr {
border-top-color: #f1b0b7;
}
.alert-danger .alert-link {
color: #491217;
}
@ -4962,10 +4830,6 @@ a.badge-dark:focus, a.badge-dark.focus {
border-color: #fdfdfe;
}
.alert-light hr {
border-top-color: #ececf6;
}
.alert-light .alert-link {
color: #686868;
}
@ -4976,10 +4840,6 @@ a.badge-dark:focus, a.badge-dark.focus {
border-color: #c6c8ca;
}
.alert-dark hr {
border-top-color: #b9bbbe;
}
.alert-dark .alert-link {
color: #040505;
}
@ -6215,82 +6075,34 @@ a.close.disabled {
background-color: #007bff !important;
}
a.bg-primary:hover, a.bg-primary:focus,
button.bg-primary:hover,
button.bg-primary:focus {
background-color: #0062cc !important;
}
.bg-secondary {
background-color: #6c757d !important;
}
a.bg-secondary:hover, a.bg-secondary:focus,
button.bg-secondary:hover,
button.bg-secondary:focus {
background-color: #545b62 !important;
}
.bg-success {
background-color: #28a745 !important;
}
a.bg-success:hover, a.bg-success:focus,
button.bg-success:hover,
button.bg-success:focus {
background-color: #1e7e34 !important;
}
.bg-info {
background-color: #17a2b8 !important;
}
a.bg-info:hover, a.bg-info:focus,
button.bg-info:hover,
button.bg-info:focus {
background-color: #117a8b !important;
}
.bg-warning {
background-color: #ffc107 !important;
}
a.bg-warning:hover, a.bg-warning:focus,
button.bg-warning:hover,
button.bg-warning:focus {
background-color: #d39e00 !important;
}
.bg-danger {
background-color: #dc3545 !important;
}
a.bg-danger:hover, a.bg-danger:focus,
button.bg-danger:hover,
button.bg-danger:focus {
background-color: #bd2130 !important;
}
.bg-light {
background-color: #f8f9fa !important;
}
a.bg-light:hover, a.bg-light:focus,
button.bg-light:hover,
button.bg-light:focus {
background-color: #dae0e5 !important;
}
.bg-dark {
background-color: #343a40 !important;
}
a.bg-dark:hover, a.bg-dark:focus,
button.bg-dark:hover,
button.bg-dark:focus {
background-color: #1d2124 !important;
}
.bg-white {
background-color: #fff !important;
}
@ -9450,14 +9262,6 @@ a.text-dark:hover, a.text-dark:focus {
color: rgba(255, 255, 255, 0.5) !important;
}
.text-hide {
font: 0/0 a;
color: transparent;
text-shadow: none;
background-color: transparent;
border: 0;
}
.text-decoration-none {
text-decoration: none !important;
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -135,7 +135,9 @@
};
var triggerTransitionEnd = function triggerTransitionEnd(element) {
element.dispatchEvent(new Event(TRANSITION_END));
var evt = document.createEvent('HTMLEvents');
evt.initEvent(TRANSITION_END, true, true);
element.dispatchEvent(evt);
};
var isElement = function isElement(obj) {
@ -291,93 +293,145 @@
}
};
/**
* --------------------------------------------------------------------------
* Bootstrap (v4.3.1): dom/polyfill.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* --------------------------------------------------------------------------
*/
/* istanbul ignore next */
/* istanbul ignore file */
var _Element$prototype = Element.prototype,
matches = _Element$prototype.matches,
closest = _Element$prototype.closest;
var find = Element.prototype.querySelectorAll;
var findOne = Element.prototype.querySelector;
var Polyfill = function () {
// MSEdge resets defaultPrevented flag upon dispatchEvent call if at least one listener is attached
var defaultPreventedPreservedOnDispatch = function () {
var e = new CustomEvent('Bootstrap', {
cancelable: true
});
var element = document.createElement('div');
element.addEventListener('Bootstrap', function () {
return null;
});
e.preventDefault();
element.dispatchEvent(e);
return e.defaultPrevented;
}();
var createCustomEvent = function createCustomEvent(eventName, params) {
var cEvent = new CustomEvent(eventName, params);
return cEvent;
};
var find = Element.prototype.querySelectorAll;
var findOne = Element.prototype.querySelector;
var scopeSelectorRegex = /:scope\b/;
if (typeof window.CustomEvent !== 'function') {
createCustomEvent = function createCustomEvent(eventName, params) {
params = params || {
bubbles: false,
cancelable: false,
detail: null
};
var evt = document.createEvent('CustomEvent');
evt.initCustomEvent(eventName, params.bubbles, params.cancelable, params.detail);
return evt;
};
}
var supportScopeQuery = function () {
var element = document.createElement('div');
var workingDefaultPrevented = function () {
var e = document.createEvent('CustomEvent');
e.initEvent('Bootstrap', true, true);
e.preventDefault();
return e.defaultPrevented;
}();
try {
element.querySelectorAll(':scope *');
} catch (error) {
return false;
if (!workingDefaultPrevented) {
var origPreventDefault = Event.prototype.preventDefault;
Event.prototype.preventDefault = function () {
if (!this.cancelable) {
return;
}
return true;
}();
origPreventDefault.call(this);
Object.defineProperty(this, 'defaultPrevented', {
get: function get() {
return true;
},
configurable: true
});
};
} // MSEdge resets defaultPrevented flag upon dispatchEvent call if at least one listener is attached
if (!supportScopeQuery) {
find = function find(selector) {
if (!scopeSelectorRegex.test(selector)) {
return this.querySelectorAll(selector);
var defaultPreventedPreservedOnDispatch = function () {
var e = createCustomEvent('Bootstrap', {
cancelable: true
});
var element = document.createElement('div');
element.addEventListener('Bootstrap', function () {
return null;
});
e.preventDefault();
element.dispatchEvent(e);
return e.defaultPrevented;
}();
if (!matches) {
matches = Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector;
}
if (!closest) {
closest = function closest(selector) {
var element = this;
do {
if (matches.call(element, selector)) {
return element;
}
var hasId = Boolean(this.id);
element = element.parentElement || element.parentNode;
} while (element !== null && element.nodeType === 1);
if (!hasId) {
this.id = getUID('scope');
}
return null;
};
}
var nodeList = null;
var scopeSelectorRegex = /:scope\b/;
try {
selector = selector.replace(scopeSelectorRegex, "#" + this.id);
nodeList = this.querySelectorAll(selector);
} finally {
if (!hasId) {
this.removeAttribute('id');
}
}
var supportScopeQuery = function () {
var element = document.createElement('div');
return nodeList;
};
findOne = function findOne(selector) {
if (!scopeSelectorRegex.test(selector)) {
return this.querySelector(selector);
}
var matches = find.call(this, selector);
if (typeof matches[0] !== 'undefined') {
return matches[0];
}
return null;
};
try {
element.querySelectorAll(':scope *');
} catch (error) {
return false;
}
return {
defaultPreventedPreservedOnDispatch: defaultPreventedPreservedOnDispatch,
find: find,
findOne: findOne
};
return true;
}();
if (!supportScopeQuery) {
find = function find(selector) {
if (!scopeSelectorRegex.test(selector)) {
return this.querySelectorAll(selector);
}
var hasId = Boolean(this.id);
if (!hasId) {
this.id = getUID('scope');
}
var nodeList = null;
try {
selector = selector.replace(scopeSelectorRegex, "#" + this.id);
nodeList = this.querySelectorAll(selector);
} finally {
if (!hasId) {
this.removeAttribute('id');
}
}
return nodeList;
};
findOne = function findOne(selector) {
if (!scopeSelectorRegex.test(selector)) {
return this.querySelector(selector);
}
var matches = find.call(this, selector);
if (typeof matches[0] !== 'undefined') {
return matches[0];
}
return null;
};
}
/**
* --------------------------------------------------------------------------
* Bootstrap (v4.3.1): dom/eventHandler.js
@ -468,10 +522,8 @@
delegationSelector = null;
}
var uidList = Object.keys(events);
for (var i = 0; i < uidList.length; i++) {
var uid = uidList[i];
for (var _i = 0, _Object$keys = Object.keys(events); _i < _Object$keys.length; _i++) {
var uid = _Object$keys[_i];
var event = events[uid];
if (event.originalHandler === handler && event.delegationSelector === delegationSelector) {
@ -630,7 +682,7 @@
evt = document.createEvent('HTMLEvents');
evt.initEvent(typeEvent, bubbles, true);
} else {
evt = new CustomEvent(event, {
evt = createCustomEvent(event, {
bubbles: bubbles,
cancelable: true
});
@ -650,7 +702,7 @@
if (defaultPrevented) {
evt.preventDefault();
if (!Polyfill.defaultPreventedPreservedOnDispatch) {
if (!defaultPreventedPreservedOnDispatch) {
Object.defineProperty(evt, 'defaultPrevented', {
get: function get() {
return true;
@ -683,14 +735,12 @@
* ------------------------------------------------------------------------
*/
var findFn = Polyfill.find,
_findOne = Polyfill.findOne;
var NODE_TEXT = 3;
var SelectorEngine = {
matches: function matches(element, selector) {
return element.matches(selector);
matches: function matches$1(element, selector) {
return matches.call(element, selector);
},
find: function find(selector, element) {
find: function find$1(selector, element) {
if (element === void 0) {
element = document.documentElement;
}
@ -699,9 +749,9 @@
return null;
}
return findFn.call(element, selector);
return find.call(element, selector);
},
findOne: function findOne(selector, element) {
findOne: function findOne$1(selector, element) {
if (element === void 0) {
element = document.documentElement;
}
@ -710,7 +760,7 @@
return null;
}
return _findOne.call(element, selector);
return findOne.call(element, selector);
},
children: function children(element, selector) {
var _this = this;
@ -742,12 +792,12 @@
return parents;
},
closest: function closest(element, selector) {
closest: function closest$1(element, selector) {
if (typeof selector !== 'string') {
return null;
}
return element.closest(selector);
return closest.call(element, selector);
},
prev: function prev(element, selector) {
if (typeof selector !== 'string') {
@ -1096,11 +1146,17 @@
});
EventHandler.on(document, Event$2.FOCUS_DATA_API, Selector$1.DATA_TOGGLE_CARROT, function (event) {
var button = SelectorEngine.closest(event.target, Selector$1.BUTTON);
button.classList.add(ClassName$1.FOCUS);
if (button) {
button.classList.add(ClassName$1.FOCUS);
}
});
EventHandler.on(document, Event$2.BLUR_DATA_API, Selector$1.DATA_TOGGLE_CARROT, function (event) {
var button = SelectorEngine.closest(event.target, Selector$1.BUTTON);
button.classList.remove(ClassName$1.FOCUS);
if (button) {
button.classList.remove(ClassName$1.FOCUS);
}
});
/**
* ------------------------------------------------------------------------
@ -1419,7 +1475,8 @@
return;
}
var direction = absDeltax / this.touchDeltaX; // swipe left
var direction = absDeltax / this.touchDeltaX;
this.touchDeltaX = 0; // swipe left
if (direction > 0) {
this.prev();
@ -2246,7 +2303,7 @@
/**!
* @fileOverview Kickass library to create and place poppers near their reference elements.
* @version 1.14.7
* @version 1.15.0
* @license
* Copyright (c) 2016 Federico Zivolo and contributors
*
@ -3071,7 +3128,7 @@
* @argument value
* @returns index or -1
*/
function find(arr, check) {
function find$1(arr, check) {
// use native find if supported
if (Array.prototype.find) {
return arr.find(check);
@ -3099,7 +3156,7 @@
}
// use `find` + `indexOf` if `findIndex` isn't supported
var match = find(arr, function (obj) {
var match = find$1(arr, function (obj) {
return obj[prop] === value;
});
return arr.indexOf(match);
@ -3516,7 +3573,7 @@
// Remove this legacy support in Popper.js v2
var legacyGpuAccelerationOption = find(data.instance.modifiers, function (modifier) {
var legacyGpuAccelerationOption = find$1(data.instance.modifiers, function (modifier) {
return modifier.name === 'applyStyle';
}).gpuAcceleration;
if (legacyGpuAccelerationOption !== undefined) {
@ -3611,7 +3668,7 @@
* @returns {Boolean}
*/
function isModifierRequired(modifiers, requestingName, requestedName) {
var requesting = find(modifiers, function (_ref) {
var requesting = find$1(modifiers, function (_ref) {
var name = _ref.name;
return name === requestingName;
});
@ -3850,7 +3907,14 @@
// flip the variation if required
var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;
var flippedVariation = !!options.flipVariations && (isVertical && variation === 'start' && overflowsLeft || isVertical && variation === 'end' && overflowsRight || !isVertical && variation === 'start' && overflowsTop || !isVertical && variation === 'end' && overflowsBottom);
// flips variation if reference element overflows boundaries
var flippedVariationByRef = !!options.flipVariations && (isVertical && variation === 'start' && overflowsLeft || isVertical && variation === 'end' && overflowsRight || !isVertical && variation === 'start' && overflowsTop || !isVertical && variation === 'end' && overflowsBottom);
// flips variation if popper content overflows boundaries
var flippedVariationByContent = !!options.flipVariationsByContent && (isVertical && variation === 'start' && overflowsRight || isVertical && variation === 'end' && overflowsLeft || !isVertical && variation === 'start' && overflowsBottom || !isVertical && variation === 'end' && overflowsTop);
var flippedVariation = flippedVariationByRef || flippedVariationByContent;
if (overlapsRef || overflowsBoundaries || flippedVariation) {
// this boolean to detect any flip loop
@ -3985,7 +4049,7 @@
// Detect if the offset string contains a pair of values or a single one
// they could be separated by comma or space
var divider = fragments.indexOf(find(fragments, function (frag) {
var divider = fragments.indexOf(find$1(fragments, function (frag) {
return frag.search(/,|\s/) !== -1;
}));
@ -4196,7 +4260,7 @@
}
var refRect = data.offsets.reference;
var bound = find(data.instance.modifiers, function (modifier) {
var bound = find$1(data.instance.modifiers, function (modifier) {
return modifier.name === 'preventOverflow';
}).boundaries;
@ -4457,7 +4521,23 @@
* The popper will never be placed outside of the defined boundaries
* (except if `keepTogether` is enabled)
*/
boundariesElement: 'viewport'
boundariesElement: 'viewport',
/**
* @prop {Boolean} flipVariations=false
* The popper will switch placement variation between `-start` and `-end` when
* the reference element overlaps its boundaries.
*
* The original placement should have a set variation.
*/
flipVariations: false,
/**
* @prop {Boolean} flipVariationsByContent=false
* The popper will switch placement variation between `-start` and `-end` when
* the popper element overlaps its reference boundaries.
*
* The original placement should have a set variation.
*/
flipVariationsByContent: false
},
/**
@ -4674,8 +4754,8 @@
/**
* Creates a new Popper.js instance.
* @class Popper
* @param {HTMLElement|referenceObject} reference - The reference element used to position the popper
* @param {HTMLElement} popper - The HTML element used as the popper
* @param {Element|referenceObject} reference - The reference element used to position the popper
* @param {Element} popper - The HTML / XML element used as the popper
* @param {Object} options - Your custom options to override the ones defined in [Defaults](#defaults)
* @return {Object} instance - The generated Popper.js instance
*/
@ -7665,7 +7745,9 @@
EventHandler.trigger(_this._element, Event$b.SHOWN);
if (_this._config.autohide) {
_this.hide();
_this._timeout = setTimeout(function () {
_this.hide();
}, _this._config.delay);
}
};
@ -7682,7 +7764,7 @@
}
};
_proto.hide = function hide(withoutTimeout) {
_proto.hide = function hide() {
var _this2 = this;
if (!this._element.classList.contains(ClassName$a.SHOW)) {
@ -7691,12 +7773,20 @@
EventHandler.trigger(this._element, Event$b.HIDE);
if (withoutTimeout) {
this._close();
var complete = function complete() {
_this2._element.classList.add(ClassName$a.HIDE);
EventHandler.trigger(_this2._element, Event$b.HIDDEN);
};
this._element.classList.remove(ClassName$a.SHOW);
if (this._config.animation) {
var transitionDuration = getTransitionDurationFromElement(this._element);
EventHandler.one(this._element, TRANSITION_END, complete);
emulateTransitionEnd(this._element, transitionDuration);
} else {
this._timeout = setTimeout(function () {
_this2._close();
}, this._config.delay);
complete();
}
};
@ -7725,28 +7815,8 @@
var _this3 = this;
EventHandler.on(this._element, Event$b.CLICK_DISMISS, Selector$a.DATA_DISMISS, function () {
return _this3.hide(true);
return _this3.hide();
});
};
_proto._close = function _close() {
var _this4 = this;
var complete = function complete() {
_this4._element.classList.add(ClassName$a.HIDE);
EventHandler.trigger(_this4._element, Event$b.HIDDEN);
};
this._element.classList.remove(ClassName$a.SHOW);
if (this._config.animation) {
var transitionDuration = getTransitionDurationFromElement(this._element);
EventHandler.one(this._element, TRANSITION_END, complete);
emulateTransitionEnd(this._element, transitionDuration);
} else {
complete();
}
} // Static
;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

3178
dist/js/bootstrap.esm.js vendored
View File

@ -5,19 +5,77 @@
*/
import Popper from 'popper.js';
function _defineProperties(target, props) {
for (var i = 0; i < props.length; i++) {
var descriptor = props[i];
descriptor.enumerable = descriptor.enumerable || false;
descriptor.configurable = true;
if ("value" in descriptor) descriptor.writable = true;
Object.defineProperty(target, descriptor.key, descriptor);
}
}
function _createClass(Constructor, protoProps, staticProps) {
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
if (staticProps) _defineProperties(Constructor, staticProps);
return Constructor;
}
function _defineProperty(obj, key, value) {
if (key in obj) {
Object.defineProperty(obj, key, {
value: value,
enumerable: true,
configurable: true,
writable: true
});
} else {
obj[key] = value;
}
return obj;
}
function _objectSpread(target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i] != null ? arguments[i] : {};
var ownKeys = Object.keys(source);
if (typeof Object.getOwnPropertySymbols === 'function') {
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
}));
}
ownKeys.forEach(function (key) {
_defineProperty(target, key, source[key]);
});
}
return target;
}
function _inheritsLoose(subClass, superClass) {
subClass.prototype = Object.create(superClass.prototype);
subClass.prototype.constructor = subClass;
subClass.__proto__ = superClass;
}
/**
* --------------------------------------------------------------------------
* Bootstrap (v4.3.1): util/index.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* --------------------------------------------------------------------------
*/
const MAX_UID = 1000000;
const MILLISECONDS_MULTIPLIER = 1000;
const TRANSITION_END = 'transitionend';
const _window = window,
jQuery = _window.jQuery; // Shoutout AngusCroll (https://goo.gl/pxwQGp)
var MAX_UID = 1000000;
var MILLISECONDS_MULTIPLIER = 1000;
var TRANSITION_END = 'transitionend';
var _window = window,
jQuery = _window.jQuery; // Shoutout AngusCroll (https://goo.gl/pxwQGp)
const toType = obj => ({}).toString.call(obj).match(/\s([a-z]+)/i)[1].toLowerCase();
var toType = function toType(obj) {
return {}.toString.call(obj).match(/\s([a-z]+)/i)[1].toLowerCase();
};
/**
* --------------------------------------------------------------------------
* Public Util Api
@ -25,7 +83,7 @@ const toType = obj => ({}).toString.call(obj).match(/\s([a-z]+)/i)[1].toLowerCas
*/
const getUID = prefix => {
var getUID = function getUID(prefix) {
do {
// eslint-disable-next-line no-bitwise
prefix += ~~(Math.random() * MAX_UID); // "~~" acts like a faster Math.floor() here
@ -34,11 +92,11 @@ const getUID = prefix => {
return prefix;
};
const getSelectorFromElement = element => {
let selector = element.getAttribute('data-target');
var getSelectorFromElement = function getSelectorFromElement(element) {
var selector = element.getAttribute('data-target');
if (!selector || selector === '#') {
const hrefAttr = element.getAttribute('href');
var hrefAttr = element.getAttribute('href');
selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : '';
}
@ -49,18 +107,18 @@ const getSelectorFromElement = element => {
}
};
const getTransitionDurationFromElement = element => {
var getTransitionDurationFromElement = function getTransitionDurationFromElement(element) {
if (!element) {
return 0;
} // Get transition-duration of the element
let _window$getComputedSt = window.getComputedStyle(element),
var _window$getComputedSt = window.getComputedStyle(element),
transitionDuration = _window$getComputedSt.transitionDuration,
transitionDelay = _window$getComputedSt.transitionDelay;
const floatTransitionDuration = parseFloat(transitionDuration);
const floatTransitionDelay = parseFloat(transitionDelay); // Return 0 if element or transition duration is not found
var floatTransitionDuration = parseFloat(transitionDuration);
var floatTransitionDelay = parseFloat(transitionDelay); // Return 0 if element or transition duration is not found
if (!floatTransitionDuration && !floatTransitionDelay) {
return 0;
@ -72,16 +130,20 @@ const getTransitionDurationFromElement = element => {
return (parseFloat(transitionDuration) + parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER;
};
const triggerTransitionEnd = element => {
element.dispatchEvent(new Event(TRANSITION_END));
var triggerTransitionEnd = function triggerTransitionEnd(element) {
var evt = document.createEvent('HTMLEvents');
evt.initEvent(TRANSITION_END, true, true);
element.dispatchEvent(evt);
};
const isElement = obj => (obj[0] || obj).nodeType;
var isElement = function isElement(obj) {
return (obj[0] || obj).nodeType;
};
const emulateTransitionEnd = (element, duration) => {
let called = false;
const durationPadding = 5;
const emulatedDuration = duration + durationPadding;
var emulateTransitionEnd = function emulateTransitionEnd(element, duration) {
var called = false;
var durationPadding = 5;
var emulatedDuration = duration + durationPadding;
function listener() {
called = true;
@ -89,26 +151,26 @@ const emulateTransitionEnd = (element, duration) => {
}
element.addEventListener(TRANSITION_END, listener);
setTimeout(() => {
setTimeout(function () {
if (!called) {
triggerTransitionEnd(element);
}
}, emulatedDuration);
};
const typeCheckConfig = (componentName, config, configTypes) => {
Object.keys(configTypes).forEach(property => {
const expectedTypes = configTypes[property];
const value = config[property];
const valueType = value && isElement(value) ? 'element' : toType(value);
var typeCheckConfig = function typeCheckConfig(componentName, config, configTypes) {
Object.keys(configTypes).forEach(function (property) {
var expectedTypes = configTypes[property];
var value = config[property];
var valueType = value && isElement(value) ? 'element' : toType(value);
if (!new RegExp(expectedTypes).test(valueType)) {
throw new Error(`${componentName.toUpperCase()}: ` + `Option "${property}" provided type "${valueType}" ` + `but expected type "${expectedTypes}".`);
throw new Error(componentName.toUpperCase() + ": " + ("Option \"" + property + "\" provided type \"" + valueType + "\" ") + ("but expected type \"" + expectedTypes + "\"."));
}
});
};
const makeArray = nodeList => {
var makeArray = function makeArray(nodeList) {
if (!nodeList) {
return [];
}
@ -116,7 +178,7 @@ const makeArray = nodeList => {
return [].slice.call(nodeList);
};
const isVisible = element => {
var isVisible = function isVisible(element) {
if (!element) {
return false;
}
@ -128,14 +190,14 @@ const isVisible = element => {
return false;
};
const findShadowRoot = element => {
var findShadowRoot = function findShadowRoot(element) {
if (!document.documentElement.attachShadow) {
return null;
} // Can find the shadow root otherwise it'll return the document
if (typeof element.getRootNode === 'function') {
const root = element.getRootNode();
var root = element.getRootNode();
return root instanceof ShadowRoot ? root : null;
}
@ -152,9 +214,13 @@ const findShadowRoot = element => {
}; // eslint-disable-next-line no-empty-function
const noop = () => function () {};
var noop = function noop() {
return function () {};
};
const reflow = element => element.offsetHeight;
var reflow = function reflow(element) {
return element.offsetHeight;
};
/**
* --------------------------------------------------------------------------
@ -168,28 +234,27 @@ const reflow = element => element.offsetHeight;
* Constants
* ------------------------------------------------------------------------
*/
const mapData = (() => {
const storeData = {};
let id = 1;
var mapData = function () {
var storeData = {};
var id = 1;
return {
set(element, key, data) {
set: function set(element, key, data) {
if (typeof element.key === 'undefined') {
element.key = {
key,
id
key: key,
id: id
};
id++;
}
storeData[element.key.id] = data;
},
get(element, key) {
get: function get(element, key) {
if (!element || typeof element.key === 'undefined') {
return null;
}
const keyProperties = element.key;
var keyProperties = element.key;
if (keyProperties.key === key) {
return storeData[keyProperties.id];
@ -197,122 +262,171 @@ const mapData = (() => {
return null;
},
delete(element, key) {
delete: function _delete(element, key) {
if (typeof element.key === 'undefined') {
return;
}
const keyProperties = element.key;
var keyProperties = element.key;
if (keyProperties.key === key) {
delete storeData[keyProperties.id];
delete element.key;
}
}
};
})();
}();
const Data = {
setData(instance, key, data) {
var Data = {
setData: function setData(instance, key, data) {
mapData.set(instance, key, data);
},
getData(instance, key) {
getData: function getData(instance, key) {
return mapData.get(instance, key);
},
removeData(instance, key) {
removeData: function removeData(instance, key) {
mapData.delete(instance, key);
}
};
/**
* --------------------------------------------------------------------------
* Bootstrap (v4.3.1): dom/polyfill.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* --------------------------------------------------------------------------
*/
/* istanbul ignore next */
/* istanbul ignore file */
var _Element$prototype = Element.prototype,
matches = _Element$prototype.matches,
closest = _Element$prototype.closest;
var find = Element.prototype.querySelectorAll;
var findOne = Element.prototype.querySelector;
const Polyfill = (() => {
// MSEdge resets defaultPrevented flag upon dispatchEvent call if at least one listener is attached
const defaultPreventedPreservedOnDispatch = (() => {
const e = new CustomEvent('Bootstrap', {
cancelable: true
});
const element = document.createElement('div');
element.addEventListener('Bootstrap', () => null);
e.preventDefault();
element.dispatchEvent(e);
return e.defaultPrevented;
})();
var createCustomEvent = function createCustomEvent(eventName, params) {
var cEvent = new CustomEvent(eventName, params);
return cEvent;
};
let find = Element.prototype.querySelectorAll;
let findOne = Element.prototype.querySelector;
const scopeSelectorRegex = /:scope\b/;
if (typeof window.CustomEvent !== 'function') {
createCustomEvent = function createCustomEvent(eventName, params) {
params = params || {
bubbles: false,
cancelable: false,
detail: null
};
var evt = document.createEvent('CustomEvent');
evt.initCustomEvent(eventName, params.bubbles, params.cancelable, params.detail);
return evt;
};
}
const supportScopeQuery = (() => {
const element = document.createElement('div');
var workingDefaultPrevented = function () {
var e = document.createEvent('CustomEvent');
e.initEvent('Bootstrap', true, true);
e.preventDefault();
return e.defaultPrevented;
}();
try {
element.querySelectorAll(':scope *');
} catch (error) {
return false;
if (!workingDefaultPrevented) {
var origPreventDefault = Event.prototype.preventDefault;
Event.prototype.preventDefault = function () {
if (!this.cancelable) {
return;
}
return true;
})();
origPreventDefault.call(this);
Object.defineProperty(this, 'defaultPrevented', {
get: function get() {
return true;
},
configurable: true
});
};
} // MSEdge resets defaultPrevented flag upon dispatchEvent call if at least one listener is attached
if (!supportScopeQuery) {
find = function find(selector) {
if (!scopeSelectorRegex.test(selector)) {
return this.querySelectorAll(selector);
var defaultPreventedPreservedOnDispatch = function () {
var e = createCustomEvent('Bootstrap', {
cancelable: true
});
var element = document.createElement('div');
element.addEventListener('Bootstrap', function () {
return null;
});
e.preventDefault();
element.dispatchEvent(e);
return e.defaultPrevented;
}();
if (!matches) {
matches = Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector;
}
if (!closest) {
closest = function closest(selector) {
var element = this;
do {
if (matches.call(element, selector)) {
return element;
}
const hasId = Boolean(this.id);
element = element.parentElement || element.parentNode;
} while (element !== null && element.nodeType === 1);
if (!hasId) {
this.id = getUID('scope');
}
return null;
};
}
let nodeList = null;
var scopeSelectorRegex = /:scope\b/;
try {
selector = selector.replace(scopeSelectorRegex, `#${this.id}`);
nodeList = this.querySelectorAll(selector);
} finally {
if (!hasId) {
this.removeAttribute('id');
}
}
var supportScopeQuery = function () {
var element = document.createElement('div');
return nodeList;
};
findOne = function findOne(selector) {
if (!scopeSelectorRegex.test(selector)) {
return this.querySelector(selector);
}
const matches = find.call(this, selector);
if (typeof matches[0] !== 'undefined') {
return matches[0];
}
return null;
};
try {
element.querySelectorAll(':scope *');
} catch (error) {
return false;
}
return {
defaultPreventedPreservedOnDispatch,
find,
findOne
return true;
}();
if (!supportScopeQuery) {
find = function find(selector) {
if (!scopeSelectorRegex.test(selector)) {
return this.querySelectorAll(selector);
}
var hasId = Boolean(this.id);
if (!hasId) {
this.id = getUID('scope');
}
var nodeList = null;
try {
selector = selector.replace(scopeSelectorRegex, "#" + this.id);
nodeList = this.querySelectorAll(selector);
} finally {
if (!hasId) {
this.removeAttribute('id');
}
}
return nodeList;
};
})();
findOne = function findOne(selector) {
if (!scopeSelectorRegex.test(selector)) {
return this.querySelector(selector);
}
var matches = find.call(this, selector);
if (typeof matches[0] !== 'undefined') {
return matches[0];
}
return null;
};
}
/**
* --------------------------------------------------------------------------
@ -326,18 +440,18 @@ const Polyfill = (() => {
* ------------------------------------------------------------------------
*/
const namespaceRegex = /[^.]*(?=\..*)\.|.*/;
const stripNameRegex = /\..*/;
const keyEventRegex = /^key/;
const stripUidRegex = /::\d+$/;
const eventRegistry = {}; // Events storage
var namespaceRegex = /[^.]*(?=\..*)\.|.*/;
var stripNameRegex = /\..*/;
var keyEventRegex = /^key/;
var stripUidRegex = /::\d+$/;
var eventRegistry = {}; // Events storage
let uidEvent = 1;
const customEvents = {
var uidEvent = 1;
var customEvents = {
mouseenter: 'mouseover',
mouseleave: 'mouseout'
};
const nativeEvents = ['click', 'dblclick', 'mouseup', 'mousedown', 'contextmenu', 'mousewheel', 'DOMMouseScroll', 'mouseover', 'mouseout', 'mousemove', 'selectstart', 'selectend', 'keydown', 'keypress', 'keyup', 'orientationchange', 'touchstart', 'touchmove', 'touchend', 'touchcancel', 'pointerdown', 'pointermove', 'pointerup', 'pointerleave', 'pointercancel', 'gesturestart', 'gesturechange', 'gestureend', 'focus', 'blur', 'change', 'reset', 'select', 'submit', 'focusin', 'focusout', 'load', 'unload', 'beforeunload', 'resize', 'move', 'DOMContentLoaded', 'readystatechange', 'error', 'abort', 'scroll'];
var nativeEvents = ['click', 'dblclick', 'mouseup', 'mousedown', 'contextmenu', 'mousewheel', 'DOMMouseScroll', 'mouseover', 'mouseout', 'mousemove', 'selectstart', 'selectend', 'keydown', 'keypress', 'keyup', 'orientationchange', 'touchstart', 'touchmove', 'touchend', 'touchcancel', 'pointerdown', 'pointermove', 'pointerup', 'pointerleave', 'pointercancel', 'gesturestart', 'gesturechange', 'gestureend', 'focus', 'blur', 'change', 'reset', 'select', 'submit', 'focusin', 'focusout', 'load', 'unload', 'beforeunload', 'resize', 'move', 'DOMContentLoaded', 'readystatechange', 'error', 'abort', 'scroll'];
/**
* ------------------------------------------------------------------------
* Private methods
@ -345,11 +459,11 @@ const nativeEvents = ['click', 'dblclick', 'mouseup', 'mousedown', 'contextmenu'
*/
function getUidEvent(element, uid) {
return uid && `${uid}::${uidEvent++}` || element.uidEvent || uidEvent++;
return uid && uid + "::" + uidEvent++ || element.uidEvent || uidEvent++;
}
function getEvent(element) {
const uid = getUidEvent(element);
var uid = getUidEvent(element);
element.uidEvent = uid;
eventRegistry[uid] = eventRegistry[uid] || {};
return eventRegistry[uid];
@ -378,10 +492,10 @@ function bootstrapHandler(element, fn) {
function bootstrapDelegationHandler(element, selector, fn) {
return function handler(event) {
const domElements = element.querySelectorAll(selector);
var domElements = element.querySelectorAll(selector);
for (let target = event.target; target && target !== this; target = target.parentNode) {
for (let i = domElements.length; i--;) {
for (var target = event.target; target && target !== this; target = target.parentNode) {
for (var i = domElements.length; i--;) {
if (domElements[i] === target) {
fixEvent(event, target);
@ -404,11 +518,9 @@ function findHandler(events, handler, delegationSelector) {
delegationSelector = null;
}
const uidList = Object.keys(events);
for (let i = 0; i < uidList.length; i++) {
const uid = uidList[i];
const event = events[uid];
for (var _i = 0, _Object$keys = Object.keys(events); _i < _Object$keys.length; _i++) {
var uid = _Object$keys[_i];
var event = events[uid];
if (event.originalHandler === handler && event.delegationSelector === delegationSelector) {
return events[uid];
@ -419,17 +531,17 @@ function findHandler(events, handler, delegationSelector) {
}
function normalizeParams(originalTypeEvent, handler, delegationFn) {
const delegation = typeof handler === 'string';
const originalHandler = delegation ? delegationFn : handler; // allow to get the native events from namespaced events ('click.bs.button' --> 'click')
var delegation = typeof handler === 'string';
var originalHandler = delegation ? delegationFn : handler; // allow to get the native events from namespaced events ('click.bs.button' --> 'click')
let typeEvent = originalTypeEvent.replace(stripNameRegex, '');
const custom = customEvents[typeEvent];
var typeEvent = originalTypeEvent.replace(stripNameRegex, '');
var custom = customEvents[typeEvent];
if (custom) {
typeEvent = custom;
}
const isNative = nativeEvents.indexOf(typeEvent) > -1;
var isNative = nativeEvents.indexOf(typeEvent) > -1;
if (!isNative) {
typeEvent = originalTypeEvent;
@ -448,22 +560,22 @@ function addHandler(element, originalTypeEvent, handler, delegationFn, oneOff) {
delegationFn = null;
}
const _normalizeParams = normalizeParams(originalTypeEvent, handler, delegationFn),
delegation = _normalizeParams[0],
originalHandler = _normalizeParams[1],
typeEvent = _normalizeParams[2];
var _normalizeParams = normalizeParams(originalTypeEvent, handler, delegationFn),
delegation = _normalizeParams[0],
originalHandler = _normalizeParams[1],
typeEvent = _normalizeParams[2];
const events = getEvent(element);
const handlers = events[typeEvent] || (events[typeEvent] = {});
const previousFn = findHandler(handlers, originalHandler, delegation ? handler : null);
var events = getEvent(element);
var handlers = events[typeEvent] || (events[typeEvent] = {});
var previousFn = findHandler(handlers, originalHandler, delegation ? handler : null);
if (previousFn) {
previousFn.oneOff = previousFn.oneOff && oneOff;
return;
}
const uid = getUidEvent(originalHandler, originalTypeEvent.replace(namespaceRegex, ''));
const fn = delegation ? bootstrapDelegationHandler(element, handler, delegationFn) : bootstrapHandler(element, handler);
var uid = getUidEvent(originalHandler, originalTypeEvent.replace(namespaceRegex, ''));
var fn = delegation ? bootstrapDelegationHandler(element, handler, delegationFn) : bootstrapHandler(element, handler);
fn.delegationSelector = delegation ? handler : null;
fn.originalHandler = originalHandler;
fn.oneOff = oneOff;
@ -473,7 +585,7 @@ function addHandler(element, originalTypeEvent, handler, delegationFn, oneOff) {
}
function removeHandler(element, events, typeEvent, handler, delegationSelector) {
const fn = findHandler(events[typeEvent], handler, delegationSelector);
var fn = findHandler(events[typeEvent], handler, delegationSelector);
if (fn === null) {
return;
@ -484,37 +596,35 @@ function removeHandler(element, events, typeEvent, handler, delegationSelector)
}
function removeNamespacedHandlers(element, events, typeEvent, namespace) {
const storeElementEvent = events[typeEvent] || {};
Object.keys(storeElementEvent).forEach(handlerKey => {
var storeElementEvent = events[typeEvent] || {};
Object.keys(storeElementEvent).forEach(function (handlerKey) {
if (handlerKey.indexOf(namespace) > -1) {
const event = storeElementEvent[handlerKey];
var event = storeElementEvent[handlerKey];
removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector);
}
});
}
const EventHandler = {
on(element, event, handler, delegationFn) {
var EventHandler = {
on: function on(element, event, handler, delegationFn) {
addHandler(element, event, handler, delegationFn, false);
},
one(element, event, handler, delegationFn) {
one: function one(element, event, handler, delegationFn) {
addHandler(element, event, handler, delegationFn, true);
},
off(element, originalTypeEvent, handler, delegationFn) {
off: function off(element, originalTypeEvent, handler, delegationFn) {
if (typeof originalTypeEvent !== 'string' || !element) {
return;
}
const _normalizeParams2 = normalizeParams(originalTypeEvent, handler, delegationFn),
delegation = _normalizeParams2[0],
originalHandler = _normalizeParams2[1],
typeEvent = _normalizeParams2[2];
var _normalizeParams2 = normalizeParams(originalTypeEvent, handler, delegationFn),
delegation = _normalizeParams2[0],
originalHandler = _normalizeParams2[1],
typeEvent = _normalizeParams2[2];
const inNamespace = typeEvent !== originalTypeEvent;
const events = getEvent(element);
const isNamespace = originalTypeEvent.charAt(0) === '.';
var inNamespace = typeEvent !== originalTypeEvent;
var events = getEvent(element);
var isNamespace = originalTypeEvent.charAt(0) === '.';
if (typeof originalHandler !== 'undefined') {
// Simplest case: handler is passed, remove that listener ONLY.
@ -527,35 +637,34 @@ const EventHandler = {
}
if (isNamespace) {
Object.keys(events).forEach(elementEvent => {
Object.keys(events).forEach(function (elementEvent) {
removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.substr(1));
});
}
const storeElementEvent = events[typeEvent] || {};
Object.keys(storeElementEvent).forEach(keyHandlers => {
const handlerKey = keyHandlers.replace(stripUidRegex, '');
var storeElementEvent = events[typeEvent] || {};
Object.keys(storeElementEvent).forEach(function (keyHandlers) {
var handlerKey = keyHandlers.replace(stripUidRegex, '');
if (!inNamespace || originalTypeEvent.indexOf(handlerKey) > -1) {
const event = storeElementEvent[keyHandlers];
var event = storeElementEvent[keyHandlers];
removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector);
}
});
},
trigger(element, event, args) {
trigger: function trigger(element, event, args) {
if (typeof event !== 'string' || !element) {
return null;
}
const typeEvent = event.replace(stripNameRegex, '');
const inNamespace = event !== typeEvent;
const isNative = nativeEvents.indexOf(typeEvent) > -1;
let jQueryEvent;
let bubbles = true;
let nativeDispatch = true;
let defaultPrevented = false;
let evt = null;
var typeEvent = event.replace(stripNameRegex, '');
var inNamespace = event !== typeEvent;
var isNative = nativeEvents.indexOf(typeEvent) > -1;
var jQueryEvent;
var bubbles = true;
var nativeDispatch = true;
var defaultPrevented = false;
var evt = null;
if (inNamespace && typeof jQuery !== 'undefined') {
jQueryEvent = jQuery.Event(event, args);
@ -569,20 +678,19 @@ const EventHandler = {
evt = document.createEvent('HTMLEvents');
evt.initEvent(typeEvent, bubbles, true);
} else {
evt = new CustomEvent(event, {
bubbles,
evt = createCustomEvent(event, {
bubbles: bubbles,
cancelable: true
});
} // merge custom informations in our event
if (typeof args !== 'undefined') {
Object.keys(args).forEach(key => {
Object.keys(args).forEach(function (key) {
Object.defineProperty(evt, key, {
get() {
get: function get() {
return args[key];
}
});
});
}
@ -590,9 +698,11 @@ const EventHandler = {
if (defaultPrevented) {
evt.preventDefault();
if (!Polyfill.defaultPreventedPreservedOnDispatch) {
if (!defaultPreventedPreservedOnDispatch) {
Object.defineProperty(evt, 'defaultPrevented', {
get: () => true
get: function get() {
return true;
}
});
}
}
@ -607,7 +717,6 @@ const EventHandler = {
return evt;
}
};
/**
@ -622,15 +731,12 @@ const EventHandler = {
* ------------------------------------------------------------------------
*/
const findFn = Polyfill.find,
findOne = Polyfill.findOne;
const NODE_TEXT = 3;
const SelectorEngine = {
matches(element, selector) {
return element.matches(selector);
var NODE_TEXT = 3;
var SelectorEngine = {
matches: function matches$1(element, selector) {
return matches.call(element, selector);
},
find(selector, element) {
find: function find$1(selector, element) {
if (element === void 0) {
element = document.documentElement;
}
@ -639,10 +745,9 @@ const SelectorEngine = {
return null;
}
return findFn.call(element, selector);
return find.call(element, selector);
},
findOne(selector, element) {
findOne: function findOne$1(selector, element) {
if (element === void 0) {
element = document.documentElement;
}
@ -653,23 +758,25 @@ const SelectorEngine = {
return findOne.call(element, selector);
},
children: function children(element, selector) {
var _this = this;
children(element, selector) {
if (typeof selector !== 'string') {
return null;
}
const children = makeArray(element.children);
return children.filter(child => this.matches(child, selector));
var children = makeArray(element.children);
return children.filter(function (child) {
return _this.matches(child, selector);
});
},
parents(element, selector) {
parents: function parents(element, selector) {
if (typeof selector !== 'string') {
return null;
}
const parents = [];
let ancestor = element.parentNode;
var parents = [];
var ancestor = element.parentNode;
while (ancestor && ancestor.nodeType === Node.ELEMENT_NODE && ancestor.nodeType !== NODE_TEXT) {
if (this.matches(ancestor, selector)) {
@ -681,22 +788,20 @@ const SelectorEngine = {
return parents;
},
closest(element, selector) {
closest: function closest$1(element, selector) {
if (typeof selector !== 'string') {
return null;
}
return element.closest(selector);
return closest.call(element, selector);
},
prev(element, selector) {
prev: function prev(element, selector) {
if (typeof selector !== 'string') {
return null;
}
const siblings = [];
let previous = element.previousSibling;
var siblings = [];
var previous = element.previousSibling;
while (previous && previous.nodeType === Node.ELEMENT_NODE && previous.nodeType !== NODE_TEXT) {
if (this.matches(previous, selector)) {
@ -708,35 +813,28 @@ const SelectorEngine = {
return siblings;
}
};
/**
* --------------------------------------------------------------------------
* Bootstrap (v4.3.1): alert.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* --------------------------------------------------------------------------
*/
/**
* ------------------------------------------------------------------------
* Constants
* ------------------------------------------------------------------------
*/
const NAME = 'alert';
const VERSION = '4.3.1';
const DATA_KEY = 'bs.alert';
const EVENT_KEY = `.${DATA_KEY}`;
const DATA_API_KEY = '.data-api';
const Selector = {
var NAME = 'alert';
var VERSION = '4.3.1';
var DATA_KEY = 'bs.alert';
var EVENT_KEY = "." + DATA_KEY;
var DATA_API_KEY = '.data-api';
var Selector = {
DISMISS: '[data-dismiss="alert"]'
};
const Event$1 = {
CLOSE: `close${EVENT_KEY}`,
CLOSED: `closed${EVENT_KEY}`,
CLICK_DATA_API: `click${EVENT_KEY}${DATA_API_KEY}`
var Event$1 = {
CLOSE: "close" + EVENT_KEY,
CLOSED: "closed" + EVENT_KEY,
CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY
};
const ClassName = {
var ClassName = {
ALERT: 'alert',
FADE: 'fade',
SHOW: 'show'
@ -748,8 +846,10 @@ const ClassName = {
};
class Alert {
constructor(element) {
var Alert =
/*#__PURE__*/
function () {
function Alert(element) {
this._element = element;
if (this._element) {
@ -758,53 +858,53 @@ class Alert {
} // Getters
static get VERSION() {
return VERSION;
} // Public
var _proto = Alert.prototype;
close(element) {
let rootElement = this._element;
// Public
_proto.close = function close(element) {
var rootElement = this._element;
if (element) {
rootElement = this._getRootElement(element);
}
const customEvent = this._triggerCloseEvent(rootElement);
var customEvent = this._triggerCloseEvent(rootElement);
if (customEvent === null || customEvent.defaultPrevented) {
return;
}
this._removeElement(rootElement);
}
};
dispose() {
_proto.dispose = function dispose() {
Data.removeData(this._element, DATA_KEY);
this._element = null;
} // Private
;
_getRootElement(element) {
const selector = getSelectorFromElement(element);
let parent = false;
_proto._getRootElement = function _getRootElement(element) {
var selector = getSelectorFromElement(element);
var parent = false;
if (selector) {
parent = SelectorEngine.findOne(selector);
}
if (!parent) {
parent = SelectorEngine.closest(element, `.${ClassName.ALERT}`);
parent = SelectorEngine.closest(element, "." + ClassName.ALERT);
}
return parent;
}
};
_triggerCloseEvent(element) {
_proto._triggerCloseEvent = function _triggerCloseEvent(element) {
return EventHandler.trigger(element, Event$1.CLOSE);
}
};
_proto._removeElement = function _removeElement(element) {
var _this = this;
_removeElement(element) {
element.classList.remove(ClassName.SHOW);
if (!element.classList.contains(ClassName.FADE)) {
@ -813,23 +913,25 @@ class Alert {
return;
}
const transitionDuration = getTransitionDurationFromElement(element);
EventHandler.one(element, TRANSITION_END, event => this._destroyElement(element, event));
var transitionDuration = getTransitionDurationFromElement(element);
EventHandler.one(element, TRANSITION_END, function (event) {
return _this._destroyElement(element, event);
});
emulateTransitionEnd(element, transitionDuration);
}
};
_destroyElement(element) {
_proto._destroyElement = function _destroyElement(element) {
if (element.parentNode) {
element.parentNode.removeChild(element);
}
EventHandler.trigger(element, Event$1.CLOSED);
} // Static
;
static _jQueryInterface(config) {
Alert._jQueryInterface = function _jQueryInterface(config) {
return this.each(function () {
let data = Data.getData(this, DATA_KEY);
var data = Data.getData(this, DATA_KEY);
if (!data) {
data = new Alert(this);
@ -839,9 +941,9 @@ class Alert {
data[config](this);
}
});
}
};
static _handleDismiss(alertInstance) {
Alert._handleDismiss = function _handleDismiss(alertInstance) {
return function (event) {
if (event) {
event.preventDefault();
@ -849,13 +951,21 @@ class Alert {
alertInstance.close(this);
};
}
};
static _getInstance(element) {
Alert._getInstance = function _getInstance(element) {
return Data.getData(element, DATA_KEY);
}
};
}
_createClass(Alert, null, [{
key: "VERSION",
get: function get() {
return VERSION;
}
}]);
return Alert;
}();
/**
* ------------------------------------------------------------------------
* Data Api implementation
@ -872,49 +982,43 @@ EventHandler.on(document, Event$1.CLICK_DATA_API, Selector.DISMISS, Alert._handl
*/
if (typeof jQuery !== 'undefined') {
const JQUERY_NO_CONFLICT = jQuery.fn[NAME];
var JQUERY_NO_CONFLICT = jQuery.fn[NAME];
jQuery.fn[NAME] = Alert._jQueryInterface;
jQuery.fn[NAME].Constructor = Alert;
jQuery.fn[NAME].noConflict = () => {
jQuery.fn[NAME].noConflict = function () {
jQuery.fn[NAME] = JQUERY_NO_CONFLICT;
return Alert._jQueryInterface;
};
}
/**
* --------------------------------------------------------------------------
* Bootstrap (v4.3.1): button.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* --------------------------------------------------------------------------
*/
/**
* ------------------------------------------------------------------------
* Constants
* ------------------------------------------------------------------------
*/
const NAME$1 = 'button';
const VERSION$1 = '4.3.1';
const DATA_KEY$1 = 'bs.button';
const EVENT_KEY$1 = `.${DATA_KEY$1}`;
const DATA_API_KEY$1 = '.data-api';
const ClassName$1 = {
var NAME$1 = 'button';
var VERSION$1 = '4.3.1';
var DATA_KEY$1 = 'bs.button';
var EVENT_KEY$1 = "." + DATA_KEY$1;
var DATA_API_KEY$1 = '.data-api';
var ClassName$1 = {
ACTIVE: 'active',
BUTTON: 'btn',
FOCUS: 'focus'
};
const Selector$1 = {
var Selector$1 = {
DATA_TOGGLE_CARROT: '[data-toggle^="button"]',
DATA_TOGGLE: '[data-toggle="buttons"]',
INPUT: 'input:not([type="hidden"])',
ACTIVE: '.active',
BUTTON: '.btn'
};
const Event$2 = {
CLICK_DATA_API: `click${EVENT_KEY$1}${DATA_API_KEY$1}`,
FOCUS_DATA_API: `focus${EVENT_KEY$1}${DATA_API_KEY$1}`,
BLUR_DATA_API: `blur${EVENT_KEY$1}${DATA_API_KEY$1}`
var Event$2 = {
CLICK_DATA_API: "click" + EVENT_KEY$1 + DATA_API_KEY$1,
FOCUS_DATA_API: "focus" + EVENT_KEY$1 + DATA_API_KEY$1,
BLUR_DATA_API: "blur" + EVENT_KEY$1 + DATA_API_KEY$1
/**
* ------------------------------------------------------------------------
* Class Definition
@ -923,32 +1027,32 @@ const Event$2 = {
};
class Button {
constructor(element) {
var Button =
/*#__PURE__*/
function () {
function Button(element) {
this._element = element;
Data.setData(element, DATA_KEY$1, this);
} // Getters
static get VERSION() {
return VERSION$1;
} // Public
var _proto = Button.prototype;
toggle() {
let triggerChangeEvent = true;
let addAriaPressed = true;
const rootElement = SelectorEngine.closest(this._element, Selector$1.DATA_TOGGLE);
// Public
_proto.toggle = function toggle() {
var triggerChangeEvent = true;
var addAriaPressed = true;
var rootElement = SelectorEngine.closest(this._element, Selector$1.DATA_TOGGLE);
if (rootElement) {
const input = SelectorEngine.findOne(Selector$1.INPUT, this._element);
var input = SelectorEngine.findOne(Selector$1.INPUT, this._element);
if (input) {
if (input.type === 'radio') {
if (input.checked && this._element.classList.contains(ClassName$1.ACTIVE)) {
triggerChangeEvent = false;
} else {
const activeElement = SelectorEngine.findOne(Selector$1.ACTIVE, rootElement);
var activeElement = SelectorEngine.findOne(Selector$1.ACTIVE, rootElement);
if (activeElement) {
activeElement.classList.remove(ClassName$1.ACTIVE);
@ -977,17 +1081,17 @@ class Button {
if (triggerChangeEvent) {
this._element.classList.toggle(ClassName$1.ACTIVE);
}
}
};
dispose() {
_proto.dispose = function dispose() {
Data.removeData(this._element, DATA_KEY$1);
this._element = null;
} // Static
;
static _jQueryInterface(config) {
Button._jQueryInterface = function _jQueryInterface(config) {
return this.each(function () {
let data = Data.getData(this, DATA_KEY$1);
var data = Data.getData(this, DATA_KEY$1);
if (!data) {
data = new Button(this);
@ -997,13 +1101,21 @@ class Button {
data[config]();
}
});
}
};
static _getInstance(element) {
Button._getInstance = function _getInstance(element) {
return Data.getData(element, DATA_KEY$1);
}
};
}
_createClass(Button, null, [{
key: "VERSION",
get: function get() {
return VERSION$1;
}
}]);
return Button;
}();
/**
* ------------------------------------------------------------------------
* Data Api implementation
@ -1011,15 +1123,15 @@ class Button {
*/
EventHandler.on(document, Event$2.CLICK_DATA_API, Selector$1.DATA_TOGGLE_CARROT, event => {
EventHandler.on(document, Event$2.CLICK_DATA_API, Selector$1.DATA_TOGGLE_CARROT, function (event) {
event.preventDefault();
let button = event.target;
var button = event.target;
if (!button.classList.contains(ClassName$1.BUTTON)) {
button = SelectorEngine.closest(button, Selector$1.BUTTON);
}
let data = Data.getData(button, DATA_KEY$1);
var data = Data.getData(button, DATA_KEY$1);
if (!data) {
data = new Button(button);
@ -1028,13 +1140,19 @@ EventHandler.on(document, Event$2.CLICK_DATA_API, Selector$1.DATA_TOGGLE_CARROT,
data.toggle();
});
EventHandler.on(document, Event$2.FOCUS_DATA_API, Selector$1.DATA_TOGGLE_CARROT, event => {
const button = SelectorEngine.closest(event.target, Selector$1.BUTTON);
button.classList.add(ClassName$1.FOCUS);
EventHandler.on(document, Event$2.FOCUS_DATA_API, Selector$1.DATA_TOGGLE_CARROT, function (event) {
var button = SelectorEngine.closest(event.target, Selector$1.BUTTON);
if (button) {
button.classList.add(ClassName$1.FOCUS);
}
});
EventHandler.on(document, Event$2.BLUR_DATA_API, Selector$1.DATA_TOGGLE_CARROT, event => {
const button = SelectorEngine.closest(event.target, Selector$1.BUTTON);
button.classList.remove(ClassName$1.FOCUS);
EventHandler.on(document, Event$2.BLUR_DATA_API, Selector$1.DATA_TOGGLE_CARROT, function (event) {
var button = SelectorEngine.closest(event.target, Selector$1.BUTTON);
if (button) {
button.classList.remove(ClassName$1.FOCUS);
}
});
/**
* ------------------------------------------------------------------------
@ -1044,34 +1162,16 @@ EventHandler.on(document, Event$2.BLUR_DATA_API, Selector$1.DATA_TOGGLE_CARROT,
*/
if (typeof jQuery !== 'undefined') {
const JQUERY_NO_CONFLICT = jQuery.fn[NAME$1];
var JQUERY_NO_CONFLICT$1 = jQuery.fn[NAME$1];
jQuery.fn[NAME$1] = Button._jQueryInterface;
jQuery.fn[NAME$1].Constructor = Button;
jQuery.fn[NAME$1].noConflict = () => {
jQuery.fn[NAME$1] = JQUERY_NO_CONFLICT;
jQuery.fn[NAME$1].noConflict = function () {
jQuery.fn[NAME$1] = JQUERY_NO_CONFLICT$1;
return Button._jQueryInterface;
};
}
function _extends() {
_extends = Object.assign || function (target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i];
for (var key in source) {
if (Object.prototype.hasOwnProperty.call(source, key)) {
target[key] = source[key];
}
}
}
return target;
};
return _extends.apply(this, arguments);
}
/**
* --------------------------------------------------------------------------
* Bootstrap (v4.3.1): dom/manipulator.js
@ -1099,51 +1199,47 @@ function normalizeData(val) {
}
function normalizeDataKey(key) {
return key.replace(/[A-Z]/g, chr => chr.toLowerCase());
return key.replace(/[A-Z]/g, function (chr) {
return chr.toLowerCase();
});
}
const Manipulator = {
setDataAttribute(element, key, value) {
element.setAttribute(`data-${normalizeDataKey(key)}`, value);
var Manipulator = {
setDataAttribute: function setDataAttribute(element, key, value) {
element.setAttribute("data-" + normalizeDataKey(key), value);
},
removeDataAttribute(element, key) {
element.removeAttribute(`data-${normalizeDataKey(key)}`);
removeDataAttribute: function removeDataAttribute(element, key) {
element.removeAttribute("data-" + normalizeDataKey(key));
},
getDataAttributes(element) {
getDataAttributes: function getDataAttributes(element) {
if (!element) {
return {};
}
const attributes = _extends({}, element.dataset);
var attributes = _objectSpread({}, element.dataset);
Object.keys(attributes).forEach(key => {
Object.keys(attributes).forEach(function (key) {
attributes[key] = normalizeData(attributes[key]);
});
return attributes;
},
getDataAttribute(element, key) {
return normalizeData(element.getAttribute(`data-${normalizeDataKey(key)}`));
getDataAttribute: function getDataAttribute(element, key) {
return normalizeData(element.getAttribute("data-" + normalizeDataKey(key)));
},
offset(element) {
const rect = element.getBoundingClientRect();
offset: function offset(element) {
var rect = element.getBoundingClientRect();
return {
top: rect.top + document.body.scrollTop,
left: rect.left + document.body.scrollLeft
};
},
position(element) {
position: function position(element) {
return {
top: element.offsetTop,
left: element.offsetLeft
};
},
toggleClass(element, className) {
toggleClass: function toggleClass(element, className) {
if (!element) {
return;
}
@ -1154,7 +1250,6 @@ const Manipulator = {
element.classList.add(className);
}
}
};
/**
@ -1163,19 +1258,19 @@ const Manipulator = {
* ------------------------------------------------------------------------
*/
const NAME$2 = 'carousel';
const VERSION$2 = '4.3.1';
const DATA_KEY$2 = 'bs.carousel';
const EVENT_KEY$2 = `.${DATA_KEY$2}`;
const DATA_API_KEY$2 = '.data-api';
const ARROW_LEFT_KEYCODE = 37; // KeyboardEvent.which value for left arrow key
var NAME$2 = 'carousel';
var VERSION$2 = '4.3.1';
var DATA_KEY$2 = 'bs.carousel';
var EVENT_KEY$2 = "." + DATA_KEY$2;
var DATA_API_KEY$2 = '.data-api';
var ARROW_LEFT_KEYCODE = 37; // KeyboardEvent.which value for left arrow key
const ARROW_RIGHT_KEYCODE = 39; // KeyboardEvent.which value for right arrow key
var ARROW_RIGHT_KEYCODE = 39; // KeyboardEvent.which value for right arrow key
const TOUCHEVENT_COMPAT_WAIT = 500; // Time for mouse compat events to fire after touch
var TOUCHEVENT_COMPAT_WAIT = 500; // Time for mouse compat events to fire after touch
const SWIPE_THRESHOLD = 40;
const Default = {
var SWIPE_THRESHOLD = 40;
var Default = {
interval: 5000,
keyboard: true,
slide: false,
@ -1183,7 +1278,7 @@ const Default = {
wrap: true,
touch: true
};
const DefaultType = {
var DefaultType = {
interval: '(number|boolean)',
keyboard: 'boolean',
slide: '(boolean|string)',
@ -1191,28 +1286,28 @@ const DefaultType = {
wrap: 'boolean',
touch: 'boolean'
};
const Direction = {
var Direction = {
NEXT: 'next',
PREV: 'prev',
LEFT: 'left',
RIGHT: 'right'
};
const Event$3 = {
SLIDE: `slide${EVENT_KEY$2}`,
SLID: `slid${EVENT_KEY$2}`,
KEYDOWN: `keydown${EVENT_KEY$2}`,
MOUSEENTER: `mouseenter${EVENT_KEY$2}`,
MOUSELEAVE: `mouseleave${EVENT_KEY$2}`,
TOUCHSTART: `touchstart${EVENT_KEY$2}`,
TOUCHMOVE: `touchmove${EVENT_KEY$2}`,
TOUCHEND: `touchend${EVENT_KEY$2}`,
POINTERDOWN: `pointerdown${EVENT_KEY$2}`,
POINTERUP: `pointerup${EVENT_KEY$2}`,
DRAG_START: `dragstart${EVENT_KEY$2}`,
LOAD_DATA_API: `load${EVENT_KEY$2}${DATA_API_KEY$2}`,
CLICK_DATA_API: `click${EVENT_KEY$2}${DATA_API_KEY$2}`
var Event$3 = {
SLIDE: "slide" + EVENT_KEY$2,
SLID: "slid" + EVENT_KEY$2,
KEYDOWN: "keydown" + EVENT_KEY$2,
MOUSEENTER: "mouseenter" + EVENT_KEY$2,
MOUSELEAVE: "mouseleave" + EVENT_KEY$2,
TOUCHSTART: "touchstart" + EVENT_KEY$2,
TOUCHMOVE: "touchmove" + EVENT_KEY$2,
TOUCHEND: "touchend" + EVENT_KEY$2,
POINTERDOWN: "pointerdown" + EVENT_KEY$2,
POINTERUP: "pointerup" + EVENT_KEY$2,
DRAG_START: "dragstart" + EVENT_KEY$2,
LOAD_DATA_API: "load" + EVENT_KEY$2 + DATA_API_KEY$2,
CLICK_DATA_API: "click" + EVENT_KEY$2 + DATA_API_KEY$2
};
const ClassName$2 = {
var ClassName$2 = {
CAROUSEL: 'carousel',
ACTIVE: 'active',
SLIDE: 'slide',
@ -1223,7 +1318,7 @@ const ClassName$2 = {
ITEM: 'carousel-item',
POINTER_EVENT: 'pointer-event'
};
const Selector$2 = {
var Selector$2 = {
ACTIVE: '.active',
ACTIVE_ITEM: '.active.carousel-item',
ITEM: '.carousel-item',
@ -1233,7 +1328,7 @@ const Selector$2 = {
DATA_SLIDE: '[data-slide], [data-slide-to]',
DATA_RIDE: '[data-ride="carousel"]'
};
const PointerType = {
var PointerType = {
TOUCH: 'touch',
PEN: 'pen'
/**
@ -1244,8 +1339,10 @@ const PointerType = {
};
class Carousel {
constructor(element, config) {
var Carousel =
/*#__PURE__*/
function () {
function Carousel(element, config) {
this._items = null;
this._interval = null;
this._activeElement = null;
@ -1266,36 +1363,30 @@ class Carousel {
} // Getters
static get VERSION() {
return VERSION$2;
}
var _proto = Carousel.prototype;
static get Default() {
return Default;
} // Public
next() {
// Public
_proto.next = function next() {
if (!this._isSliding) {
this._slide(Direction.NEXT);
}
}
};
nextWhenVisible() {
_proto.nextWhenVisible = function nextWhenVisible() {
// Don't call next when the page isn't visible
// or the carousel or its parent isn't visible
if (!document.hidden && isVisible(this._element)) {
this.next();
}
}
};
prev() {
_proto.prev = function prev() {
if (!this._isSliding) {
this._slide(Direction.PREV);
}
}
};
pause(event) {
_proto.pause = function pause(event) {
if (!event) {
this._isPaused = true;
}
@ -1307,9 +1398,9 @@ class Carousel {
clearInterval(this._interval);
this._interval = null;
}
};
cycle(event) {
_proto.cycle = function cycle(event) {
if (!event) {
this._isPaused = false;
}
@ -1322,19 +1413,23 @@ class Carousel {
if (this._config && this._config.interval && !this._isPaused) {
this._interval = setInterval((document.visibilityState ? this.nextWhenVisible : this.next).bind(this), this._config.interval);
}
}
};
_proto.to = function to(index) {
var _this = this;
to(index) {
this._activeElement = SelectorEngine.findOne(Selector$2.ACTIVE_ITEM, this._element);
const activeIndex = this._getItemIndex(this._activeElement);
var activeIndex = this._getItemIndex(this._activeElement);
if (index > this._items.length - 1 || index < 0) {
return;
}
if (this._isSliding) {
EventHandler.one(this._element, Event$3.SLID, () => this.to(index));
EventHandler.one(this._element, Event$3.SLID, function () {
return _this.to(index);
});
return;
}
@ -1344,12 +1439,12 @@ class Carousel {
return;
}
const direction = index > activeIndex ? Direction.NEXT : Direction.PREV;
var direction = index > activeIndex ? Direction.NEXT : Direction.PREV;
this._slide(direction, this._items[index]);
}
};
dispose() {
_proto.dispose = function dispose() {
EventHandler.off(this._element, EVENT_KEY$2);
Data.removeData(this._element, DATA_KEY$2);
this._items = null;
@ -1361,22 +1456,23 @@ class Carousel {
this._activeElement = null;
this._indicatorsElement = null;
} // Private
;
_getConfig(config) {
config = _extends({}, Default, config);
_proto._getConfig = function _getConfig(config) {
config = _objectSpread({}, Default, config);
typeCheckConfig(NAME$2, config, DefaultType);
return config;
}
};
_handleSwipe() {
const absDeltax = Math.abs(this.touchDeltaX);
_proto._handleSwipe = function _handleSwipe() {
var absDeltax = Math.abs(this.touchDeltaX);
if (absDeltax <= SWIPE_THRESHOLD) {
return;
}
const direction = absDeltax / this.touchDeltaX; // swipe left
var direction = absDeltax / this.touchDeltaX;
this.touchDeltaX = 0; // swipe left
if (direction > 0) {
this.prev();
@ -1386,53 +1482,63 @@ class Carousel {
if (direction < 0) {
this.next();
}
}
};
_proto._addEventListeners = function _addEventListeners() {
var _this2 = this;
_addEventListeners() {
if (this._config.keyboard) {
EventHandler.on(this._element, Event$3.KEYDOWN, event => this._keydown(event));
EventHandler.on(this._element, Event$3.KEYDOWN, function (event) {
return _this2._keydown(event);
});
}
if (this._config.pause === 'hover') {
EventHandler.on(this._element, Event$3.MOUSEENTER, event => this.pause(event));
EventHandler.on(this._element, Event$3.MOUSELEAVE, event => this.cycle(event));
EventHandler.on(this._element, Event$3.MOUSEENTER, function (event) {
return _this2.pause(event);
});
EventHandler.on(this._element, Event$3.MOUSELEAVE, function (event) {
return _this2.cycle(event);
});
}
if (this._config.touch) {
this._addTouchEventListeners();
}
}
};
_proto._addTouchEventListeners = function _addTouchEventListeners() {
var _this3 = this;
_addTouchEventListeners() {
if (!this._touchSupported) {
return;
}
const start = event => {
if (this._pointerEvent && PointerType[event.pointerType.toUpperCase()]) {
this.touchStartX = event.clientX;
} else if (!this._pointerEvent) {
this.touchStartX = event.touches[0].clientX;
var start = function start(event) {
if (_this3._pointerEvent && PointerType[event.pointerType.toUpperCase()]) {
_this3.touchStartX = event.clientX;
} else if (!_this3._pointerEvent) {
_this3.touchStartX = event.touches[0].clientX;
}
};
const move = event => {
var move = function move(event) {
// ensure swiping with one touch and not pinching
if (event.touches && event.touches.length > 1) {
this.touchDeltaX = 0;
_this3.touchDeltaX = 0;
} else {
this.touchDeltaX = event.touches[0].clientX - this.touchStartX;
_this3.touchDeltaX = event.touches[0].clientX - _this3.touchStartX;
}
};
const end = event => {
if (this._pointerEvent && PointerType[event.pointerType.toUpperCase()]) {
this.touchDeltaX = event.clientX - this.touchStartX;
var end = function end(event) {
if (_this3._pointerEvent && PointerType[event.pointerType.toUpperCase()]) {
_this3.touchDeltaX = event.clientX - _this3.touchStartX;
}
this._handleSwipe();
_this3._handleSwipe();
if (this._config.pause === 'hover') {
if (_this3._config.pause === 'hover') {
// If it's a touch-enabled device, mouseenter/leave are fired as
// part of the mouse compatibility events on first tap - the carousel
// would stop cycling until user tapped out of it;
@ -1440,33 +1546,47 @@ class Carousel {
// (as if it's the second time we tap on it, mouseenter compat event
// is NOT fired) and after a timeout (to allow for mouse compatibility
// events to fire) we explicitly restart cycling
this.pause();
_this3.pause();
if (this.touchTimeout) {
clearTimeout(this.touchTimeout);
if (_this3.touchTimeout) {
clearTimeout(_this3.touchTimeout);
}
this.touchTimeout = setTimeout(event => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval);
_this3.touchTimeout = setTimeout(function (event) {
return _this3.cycle(event);
}, TOUCHEVENT_COMPAT_WAIT + _this3._config.interval);
}
};
makeArray(SelectorEngine.find(Selector$2.ITEM_IMG, this._element)).forEach(itemImg => {
EventHandler.on(itemImg, Event$3.DRAG_START, e => e.preventDefault());
makeArray(SelectorEngine.find(Selector$2.ITEM_IMG, this._element)).forEach(function (itemImg) {
EventHandler.on(itemImg, Event$3.DRAG_START, function (e) {
return e.preventDefault();
});
});
if (this._pointerEvent) {
EventHandler.on(this._element, Event$3.POINTERDOWN, event => start(event));
EventHandler.on(this._element, Event$3.POINTERUP, event => end(event));
EventHandler.on(this._element, Event$3.POINTERDOWN, function (event) {
return start(event);
});
EventHandler.on(this._element, Event$3.POINTERUP, function (event) {
return end(event);
});
this._element.classList.add(ClassName$2.POINTER_EVENT);
} else {
EventHandler.on(this._element, Event$3.TOUCHSTART, event => start(event));
EventHandler.on(this._element, Event$3.TOUCHMOVE, event => move(event));
EventHandler.on(this._element, Event$3.TOUCHEND, event => end(event));
EventHandler.on(this._element, Event$3.TOUCHSTART, function (event) {
return start(event);
});
EventHandler.on(this._element, Event$3.TOUCHMOVE, function (event) {
return move(event);
});
EventHandler.on(this._element, Event$3.TOUCHEND, function (event) {
return end(event);
});
}
}
};
_keydown(event) {
_proto._keydown = function _keydown(event) {
if (/input|textarea/i.test(event.target.tagName)) {
return;
}
@ -1484,73 +1604,75 @@ class Carousel {
default:
}
}
};
_getItemIndex(element) {
_proto._getItemIndex = function _getItemIndex(element) {
this._items = element && element.parentNode ? makeArray(SelectorEngine.find(Selector$2.ITEM, element.parentNode)) : [];
return this._items.indexOf(element);
}
};
_getItemByDirection(direction, activeElement) {
const isNextDirection = direction === Direction.NEXT;
const isPrevDirection = direction === Direction.PREV;
_proto._getItemByDirection = function _getItemByDirection(direction, activeElement) {
var isNextDirection = direction === Direction.NEXT;
var isPrevDirection = direction === Direction.PREV;
const activeIndex = this._getItemIndex(activeElement);
var activeIndex = this._getItemIndex(activeElement);
const lastItemIndex = this._items.length - 1;
const isGoingToWrap = isPrevDirection && activeIndex === 0 || isNextDirection && activeIndex === lastItemIndex;
var lastItemIndex = this._items.length - 1;
var isGoingToWrap = isPrevDirection && activeIndex === 0 || isNextDirection && activeIndex === lastItemIndex;
if (isGoingToWrap && !this._config.wrap) {
return activeElement;
}
const delta = direction === Direction.PREV ? -1 : 1;
const itemIndex = (activeIndex + delta) % this._items.length;
var delta = direction === Direction.PREV ? -1 : 1;
var itemIndex = (activeIndex + delta) % this._items.length;
return itemIndex === -1 ? this._items[this._items.length - 1] : this._items[itemIndex];
}
};
_triggerSlideEvent(relatedTarget, eventDirectionName) {
const targetIndex = this._getItemIndex(relatedTarget);
_proto._triggerSlideEvent = function _triggerSlideEvent(relatedTarget, eventDirectionName) {
var targetIndex = this._getItemIndex(relatedTarget);
const fromIndex = this._getItemIndex(SelectorEngine.findOne(Selector$2.ACTIVE_ITEM, this._element));
var fromIndex = this._getItemIndex(SelectorEngine.findOne(Selector$2.ACTIVE_ITEM, this._element));
return EventHandler.trigger(this._element, Event$3.SLIDE, {
relatedTarget,
relatedTarget: relatedTarget,
direction: eventDirectionName,
from: fromIndex,
to: targetIndex
});
}
};
_setActiveIndicatorElement(element) {
_proto._setActiveIndicatorElement = function _setActiveIndicatorElement(element) {
if (this._indicatorsElement) {
const indicators = SelectorEngine.find(Selector$2.ACTIVE, this._indicatorsElement);
var indicators = SelectorEngine.find(Selector$2.ACTIVE, this._indicatorsElement);
for (let i = 0; i < indicators.length; i++) {
for (var i = 0; i < indicators.length; i++) {
indicators[i].classList.remove(ClassName$2.ACTIVE);
}
const nextIndicator = this._indicatorsElement.children[this._getItemIndex(element)];
var nextIndicator = this._indicatorsElement.children[this._getItemIndex(element)];
if (nextIndicator) {
nextIndicator.classList.add(ClassName$2.ACTIVE);
}
}
}
};
_slide(direction, element) {
const activeElement = SelectorEngine.findOne(Selector$2.ACTIVE_ITEM, this._element);
_proto._slide = function _slide(direction, element) {
var _this4 = this;
const activeElementIndex = this._getItemIndex(activeElement);
var activeElement = SelectorEngine.findOne(Selector$2.ACTIVE_ITEM, this._element);
const nextElement = element || activeElement && this._getItemByDirection(direction, activeElement);
var activeElementIndex = this._getItemIndex(activeElement);
const nextElementIndex = this._getItemIndex(nextElement);
var nextElement = element || activeElement && this._getItemByDirection(direction, activeElement);
const isCycling = Boolean(this._interval);
let directionalClassName;
let orderClassName;
let eventDirectionName;
var nextElementIndex = this._getItemIndex(nextElement);
var isCycling = Boolean(this._interval);
var directionalClassName;
var orderClassName;
var eventDirectionName;
if (direction === Direction.NEXT) {
directionalClassName = ClassName$2.LEFT;
@ -1567,7 +1689,7 @@ class Carousel {
return;
}
const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName);
var slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName);
if (slideEvent.defaultPrevented) {
return;
@ -1591,7 +1713,7 @@ class Carousel {
reflow(nextElement);
activeElement.classList.add(directionalClassName);
nextElement.classList.add(directionalClassName);
const nextElementInterval = parseInt(nextElement.getAttribute('data-interval'), 10);
var nextElementInterval = parseInt(nextElement.getAttribute('data-interval'), 10);
if (nextElementInterval) {
this._config.defaultInterval = this._config.defaultInterval || this._config.interval;
@ -1600,17 +1722,17 @@ class Carousel {
this._config.interval = this._config.defaultInterval || this._config.interval;
}
const transitionDuration = getTransitionDurationFromElement(activeElement);
EventHandler.one(activeElement, TRANSITION_END, () => {
var transitionDuration = getTransitionDurationFromElement(activeElement);
EventHandler.one(activeElement, TRANSITION_END, function () {
nextElement.classList.remove(directionalClassName);
nextElement.classList.remove(orderClassName);
nextElement.classList.add(ClassName$2.ACTIVE);
activeElement.classList.remove(ClassName$2.ACTIVE);
activeElement.classList.remove(orderClassName);
activeElement.classList.remove(directionalClassName);
this._isSliding = false;
setTimeout(() => {
EventHandler.trigger(this._element, Event$3.SLID, {
_this4._isSliding = false;
setTimeout(function () {
EventHandler.trigger(_this4._element, Event$3.SLID, {
relatedTarget: nextElement,
direction: eventDirectionName,
from: activeElementIndex,
@ -1635,18 +1757,18 @@ class Carousel {
this.cycle();
}
} // Static
;
Carousel._carouselInterface = function _carouselInterface(element, config) {
var data = Data.getData(element, DATA_KEY$2);
static _carouselInterface(element, config) {
let data = Data.getData(element, DATA_KEY$2);
let _config = _extends({}, Default, Manipulator.getDataAttributes(element));
var _config = _objectSpread({}, Default, Manipulator.getDataAttributes(element));
if (typeof config === 'object') {
_config = _extends({}, _config, config);
_config = _objectSpread({}, _config, config);
}
const action = typeof config === 'string' ? config : _config.slide;
var action = typeof config === 'string' ? config : _config.slide;
if (!data) {
data = new Carousel(element, _config);
@ -1656,7 +1778,7 @@ class Carousel {
data.to(config);
} else if (typeof action === 'string') {
if (typeof data[action] === 'undefined') {
throw new TypeError(`No method named "${action}"`);
throw new TypeError("No method named \"" + action + "\"");
}
data[action]();
@ -1664,30 +1786,30 @@ class Carousel {
data.pause();
data.cycle();
}
}
};
static _jQueryInterface(config) {
Carousel._jQueryInterface = function _jQueryInterface(config) {
return this.each(function () {
Carousel._carouselInterface(this, config);
});
}
};
static _dataApiClickHandler(event) {
const selector = getSelectorFromElement(this);
Carousel._dataApiClickHandler = function _dataApiClickHandler(event) {
var selector = getSelectorFromElement(this);
if (!selector) {
return;
}
const target = SelectorEngine.findOne(selector);
var target = SelectorEngine.findOne(selector);
if (!target || !target.classList.contains(ClassName$2.CAROUSEL)) {
return;
}
const config = _extends({}, Manipulator.getDataAttributes(target), Manipulator.getDataAttributes(this));
var config = _objectSpread({}, Manipulator.getDataAttributes(target), Manipulator.getDataAttributes(this));
const slideIndex = this.getAttribute('data-slide-to');
var slideIndex = this.getAttribute('data-slide-to');
if (slideIndex) {
config.interval = false;
@ -1700,13 +1822,26 @@ class Carousel {
}
event.preventDefault();
}
};
static _getInstance(element) {
Carousel._getInstance = function _getInstance(element) {
return Data.getData(element, DATA_KEY$2);
}
};
}
_createClass(Carousel, null, [{
key: "VERSION",
get: function get() {
return VERSION$2;
}
}, {
key: "Default",
get: function get() {
return Default;
}
}]);
return Carousel;
}();
/**
* ------------------------------------------------------------------------
* Data Api implementation
@ -1715,10 +1850,10 @@ class Carousel {
EventHandler.on(document, Event$3.CLICK_DATA_API, Selector$2.DATA_SLIDE, Carousel._dataApiClickHandler);
EventHandler.on(window, Event$3.LOAD_DATA_API, () => {
const carousels = makeArray(SelectorEngine.find(Selector$2.DATA_RIDE));
EventHandler.on(window, Event$3.LOAD_DATA_API, function () {
var carousels = makeArray(SelectorEngine.find(Selector$2.DATA_RIDE));
for (let i = 0, len = carousels.length; i < len; i++) {
for (var i = 0, len = carousels.length; i < len; i++) {
Carousel._carouselInterface(carousels[i], Data.getData(carousels[i], DATA_KEY$2));
}
});
@ -1730,12 +1865,12 @@ EventHandler.on(window, Event$3.LOAD_DATA_API, () => {
*/
if (typeof jQuery !== 'undefined') {
const JQUERY_NO_CONFLICT = jQuery.fn[NAME$2];
var JQUERY_NO_CONFLICT$2 = jQuery.fn[NAME$2];
jQuery.fn[NAME$2] = Carousel._jQueryInterface;
jQuery.fn[NAME$2].Constructor = Carousel;
jQuery.fn[NAME$2].noConflict = () => {
jQuery.fn[NAME$2] = JQUERY_NO_CONFLICT;
jQuery.fn[NAME$2].noConflict = function () {
jQuery.fn[NAME$2] = JQUERY_NO_CONFLICT$2;
return Carousel._jQueryInterface;
};
}
@ -1746,37 +1881,37 @@ if (typeof jQuery !== 'undefined') {
* ------------------------------------------------------------------------
*/
const NAME$3 = 'collapse';
const VERSION$3 = '4.3.1';
const DATA_KEY$3 = 'bs.collapse';
const EVENT_KEY$3 = `.${DATA_KEY$3}`;
const DATA_API_KEY$3 = '.data-api';
const Default$1 = {
var NAME$3 = 'collapse';
var VERSION$3 = '4.3.1';
var DATA_KEY$3 = 'bs.collapse';
var EVENT_KEY$3 = "." + DATA_KEY$3;
var DATA_API_KEY$3 = '.data-api';
var Default$1 = {
toggle: true,
parent: ''
};
const DefaultType$1 = {
var DefaultType$1 = {
toggle: 'boolean',
parent: '(string|element)'
};
const Event$4 = {
SHOW: `show${EVENT_KEY$3}`,
SHOWN: `shown${EVENT_KEY$3}`,
HIDE: `hide${EVENT_KEY$3}`,
HIDDEN: `hidden${EVENT_KEY$3}`,
CLICK_DATA_API: `click${EVENT_KEY$3}${DATA_API_KEY$3}`
var Event$4 = {
SHOW: "show" + EVENT_KEY$3,
SHOWN: "shown" + EVENT_KEY$3,
HIDE: "hide" + EVENT_KEY$3,
HIDDEN: "hidden" + EVENT_KEY$3,
CLICK_DATA_API: "click" + EVENT_KEY$3 + DATA_API_KEY$3
};
const ClassName$3 = {
var ClassName$3 = {
SHOW: 'show',
COLLAPSE: 'collapse',
COLLAPSING: 'collapsing',
COLLAPSED: 'collapsed'
};
const Dimension = {
var Dimension = {
WIDTH: 'width',
HEIGHT: 'height'
};
const Selector$3 = {
var Selector$3 = {
ACTIVES: '.show, .collapsing',
DATA_TOGGLE: '[data-toggle="collapse"]'
/**
@ -1787,18 +1922,22 @@ const Selector$3 = {
};
class Collapse {
constructor(element, config) {
var Collapse =
/*#__PURE__*/
function () {
function Collapse(element, config) {
this._isTransitioning = false;
this._element = element;
this._config = this._getConfig(config);
this._triggerArray = makeArray(SelectorEngine.find(`[data-toggle="collapse"][href="#${element.id}"],` + `[data-toggle="collapse"][data-target="#${element.id}"]`));
const toggleList = makeArray(SelectorEngine.find(Selector$3.DATA_TOGGLE));
this._triggerArray = makeArray(SelectorEngine.find("[data-toggle=\"collapse\"][href=\"#" + element.id + "\"]," + ("[data-toggle=\"collapse\"][data-target=\"#" + element.id + "\"]")));
var toggleList = makeArray(SelectorEngine.find(Selector$3.DATA_TOGGLE));
for (let i = 0, len = toggleList.length; i < len; i++) {
const elem = toggleList[i];
const selector = getSelectorFromElement(elem);
const filterElement = makeArray(SelectorEngine.find(selector)).filter(foundElem => foundElem === element);
for (var i = 0, len = toggleList.length; i < len; i++) {
var elem = toggleList[i];
var selector = getSelectorFromElement(elem);
var filterElement = makeArray(SelectorEngine.find(selector)).filter(function (foundElem) {
return foundElem === element;
});
if (selector !== null && filterElement.length) {
this._selector = selector;
@ -1821,35 +1960,31 @@ class Collapse {
} // Getters
static get VERSION() {
return VERSION$3;
}
var _proto = Collapse.prototype;
static get Default() {
return Default$1;
} // Public
toggle() {
// Public
_proto.toggle = function toggle() {
if (this._element.classList.contains(ClassName$3.SHOW)) {
this.hide();
} else {
this.show();
}
}
};
_proto.show = function show() {
var _this = this;
show() {
if (this._isTransitioning || this._element.classList.contains(ClassName$3.SHOW)) {
return;
}
let actives;
let activesData;
var actives;
var activesData;
if (this._parent) {
actives = makeArray(SelectorEngine.find(Selector$3.ACTIVES, this._parent)).filter(elem => {
if (typeof this._config.parent === 'string') {
return elem.getAttribute('data-parent') === this._config.parent;
actives = makeArray(SelectorEngine.find(Selector$3.ACTIVES, this._parent)).filter(function (elem) {
if (typeof _this._config.parent === 'string') {
return elem.getAttribute('data-parent') === _this._config.parent;
}
return elem.classList.contains(ClassName$3.COLLAPSE);
@ -1860,10 +1995,12 @@ class Collapse {
}
}
const container = SelectorEngine.findOne(this._selector);
var container = SelectorEngine.findOne(this._selector);
if (actives) {
const tempActiveData = actives.filter(elem => container !== elem);
var tempActiveData = actives.filter(function (elem) {
return container !== elem;
});
activesData = tempActiveData[0] ? Data.getData(tempActiveData[0], DATA_KEY$3) : null;
if (activesData && activesData._isTransitioning) {
@ -1871,14 +2008,14 @@ class Collapse {
}
}
const startEvent = EventHandler.trigger(this._element, Event$4.SHOW);
var startEvent = EventHandler.trigger(this._element, Event$4.SHOW);
if (startEvent.defaultPrevented) {
return;
}
if (actives) {
actives.forEach(elemActive => {
actives.forEach(function (elemActive) {
if (container !== elemActive) {
Collapse._collapseInterface(elemActive, 'hide');
}
@ -1889,7 +2026,7 @@ class Collapse {
});
}
const dimension = this._getDimension();
var dimension = this._getDimension();
this._element.classList.remove(ClassName$3.COLLAPSE);
@ -1898,7 +2035,7 @@ class Collapse {
this._element.style[dimension] = 0;
if (this._triggerArray.length) {
this._triggerArray.forEach(element => {
this._triggerArray.forEach(function (element) {
element.classList.remove(ClassName$3.COLLAPSED);
element.setAttribute('aria-expanded', true);
});
@ -1906,40 +2043,44 @@ class Collapse {
this.setTransitioning(true);
const complete = () => {
this._element.classList.remove(ClassName$3.COLLAPSING);
var complete = function complete() {
_this._element.classList.remove(ClassName$3.COLLAPSING);
this._element.classList.add(ClassName$3.COLLAPSE);
_this._element.classList.add(ClassName$3.COLLAPSE);
this._element.classList.add(ClassName$3.SHOW);
_this._element.classList.add(ClassName$3.SHOW);
this._element.style[dimension] = '';
this.setTransitioning(false);
EventHandler.trigger(this._element, Event$4.SHOWN);
_this._element.style[dimension] = '';
_this.setTransitioning(false);
EventHandler.trigger(_this._element, Event$4.SHOWN);
};
const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1);
const scrollSize = `scroll${capitalizedDimension}`;
const transitionDuration = getTransitionDurationFromElement(this._element);
var capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1);
var scrollSize = "scroll" + capitalizedDimension;
var transitionDuration = getTransitionDurationFromElement(this._element);
EventHandler.one(this._element, TRANSITION_END, complete);
emulateTransitionEnd(this._element, transitionDuration);
this._element.style[dimension] = `${this._element[scrollSize]}px`;
}
this._element.style[dimension] = this._element[scrollSize] + "px";
};
_proto.hide = function hide() {
var _this2 = this;
hide() {
if (this._isTransitioning || !this._element.classList.contains(ClassName$3.SHOW)) {
return;
}
const startEvent = EventHandler.trigger(this._element, Event$4.HIDE);
var startEvent = EventHandler.trigger(this._element, Event$4.HIDE);
if (startEvent.defaultPrevented) {
return;
}
const dimension = this._getDimension();
var dimension = this._getDimension();
this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`;
this._element.style[dimension] = this._element.getBoundingClientRect()[dimension] + "px";
reflow(this._element);
this._element.classList.add(ClassName$3.COLLAPSING);
@ -1948,15 +2089,15 @@ class Collapse {
this._element.classList.remove(ClassName$3.SHOW);
const triggerArrayLength = this._triggerArray.length;
var triggerArrayLength = this._triggerArray.length;
if (triggerArrayLength > 0) {
for (let i = 0; i < triggerArrayLength; i++) {
const trigger = this._triggerArray[i];
const selector = getSelectorFromElement(trigger);
for (var i = 0; i < triggerArrayLength; i++) {
var trigger = this._triggerArray[i];
var selector = getSelectorFromElement(trigger);
if (selector !== null) {
const elem = SelectorEngine.findOne(selector);
var elem = SelectorEngine.findOne(selector);
if (!elem.classList.contains(ClassName$3.SHOW)) {
trigger.classList.add(ClassName$3.COLLAPSED);
@ -1968,27 +2109,27 @@ class Collapse {
this.setTransitioning(true);
const complete = () => {
this.setTransitioning(false);
var complete = function complete() {
_this2.setTransitioning(false);
this._element.classList.remove(ClassName$3.COLLAPSING);
_this2._element.classList.remove(ClassName$3.COLLAPSING);
this._element.classList.add(ClassName$3.COLLAPSE);
_this2._element.classList.add(ClassName$3.COLLAPSE);
EventHandler.trigger(this._element, Event$4.HIDDEN);
EventHandler.trigger(_this2._element, Event$4.HIDDEN);
};
this._element.style[dimension] = '';
const transitionDuration = getTransitionDurationFromElement(this._element);
var transitionDuration = getTransitionDurationFromElement(this._element);
EventHandler.one(this._element, TRANSITION_END, complete);
emulateTransitionEnd(this._element, transitionDuration);
}
};
setTransitioning(isTransitioning) {
_proto.setTransitioning = function setTransitioning(isTransitioning) {
this._isTransitioning = isTransitioning;
}
};
dispose() {
_proto.dispose = function dispose() {
Data.removeData(this._element, DATA_KEY$3);
this._config = null;
this._parent = null;
@ -1996,24 +2137,26 @@ class Collapse {
this._triggerArray = null;
this._isTransitioning = null;
} // Private
;
_getConfig(config) {
config = _extends({}, Default$1, config);
_proto._getConfig = function _getConfig(config) {
config = _objectSpread({}, Default$1, config);
config.toggle = Boolean(config.toggle); // Coerce string values
typeCheckConfig(NAME$3, config, DefaultType$1);
return config;
}
};
_getDimension() {
const hasWidth = this._element.classList.contains(Dimension.WIDTH);
_proto._getDimension = function _getDimension() {
var hasWidth = this._element.classList.contains(Dimension.WIDTH);
return hasWidth ? Dimension.WIDTH : Dimension.HEIGHT;
}
};
_getParent() {
let parent = this._config.parent;
_proto._getParent = function _getParent() {
var _this3 = this;
var parent = this._config.parent;
if (isElement(parent)) {
// it's a jQuery object
@ -2024,19 +2167,19 @@ class Collapse {
parent = SelectorEngine.findOne(parent);
}
const selector = `[data-toggle="collapse"][data-parent="${parent}"]`;
makeArray(SelectorEngine.find(selector, parent)).forEach(element => {
this._addAriaAndCollapsedClass(Collapse._getTargetFromElement(element), [element]);
var selector = "[data-toggle=\"collapse\"][data-parent=\"" + parent + "\"]";
makeArray(SelectorEngine.find(selector, parent)).forEach(function (element) {
_this3._addAriaAndCollapsedClass(Collapse._getTargetFromElement(element), [element]);
});
return parent;
}
};
_addAriaAndCollapsedClass(element, triggerArray) {
_proto._addAriaAndCollapsedClass = function _addAriaAndCollapsedClass(element, triggerArray) {
if (element) {
const isOpen = element.classList.contains(ClassName$3.SHOW);
var isOpen = element.classList.contains(ClassName$3.SHOW);
if (triggerArray.length) {
triggerArray.forEach(elem => {
triggerArray.forEach(function (elem) {
if (isOpen) {
elem.classList.remove(ClassName$3.COLLAPSED);
} else {
@ -2048,17 +2191,17 @@ class Collapse {
}
}
} // Static
;
static _getTargetFromElement(element) {
const selector = getSelectorFromElement(element);
Collapse._getTargetFromElement = function _getTargetFromElement(element) {
var selector = getSelectorFromElement(element);
return selector ? SelectorEngine.findOne(selector) : null;
}
};
static _collapseInterface(element, config) {
let data = Data.getData(element, DATA_KEY$3);
Collapse._collapseInterface = function _collapseInterface(element, config) {
var data = Data.getData(element, DATA_KEY$3);
const _config = _extends({}, Default$1, Manipulator.getDataAttributes(element), typeof config === 'object' && config ? config : {});
var _config = _objectSpread({}, Default$1, Manipulator.getDataAttributes(element), typeof config === 'object' && config ? config : {});
if (!data && _config.toggle && /show|hide/.test(config)) {
_config.toggle = false;
@ -2070,24 +2213,37 @@ class Collapse {
if (typeof config === 'string') {
if (typeof data[config] === 'undefined') {
throw new TypeError(`No method named "${config}"`);
throw new TypeError("No method named \"" + config + "\"");
}
data[config]();
}
}
};
static _jQueryInterface(config) {
Collapse._jQueryInterface = function _jQueryInterface(config) {
return this.each(function () {
Collapse._collapseInterface(this, config);
});
}
};
static _getInstance(element) {
Collapse._getInstance = function _getInstance(element) {
return Data.getData(element, DATA_KEY$3);
}
};
}
_createClass(Collapse, null, [{
key: "VERSION",
get: function get() {
return VERSION$3;
}
}, {
key: "Default",
get: function get() {
return Default$1;
}
}]);
return Collapse;
}();
/**
* ------------------------------------------------------------------------
* Data Api implementation
@ -2101,12 +2257,12 @@ EventHandler.on(document, Event$4.CLICK_DATA_API, Selector$3.DATA_TOGGLE, functi
event.preventDefault();
}
const triggerData = Manipulator.getDataAttributes(this);
const selector = getSelectorFromElement(this);
const selectorElements = makeArray(SelectorEngine.find(selector));
selectorElements.forEach(element => {
const data = Data.getData(element, DATA_KEY$3);
let config;
var triggerData = Manipulator.getDataAttributes(this);
var selector = getSelectorFromElement(this);
var selectorElements = makeArray(SelectorEngine.find(selector));
selectorElements.forEach(function (element) {
var data = Data.getData(element, DATA_KEY$3);
var config;
if (data) {
// update parent attribute
@ -2131,12 +2287,12 @@ EventHandler.on(document, Event$4.CLICK_DATA_API, Selector$3.DATA_TOGGLE, functi
*/
if (typeof jQuery !== 'undefined') {
const JQUERY_NO_CONFLICT = jQuery.fn[NAME$3];
var JQUERY_NO_CONFLICT$3 = jQuery.fn[NAME$3];
jQuery.fn[NAME$3] = Collapse._jQueryInterface;
jQuery.fn[NAME$3].Constructor = Collapse;
jQuery.fn[NAME$3].noConflict = () => {
jQuery.fn[NAME$3] = JQUERY_NO_CONFLICT;
jQuery.fn[NAME$3].noConflict = function () {
jQuery.fn[NAME$3] = JQUERY_NO_CONFLICT$3;
return Collapse._jQueryInterface;
};
}
@ -2147,35 +2303,35 @@ if (typeof jQuery !== 'undefined') {
* ------------------------------------------------------------------------
*/
const NAME$4 = 'dropdown';
const VERSION$4 = '4.3.1';
const DATA_KEY$4 = 'bs.dropdown';
const EVENT_KEY$4 = `.${DATA_KEY$4}`;
const DATA_API_KEY$4 = '.data-api';
const ESCAPE_KEYCODE = 27; // KeyboardEvent.which value for Escape (Esc) key
var NAME$4 = 'dropdown';
var VERSION$4 = '4.3.1';
var DATA_KEY$4 = 'bs.dropdown';
var EVENT_KEY$4 = "." + DATA_KEY$4;
var DATA_API_KEY$4 = '.data-api';
var ESCAPE_KEYCODE = 27; // KeyboardEvent.which value for Escape (Esc) key
const SPACE_KEYCODE = 32; // KeyboardEvent.which value for space key
var SPACE_KEYCODE = 32; // KeyboardEvent.which value for space key
const TAB_KEYCODE = 9; // KeyboardEvent.which value for tab key
var TAB_KEYCODE = 9; // KeyboardEvent.which value for tab key
const ARROW_UP_KEYCODE = 38; // KeyboardEvent.which value for up arrow key
var ARROW_UP_KEYCODE = 38; // KeyboardEvent.which value for up arrow key
const ARROW_DOWN_KEYCODE = 40; // KeyboardEvent.which value for down arrow key
var ARROW_DOWN_KEYCODE = 40; // KeyboardEvent.which value for down arrow key
const RIGHT_MOUSE_BUTTON_WHICH = 3; // MouseEvent.which value for the right button (assuming a right-handed mouse)
var RIGHT_MOUSE_BUTTON_WHICH = 3; // MouseEvent.which value for the right button (assuming a right-handed mouse)
const REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEYCODE}|${ARROW_DOWN_KEYCODE}|${ESCAPE_KEYCODE}`);
const Event$5 = {
HIDE: `hide${EVENT_KEY$4}`,
HIDDEN: `hidden${EVENT_KEY$4}`,
SHOW: `show${EVENT_KEY$4}`,
SHOWN: `shown${EVENT_KEY$4}`,
CLICK: `click${EVENT_KEY$4}`,
CLICK_DATA_API: `click${EVENT_KEY$4}${DATA_API_KEY$4}`,
KEYDOWN_DATA_API: `keydown${EVENT_KEY$4}${DATA_API_KEY$4}`,
KEYUP_DATA_API: `keyup${EVENT_KEY$4}${DATA_API_KEY$4}`
var REGEXP_KEYDOWN = new RegExp(ARROW_UP_KEYCODE + "|" + ARROW_DOWN_KEYCODE + "|" + ESCAPE_KEYCODE);
var Event$5 = {
HIDE: "hide" + EVENT_KEY$4,
HIDDEN: "hidden" + EVENT_KEY$4,
SHOW: "show" + EVENT_KEY$4,
SHOWN: "shown" + EVENT_KEY$4,
CLICK: "click" + EVENT_KEY$4,
CLICK_DATA_API: "click" + EVENT_KEY$4 + DATA_API_KEY$4,
KEYDOWN_DATA_API: "keydown" + EVENT_KEY$4 + DATA_API_KEY$4,
KEYUP_DATA_API: "keyup" + EVENT_KEY$4 + DATA_API_KEY$4
};
const ClassName$4 = {
var ClassName$4 = {
DISABLED: 'disabled',
SHOW: 'show',
DROPUP: 'dropup',
@ -2184,14 +2340,14 @@ const ClassName$4 = {
MENURIGHT: 'dropdown-menu-right',
POSITION_STATIC: 'position-static'
};
const Selector$4 = {
var Selector$4 = {
DATA_TOGGLE: '[data-toggle="dropdown"]',
FORM_CHILD: '.dropdown form',
MENU: '.dropdown-menu',
NAVBAR_NAV: '.navbar-nav',
VISIBLE_ITEMS: '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'
};
const AttachmentMap = {
var AttachmentMap = {
TOP: 'top-start',
TOPEND: 'top-end',
BOTTOM: 'bottom-start',
@ -2201,14 +2357,14 @@ const AttachmentMap = {
LEFT: 'left-start',
LEFTEND: 'left-end'
};
const Default$2 = {
var Default$2 = {
offset: 0,
flip: true,
boundary: 'scrollParent',
reference: 'toggle',
display: 'dynamic'
};
const DefaultType$2 = {
var DefaultType$2 = {
offset: '(number|string|function)',
flip: 'boolean',
boundary: '(string|element)',
@ -2222,8 +2378,10 @@ const DefaultType$2 = {
};
class Dropdown {
constructor(element, config) {
var Dropdown =
/*#__PURE__*/
function () {
function Dropdown(element, config) {
this._element = element;
this._popper = null;
this._config = this._getConfig(config);
@ -2236,27 +2394,17 @@ class Dropdown {
} // Getters
static get VERSION() {
return VERSION$4;
}
var _proto = Dropdown.prototype;
static get Default() {
return Default$2;
}
static get DefaultType() {
return DefaultType$2;
} // Public
toggle() {
// Public
_proto.toggle = function toggle() {
if (this._element.disabled || this._element.classList.contains(ClassName$4.DISABLED)) {
return;
}
const parent = Dropdown._getParentFromElement(this._element);
var parent = Dropdown._getParentFromElement(this._element);
const isActive = this._menu.classList.contains(ClassName$4.SHOW);
var isActive = this._menu.classList.contains(ClassName$4.SHOW);
Dropdown._clearMenus();
@ -2264,10 +2412,10 @@ class Dropdown {
return;
}
const relatedTarget = {
var relatedTarget = {
relatedTarget: this._element
};
const showEvent = EventHandler.trigger(parent, Event$5.SHOW, relatedTarget);
var showEvent = EventHandler.trigger(parent, Event$5.SHOW, relatedTarget);
if (showEvent.defaultPrevented) {
return;
@ -2283,7 +2431,7 @@ class Dropdown {
throw new TypeError('Bootstrap\'s dropdowns require Popper.js (https://popper.js.org)');
}
let referenceElement = this._element;
var referenceElement = this._element;
if (this._config.reference === 'parent') {
referenceElement = parent;
@ -2310,7 +2458,9 @@ class Dropdown {
if ('ontouchstart' in document.documentElement && !makeArray(SelectorEngine.closest(parent, Selector$4.NAVBAR_NAV)).length) {
makeArray(document.body.children).forEach(elem => EventHandler.on(elem, 'mouseover', null, noop()));
makeArray(document.body.children).forEach(function (elem) {
return EventHandler.on(elem, 'mouseover', null, noop());
});
}
this._element.focus();
@ -2320,19 +2470,19 @@ class Dropdown {
Manipulator.toggleClass(this._menu, ClassName$4.SHOW);
Manipulator.toggleClass(parent, ClassName$4.SHOW);
EventHandler.trigger(parent, Event$5.SHOWN, relatedTarget);
}
};
show() {
_proto.show = function show() {
if (this._element.disabled || this._element.classList.contains(ClassName$4.DISABLED) || this._menu.classList.contains(ClassName$4.SHOW)) {
return;
}
const parent = Dropdown._getParentFromElement(this._element);
var parent = Dropdown._getParentFromElement(this._element);
const relatedTarget = {
var relatedTarget = {
relatedTarget: this._element
};
const showEvent = EventHandler.trigger(parent, Event$5.SHOW, relatedTarget);
var showEvent = EventHandler.trigger(parent, Event$5.SHOW, relatedTarget);
if (showEvent.defaultPrevented) {
return;
@ -2341,19 +2491,19 @@ class Dropdown {
Manipulator.toggleClass(this._menu, ClassName$4.SHOW);
Manipulator.toggleClass(parent, ClassName$4.SHOW);
EventHandler.trigger(parent, Event$5.SHOWN, relatedTarget);
}
};
hide() {
_proto.hide = function hide() {
if (this._element.disabled || this._element.classList.contains(ClassName$4.DISABLED) || !this._menu.classList.contains(ClassName$4.SHOW)) {
return;
}
const parent = Dropdown._getParentFromElement(this._element);
var parent = Dropdown._getParentFromElement(this._element);
const relatedTarget = {
var relatedTarget = {
relatedTarget: this._element
};
const hideEvent = EventHandler.trigger(parent, Event$5.HIDE, relatedTarget);
var hideEvent = EventHandler.trigger(parent, Event$5.HIDE, relatedTarget);
if (hideEvent.defaultPrevented) {
return;
@ -2362,9 +2512,9 @@ class Dropdown {
Manipulator.toggleClass(this._menu, ClassName$4.SHOW);
Manipulator.toggleClass(parent, ClassName$4.SHOW);
EventHandler.trigger(parent, Event$5.HIDDEN, relatedTarget);
}
};
dispose() {
_proto.dispose = function dispose() {
Data.removeData(this._element, DATA_KEY$4);
EventHandler.off(this._element, EVENT_KEY$4);
this._element = null;
@ -2375,34 +2525,37 @@ class Dropdown {
this._popper = null;
}
}
};
update() {
_proto.update = function update() {
this._inNavbar = this._detectNavbar();
if (this._popper !== null) {
this._popper.scheduleUpdate();
}
} // Private
;
_proto._addEventListeners = function _addEventListeners() {
var _this = this;
_addEventListeners() {
EventHandler.on(this._element, Event$5.CLICK, event => {
EventHandler.on(this._element, Event$5.CLICK, function (event) {
event.preventDefault();
event.stopPropagation();
this.toggle();
});
}
_getConfig(config) {
config = _extends({}, this.constructor.Default, Manipulator.getDataAttributes(this._element), config);
_this.toggle();
});
};
_proto._getConfig = function _getConfig(config) {
config = _objectSpread({}, this.constructor.Default, Manipulator.getDataAttributes(this._element), config);
typeCheckConfig(NAME$4, config, this.constructor.DefaultType);
return config;
}
};
_getMenuElement() {
_proto._getMenuElement = function _getMenuElement() {
if (!this._menu) {
const parent = Dropdown._getParentFromElement(this._element);
var parent = Dropdown._getParentFromElement(this._element);
if (parent) {
this._menu = SelectorEngine.findOne(Selector$4.MENU, parent);
@ -2410,11 +2563,11 @@ class Dropdown {
}
return this._menu;
}
};
_getPlacement() {
const parentDropdown = this._element.parentNode;
let placement = AttachmentMap.BOTTOM; // Handle dropup
_proto._getPlacement = function _getPlacement() {
var parentDropdown = this._element.parentNode;
var placement = AttachmentMap.BOTTOM; // Handle dropup
if (parentDropdown.classList.contains(ClassName$4.DROPUP)) {
placement = AttachmentMap.TOP;
@ -2431,18 +2584,20 @@ class Dropdown {
}
return placement;
}
};
_detectNavbar() {
_proto._detectNavbar = function _detectNavbar() {
return Boolean(SelectorEngine.closest(this._element, '.navbar'));
}
};
_getOffset() {
const offset = {};
_proto._getOffset = function _getOffset() {
var _this2 = this;
var offset = {};
if (typeof this._config.offset === 'function') {
offset.fn = data => {
data.offsets = _extends({}, data.offsets, this._config.offset(data.offsets, this._element) || {});
offset.fn = function (data) {
data.offsets = _objectSpread({}, data.offsets, _this2._config.offset(data.offsets, _this2._element) || {});
return data;
};
} else {
@ -2450,10 +2605,10 @@ class Dropdown {
}
return offset;
}
};
_getPopperConfig() {
const popperConfig = {
_proto._getPopperConfig = function _getPopperConfig() {
var popperConfig = {
placement: this._getPlacement(),
modifiers: {
offset: this._getOffset(),
@ -2475,12 +2630,12 @@ class Dropdown {
return popperConfig;
} // Static
;
Dropdown._dropdownInterface = function _dropdownInterface(element, config) {
var data = Data.getData(element, DATA_KEY$4);
static _dropdownInterface(element, config) {
let data = Data.getData(element, DATA_KEY$4);
const _config = typeof config === 'object' ? config : null;
var _config = typeof config === 'object' ? config : null;
if (!data) {
data = new Dropdown(element, _config);
@ -2488,31 +2643,31 @@ class Dropdown {
if (typeof config === 'string') {
if (typeof data[config] === 'undefined') {
throw new TypeError(`No method named "${config}"`);
throw new TypeError("No method named \"" + config + "\"");
}
data[config]();
}
}
};
static _jQueryInterface(config) {
Dropdown._jQueryInterface = function _jQueryInterface(config) {
return this.each(function () {
Dropdown._dropdownInterface(this, config);
});
}
};
static _clearMenus(event) {
Dropdown._clearMenus = function _clearMenus(event) {
if (event && (event.which === RIGHT_MOUSE_BUTTON_WHICH || event.type === 'keyup' && event.which !== TAB_KEYCODE)) {
return;
}
const toggles = makeArray(SelectorEngine.find(Selector$4.DATA_TOGGLE));
var toggles = makeArray(SelectorEngine.find(Selector$4.DATA_TOGGLE));
for (let i = 0, len = toggles.length; i < len; i++) {
const parent = Dropdown._getParentFromElement(toggles[i]);
for (var i = 0, len = toggles.length; i < len; i++) {
var parent = Dropdown._getParentFromElement(toggles[i]);
const context = Data.getData(toggles[i], DATA_KEY$4);
const relatedTarget = {
var context = Data.getData(toggles[i], DATA_KEY$4);
var relatedTarget = {
relatedTarget: toggles[i]
};
@ -2524,7 +2679,7 @@ class Dropdown {
continue;
}
const dropdownMenu = context._menu;
var dropdownMenu = context._menu;
if (!parent.classList.contains(ClassName$4.SHOW)) {
continue;
@ -2534,7 +2689,7 @@ class Dropdown {
continue;
}
const hideEvent = EventHandler.trigger(parent, Event$5.HIDE, relatedTarget);
var hideEvent = EventHandler.trigger(parent, Event$5.HIDE, relatedTarget);
if (hideEvent.defaultPrevented) {
continue;
@ -2543,7 +2698,9 @@ class Dropdown {
if ('ontouchstart' in document.documentElement) {
makeArray(document.body.children).forEach(elem => EventHandler.off(elem, 'mouseover', null, noop()));
makeArray(document.body.children).forEach(function (elem) {
return EventHandler.off(elem, 'mouseover', null, noop());
});
}
toggles[i].setAttribute('aria-expanded', 'false');
@ -2551,20 +2708,20 @@ class Dropdown {
parent.classList.remove(ClassName$4.SHOW);
EventHandler.trigger(parent, Event$5.HIDDEN, relatedTarget);
}
}
};
static _getParentFromElement(element) {
let parent;
const selector = getSelectorFromElement(element);
Dropdown._getParentFromElement = function _getParentFromElement(element) {
var parent;
var selector = getSelectorFromElement(element);
if (selector) {
parent = SelectorEngine.findOne(selector);
}
return parent || element.parentNode;
}
};
static _dataApiKeydownHandler(event) {
Dropdown._dataApiKeydownHandler = function _dataApiKeydownHandler(event) {
// If not input/textarea:
// - And not a key in REGEXP_KEYDOWN => not a dropdown command
// If input/textarea:
@ -2583,9 +2740,9 @@ class Dropdown {
return;
}
const parent = Dropdown._getParentFromElement(this);
var parent = Dropdown._getParentFromElement(this);
const isActive = parent.classList.contains(ClassName$4.SHOW);
var isActive = parent.classList.contains(ClassName$4.SHOW);
if (!isActive || isActive && (event.which === ESCAPE_KEYCODE || event.which === SPACE_KEYCODE)) {
if (event.which === ESCAPE_KEYCODE) {
@ -2597,13 +2754,13 @@ class Dropdown {
return;
}
const items = makeArray(SelectorEngine.find(Selector$4.VISIBLE_ITEMS, parent));
var items = makeArray(SelectorEngine.find(Selector$4.VISIBLE_ITEMS, parent));
if (!items.length) {
return;
}
let index = items.indexOf(event.target);
var index = items.indexOf(event.target);
if (event.which === ARROW_UP_KEYCODE && index > 0) {
// Up
@ -2620,13 +2777,31 @@ class Dropdown {
}
items[index].focus();
}
};
static _getInstance(element) {
Dropdown._getInstance = function _getInstance(element) {
return Data.getData(element, DATA_KEY$4);
}
};
}
_createClass(Dropdown, null, [{
key: "VERSION",
get: function get() {
return VERSION$4;
}
}, {
key: "Default",
get: function get() {
return Default$2;
}
}, {
key: "DefaultType",
get: function get() {
return DefaultType$2;
}
}]);
return Dropdown;
}();
/**
* ------------------------------------------------------------------------
* Data Api implementation
@ -2644,7 +2819,9 @@ EventHandler.on(document, Event$5.CLICK_DATA_API, Selector$4.DATA_TOGGLE, functi
Dropdown._dropdownInterface(this, 'toggle');
});
EventHandler.on(document, Event$5.CLICK_DATA_API, Selector$4.FORM_CHILD, e => e.stopPropagation());
EventHandler.on(document, Event$5.CLICK_DATA_API, Selector$4.FORM_CHILD, function (e) {
return e.stopPropagation();
});
/**
* ------------------------------------------------------------------------
* jQuery
@ -2653,12 +2830,12 @@ EventHandler.on(document, Event$5.CLICK_DATA_API, Selector$4.FORM_CHILD, e => e.
*/
if (typeof jQuery !== 'undefined') {
const JQUERY_NO_CONFLICT = jQuery.fn[NAME$4];
var JQUERY_NO_CONFLICT$4 = jQuery.fn[NAME$4];
jQuery.fn[NAME$4] = Dropdown._jQueryInterface;
jQuery.fn[NAME$4].Constructor = Dropdown;
jQuery.fn[NAME$4].noConflict = () => {
jQuery.fn[NAME$4] = JQUERY_NO_CONFLICT;
jQuery.fn[NAME$4].noConflict = function () {
jQuery.fn[NAME$4] = JQUERY_NO_CONFLICT$4;
return Dropdown._jQueryInterface;
};
}
@ -2669,39 +2846,39 @@ if (typeof jQuery !== 'undefined') {
* ------------------------------------------------------------------------
*/
const NAME$5 = 'modal';
const VERSION$5 = '4.3.1';
const DATA_KEY$5 = 'bs.modal';
const EVENT_KEY$5 = `.${DATA_KEY$5}`;
const DATA_API_KEY$5 = '.data-api';
const ESCAPE_KEYCODE$1 = 27; // KeyboardEvent.which value for Escape (Esc) key
var NAME$5 = 'modal';
var VERSION$5 = '4.3.1';
var DATA_KEY$5 = 'bs.modal';
var EVENT_KEY$5 = "." + DATA_KEY$5;
var DATA_API_KEY$5 = '.data-api';
var ESCAPE_KEYCODE$1 = 27; // KeyboardEvent.which value for Escape (Esc) key
const Default$3 = {
var Default$3 = {
backdrop: true,
keyboard: true,
focus: true,
show: true
};
const DefaultType$3 = {
var DefaultType$3 = {
backdrop: '(boolean|string)',
keyboard: 'boolean',
focus: 'boolean',
show: 'boolean'
};
const Event$6 = {
HIDE: `hide${EVENT_KEY$5}`,
HIDDEN: `hidden${EVENT_KEY$5}`,
SHOW: `show${EVENT_KEY$5}`,
SHOWN: `shown${EVENT_KEY$5}`,
FOCUSIN: `focusin${EVENT_KEY$5}`,
RESIZE: `resize${EVENT_KEY$5}`,
CLICK_DISMISS: `click.dismiss${EVENT_KEY$5}`,
KEYDOWN_DISMISS: `keydown.dismiss${EVENT_KEY$5}`,
MOUSEUP_DISMISS: `mouseup.dismiss${EVENT_KEY$5}`,
MOUSEDOWN_DISMISS: `mousedown.dismiss${EVENT_KEY$5}`,
CLICK_DATA_API: `click${EVENT_KEY$5}${DATA_API_KEY$5}`
var Event$6 = {
HIDE: "hide" + EVENT_KEY$5,
HIDDEN: "hidden" + EVENT_KEY$5,
SHOW: "show" + EVENT_KEY$5,
SHOWN: "shown" + EVENT_KEY$5,
FOCUSIN: "focusin" + EVENT_KEY$5,
RESIZE: "resize" + EVENT_KEY$5,
CLICK_DISMISS: "click.dismiss" + EVENT_KEY$5,
KEYDOWN_DISMISS: "keydown.dismiss" + EVENT_KEY$5,
MOUSEUP_DISMISS: "mouseup.dismiss" + EVENT_KEY$5,
MOUSEDOWN_DISMISS: "mousedown.dismiss" + EVENT_KEY$5,
CLICK_DATA_API: "click" + EVENT_KEY$5 + DATA_API_KEY$5
};
const ClassName$5 = {
var ClassName$5 = {
SCROLLABLE: 'modal-dialog-scrollable',
SCROLLBAR_MEASURER: 'modal-scrollbar-measure',
BACKDROP: 'modal-backdrop',
@ -2709,7 +2886,7 @@ const ClassName$5 = {
FADE: 'fade',
SHOW: 'show'
};
const Selector$5 = {
var Selector$5 = {
DIALOG: '.modal-dialog',
MODAL_BODY: '.modal-body',
DATA_TOGGLE: '[data-toggle="modal"]',
@ -2724,8 +2901,10 @@ const Selector$5 = {
};
class Modal {
constructor(element, config) {
var Modal =
/*#__PURE__*/
function () {
function Modal(element, config) {
this._config = this._getConfig(config);
this._element = element;
this._dialog = SelectorEngine.findOne(Selector$5.DIALOG, element);
@ -2739,20 +2918,16 @@ class Modal {
} // Getters
static get VERSION() {
return VERSION$5;
}
var _proto = Modal.prototype;
static get Default() {
return Default$3;
} // Public
toggle(relatedTarget) {
// Public
_proto.toggle = function toggle(relatedTarget) {
return this._isShown ? this.hide() : this.show(relatedTarget);
}
};
_proto.show = function show(relatedTarget) {
var _this = this;
show(relatedTarget) {
if (this._isShown || this._isTransitioning) {
return;
}
@ -2761,8 +2936,8 @@ class Modal {
this._isTransitioning = true;
}
const showEvent = EventHandler.trigger(this._element, Event$6.SHOW, {
relatedTarget
var showEvent = EventHandler.trigger(this._element, Event$6.SHOW, {
relatedTarget: relatedTarget
});
if (this._isShown || showEvent.defaultPrevented) {
@ -2781,19 +2956,25 @@ class Modal {
this._setResizeEvent();
EventHandler.on(this._element, Event$6.CLICK_DISMISS, Selector$5.DATA_DISMISS, event => this.hide(event));
EventHandler.on(this._dialog, Event$6.MOUSEDOWN_DISMISS, () => {
EventHandler.one(this._element, Event$6.MOUSEUP_DISMISS, event => {
if (event.target === this._element) {
this._ignoreBackdropClick = true;
EventHandler.on(this._element, Event$6.CLICK_DISMISS, Selector$5.DATA_DISMISS, function (event) {
return _this.hide(event);
});
EventHandler.on(this._dialog, Event$6.MOUSEDOWN_DISMISS, function () {
EventHandler.one(_this._element, Event$6.MOUSEUP_DISMISS, function (event) {
if (event.target === _this._element) {
_this._ignoreBackdropClick = true;
}
});
});
this._showBackdrop(() => this._showElement(relatedTarget));
}
this._showBackdrop(function () {
return _this._showElement(relatedTarget);
});
};
_proto.hide = function hide(event) {
var _this2 = this;
hide(event) {
if (event) {
event.preventDefault();
}
@ -2802,7 +2983,7 @@ class Modal {
return;
}
const hideEvent = EventHandler.trigger(this._element, Event$6.HIDE);
var hideEvent = EventHandler.trigger(this._element, Event$6.HIDE);
if (!this._isShown || hideEvent.defaultPrevented) {
return;
@ -2810,7 +2991,7 @@ class Modal {
this._isShown = false;
const transition = this._element.classList.contains(ClassName$5.FADE);
var transition = this._element.classList.contains(ClassName$5.FADE);
if (transition) {
this._isTransitioning = true;
@ -2828,16 +3009,20 @@ class Modal {
EventHandler.off(this._dialog, Event$6.MOUSEDOWN_DISMISS);
if (transition) {
const transitionDuration = getTransitionDurationFromElement(this._element);
EventHandler.one(this._element, TRANSITION_END, event => this._hideModal(event));
var transitionDuration = getTransitionDurationFromElement(this._element);
EventHandler.one(this._element, TRANSITION_END, function (event) {
return _this2._hideModal(event);
});
emulateTransitionEnd(this._element, transitionDuration);
} else {
this._hideModal();
}
}
};
dispose() {
[window, this._element, this._dialog].forEach(htmlElement => EventHandler.off(htmlElement, EVENT_KEY$5));
_proto.dispose = function dispose() {
[window, this._element, this._dialog].forEach(function (htmlElement) {
return EventHandler.off(htmlElement, EVENT_KEY$5);
});
/**
* `document` has 2 events `Event.FOCUSIN` and `Event.CLICK_DATA_API`
* Do not move `document` in `htmlElements` array
@ -2855,21 +3040,23 @@ class Modal {
this._ignoreBackdropClick = null;
this._isTransitioning = null;
this._scrollbarWidth = null;
}
};
handleUpdate() {
_proto.handleUpdate = function handleUpdate() {
this._adjustDialog();
} // Private
;
_getConfig(config) {
config = _extends({}, Default$3, config);
_proto._getConfig = function _getConfig(config) {
config = _objectSpread({}, Default$3, config);
typeCheckConfig(NAME$5, config, DefaultType$3);
return config;
}
};
_showElement(relatedTarget) {
const transition = this._element.classList.contains(ClassName$5.FADE);
_proto._showElement = function _showElement(relatedTarget) {
var _this3 = this;
var transition = this._element.classList.contains(ClassName$5.FADE);
if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {
// Don't move modal's DOM position
@ -2898,58 +3085,69 @@ class Modal {
this._enforceFocus();
}
const transitionComplete = () => {
if (this._config.focus) {
this._element.focus();
var transitionComplete = function transitionComplete() {
if (_this3._config.focus) {
_this3._element.focus();
}
this._isTransitioning = false;
EventHandler.trigger(this._element, Event$6.SHOWN, {
relatedTarget
_this3._isTransitioning = false;
EventHandler.trigger(_this3._element, Event$6.SHOWN, {
relatedTarget: relatedTarget
});
};
if (transition) {
const transitionDuration = getTransitionDurationFromElement(this._dialog);
var transitionDuration = getTransitionDurationFromElement(this._dialog);
EventHandler.one(this._dialog, TRANSITION_END, transitionComplete);
emulateTransitionEnd(this._dialog, transitionDuration);
} else {
transitionComplete();
}
}
};
_proto._enforceFocus = function _enforceFocus() {
var _this4 = this;
_enforceFocus() {
EventHandler.off(document, Event$6.FOCUSIN); // guard against infinite focus loop
EventHandler.on(document, Event$6.FOCUSIN, event => {
if (document !== event.target && this._element !== event.target && !this._element.contains(event.target)) {
this._element.focus();
EventHandler.on(document, Event$6.FOCUSIN, function (event) {
if (document !== event.target && _this4._element !== event.target && !_this4._element.contains(event.target)) {
_this4._element.focus();
}
});
}
};
_proto._setEscapeEvent = function _setEscapeEvent() {
var _this5 = this;
_setEscapeEvent() {
if (this._isShown && this._config.keyboard) {
EventHandler.on(this._element, Event$6.KEYDOWN_DISMISS, event => {
EventHandler.on(this._element, Event$6.KEYDOWN_DISMISS, function (event) {
if (event.which === ESCAPE_KEYCODE$1) {
event.preventDefault();
this.hide();
_this5.hide();
}
});
} else if (!this._isShown) {
EventHandler.off(this._element, Event$6.KEYDOWN_DISMISS);
}
}
};
_proto._setResizeEvent = function _setResizeEvent() {
var _this6 = this;
_setResizeEvent() {
if (this._isShown) {
EventHandler.on(window, Event$6.RESIZE, event => this.handleUpdate(event));
EventHandler.on(window, Event$6.RESIZE, function (event) {
return _this6.handleUpdate(event);
});
} else {
EventHandler.off(window, Event$6.RESIZE);
}
}
};
_proto._hideModal = function _hideModal() {
var _this7 = this;
_hideModal() {
this._element.style.display = 'none';
this._element.setAttribute('aria-hidden', true);
@ -2958,27 +3156,29 @@ class Modal {
this._isTransitioning = false;
this._showBackdrop(() => {
this._showBackdrop(function () {
document.body.classList.remove(ClassName$5.OPEN);
this._resetAdjustments();
_this7._resetAdjustments();
this._resetScrollbar();
_this7._resetScrollbar();
EventHandler.trigger(this._element, Event$6.HIDDEN);
EventHandler.trigger(_this7._element, Event$6.HIDDEN);
});
}
};
_removeBackdrop() {
_proto._removeBackdrop = function _removeBackdrop() {
if (this._backdrop) {
this._backdrop.parentNode.removeChild(this._backdrop);
this._backdrop = null;
}
}
};
_showBackdrop(callback) {
const animate = this._element.classList.contains(ClassName$5.FADE) ? ClassName$5.FADE : '';
_proto._showBackdrop = function _showBackdrop(callback) {
var _this8 = this;
var animate = this._element.classList.contains(ClassName$5.FADE) ? ClassName$5.FADE : '';
if (this._isShown && this._config.backdrop) {
this._backdrop = document.createElement('div');
@ -2989,9 +3189,9 @@ class Modal {
}
document.body.appendChild(this._backdrop);
EventHandler.on(this._element, Event$6.CLICK_DISMISS, event => {
if (this._ignoreBackdropClick) {
this._ignoreBackdropClick = false;
EventHandler.on(this._element, Event$6.CLICK_DISMISS, function (event) {
if (_this8._ignoreBackdropClick) {
_this8._ignoreBackdropClick = false;
return;
}
@ -2999,10 +3199,10 @@ class Modal {
return;
}
if (this._config.backdrop === 'static') {
this._element.focus();
if (_this8._config.backdrop === 'static') {
_this8._element.focus();
} else {
this.hide();
_this8.hide();
}
});
@ -3021,14 +3221,14 @@ class Modal {
return;
}
const backdropTransitionDuration = getTransitionDurationFromElement(this._backdrop);
var backdropTransitionDuration = getTransitionDurationFromElement(this._backdrop);
EventHandler.one(this._backdrop, TRANSITION_END, callback);
emulateTransitionEnd(this._backdrop, backdropTransitionDuration);
} else if (!this._isShown && this._backdrop) {
this._backdrop.classList.remove(ClassName$5.SHOW);
const callbackRemove = () => {
this._removeBackdrop();
var callbackRemove = function callbackRemove() {
_this8._removeBackdrop();
if (callback) {
callback();
@ -3036,9 +3236,10 @@ class Modal {
};
if (this._element.classList.contains(ClassName$5.FADE)) {
const backdropTransitionDuration = getTransitionDurationFromElement(this._backdrop);
var _backdropTransitionDuration = getTransitionDurationFromElement(this._backdrop);
EventHandler.one(this._backdrop, TRANSITION_END, callbackRemove);
emulateTransitionEnd(this._backdrop, backdropTransitionDuration);
emulateTransitionEnd(this._backdrop, _backdropTransitionDuration);
} else {
callbackRemove();
}
@ -3048,63 +3249,65 @@ class Modal {
} // ----------------------------------------------------------------------
// the following methods are used to handle overflowing modals
// ----------------------------------------------------------------------
;
_adjustDialog() {
const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight;
_proto._adjustDialog = function _adjustDialog() {
var isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight;
if (!this._isBodyOverflowing && isModalOverflowing) {
this._element.style.paddingLeft = `${this._scrollbarWidth}px`;
this._element.style.paddingLeft = this._scrollbarWidth + "px";
}
if (this._isBodyOverflowing && !isModalOverflowing) {
this._element.style.paddingRight = `${this._scrollbarWidth}px`;
this._element.style.paddingRight = this._scrollbarWidth + "px";
}
}
};
_resetAdjustments() {
_proto._resetAdjustments = function _resetAdjustments() {
this._element.style.paddingLeft = '';
this._element.style.paddingRight = '';
}
};
_checkScrollbar() {
const rect = document.body.getBoundingClientRect();
_proto._checkScrollbar = function _checkScrollbar() {
var rect = document.body.getBoundingClientRect();
this._isBodyOverflowing = rect.left + rect.right < window.innerWidth;
this._scrollbarWidth = this._getScrollbarWidth();
}
};
_proto._setScrollbar = function _setScrollbar() {
var _this9 = this;
_setScrollbar() {
if (this._isBodyOverflowing) {
// Note: DOMNode.style.paddingRight returns the actual value or '' if not set
// while $(DOMNode).css('padding-right') returns the calculated value or 0 if not set
// Adjust fixed content padding
makeArray(SelectorEngine.find(Selector$5.FIXED_CONTENT)).forEach(element => {
const actualPadding = element.style.paddingRight;
const calculatedPadding = window.getComputedStyle(element)['padding-right'];
makeArray(SelectorEngine.find(Selector$5.FIXED_CONTENT)).forEach(function (element) {
var actualPadding = element.style.paddingRight;
var calculatedPadding = window.getComputedStyle(element)['padding-right'];
Manipulator.setDataAttribute(element, 'padding-right', actualPadding);
element.style.paddingRight = `${parseFloat(calculatedPadding) + this._scrollbarWidth}px`;
element.style.paddingRight = parseFloat(calculatedPadding) + _this9._scrollbarWidth + "px";
}); // Adjust sticky content margin
makeArray(SelectorEngine.find(Selector$5.STICKY_CONTENT)).forEach(element => {
const actualMargin = element.style.marginRight;
const calculatedMargin = window.getComputedStyle(element)['margin-right'];
makeArray(SelectorEngine.find(Selector$5.STICKY_CONTENT)).forEach(function (element) {
var actualMargin = element.style.marginRight;
var calculatedMargin = window.getComputedStyle(element)['margin-right'];
Manipulator.setDataAttribute(element, 'margin-right', actualMargin);
element.style.marginRight = `${parseFloat(calculatedMargin) - this._scrollbarWidth}px`;
element.style.marginRight = parseFloat(calculatedMargin) - _this9._scrollbarWidth + "px";
}); // Adjust body padding
const actualPadding = document.body.style.paddingRight;
const calculatedPadding = window.getComputedStyle(document.body)['padding-right'];
var actualPadding = document.body.style.paddingRight;
var calculatedPadding = window.getComputedStyle(document.body)['padding-right'];
Manipulator.setDataAttribute(document.body, 'padding-right', actualPadding);
document.body.style.paddingRight = `${parseFloat(calculatedPadding) + this._scrollbarWidth}px`;
document.body.style.paddingRight = parseFloat(calculatedPadding) + this._scrollbarWidth + "px";
}
document.body.classList.add(ClassName$5.OPEN);
}
};
_resetScrollbar() {
_proto._resetScrollbar = function _resetScrollbar() {
// Restore fixed content padding
makeArray(SelectorEngine.find(Selector$5.FIXED_CONTENT)).forEach(element => {
const padding = Manipulator.getDataAttribute(element, 'padding-right');
makeArray(SelectorEngine.find(Selector$5.FIXED_CONTENT)).forEach(function (element) {
var padding = Manipulator.getDataAttribute(element, 'padding-right');
if (typeof padding !== 'undefined') {
Manipulator.removeDataAttribute(element, 'padding-right');
@ -3112,8 +3315,8 @@ class Modal {
}
}); // Restore sticky content and navbar-toggler margin
makeArray(SelectorEngine.find(`${Selector$5.STICKY_CONTENT}`)).forEach(element => {
const margin = Manipulator.getDataAttribute(element, 'margin-right');
makeArray(SelectorEngine.find("" + Selector$5.STICKY_CONTENT)).forEach(function (element) {
var margin = Manipulator.getDataAttribute(element, 'margin-right');
if (typeof margin !== 'undefined') {
Manipulator.removeDataAttribute(element, 'margin-right');
@ -3121,7 +3324,7 @@ class Modal {
}
}); // Restore body padding
const padding = Manipulator.getDataAttribute(document.body, 'padding-right');
var padding = Manipulator.getDataAttribute(document.body, 'padding-right');
if (typeof padding === 'undefined') {
document.body.style.paddingRight = '';
@ -3129,24 +3332,24 @@ class Modal {
Manipulator.removeDataAttribute(document.body, 'padding-right');
document.body.style.paddingRight = padding;
}
}
};
_getScrollbarWidth() {
_proto._getScrollbarWidth = function _getScrollbarWidth() {
// thx d.walsh
const scrollDiv = document.createElement('div');
var scrollDiv = document.createElement('div');
scrollDiv.className = ClassName$5.SCROLLBAR_MEASURER;
document.body.appendChild(scrollDiv);
const scrollbarWidth = scrollDiv.getBoundingClientRect().width - scrollDiv.clientWidth;
var scrollbarWidth = scrollDiv.getBoundingClientRect().width - scrollDiv.clientWidth;
document.body.removeChild(scrollDiv);
return scrollbarWidth;
} // Static
;
static _jQueryInterface(config, relatedTarget) {
Modal._jQueryInterface = function _jQueryInterface(config, relatedTarget) {
return this.each(function () {
let data = Data.getData(this, DATA_KEY$5);
var data = Data.getData(this, DATA_KEY$5);
const _config = _extends({}, Default$3, Manipulator.getDataAttributes(this), typeof config === 'object' && config ? config : {});
var _config = _objectSpread({}, Default$3, Manipulator.getDataAttributes(this), typeof config === 'object' && config ? config : {});
if (!data) {
data = new Modal(this, _config);
@ -3154,7 +3357,7 @@ class Modal {
if (typeof config === 'string') {
if (typeof data[config] === 'undefined') {
throw new TypeError(`No method named "${config}"`);
throw new TypeError("No method named \"" + config + "\"");
}
data[config](relatedTarget);
@ -3162,13 +3365,26 @@ class Modal {
data.show(relatedTarget);
}
});
}
};
static _getInstance(element) {
Modal._getInstance = function _getInstance(element) {
return Data.getData(element, DATA_KEY$5);
}
};
}
_createClass(Modal, null, [{
key: "VERSION",
get: function get() {
return VERSION$5;
}
}, {
key: "Default",
get: function get() {
return Default$3;
}
}]);
return Modal;
}();
/**
* ------------------------------------------------------------------------
* Data Api implementation
@ -3177,32 +3393,34 @@ class Modal {
EventHandler.on(document, Event$6.CLICK_DATA_API, Selector$5.DATA_TOGGLE, function (event) {
let target;
const selector = getSelectorFromElement(this);
var _this10 = this;
var target;
var selector = getSelectorFromElement(this);
if (selector) {
target = SelectorEngine.findOne(selector);
}
const config = Data.getData(target, DATA_KEY$5) ? 'toggle' : _extends({}, Manipulator.getDataAttributes(target), Manipulator.getDataAttributes(this));
var config = Data.getData(target, DATA_KEY$5) ? 'toggle' : _objectSpread({}, Manipulator.getDataAttributes(target), Manipulator.getDataAttributes(this));
if (this.tagName === 'A' || this.tagName === 'AREA') {
event.preventDefault();
}
EventHandler.one(target, Event$6.SHOW, showEvent => {
EventHandler.one(target, Event$6.SHOW, function (showEvent) {
if (showEvent.defaultPrevented) {
// only register focus restorer if modal will actually get shown
return;
}
EventHandler.one(target, Event$6.HIDDEN, () => {
if (isVisible(this)) {
this.focus();
EventHandler.one(target, Event$6.HIDDEN, function () {
if (isVisible(_this10)) {
_this10.focus();
}
});
});
let data = Data.getData(target, DATA_KEY$5);
var data = Data.getData(target, DATA_KEY$5);
if (!data) {
data = new Modal(target, config);
@ -3217,12 +3435,12 @@ EventHandler.on(document, Event$6.CLICK_DATA_API, Selector$5.DATA_TOGGLE, functi
*/
if (typeof jQuery !== 'undefined') {
const JQUERY_NO_CONFLICT = jQuery.fn[NAME$5];
var JQUERY_NO_CONFLICT$5 = jQuery.fn[NAME$5];
jQuery.fn[NAME$5] = Modal._jQueryInterface;
jQuery.fn[NAME$5].Constructor = Modal;
jQuery.fn[NAME$5].noConflict = () => {
jQuery.fn[NAME$5] = JQUERY_NO_CONFLICT;
jQuery.fn[NAME$5].noConflict = function () {
jQuery.fn[NAME$5] = JQUERY_NO_CONFLICT$5;
return Modal._jQueryInterface;
};
}
@ -3233,25 +3451,25 @@ if (typeof jQuery !== 'undefined') {
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* --------------------------------------------------------------------------
*/
const uriAttrs = ['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href'];
const ARIA_ATTRIBUTE_PATTERN = /^aria-[\w-]*$/i;
var uriAttrs = ['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href'];
var ARIA_ATTRIBUTE_PATTERN = /^aria-[\w-]*$/i;
/**
* A pattern that recognizes a commonly useful subset of URLs that are safe.
*
* Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts
*/
const SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi;
var SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi;
/**
* A pattern that matches safe data URLs. Only matches image, video and audio types.
*
* Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts
*/
const DATA_URL_PATTERN = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i;
var DATA_URL_PATTERN = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i;
const allowedAttribute = (attr, allowedAttributeList) => {
const attrName = attr.nodeName.toLowerCase();
var allowedAttribute = function allowedAttribute(attr, allowedAttributeList) {
var attrName = attr.nodeName.toLowerCase();
if (allowedAttributeList.indexOf(attrName) !== -1) {
if (uriAttrs.indexOf(attrName) !== -1) {
@ -3261,9 +3479,11 @@ const allowedAttribute = (attr, allowedAttributeList) => {
return true;
}
const regExp = allowedAttributeList.filter(attrRegex => attrRegex instanceof RegExp); // Check if a regular expression validates the attribute.
var regExp = allowedAttributeList.filter(function (attrRegex) {
return attrRegex instanceof RegExp;
}); // Check if a regular expression validates the attribute.
for (let i = 0, l = regExp.length; i < l; i++) {
for (var i = 0, l = regExp.length; i < l; i++) {
if (attrName.match(regExp[i])) {
return true;
}
@ -3272,7 +3492,7 @@ const allowedAttribute = (attr, allowedAttributeList) => {
return false;
};
const DefaultWhitelist = {
var DefaultWhitelist = {
// Global attributes allowed on any supplied element below.
'*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],
a: ['target', 'href', 'title', 'rel'],
@ -3314,27 +3534,33 @@ function sanitizeHtml(unsafeHtml, whiteList, sanitizeFn) {
return sanitizeFn(unsafeHtml);
}
const domParser = new window.DOMParser();
const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html');
const whitelistKeys = Object.keys(whiteList);
const elements = makeArray(createdDocument.body.querySelectorAll('*'));
var domParser = new window.DOMParser();
var createdDocument = domParser.parseFromString(unsafeHtml, 'text/html');
var whitelistKeys = Object.keys(whiteList);
var elements = makeArray(createdDocument.body.querySelectorAll('*'));
for (let i = 0, len = elements.length; i < len; i++) {
const el = elements[i];
const elName = el.nodeName.toLowerCase();
var _loop = function _loop(i, len) {
var el = elements[i];
var elName = el.nodeName.toLowerCase();
if (whitelistKeys.indexOf(elName) === -1) {
el.parentNode.removeChild(el);
continue;
return "continue";
}
const attributeList = makeArray(el.attributes);
const whitelistedAttributes = [].concat(whiteList['*'] || [], whiteList[elName] || []);
attributeList.forEach(attr => {
var attributeList = makeArray(el.attributes);
var whitelistedAttributes = [].concat(whiteList['*'] || [], whiteList[elName] || []);
attributeList.forEach(function (attr) {
if (!allowedAttribute(attr, whitelistedAttributes)) {
el.removeAttribute(attr.nodeName);
}
});
};
for (var i = 0, len = elements.length; i < len; i++) {
var _ret = _loop(i, len);
if (_ret === "continue") continue;
}
return createdDocument.body.innerHTML;
@ -3346,14 +3572,14 @@ function sanitizeHtml(unsafeHtml, whiteList, sanitizeFn) {
* ------------------------------------------------------------------------
*/
const NAME$6 = 'tooltip';
const VERSION$6 = '4.3.1';
const DATA_KEY$6 = 'bs.tooltip';
const EVENT_KEY$6 = `.${DATA_KEY$6}`;
const CLASS_PREFIX = 'bs-tooltip';
const BSCLS_PREFIX_REGEX = new RegExp(`(^|\\s)${CLASS_PREFIX}\\S+`, 'g');
const DISALLOWED_ATTRIBUTES = ['sanitize', 'whiteList', 'sanitizeFn'];
const DefaultType$4 = {
var NAME$6 = 'tooltip';
var VERSION$6 = '4.3.1';
var DATA_KEY$6 = 'bs.tooltip';
var EVENT_KEY$6 = "." + DATA_KEY$6;
var CLASS_PREFIX = 'bs-tooltip';
var BSCLS_PREFIX_REGEX = new RegExp("(^|\\s)" + CLASS_PREFIX + "\\S+", 'g');
var DISALLOWED_ATTRIBUTES = ['sanitize', 'whiteList', 'sanitizeFn'];
var DefaultType$4 = {
animation: 'boolean',
template: 'string',
title: '(string|element|function)',
@ -3370,14 +3596,14 @@ const DefaultType$4 = {
sanitizeFn: '(null|function)',
whiteList: 'object'
};
const AttachmentMap$1 = {
var AttachmentMap$1 = {
AUTO: 'auto',
TOP: 'top',
RIGHT: 'right',
BOTTOM: 'bottom',
LEFT: 'left'
};
const Default$4 = {
var Default$4 = {
animation: true,
template: '<div class="tooltip" role="tooltip">' + '<div class="tooltip-arrow"></div>' + '<div class="tooltip-inner"></div></div>',
trigger: 'hover focus',
@ -3394,31 +3620,31 @@ const Default$4 = {
sanitizeFn: null,
whiteList: DefaultWhitelist
};
const HoverState = {
var HoverState = {
SHOW: 'show',
OUT: 'out'
};
const Event$7 = {
HIDE: `hide${EVENT_KEY$6}`,
HIDDEN: `hidden${EVENT_KEY$6}`,
SHOW: `show${EVENT_KEY$6}`,
SHOWN: `shown${EVENT_KEY$6}`,
INSERTED: `inserted${EVENT_KEY$6}`,
CLICK: `click${EVENT_KEY$6}`,
FOCUSIN: `focusin${EVENT_KEY$6}`,
FOCUSOUT: `focusout${EVENT_KEY$6}`,
MOUSEENTER: `mouseenter${EVENT_KEY$6}`,
MOUSELEAVE: `mouseleave${EVENT_KEY$6}`
var Event$7 = {
HIDE: "hide" + EVENT_KEY$6,
HIDDEN: "hidden" + EVENT_KEY$6,
SHOW: "show" + EVENT_KEY$6,
SHOWN: "shown" + EVENT_KEY$6,
INSERTED: "inserted" + EVENT_KEY$6,
CLICK: "click" + EVENT_KEY$6,
FOCUSIN: "focusin" + EVENT_KEY$6,
FOCUSOUT: "focusout" + EVENT_KEY$6,
MOUSEENTER: "mouseenter" + EVENT_KEY$6,
MOUSELEAVE: "mouseleave" + EVENT_KEY$6
};
const ClassName$6 = {
var ClassName$6 = {
FADE: 'fade',
SHOW: 'show'
};
const Selector$6 = {
var Selector$6 = {
TOOLTIP_INNER: '.tooltip-inner',
TOOLTIP_ARROW: '.tooltip-arrow'
};
const Trigger = {
var Trigger = {
HOVER: 'hover',
FOCUS: 'focus',
CLICK: 'click',
@ -3431,8 +3657,10 @@ const Trigger = {
};
class Tooltip {
constructor(element, config) {
var Tooltip =
/*#__PURE__*/
function () {
function Tooltip(element, config) {
/**
* Check for Popper dependency
* Popper - https://popper.js.org
@ -3458,55 +3686,29 @@ class Tooltip {
} // Getters
static get VERSION() {
return VERSION$6;
}
var _proto = Tooltip.prototype;
static get Default() {
return Default$4;
}
static get NAME() {
return NAME$6;
}
static get DATA_KEY() {
return DATA_KEY$6;
}
static get Event() {
return Event$7;
}
static get EVENT_KEY() {
return EVENT_KEY$6;
}
static get DefaultType() {
return DefaultType$4;
} // Public
enable() {
// Public
_proto.enable = function enable() {
this._isEnabled = true;
}
};
disable() {
_proto.disable = function disable() {
this._isEnabled = false;
}
};
toggleEnabled() {
_proto.toggleEnabled = function toggleEnabled() {
this._isEnabled = !this._isEnabled;
}
};
toggle(event) {
_proto.toggle = function toggle(event) {
if (!this._isEnabled) {
return;
}
if (event) {
const dataKey = this.constructor.DATA_KEY;
let context = Data.getData(event.delegateTarget, dataKey);
var dataKey = this.constructor.DATA_KEY;
var context = Data.getData(event.delegateTarget, dataKey);
if (!context) {
context = new this.constructor(event.delegateTarget, this._getDelegateConfig());
@ -3529,9 +3731,9 @@ class Tooltip {
this._enter(null, this);
}
}
};
dispose() {
_proto.dispose = function dispose() {
clearTimeout(this._timeout);
Data.removeData(this.element, this.constructor.DATA_KEY);
EventHandler.off(this.element, this.constructor.EVENT_KEY);
@ -3554,24 +3756,26 @@ class Tooltip {
this.element = null;
this.config = null;
this.tip = null;
}
};
_proto.show = function show() {
var _this = this;
show() {
if (this.element.style.display === 'none') {
throw new Error('Please use show on visible elements');
}
if (this.isWithContent() && this._isEnabled) {
const showEvent = EventHandler.trigger(this.element, this.constructor.Event.SHOW);
const shadowRoot = findShadowRoot(this.element);
const isInTheDom = shadowRoot === null ? this.element.ownerDocument.documentElement.contains(this.element) : shadowRoot.contains(this.element);
var showEvent = EventHandler.trigger(this.element, this.constructor.Event.SHOW);
var shadowRoot = findShadowRoot(this.element);
var isInTheDom = shadowRoot === null ? this.element.ownerDocument.documentElement.contains(this.element) : shadowRoot.contains(this.element);
if (showEvent.defaultPrevented || !isInTheDom) {
return;
}
const tip = this.getTipElement();
const tipId = getUID(this.constructor.NAME);
var tip = this.getTipElement();
var tipId = getUID(this.constructor.NAME);
tip.setAttribute('id', tipId);
this.element.setAttribute('aria-describedby', tipId);
this.setContent();
@ -3580,13 +3784,13 @@ class Tooltip {
tip.classList.add(ClassName$6.FADE);
}
const placement = typeof this.config.placement === 'function' ? this.config.placement.call(this, tip, this.element) : this.config.placement;
var placement = typeof this.config.placement === 'function' ? this.config.placement.call(this, tip, this.element) : this.config.placement;
const attachment = this._getAttachment(placement);
var attachment = this._getAttachment(placement);
this.addAttachmentClass(attachment);
const container = this._getContainer();
var container = this._getContainer();
Data.setData(tip, this.constructor.DATA_KEY, this);
@ -3609,12 +3813,14 @@ class Tooltip {
boundariesElement: this.config.boundary
}
},
onCreate: data => {
onCreate: function onCreate(data) {
if (data.originalPlacement !== data.placement) {
this._handlePopperPlacementChange(data);
_this._handlePopperPlacementChange(data);
}
},
onUpdate: data => this._handlePopperPlacementChange(data)
onUpdate: function onUpdate(data) {
return _this._handlePopperPlacementChange(data);
}
});
tip.classList.add(ClassName$6.SHOW); // If this is a touch-enabled device we add extra
// empty mouseover listeners to the body's immediate children;
@ -3622,50 +3828,53 @@ class Tooltip {
// https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html
if ('ontouchstart' in document.documentElement) {
makeArray(document.body.children).forEach(element => {
makeArray(document.body.children).forEach(function (element) {
EventHandler.on(element, 'mouseover', noop());
});
}
const complete = () => {
if (this.config.animation) {
this._fixTransition();
var complete = function complete() {
if (_this.config.animation) {
_this._fixTransition();
}
const prevHoverState = this._hoverState;
this._hoverState = null;
EventHandler.trigger(this.element, this.constructor.Event.SHOWN);
var prevHoverState = _this._hoverState;
_this._hoverState = null;
EventHandler.trigger(_this.element, _this.constructor.Event.SHOWN);
if (prevHoverState === HoverState.OUT) {
this._leave(null, this);
_this._leave(null, _this);
}
};
if (this.tip.classList.contains(ClassName$6.FADE)) {
const transitionDuration = getTransitionDurationFromElement(this.tip);
var transitionDuration = getTransitionDurationFromElement(this.tip);
EventHandler.one(this.tip, TRANSITION_END, complete);
emulateTransitionEnd(this.tip, transitionDuration);
} else {
complete();
}
}
}
};
hide(callback) {
const tip = this.getTipElement();
_proto.hide = function hide(callback) {
var _this2 = this;
const complete = () => {
if (this._hoverState !== HoverState.SHOW && tip.parentNode) {
var tip = this.getTipElement();
var complete = function complete() {
if (_this2._hoverState !== HoverState.SHOW && tip.parentNode) {
tip.parentNode.removeChild(tip);
}
this._cleanTipClass();
_this2._cleanTipClass();
this.element.removeAttribute('aria-describedby');
EventHandler.trigger(this.element, this.constructor.Event.HIDDEN);
_this2.element.removeAttribute('aria-describedby');
if (this._popper !== null) {
this._popper.destroy();
EventHandler.trigger(_this2.element, _this2.constructor.Event.HIDDEN);
if (_this2._popper !== null) {
_this2._popper.destroy();
}
if (callback) {
@ -3673,7 +3882,7 @@ class Tooltip {
}
};
const hideEvent = EventHandler.trigger(this.element, this.constructor.Event.HIDE);
var hideEvent = EventHandler.trigger(this.element, this.constructor.Event.HIDE);
if (hideEvent.defaultPrevented) {
return;
@ -3683,7 +3892,9 @@ class Tooltip {
// empty mouseover listeners we added for iOS support
if ('ontouchstart' in document.documentElement) {
makeArray(document.body.children).forEach(element => EventHandler.off(element, 'mouseover', noop));
makeArray(document.body.children).forEach(function (element) {
return EventHandler.off(element, 'mouseover', noop);
});
}
this._activeTrigger[Trigger.CLICK] = false;
@ -3691,7 +3902,7 @@ class Tooltip {
this._activeTrigger[Trigger.HOVER] = false;
if (this.tip.classList.contains(ClassName$6.FADE)) {
const transitionDuration = getTransitionDurationFromElement(tip);
var transitionDuration = getTransitionDurationFromElement(tip);
EventHandler.one(tip, TRANSITION_END, complete);
emulateTransitionEnd(tip, transitionDuration);
} else {
@ -3699,42 +3910,42 @@ class Tooltip {
}
this._hoverState = '';
}
};
update() {
_proto.update = function update() {
if (this._popper !== null) {
this._popper.scheduleUpdate();
}
} // Protected
;
isWithContent() {
_proto.isWithContent = function isWithContent() {
return Boolean(this.getTitle());
}
};
addAttachmentClass(attachment) {
this.getTipElement().classList.add(`${CLASS_PREFIX}-${attachment}`);
}
_proto.addAttachmentClass = function addAttachmentClass(attachment) {
this.getTipElement().classList.add(CLASS_PREFIX + "-" + attachment);
};
getTipElement() {
_proto.getTipElement = function getTipElement() {
if (this.tip) {
return this.tip;
}
const element = document.createElement('div');
var element = document.createElement('div');
element.innerHTML = this.config.template;
this.tip = element.children[0];
return this.tip;
}
};
setContent() {
const tip = this.getTipElement();
_proto.setContent = function setContent() {
var tip = this.getTipElement();
this.setElementContent(SelectorEngine.findOne(Selector$6.TOOLTIP_INNER, tip), this.getTitle());
tip.classList.remove(ClassName$6.FADE);
tip.classList.remove(ClassName$6.SHOW);
}
};
setElementContent(element, content) {
_proto.setElementContent = function setElementContent(element, content) {
if (element === null) {
return;
}
@ -3766,10 +3977,10 @@ class Tooltip {
} else {
element.innerText = content;
}
}
};
getTitle() {
let title = this.element.getAttribute('data-original-title');
_proto.getTitle = function getTitle() {
var title = this.element.getAttribute('data-original-title');
if (!title) {
title = typeof this.config.title === 'function' ? this.config.title.call(this.element) : this.config.title;
@ -3777,14 +3988,16 @@ class Tooltip {
return title;
} // Private
;
_proto._getOffset = function _getOffset() {
var _this3 = this;
_getOffset() {
const offset = {};
var offset = {};
if (typeof this.config.offset === 'function') {
offset.fn = data => {
data.offsets = _extends({}, data.offsets, this.config.offset(data.offsets, this.element) || {});
offset.fn = function (data) {
data.offsets = _objectSpread({}, data.offsets, _this3.config.offset(data.offsets, _this3.element) || {});
return data;
};
} else {
@ -3792,9 +4005,9 @@ class Tooltip {
}
return offset;
}
};
_getContainer() {
_proto._getContainer = function _getContainer() {
if (this.config.container === false) {
return document.body;
}
@ -3804,51 +4017,59 @@ class Tooltip {
}
return SelectorEngine.findOne(this.config.container);
}
};
_getAttachment(placement) {
_proto._getAttachment = function _getAttachment(placement) {
return AttachmentMap$1[placement.toUpperCase()];
}
};
_setListeners() {
const triggers = this.config.trigger.split(' ');
triggers.forEach(trigger => {
_proto._setListeners = function _setListeners() {
var _this4 = this;
var triggers = this.config.trigger.split(' ');
triggers.forEach(function (trigger) {
if (trigger === 'click') {
EventHandler.on(this.element, this.constructor.Event.CLICK, this.config.selector, event => this.toggle(event));
EventHandler.on(_this4.element, _this4.constructor.Event.CLICK, _this4.config.selector, function (event) {
return _this4.toggle(event);
});
} else if (trigger !== Trigger.MANUAL) {
const eventIn = trigger === Trigger.HOVER ? this.constructor.Event.MOUSEENTER : this.constructor.Event.FOCUSIN;
const eventOut = trigger === Trigger.HOVER ? this.constructor.Event.MOUSELEAVE : this.constructor.Event.FOCUSOUT;
EventHandler.on(this.element, eventIn, this.config.selector, event => this._enter(event));
EventHandler.on(this.element, eventOut, this.config.selector, event => this._leave(event));
var eventIn = trigger === Trigger.HOVER ? _this4.constructor.Event.MOUSEENTER : _this4.constructor.Event.FOCUSIN;
var eventOut = trigger === Trigger.HOVER ? _this4.constructor.Event.MOUSELEAVE : _this4.constructor.Event.FOCUSOUT;
EventHandler.on(_this4.element, eventIn, _this4.config.selector, function (event) {
return _this4._enter(event);
});
EventHandler.on(_this4.element, eventOut, _this4.config.selector, function (event) {
return _this4._leave(event);
});
}
});
EventHandler.on(SelectorEngine.closest(this.element, '.modal'), 'hide.bs.modal', () => {
if (this.element) {
this.hide();
EventHandler.on(SelectorEngine.closest(this.element, '.modal'), 'hide.bs.modal', function () {
if (_this4.element) {
_this4.hide();
}
});
if (this.config.selector) {
this.config = _extends({}, this.config, {
this.config = _objectSpread({}, this.config, {
trigger: 'manual',
selector: ''
});
} else {
this._fixTitle();
}
}
};
_fixTitle() {
const titleType = typeof this.element.getAttribute('data-original-title');
_proto._fixTitle = function _fixTitle() {
var titleType = typeof this.element.getAttribute('data-original-title');
if (this.element.getAttribute('title') || titleType !== 'string') {
this.element.setAttribute('data-original-title', this.element.getAttribute('title') || '');
this.element.setAttribute('title', '');
}
}
};
_enter(event, context) {
const dataKey = this.constructor.DATA_KEY;
_proto._enter = function _enter(event, context) {
var dataKey = this.constructor.DATA_KEY;
context = context || Data.getData(event.delegateTarget, dataKey);
if (!context) {
@ -3873,15 +4094,15 @@ class Tooltip {
return;
}
context._timeout = setTimeout(() => {
context._timeout = setTimeout(function () {
if (context._hoverState === HoverState.SHOW) {
context.show();
}
}, context.config.delay.show);
}
};
_leave(event, context) {
const dataKey = this.constructor.DATA_KEY;
_proto._leave = function _leave(event, context) {
var dataKey = this.constructor.DATA_KEY;
context = context || Data.getData(event.delegateTarget, dataKey);
if (!context) {
@ -3905,26 +4126,26 @@ class Tooltip {
return;
}
context._timeout = setTimeout(() => {
context._timeout = setTimeout(function () {
if (context._hoverState === HoverState.OUT) {
context.hide();
}
}, context.config.delay.hide);
}
};
_isWithActiveTrigger() {
for (const trigger in this._activeTrigger) {
_proto._isWithActiveTrigger = function _isWithActiveTrigger() {
for (var trigger in this._activeTrigger) {
if (this._activeTrigger[trigger]) {
return true;
}
}
return false;
}
};
_getConfig(config) {
const dataAttributes = Manipulator.getDataAttributes(this.element);
Object.keys(dataAttributes).forEach(dataAttr => {
_proto._getConfig = function _getConfig(config) {
var dataAttributes = Manipulator.getDataAttributes(this.element);
Object.keys(dataAttributes).forEach(function (dataAttr) {
if (DISALLOWED_ATTRIBUTES.indexOf(dataAttr) !== -1) {
delete dataAttributes[dataAttr];
}
@ -3934,7 +4155,7 @@ class Tooltip {
config.container = config.container[0];
}
config = _extends({}, this.constructor.Default, dataAttributes, typeof config === 'object' && config ? config : {});
config = _objectSpread({}, this.constructor.Default, dataAttributes, typeof config === 'object' && config ? config : {});
if (typeof config.delay === 'number') {
config.delay = {
@ -3958,13 +4179,13 @@ class Tooltip {
}
return config;
}
};
_getDelegateConfig() {
const config = {};
_proto._getDelegateConfig = function _getDelegateConfig() {
var config = {};
if (this.config) {
for (const key in this.config) {
for (var key in this.config) {
if (this.constructor.Default[key] !== this.config[key]) {
config[key] = this.config[key];
}
@ -3972,29 +4193,33 @@ class Tooltip {
}
return config;
}
};
_cleanTipClass() {
const tip = this.getTipElement();
const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX);
_proto._cleanTipClass = function _cleanTipClass() {
var tip = this.getTipElement();
var tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX);
if (tabClass !== null && tabClass.length) {
tabClass.map(token => token.trim()).forEach(tClass => tip.classList.remove(tClass));
tabClass.map(function (token) {
return token.trim();
}).forEach(function (tClass) {
return tip.classList.remove(tClass);
});
}
}
};
_handlePopperPlacementChange(popperData) {
const popperInstance = popperData.instance;
_proto._handlePopperPlacementChange = function _handlePopperPlacementChange(popperData) {
var popperInstance = popperData.instance;
this.tip = popperInstance.popper;
this._cleanTipClass();
this.addAttachmentClass(this._getAttachment(popperData.placement));
}
};
_fixTransition() {
const tip = this.getTipElement();
const initConfigAnimation = this.config.animation;
_proto._fixTransition = function _fixTransition() {
var tip = this.getTipElement();
var initConfigAnimation = this.config.animation;
if (tip.getAttribute('x-placement') !== null) {
return;
@ -4006,13 +4231,13 @@ class Tooltip {
this.show();
this.config.animation = initConfigAnimation;
} // Static
;
static _jQueryInterface(config) {
Tooltip._jQueryInterface = function _jQueryInterface(config) {
return this.each(function () {
let data = Data.getData(this, DATA_KEY$6);
var data = Data.getData(this, DATA_KEY$6);
const _config = typeof config === 'object' && config;
var _config = typeof config === 'object' && config;
if (!data && /dispose|hide/.test(config)) {
return;
@ -4024,19 +4249,57 @@ class Tooltip {
if (typeof config === 'string') {
if (typeof data[config] === 'undefined') {
throw new TypeError(`No method named "${config}"`);
throw new TypeError("No method named \"" + config + "\"");
}
data[config]();
}
});
}
};
static _getInstance(element) {
Tooltip._getInstance = function _getInstance(element) {
return Data.getData(element, DATA_KEY$6);
}
};
}
_createClass(Tooltip, null, [{
key: "VERSION",
get: function get() {
return VERSION$6;
}
}, {
key: "Default",
get: function get() {
return Default$4;
}
}, {
key: "NAME",
get: function get() {
return NAME$6;
}
}, {
key: "DATA_KEY",
get: function get() {
return DATA_KEY$6;
}
}, {
key: "Event",
get: function get() {
return Event$7;
}
}, {
key: "EVENT_KEY",
get: function get() {
return EVENT_KEY$6;
}
}, {
key: "DefaultType",
get: function get() {
return DefaultType$4;
}
}]);
return Tooltip;
}();
/**
* ------------------------------------------------------------------------
* jQuery
@ -4046,12 +4309,12 @@ class Tooltip {
if (typeof jQuery !== 'undefined') {
const JQUERY_NO_CONFLICT = jQuery.fn[NAME$6];
var JQUERY_NO_CONFLICT$6 = jQuery.fn[NAME$6];
jQuery.fn[NAME$6] = Tooltip._jQueryInterface;
jQuery.fn[NAME$6].Constructor = Tooltip;
jQuery.fn[NAME$6].noConflict = () => {
jQuery.fn[NAME$6] = JQUERY_NO_CONFLICT;
jQuery.fn[NAME$6].noConflict = function () {
jQuery.fn[NAME$6] = JQUERY_NO_CONFLICT$6;
return Tooltip._jQueryInterface;
};
}
@ -4062,43 +4325,43 @@ if (typeof jQuery !== 'undefined') {
* ------------------------------------------------------------------------
*/
const NAME$7 = 'popover';
const VERSION$7 = '4.3.1';
const DATA_KEY$7 = 'bs.popover';
const EVENT_KEY$7 = `.${DATA_KEY$7}`;
const CLASS_PREFIX$1 = 'bs-popover';
const BSCLS_PREFIX_REGEX$1 = new RegExp(`(^|\\s)${CLASS_PREFIX$1}\\S+`, 'g');
var NAME$7 = 'popover';
var VERSION$7 = '4.3.1';
var DATA_KEY$7 = 'bs.popover';
var EVENT_KEY$7 = "." + DATA_KEY$7;
var CLASS_PREFIX$1 = 'bs-popover';
var BSCLS_PREFIX_REGEX$1 = new RegExp("(^|\\s)" + CLASS_PREFIX$1 + "\\S+", 'g');
const Default$5 = _extends({}, Tooltip.Default, {
var Default$5 = _objectSpread({}, Tooltip.Default, {
placement: 'right',
trigger: 'click',
content: '',
template: '<div class="popover" role="tooltip">' + '<div class="popover-arrow"></div>' + '<h3 class="popover-header"></h3>' + '<div class="popover-body"></div></div>'
});
const DefaultType$5 = _extends({}, Tooltip.DefaultType, {
var DefaultType$5 = _objectSpread({}, Tooltip.DefaultType, {
content: '(string|element|function)'
});
const ClassName$7 = {
var ClassName$7 = {
FADE: 'fade',
SHOW: 'show'
};
const Selector$7 = {
var Selector$7 = {
TITLE: '.popover-header',
CONTENT: '.popover-body'
};
const Event$8 = {
HIDE: `hide${EVENT_KEY$7}`,
HIDDEN: `hidden${EVENT_KEY$7}`,
SHOW: `show${EVENT_KEY$7}`,
SHOWN: `shown${EVENT_KEY$7}`,
INSERTED: `inserted${EVENT_KEY$7}`,
CLICK: `click${EVENT_KEY$7}`,
FOCUSIN: `focusin${EVENT_KEY$7}`,
FOCUSOUT: `focusout${EVENT_KEY$7}`,
MOUSEENTER: `mouseenter${EVENT_KEY$7}`,
MOUSELEAVE: `mouseleave${EVENT_KEY$7}`
var Event$8 = {
HIDE: "hide" + EVENT_KEY$7,
HIDDEN: "hidden" + EVENT_KEY$7,
SHOW: "show" + EVENT_KEY$7,
SHOWN: "shown" + EVENT_KEY$7,
INSERTED: "inserted" + EVENT_KEY$7,
CLICK: "click" + EVENT_KEY$7,
FOCUSIN: "focusin" + EVENT_KEY$7,
FOCUSOUT: "focusout" + EVENT_KEY$7,
MOUSEENTER: "mouseenter" + EVENT_KEY$7,
MOUSELEAVE: "mouseleave" + EVENT_KEY$7
/**
* ------------------------------------------------------------------------
* Class Definition
@ -4107,51 +4370,32 @@ const Event$8 = {
};
class Popover extends Tooltip {
// Getters
static get VERSION() {
return VERSION$7;
var Popover =
/*#__PURE__*/
function (_Tooltip) {
_inheritsLoose(Popover, _Tooltip);
function Popover() {
return _Tooltip.apply(this, arguments) || this;
}
static get Default() {
return Default$5;
}
var _proto = Popover.prototype;
static get NAME() {
return NAME$7;
}
static get DATA_KEY() {
return DATA_KEY$7;
}
static get Event() {
return Event$8;
}
static get EVENT_KEY() {
return EVENT_KEY$7;
}
static get DefaultType() {
return DefaultType$5;
} // Overrides
isWithContent() {
// Overrides
_proto.isWithContent = function isWithContent() {
return this.getTitle() || this._getContent();
}
};
addAttachmentClass(attachment) {
this.getTipElement().classList.add(`${CLASS_PREFIX$1}-${attachment}`);
}
_proto.addAttachmentClass = function addAttachmentClass(attachment) {
this.getTipElement().classList.add(CLASS_PREFIX$1 + "-" + attachment);
};
setContent() {
const tip = this.getTipElement(); // we use append for html objects to maintain js events
_proto.setContent = function setContent() {
var tip = this.getTipElement(); // we use append for html objects to maintain js events
this.setElementContent(SelectorEngine.findOne(Selector$7.TITLE, tip), this.getTitle());
let content = this._getContent();
var content = this._getContent();
if (typeof content === 'function') {
content = content.call(this.element);
@ -4161,27 +4405,31 @@ class Popover extends Tooltip {
tip.classList.remove(ClassName$7.FADE);
tip.classList.remove(ClassName$7.SHOW);
} // Private
;
_getContent() {
_proto._getContent = function _getContent() {
return this.element.getAttribute('data-content') || this.config.content;
}
};
_cleanTipClass() {
const tip = this.getTipElement();
const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX$1);
_proto._cleanTipClass = function _cleanTipClass() {
var tip = this.getTipElement();
var tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX$1);
if (tabClass !== null && tabClass.length > 0) {
tabClass.map(token => token.trim()).forEach(tClass => tip.classList.remove(tClass));
tabClass.map(function (token) {
return token.trim();
}).forEach(function (tClass) {
return tip.classList.remove(tClass);
});
}
} // Static
;
static _jQueryInterface(config) {
Popover._jQueryInterface = function _jQueryInterface(config) {
return this.each(function () {
let data = Data.getData(this, DATA_KEY$7);
var data = Data.getData(this, DATA_KEY$7);
const _config = typeof config === 'object' ? config : null;
var _config = typeof config === 'object' ? config : null;
if (!data && /dispose|hide/.test(config)) {
return;
@ -4194,19 +4442,58 @@ class Popover extends Tooltip {
if (typeof config === 'string') {
if (typeof data[config] === 'undefined') {
throw new TypeError(`No method named "${config}"`);
throw new TypeError("No method named \"" + config + "\"");
}
data[config]();
}
});
}
};
static _getInstance(element) {
Popover._getInstance = function _getInstance(element) {
return Data.getData(element, DATA_KEY$7);
}
};
}
_createClass(Popover, null, [{
key: "VERSION",
// Getters
get: function get() {
return VERSION$7;
}
}, {
key: "Default",
get: function get() {
return Default$5;
}
}, {
key: "NAME",
get: function get() {
return NAME$7;
}
}, {
key: "DATA_KEY",
get: function get() {
return DATA_KEY$7;
}
}, {
key: "Event",
get: function get() {
return Event$8;
}
}, {
key: "EVENT_KEY",
get: function get() {
return EVENT_KEY$7;
}
}, {
key: "DefaultType",
get: function get() {
return DefaultType$5;
}
}]);
return Popover;
}(Tooltip);
/**
* ------------------------------------------------------------------------
* jQuery
@ -4215,12 +4502,12 @@ class Popover extends Tooltip {
if (typeof jQuery !== 'undefined') {
const JQUERY_NO_CONFLICT = jQuery.fn[NAME$7];
var JQUERY_NO_CONFLICT$7 = jQuery.fn[NAME$7];
jQuery.fn[NAME$7] = Popover._jQueryInterface;
jQuery.fn[NAME$7].Constructor = Popover;
jQuery.fn[NAME$7].noConflict = () => {
jQuery.fn[NAME$7] = JQUERY_NO_CONFLICT;
jQuery.fn[NAME$7].noConflict = function () {
jQuery.fn[NAME$7] = JQUERY_NO_CONFLICT$7;
return Popover._jQueryInterface;
};
}
@ -4231,31 +4518,31 @@ if (typeof jQuery !== 'undefined') {
* ------------------------------------------------------------------------
*/
const NAME$8 = 'scrollspy';
const VERSION$8 = '4.3.1';
const DATA_KEY$8 = 'bs.scrollspy';
const EVENT_KEY$8 = `.${DATA_KEY$8}`;
const DATA_API_KEY$6 = '.data-api';
const Default$6 = {
var NAME$8 = 'scrollspy';
var VERSION$8 = '4.3.1';
var DATA_KEY$8 = 'bs.scrollspy';
var EVENT_KEY$8 = "." + DATA_KEY$8;
var DATA_API_KEY$6 = '.data-api';
var Default$6 = {
offset: 10,
method: 'auto',
target: ''
};
const DefaultType$6 = {
var DefaultType$6 = {
offset: 'number',
method: 'string',
target: '(string|element)'
};
const Event$9 = {
ACTIVATE: `activate${EVENT_KEY$8}`,
SCROLL: `scroll${EVENT_KEY$8}`,
LOAD_DATA_API: `load${EVENT_KEY$8}${DATA_API_KEY$6}`
var Event$9 = {
ACTIVATE: "activate" + EVENT_KEY$8,
SCROLL: "scroll" + EVENT_KEY$8,
LOAD_DATA_API: "load" + EVENT_KEY$8 + DATA_API_KEY$6
};
const ClassName$8 = {
var ClassName$8 = {
DROPDOWN_ITEM: 'dropdown-item',
ACTIVE: 'active'
};
const Selector$8 = {
var Selector$8 = {
DATA_SPY: '[data-spy="scroll"]',
NAV_LIST_GROUP: '.nav, .list-group',
NAV_LINKS: '.nav-link',
@ -4264,7 +4551,7 @@ const Selector$8 = {
DROPDOWN: '.dropdown',
DROPDOWN_TOGGLE: '.dropdown-toggle'
};
const OffsetMethod = {
var OffsetMethod = {
OFFSET: 'offset',
POSITION: 'position'
/**
@ -4275,17 +4562,23 @@ const OffsetMethod = {
};
class ScrollSpy {
constructor(element, config) {
var ScrollSpy =
/*#__PURE__*/
function () {
function ScrollSpy(element, config) {
var _this = this;
this._element = element;
this._scrollElement = element.tagName === 'BODY' ? window : element;
this._config = this._getConfig(config);
this._selector = `${this._config.target} ${Selector$8.NAV_LINKS},` + `${this._config.target} ${Selector$8.LIST_ITEMS},` + `${this._config.target} .${ClassName$8.DROPDOWN_ITEM}`;
this._selector = this._config.target + " " + Selector$8.NAV_LINKS + "," + (this._config.target + " " + Selector$8.LIST_ITEMS + ",") + (this._config.target + " ." + ClassName$8.DROPDOWN_ITEM);
this._offsets = [];
this._targets = [];
this._activeTarget = null;
this._scrollHeight = 0;
EventHandler.on(this._scrollElement, Event$9.SCROLL, event => this._process(event));
EventHandler.on(this._scrollElement, Event$9.SCROLL, function (event) {
return _this._process(event);
});
this.refresh();
this._process();
@ -4294,33 +4587,29 @@ class ScrollSpy {
} // Getters
static get VERSION() {
return VERSION$8;
}
var _proto = ScrollSpy.prototype;
static get Default() {
return Default$6;
} // Public
// Public
_proto.refresh = function refresh() {
var _this2 = this;
refresh() {
const autoMethod = this._scrollElement === this._scrollElement.window ? OffsetMethod.OFFSET : OffsetMethod.POSITION;
const offsetMethod = this._config.method === 'auto' ? autoMethod : this._config.method;
const offsetBase = offsetMethod === OffsetMethod.POSITION ? this._getScrollTop() : 0;
var autoMethod = this._scrollElement === this._scrollElement.window ? OffsetMethod.OFFSET : OffsetMethod.POSITION;
var offsetMethod = this._config.method === 'auto' ? autoMethod : this._config.method;
var offsetBase = offsetMethod === OffsetMethod.POSITION ? this._getScrollTop() : 0;
this._offsets = [];
this._targets = [];
this._scrollHeight = this._getScrollHeight();
const targets = makeArray(SelectorEngine.find(this._selector));
targets.map(element => {
let target;
const targetSelector = getSelectorFromElement(element);
var targets = makeArray(SelectorEngine.find(this._selector));
targets.map(function (element) {
var target;
var targetSelector = getSelectorFromElement(element);
if (targetSelector) {
target = SelectorEngine.findOne(targetSelector);
}
if (target) {
const targetBCR = target.getBoundingClientRect();
var targetBCR = target.getBoundingClientRect();
if (targetBCR.width || targetBCR.height) {
return [Manipulator[offsetMethod](target).top + offsetBase, targetSelector];
@ -4328,14 +4617,18 @@ class ScrollSpy {
}
return null;
}).filter(item => item).sort((a, b) => a[0] - b[0]).forEach(item => {
this._offsets.push(item[0]);
}).filter(function (item) {
return item;
}).sort(function (a, b) {
return a[0] - b[0];
}).forEach(function (item) {
_this2._offsets.push(item[0]);
this._targets.push(item[1]);
_this2._targets.push(item[1]);
});
}
};
dispose() {
_proto.dispose = function dispose() {
Data.removeData(this._element, DATA_KEY$8);
EventHandler.off(this._scrollElement, EVENT_KEY$8);
this._element = null;
@ -4347,51 +4640,51 @@ class ScrollSpy {
this._activeTarget = null;
this._scrollHeight = null;
} // Private
;
_getConfig(config) {
config = _extends({}, Default$6, typeof config === 'object' && config ? config : {});
_proto._getConfig = function _getConfig(config) {
config = _objectSpread({}, Default$6, typeof config === 'object' && config ? config : {});
if (typeof config.target !== 'string') {
let id = config.target.id;
var id = config.target.id;
if (!id) {
id = getUID(NAME$8);
config.target.id = id;
}
config.target = `#${id}`;
config.target = "#" + id;
}
typeCheckConfig(NAME$8, config, DefaultType$6);
return config;
}
};
_getScrollTop() {
_proto._getScrollTop = function _getScrollTop() {
return this._scrollElement === window ? this._scrollElement.pageYOffset : this._scrollElement.scrollTop;
}
};
_getScrollHeight() {
_proto._getScrollHeight = function _getScrollHeight() {
return this._scrollElement.scrollHeight || Math.max(document.body.scrollHeight, document.documentElement.scrollHeight);
}
};
_getOffsetHeight() {
_proto._getOffsetHeight = function _getOffsetHeight() {
return this._scrollElement === window ? window.innerHeight : this._scrollElement.getBoundingClientRect().height;
}
};
_process() {
const scrollTop = this._getScrollTop() + this._config.offset;
_proto._process = function _process() {
var scrollTop = this._getScrollTop() + this._config.offset;
const scrollHeight = this._getScrollHeight();
var scrollHeight = this._getScrollHeight();
const maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight();
var maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight();
if (this._scrollHeight !== scrollHeight) {
this.refresh();
}
if (scrollTop >= maxScroll) {
const target = this._targets[this._targets.length - 1];
var target = this._targets[this._targets.length - 1];
if (this._activeTarget !== target) {
this._activate(target);
@ -4408,25 +4701,27 @@ class ScrollSpy {
return;
}
const offsetLength = this._offsets.length;
var offsetLength = this._offsets.length;
for (let i = offsetLength; i--;) {
const isActiveTarget = this._activeTarget !== this._targets[i] && scrollTop >= this._offsets[i] && (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1]);
for (var i = offsetLength; i--;) {
var isActiveTarget = this._activeTarget !== this._targets[i] && scrollTop >= this._offsets[i] && (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1]);
if (isActiveTarget) {
this._activate(this._targets[i]);
}
}
}
};
_activate(target) {
_proto._activate = function _activate(target) {
this._activeTarget = target;
this._clear();
const queries = this._selector.split(',').map(selector => `${selector}[data-target="${target}"],${selector}[href="${target}"]`);
var queries = this._selector.split(',').map(function (selector) {
return selector + "[data-target=\"" + target + "\"]," + selector + "[href=\"" + target + "\"]";
});
const link = SelectorEngine.findOne(queries.join(','));
var link = SelectorEngine.findOne(queries.join(','));
if (link.classList.contains(ClassName$8.DROPDOWN_ITEM)) {
SelectorEngine.findOne(Selector$8.DROPDOWN_TOGGLE, SelectorEngine.closest(link, Selector$8.DROPDOWN)).classList.add(ClassName$8.ACTIVE);
@ -4434,13 +4729,17 @@ class ScrollSpy {
} else {
// Set triggered link as active
link.classList.add(ClassName$8.ACTIVE);
SelectorEngine.parents(link, Selector$8.NAV_LIST_GROUP).forEach(listGroup => {
SelectorEngine.parents(link, Selector$8.NAV_LIST_GROUP).forEach(function (listGroup) {
// Set triggered links parents as active
// With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor
SelectorEngine.prev(listGroup, `${Selector$8.NAV_LINKS}, ${Selector$8.LIST_ITEMS}`).forEach(item => item.classList.add(ClassName$8.ACTIVE)); // Handle special case when .nav-link is inside .nav-item
SelectorEngine.prev(listGroup, Selector$8.NAV_LINKS + ", " + Selector$8.LIST_ITEMS).forEach(function (item) {
return item.classList.add(ClassName$8.ACTIVE);
}); // Handle special case when .nav-link is inside .nav-item
SelectorEngine.prev(listGroup, Selector$8.NAV_ITEMS).forEach(navItem => {
SelectorEngine.children(navItem, Selector$8.NAV_LINKS).forEach(item => item.classList.add(ClassName$8.ACTIVE));
SelectorEngine.prev(listGroup, Selector$8.NAV_ITEMS).forEach(function (navItem) {
SelectorEngine.children(navItem, Selector$8.NAV_LINKS).forEach(function (item) {
return item.classList.add(ClassName$8.ACTIVE);
});
});
});
}
@ -4448,18 +4747,22 @@ class ScrollSpy {
EventHandler.trigger(this._scrollElement, Event$9.ACTIVATE, {
relatedTarget: target
});
}
};
_clear() {
makeArray(SelectorEngine.find(this._selector)).filter(node => node.classList.contains(ClassName$8.ACTIVE)).forEach(node => node.classList.remove(ClassName$8.ACTIVE));
_proto._clear = function _clear() {
makeArray(SelectorEngine.find(this._selector)).filter(function (node) {
return node.classList.contains(ClassName$8.ACTIVE);
}).forEach(function (node) {
return node.classList.remove(ClassName$8.ACTIVE);
});
} // Static
;
static _jQueryInterface(config) {
ScrollSpy._jQueryInterface = function _jQueryInterface(config) {
return this.each(function () {
let data = Data.getData(this, DATA_KEY$8);
var data = Data.getData(this, DATA_KEY$8);
const _config = typeof config === 'object' && config;
var _config = typeof config === 'object' && config;
if (!data) {
data = new ScrollSpy(this, _config);
@ -4467,19 +4770,32 @@ class ScrollSpy {
if (typeof config === 'string') {
if (typeof data[config] === 'undefined') {
throw new TypeError(`No method named "${config}"`);
throw new TypeError("No method named \"" + config + "\"");
}
data[config]();
}
});
}
};
static _getInstance(element) {
ScrollSpy._getInstance = function _getInstance(element) {
return Data.getData(element, DATA_KEY$8);
}
};
}
_createClass(ScrollSpy, null, [{
key: "VERSION",
get: function get() {
return VERSION$8;
}
}, {
key: "Default",
get: function get() {
return Default$6;
}
}]);
return ScrollSpy;
}();
/**
* ------------------------------------------------------------------------
* Data Api implementation
@ -4487,8 +4803,10 @@ class ScrollSpy {
*/
EventHandler.on(window, Event$9.LOAD_DATA_API, () => {
makeArray(SelectorEngine.find(Selector$8.DATA_SPY)).forEach(spy => new ScrollSpy(spy, Manipulator.getDataAttributes(spy)));
EventHandler.on(window, Event$9.LOAD_DATA_API, function () {
makeArray(SelectorEngine.find(Selector$8.DATA_SPY)).forEach(function (spy) {
return new ScrollSpy(spy, Manipulator.getDataAttributes(spy));
});
});
/**
* ------------------------------------------------------------------------
@ -4497,48 +4815,42 @@ EventHandler.on(window, Event$9.LOAD_DATA_API, () => {
*/
if (typeof jQuery !== 'undefined') {
const JQUERY_NO_CONFLICT = jQuery.fn[NAME$8];
var JQUERY_NO_CONFLICT$8 = jQuery.fn[NAME$8];
jQuery.fn[NAME$8] = ScrollSpy._jQueryInterface;
jQuery.fn[NAME$8].Constructor = ScrollSpy;
jQuery.fn[NAME$8].noConflict = () => {
jQuery.fn[NAME$8] = JQUERY_NO_CONFLICT;
jQuery.fn[NAME$8].noConflict = function () {
jQuery.fn[NAME$8] = JQUERY_NO_CONFLICT$8;
return ScrollSpy._jQueryInterface;
};
}
/**
* --------------------------------------------------------------------------
* Bootstrap (v4.3.1): tab.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* --------------------------------------------------------------------------
*/
/**
* ------------------------------------------------------------------------
* Constants
* ------------------------------------------------------------------------
*/
const NAME$9 = 'tab';
const VERSION$9 = '4.3.1';
const DATA_KEY$9 = 'bs.tab';
const EVENT_KEY$9 = `.${DATA_KEY$9}`;
const DATA_API_KEY$7 = '.data-api';
const Event$a = {
HIDE: `hide${EVENT_KEY$9}`,
HIDDEN: `hidden${EVENT_KEY$9}`,
SHOW: `show${EVENT_KEY$9}`,
SHOWN: `shown${EVENT_KEY$9}`,
CLICK_DATA_API: `click${EVENT_KEY$9}${DATA_API_KEY$7}`
var NAME$9 = 'tab';
var VERSION$9 = '4.3.1';
var DATA_KEY$9 = 'bs.tab';
var EVENT_KEY$9 = "." + DATA_KEY$9;
var DATA_API_KEY$7 = '.data-api';
var Event$a = {
HIDE: "hide" + EVENT_KEY$9,
HIDDEN: "hidden" + EVENT_KEY$9,
SHOW: "show" + EVENT_KEY$9,
SHOWN: "shown" + EVENT_KEY$9,
CLICK_DATA_API: "click" + EVENT_KEY$9 + DATA_API_KEY$7
};
const ClassName$9 = {
var ClassName$9 = {
DROPDOWN_MENU: 'dropdown-menu',
ACTIVE: 'active',
DISABLED: 'disabled',
FADE: 'fade',
SHOW: 'show'
};
const Selector$9 = {
var Selector$9 = {
DROPDOWN: '.dropdown',
NAV_LIST_GROUP: '.nav, .list-group',
ACTIVE: '.active',
@ -4554,35 +4866,37 @@ const Selector$9 = {
};
class Tab {
constructor(element) {
var Tab =
/*#__PURE__*/
function () {
function Tab(element) {
this._element = element;
Data.setData(this._element, DATA_KEY$9, this);
} // Getters
static get VERSION() {
return VERSION$9;
} // Public
var _proto = Tab.prototype;
// Public
_proto.show = function show() {
var _this = this;
show() {
if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && this._element.classList.contains(ClassName$9.ACTIVE) || this._element.classList.contains(ClassName$9.DISABLED)) {
return;
}
let target;
let previous;
const listElement = SelectorEngine.closest(this._element, Selector$9.NAV_LIST_GROUP);
const selector = getSelectorFromElement(this._element);
var target;
var previous;
var listElement = SelectorEngine.closest(this._element, Selector$9.NAV_LIST_GROUP);
var selector = getSelectorFromElement(this._element);
if (listElement) {
const itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? Selector$9.ACTIVE_UL : Selector$9.ACTIVE;
var itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? Selector$9.ACTIVE_UL : Selector$9.ACTIVE;
previous = makeArray(SelectorEngine.find(itemSelector, listElement));
previous = previous[previous.length - 1];
}
let hideEvent = null;
var hideEvent = null;
if (previous) {
hideEvent = EventHandler.trigger(previous, Event$a.HIDE, {
@ -4590,7 +4904,7 @@ class Tab {
});
}
const showEvent = EventHandler.trigger(this._element, Event$a.SHOW, {
var showEvent = EventHandler.trigger(this._element, Event$a.SHOW, {
relatedTarget: previous
});
@ -4604,11 +4918,11 @@ class Tab {
this._activate(this._element, listElement);
const complete = () => {
var complete = function complete() {
EventHandler.trigger(previous, Event$a.HIDDEN, {
relatedTarget: this._element
relatedTarget: _this._element
});
EventHandler.trigger(this._element, Event$a.SHOWN, {
EventHandler.trigger(_this._element, Event$a.SHOWN, {
relatedTarget: previous
});
};
@ -4618,35 +4932,39 @@ class Tab {
} else {
complete();
}
}
};
dispose() {
_proto.dispose = function dispose() {
Data.removeData(this._element, DATA_KEY$9);
this._element = null;
} // Private
;
_proto._activate = function _activate(element, container, callback) {
var _this2 = this;
_activate(element, container, callback) {
const activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ? SelectorEngine.find(Selector$9.ACTIVE_UL, container) : SelectorEngine.children(container, Selector$9.ACTIVE);
const active = activeElements[0];
const isTransitioning = callback && active && active.classList.contains(ClassName$9.FADE);
var activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ? SelectorEngine.find(Selector$9.ACTIVE_UL, container) : SelectorEngine.children(container, Selector$9.ACTIVE);
var active = activeElements[0];
var isTransitioning = callback && active && active.classList.contains(ClassName$9.FADE);
const complete = () => this._transitionComplete(element, active, callback);
var complete = function complete() {
return _this2._transitionComplete(element, active, callback);
};
if (active && isTransitioning) {
const transitionDuration = getTransitionDurationFromElement(active);
var transitionDuration = getTransitionDurationFromElement(active);
active.classList.remove(ClassName$9.SHOW);
EventHandler.one(active, TRANSITION_END, complete);
emulateTransitionEnd(active, transitionDuration);
} else {
complete();
}
}
};
_transitionComplete(element, active, callback) {
_proto._transitionComplete = function _transitionComplete(element, active, callback) {
if (active) {
active.classList.remove(ClassName$9.ACTIVE);
const dropdownChild = SelectorEngine.findOne(Selector$9.DROPDOWN_ACTIVE_CHILD, active.parentNode);
var dropdownChild = SelectorEngine.findOne(Selector$9.DROPDOWN_ACTIVE_CHILD, active.parentNode);
if (dropdownChild) {
dropdownChild.classList.remove(ClassName$9.ACTIVE);
@ -4670,10 +4988,12 @@ class Tab {
}
if (element.parentNode && element.parentNode.classList.contains(ClassName$9.DROPDOWN_MENU)) {
const dropdownElement = SelectorEngine.closest(element, Selector$9.DROPDOWN);
var dropdownElement = SelectorEngine.closest(element, Selector$9.DROPDOWN);
if (dropdownElement) {
makeArray(SelectorEngine.find(Selector$9.DROPDOWN_TOGGLE)).forEach(dropdown => dropdown.classList.add(ClassName$9.ACTIVE));
makeArray(SelectorEngine.find(Selector$9.DROPDOWN_TOGGLE)).forEach(function (dropdown) {
return dropdown.classList.add(ClassName$9.ACTIVE);
});
}
element.setAttribute('aria-expanded', true);
@ -4683,27 +5003,35 @@ class Tab {
callback();
}
} // Static
;
static _jQueryInterface(config) {
Tab._jQueryInterface = function _jQueryInterface(config) {
return this.each(function () {
const data = Data.getData(this, DATA_KEY$9) || new Tab(this);
var data = Data.getData(this, DATA_KEY$9) || new Tab(this);
if (typeof config === 'string') {
if (typeof data[config] === 'undefined') {
throw new TypeError(`No method named "${config}"`);
throw new TypeError("No method named \"" + config + "\"");
}
data[config]();
}
});
}
};
static _getInstance(element) {
Tab._getInstance = function _getInstance(element) {
return Data.getData(element, DATA_KEY$9);
}
};
}
_createClass(Tab, null, [{
key: "VERSION",
get: function get() {
return VERSION$9;
}
}]);
return Tab;
}();
/**
* ------------------------------------------------------------------------
* Data Api implementation
@ -4713,7 +5041,7 @@ class Tab {
EventHandler.on(document, Event$a.CLICK_DATA_API, Selector$9.DATA_TOGGLE, function (event) {
event.preventDefault();
const data = Data.getData(this, DATA_KEY$9) || new Tab(this);
var data = Data.getData(this, DATA_KEY$9) || new Tab(this);
data.show();
});
/**
@ -4724,12 +5052,12 @@ EventHandler.on(document, Event$a.CLICK_DATA_API, Selector$9.DATA_TOGGLE, functi
*/
if (typeof jQuery !== 'undefined') {
const JQUERY_NO_CONFLICT = jQuery.fn[NAME$9];
var JQUERY_NO_CONFLICT$9 = jQuery.fn[NAME$9];
jQuery.fn[NAME$9] = Tab._jQueryInterface;
jQuery.fn[NAME$9].Constructor = Tab;
jQuery.fn[NAME$9].noConflict = () => {
jQuery.fn[NAME$9] = JQUERY_NO_CONFLICT;
jQuery.fn[NAME$9].noConflict = function () {
jQuery.fn[NAME$9] = JQUERY_NO_CONFLICT$9;
return Tab._jQueryInterface;
};
}
@ -4740,34 +5068,34 @@ if (typeof jQuery !== 'undefined') {
* ------------------------------------------------------------------------
*/
const NAME$a = 'toast';
const VERSION$a = '4.3.1';
const DATA_KEY$a = 'bs.toast';
const EVENT_KEY$a = `.${DATA_KEY$a}`;
const Event$b = {
CLICK_DISMISS: `click.dismiss${EVENT_KEY$a}`,
HIDE: `hide${EVENT_KEY$a}`,
HIDDEN: `hidden${EVENT_KEY$a}`,
SHOW: `show${EVENT_KEY$a}`,
SHOWN: `shown${EVENT_KEY$a}`
var NAME$a = 'toast';
var VERSION$a = '4.3.1';
var DATA_KEY$a = 'bs.toast';
var EVENT_KEY$a = "." + DATA_KEY$a;
var Event$b = {
CLICK_DISMISS: "click.dismiss" + EVENT_KEY$a,
HIDE: "hide" + EVENT_KEY$a,
HIDDEN: "hidden" + EVENT_KEY$a,
SHOW: "show" + EVENT_KEY$a,
SHOWN: "shown" + EVENT_KEY$a
};
const ClassName$a = {
var ClassName$a = {
FADE: 'fade',
HIDE: 'hide',
SHOW: 'show',
SHOWING: 'showing'
};
const DefaultType$7 = {
var DefaultType$7 = {
animation: 'boolean',
autohide: 'boolean',
delay: 'number'
};
const Default$7 = {
var Default$7 = {
animation: true,
autohide: true,
delay: 500
};
const Selector$a = {
var Selector$a = {
DATA_DISMISS: '[data-dismiss="toast"]'
/**
* ------------------------------------------------------------------------
@ -4777,8 +5105,10 @@ const Selector$a = {
};
class Toast {
constructor(element, config) {
var Toast =
/*#__PURE__*/
function () {
function Toast(element, config) {
this._element = element;
this._config = this._getConfig(config);
this._timeout = null;
@ -4789,35 +5119,29 @@ class Toast {
} // Getters
static get VERSION() {
return VERSION$a;
}
var _proto = Toast.prototype;
static get DefaultType() {
return DefaultType$7;
}
// Public
_proto.show = function show() {
var _this = this;
static get Default() {
return Default$7;
} // Public
show() {
EventHandler.trigger(this._element, Event$b.SHOW);
if (this._config.animation) {
this._element.classList.add(ClassName$a.FADE);
}
const complete = () => {
this._element.classList.remove(ClassName$a.SHOWING);
var complete = function complete() {
_this._element.classList.remove(ClassName$a.SHOWING);
this._element.classList.add(ClassName$a.SHOW);
_this._element.classList.add(ClassName$a.SHOW);
EventHandler.trigger(this._element, Event$b.SHOWN);
EventHandler.trigger(_this._element, Event$b.SHOWN);
if (this._config.autohide) {
this.hide();
if (_this._config.autohide) {
_this._timeout = setTimeout(function () {
_this.hide();
}, _this._config.delay);
}
};
@ -4826,31 +5150,41 @@ class Toast {
this._element.classList.add(ClassName$a.SHOWING);
if (this._config.animation) {
const transitionDuration = getTransitionDurationFromElement(this._element);
var transitionDuration = getTransitionDurationFromElement(this._element);
EventHandler.one(this._element, TRANSITION_END, complete);
emulateTransitionEnd(this._element, transitionDuration);
} else {
complete();
}
}
};
_proto.hide = function hide() {
var _this2 = this;
hide(withoutTimeout) {
if (!this._element.classList.contains(ClassName$a.SHOW)) {
return;
}
EventHandler.trigger(this._element, Event$b.HIDE);
if (withoutTimeout) {
this._close();
} else {
this._timeout = setTimeout(() => {
this._close();
}, this._config.delay);
}
}
var complete = function complete() {
_this2._element.classList.add(ClassName$a.HIDE);
dispose() {
EventHandler.trigger(_this2._element, Event$b.HIDDEN);
};
this._element.classList.remove(ClassName$a.SHOW);
if (this._config.animation) {
var transitionDuration = getTransitionDurationFromElement(this._element);
EventHandler.one(this._element, TRANSITION_END, complete);
emulateTransitionEnd(this._element, transitionDuration);
} else {
complete();
}
};
_proto.dispose = function dispose() {
clearTimeout(this._timeout);
this._timeout = null;
@ -4863,42 +5197,28 @@ class Toast {
this._element = null;
this._config = null;
} // Private
;
_getConfig(config) {
config = _extends({}, Default$7, Manipulator.getDataAttributes(this._element), typeof config === 'object' && config ? config : {});
_proto._getConfig = function _getConfig(config) {
config = _objectSpread({}, Default$7, Manipulator.getDataAttributes(this._element), typeof config === 'object' && config ? config : {});
typeCheckConfig(NAME$a, config, this.constructor.DefaultType);
return config;
}
};
_setListeners() {
EventHandler.on(this._element, Event$b.CLICK_DISMISS, Selector$a.DATA_DISMISS, () => this.hide(true));
}
_proto._setListeners = function _setListeners() {
var _this3 = this;
_close() {
const complete = () => {
this._element.classList.add(ClassName$a.HIDE);
EventHandler.trigger(this._element, Event$b.HIDDEN);
};
this._element.classList.remove(ClassName$a.SHOW);
if (this._config.animation) {
const transitionDuration = getTransitionDurationFromElement(this._element);
EventHandler.one(this._element, TRANSITION_END, complete);
emulateTransitionEnd(this._element, transitionDuration);
} else {
complete();
}
EventHandler.on(this._element, Event$b.CLICK_DISMISS, Selector$a.DATA_DISMISS, function () {
return _this3.hide();
});
} // Static
;
static _jQueryInterface(config) {
Toast._jQueryInterface = function _jQueryInterface(config) {
return this.each(function () {
let data = Data.getData(this, DATA_KEY$a);
var data = Data.getData(this, DATA_KEY$a);
const _config = typeof config === 'object' && config;
var _config = typeof config === 'object' && config;
if (!data) {
data = new Toast(this, _config);
@ -4906,19 +5226,37 @@ class Toast {
if (typeof config === 'string') {
if (typeof data[config] === 'undefined') {
throw new TypeError(`No method named "${config}"`);
throw new TypeError("No method named \"" + config + "\"");
}
data[config](this);
}
});
}
};
static _getInstance(element) {
Toast._getInstance = function _getInstance(element) {
return Data.getData(element, DATA_KEY$a);
}
};
}
_createClass(Toast, null, [{
key: "VERSION",
get: function get() {
return VERSION$a;
}
}, {
key: "DefaultType",
get: function get() {
return DefaultType$7;
}
}, {
key: "Default",
get: function get() {
return Default$7;
}
}]);
return Toast;
}();
/**
* ------------------------------------------------------------------------
* jQuery
@ -4928,12 +5266,12 @@ class Toast {
if (typeof jQuery !== 'undefined') {
const JQUERY_NO_CONFLICT = jQuery.fn[NAME$a];
var JQUERY_NO_CONFLICT$a = jQuery.fn[NAME$a];
jQuery.fn[NAME$a] = Toast._jQueryInterface;
jQuery.fn[NAME$a].Constructor = Toast;
jQuery.fn[NAME$a].noConflict = () => {
jQuery.fn[NAME$a] = JQUERY_NO_CONFLICT;
jQuery.fn[NAME$a].noConflict = function () {
jQuery.fn[NAME$a] = JQUERY_NO_CONFLICT$a;
return Toast._jQueryInterface;
};
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -137,7 +137,9 @@
};
var triggerTransitionEnd = function triggerTransitionEnd(element) {
element.dispatchEvent(new Event(TRANSITION_END));
var evt = document.createEvent('HTMLEvents');
evt.initEvent(TRANSITION_END, true, true);
element.dispatchEvent(evt);
};
var isElement = function isElement(obj) {
@ -293,93 +295,145 @@
}
};
/**
* --------------------------------------------------------------------------
* Bootstrap (v4.3.1): dom/polyfill.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* --------------------------------------------------------------------------
*/
/* istanbul ignore next */
/* istanbul ignore file */
var _Element$prototype = Element.prototype,
matches = _Element$prototype.matches,
closest = _Element$prototype.closest;
var find = Element.prototype.querySelectorAll;
var findOne = Element.prototype.querySelector;
var Polyfill = function () {
// MSEdge resets defaultPrevented flag upon dispatchEvent call if at least one listener is attached
var defaultPreventedPreservedOnDispatch = function () {
var e = new CustomEvent('Bootstrap', {
cancelable: true
});
var element = document.createElement('div');
element.addEventListener('Bootstrap', function () {
return null;
});
e.preventDefault();
element.dispatchEvent(e);
return e.defaultPrevented;
}();
var createCustomEvent = function createCustomEvent(eventName, params) {
var cEvent = new CustomEvent(eventName, params);
return cEvent;
};
var find = Element.prototype.querySelectorAll;
var findOne = Element.prototype.querySelector;
var scopeSelectorRegex = /:scope\b/;
if (typeof window.CustomEvent !== 'function') {
createCustomEvent = function createCustomEvent(eventName, params) {
params = params || {
bubbles: false,
cancelable: false,
detail: null
};
var evt = document.createEvent('CustomEvent');
evt.initCustomEvent(eventName, params.bubbles, params.cancelable, params.detail);
return evt;
};
}
var supportScopeQuery = function () {
var element = document.createElement('div');
var workingDefaultPrevented = function () {
var e = document.createEvent('CustomEvent');
e.initEvent('Bootstrap', true, true);
e.preventDefault();
return e.defaultPrevented;
}();
try {
element.querySelectorAll(':scope *');
} catch (error) {
return false;
if (!workingDefaultPrevented) {
var origPreventDefault = Event.prototype.preventDefault;
Event.prototype.preventDefault = function () {
if (!this.cancelable) {
return;
}
return true;
}();
origPreventDefault.call(this);
Object.defineProperty(this, 'defaultPrevented', {
get: function get() {
return true;
},
configurable: true
});
};
} // MSEdge resets defaultPrevented flag upon dispatchEvent call if at least one listener is attached
if (!supportScopeQuery) {
find = function find(selector) {
if (!scopeSelectorRegex.test(selector)) {
return this.querySelectorAll(selector);
var defaultPreventedPreservedOnDispatch = function () {
var e = createCustomEvent('Bootstrap', {
cancelable: true
});
var element = document.createElement('div');
element.addEventListener('Bootstrap', function () {
return null;
});
e.preventDefault();
element.dispatchEvent(e);
return e.defaultPrevented;
}();
if (!matches) {
matches = Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector;
}
if (!closest) {
closest = function closest(selector) {
var element = this;
do {
if (matches.call(element, selector)) {
return element;
}
var hasId = Boolean(this.id);
element = element.parentElement || element.parentNode;
} while (element !== null && element.nodeType === 1);
if (!hasId) {
this.id = getUID('scope');
}
return null;
};
}
var nodeList = null;
var scopeSelectorRegex = /:scope\b/;
try {
selector = selector.replace(scopeSelectorRegex, "#" + this.id);
nodeList = this.querySelectorAll(selector);
} finally {
if (!hasId) {
this.removeAttribute('id');
}
}
var supportScopeQuery = function () {
var element = document.createElement('div');
return nodeList;
};
findOne = function findOne(selector) {
if (!scopeSelectorRegex.test(selector)) {
return this.querySelector(selector);
}
var matches = find.call(this, selector);
if (typeof matches[0] !== 'undefined') {
return matches[0];
}
return null;
};
try {
element.querySelectorAll(':scope *');
} catch (error) {
return false;
}
return {
defaultPreventedPreservedOnDispatch: defaultPreventedPreservedOnDispatch,
find: find,
findOne: findOne
};
return true;
}();
if (!supportScopeQuery) {
find = function find(selector) {
if (!scopeSelectorRegex.test(selector)) {
return this.querySelectorAll(selector);
}
var hasId = Boolean(this.id);
if (!hasId) {
this.id = getUID('scope');
}
var nodeList = null;
try {
selector = selector.replace(scopeSelectorRegex, "#" + this.id);
nodeList = this.querySelectorAll(selector);
} finally {
if (!hasId) {
this.removeAttribute('id');
}
}
return nodeList;
};
findOne = function findOne(selector) {
if (!scopeSelectorRegex.test(selector)) {
return this.querySelector(selector);
}
var matches = find.call(this, selector);
if (typeof matches[0] !== 'undefined') {
return matches[0];
}
return null;
};
}
/**
* --------------------------------------------------------------------------
* Bootstrap (v4.3.1): dom/eventHandler.js
@ -470,10 +524,8 @@
delegationSelector = null;
}
var uidList = Object.keys(events);
for (var i = 0; i < uidList.length; i++) {
var uid = uidList[i];
for (var _i = 0, _Object$keys = Object.keys(events); _i < _Object$keys.length; _i++) {
var uid = _Object$keys[_i];
var event = events[uid];
if (event.originalHandler === handler && event.delegationSelector === delegationSelector) {
@ -632,7 +684,7 @@
evt = document.createEvent('HTMLEvents');
evt.initEvent(typeEvent, bubbles, true);
} else {
evt = new CustomEvent(event, {
evt = createCustomEvent(event, {
bubbles: bubbles,
cancelable: true
});
@ -652,7 +704,7 @@
if (defaultPrevented) {
evt.preventDefault();
if (!Polyfill.defaultPreventedPreservedOnDispatch) {
if (!defaultPreventedPreservedOnDispatch) {
Object.defineProperty(evt, 'defaultPrevented', {
get: function get() {
return true;
@ -685,14 +737,12 @@
* ------------------------------------------------------------------------
*/
var findFn = Polyfill.find,
_findOne = Polyfill.findOne;
var NODE_TEXT = 3;
var SelectorEngine = {
matches: function matches(element, selector) {
return element.matches(selector);
matches: function matches$1(element, selector) {
return matches.call(element, selector);
},
find: function find(selector, element) {
find: function find$1(selector, element) {
if (element === void 0) {
element = document.documentElement;
}
@ -701,9 +751,9 @@
return null;
}
return findFn.call(element, selector);
return find.call(element, selector);
},
findOne: function findOne(selector, element) {
findOne: function findOne$1(selector, element) {
if (element === void 0) {
element = document.documentElement;
}
@ -712,7 +762,7 @@
return null;
}
return _findOne.call(element, selector);
return findOne.call(element, selector);
},
children: function children(element, selector) {
var _this = this;
@ -744,12 +794,12 @@
return parents;
},
closest: function closest(element, selector) {
closest: function closest$1(element, selector) {
if (typeof selector !== 'string') {
return null;
}
return element.closest(selector);
return closest.call(element, selector);
},
prev: function prev(element, selector) {
if (typeof selector !== 'string') {
@ -1098,11 +1148,17 @@
});
EventHandler.on(document, Event$2.FOCUS_DATA_API, Selector$1.DATA_TOGGLE_CARROT, function (event) {
var button = SelectorEngine.closest(event.target, Selector$1.BUTTON);
button.classList.add(ClassName$1.FOCUS);
if (button) {
button.classList.add(ClassName$1.FOCUS);
}
});
EventHandler.on(document, Event$2.BLUR_DATA_API, Selector$1.DATA_TOGGLE_CARROT, function (event) {
var button = SelectorEngine.closest(event.target, Selector$1.BUTTON);
button.classList.remove(ClassName$1.FOCUS);
if (button) {
button.classList.remove(ClassName$1.FOCUS);
}
});
/**
* ------------------------------------------------------------------------
@ -1421,7 +1477,8 @@
return;
}
var direction = absDeltax / this.touchDeltaX; // swipe left
var direction = absDeltax / this.touchDeltaX;
this.touchDeltaX = 0; // swipe left
if (direction > 0) {
this.prev();
@ -5088,7 +5145,9 @@
EventHandler.trigger(_this._element, Event$b.SHOWN);
if (_this._config.autohide) {
_this.hide();
_this._timeout = setTimeout(function () {
_this.hide();
}, _this._config.delay);
}
};
@ -5105,7 +5164,7 @@
}
};
_proto.hide = function hide(withoutTimeout) {
_proto.hide = function hide() {
var _this2 = this;
if (!this._element.classList.contains(ClassName$a.SHOW)) {
@ -5114,12 +5173,20 @@
EventHandler.trigger(this._element, Event$b.HIDE);
if (withoutTimeout) {
this._close();
var complete = function complete() {
_this2._element.classList.add(ClassName$a.HIDE);
EventHandler.trigger(_this2._element, Event$b.HIDDEN);
};
this._element.classList.remove(ClassName$a.SHOW);
if (this._config.animation) {
var transitionDuration = getTransitionDurationFromElement(this._element);
EventHandler.one(this._element, TRANSITION_END, complete);
emulateTransitionEnd(this._element, transitionDuration);
} else {
this._timeout = setTimeout(function () {
_this2._close();
}, this._config.delay);
complete();
}
};
@ -5148,28 +5215,8 @@
var _this3 = this;
EventHandler.on(this._element, Event$b.CLICK_DISMISS, Selector$a.DATA_DISMISS, function () {
return _this3.hide(true);
return _this3.hide();
});
};
_proto._close = function _close() {
var _this4 = this;
var complete = function complete() {
_this4._element.classList.add(ClassName$a.HIDE);
EventHandler.trigger(_this4._element, Event$b.HIDDEN);
};
this._element.classList.remove(ClassName$a.SHOW);
if (this._config.animation) {
var transitionDuration = getTransitionDurationFromElement(this._element);
EventHandler.one(this._element, TRANSITION_END, complete);
emulateTransitionEnd(this._element, transitionDuration);
} else {
complete();
}
} // Static
;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

12
js/dist/alert.js vendored
View File

@ -79,7 +79,9 @@
};
var triggerTransitionEnd = function triggerTransitionEnd(element) {
element.dispatchEvent(new Event(TRANSITION_END));
var evt = document.createEvent('HTMLEvents');
evt.initEvent(TRANSITION_END, true, true);
element.dispatchEvent(evt);
};
var emulateTransitionEnd = function emulateTransitionEnd(element, duration) {
@ -114,7 +116,7 @@
var Selector = {
DISMISS: '[data-dismiss="alert"]'
};
var Event$1 = {
var Event = {
CLOSE: "close" + EVENT_KEY,
CLOSED: "closed" + EVENT_KEY,
CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY
@ -184,7 +186,7 @@
};
_proto._triggerCloseEvent = function _triggerCloseEvent(element) {
return EventHandler.trigger(element, Event$1.CLOSE);
return EventHandler.trigger(element, Event.CLOSE);
};
_proto._removeElement = function _removeElement(element) {
@ -210,7 +212,7 @@
element.parentNode.removeChild(element);
}
EventHandler.trigger(element, Event$1.CLOSED);
EventHandler.trigger(element, Event.CLOSED);
} // Static
;
@ -258,7 +260,7 @@
*/
EventHandler.on(document, Event$1.CLICK_DATA_API, Selector.DISMISS, Alert._handleDismiss(new Alert()));
EventHandler.on(document, Event.CLICK_DATA_API, Selector.DISMISS, Alert._handleDismiss(new Alert()));
/**
* ------------------------------------------------------------------------
* jQuery

File diff suppressed because one or more lines are too long

10
js/dist/button.js vendored
View File

@ -188,11 +188,17 @@
});
EventHandler.on(document, Event.FOCUS_DATA_API, Selector.DATA_TOGGLE_CARROT, function (event) {
var button = SelectorEngine.closest(event.target, Selector.BUTTON);
button.classList.add(ClassName.FOCUS);
if (button) {
button.classList.add(ClassName.FOCUS);
}
});
EventHandler.on(document, Event.BLUR_DATA_API, Selector.DATA_TOGGLE_CARROT, function (event) {
var button = SelectorEngine.closest(event.target, Selector.BUTTON);
button.classList.remove(ClassName.FOCUS);
if (button) {
button.classList.remove(ClassName.FOCUS);
}
});
/**
* ------------------------------------------------------------------------

File diff suppressed because one or more lines are too long

39
js/dist/carousel.js vendored
View File

@ -118,7 +118,9 @@
};
var triggerTransitionEnd = function triggerTransitionEnd(element) {
element.dispatchEvent(new Event(TRANSITION_END));
var evt = document.createEvent('HTMLEvents');
evt.initEvent(TRANSITION_END, true, true);
element.dispatchEvent(evt);
};
var isElement = function isElement(obj) {
@ -219,7 +221,7 @@
LEFT: 'left',
RIGHT: 'right'
};
var Event$1 = {
var Event = {
SLIDE: "slide" + EVENT_KEY,
SLID: "slid" + EVENT_KEY,
KEYDOWN: "keydown" + EVENT_KEY,
@ -354,7 +356,7 @@
}
if (this._isSliding) {
EventHandler.one(this._element, Event$1.SLID, function () {
EventHandler.one(this._element, Event.SLID, function () {
return _this.to(index);
});
return;
@ -398,7 +400,8 @@
return;
}
var direction = absDeltax / this.touchDeltaX; // swipe left
var direction = absDeltax / this.touchDeltaX;
this.touchDeltaX = 0; // swipe left
if (direction > 0) {
this.prev();
@ -414,16 +417,16 @@
var _this2 = this;
if (this._config.keyboard) {
EventHandler.on(this._element, Event$1.KEYDOWN, function (event) {
EventHandler.on(this._element, Event.KEYDOWN, function (event) {
return _this2._keydown(event);
});
}
if (this._config.pause === 'hover') {
EventHandler.on(this._element, Event$1.MOUSEENTER, function (event) {
EventHandler.on(this._element, Event.MOUSEENTER, function (event) {
return _this2.pause(event);
});
EventHandler.on(this._element, Event$1.MOUSELEAVE, function (event) {
EventHandler.on(this._element, Event.MOUSELEAVE, function (event) {
return _this2.cycle(event);
});
}
@ -485,28 +488,28 @@
};
makeArray(SelectorEngine.find(Selector.ITEM_IMG, this._element)).forEach(function (itemImg) {
EventHandler.on(itemImg, Event$1.DRAG_START, function (e) {
EventHandler.on(itemImg, Event.DRAG_START, function (e) {
return e.preventDefault();
});
});
if (this._pointerEvent) {
EventHandler.on(this._element, Event$1.POINTERDOWN, function (event) {
EventHandler.on(this._element, Event.POINTERDOWN, function (event) {
return start(event);
});
EventHandler.on(this._element, Event$1.POINTERUP, function (event) {
EventHandler.on(this._element, Event.POINTERUP, function (event) {
return end(event);
});
this._element.classList.add(ClassName.POINTER_EVENT);
} else {
EventHandler.on(this._element, Event$1.TOUCHSTART, function (event) {
EventHandler.on(this._element, Event.TOUCHSTART, function (event) {
return start(event);
});
EventHandler.on(this._element, Event$1.TOUCHMOVE, function (event) {
EventHandler.on(this._element, Event.TOUCHMOVE, function (event) {
return move(event);
});
EventHandler.on(this._element, Event$1.TOUCHEND, function (event) {
EventHandler.on(this._element, Event.TOUCHEND, function (event) {
return end(event);
});
}
@ -560,7 +563,7 @@
var fromIndex = this._getItemIndex(SelectorEngine.findOne(Selector.ACTIVE_ITEM, this._element));
return EventHandler.trigger(this._element, Event$1.SLIDE, {
return EventHandler.trigger(this._element, Event.SLIDE, {
relatedTarget: relatedTarget,
direction: eventDirectionName,
from: fromIndex,
@ -658,7 +661,7 @@
activeElement.classList.remove(directionalClassName);
_this4._isSliding = false;
setTimeout(function () {
EventHandler.trigger(_this4._element, Event$1.SLID, {
EventHandler.trigger(_this4._element, Event.SLID, {
relatedTarget: nextElement,
direction: eventDirectionName,
from: activeElementIndex,
@ -671,7 +674,7 @@
activeElement.classList.remove(ClassName.ACTIVE);
nextElement.classList.add(ClassName.ACTIVE);
this._isSliding = false;
EventHandler.trigger(this._element, Event$1.SLID, {
EventHandler.trigger(this._element, Event.SLID, {
relatedTarget: nextElement,
direction: eventDirectionName,
from: activeElementIndex,
@ -775,8 +778,8 @@
*/
EventHandler.on(document, Event$1.CLICK_DATA_API, Selector.DATA_SLIDE, Carousel._dataApiClickHandler);
EventHandler.on(window, Event$1.LOAD_DATA_API, function () {
EventHandler.on(document, Event.CLICK_DATA_API, Selector.DATA_SLIDE, Carousel._dataApiClickHandler);
EventHandler.on(window, Event.LOAD_DATA_API, function () {
var carousels = makeArray(SelectorEngine.find(Selector.DATA_RIDE));
for (var i = 0, len = carousels.length; i < len; i++) {

File diff suppressed because one or more lines are too long

16
js/dist/collapse.js vendored
View File

@ -118,7 +118,9 @@
};
var triggerTransitionEnd = function triggerTransitionEnd(element) {
element.dispatchEvent(new Event(TRANSITION_END));
var evt = document.createEvent('HTMLEvents');
evt.initEvent(TRANSITION_END, true, true);
element.dispatchEvent(evt);
};
var isElement = function isElement(obj) {
@ -186,7 +188,7 @@
toggle: 'boolean',
parent: '(string|element)'
};
var Event$1 = {
var Event = {
SHOW: "show" + EVENT_KEY,
SHOWN: "shown" + EVENT_KEY,
HIDE: "hide" + EVENT_KEY,
@ -300,7 +302,7 @@
}
}
var startEvent = EventHandler.trigger(this._element, Event$1.SHOW);
var startEvent = EventHandler.trigger(this._element, Event.SHOW);
if (startEvent.defaultPrevented) {
return;
@ -346,7 +348,7 @@
_this.setTransitioning(false);
EventHandler.trigger(_this._element, Event$1.SHOWN);
EventHandler.trigger(_this._element, Event.SHOWN);
};
var capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1);
@ -364,7 +366,7 @@
return;
}
var startEvent = EventHandler.trigger(this._element, Event$1.HIDE);
var startEvent = EventHandler.trigger(this._element, Event.HIDE);
if (startEvent.defaultPrevented) {
return;
@ -408,7 +410,7 @@
_this2._element.classList.add(ClassName.COLLAPSE);
EventHandler.trigger(_this2._element, Event$1.HIDDEN);
EventHandler.trigger(_this2._element, Event.HIDDEN);
};
this._element.style[dimension] = '';
@ -543,7 +545,7 @@
*/
EventHandler.on(document, Event$1.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
EventHandler.on(document, Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
// preventDefault only for <a> elements (which change the URL) not inside the collapsible element
if (event.target.tagName === 'A') {
event.preventDefault();

File diff suppressed because one or more lines are too long

View File

@ -4,12 +4,10 @@
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./polyfill.js')) :
typeof define === 'function' && define.amd ? define(['./polyfill.js'], factory) :
(global = global || self, global.EventHandler = factory(global.Polyfill));
}(this, function (Polyfill) { 'use strict';
Polyfill = Polyfill && Polyfill.hasOwnProperty('default') ? Polyfill['default'] : Polyfill;
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
typeof define === 'function' && define.amd ? define(factory) :
(global = global || self, global.EventHandler = factory());
}(this, function () { 'use strict';
/**
* --------------------------------------------------------------------------
@ -17,8 +15,163 @@
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* --------------------------------------------------------------------------
*/
var MAX_UID = 1000000;
var _window = window,
jQuery = _window.jQuery; // Shoutout AngusCroll (https://goo.gl/pxwQGp)
/**
* --------------------------------------------------------------------------
* Public Util Api
* --------------------------------------------------------------------------
*/
var getUID = function getUID(prefix) {
do {
// eslint-disable-next-line no-bitwise
prefix += ~~(Math.random() * MAX_UID); // "~~" acts like a faster Math.floor() here
} while (document.getElementById(prefix));
return prefix;
};
/* istanbul ignore file */
var _Element$prototype = Element.prototype,
matches = _Element$prototype.matches,
closest = _Element$prototype.closest;
var find = Element.prototype.querySelectorAll;
var findOne = Element.prototype.querySelector;
var createCustomEvent = function createCustomEvent(eventName, params) {
var cEvent = new CustomEvent(eventName, params);
return cEvent;
};
if (typeof window.CustomEvent !== 'function') {
createCustomEvent = function createCustomEvent(eventName, params) {
params = params || {
bubbles: false,
cancelable: false,
detail: null
};
var evt = document.createEvent('CustomEvent');
evt.initCustomEvent(eventName, params.bubbles, params.cancelable, params.detail);
return evt;
};
}
var workingDefaultPrevented = function () {
var e = document.createEvent('CustomEvent');
e.initEvent('Bootstrap', true, true);
e.preventDefault();
return e.defaultPrevented;
}();
if (!workingDefaultPrevented) {
var origPreventDefault = Event.prototype.preventDefault;
Event.prototype.preventDefault = function () {
if (!this.cancelable) {
return;
}
origPreventDefault.call(this);
Object.defineProperty(this, 'defaultPrevented', {
get: function get() {
return true;
},
configurable: true
});
};
} // MSEdge resets defaultPrevented flag upon dispatchEvent call if at least one listener is attached
var defaultPreventedPreservedOnDispatch = function () {
var e = createCustomEvent('Bootstrap', {
cancelable: true
});
var element = document.createElement('div');
element.addEventListener('Bootstrap', function () {
return null;
});
e.preventDefault();
element.dispatchEvent(e);
return e.defaultPrevented;
}();
if (!matches) {
matches = Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector;
}
if (!closest) {
closest = function closest(selector) {
var element = this;
do {
if (matches.call(element, selector)) {
return element;
}
element = element.parentElement || element.parentNode;
} while (element !== null && element.nodeType === 1);
return null;
};
}
var scopeSelectorRegex = /:scope\b/;
var supportScopeQuery = function () {
var element = document.createElement('div');
try {
element.querySelectorAll(':scope *');
} catch (error) {
return false;
}
return true;
}();
if (!supportScopeQuery) {
find = function find(selector) {
if (!scopeSelectorRegex.test(selector)) {
return this.querySelectorAll(selector);
}
var hasId = Boolean(this.id);
if (!hasId) {
this.id = getUID('scope');
}
var nodeList = null;
try {
selector = selector.replace(scopeSelectorRegex, "#" + this.id);
nodeList = this.querySelectorAll(selector);
} finally {
if (!hasId) {
this.removeAttribute('id');
}
}
return nodeList;
};
findOne = function findOne(selector) {
if (!scopeSelectorRegex.test(selector)) {
return this.querySelector(selector);
}
var matches = find.call(this, selector);
if (typeof matches[0] !== 'undefined') {
return matches[0];
}
return null;
};
}
/**
* --------------------------------------------------------------------------
@ -110,10 +263,8 @@
delegationSelector = null;
}
var uidList = Object.keys(events);
for (var i = 0; i < uidList.length; i++) {
var uid = uidList[i];
for (var _i = 0, _Object$keys = Object.keys(events); _i < _Object$keys.length; _i++) {
var uid = _Object$keys[_i];
var event = events[uid];
if (event.originalHandler === handler && event.delegationSelector === delegationSelector) {
@ -272,7 +423,7 @@
evt = document.createEvent('HTMLEvents');
evt.initEvent(typeEvent, bubbles, true);
} else {
evt = new CustomEvent(event, {
evt = createCustomEvent(event, {
bubbles: bubbles,
cancelable: true
});
@ -292,7 +443,7 @@
if (defaultPrevented) {
evt.preventDefault();
if (!Polyfill.defaultPreventedPreservedOnDispatch) {
if (!defaultPreventedPreservedOnDispatch) {
Object.defineProperty(evt, 'defaultPrevented', {
get: function get() {
return true;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -4,12 +4,10 @@
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./polyfill.js')) :
typeof define === 'function' && define.amd ? define(['./polyfill.js'], factory) :
(global = global || self, global.SelectorEngine = factory(global.Polyfill));
}(this, function (Polyfill) { 'use strict';
Polyfill = Polyfill && Polyfill.hasOwnProperty('default') ? Polyfill['default'] : Polyfill;
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
typeof define === 'function' && define.amd ? define(factory) :
(global = global || self, global.SelectorEngine = factory());
}(this, function () { 'use strict';
/**
* --------------------------------------------------------------------------
@ -17,8 +15,24 @@
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* --------------------------------------------------------------------------
*/
var MAX_UID = 1000000;
var _window = window,
jQuery = _window.jQuery; // Shoutout AngusCroll (https://goo.gl/pxwQGp)
/**
* --------------------------------------------------------------------------
* Public Util Api
* --------------------------------------------------------------------------
*/
var getUID = function getUID(prefix) {
do {
// eslint-disable-next-line no-bitwise
prefix += ~~(Math.random() * MAX_UID); // "~~" acts like a faster Math.floor() here
} while (document.getElementById(prefix));
return prefix;
};
var makeArray = function makeArray(nodeList) {
if (!nodeList) {
@ -28,6 +42,145 @@
return [].slice.call(nodeList);
};
/* istanbul ignore file */
var _Element$prototype = Element.prototype,
matches = _Element$prototype.matches,
closest = _Element$prototype.closest;
var find = Element.prototype.querySelectorAll;
var findOne = Element.prototype.querySelector;
var createCustomEvent = function createCustomEvent(eventName, params) {
var cEvent = new CustomEvent(eventName, params);
return cEvent;
};
if (typeof window.CustomEvent !== 'function') {
createCustomEvent = function createCustomEvent(eventName, params) {
params = params || {
bubbles: false,
cancelable: false,
detail: null
};
var evt = document.createEvent('CustomEvent');
evt.initCustomEvent(eventName, params.bubbles, params.cancelable, params.detail);
return evt;
};
}
var workingDefaultPrevented = function () {
var e = document.createEvent('CustomEvent');
e.initEvent('Bootstrap', true, true);
e.preventDefault();
return e.defaultPrevented;
}();
if (!workingDefaultPrevented) {
var origPreventDefault = Event.prototype.preventDefault;
Event.prototype.preventDefault = function () {
if (!this.cancelable) {
return;
}
origPreventDefault.call(this);
Object.defineProperty(this, 'defaultPrevented', {
get: function get() {
return true;
},
configurable: true
});
};
} // MSEdge resets defaultPrevented flag upon dispatchEvent call if at least one listener is attached
var defaultPreventedPreservedOnDispatch = function () {
var e = createCustomEvent('Bootstrap', {
cancelable: true
});
var element = document.createElement('div');
element.addEventListener('Bootstrap', function () {
return null;
});
e.preventDefault();
element.dispatchEvent(e);
return e.defaultPrevented;
}();
if (!matches) {
matches = Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector;
}
if (!closest) {
closest = function closest(selector) {
var element = this;
do {
if (matches.call(element, selector)) {
return element;
}
element = element.parentElement || element.parentNode;
} while (element !== null && element.nodeType === 1);
return null;
};
}
var scopeSelectorRegex = /:scope\b/;
var supportScopeQuery = function () {
var element = document.createElement('div');
try {
element.querySelectorAll(':scope *');
} catch (error) {
return false;
}
return true;
}();
if (!supportScopeQuery) {
find = function find(selector) {
if (!scopeSelectorRegex.test(selector)) {
return this.querySelectorAll(selector);
}
var hasId = Boolean(this.id);
if (!hasId) {
this.id = getUID('scope');
}
var nodeList = null;
try {
selector = selector.replace(scopeSelectorRegex, "#" + this.id);
nodeList = this.querySelectorAll(selector);
} finally {
if (!hasId) {
this.removeAttribute('id');
}
}
return nodeList;
};
findOne = function findOne(selector) {
if (!scopeSelectorRegex.test(selector)) {
return this.querySelector(selector);
}
var matches = find.call(this, selector);
if (typeof matches[0] !== 'undefined') {
return matches[0];
}
return null;
};
}
/**
* --------------------------------------------------------------------------
* Bootstrap (v4.3.1): dom/selectorEngine.js
@ -40,14 +193,12 @@
* ------------------------------------------------------------------------
*/
var findFn = Polyfill.find,
_findOne = Polyfill.findOne;
var NODE_TEXT = 3;
var SelectorEngine = {
matches: function matches(element, selector) {
return element.matches(selector);
matches: function matches$1(element, selector) {
return matches.call(element, selector);
},
find: function find(selector, element) {
find: function find$1(selector, element) {
if (element === void 0) {
element = document.documentElement;
}
@ -56,9 +207,9 @@
return null;
}
return findFn.call(element, selector);
return find.call(element, selector);
},
findOne: function findOne(selector, element) {
findOne: function findOne$1(selector, element) {
if (element === void 0) {
element = document.documentElement;
}
@ -67,7 +218,7 @@
return null;
}
return _findOne.call(element, selector);
return findOne.call(element, selector);
},
children: function children(element, selector) {
var _this = this;
@ -99,12 +250,12 @@
return parents;
},
closest: function closest(element, selector) {
closest: function closest$1(element, selector) {
if (typeof selector !== 'string') {
return null;
}
return element.closest(selector);
return closest.call(element, selector);
},
prev: function prev(element, selector) {
if (typeof selector !== 'string') {

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

48
js/dist/modal.js vendored
View File

@ -118,7 +118,9 @@
};
var triggerTransitionEnd = function triggerTransitionEnd(element) {
element.dispatchEvent(new Event(TRANSITION_END));
var evt = document.createEvent('HTMLEvents');
evt.initEvent(TRANSITION_END, true, true);
element.dispatchEvent(evt);
};
var isElement = function isElement(obj) {
@ -204,7 +206,7 @@
focus: 'boolean',
show: 'boolean'
};
var Event$1 = {
var Event = {
HIDE: "hide" + EVENT_KEY,
HIDDEN: "hidden" + EVENT_KEY,
SHOW: "show" + EVENT_KEY,
@ -275,7 +277,7 @@
this._isTransitioning = true;
}
var showEvent = EventHandler.trigger(this._element, Event$1.SHOW, {
var showEvent = EventHandler.trigger(this._element, Event.SHOW, {
relatedTarget: relatedTarget
});
@ -295,11 +297,11 @@
this._setResizeEvent();
EventHandler.on(this._element, Event$1.CLICK_DISMISS, Selector.DATA_DISMISS, function (event) {
EventHandler.on(this._element, Event.CLICK_DISMISS, Selector.DATA_DISMISS, function (event) {
return _this.hide(event);
});
EventHandler.on(this._dialog, Event$1.MOUSEDOWN_DISMISS, function () {
EventHandler.one(_this._element, Event$1.MOUSEUP_DISMISS, function (event) {
EventHandler.on(this._dialog, Event.MOUSEDOWN_DISMISS, function () {
EventHandler.one(_this._element, Event.MOUSEUP_DISMISS, function (event) {
if (event.target === _this._element) {
_this._ignoreBackdropClick = true;
}
@ -322,7 +324,7 @@
return;
}
var hideEvent = EventHandler.trigger(this._element, Event$1.HIDE);
var hideEvent = EventHandler.trigger(this._element, Event.HIDE);
if (!this._isShown || hideEvent.defaultPrevented) {
return;
@ -340,12 +342,12 @@
this._setResizeEvent();
EventHandler.off(document, Event$1.FOCUSIN);
EventHandler.off(document, Event.FOCUSIN);
this._element.classList.remove(ClassName.SHOW);
EventHandler.off(this._element, Event$1.CLICK_DISMISS);
EventHandler.off(this._dialog, Event$1.MOUSEDOWN_DISMISS);
EventHandler.off(this._element, Event.CLICK_DISMISS);
EventHandler.off(this._dialog, Event.MOUSEDOWN_DISMISS);
if (transition) {
var transitionDuration = getTransitionDurationFromElement(this._element);
@ -368,7 +370,7 @@
* It will remove `Event.CLICK_DATA_API` event that should remain
*/
EventHandler.off(document, Event$1.FOCUSIN);
EventHandler.off(document, Event.FOCUSIN);
Data.removeData(this._element, DATA_KEY);
this._config = null;
this._element = null;
@ -430,7 +432,7 @@
}
_this3._isTransitioning = false;
EventHandler.trigger(_this3._element, Event$1.SHOWN, {
EventHandler.trigger(_this3._element, Event.SHOWN, {
relatedTarget: relatedTarget
});
};
@ -447,9 +449,9 @@
_proto._enforceFocus = function _enforceFocus() {
var _this4 = this;
EventHandler.off(document, Event$1.FOCUSIN); // guard against infinite focus loop
EventHandler.off(document, Event.FOCUSIN); // guard against infinite focus loop
EventHandler.on(document, Event$1.FOCUSIN, function (event) {
EventHandler.on(document, Event.FOCUSIN, function (event) {
if (document !== event.target && _this4._element !== event.target && !_this4._element.contains(event.target)) {
_this4._element.focus();
}
@ -460,7 +462,7 @@
var _this5 = this;
if (this._isShown && this._config.keyboard) {
EventHandler.on(this._element, Event$1.KEYDOWN_DISMISS, function (event) {
EventHandler.on(this._element, Event.KEYDOWN_DISMISS, function (event) {
if (event.which === ESCAPE_KEYCODE) {
event.preventDefault();
@ -468,7 +470,7 @@
}
});
} else if (!this._isShown) {
EventHandler.off(this._element, Event$1.KEYDOWN_DISMISS);
EventHandler.off(this._element, Event.KEYDOWN_DISMISS);
}
};
@ -476,11 +478,11 @@
var _this6 = this;
if (this._isShown) {
EventHandler.on(window, Event$1.RESIZE, function (event) {
EventHandler.on(window, Event.RESIZE, function (event) {
return _this6.handleUpdate(event);
});
} else {
EventHandler.off(window, Event$1.RESIZE);
EventHandler.off(window, Event.RESIZE);
}
};
@ -502,7 +504,7 @@
_this7._resetScrollbar();
EventHandler.trigger(_this7._element, Event$1.HIDDEN);
EventHandler.trigger(_this7._element, Event.HIDDEN);
});
};
@ -528,7 +530,7 @@
}
document.body.appendChild(this._backdrop);
EventHandler.on(this._element, Event$1.CLICK_DISMISS, function (event) {
EventHandler.on(this._element, Event.CLICK_DISMISS, function (event) {
if (_this8._ignoreBackdropClick) {
_this8._ignoreBackdropClick = false;
return;
@ -731,7 +733,7 @@
*/
EventHandler.on(document, Event$1.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
EventHandler.on(document, Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
var _this10 = this;
var target;
@ -747,13 +749,13 @@
event.preventDefault();
}
EventHandler.one(target, Event$1.SHOW, function (showEvent) {
EventHandler.one(target, Event.SHOW, function (showEvent) {
if (showEvent.defaultPrevented) {
// only register focus restorer if modal will actually get shown
return;
}
EventHandler.one(target, Event$1.HIDDEN, function () {
EventHandler.one(target, Event.HIDDEN, function () {
if (isVisible(_this10)) {
_this10.focus();
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

16
js/dist/tab.js vendored
View File

@ -79,7 +79,9 @@
};
var triggerTransitionEnd = function triggerTransitionEnd(element) {
element.dispatchEvent(new Event(TRANSITION_END));
var evt = document.createEvent('HTMLEvents');
evt.initEvent(TRANSITION_END, true, true);
element.dispatchEvent(evt);
};
var emulateTransitionEnd = function emulateTransitionEnd(element, duration) {
@ -123,7 +125,7 @@
var DATA_KEY = 'bs.tab';
var EVENT_KEY = "." + DATA_KEY;
var DATA_API_KEY = '.data-api';
var Event$1 = {
var Event = {
HIDE: "hide" + EVENT_KEY,
HIDDEN: "hidden" + EVENT_KEY,
SHOW: "show" + EVENT_KEY,
@ -186,12 +188,12 @@
var hideEvent = null;
if (previous) {
hideEvent = EventHandler.trigger(previous, Event$1.HIDE, {
hideEvent = EventHandler.trigger(previous, Event.HIDE, {
relatedTarget: this._element
});
}
var showEvent = EventHandler.trigger(this._element, Event$1.SHOW, {
var showEvent = EventHandler.trigger(this._element, Event.SHOW, {
relatedTarget: previous
});
@ -206,10 +208,10 @@
this._activate(this._element, listElement);
var complete = function complete() {
EventHandler.trigger(previous, Event$1.HIDDEN, {
EventHandler.trigger(previous, Event.HIDDEN, {
relatedTarget: _this._element
});
EventHandler.trigger(_this._element, Event$1.SHOWN, {
EventHandler.trigger(_this._element, Event.SHOWN, {
relatedTarget: previous
});
};
@ -326,7 +328,7 @@
*/
EventHandler.on(document, Event$1.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
EventHandler.on(document, Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
event.preventDefault();
var data = Data.getData(this, DATA_KEY) || new Tab(this);
data.show();

2
js/dist/tab.js.map vendored

File diff suppressed because one or more lines are too long

62
js/dist/toast.js vendored
View File

@ -102,7 +102,9 @@
};
var triggerTransitionEnd = function triggerTransitionEnd(element) {
element.dispatchEvent(new Event(TRANSITION_END));
var evt = document.createEvent('HTMLEvents');
evt.initEvent(TRANSITION_END, true, true);
element.dispatchEvent(evt);
};
var isElement = function isElement(obj) {
@ -149,7 +151,7 @@
var VERSION = '4.3.1';
var DATA_KEY = 'bs.toast';
var EVENT_KEY = "." + DATA_KEY;
var Event$1 = {
var Event = {
CLICK_DISMISS: "click.dismiss" + EVENT_KEY,
HIDE: "hide" + EVENT_KEY,
HIDDEN: "hidden" + EVENT_KEY,
@ -202,7 +204,7 @@
_proto.show = function show() {
var _this = this;
EventHandler.trigger(this._element, Event$1.SHOW);
EventHandler.trigger(this._element, Event.SHOW);
if (this._config.animation) {
this._element.classList.add(ClassName.FADE);
@ -213,10 +215,12 @@
_this._element.classList.add(ClassName.SHOW);
EventHandler.trigger(_this._element, Event$1.SHOWN);
EventHandler.trigger(_this._element, Event.SHOWN);
if (_this._config.autohide) {
_this.hide();
_this._timeout = setTimeout(function () {
_this.hide();
}, _this._config.delay);
}
};
@ -233,21 +237,29 @@
}
};
_proto.hide = function hide(withoutTimeout) {
_proto.hide = function hide() {
var _this2 = this;
if (!this._element.classList.contains(ClassName.SHOW)) {
return;
}
EventHandler.trigger(this._element, Event$1.HIDE);
EventHandler.trigger(this._element, Event.HIDE);
if (withoutTimeout) {
this._close();
var complete = function complete() {
_this2._element.classList.add(ClassName.HIDE);
EventHandler.trigger(_this2._element, Event.HIDDEN);
};
this._element.classList.remove(ClassName.SHOW);
if (this._config.animation) {
var transitionDuration = getTransitionDurationFromElement(this._element);
EventHandler.one(this._element, TRANSITION_END, complete);
emulateTransitionEnd(this._element, transitionDuration);
} else {
this._timeout = setTimeout(function () {
_this2._close();
}, this._config.delay);
complete();
}
};
@ -259,7 +271,7 @@
this._element.classList.remove(ClassName.SHOW);
}
EventHandler.off(this._element, Event$1.CLICK_DISMISS);
EventHandler.off(this._element, Event.CLICK_DISMISS);
Data.removeData(this._element, DATA_KEY);
this._element = null;
this._config = null;
@ -275,29 +287,9 @@
_proto._setListeners = function _setListeners() {
var _this3 = this;
EventHandler.on(this._element, Event$1.CLICK_DISMISS, Selector.DATA_DISMISS, function () {
return _this3.hide(true);
EventHandler.on(this._element, Event.CLICK_DISMISS, Selector.DATA_DISMISS, function () {
return _this3.hide();
});
};
_proto._close = function _close() {
var _this4 = this;
var complete = function complete() {
_this4._element.classList.add(ClassName.HIDE);
EventHandler.trigger(_this4._element, Event$1.HIDDEN);
};
this._element.classList.remove(ClassName.SHOW);
if (this._config.animation) {
var transitionDuration = getTransitionDurationFromElement(this._element);
EventHandler.one(this._element, TRANSITION_END, complete);
emulateTransitionEnd(this._element, transitionDuration);
} else {
complete();
}
} // Static
;

File diff suppressed because one or more lines are too long

8
js/dist/tooltip.js vendored
View File

@ -120,7 +120,9 @@
};
var triggerTransitionEnd = function triggerTransitionEnd(element) {
element.dispatchEvent(new Event(TRANSITION_END));
var evt = document.createEvent('HTMLEvents');
evt.initEvent(TRANSITION_END, true, true);
element.dispatchEvent(evt);
};
var isElement = function isElement(obj) {
@ -372,7 +374,7 @@
SHOW: 'show',
OUT: 'out'
};
var Event$1 = {
var Event = {
HIDE: "hide" + EVENT_KEY,
HIDDEN: "hidden" + EVENT_KEY,
SHOW: "show" + EVENT_KEY,
@ -1032,7 +1034,7 @@
}, {
key: "Event",
get: function get() {
return Event$1;
return Event;
}
}, {
key: "EVENT_KEY",

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -19,4 +19,4 @@
* Licensed under the Creative Commons Attribution 3.0 Unported License.
* For details, see https://creativecommons.org/licenses/by/3.0/.
*/
(function(){"use strict";function t(t){return[].slice.call(t)}t(document.querySelectorAll(".tooltip-demo")).forEach(function(t){new bootstrap.Tooltip(t,{selector:'[data-toggle="tooltip"]'})});t(document.querySelectorAll('[data-toggle="popover"]')).forEach(function(t){new bootstrap.Popover(t)});t(document.querySelectorAll(".toast")).forEach(function(t){var e=new bootstrap.Toast(t,{autohide:false});e.show()});t(document.querySelectorAll(".tooltip-test")).forEach(function(t){new bootstrap.Tooltip(t)});t(document.querySelectorAll(".popover-test")).forEach(function(t){new bootstrap.Popover(t)});t(document.querySelectorAll('.bd-example-indeterminate [type="checkbox"]')).forEach(function(t){t.indeterminate=true});t(document.querySelectorAll('.bd-content [href="#"]')).forEach(function(t){t.addEventListener("click",function(t){t.preventDefault()})});var e=document.getElementById("exampleModal");if(e){e.addEventListener("show.bs.modal",function(t){var n=t.relatedTarget;var o=n.getAttribute("data-whatever");var r=e.querySelector(".modal-title");var i=e.querySelector(".modal-body input");r.innerHTML="New message to "+o;i.value=o})}t(document.querySelectorAll(".bd-toggle-animated-progress > .progress-bar-striped")).forEach(function(t){t.addEventListener("click",function(){if(t.classList.contains("progress-bar-animated")){t.classList.remove("progress-bar-animated")}else{t.classList.add("progress-bar-animated")}})});var n='<div class="bd-clipboard"><button type="button" class="btn-clipboard" title="Copy to clipboard">Copy</button></div>';t(document.querySelectorAll("figure.highlight, div.highlight")).forEach(function(t){t.insertAdjacentHTML("beforebegin",n)});t(document.querySelectorAll(".btn-clipboard")).forEach(function(t){var e=new bootstrap.Tooltip(t);t.addEventListener("mouseleave",function(){e.hide()})});var o=new ClipboardJS(".btn-clipboard",{target:function(t){return t.parentNode.nextElementSibling}});o.on("success",function(t){var e=bootstrap.Tooltip._getInstance(t.trigger);t.trigger.setAttribute("title","Copied!");e._fixTitle();e.show();t.trigger.setAttribute("title","Copy to clipboard");e._fixTitle();t.clearSelection()});o.on("error",function(t){var e=/Mac/i.test(navigator.userAgent)?"⌘":"Ctrl-";var n="Press "+e+"C to copy";var o=bootstrap.Tooltip._getInstance(t.trigger);t.trigger.setAttribute("title",n);o._fixTitle();o.show();t.trigger.setAttribute("title","Copy to clipboard");o._fixTitle()});anchors.options={icon:"#"};anchors.add(".bd-content > h2, .bd-content > h3, .bd-content > h4, .bd-content > h5");t(document.querySelectorAll(".bd-content > h2, .bd-content > h3, .bd-content > h4, .bd-content > h5")).forEach(function(t){t.innerHTML='<span class="bd-content-title">'+t.innerHTML+"</span>"});bsCustomFileInput.init()})();(function(){"use strict";if(!window.docsearch){return}var t=document.getElementById("search-input");var e=t.getAttribute("data-docs-version");function n(){var t=window.location;var e=t.origin;if(!e){var n=t.port?":"+t.port:"";e=t.protocol+"//"+t.hostname+n}return e}window.docsearch({apiKey:"5990ad008512000bba2cf951ccf0332f",indexName:"bootstrap",inputSelector:"#search-input",algoliaOptions:{facetFilters:["version:"+e]},transformData:function(t){return t.map(function(t){var e=n();var o=/^https?:\/\/getbootstrap\.com/;t.url=e.match(o)?t.url:t.url.replace(o,"");if(t.anchor==="content"){t.url=t.url.replace(/#content$/,"");t.anchor=null}return t})},debug:false})})();
(function(){"use strict";function t(t){return[].slice.call(t)}t(document.querySelectorAll(".tooltip-demo")).forEach(function(t){new bootstrap.Tooltip(t,{selector:'[data-toggle="tooltip"]'})});t(document.querySelectorAll('[data-toggle="popover"]')).forEach(function(t){new bootstrap.Popover(t)});t(document.querySelectorAll(".toast")).forEach(function(t){var e=new bootstrap.Toast(t,{autohide:false});e.show()});t(document.querySelectorAll(".tooltip-test")).forEach(function(t){new bootstrap.Tooltip(t)});t(document.querySelectorAll(".popover-test")).forEach(function(t){new bootstrap.Popover(t)});t(document.querySelectorAll('.bd-example-indeterminate [type="checkbox"]')).forEach(function(t){t.indeterminate=true});t(document.querySelectorAll('.bd-content [href="#"]')).forEach(function(t){t.addEventListener("click",function(t){t.preventDefault()})});var e=document.getElementById("exampleModal");if(e){e.addEventListener("show.bs.modal",function(t){var n=t.relatedTarget;var o=n.getAttribute("data-whatever");var r=e.querySelector(".modal-title");var i=e.querySelector(".modal-body input");r.innerHTML="New message to "+o;i.value=o})}t(document.querySelectorAll(".bd-toggle-animated-progress > .progress-bar-striped")).forEach(function(t){t.addEventListener("click",function(){if(t.classList.contains("progress-bar-animated")){t.classList.remove("progress-bar-animated")}else{t.classList.add("progress-bar-animated")}})});var n='<div class="bd-clipboard"><button type="button" class="btn-clipboard" title="Copy to clipboard">Copy</button></div>';t(document.querySelectorAll("figure.highlight, div.highlight")).forEach(function(t){t.insertAdjacentHTML("beforebegin",n)});t(document.querySelectorAll(".btn-clipboard")).forEach(function(t){var e=new bootstrap.Tooltip(t);t.addEventListener("mouseleave",function(){e.hide()})});var o=new ClipboardJS(".btn-clipboard",{target:function(t){return t.parentNode.nextElementSibling}});o.on("success",function(t){var e=bootstrap.Tooltip._getInstance(t.trigger);t.trigger.setAttribute("title","Copied!");e._fixTitle();e.show();t.trigger.setAttribute("title","Copy to clipboard");e._fixTitle();t.clearSelection()});o.on("error",function(t){var e=/Mac/i.test(navigator.userAgent)?"⌘":"Ctrl-";var n="Press "+e+"C to copy";var o=bootstrap.Tooltip._getInstance(t.trigger);t.trigger.setAttribute("title",n);o._fixTitle();o.show();t.trigger.setAttribute("title","Copy to clipboard");o._fixTitle()});anchors.options={icon:"#"};anchors.add(".bd-content > h2, .bd-content > h3, .bd-content > h4, .bd-content > h5");t(document.querySelectorAll(".bd-content > h2, .bd-content > h3, .bd-content > h4, .bd-content > h5")).forEach(function(t){t.innerHTML='<span class="bd-content-title">'+t.innerHTML+"</span>"});bsCustomFileInput.init()})();(function(){"use strict";if(!window.docsearch){return}var t=document.getElementById("search-input");var e=t.getAttribute("data-docs-version");function n(){var t=window.location;var e=t.origin;if(!e){var n=t.port?":"+t.port:"";e=t.protocol+"//"+t.hostname+n}return e}window.docsearch({apiKey:"5990ad008512000bba2cf951ccf0332f",indexName:"bootstrap",inputSelector:"#search-input",algoliaOptions:{facetFilters:["version:"+e]},transformData:function(t){return t.map(function(t){var e=n();var o="https://getbootstrap.com";t.url=e.indexOf(o)!==-1?t.url:t.url.replace(o,"");if(t.anchor==="content"){t.url=t.url.replace(/#content$/,"");t.anchor=null}return t})},debug:false})})();