1/*! 2 * Bootstrap v4.3.1 (https://getbootstrap.com/) 3 * Copyright 2011-2019 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) 4 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) 5 */ 6! function(t, e) { 7 "object" == typeof exports && "undefined" != typeof module ? e(exports, require("jquery"), require("popper.js")) : "function" == typeof define && define.amd ? define(["exports", "jquery", "popper.js"], e) : e((t = t || self).bootstrap = {}, t.jQuery, t.Popper) 8}(this, function(t, g, u) { 9 "use strict"; 10 11 function i(t, e) { 12 for (var n = 0; n < e.length; n++) { 13 var i = e[n]; 14 i.enumerable = i.enumerable || !1, i.configurable = !0, "value" in i && (i.writable = !0), Object.defineProperty(t, i.key, i) 15 } 16 } 17 18 function s(t, e, n) { 19 return e && i(t.prototype, e), n && i(t, n), t 20 } 21 22 function l(o) { 23 for (var t = 1; t < arguments.length; t++) { 24 var r = null != arguments[t] ? arguments[t] : {}, 25 e = Object.keys(r); 26 "function" == typeof Object.getOwnPropertySymbols && (e = e.concat(Object.getOwnPropertySymbols(r).filter(function(t) { 27 return Object.getOwnPropertyDescriptor(r, t).enumerable 28 }))), e.forEach(function(t) { 29 var e, n, i; 30 e = o, i = r[n = t], n in e ? Object.defineProperty(e, n, { 31 value: i, 32 enumerable: !0, 33 configurable: !0, 34 writable: !0 35 }) : e[n] = i 36 }) 37 } 38 return o 39 } 40 g = g && g.hasOwnProperty("default") ? g.default : g, u = u && u.hasOwnProperty("default") ? u.default : u; 41 var e = "transitionend"; 42 43 function n(t) { 44 var e = this, 45 n = !1; 46 return g(this).one(_.TRANSITION_END, function() { 47 n = !0 48 }), setTimeout(function() { 49 n || _.triggerTransitionEnd(e) 50 }, t), this 51 } 52 var _ = { 53 TRANSITION_END: "bsTransitionEnd", 54 getUID: function(t) { 55 for (; t += ~~(1e6 * Math.random()), document.getElementById(t);); 56 return t 57 }, 58 getSelectorFromElement: function(t) { 59 var e = t.getAttribute("data-target"); 60 if (!e || "#" === e) { 61 var n = t.getAttribute("href"); 62 e = n && "#" !== n ? n.trim() : "" 63 } 64 try { 65 return document.querySelector(e) ? e : null 66 } catch (t) { 67 return null 68 } 69 }, 70 getTransitionDurationFromElement: function(t) { 71 if (!t) return 0; 72 var e = g(t).css("transition-duration"), 73 n = g(t).css("transition-delay"), 74 i = parseFloat(e), 75 o = parseFloat(n); 76 return i || o ? (e = e.split(",")[0], n = n.split(",")[0], 1e3 * (parseFloat(e) + parseFloat(n))) : 0 77 }, 78 reflow: function(t) { 79 return t.offsetHeight 80 }, 81 triggerTransitionEnd: function(t) { 82 g(t).trigger(e) 83 }, 84 supportsTransitionEnd: function() { 85 return Boolean(e) 86 }, 87 isElement: function(t) { 88 return (t[0] || t).nodeType 89 }, 90 typeCheckConfig: function(t, e, n) { 91 for (var i in n) 92 if (Object.prototype.hasOwnProperty.call(n, i)) { 93 var o = n[i], 94 r = e[i], 95 s = r && _.isElement(r) ? "element" : (a = r, {}.toString.call(a).match(/\s([a-z]+)/i)[1].toLowerCase()); 96 if (!new RegExp(o).test(s)) throw new Error(t.toUpperCase() + ': Option "' + i + '" provided type "' + s + '" but expected type "' + o + '".') 97 } 98 var a 99 }, 100 findShadowRoot: function(t) { 101 if (!document.documentElement.attachShadow) return null; 102 if ("function" != typeof t.getRootNode) return t instanceof ShadowRoot ? t : t.parentNode ? _.findShadowRoot(t.parentNode) : null; 103 var e = t.getRootNode(); 104 return e instanceof ShadowRoot ? e : null 105 } 106 }; 107 g.fn.emulateTransitionEnd = n, g.event.special[_.TRANSITION_END] = { 108 bindType: e, 109 delegateType: e, 110 handle: function(t) { 111 if (g(t.target).is(this)) return t.handleObj.handler.apply(this, arguments) 112 } 113 }; 114 var o = "alert", 115 r = "bs.alert", 116 a = "." + r, 117 c = g.fn[o], 118 h = { 119 CLOSE: "close" + a, 120 CLOSED: "closed" + a, 121 CLICK_DATA_API: "click" + a + ".data-api" 122 }, 123 f = "alert", 124 d = "fade", 125 m = "show", 126 p = function() { 127 function i(t) { 128 this._element = t 129 } 130 var t = i.prototype; 131 return t.close = function(t) { 132 var e = this._element; 133 t && (e = this._getRootElement(t)), this._triggerCloseEvent(e).isDefaultPrevented() || this._removeElement(e) 134 }
134, t.dispose = function() { 135 g.removeData(this._element, r), this._element = null 136 }, t._getRootElement = function(t) { 137 var e = _.getSelectorFromElement(t), 138 n = !1; 139 return e && (n = document.querySelector(e)), n || (n = g(t).closest("." + f)[0]), n 140 }, t._triggerCloseEvent = function(t) { 141 var e = g.Event(h.CLOSE); 142 return g(t).trigger(e), e 143 }, t._removeElement = function(e) { 144 var n = this; 145 if (g(e).removeClass(m), g(e).hasClass(d)) { 146 var t = _.getTransitionDurationFromElement(e); 147 g(e).one(_.TRANSITION_END, function(t) { 148 return n._destroyElement(e, t) 149 }).emulateTransitionEnd(t) 150 } else this._destroyElement(e) 151 }, t._destroyElement = function(t) { 152 g(t).detach().trigger(h.CLOSED).remove() 153 }, i._jQueryInterface = function(n) { 154 return this.each(function() { 155 var t = g(this), 156 e = t.data(r); 157 e || (e = new i(this), t.data(r, e)), "close" === n && e[n](this) 158 }) 159 }, i._handleDismiss = function(e) { 160 return function(t) { 161 t && t.preventDefault(), e.close(this) 162 } 163 }, s(i, null, [{ 164 key: "VERSION", 165 get: function() { 166 return "4.3.1" 167 } 168 }]), i 169 }(); 170 g(document).on(h.CLICK_DATA_API, '[data-dismiss="alert"]', p._handleDismiss(new p)), g.fn[o] = p._jQueryInterface, g.fn[o].Constructor = p, g.fn[o].noConflict = function() { 171 return g.fn[o] = c, p._jQueryInterface 172 }; 173 var v = "button", 174 y = "bs.button", 175 E = "." + y, 176 C = ".data-api", 177 T = g.fn[v], 178 S = "active", 179 b = "btn", 180 I = "focus", 181 D = '[data-toggle^="button"]', 182 w = '[data-toggle="buttons"]', 183 A = 'input:not([type="hidden"])', 184 N = ".active", 185 O = ".btn", 186 k = { 187 CLICK_DATA_API: "click" + E + C, 188 FOCUS_BLUR_DATA_API: "focus" + E + C + " blur" + E + C 189 }, 190 P = function() { 191 function n(t) { 192 this._element = t 193 } 194 var t = n.prototype; 195 return t.toggle = function() { 196 var t = !0, 197 e = !0, 198 n = g(this._element).closest(w)[0]; 199 if (n) { 200 var i = this._element.querySelector(A); 201 if (i) { 202 if ("radio" === i.type) 203 if (i.checked && this._element.classList.contains(S)) t = !1; 204 else { 205 var o = n.querySelector(N); 206 o && g(o).removeClass(S) 207 } 208 if (t) { 209 if (i.hasAttribute("disabled") || n.hasAttribute("disabled") || i.classList.contains("disabled") || n.classList.contains("disabled")) return; 210 i.checked = !this._element.classList.contains(S), g(i).trigger("change") 211 } 212 i.focus(), e = !1 213 } 214 } 215 e && this._element.setAttribute("aria-pressed", !this._element.classList.contains(S)), t && g(this._element).toggleClass(S) 216 }, t.dispose = function() { 217 g.removeData(this._element, y), this._element = null 218 }, n._jQueryInterface = function(e) { 219 return this.each(function() { 220 var t = g(this).data(y); 221 t || (t = new n(this), g(this).data(y, t)), "toggle" === e && t[e]() 222 }) 223 }, s(n, null, [{ 224 key: "VERSION", 225 get: function() { 226 return "4.3.1" 227 } 228 }]), n 229 }(); 230 g(document).on(k.CLICK_DATA_API, D, function(t) { 231 t.preventDefault(); 232 var e = t.target; 233 g(e).hasClass(b) || (e = g(e).closest(O)), P._jQueryInterface.call(g(e), "toggle") 234 }).on(k.FOCUS_BLUR_DATA_API, D, function(t) { 235 var e = g(t.target).closest(O)[0];
236 g(e).toggleClass(I, /^focus(in)?$/.test(t.type)) 237 }), g.fn[v] = P._jQueryInterface, g.fn[v].Constructor = P, g.fn[v].noConflict = function() { 238 return g.fn[v] = T, P._jQueryInterface 239 }; 240 var L = "carousel", 241 j = "bs.carousel", 242 H = "." + j, 243 R = ".data-api", 244 x = g.fn[L], 245 F = { 246 interval: 5e3, 247 keyboard: !0, 248 slide: !1, 249 pause: "hover", 250 wrap: !0, 251 touch: !0 252 }, 253 U = { 254 interval: "(number|boolean)", 255 keyboard: "boolean", 256 slide: "(boolean|string)", 257 pause: "(string|boolean)", 258 wrap: "boolean", 259 touch: "boolean" 260 }, 261 W = "next", 262 q = "prev", 263 M = "left", 264 K = "right", 265 Q = { 266 SLIDE: "slide" + H, 267 SLID: "slid" + H, 268 KEYDOWN: "keydown" + H, 269 MOUSEENTER: "mouseenter" + H, 270 MOUSELEAVE: "mouseleave" + H, 271 TOUCHSTART: "touchstart" + H, 272 TOUCHMOVE: "touchmove" + H, 273 TOUCHEND: "touchend" + H, 274 POINTERDOWN: "pointerdown" + H, 275 POINTERUP: "pointerup" + H, 276 DRAG_START: "dragstart" + H, 277 LOAD_DATA_API: "load" + H + R, 278 CLICK_DATA_API: "click" + H + R 279 }, 280 B = "carousel", 281 V = "active", 282 Y = "slide", 283 z = "carousel-item-right", 284 X = "carousel-item-left", 285 $ = "carousel-item-next", 286 G = "carousel-item-prev", 287 J = "pointer-event", 288 Z = ".active", 289 tt = ".active.carousel-item", 290 et = ".carousel-item", 291 nt = ".carousel-item img", 292 it = ".carousel-item-next, .carousel-item-prev", 293 ot = ".carousel-indicators", 294 rt = "[data-slide], [data-slide-to]", 295 st = '[data-ride="carousel"]', 296 at = { 297 TOUCH: "touch", 298 PEN: "pen" 299 }, 300 lt = function() { 301 function r(t, e) { 302 this._items = null, this._interval = null, this._activeElement = null, this._isPaused = !1, this._isSliding = !1, this.touchTimeout = null, this.touchStartX = 0, this.touchDeltaX = 0, this._config = this._getConfig(e), this._element = t, this._indicatorsElement = this._element.querySelector(ot), this._touchSupported = "ontouchstart" in document.documentElement || 0 < navigator.maxTouchPoints, this._pointerEvent = Boolean(window.PointerEvent || window.MSPointerEvent), this._addEventListeners() 303 } 304 var t = r.prototype; 305 return t.next = function() { 306 this._isSliding || this._slide(W) 307 }, t.nextWhenVisible = function() { 308 !document.hidden && g(this._element).is(":visible") && "hidden" !== g(this._element).css("visibility") && this.next() 309 }, t.prev = function() { 310 this._isSliding || this._slide(q) 311 }, t.pause = function(t) { 312 t || (this._isPaused = !0), this._element.querySelector(it) && (_.triggerTransitionEnd(this._element), this.cycle(!0)), clearInterval(this._interval), this._interval = null 313 }, t.cycle = function(t) { 314 t || (this._isPaused = !1), this._interval && (clearInterval(this._interval), this._interval = null), this._config.interval && !this._isPaused && (this._interval = setInterval((document.visibilityState ? this.nextWhenVisible : this.next).bind(this), this._config.interval)) 315 }, t.to = function(t) { 316 var e = this; 317 this._activeElement = this._element.querySelector(tt); 318 var n = this._getItemIndex(this._activeElement); 319 if (!(t > this._items.length - 1 || t < 0)) 320 if (this._isSliding) g(this._element).one(Q.SLID, function() { 321 return e.to(t) 322 }); 323 else { 324 if (n === t) return this.pause(), void this.cycle(); 325 var i = n < t ? W : q; 326 this._slide(i, this._items[t]) 327 } 328 }
328, t.dispose = function() { 329 g(this._element).off(H), g.removeData(this._element, j), this._items = null, this._config = null, this._element = null, this._interval = null, this._isPaused = null, this._isSliding = null, this._activeElement = null, this._indicatorsElement = null 330 }, t._getConfig = function(t) { 331 return t = l({}, F, t), _.typeCheckConfig(L, t, U), t 332 }, t._handleSwipe = function() { 333 var t = Math.abs(this.touchDeltaX); 334 if (!(t <= 40)) { 335 var e = t / this.touchDeltaX; 336 0 < e && this.prev(), e < 0 && this.next() 337 } 338 }, t._addEventListeners = function() { 339 var e = this; 340 this._config.keyboard && g(this._element).on(Q.KEYDOWN, function(t) { 341 return e._keydown(t) 342 }), "hover" === this._config.pause && g(this._element).on(Q.MOUSEENTER, function(t) { 343 return e.pause(t) 344 }).on(Q.MOUSELEAVE, function(t) { 345 return e.cycle(t) 346 }), this._config.touch && this._addTouchEventListeners() 347 }, t._addTouchEventListeners = function() { 348 var n = this; 349 if (this._touchSupported) { 350 var e = function(t) { 351 n._pointerEvent && at[t.originalEvent.pointerType.toUpperCase()] ? n.touchStartX = t.originalEvent.clientX : n._pointerEvent || (n.touchStartX = t.originalEvent.touches[0].clientX) 352 }, 353 i = function(t) { 354 n._pointerEvent && at[t.originalEvent.pointerType.toUpperCase()] && (n.touchDeltaX = t.originalEvent.clientX - n.touchStartX), n._handleSwipe(), "hover" === n._config.pause && (n.pause(), n.touchTimeout && clearTimeout(n.touchTimeout), n.touchTimeout = setTimeout(function(t) { 355 return n.cycle(t) 356 }, 500 + n._config.interval)) 357 }; 358 g(this._element.querySelectorAll(nt)).on(Q.DRAG_START, function(t) { 359 return t.preventDefault() 360 }), this._pointerEvent ? (g(this._element).on(Q.POINTERDOWN, function(t) { 361 return e(t) 362 }), g(this._element).on(Q.POINTERUP, function(t) { 363 return i(t) 364 }), this._element.classList.add(J)) : (g(this._element).on(Q.TOUCHSTART, function(t) { 365 return e(t) 366 }), g(this._element).on(Q.TOUCHMOVE, function(t) { 367 var e; 368 (e = t).originalEvent.touches && 1 < e.originalEvent.touches.length ? n.touchDeltaX = 0 : n.touchDeltaX = e.originalEvent.touches[0].clientX - n.touchStartX 369 }), g(this._element).on(Q.TOUCHEND, function(t) { 370 return i(t) 371 })) 372 } 373 }, t._keydown = function(t) { 374 if (!/input|textarea/i.test(t.target.tagName)) switch (t.which) { 375 case 37: 376 t.preventDefault(), this.prev(); 377 break; 378 case 39: 379 t.preventDefault(), this.next() 380 } 381 }, t._getItemIndex = function(t) { 382 return this._items = t && t.parentNode ? [].slice.call(t.parentNode.querySelectorAll(et)) : [], this._items.indexOf(t) 383 }, t._getItemByDirection = function(t, e) { 384 var n = t === W, 385 i = t === q, 386 o = this._getItemIndex(e), 387 r = this._items.length - 1; 388 if ((i && 0 === o || n && o === r) && !this._config.wrap) return e; 389 var s = (o + (t === q ? -1 : 1)) % this._items.length; 390 return -1 === s ? this._items[this._items.length - 1] : this._items[s] 391 }, t._triggerSlideEvent = function(t, e) { 392 var n = this._getItemIndex(t), 393 i = this._getItemIndex(this._element.querySelector(tt)), 394 o = g.Event(Q.SLIDE, { 395 relatedTarget: t, 396 direction: e, 397 from: i, 398 to: n 399 }); 400 return g(this._element).trigger(o), o 401 }, t._setActiveIndicatorElement = function(t) { 402 if (this._indicatorsElement) { 403 var e = [].slice.call(this._indicatorsElement.querySelectorAll(Z)); 404 g(e).removeClass(V); 405 var n = this._indicatorsElement.children[this._getItemIndex(t)]; 406 n && g(n).addClass(V) 407 } 408 }, t._slide = function(t, e) { 409 var n, i, o, r = this, 410 s = this._element.querySelector(tt), 411 a = this._getItemIndex(s), 412 l = e || s && this._getItemByDirection(t, s), 413 c = this._getItemIndex(l), 414 h = Boolean(this._interval); 415 if (o = t === W ? (n = X, i = $, M) : (n = z, i = G, K), l && g(l).hasClass(V)) this._isSliding = !1; 416 else if (!this._triggerSlideEvent(l, o).isDefaultPrevented() && s && l) { 417 this._isSliding = !0, h && this.pause(), this._setActiveIndicatorElement(l); 418 var u = g.Event(Q.SLID, { 419 relatedTarget: l, 420 direction: o, 421 from: a, 422 to: c 423 }); 424 if (g(this._element).hasClass(Y)) { 425 g(l).addClass(i), _.reflow(l), g(s).addClass(n), g(l).addClass(n); 426 var f = parseInt(l.getAttribute("data-interval"), 10); 427 this._config.interval = f ? (this._config.defaultInterval = this._config.defaultInterval || this._config.interval, f) : this._config.defaultInterval || this._config.interval; 428 var d = _.getTransitionDurationFromElement(s); 429 g(s).one(_.TRANSITION_END, function() { 430 g(l).removeClass(n + " " + i).addClass(V), g(s).removeClass(V + " " + i + " " + n
430), r._isSliding = !1, setTimeout(function() { 431 return g(r._element).trigger(u) 432 }, 0) 433 }).emulateTransitionEnd(d) 434 } else g(s).removeClass(V), g(l).addClass(V), this._isSliding = !1, g(this._element).trigger(u); 435 h && this.cycle() 436 } 437 }, r._jQueryInterface = function(i) { 438 return this.each(function() { 439 var t = g(this).data(j), 440 e = l({}, F, g(this).data()); 441 "object" == typeof i && (e = l({}, e, i)); 442 var n = "string" == typeof i ? i : e.slide; 443 if (t || (t = new r(this, e), g(this).data(j, t)), "number" == typeof i) t.to(i); 444 else if ("string" == typeof n) { 445 if ("undefined" == typeof t[n]) throw new TypeError('No method named "' + n + '"'); 446 t[n]() 447 } else e.interval && e.ride && (t.pause(), t.cycle()) 448 }) 449 }, r._dataApiClickHandler = function(t) { 450 var e = _.getSelectorFromElement(this); 451 if (e) { 452 var n = g(e)[0]; 453 if (n && g(n).hasClass(B)) { 454 var i = l({}, g(n).data(), g(this).data()), 455 o = this.getAttribute("data-slide-to"); 456 o && (i.interval = !1), r._jQueryInterface.call(g(n), i), o && g(n).data(j).to(o), t.preventDefault() 457 } 458 } 459 }, s(r, null, [{ 460 key: "VERSION", 461 get: function() { 462 return "4.3.1" 463 } 464 }, { 465 key: "Default", 466 get: function() { 467 return F 468 } 469 }]), r 470 }(); 471 g(document).on(Q.CLICK_DATA_API, rt, lt._dataApiClickHandler), g(window).on(Q.LOAD_DATA_API, function() { 472 for (var t = [].slice.call(document.querySelectorAll(st)), e = 0, n = t.length; e < n; e++) { 473 var i = g(t[e]); 474 lt._jQueryInterface.call(i, i.data()) 475 } 476 }), g.fn[L] = lt._jQueryInterface, g.fn[L].Constructor = lt, g.fn[L].noConflict = function() { 477 return g.fn[L] = x, lt._jQueryInterface 478 }; 479 var ct = "collapse", 480 ht = "bs.collapse", 481 ut = "." + ht, 482 ft = g.fn[ct], 483 dt = { 484 toggle: !0, 485 parent: "" 486 }, 487 gt = { 488 toggle: "boolean", 489 parent: "(string|element)" 490 }, 491 _t = { 492 SHOW: "show" + ut, 493 SHOWN: "shown" + ut, 494 HIDE: "hide" + ut, 495 HIDDEN: "hidden" + ut, 496 CLICK_DATA_API: "click" + ut + ".data-api" 497 }, 498 mt = "show", 499 pt = "collapse", 500 vt = "collapsing", 501 yt = "collapsed", 502 Et = "width", 503 Ct = "height", 504 Tt = ".show, .collapsing", 505 St = '[data-toggle="collapse"]', 506 bt = function() { 507 function a(e, t) { 508 this._isTransitioning = !1, this._element = e, this._config = this._getConfig(t), this._triggerArray = [].slice.call(document.querySelectorAll('[data-toggle="collapse"][href="#' + e.id + '"],[data-toggle="collapse"][data-target="#' + e.id + '"]')); 509 for (var n = [].slice.call(document.querySelectorAll(St)), i = 0, o = n.length; i < o; i++) { 510 var r = n[i], 511 s = _.getSelectorFromElement(r), 512 a = [].slice.call(document.querySelectorAll(s)).filter(function(t) { 513 return t === e 514 }); 515 null !== s && 0 < a.length && (this._selector = s, this._triggerArray.push(r)) 516 } 517 this._parent = this._config.parent ? this._getParent() : null, this._config.parent || this._addAriaAndCollapsedClass(this._element, this._triggerArray), this._config.toggle && this.toggle() 518 } 519 var t = a.prototype; 520 return t.toggle = function() { 521 g(this._element).hasClass(mt) ? this.hide() : this.show() 522 }, t.show = function() { 523 var t, e, n = this; 524 if (!this._isTransitioning && !g(this._element).hasClass(mt) && (this._parent && 0 === (t = [].slice.call(this._parent.querySelectorAll(Tt)).filter(function(t) { 525 return "string" == typeof n._config.parent ? t.getAttribute("data-parent") === n._config.parent : t.classList.contains(pt) 526 })).length && (t = null), !(t && (e = g(t).not(this._selector).data(ht)) && e._isTransitioning))) { 527 var i = g.Event(_t.SHOW); 528 if (g(this._element).trigger(i), !i.isDefaultPrevented()) { 529 t && (a._jQueryInterface.call(g(t).not(this._selector), "hide"), e || g(t).data(ht, null)); 530 var o = this._getDimension(); 531 g(this._element).removeClass(pt).addClass(vt), this._element.style[o] = 0, this._triggerArray.length && g(this._triggerArray).removeClass(yt).attr("aria-expanded", !0), this.setTransitioning(!0); 532 var r = "scroll" + (o[0].toUpperCase() + o.slice(1)), 533 s = _.getTransitionDurationFromElement(this._element); 534 g(this._element).one(_.TRANSITION_END, function() { 535 g(n._element).removeClass(vt).addClass(pt).addClass(mt), n._element.style[o] = "", n.setTransitioning(!1), g(n._element).trigger(_t.SHOWN) 536 }).emulateTransitionEnd(s), this._element.style[o] = this._element[r] + "px" 537 } 538 } 539 }, t.hide = function() { 540 var t = this; 541 if (!this._isTransitioning && g(this._element).hasClass(mt)) { 542 var e = g.Event(_t.HIDE); 543 if (g(this._element).trigger(e), !e.isDefaultPrevented()) { 544 var n = this._getDimension(); 545 this._element.style[n] = this._element.getBoundingClientRect()[n] + "px", _.reflow(this._element), g(this._element).addClass(vt).removeClass(pt).removeClass(mt); 546 var i = this._triggerArray.length; 547 if (0 < i) 548 for (var o = 0; o < i; o++) { 549 var r = this._triggerArray[o], 550 s = _.getSelectorFromElement(r); 551 if (null !== s) g([].slice.call(document.querySelectorAll(s))).hasClass(mt) || g(r).addClass(yt).attr("aria-expanded", !1) 552 } 553 this.setTransitioning(!0); 554 this._element.style[n] = ""; 555 var a = _.getTransitionDurationFromElement(this._element); 556 g(this._element).one(_.TRANSITION_END, function() { 557 t.setTransitioning(!1), g(t._element).removeClass(vt).addClass(pt).trigger(_t.HIDDEN) 558 }).emulateTransitionEnd(a) 559 } 560 } 561 }, t.setTransitioning = function(t) { 562 this._isTransitioning = t 563 }
563, t.dispose = function() { 564 g.removeData(this._element, ht), this._config = null, this._parent = null, this._element = null, this._triggerArray = null, this._isTransitioning = null 565 }, t._getConfig = function(t) { 566 return (t = l({}, dt, t)).toggle = Boolean(t.toggle), _.typeCheckConfig(ct, t, gt), t 567 }, t._getDimension = function() { 568 return g(this._element).hasClass(Et) ? Et : Ct 569 }, t._getParent = function() { 570 var t, n = this; 571 _.isElement(this._config.parent) ? (t = this._config.parent, "undefined" != typeof this._config.parent.jquery && (t = this._config.parent[0])) : t = document.querySelector(this._config.parent); 572 var e = '[data-toggle="collapse"][data-parent="' + this._config.parent + '"]', 573 i = [].slice.call(t.querySelectorAll(e)); 574 return g(i).each(function(t, e) { 575 n._addAriaAndCollapsedClass(a._getTargetFromElement(e), [e]) 576 }), t 577 }, t._addAriaAndCollapsedClass = function(t, e) { 578 var n = g(t).hasClass(mt); 579 e.length && g(e).toggleClass(yt, !n).attr("aria-expanded", n) 580 }, a._getTargetFromElement = function(t) { 581 var e = _.getSelectorFromElement(t); 582 return e ? document.querySelector(e) : null 583 }, a._jQueryInterface = function(i) { 584 return this.each(function() { 585 var t = g(this), 586 e = t.data(ht), 587 n = l({}, dt, t.data(), "object" == typeof i && i ? i : {}); 588 if (!e && n.toggle && /show|hide/.test(i) && (n.toggle = !1), e || (e = new a(this, n), t.data(ht, e)), "string" == typeof i) { 589 if ("undefined" == typeof e[i]) throw new TypeError('No method named "' + i + '"'); 590 e[i]() 591 } 592 }) 593 }, s(a, null, [{ 594 key: "VERSION", 595 get: function() { 596 return "4.3.1" 597 } 598 }, { 599 key: "Default", 600 get: function() { 601 return dt 602 } 603 }]), a 604 }(); 605 g(document).on(_t.CLICK_DATA_API, St, function(t) { 606 "A" === t.currentTarget.tagName && t.preventDefault(); 607 var n = g(this), 608 e = _.getSelectorFromElement(this), 609 i = [].slice.call(document.querySelectorAll(e)); 610 g(i).each(function() { 611 var t = g(this), 612 e = t.data(ht) ? "toggle" : n.data(); 613 bt._jQueryInterface.call(t, e) 614 }) 615 }), g.fn[ct] = bt._jQueryInterface, g.fn[ct].Constructor = bt, g.fn[ct].noConflict = function() { 616 return g.fn[ct] = ft, bt._jQueryInterface 617 }; 618 var It = "dropdown", 619 Dt = "bs.dropdown", 620 wt = "." + Dt, 621 At = ".data-api", 622 Nt = g.fn[It], 623 Ot = new RegExp("38|40|27"), 624 kt = { 625 HIDE: "hide" + wt, 626 HIDDEN: "hidden" + wt, 627 SHOW: "show" + wt, 628 SHOWN: "shown" + wt, 629 CLICK: "click" + wt, 630 CLICK_DATA_API: "click" + wt + At, 631 KEYDOWN_DATA_API: "keydown" + wt + At, 632 KEYUP_DATA_API: "keyup" + wt + At 633 }, 634 Pt = "disabled", 635 Lt = "show", 636 jt = "dropup", 637 Ht = "dropright", 638 Rt = "dropleft", 639 xt = "dropdown-menu-right", 640 Ft = "position-static", 641 Ut = '[data-toggle="dropdown"]', 642 Wt = ".dropdown form", 643 qt = ".dropdown-menu", 644 Mt = ".navbar-nav", 645 Kt = ".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)", 646 Qt = "top-start", 647 Bt = "top-end", 648 Vt = "bottom-start", 649 Yt = "bottom-end", 650 zt = "right-start", 651 Xt = "left-start", 652 $t = { 653 offset: 0, 654 flip: !0, 655 boundary: "scrollParent", 656 reference: "toggle", 657 display: "dynamic" 658 }, 659 Gt = { 660 offset: "(number|string|function)", 661 flip: "boolean", 662 boundary: "(string|element)", 663 reference: "(string|element)", 664 display: "string" 665 }, 666 Jt = function() { 667 function c(t, e) { 668 this._element = t, this._popper = null, this._config = this._getConfig(e), this._menu = this._getMenuElement(), this._inNavbar = this._detectNavbar(), this._addEventListeners() 669 } 670 var t = c.prototype; 671 return t.toggle = function() { 672 if (!this._element.disabled && !g(this._element).hasClass(Pt)) { 673 var t = c._getParentFromElement(this._element), 674 e = g(this._menu).hasClass(Lt); 675 if (c._clearMenus(), !e) { 676 var n = { 677 relatedTarget: this._element 678 }, 679 i = g.Event(kt.SHOW, n); 680 if (g(t).trigger(i), !i.isDefaultPrevented()) { 681 if (!this._inNavbar) { 682 if ("undefined" == typeof u) throw new TypeError("Bootstrap's dropdowns require Popper.js (https://popper.js.org/)"); 683 var o = this._element; 684 "parent" === this._config.reference ? o = t : _.isElement(this._config.reference) && (o = this._config.reference, "undefined" != typeof this._config.reference.jquery && (o = this._config.reference[0])), "scrollParent" !== this._config.boun
684dary && g(t).addClass(Ft), this._popper = new u(o, this._menu, this._getPopperConfig()) 685 } 686 "ontouchstart" in document.documentElement && 0 === g(t).closest(Mt).length && g(document.body).children().on("mouseover", null, g.noop), this._element.focus(), this._element.setAttribute("aria-expanded", !0), g(this._menu).toggleClass(Lt), g(t).toggleClass(Lt).trigger(g.Event(kt.SHOWN, n)) 687 } 688 } 689 } 690 }, t.show = function() { 691 if (!(this._element.disabled || g(this._element).hasClass(Pt) || g(this._menu).hasClass(Lt))) { 692 var t = { 693 relatedTarget: this._element 694 }, 695 e = g.Event(kt.SHOW, t), 696 n = c._getParentFromElement(this._element); 697 g(n).trigger(e), e.isDefaultPrevented() || (g(this._menu).toggleClass(Lt), g(n).toggleClass(Lt).trigger(g.Event(kt.SHOWN, t))) 698 } 699 }, t.hide = function() { 700 if (!this._element.disabled && !g(this._element).hasClass(Pt) && g(this._menu).hasClass(Lt)) { 701 var t = { 702 relatedTarget: this._element 703 }, 704 e = g.Event(kt.HIDE, t), 705 n = c._getParentFromElement(this._element); 706 g(n).trigger(e), e.isDefaultPrevented() || (g(this._menu).toggleClass(Lt), g(n).toggleClass(Lt).trigger(g.Event(kt.HIDDEN, t))) 707 } 708 }, t.dispose = function() { 709 g.removeData(this._element, Dt), g(this._element).off(wt), this._element = null, (this._menu = null) !== this._popper && (this._popper.destroy(), this._popper = null) 710 }, t.update = function() { 711 this._inNavbar = this._detectNavbar(), null !== this._popper && this._popper.scheduleUpdate() 712 }, t._addEventListeners = function() { 713 var e = this; 714 g(this._element).on(kt.CLICK, function(t) { 715 t.preventDefault(), t.stopPropagation(), e.toggle() 716 }) 717 }, t._getConfig = function(t) { 718 return t = l({}, this.constructor.Default, g(this._element).data(), t), _.typeCheckConfig(It, t, this.constructor.DefaultType), t 719 }, t._getMenuElement = function() { 720 if (!this._menu) { 721 var t = c._getParentFromElement(this._element); 722 t && (this._menu = t.querySelector(qt)) 723 } 724 return this._menu 725 }, t._getPlacement = function() { 726 var t = g(this._element.parentNode), 727 e = Vt; 728 return t.hasClass(jt) ? (e = Qt, g(this._menu).hasClass(xt) && (e = Bt)) : t.hasClass(Ht) ? e = zt : t.hasClass(Rt) ? e = Xt : g(this._menu).hasClass(xt) && (e = Yt), e 729 }, t._detectNavbar = function() { 730 return 0 < g(this._element).closest(".navbar").length 731 }, t._getOffset = function() { 732 var e = this, 733 t = {}; 734 return "function" == typeof this._config.offset ? t.fn = function(t) { 735 return t.offsets = l({}, t.offsets, e._config.offset(t.offsets, e._element) || {}), t 736 } : t.offset = this._config.offset, t 737 }, t._getPopperConfig = function() { 738 var t = { 739 placement: this._getPlacement(), 740 modifiers: { 741 offset: this._getOffset(), 742 flip: { 743 enabled: this._config.flip 744 }, 745 preventOverflow: { 746 boundariesElement: this._config.boundary 747 } 748 } 749 }; 750 return "static" === this._config.display && (t.modifiers.applyStyle = { 751 enabled: !1 752 }), t 753 }, c._jQueryInterface = function(e) { 754 return this.each(function() { 755 var t = g(this).data(Dt); 756 if (t || (t = new c(this, "object" == typeof e ? e : null), g(this).data(Dt, t)), "string" == typeof e) { 757 if ("undefined" == typeof t[e]) throw new TypeError('No method n
757amed "' + e + '"'); 758 t[e]() 759 } 760 }) 761 }, c._clearMenus = function(t) { 762 if (!t || 3 !== t.which && ("keyup" !== t.type || 9 === t.which)) 763 for (var e = [].slice.call(document.querySelectorAll(Ut)), n = 0, i = e.length; n < i; n++) { 764 var o = c._getParentFromElement(e[n]), 765 r = g(e[n]).data(Dt), 766 s = { 767 relatedTarget: e[n] 768 }; 769 if (t && "click" === t.type && (s.clickEvent = t), r) { 770 var a = r._menu; 771 if (g(o).hasClass(Lt) && !(t && ("click" === t.type && /input|textarea/i.test(t.target.tagName) || "keyup" === t.type && 9 === t.which) && g.contains(o, t.target))) { 772 var l = g.Event(kt.HIDE, s); 773 g(o).trigger(l), l.isDefaultPrevented() || ("ontouchstart" in document.documentElement && g(document.body).children().off("mouseover", null, g.noop), e[n].setAttribute("aria-expanded", "false"), g(a).removeClass(Lt), g(o).removeClass(Lt).trigger(g.Event(kt.HIDDEN, s))) 774 } 775 } 776 } 777 }, c._getParentFromElement = function(t) { 778 var e, n = _.getSelectorFromElement(t); 779 return n && (e = document.querySelector(n)), e || t.parentNode 780 }, c._dataApiKeydownHandler = function(t) { 781 if ((/input|textarea/i.test(t.target.tagName) ? !(32 === t.which || 27 !== t.which && (40 !== t.which && 38 !== t.which || g(t.target).closest(qt).length)) : Ot.test(t.which)) && (t.preventDefault(), t.stopPropagation(), !this.disabled && !g(this).hasClass(Pt))) { 782 var e = c._getParentFromElement(this), 783 n = g(e).hasClass(Lt); 784 if (n && (!n || 27 !== t.which && 32 !== t.which)) { 785 var i = [].slice.call(e.querySelectorAll(Kt)); 786 if (0 !== i.length) { 787 var o = i.indexOf(t.target); 788 38 === t.which && 0 < o && o--, 40 === t.which && o < i.length - 1 && o++, o < 0 && (o = 0), i[o].focus() 789 } 790 } else { 791 if (27 === t.which) { 792 var r = e.querySelector(Ut); 793 g(r).trigger("focus") 794 } 795 g(this).trigger("click") 796 } 797 } 798 }, s(c, null, [{ 799 key: "VERSION", 800 get: function() { 801 return "4.3.1" 802 } 803 }, { 804 key: "Default", 805 get: function() { 806 return $t 807 } 808 }, { 809 key: "DefaultType", 810 get: function() { 811 return Gt 812 } 813 }]), c 814 }(); 815 g(document).on(kt.KEYDOWN_DATA_API, Ut, Jt._dataApiKeydownHandler).on(kt.KEYDOWN_DATA_API, qt, Jt._dataApiKeydownHandler).on(kt.CLICK_DATA_API + " " + kt.KEYUP_DATA_API, Jt._clearMenus).on(kt.CLICK_DATA_API, Ut, function(t) { 816 t.preventDefault(), t.stopPropagation(), Jt._jQueryInterface.call(g(this), "toggle") 817 }).on(kt.CLICK_DATA_API, Wt, function(t) { 818 t.stopPropagation() 819 }), g.fn[It] = Jt._jQueryInterface, g.fn[It].Constructor = Jt, g.fn[It].noConflict = function() { 820 return g.fn[It] = Nt, Jt._jQueryInterface 821 }; 822 var Zt = "modal", 823 te = "bs.modal", 824 ee = "." + te, 825 ne = g.fn[Zt], 826 ie = { 827 backdrop: !0, 828 keyboard: !0, 829 focus: !0, 830 show: !0 831 }, 832 oe = { 833 backdrop: "(boolean|string)", 834 keyboard: "boolean", 835 focus: "boolean", 836 show: "boolean" 837 }, 838 re = { 839 HIDE: "hide" + ee, 840 HIDDEN: "hidden" + ee, 841 SHOW: "show" + ee, 842 SHOWN: "shown" + ee, 843 FOCUSIN: "focusin" + ee, 844 RESIZE: "resize" + ee, 845 CLICK_DISMISS: "click.dismiss" + ee, 846 KEYDOWN_DISMISS: "keydown.dismiss" + ee, 847 MOUSEUP_DISMISS: "mouseup.dismiss" + ee, 848 MOUSEDOWN_DISMISS: "mousedown.dismiss" + ee, 849 CLICK_DATA_API: "click" + ee + ".data-api" 850 },
851 se = "modal-dialog-scrollable", 852 ae = "modal-scrollbar-measure", 853 le = "modal-backdrop", 854 ce = "modal-open", 855 he = "fade", 856 ue = "show", 857 fe = ".modal-dialog", 858 de = ".modal-body", 859 ge = '[data-toggle="modal"]', 860 _e = '[data-dismiss="modal"]', 861 me = ".fixed-top, .fixed-bottom, .is-fixed, .sticky-top", 862 pe = ".sticky-top", 863 ve = function() { 864 function o(t, e) { 865 this._config = this._getConfig(e), this._element = t, this._dialog = t.querySelector(fe), this._backdrop = null, this._isShown = !1, this._isBodyOverflowing = !1, this._ignoreBackdropClick = !1, this._isTransitioning = !1, this._scrollbarWidth = 0 866 } 867 var t = o.prototype; 868 return t.toggle = function(t) { 869 return this._isShown ? this.hide() : this.show(t) 870 }, t.show = function(t) { 871 var e = this; 872 if (!this._isShown && !this._isTransitioning) { 873 g(this._element).hasClass(he) && (this._isTransitioning = !0); 874 var n = g.Event(re.SHOW, { 875 relatedTarget: t 876 }); 877 g(this._element).trigger(n), this._isShown || n.isDefaultPrevented() || (this._isShown = !0, this._checkScrollbar(), this._setScrollbar(), this._adjustDialog(), this._setEscapeEvent(), this._setResizeEvent(), g(this._element).on(re.CLICK_DISMISS, _e, function(t) { 878 return e.hide(t) 879 }), g(this._dialog).on(re.MOUSEDOWN_DISMISS, function() { 880 g(e._element).one(re.MOUSEUP_DISMISS, function(t) { 881 g(t.target).is(e._element) && (e._ignoreBackdropClick = !0) 882 }) 883 }), this._showBackdrop(function() { 884 return e._showElement(t) 885 })) 886 } 887 }, t.hide = function(t) { 888 var e = this; 889 if (t && t.preventDefault(), this._isShown && !this._isTransitioning) { 890 var n = g.Event(re.HIDE); 891 if (g(this._element).trigger(n), this._isShown && !n.isDefaultPrevented()) { 892 this._isShown = !1; 893 var i = g(this._element).hasClass(he); 894 if (i && (this._isTransitioning = !0), this._setEscapeEvent(), this._setResizeEvent(), g(document).off(re.FOCUSIN), g(this._element).removeClass(ue), g(this._element).off(re.CLICK_DISMISS), g(this._dialog).off(re.MOUSEDOWN_DISMISS), i) { 895 var o = _.getTransitionDurationFromElement(this._element); 896 g(this._element).one(_.TRANSITION_END, function(t) { 897 return e._hideModal(t) 898 }).emulateTransitionEnd(o) 899 } else this._hideModal() 900 } 901 } 902 }, t.dispose = function() { 903 [window, this._element, this._dialog].forEach(function(t) { 904 return g(t).off(ee) 905 }), g(document).off(re.FOCUSIN), g.removeData(this._element, te), this._config = null, this._element = null, this._dialog = null, this._backdrop = null, this._isShown = null, this._isBodyOverflowing = null, this._ignoreBackdropClick = null, this._isTransitioning = null, this._scrollbarWidth = null 906 }, t.handleUpdate = function() { 907 this._adjustDialog() 908 }, t._getConfig = function(t) { 909 return t = l({}, ie, t), _.typeCheckConfig(Zt, t, oe), t 910 }, t._showElement = function(t) { 911 var e = this, 912 n = g(this._element).hasClass(he); 913 this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE || document.body.appendChild(this._element), this._element.style.display = "block", this._element.removeAttribute("aria-hidden"), this._element.setAttribute("aria-modal", !0), g(this._dialog).hasClass(se) ? this._dialog.querySelector(de).scrollTop = 0 : this._element.scrollTop = 0, n && _.reflow(this._element), g(this._element).addClass(ue), this._config.focus && this._enforceFocus(); 914 var i = g.Event(re.SHOWN, { 915 relatedTarget: t 916 }), 917 o = function() { 918 e._config.focus && e._element.focus(), e._isTransitioning = !1, g(e._element).trigger(i) 919 }; 920 if (n) { 921 var r = _.getTransitionDurationFromElement(this._dialog); 922 g(this._dialog).one(_.TRANSITION_END, o).emulateTransitionEnd(r) 923 } else o() 924 }, t._enforceFocus = function() { 925 var e = this; 926 g(document).off(re.FOCUSIN).on(re.FOCUSIN, function(t) { 927 document !== t.target && e._element !== t.target && 0 === g(e._element).has(t.target).length && e._element.focus() 928 }) 929 }, t._setEscapeEvent = function() { 930 var e = this; 931 this._isShown && this._config.keyboard ? g(this._element).on(re.KEYDOWN_DISMISS, function(t) { 932 27 === t.which && (t.preventDefault(), e.hide()) 933 }) : this._isShown || g(this._element).off(re.KEYDOWN_DISMISS) 934 }, t._setResizeEvent = function() { 935 var e = this; 936 this._isShown ? g(window).on(re.RESIZE, function(t) { 937 return e.handleUpdate(t) 938 }) : g(window).off(re.RESIZE) 939 }, t._hideModal = function() { 940 var t = this; 941 this._element.style.display = "none", this._element.setAttribute("aria-hidden", !0), this._element.removeAttribute("aria-modal"), this._isTransitioning = !1, this._showBackdrop(function() { 942 g(document.body).removeClass(ce), t._resetAdjustments(), t._resetScrollbar(), g(t._element).trigger(re.HIDDEN) 943 }) 944 }, t._removeBackdrop = function() { 945 this._backdrop && (g(this._backdrop).remove(), this._backdrop = null) 946 }, t._showBackdrop = function(t) { 947 var e = this, 948 n = g(this._element).hasClass(he) ? he : ""; 949 if (this._isShown && this._config.backdrop) { 950 if (this._backdrop = document.createElement("div"), this._backdrop.className = le, n && this._backdrop.classList.add(n), g(this._backdrop).appendTo(document.body), g(this._element).on(re.CLICK_DISMISS, function(t) { 951 e._ignoreBackdropClick ? e._ignoreBackdropClick = !1 : t.target === t.currentTarget && ("static" === e._config.backdrop ? e._element.focus() : e.hide()) 952 }), n && _.reflow(this._backdrop), g(this._backdrop).addClass(ue), !t) return; 953 if (!n) return void t(); 954 var i = _.getTransitionDurationFromElement(this._backdrop); 955 g(this._backdrop).one(_.TRANSITION_END, t).emulateTransitionEnd(i) 956 } else if (!this._isShown && this._backdrop) { 957 g(this._backdrop).removeClass(ue); 958 var o = function() { 959 e._removeBackdrop(), t && t() 960 }; 961 if (g(this._element).hasClass(he)) { 962 var r = _.getTransitionDurationFromElement(this._backdrop); 963 g(this._backdrop).one(_.TRANSITION_END, o).emulateTransitionEnd(r) 964 } else o() 965 } else t && t() 966 }, t._adjustDialog = function() { 967 var t = this._element.scrollHeight > document.documentElement.clientHeight; 968 !this._isBodyOverflowing && t && (this._element.style.paddingLeft = this._scrollbarWidth + "px"), this._isBodyOverflowing && !t && (this._element.style.paddingRight = this._scrollbarWidth + "px") 969 }, t._resetAdjustments = function() { 970 this._element.style.paddingLeft = "", this._element.style.paddingRight = "" 971 }, t._checkScrollbar = function() { 972 var t = document.body.getBoundingClientRect(); 973 this._isBodyOverflowing = t.left + t.right < window.innerWidth, this._scrollbarWidth = this._getScrollbarWidth() 974 }, t._setScrollbar = function() { 975 var o = this; 976 if (this._isBodyOverflowing) { 977 var t = [].slice.call(document.querySelectorAll(me)), 978 e = [].slice.call(document.querySelectorAll(pe)); 979 g(t).each(function(t, e) { 980 var n = e.style.paddingRight, 981 i = g(e).css("padding-right"); 982 g(e).data("padding-right", n).css("padding-right", parseFloat(i) + o._scrollbarWidth + "px") 983 }), g(e).each(function(t, e) { 984 var n = e.style.marginRight, 985 i = g(e).css("margin-right"); 986 g(e).data("margin-right", n).css("margin-right", parseFloat(i) - o._scrollbarWidth + "px") 987 }); 988 var n = document.body.style.paddingRight, 989 i = g(document.body).css("padding-right"); 990 g(document.body).data("padding-right", n).css("padding-right", parseFloat(i) + this._scrollbarWidth + "px") 991 } 992 g(document.body).addClass(ce) 993 }, t._resetScrollbar = function() { 994 var t = [].slice.call(document.querySelectorAll(me)); 995 g(t).each(function(t, e) { 996 var n = g(e).data("padding-right"); 997 g(e).removeData("padding-right"), e.style.paddingRight = n || "" 998 }); 999 var e = [].slice.call(document.querySelectorAll("" + pe)); 1000 g(e).each(function(t, e) { 1001 var n = g(e).data("margin-right");
1002 "undefined" != typeof n && g(e).css("margin-right", n).removeData("margin-right") 1003 }); 1004 var n = g(document.body).data("padding-right"); 1005 g(document.body).removeData("padding-right"), document.body.style.paddingRight = n || "" 1006 }, t._getScrollbarWidth = function() { 1007 var t = document.createElement("div"); 1008 t.className = ae, document.body.appendChild(t); 1009 var e = t.getBoundingClientRect().width - t.clientWidth; 1010 return document.body.removeChild(t), e 1011 }, o._jQueryInterface = function(n, i) { 1012 return this.each(function() { 1013 var t = g(this).data(te), 1014 e = l({}, ie, g(this).data(), "object" == typeof n && n ? n : {}); 1015 if (t || (t = new o(this, e), g(this).data(te, t)), "string" == typeof n) { 1016 if ("undefined" == typeof t[n]) throw new TypeError('No method named "' + n + '"'); 1017 t[n](i) 1018 } else e.show && t.show(i) 1019 }) 1020 }, s(o, null, [{ 1021 key: "VERSION", 1022 get: function() { 1023 return "4.3.1" 1024 } 1025 }, { 1026 key: "Default", 1027 get: function() { 1028 return ie 1029 } 1030 }]), o 1031 }(); 1032 g(document).on(re.CLICK_DATA_API, ge, function(t) { 1033 var e, n = this, 1034 i = _.getSelectorFromElement(this); 1035 i && (e = document.querySelector(i)); 1036 var o = g(e).data(te) ? "toggle" : l({}, g(e).data(), g(this).data()); 1037 "A" !== this.tagName && "AREA" !== this.tagName || t.preventDefault(); 1038 var r = g(e).one(re.SHOW, function(t) { 1039 t.isDefaultPrevented() || r.one(re.HIDDEN, function() { 1040 g(n).is(":visible") && n.focus() 1041 }) 1042 }); 1043 ve._jQueryInterface.call(g(e), o, this) 1044 }), g.fn[Zt] = ve._jQueryInterface, g.fn[Zt].Constructor = ve, g.fn[Zt].noConflict = function() { 1045 return g.fn[Zt] = ne, ve._jQueryInterface 1046 }; 1047 var ye = ["background", "cite", "href", "itemtype", "longdesc", "poster", "src", "xlink:href"], 1048 Ee = { 1049 "*": ["class", "dir", "id", "lang", "role", /^aria-[\w-]*$/i], 1050 a: ["target", "href", "title", "rel"], 1051 area: [], 1052 b: [], 1053 br: [], 1054 col: [], 1055 code: [], 1056 div: [], 1057 em: [], 1058 hr: [], 1059 h1: [], 1060 h2: [], 1061 h3: [], 1062 h4: [], 1063 h5: [], 1064 h6: [], 1065 i: [], 1066 img: ["src", "alt", "title", "width", "height"], 1067 li: [], 1068 ol: [], 1069 p: [], 1070 pre: [], 1071 s: [], 1072 small: [], 1073 span: [], 1074 sub: [], 1075 sup: [], 1076 strong: [], 1077 u: [], 1078 ul: [] 1079 }, 1080 Ce = /^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi, 1081 Te = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i; 1082 1083 function Se(t, s, e) { 1084 if (0 === t.length) return t; 1085 if (e && "function" == typeof e) return e(t); 1086 for (var n = (new window.DOMParser).parseFromString(t, "text/html"), a = Object.keys(s), l = [].slice.call(n.body.querySelectorAll("*")), i = function(t, e) { 1087 var n = l[t], 1088 i = n.nodeName.toLowerCase(); 1089 if (-1 === a.indexOf(n.nodeName.toLowerCase())) return n.parentNode.removeChild(n), "continue"; 1090 var o = [].slice.call(n.attributes), 1091 r = [].concat(s["*"] || [], s[i] || []); 1092 o.forEach(function(t) { 1093 (function(t, e) { 1094 var n = t.nodeName.toLowerCase(); 1095 if (-1 !== e.indexOf(n)) return -1 === ye.indexOf(n) || Boolean(t.nodeValue.match(Ce) || t.nodeValue.match(Te)); 1096 for (var i = e.filter(function(t) { 1097 return t instanceof RegExp 1098 }), o = 0, r = i.length; o < r; o++) 1099 if (n.match(i[o])) return !0; 1100 return !1 1101 })(t, r) || n.removeAttribute(t.nodeName) 1102 }) 1103 }, o = 0, r = l.length; o < r; o++) i(o); 1104 return n.body.innerHTML 1105 } 1106 var be = "tooltip", 1107 Ie = "bs.tooltip", 1108 De = "." + Ie, 1109 we = g.fn[be], 1110 Ae = "bs-tooltip", 1111 Ne = new RegExp("(^|\\s)" + Ae + "\\S+", "g"), 1112 Oe = ["sanitize", "whiteList", "sanitizeFn"], 1113 ke = { 1114 animation: "boolean", 1115 template: "string", 1116 title: "(string|element|function)", 1117 trigger: "string", 1118 delay: "(number|object)", 1119 html: "boolean", 1120 selector: "(string|boolean)", 1121 placement: "(string|function)", 1122 offset: "(number|string|function)", 1123 container: "(string|element|boolean)", 1124 fallbackPlacement: "(string|array)", 1125 boundary: "(string|element)", 1126 sanitize: "boolean", 1127 sanitizeFn: "(null|function)", 1128 whiteList: "object" 1129 }, 1130 Pe = { 1131 AUTO: "auto", 1132 TOP: "top", 1133 RIGHT: "right", 1134 BOTTOM: "bottom", 1135 LEFT: "left" 1136 }, 1137 Le = { 1138 animation: !0, 1139 template: '<div class="tooltip" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>', 1140 trigger: "hover focus", 1141 title: "", 1142 delay: 0, 1143 html: !1, 1144 selector: !1, 1145 placement: "top", 1146 offset: 0, 1147 container: !1, 1148 fallbackPlacement: "flip", 1149 boundary: "scrollParent", 1150 sanitize: !0, 1151 sanitizeFn: null, 1152 whiteList: Ee 1153 }, 1154 je = "show", 1155 He = "out", 1156 Re = { 1157 HIDE: "hide" + De, 1158 HIDDEN: "hidden" + De, 1159 SHOW: "show" + De, 1160 SHOWN: "shown" + De, 1161 INSERTED: "inserted" + De, 1162 CLICK: "click" + De, 1163 FOCUSIN: "focusin" + De, 1164 FOCUSOUT: "focusout" + De, 1165 MOUSEENTER: "mouseenter" + De, 1166 MOUSELEAVE: "mouseleave" + De 1167 }, 1168 xe = "fade", 1169 Fe = "show", 1170 Ue = ".tooltip-inner", 1171 We = ".arrow", 1172 qe = "hover", 1173 Me = "focus", 1174 Ke = "click", 1175 Qe = "manual", 1176 Be = function() { 1177 function i(t, e) { 1178 if ("undefined" == typeof u) throw new TypeError("Bootstrap's tooltips require Popper.js (https://popper.js.org/)"); 1179 this._isEnabled = !0, this._timeout = 0, this._hoverState = "", this._activeTrigger = {}, this._popper = null, this.element = t, this.config = this._getConfig(e), this.tip = null, this._setListeners() 1180 } 1181 var t = i.prototype; 1182 return t.enable = function() { 1183 this._isEnabled = !0 1184 }, t.disable = function() { 1185 this._isEnabled = !1 1186 }, t.toggleEnabled = function() { 1187 this._isEnabled = !this._isEnabled 1188 }, t.toggle = function(t) { 1189 if (this._isEnabled) 1190 if (t) { 1191 var e = this.constructor.DATA_KEY, 1192 n = g(t.currentTarget).data(e); 1193 n || (n = new this.constructor(t.currentTarget, this._getDelegateConfig()), g(t.currentTarget).data(e, n)), n._activeTrigger.click = !n._activeTrigger.click, n._isWithActiveTrigger() ? n._enter(null, n) : n._leave(null, n) 1194 } else { 1195 if (g(this.getTipElement()).hasClass(Fe)) return void this._leave(null, this); 1196 this._enter(null, this) 1197 } 1198 }
1198, t.dispose = function() { 1199 clearTimeout(this._timeout), g.removeData(this.element, this.constructor.DATA_KEY), g(this.element).off(this.constructor.EVENT_KEY), g(this.element).closest(".modal").off("hide.bs.modal"), this.tip && g(this.tip).remove(), this._isEnabled = null, this._timeout = null, this._hoverState = null, (this._activeTrigger = null) !== this._popper && this._popper.destroy(), this._popper = null, this.element = null, this.config = null, this.tip = null 1200 }, t.show = function() { 1201 var e = this; 1202 if ("none" === g(this.element).css("display")) throw new Error("Please use show on visible elements"); 1203 var t = g.Event(this.constructor.Event.SHOW); 1204 if (this.isWithContent() && this._isEnabled) { 1205 g(this.element).trigger(t); 1206 var n = _.findShadowRoot(this.element), 1207 i = g.contains(null !== n ? n : this.element.ownerDocument.documentElement, this.element); 1208 if (t.isDefaultPrevented() || !i) return; 1209 var o = this.getTipElement(), 1210 r = _.getUID(this.constructor.NAME); 1211 o.setAttribute("id", r), this.element.setAttribute("aria-describedby", r), this.setContent(), this.config.animation && g(o).addClass(xe); 1212 var s = "function" == typeof this.config.placement ? this.config.placement.call(this, o, this.element) : this.config.placement, 1213 a = this._getAttachment(s); 1214 this.addAttachmentClass(a); 1215 var l = this._getContainer(); 1216 g(o).data(this.constructor.DATA_KEY, this), g.contains(this.element.ownerDocument.documentElement, this.tip) || g(o).appendTo(l), g(this.element).trigger(this.constructor.Event.INSERTED), this._popper = new u(this.element, o, { 1217 placement: a, 1218 modifiers: { 1219 offset: this._getOffset(), 1220 flip: { 1221 behavior: this.config.fallbackPlacement 1222 }, 1223 arrow: { 1224 element: We 1225 }, 1226 preventOverflow: { 1227 boundariesElement: this.config.boundary 1228 } 1229 }, 1230 onCreate: function(t) { 1231 t.originalPlacement !== t.placement && e._handlePopperPlacementChange(t) 1232 }, 1233 onUpdate: function(t) { 1234 return e._handlePopperPlacementChange(t) 1235 } 1236 }), g(o).addClass(Fe), "ontouchstart" in document.documentElement && g(document.body).children().on("mouseover", null, g.noop); 1237 var c = function() { 1238 e.config.animation && e._fixTransition(); 1239 var t = e._hoverState; 1240 e._hoverState = null, g(e.element).trigger(e.constructor.Event.SHOWN), t === He && e._leave(null, e) 1241 }; 1242 if (g(this.tip).hasClass(xe)) { 1243 var h = _.getTransitionDurationFromElement(this.tip); 1244 g(this.tip).one(_.TRANSITION_END, c).emulateTransitionEnd(h) 1245 } else c() 1246 } 1247 }, t.hide = function(t) { 1248 var e = this, 1249 n = this.getTipElement(), 1250 i = g.Event(this.constructor.Event.HIDE), 1251 o = function() { 1252 e._hoverState !== je && n.parentNode && n.parentNode.removeChild(n), e._cleanTipClass(), e.element.removeAttribute("aria-describedby"), g(e.element).trigger(e.constructor.Event.HIDDEN), null !== e._popper && e._popper.destroy(), t && t() 1253 }; 1254 if (g(this.element).trigger(i), !i.isDefaultPrevented()) { 1255 if (g(n).removeClass(Fe), "ontouchstart" in document.documentElement && g(document.body).children().off("mouseover", null, g.noop), this._activeTrigger[Ke] = !1, this._activeTrigger[Me] = !1, this._activeTrigger[qe] = !1, g(this.tip).hasClass(xe)) { 1256 var r = _.getTransitionDurationFromElement(n); 1257 g(n).one(_.TRANSITION_END, o).emulateTransitionEnd(r) 1258 } else o(); 1259 this._hoverState = "" 1260 } 1261 }, t.update = function() { 1262 null !== this._popper && this._popper.scheduleUpdate() 1263 }, t.isWithContent = function() { 1264 return Boolean(this.getTitle()) 1265 }, t.addAttachmentClass = function(t) { 1266 g(this.getTipElement()).addClass(Ae + "-" + t) 1267 }, t.getTipElement = function() { 1268 return this.tip = this.tip || g(this.config.template)[0], this.tip 1269 }, t.setContent = function() { 1270 var t = this.getTipElement(); 1271 this.setElementContent(g(t.querySelectorAll(Ue)), this.getTitle()), g(t).removeClass(xe + " " + Fe) 1272 }, t.setElementContent = function(t, e) { 1273 "object" != typeof e || !e.nodeType && !e.jquery ? this.config.html ? (this.config.sanitize && (e = Se(e, this.config.whiteList, this.config.sanitizeFn)), t.html(e)) : t.text(e) : this.config.html ? g(e).parent().is(t) || t.empty().append(e) : t.text(g(e).text()) 1274 }, t.getTitle = function() { 1275 var t = this.element.getAttribute("data-original-title"); 1276 return t || (t = "function" == typeof this.config.title ? this.config.title.call(this.element) : this.config.title), t 1277 }, t._getOffset = function() { 1278 var e = this, 1279 t = {}; 1280 return "function" == typeof this.config.offset ? t.fn = function(t) { 1281 return t.offsets = l({}, t.offsets, e.config.offset(t.offsets, e.element) || {}), t 1282 } : t.offset = this.config.offset, t 1283 }, t._getContainer = function() { 1284 return !1 === this.config.container ? document.body : _.isElement(this.config.container) ? g(this.config.container) : g(document).find(this.config.container) 1285 }, t._getAttachment = function(t) { 1286 return Pe[t.toUpperCase()] 1287 }, t._setListeners = function() { 1288 var i = this; 1289 this.config.trigger.split(" ").forEach(function(t) { 1290 if ("click" === t) g(i.element).on(i.constructor.Event.CLICK, i.config.selector, function(t) { 1291 return i.toggle(t) 1292 }); 1293 else if (t !== Qe) { 1294 var e = t === qe ? i.constructor.Event.MOUSEENTER : i.constructor.Event.FOCUSIN, 1295 n = t === qe ? i.constructor.Event.MOUSELEAVE : i.constructor.Event.FOCUSOUT; 1296 g(i.element).on(e, i.config.selector, function(t) { 1297 return i._enter(t) 1298 }).on(n, i.config.selector, function(t) { 1299 return i._leave(t) 1300 }) 1301 } 1302 }), g(this.element).closest(".modal").on("hide.bs.modal", function() { 1303 i.element && i.hide() 1304 }), this.config.selector ? this.config = l({}, this.config, { 1305 trigger: "manual", 1306 selector: "" 1307 }) : this._fixTitle() 1308 }, t._fixTitle = function() { 1309 var t = typeof this.element.getAttribute("data-original-title"); 1310 (this.element.getAttribute("title") || "string" !== t) && (this.element.setAttribute("data-original-title", this.element.getAttribute("title") || ""), this.element.setAttribute("title", "")) 1311 }, t._enter = function(t, e) { 1312 var n = this.constructor.DATA_KEY; 1313 (e = e || g(t.currentTarget).data(n)) || (e = new this.constructor(t.currentTarget, this._getDelegateConfig()), g(t.currentTarget).data(n, e)), t && (e._activeTrigger["focusin" === t.type ? Me : qe] = !0), g(e.getTipElement()).hasClass(Fe) || e._hoverState === je ? e._hoverState = je : (clearTimeout(e._timeout), e._hoverState = je, e.config.delay && e.config.delay.show ? e._timeout = setTimeout(function() { 1314 e._hoverState === je && e.show() 1315 }, e.config.delay.show) : e.show()) 1316 }, t._leave = function(t, e) { 1317 var n = this.constructor.DATA_KEY; 1318 (e = e || g(t.currentTarget).data(n)) || (e = new this.constructor(t.currentTarget, this._getDelegateConfig()), g(t.currentTarget).data(n, e)), t && (e._activeTrigger["focusout" === t.type ? Me : qe] = !1), e._isWithActiveTrigger() || (clearTimeout(e._timeout), e._hoverState = He, e.config.delay && e.config.delay.hide ? e._timeout = setTimeout(function() { 1319 e._hoverState === He && e.hide() 1320 }, e.config.delay.hide) : e.hide()) 1321 }, t._isWithActiveTrigger = function() { 1322 for (var t in this._activeTrigger) 1323 if (this._activeTrigger[t]) return !0; 1324 return !1 1325 }, t._getConfig = function(t) { 1326 var e = g(this.element).data(); 1327 return Object.keys(e).forEach(function(t) { 1328 -1 !== Oe.indexOf(t) && delete e[t] 1329 }), "number" == typeof(t = l({}, this.constructor.Default, e, "object" == typeof t && t ? t : {})).delay && (t.delay = { 1330 show: t.delay, 1331 hide: t.delay 1332 }), "number" == typeof t.title && (t.title = t.title.toString()), "number" == typeof t.content && (t.content = t.content.toString()), _.typeCheckConfig(be, t, this.constructor.DefaultType), t.sanitize && (t.template = Se(t.template, t.whiteList, t.sanitizeFn)), t 1333 }, t._getDelegateConfig = function() { 1334 var t = {}; 1335 if (this.config) 1336 for (var e in this.config) this.constructor.Default[e] !== this.config[e] && (t[e] = this.config[e]); 1337 return t 1338 }, t._cleanTipClass = function() { 1339 var t = g(this.getTipElement()), 1340 e = t.attr("class").match(Ne); 1341 null !== e && e.length && t.removeClass(e.join("")) 1342 }, t._handlePopperPlacementChange = function(t) { 1343 var e = t.instance; 1344 this.tip = e.popper, this._cleanTipClass(), this.addAttachmentClass(this._getAttachment(t.placement)) 1345 }, t._fixTransition = function() { 1346 var t = this.getTipElement(), 1347 e = this.config.animation; 1348 null === t.getAttribute("x-placement") && (g(t).removeClass(xe), this.config.animation = !1, this.hide(), this.show(), this.config.animation = e) 1349 }, i._jQueryInterface = function(n) { 1350 return this.each(function() { 1351 var t = g(this).data(Ie), 1352 e = "object" == typeof n && n; 1353 if ((t || !/dispose|hide/.test(n)) && (t || (t = new i(this, e), g(this).data(Ie, t)), "string" == typeof n)) { 1354 if ("undefined" == typeof t[n]) throw new TypeError('No method n
1354amed "' + n + '"'); 1355 t[n]() 1356 } 1357 }) 1358 }, s(i, null, [{ 1359 key: "VERSION", 1360 get: function() { 1361 return "4.3.1" 1362 } 1363 }, { 1364 key: "Default", 1365 get: function() { 1366 return Le 1367 } 1368 }, { 1369 key: "NAME", 1370 get: function() { 1371 return be 1372 } 1373 }, { 1374 key: "DATA_KEY", 1375 get: function() { 1376 return Ie 1377 } 1378 }, { 1379 key: "Event", 1380 get: function() { 1381 return Re 1382 } 1383 }, { 1384 key: "EVENT_KEY", 1385 get: function() { 1386 return De 1387 } 1388 }, { 1389 key: "DefaultType", 1390 get: function() { 1391 return ke 1392 } 1393 }]), i 1394 }(); 1395 g.fn[be] = Be._jQueryInterface, g.fn[be].Constructor = Be, g.fn[be].noConflict = function() { 1396 return g.fn[be] = we, Be._jQueryInterface 1397 }; 1398 var Ve = "popover", 1399 Ye = "bs.popover", 1400 ze = "." + Ye, 1401 Xe = g.fn[Ve], 1402 $e = "bs-popover", 1403 Ge = new RegExp("(^|\\s)" + $e + "\\S+", "g"), 1404 Je = l({}, Be.Default, { 1405 placement: "right", 1406 trigger: "click", 1407 content: "", 1408 template: '<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>' 1409 }), 1410 Ze = l({}, Be.DefaultType, { 1411 content: "(string|element|function)" 1412 }), 1413 tn = "fade", 1414 en = "show", 1415 nn = ".popover-header", 1416 on = ".popover-body", 1417 rn = { 1418 HIDE: "hide" + ze, 1419 HIDDEN: "hidden" + ze, 1420 SHOW: "show" + ze, 1421 SHOWN: "shown" + ze, 1422 INSERTED: "inserted" + ze, 1423 CLICK: "click" + ze, 1424 FOCUSIN: "focusin" + ze, 1425 FOCUSOUT: "focusout" + ze, 1426 MOUSEENTER: "mouseenter" + ze, 1427 MOUSELEAVE: "mouseleave" + ze 1428 }, 1429 sn = function(t) { 1430 var e, n; 1431 1432 function i() { 1433 return t.apply(this, arguments) || this 1434 } 1435 n = t, (e = i).prototype = Object.create(n.prototype), (e.prototype.constructor = e).__proto__ = n; 1436 var o = i.prototype; 1437 return o.isWithContent = function() { 1438 return this.getTitle() || this._getContent() 1439 }, o.addAttachmentClass = function(t) { 1440 g(this.getTipElement()).addClass($e + "-" + t) 1441 }, o.getTipElement = function() { 1442 return this.tip = this.tip || g(this.config.template)[0], this.tip 1443 }, o.setContent = function() { 1444 var t = g(this.getTipElement()); 1445 this.setElementContent(t.find(nn), this.getTitle()); 1446 var e = this._getContent(); 1447 "function" == typeof e && (e = e.call(this.element)), this.setElementContent(t.find(on), e), t.removeClass(tn + " " + en) 1448 }, o._getContent = function() { 1449 return this.element.getAttribute("data-content") || this.config.content 1450 }, o._cleanTipClass = function() { 1451 var t = g(this.getTipElement()), 1452 e = t.attr("class").match(Ge); 1453 null !== e && 0 < e.length && t.removeClass(e.join("")) 1454 }, i._jQueryInterface = function(n) { 1455 return this.each(function() { 1456 var t = g(this).data(Ye), 1457 e = "object" == typeof n ? n : null; 1458 if ((t || !/dispose|hide/.test(n)) && (t || (t = new i(this, e), g(this).data(Ye, t)), "string" == typeof n)) { 1459 if ("undefined" == typeof t[n]) throw new TypeError('No method n
1459amed "' + n + '"'); 1460 t[n]() 1461 } 1462 }) 1463 }, s(i, null, [{ 1464 key: "VERSION", 1465 get: function() { 1466 return "4.3.1" 1467 } 1468 }, { 1469 key: "Default", 1470 get: function() { 1471 return Je 1472 } 1473 }, { 1474 key: "NAME", 1475 get: function() { 1476 return Ve 1477 } 1478 }, { 1479 key: "DATA_KEY", 1480 get: function() { 1481 return Ye 1482 } 1483 }, { 1484 key: "Event", 1485 get: function() { 1486 return rn 1487 } 1488 }, { 1489 key: "EVENT_KEY", 1490 get: function() { 1491 return ze 1492 } 1493 }, { 1494 key: "DefaultType", 1495 get: function() { 1496 return Ze 1497 } 1498 }]), i 1499 }(Be); 1500 g.fn[Ve] = sn._jQueryInterface, g.fn[Ve].Constructor = sn, g.fn[Ve].noConflict = function() { 1501 return g.fn[Ve] = Xe, sn._jQueryInterface 1502 }; 1503 var an = "scrollspy", 1504 ln = "bs.scrollspy", 1505 cn = "." + ln, 1506 hn = g.fn[an], 1507 un = { 1508 offset: 10, 1509 method: "auto", 1510 target: "" 1511 }, 1512 fn = { 1513 offset: "number", 1514 method: "string", 1515 target: "(string|element)" 1516 }, 1517 dn = { 1518 ACTIVATE: "activate" + cn, 1519 SCROLL: "scroll" + cn, 1520 LOAD_DATA_API: "load" + cn + ".data-api" 1521 }, 1522 gn = "dropdown-item", 1523 _n = "active", 1524 mn = '[data-spy="scroll"]', 1525 pn = ".nav, .list-group", 1526 vn = ".nav-link", 1527 yn = ".nav-item", 1528 En = ".list-group-item", 1529 Cn = ".dropdown", 1530 Tn = ".dropdown-item", 1531 Sn = ".dropdown-toggle", 1532 bn = "offset", 1533 In = "position", 1534 Dn = function() { 1535 function n(t, e) { 1536 var n = this; 1537 this._element = t, this._scrollElement = "BODY" === t.tagName ? window : t, this._config = this._getConfig(e), this._selector = this._config.target + " " + vn + "," + this._config.target + " " + En + "," + this._config.target + " " + Tn, this._offsets = [], this._targets = [], this._activeTarget = null, this._scrollHeight = 0, g(this._scrollElement).on(dn.SCROLL, function(t) { 1538 return n._process(t) 1539 }), this.refresh(), this._process() 1540 } 1541 var t = n.prototype; 1542 return t.refresh = function() { 1543 var e = this, 1544 t = this._scrollElement === this._scrollElement.window ? bn : In, 1545 o = "auto" === this._config.method ? t : this._config.method, 1546 r = o === In ? this._getScrollTop() : 0; 1547 this._offsets = [], this._targets = [], this._scrollHeight = this._getScrollHeight(), [].slice.call(document.querySelectorAll(this._selector)).map(function(t) { 1548 var e, n = _.getSelectorFromElement(t); 1549 if (n && (e = document.querySelector(n)), e) { 1550 var i = e.getBoundingClientRect(); 1551 if (i.width || i.height) return [g(e)[o]().top + r, n] 1552 } 1553 return null 1554 }).filter(function(t) { 1555 return t 1556 }).sort(function(t, e) { 1557 return t[0] - e[0] 1558 }
1558).forEach(function(t) { 1559 e._offsets.push(t[0]), e._targets.push(t[1]) 1560 }) 1561 }, t.dispose = function() { 1562 g.removeData(this._element, ln), g(this._scrollElement).off(cn), this._element = null, this._scrollElement = null, this._config = null, this._selector = null, this._offsets = null, this._targets = null, this._activeTarget = null, this._scrollHeight = null 1563 }, t._getConfig = function(t) { 1564 if ("string" != typeof(t = l({}, un, "object" == typeof t && t ? t : {})).target) { 1565 var e = g(t.target).attr("id"); 1566 e || (e = _.getUID(an), g(t.target).attr("id", e)), t.target = "#" + e 1567 } 1568 return _.typeCheckConfig(an, t, fn), t 1569 }, t._getScrollTop = function() { 1570 return this._scrollElement === window ? this._scrollElement.pageYOffset : this._scrollElement.scrollTop 1571 }, t._getScrollHeight = function() { 1572 return this._scrollElement.scrollHeight || Math.max(document.body.scrollHeight, document.documentElement.scrollHeight) 1573 }, t._getOffsetHeight = function() { 1574 return this._scrollElement === window ? window.innerHeight : this._scrollElement.getBoundingClientRect().height 1575 }, t._process = function() { 1576 var t = this._getScrollTop() + this._config.offset, 1577 e = this._getScrollHeight(), 1578 n = this._config.offset + e - this._getOffsetHeight(); 1579 if (this._scrollHeight !== e && this.refresh(), n <= t) { 1580 var i = this._targets[this._targets.length - 1]; 1581 this._activeTarget !== i && this._activate(i) 1582 } else { 1583 if (this._activeTarget && t < this._offsets[0] && 0 < this._offsets[0]) return this._activeTarget = null, void this._clear(); 1584 for (var o = this._offsets.length; o--;) { 1585 this._activeTarget !== this._targets[o] && t >= this._offsets[o] && ("undefined" == typeof this._offsets[o + 1] || t < this._offsets[o + 1]) && this._activate(this._targets[o]) 1586 } 1587 } 1588 }, t._activate = function(e) { 1589 this._activeTarget = e, this._clear(); 1590 var t = this._selector.split(",").map(function(t) { 1591 return t + '[data-target="' + e + '"],' + t + '[href="' + e + '"]' 1592 }), 1593 n = g([].slice.call(document.querySelectorAll(t.join(",")))); 1594 n.hasClass(gn) ? (n.closest(Cn).find(Sn).addClass(_n), n.addClass(_n)) : (n.addClass(_n), n.parents(pn).prev(vn + ", " + En).addClass(_n), n.parents(pn).prev(yn).children(vn).addClass(_n)), g(this._scrollElement).trigger(dn.ACTIVATE, { 1595 relatedTarget: e 1596 }) 1597 }, t._clear = function() { 1598 [].slice.call(document.querySelectorAll(this._selector)).filter(function(t) { 1599 return t.classList.contains(_n) 1600 }
1600).forEach(function(t) { 1601 return t.classList.remove(_n) 1602 }) 1603 }, n._jQueryInterface = function(e) { 1604 return this.each(function() { 1605 var t = g(this).data(ln); 1606 if (t || (t = new n(this, "object" == typeof e && e), g(this).data(ln, t)), "string" == typeof e) { 1607 if ("undefined" == typeof t[e]) throw new TypeError('No method named "' + e + '"'); 1608 t[e]() 1609 } 1610 }) 1611 }, s(n, null, [{ 1612 key: "VERSION", 1613 get: function() { 1614 return "4.3.1" 1615 } 1616 }, { 1617 key: "Default", 1618 get: function() { 1619 return un 1620 } 1621 }]), n 1622 }(); 1623 g(window).on(dn.LOAD_DATA_API, function() { 1624 for (var t = [].slice.call(document.querySelectorAll(mn)), e = t.length; e--;) { 1625 var n = g(t[e]); 1626 Dn._jQueryInterface.call(n, n.data()) 1627 } 1628 }), g.fn[an] = Dn._jQueryInterface, g.fn[an].Constructor = Dn, g.fn[an].noConflict = function() { 1629 return g.fn[an] = hn, Dn._jQueryInterface 1630 }; 1631 var wn = "bs.tab", 1632 An = "." + wn, 1633 Nn = g.fn.tab, 1634 On = { 1635 HIDE: "hide" + An, 1636 HIDDEN: "hidden" + An, 1637 SHOW: "show" + An, 1638 SHOWN: "shown" + An, 1639 CLICK_DATA_API: "click" + An + ".data-api" 1640 }, 1641 kn = "dropdown-menu", 1642 Pn = "active", 1643 Ln = "disabled", 1644 jn = "fade", 1645 Hn = "show", 1646 Rn = ".dropdown", 1647 xn = ".nav, .list-group", 1648 Fn = ".active", 1649 Un = "> li > .active", 1650 Wn = '[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]', 1651 qn = ".dropdown-toggle", 1652 Mn = "> .dropdown-menu .active", 1653 Kn = function() { 1654 function i(t) { 1655 this._element = t 1656 } 1657 var t = i.prototype; 1658 return t.show = function() { 1659 var n = this; 1660 if (!(this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && g(this._element).hasClass(Pn) || g(this._element).hasClass(Ln))) { 1661 var t, i, e = g(this._element).closest(xn)[0], 1662 o = _.getSelectorFromElement(this._element); 1663 if (e) { 1664 var r = "UL" === e.nodeName || "OL" === e.nodeName ? Un : Fn; 1665 i = (i = g.makeArray(g(e).find(r)))[i.length - 1] 1666 } 1667 var s = g.Event(On.HIDE, { 1668 relatedTarget: this._element 1669 }), 1670 a = g.Event(On.SHOW, { 1671 relatedTarget: i 1672 }); 1673 if (i && g(i).trigger(s), g(this._element).trigger(a), !a.isDefaultPrevented() && !s.isDefaultPrevented()) { 1674 o && (t = document.querySelector(o)), this._activate(this._element, e); 1675 var l = function() { 1676 var t = g.Event(On.HIDDEN, { 1677 relatedTarget: n._element 1678 }), 1679 e = g.Event(On.SHOWN, { 1680 relatedTarget: i 1681 }); 1682 g(i).trigger(t), g(n._element).trigger(e) 1683 }; 1684 t ? this._activate(t, t.parentNode, l) : l() 1685 } 1686 } 1687 }, t.dispose = function() { 1688 g.removeData(this._element, wn), this._element = null 1689 }, t._activate = function(t, e, n) { 1690 var i = this, 1691 o = (!e || "UL" !== e.nodeName && "OL" !== e.nodeName ? g(e).children(Fn) : g(e).find(Un))[0], 1692 r = n && o && g(o).hasClass(jn), 1693 s = function() { 1694 return i._transitionComplete(t, o, n) 1695 }; 1696 if (o && r) { 1697 var a = _.getTransitionDurationFromElement(o); 1698 g(o).removeClass(Hn).one(_.TRANSITION_END, s).emulateTransitionEnd(a) 1699 } else s() 1700 }, t._transitionComplete = function(t, e, n) { 1701 if (e) { 1702 g(e).removeClass(Pn); 1703 var i = g(e.parentNode).find(Mn)[0]; 1704 i && g(i).removeClass(Pn), "tab" === e.getAttribute("role") && e.setAttribute("aria-selected", !1) 1705 } 1706 if (g(t).addClass(Pn), "tab" === t.getAttribute("role") && t.setAttribute("aria-selected", !0), _.reflow(t), t.classList.contains(jn) && t.classList.add(Hn), t.parentNode && g(t.parentNode).hasClass(kn)) { 1707 var o = g(t).closest(Rn)[0]; 1708 if (o) { 1709 var r = [].slice.call(o.querySelectorAll(qn)); 1710 g(r).addClass(Pn) 1711 } 1712 t.setAttribute("aria-expanded", !0) 1713 } 1714 n && n() 1715 }, i._jQueryInterface = function(n) { 1716 return this.each(function() { 1717 var t = g(this), 1718 e = t.data(wn); 1719 if (e || (e = new i(this), t.data(wn, e)), "string" == typeof n) { 1720 if ("undefined" == typeof e[n]) throw new TypeError('No method n
1720amed "' + n + '"'); 1721 e[n]() 1722 } 1723 }) 1724 }, s(i, null, [{ 1725 key: "VERSION", 1726 get: function() { 1727 return "4.3.1" 1728 } 1729 }]), i 1730 }(); 1731 g(document).on(On.CLICK_DATA_API, Wn, function(t) { 1732 t.preventDefault(), Kn._jQueryInterface.call(g(this), "show") 1733 }), g.fn.tab = Kn._jQueryInterface, g.fn.tab.Constructor = Kn, g.fn.tab.noConflict = function() { 1734 return g.fn.tab = Nn, Kn._jQueryInterface 1735 }; 1736 var Qn = "toast", 1737 Bn = "bs.toast", 1738 Vn = "." + Bn, 1739 Yn = g.fn[Qn], 1740 zn = { 1741 CLICK_DISMISS: "click.dismiss" + Vn, 1742 HIDE: "hide" + Vn, 1743 HIDDEN: "hidden" + Vn, 1744 SHOW: "show" + Vn, 1745 SHOWN: "shown" + Vn 1746 }, 1747 Xn = "fade", 1748 $n = "hide", 1749 Gn = "show", 1750 Jn = "showing", 1751 Zn = { 1752 animation: "boolean", 1753 autohide: "boolean", 1754 delay: "number" 1755 }, 1756 ti = { 1757 animation: !0, 1758 autohide: !0, 1759 delay: 500 1760 }, 1761 ei = '[data-dismiss="toast"]', 1762 ni = function() { 1763 function i(t, e) { 1764 this._element = t, this._config = this._getConfig(e), this._timeout = null, this._setListeners() 1765 } 1766 var t = i.prototype; 1767 return t.show = function() { 1768 var t = this; 1769 g(this._element).trigger(zn.SHOW), this._config.animation && this._element.classList.add(Xn); 1770 var e = function() { 1771 t._element.classList.remove(Jn), t._element.classList.add(Gn), g(t._element).trigger(zn.SHOWN), t._config.autohide && t.hide() 1772 }; 1773 if (this._element.classList.remove($n), this._element.classList.add(Jn), this._config.animation) { 1774 var n = _.getTransitionDurationFromElement(this._element); 1775 g(this._element).one(_.TRANSITION_END, e).emulateTransitionEnd(n) 1776 } else e() 1777 }, t.hide = function(t) { 1778 var e = this; 1779 this._element.classList.contains(Gn) && (g(this._element).trigger(zn.HIDE), t ? this._close() : this._timeout = setTimeout(function() { 1780 e._close() 1781 }, this._config.delay)) 1782 }, t.dispose = function() { 1783 clearTimeout(this._timeout), this._timeout = null, this._element.classList.contains(Gn) && this._element.classList.remove(Gn), g(this._element).off(zn.CLICK_DISMISS), g.removeData(this._element, Bn), this._element = null, this._config = null 1784 }, t._getConfig = function(t) { 1785 return t = l({}, ti, g(this._element).data(), "object" == typeof t && t ? t : {}), _.typeCheckConfig(Qn, t, this.constructor.DefaultType), t 1786 }, t._setListeners = function() { 1787 var t = this; 1788 g(this._element).on(zn.CLICK_DISMISS, ei, function() { 1789 return t.hide(!0) 1790 }) 1791 }, t._close = function() { 1792 var t = this, 1793 e = function() { 1794 t._element.classList.add($n), g(t._element).trigger(zn.HIDDEN) 1795 }; 1796 if (this._element.classList.remove(Gn), this._config.animation) { 1797 var n = _.getTransitionDurationFromElement(this._element); 1798 g(this._element).one(_.TRANSITION_END, e).emulateTransitionEnd(n) 1799 } else e() 1800 }, i._jQueryInterface = function(n) { 1801 return this.each(function() { 1802 var t = g(this), 1803 e = t.data(Bn); 1804 if (e || (e = new i(this, "object" == typeof n && n), t.data(Bn, e)), "string" == typeof n) { 1805 if ("undefined" == typeof e[n]) throw new TypeError('No method named "' + n + '"'); 1806 e[n](this) 1807 } 1808 }) 1809 }, s(i, null, [{ 1810 key: "VERSION", 1811 get: function() { 1812 return "4.3.1" 1813 } 1814 }, { 1815 key: "DefaultType", 1816 get: function() { 1817 return Zn 1818 } 1819 }, { 1820 key: "Default", 1821 get: function() { 1822 return ti 1823 } 1824 }]), i 1825 }(); 1826 g.fn[Qn] = ni._jQueryInterface, g.fn[Qn].Constructor = ni, g.fn[Qn].noConflict = function() { 1827 return g.fn[Qn] = Yn, ni._jQueryInterface 1828 }, 1829 function() { 1830 if ("undefined" == typeof g) throw new TypeError("Bootstrap's JavaScript requires jQuery. jQuery must be included before Bootstrap's JavaScript."); 1831 var t = g.fn.jquery.split(" ")[0].split("."); 1832 if (t[0] < 2 && t[1] < 9 || 1 === t[0] && 9 === t[1] && t[2] < 1 || 4 <= t[0]) throw new Error("Bootstrap's JavaScript requires at least jQuery v1.9.1 but less than v4.0.0") 1833 }(), t.Util = _, t.Alert = p, t.Button = P, t.Carousel = lt, t.Collapse = bt, t.Dropdown = Jt, t.Modal = ve, t.Popover = sn, t.Scrollspy = Dn, t.Tab = Kn, t.Toast = ni, t.Tooltip = Be, Object.defineProperty(t, "__esModule", { 1834 value: !0 1835 }) 1836}); 1837//# sourceMappingURL=bootstrap.min.js.map
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.