vendor: 15,580 bytes, lines 1-370
1/*! 2 * Bootstrap v5.3.7 (https://getbootstrap.com/) 3 * Copyright 2011-2025 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) 4 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) 5 */ 6!function (t, e) { 7 "object" == typeof exports && "undefined" != typeof module ? module.exports = e() : "function" == typeof define && define.amd ? define(e) : (t = "undefined" != typeof globalThis ? globalThis : t || self).bootstrap = e() 8}(this, (function () { 9 "use strict"; 10 const t = new Map, e = { 11 set(e, i, n) { 12 t.has(e) || t.set(e, new Map); 13 const s = t.get(e); 14 s.has(i) || 0 === s.size ? s.set(i, n) : console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(s.keys())[0]}.`) 15 }, get: (e, i) => t.has(e) && t.get(e).get(i) || null, remove(e, i) { 16 if (!t.has(e)) return; 17 const n = t.get(e); 18 n.delete(i), 0 === n.size && t.delete(e) 19 } 20 }, i = "transitionend", 21 n = t => (t && window.CSS && window.CSS.escape && (t = t.replace(/#([^\s"#']+)/g, ((t, e) => `#${CSS.escape(e)}`))), t), 22 s = t => { 23 t.dispatchEvent(new Event(i)) 24 }, o = t => !(!t || "object" != typeof t) && (void 0 !== t.jquery && (t = t[0]), void 0 !== t.nodeType), 25 r = t => o(t) ? t.jquery ? t[0] : t : "string" == typeof t && t.length > 0 ? document.querySelector(n(t)) : null, 26 a = t => { 27 if (!o(t) || 0 === t.getClientRects().length) return !1; 28 const e = "visible" === getComputedStyle(t).getPropertyValue("visibility"), 29 i = t.closest("details:not([open])"); 30 if (!i) return e; 31 if (i !== t) { 32 const e = t.closest("summary"); 33 if (e && e.parentNode !== i) return !1; 34 if (null === e) return !1 35 } 36 return e 37 }, 38 l = t => !t || t.nodeType !== Node.ELEMENT_NODE || !!t.classList.contains("disabled") || (void 0 !== t.disabled ? t.disabled : t.hasAttribute("disabled") && "false" !== t.getAttribute("disabled")), 39 c = t => { 40 if (!document.documentElement.attachShadow) return null; 41 if ("function" == typeof t.getRootNode) { 42 const e = t.getRootNode(); 43 return e instanceof ShadowRoot ? e : null 44 } 45 return t instanceof ShadowRoot ? t : t.parentNode ? c(t.parentNode) : null 46 }, h = () => { 47 }, d = t => { 48 t.offsetHeight 49 }, u = () => window.jQuery && !document.body.hasAttribute("data-bs-no-jquery") ? window.jQuery : null, f = [], 50 p = () => "rtl" === document.documentElement.dir, m = t => { 51 var e; 52 e = () => { 53 const e = u(); 54 if (e) { 55 const i = t.NAME, n = e.fn[i]; 56 e.fn[i] = t.jQueryInterface, e.fn[i].Constructor = t, e.fn[i].noConflict = () => (e.fn[i] = n, t.jQueryInterface) 57 } 58 }, "loading" === document.readyState ? (f.length || document.addEventListener("DOMContentLoaded", (() => { 59 for (const t of f) t() 60 })), f.push(e)) : e() 61 }, g = (t, e = [], i = t) => "function" == typeof t ? t.call(...e) : i, _ = (t, e, n = !0) => { 62 if (!n) return void g(t); 63 const o = (t => { 64 if (!t) return 0; 65 let {transitionDuration: e, transitionDelay: i} = window.getComputedStyle(t); 66 const n = Number.parseFloat(e), s = Number.parseFloat(i); 67 return n || s ? (e = e.split(",")[0], i = i.split(",")[0], 1e3 * (Number.parseFloat(e) + Number.parseFloat(i))) : 0 68 })(e) + 5; 69 let r = !1; 70 const a = ({target: n}) => { 71 n === e && (r = !0, e.removeEventListener(i, a), g(t)) 72 }; 73 e.addEventListener(i, a), setTimeout((() => { 74 r || s(e) 75 }), o) 76 }, b = (t, e, i, n) => { 77 const s = t.length; 78 let o = t.indexOf(e); 79 return -1 === o ? !i && n ? t[s - 1] : t[0] : (o += i ? 1 : -1, n && (o = (o + s) % s), t[Math.max(0, Math.min(o, s - 1))]) 80 }, v = /[^.]*(?=\..*)\.|.*/, y = /\..*/, w = /::\d+$/, A = {}; 81 let E = 1; 82 const T = {mouseenter: "mouseover", mouseleave: "mouseout"}, 83 C = new Set(["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"]); 84 85 function O(t, e) { 86 return e && `${e}::${E++}` || t.uidEvent || E++ 87 } 88 89 function x(t) { 90 const e = O(t); 91 return t.uidEvent = e, A[e] = A[e] || {}, A[e] 92 } 93 94 function k(t, e, i = null) { 95 return Object.values(t).find((t => t.callable === e && t.delegationSelector === i)) 96 } 97 98 function L(t, e, i) { 99 const n = "string" == typeof e, s = n ? i : e || i; 100 let o = I(t); 101 return C.has(o) || (o = t), [n, s, o] 102 } 103 104 function S(t, e, i, n, s) { 105 if ("string" != typeof e || !t) return; 106 let [o, r, a] = L(e, i, n); 107 if (e in T) { 108 const t = t => function (e) { 109 if (!e.relatedTarget || e.relatedTarget !== e.delegateTarget && !e.delegateTarget.contains(e.relatedTarget)) return t.call(this, e) 110 }; 111 r = t(r) 112 } 113 const l = x(t), c = l[a] || (l[a] = {}), h = k(c, r, o ? i : null); 114 if (h) return void (h.oneOff = h.oneOff && s); 115 const d = O(r, e.replace(v, "")), u = o ? function (t, e, i) { 116 return function n(s) { 117 const o = t.querySelectorAll(e); 118 for (let {target: r} = s; r && r !== this; r = r.parentNode) for (const a of o) if (a === r) return P(s, {delegateTarget: r}), n.oneOff && N.off(t, s.type, e, i), i.apply(r, [s]) 119 } 120 }(t, i, r) : function (t, e) { 121 return function i(n) { 122 return P(n, {delegateTarget: t}), i.oneOff && N.off(t, n.type, e), e.apply(t, [n]) 123 } 124 }(t, r); 125 u.delegationSelector = o ? i : null, u.callable = r, u.oneOff = s, u.uidEvent = d, c[d] = u, t.addEventListener(a, u, o) 126 } 127 128 function D(t, e, i, n, s) { 129 const o = k(e[i], n, s); 130 o && (t.removeEventListener(i, o, Boolean(s)), delete e[i][o.uidEvent]) 131 } 132 133 function $(t, e, i, n) { 134 const s = e[i] || {}; 135 for (const [o, r] of Object.entries(s)) o.includes(n) && D(t, e, i, r.callable, r.delegationSelector) 136 } 137 138 function I(t) { 139 return t = t.replace(y, ""), T[t] || t 140 } 141 142 const N = { 143 on(t, e, i, n) { 144 S(t, e, i, n, !1) 145 }, one(t, e, i, n) { 146 S(t, e, i, n, !0) 147 }, off(t, e, i, n) { 148 if ("string" != typeof e || !t) return; 149 const [s, o, r] = L(e, i, n), a = r !== e, l = x(t), c = l[r] || {}, h = e.startsWith("."); 150 if (void 0 === o) { 151 if (h) for (const i of Object.keys(l)) $(t, l, i, e.slice(1)); 152 for (const [i, n] of Object.entries(c)) { 153 const s = i.replace(w, ""); 154 a && !e.includes(s) || D(t, l, r, n.callable, n.delegationSelector) 155 } 156 } else { 157 if (!Object.keys(c).length) return; 158 D(t, l, r, o, s ? i : null) 159 } 160 }, trigger(t, e, i) { 161 if ("string" != typeof e || !t) return null; 162 const n = u(); 163 let s = null, o = !0, r = !0, a = !1; 164 e !== I(e) && n && (s = n.Event(e, i), n(t).trigger(s), o = !s.isPropagationStopped(), r = !s.isImmediatePropagationStopped(), a = s.isDefaultPrevented()); 165 const l = P(new Event(e, {bubbles: o, cancelable: !0}), i); 166 return a && l.preventDefault(), r && t.dispatchEvent(l), l.defaultPrevented && s && s.preventDefault(), l 167 } 168 }; 169 170 function P(t, e = {}) { 171 for (const [i, n] of Object.entries(e)) try { 172 t[i] = n 173 } catch (e) { 174 Object.defineProperty(t, i, {configurable: !0, get: () => n}) 175 } 176 return t 177 } 178 179 function j(t) { 180 if ("true" === t) return !0; 181 if ("false" === t) return !1; 182 if (t === Number(t).toString()) return Number(t); 183 if ("" === t || "null" === t) return null; 184 if ("string" != typeof t) return t; 185 try { 186 return JSON.parse(decodeURIComponent(t)) 187 } catch (e) { 188 return t 189 } 190 } 191 192 function M(t) { 193 return t.replace(/[A-Z]/g, (t => `-${t.toLowerCase()}`)) 194 } 195 196 const F = { 197 setDataAttribute(t, e, i) { 198 t.setAttribute(`data-bs-${M(e)}`, i) 199 }, removeDataAttribute(t, e) { 200 t.removeAttribute(`data-bs-${M(e)}`) 201 }, getDataAttributes(t) { 202 if (!t) return {}; 203 const e = {}, i = Object.keys(t.dataset).filter((t => t.startsWith("bs") && !t.startsWith("bsConfig"))); 204 for (const n of i) { 205 let i = n.replace(/^bs/, ""); 206 i = i.charAt(0).toLowerCase() + i.slice(1), e[i] = j(t.dataset[n]) 207 } 208 return e 209 }, getDataAttribute: (t, e) => j(t.getAttribute(`data-bs-${M(e)}`)) 210 }; 211 212 class H { 213 static get Default() { 214 return {} 215 } 216 217 static get DefaultType() { 218 return {} 219 } 220 221 static get NAME() { 222 throw new Error('You have to implement the static method "NAME", for each component!') 223 } 224 225 _getConfig(t) { 226 return t = this._mergeConfigObj(t), t = this._configAfterMerge(t), this._typeCheckConfig(t), t 227 } 228 229 _configAfterMerge(t) { 230 return t 231 } 232 233 _mergeConfigObj(t, e) { 234 const i = o(e) ? F.getDataAttribute(e, "config") : {}; 235 return {...this.constructor.Default, ..."object" == typeof i ? i : {}, ...o(e) ? F.getDataAttributes(e) : {}, ..."object" == typeof t ? t : {}} 236 } 237 238 _typeCheckConfig(t, e = this.constructor.DefaultType) { 239 for (const [n, s] of Object.entries(e)) { 240 const e = t[n], 241 r = o(e) ? "element" : null == (i = e) ? `${i}` : Object.prototype.toString.call(i).match(/\s([a-z]+)/i)[1].toLowerCase(); 242 if (!new RegExp(s).test(r)) throw new TypeError(`${this.constructor.NAME.toUpperCase()}: Option "${n}" provided type "${r}" but expected type "${s}".`) 243 } 244 var i 245 } 246 } 247 248 class W extends H { 249 constructor(t, i) { 250 super(), (t = r(t)) && (this._element = t, this._config = this._getConfig(i), e.set(this._element, this.constructor.DATA_KEY, this)) 251 } 252 253 dispose() { 254 e.remove(this._element, this.constructor.DATA_KEY), N.off(this._element, this.constructor.EVENT_KEY); 255 for (const t of Object.getOwnPropertyNames(this)) this[t] = null 256 } 257 258 _queueCallback(t, e, i = !0) { 259 _(t, e, i) 260 } 261 262 _getConfig(t) { 263 return t = this._mergeConfigObj(t, this._element), t = this._configAfterMerge(t), this._typeCheckConfig(t), t 264 } 265 266 static getInstance(t) { 267 return e.get(r(t), this.DATA_KEY) 268 } 269 270 static getOrCreateInstance(t, e = {}) { 271 return this.getInstance(t) || new this(t, "object" == typeof e ? e : null) 272 } 273 274 static get VERSION() { 275 return "5.3.7" 276 } 277 278 static get DATA_KEY() { 279 return `bs.${this.NAME}` 280 } 281 282 static get EVENT_KEY() { 283 return `.${this.DATA_KEY}` 284 } 285 286 static eventName(t) { 287 return `${t}${this.EVENT_KEY}` 288 } 289 } 290 291 const B = t => { 292 let e = t.getAttribute("data-bs-target"); 293 if (!e || "#" === e) { 294 let i = t.getAttribute("href"); 295 if (!i || !i.includes("#") && !i.startsWith(".")) return null; 296 i.includes("#") && !i.startsWith("#") && (i = `#${i.split("#")[1]}`), e = i && "#" !== i ? i.trim() : null 297 } 298 return e ? e.split(",").map((t => n(t))).join(",") : null 299 }, z = { 300 find: (t, e = document.documentElement) => [].concat(...Element.prototype.querySelectorAll.call(e, t)), 301 findOne: (t, e = document.documentElement) => Element.prototype.querySelector.call(e, t), 302 children: (t, e) => [].concat(...t.children).filter((t => t.matches(e))), 303 parents(t, e) { 304 const i = []; 305 let n = t.parentNode.closest(e); 306 for (; n;) i.push(n), n = n.parentNode.closest(e); 307 return i 308 }, 309 prev(t, e) { 310 let i = t.previousElementSibling; 311 for (; i;) { 312 if (i.matches(e)) return [i]; 313 i = i.previousElementSibling 314 } 315 return [] 316 }, 317 next(t, e) { 318 let i = t.nextElementSibling; 319 for (; i;) { 320 if (i.matches(e)) return [i]; 321 i = i.nextElementSibling 322 } 323 return [] 324 }, 325 focusableChildren(t) { 326 const e = ["a", "button", "input", "textarea", "select", "details", "[tabindex]", '[contenteditable="true"]'].map((t => `${t}:not([tabindex^="-"])`)).join(","); 327 return this.find(e, t).filter((t => !l(t) && a(t))) 328 }, 329 getSelectorFromElement(t) { 330 const e = B(t); 331 return e && z.findOne(e) ? e : null 332 }, 333 getElementFromSelector(t) { 334 const e = B(t); 335 return e ? z.findOne(e) : null 336 }, 337 getMultipleElementsFromSelector(t) { 338 const e = B(t); 339 return e ? z.find(e) : [] 340 } 341 }, R = (t, e = "hide") => { 342 const i = `click.dismiss${t.EVENT_KEY}`, n = t.NAME; 343 N.on(document, i, `[data-bs-dismiss="${n}"]`, (function (i) { 344 if (["A", "AREA"].includes(this.tagName) && i.preventDefault(), l(this)) return; 345 const s = z.getElementFromSelector(this) || this.closest(`.${n}`); 346 t.getOrCreateInstance(s)[e]() 347 })) 348 }, q = ".bs.alert", V = `close${q}`, K = `closed${q}`; 349 350 class Q extends W { 351 static get NAME() { 352 return "alert" 353 } 354 355 close() { 356 if (N.trigger(this._element, V).defaultPrevented) return; 357 this._element.classList.remove("show"); 358 const t = this._element.classList.contains("fade"); 359 this._queueCallback((() => this._destroyElement()), this._element, t) 360 } 361 362 _destroyElement() { 363 this._element.remove(), N.trigger(this._element, K), this.dispose() 364 } 365 366 static jQueryInterface(t) { 367 return this.each((function () { 368 const e = Q.getOrCreateInstance(this); 369 if ("string" == typeof t) { 370 if (void 0 === e[t] || t.startsWith("_") || "constructor" === t) throw new TypeError(`No method n
370amed "${t}"`); 371 e[t](this) 372 } 373 })) 374 } 375 } 376 377 R(Q, "close"), m(Q); 378 const X = '[data-bs-toggle="button"]'; 379 380 class Y extends W { 381 static get NAME() { 382 return "button" 383 } 384 385 toggle() { 386 this._element.setAttribute("aria-pressed", this._element.classList.toggle("active")) 387 } 388 389 static jQueryInterface(t) { 390 return this.each((function () { 391 const e = Y.getOrCreateInstance(this); 392 "toggle" === t && e[t]() 393 })) 394 } 395 } 396 397 N.on(document, "click.bs.button.data-api", X, (t => { 398 t.preventDefault(); 399 const e = t.target.closest(X); 400 Y.getOrCreateInstance(e).toggle() 401 })), m(Y); 402 const U = ".bs.swipe", G = `touchstart${U}`, J = `touchmove${U}`, Z = `touchend${U}`, tt = `pointerdown${U}`, 403 et = `pointerup${U}`, it = {endCallback: null, leftCallback: null, rightCallback: null}, 404 nt = {endCallback: "(function|null)", leftCallback: "(function|null)", right
vendor: 8,583 bytes, lines 404-622
404Callback: "(function|null)"}; 405 406 class st extends H { 407 constructor(t, e) { 408 super(), this._element = t, t && st.isSupported() && (this._config = this._getConfig(e), this._deltaX = 0, this._supportPointerEvents = Boolean(window.PointerEvent), this._initEvents()) 409 } 410 411 static get Default() { 412 return it 413 } 414 415 static get DefaultType() { 416 return nt 417 } 418 419 static get NAME() { 420 return "swipe" 421 } 422 423 dispose() { 424 N.off(this._element, U) 425 } 426 427 _start(t) { 428 this._supportPointerEvents ? this._eventIsPointerPenTouch(t) && (this._deltaX = t.clientX) : this._deltaX = t.touches[0].clientX 429 } 430 431 _end(t) { 432 this._eventIsPointerPenTouch(t) && (this._deltaX = t.clientX - this._deltaX), this._handleSwipe(), g(this._config.endCallback) 433 } 434 435 _move(t) { 436 this._deltaX = t.touches && t.touches.length > 1 ? 0 : t.touches[0].clientX - this._deltaX 437 } 438 439 _handleSwipe() { 440 const t = Math.abs(this._deltaX); 441 if (t <= 40) return; 442 const e = t / this._deltaX; 443 this._deltaX = 0, e && g(e > 0 ? this._config.rightCallback : this._config.leftCallback) 444 } 445 446 _initEvents() { 447 this._supportPointerEvents ? (N.on(this._element, tt, (t => this._start(t))), N.on(this._element, et, (t => this._end(t))), this._element.classList.add("pointer-event")) : (N.on(this._element, G, (t => this._start(t))), N.on(this._element, J, (t => this._move(t))), N.on(this._element, Z, (t => this._end(t)))) 448 } 449 450 _eventIsPointerPenTouch(t) { 451 return this._supportPointerEvents && ("pen" === t.pointerType || "touch" === t.pointerType) 452 } 453 454 static isSupported() { 455 return "ontouchstart" in document.documentElement || navigator.maxTouchPoints > 0 456 } 457 } 458 459 const ot = ".bs.carousel", rt = ".data-api", at = "ArrowLeft", lt = "ArrowRight", ct = "next", ht = "prev", 460 dt = "left", ut = "right", ft = `slide${ot}`, pt = `slid${ot}`, mt = `keydown${ot}`, gt = `mouseenter${ot}`, 461 _t = `mouseleave${ot}`, bt = `dragstart${ot}`, vt = `load${ot}${rt}`, yt = `click${ot}${rt}`, wt = "carousel", 462 At = "active", Et = ".active", Tt = ".carousel-item", Ct = Et + Tt, Ot = {[at]: ut, [lt]: dt}, 463 xt = {interval: 5e3, keyboard: !0, pause: "hover", ride: !1, touch: !0, wrap: !0}, kt = { 464 interval: "(number|boolean)", 465 keyboard: "boolean", 466 pause: "(string|boolean)", 467 ride: "(boolean|string)", 468 touch: "boolean", 469 wrap: "boolean" 470 }; 471 472 class Lt extends W { 473 constructor(t, e) { 474 super(t, e), this._interval = null, this._activeElement = null, this._isSliding = !1, this.touchTimeout = null, this._swipeHelper = null, this._indicatorsElement = z.findOne(".carousel-indicators", this._element), this._addEventListeners(), this._config.ride === wt && this.cycle() 475 } 476 477 static get Default() { 478 return xt 479 } 480 481 static get DefaultType() { 482 return kt 483 } 484 485 static get NAME() { 486 return "carousel" 487 } 488 489 next() { 490 this._slide(ct) 491 } 492 493 nextWhenVisible() { 494 !document.hidden && a(this._element) && this.next() 495 } 496 497 prev() { 498 this._slide(ht) 499 } 500 501 pause() { 502 this._isSliding && s(this._element), this._clearInterval() 503 } 504 505 cycle() { 506 this._clearInterval(), this._updateInterval(), this._interval = setInterval((() => this.nextWhenVisible()), this._config.interval) 507 } 508 509 _maybeEnableCycle() { 510 this._config.ride && (this._isSliding ? N.one(this._element, pt, (() => this.cycle())) : this.cycle()) 511 } 512 513 to(t) { 514 const e = this._getItems(); 515 if (t > e.length - 1 || t < 0) return; 516 if (this._isSliding) return void N.one(this._element, pt, (() => this.to(t))); 517 const i = this._getItemIndex(this._getActive()); 518 if (i === t) return; 519 const n = t > i ? ct : ht; 520 this._slide(n, e[t]) 521 } 522 523 dispose() { 524 this._swipeHelper && this._swipeHelper.dispose(), super.dispose() 525 } 526 527 _configAfterMerge(t) { 528 return t.defaultInterval = t.interval, t 529 } 530 531 _addEventListeners() { 532 this._config.keyboard && N.on(this._element, mt, (t => this._keydown(t))), "hover" === this._config.pause && (N.on(this._element, gt, (() => this.pause())), N.on(this._element, _t, (() => this._maybeEnableCycle()))), this._config.touch && st.isSupported() && this._addTouchEventListeners() 533 } 534 535 _addTouchEventListeners() { 536 for (const t of z.find(".carousel-item img", this._element)) N.on(t, bt, (t => t.preventDefault())); 537 const t = { 538 leftCallback: () => this._slide(this._directionToOrder(dt)), 539 rightCallback: () => this._slide(this._directionToOrder(ut)), 540 endCallback: () => { 541 "hover" === this._config.pause && (this.pause(), this.touchTimeout && clearTimeout(this.touchTimeout), this.touchTimeout = setTimeout((() => this._maybeEnableCycle()), 500 + this._config.interval)) 542 } 543 }; 544 this._swipeHelper = new st(this._element, t) 545 } 546 547 _keydown(t) { 548 if (/input|textarea/i.test(t.target.tagName)) return; 549 const e = Ot[t.key]; 550 e && (t.preventDefault(), this._slide(this._directionToOrder(e))) 551 } 552 553 _getItemIndex(t) { 554 return this._getItems().indexOf(t) 555 } 556 557 _setActiveIndicatorElement(t) { 558 if (!this._indicatorsElement) return; 559 const e = z.findOne(Et, this._indicatorsElement); 560 e.classList.remove(At), e.removeAttribute("aria-current"); 561 const i = z.findOne(`[data-bs-slide-to="${t}"]`, this._indicatorsElement); 562 i && (i.classList.add(At), i.setAttribute("aria-current", "true")) 563 } 564 565 _updateInterval() { 566 const t = this._activeElement || this._getActive(); 567 if (!t) return; 568 const e = Number.parseInt(t.getAttribute("data-bs-interval"), 10); 569 this._config.interval = e || this._config.defaultInterval 570 } 571 572 _slide(t, e = null) { 573 if (this._isSliding) return; 574 const i = this._getActive(), n = t === ct, s = e || b(this._getItems(), i, n, this._config.wrap); 575 if (s === i) return; 576 const o = this._getItemIndex(s), r = e => N.trigger(this._element, e, { 577 relatedTarget: s, 578 direction: this._orderToDirection(t), 579 from: this._getItemIndex(i), 580 to: o 581 }); 582 if (r(ft).defaultPrevented) return; 583 if (!i || !s) return; 584 const a = Boolean(this._interval); 585 this.pause(), this._isSliding = !0, this._setActiveIndicatorElement(o), this._activeElement = s; 586 const l = n ? "carousel-item-start" : "carousel-item-end", 587 c = n ? "carousel-item-next" : "carousel-item-prev"; 588 s.classList.add(c), d(s), i.classList.add(l), s.classList.add(l), this._queueCallback((() => { 589 s.classList.remove(l, c), s.classList.add(At), i.classList.remove(At, c, l), this._isSliding = !1, r(pt) 590 }), i, this._isAnimated()), a && this.cycle() 591 } 592 593 _isAnimated() { 594 return this._element.classList.contains("slide") 595 } 596 597 _getActive() { 598 return z.findOne(Ct, this._element) 599 } 600 601 _getItems() { 602 return z.find(Tt, this._element) 603 } 604 605 _clearInterval() { 606 this._interval && (clearInterval(this._interval), this._interval = null) 607 } 608 609 _directionToOrder(t) { 610 return p() ? t === dt ? ht : ct : t === dt ? ct : ht 611 } 612 613 _orderToDirection(t) { 614 return p() ? t === ht ? dt : ut : t === ht ? ut : dt 615 } 616 617 static jQueryInterface(t) { 618 return this.each((function () { 619 const e = Lt.getOrCreateInstance(this, t); 620 if ("number" != typeof t) { 621 if ("string" == typeof t) { 622 if (void 0 === e[t] || t.startsWith("_") || "constructor" === t) throw new TypeError(`No method n
622amed "${t}"`); 623 e[t]() 624 } 625 } else e.to(t) 626 })) 627 } 628 } 629 630 N.on(document, yt, "[data-bs-slide], [data-bs-slide-to]", (function (t) { 631 const e = z.getElementFromSelector(this); 632 if (!e || !e.classList.contains(wt)) return; 633 t.preventDefault(); 634 const i = Lt.getOrCreateInstance(e), n = this.getAttribute("data-bs-slide-to"); 635 return n ? (i.to(n), void i._maybeEnableCycle()) : "next" === F.getDataAttribute(this, "slide") ? (i.next(), void i._maybeEnableCycle()) : (i.prev(), void i._maybeEnableCycle()) 636 })), N.on(window, vt, (() => { 637 const t = z.find('[data-bs-ride="carousel"]'); 638 for (const e of t) Lt.getOrCreateInstance(e) 639 })), m(Lt); 640 const St = ".bs.collapse", Dt = `show${St}`, $t = `shown${St}`, It = `hide${St}`, Nt = `hidden${St}`, 641 Pt = `click${St}.data-api`, jt = "show", Mt = "collapse", Ft = "collapsing", Ht = `:scope .${Mt} .${Mt}`, 642 Wt = '[data-bs-toggle="collapse"]', Bt = {parent: null, toggle: !0}, 643 zt = {parent: "(null|element)", toggle: "boolean"}; 644 645 class Rt extends W { 646 constructor(t, e) { 647 super(t, e), this._isTransitioning = !1, this._triggerArray = []; 648 const i = z.find(Wt); 649 for (const t of i) { 650 const e = z.getSelectorFromElement(t), i = z.find(e).filter((t => t === this._element)); 651 null !== e && i.length && this._triggerArray.push(t) 652 } 653 this._initializeChildren(), this._config.parent || this._addAriaAndCollapsedClass(this._triggerArray, this._isShown()), this._config.toggle && this.toggle() 654 } 655 656 static get Default() { 657 return Bt 658 } 659 660 static get DefaultType() { 661 return zt 662 } 663 664 static get NAME() { 665 return "collapse" 666 } 667 668 toggle() { 669 this._isShown() ? this.hide() : this.show() 670 } 671 672 show() { 673 if (this._isTransitioning || this._isShown()) return; 674 let t = []; 675 if (this._config.parent && (t = this._getFirstLevelChildren(".collapse.show, .collapse.collapsing").filter((t => t !== this._element)).map((t => Rt.getOrCreateInstance(t, {toggle: !1})))), t.length && t[0]._isTransitioning) return; 676 if (N.trigger(this._element, Dt).defaultPrevented) return; 677 for (const e of t) e.hide(); 678 const e = this._getDimension(); 679 this._element.classList.remove(Mt), this._element.classList.add(Ft), this._element.style[e] = 0, this._addAriaAndCollapsedClass(this._triggerArray, !0), this._isTransitioning = !0; 680 const i = `scroll${e[0].toUpperCase() + e.slice(1)}`; 681 this._queueCallback((() => { 682 this._isTransitioning = !1, this._element.classList.remove(Ft), this._element.classList.add(Mt, jt), this._element.style[e] = "", N.trigger(this._element, $t) 683 }), this._element, !0), this._element.style[e] = `${this._element[i]}px` 684 } 685 686 hide() { 687 if (this._isTransitioning || !this._isShown()) return; 688 if (N.trigger(this._element, It).defaultPrevented) return; 689 const t = this._getDimension(); 690 this._element.style[t] = `${this._element.getBoundingClientRect()[t]}px`, d(this._element), this._element.classList.add(Ft), this._element.classList.remove(Mt, jt); 691 for (const t of this._triggerArray) { 692 const e = z.getElementFromSelector(t); 693 e && !this._isShown(e) && this._addAriaAndCollapsedClass([t], !1) 694 } 695 this._isTransitioning = !0, this._element.style[t] = "", this._queueCallback((() => { 696 this._isTransitioning = !1, this._element.classList.remove(Ft), this._element.classList.add(Mt), N.trigger(this._element, Nt) 697 }), this._element, !0) 698 } 699 700 _isShown(t = this._element) { 701 return t.classList.contains(jt) 702 } 703 704 _configAfterMerge(t) { 705 return t.toggle = Boolean(t.toggle), t.parent = r(t.parent), t 706 } 707 708 _getDimension() { 709 return this._element.classList.contains("collapse-horizontal") ? "width" : "height" 710 } 711 712 _initializeChildren() { 713 if (!this._config.parent) return; 714 const t = this._getFirstLevelChildren(Wt); 715 for (const e of t) { 716 const t = z.getElementFromSelector(e); 717 t && this._addAriaAndCollapsedClass([e], this._isShown(t)) 718 } 719 } 720 721 _getFirstLevelChildren(t) { 722 const e = z.find(Ht, this._config.parent); 723 return z.find(t, this._config.parent).filter((t => !e.includes(t))) 724 } 725 726 _addAriaAndCollapsedClass(t, e) { 727 if (t.length) for (const i of t) i.classList.toggle("collapsed", !e), i.setAttribute("aria-expanded", e) 728 } 729 730 static jQueryInterface(t) { 731 const e = {}; 732 return "string" == typeof t && /show|hide/.test(t) && (e.toggle = !1), this.each((function () { 733 const i = Rt.getOrCreateInstance(this, e); 734 if ("string" == typeof t) { 735 if (void 0 === i[t]) throw new TypeError(`No method n
735amed "${t}"`); 736 i[t]() 737 } 738 })) 739 } 740 } 741 742 N.on(document, Pt, Wt, (function (t) { 743 ("A" === t.target.tagName || t.delegateTarget && "A" === t.delegateTarget.tagName) && t.preventDefault(); 744 for (const t of z.getMultipleElementsFromSelector(this)) Rt.getOrCreateInstance(t, {toggle: !1}).toggle() 745 })), m(Rt); 746 var qt = "top", Vt = "bottom", Kt = "right", Qt = "left", Xt = "auto", Yt = [qt, Vt, Kt, Qt], Ut = "start", 747 Gt = "end", Jt = "clippingParents", Zt = "viewport", te = "popper", ee = "reference", 748 ie = Yt.reduce((function (t, e) { 749 return t.concat([e + "-" + Ut, e + "-" + Gt]) 750 }), []), ne = [].concat(Yt, [Xt]).reduce((function (t, e) { 751 return t.concat([e, e + "-" + Ut, e + "-" + Gt]) 752 }), []), se = "beforeRead", oe = "read", re = "afterRead", ae = "beforeMain", le = "main", ce = "afterMain", 753 he = "beforeWrite", de = "write", ue = "afterWrite", fe = [se, oe, re, ae, le, ce, he, de, ue]; 754 755 function pe(t) { 756 return t ? (t.nodeName || "").toLowerCase() : null 757 } 758 759 function me(t) { 760 if (null == t) return window; 761 if ("[object Window]" !== t.toString()) { 762 var e = t.ownerDocument; 763 return e && e.defaultView || window 764 } 765 return t 766 } 767 768 function ge(t) { 769 return t instanceof me(t).Element || t instanceof Element 770 } 771 772 function _e(t) { 773 return t instanceof me(t).HTMLElement || t instanceof HTMLElement 774 } 775 776 function be(t) { 777 return "undefined" != typeof ShadowRoot && (t instanceof me(t).ShadowRoot || t instanceof ShadowRoot) 778 } 779 780 const ve = { 781 name: "applyStyles", enabled: !0, phase: "write", fn: function (t) { 782 var e = t.state; 783 Object.keys(e.elements).forEach((function (t) { 784 var i = e.styles[t] || {}, n = e.attributes[t] || {}, s = e.elements[t]; 785 _e(s) && pe(s) && (Object.assign(s.style, i), Object.keys(n).forEach((function (t) { 786 var e = n[t]; 787 !1 === e ? s.removeAttribute(t) : s.setAttribute(t, !0 === e ? "" : e) 788 }))) 789 })) 790 }, effect: function (t) { 791 var e = t.state, i = { 792 popper: {position: e.options.strategy, left: "0", top: "0", margin: "0"}, 793 arrow: {position: "absolute"}, 794 reference: {} 795 }; 796 return Object.assign(e.elements.popper.style, i.popper), e.styles = i, e.elements.arrow && Object.assign(e.elements.arrow.style, i.arrow), function () { 797 Object.keys(e.elements).forEach((function (t) { 798 var n = e.elements[t], s = e.attributes[t] || {}, 799 o = Object.keys(e.styles.hasOwnProperty(t) ? e.styles[t] : i[t]).reduce((function (t, e) { 800 return t[e] = "", t 801 }), {}); 802 _e(n) && pe(n) && (Object.assign(n.style, o), Object.keys(s).forEach((function (t) { 803 n.removeAttribute(t) 804 }))) 805 })) 806 } 807 }, requires: ["computeStyles"] 808 }; 809 810 function ye(t) { 811 return t.split("-")[0] 812 } 813 814 var we = Math.max, Ae = Math.min, Ee = Math.round; 815 816 function Te() { 817 var t = navigator.userAgentData; 818 return null != t && t.brands && Array.isArray(t.brands) ? t.brands.map((function (t) { 819 return t.brand + "/" + t.version 820 })).join(" ") : navigator.userAgent 821 } 822 823 function Ce() { 824 return !/^((?!chrome|android).)*safari/i.test(Te()) 825 } 826 827 function Oe(t, e, i) { 828 void 0 === e && (e = !1), void 0 === i && (i = !1); 829 var n = t.getBoundingClientRect(), s = 1, o = 1; 830 e && _e(t) && (s = t.offsetWidth > 0 && Ee(n.width) / t.offsetWidth || 1, o = t.offsetHeight > 0 && Ee(n.height) / t.offsetHeight || 1); 831 var r = (ge(t) ? me(t) : window).visualViewport, a = !Ce() && i, l = (n.left + (a && r ? r.offsetLeft : 0)) / s, 832 c = (n.top + (a && r ? r.offsetTop : 0)) / o, h = n.width / s, d = n.height / o; 833 return {width: h, height: d, top: c, right: l + h, bottom: c + d, left: l, x: l, y: c} 834 } 835 836 function xe(t) { 837 var e = Oe(t), i = t.offsetWidth, n = t.offsetHeight; 838 return Math.abs(e.width - i) <= 1 && (i = e.width), Math.abs(e.height - n) <= 1 && (n = e.height), { 839 x: t.offsetLeft, 840 y: t.offsetTop, 841 width: i, 842 height: n 843 } 844 } 845 846 function ke(t, e) { 847 var i = e.getRootNode && e.getRootNode(); 848 if (t.contains(e)) return !0; 849 if (i && be(i)) { 850 var n = e; 851 do { 852 if (n && t.isSameNode(n)) return !0; 853 n = n.parentNode || n.host 854 } while (n) 855 } 856 return !1 857 } 858 859 function Le(t) { 860 return me(t).getComputedStyle(t) 861 } 862 863 function Se(t) { 864 return ["table", "td", "th"].indexOf(pe(t)) >= 0 865 } 866 867 function De(t) { 868 return ((ge(t) ? t.ownerDocument : t.document) || window.document).documentElement 869 } 870 871 function $e(t) { 872 return "html" === pe(t) ? t : t.assignedSlot || t.parentNode || (be(t) ? t.host : null) || De(t) 873 } 874 875 function Ie(t) { 876 return _e(t) && "fixed" !== Le(t).position ? t.offsetParent : null 877 } 878 879 function Ne(t) { 880 for (var e = me(t), i = Ie(t); i && Se(i) && "static" === Le(i).position;) i = Ie(i); 881 return i && ("html" === pe(i) || "body" === pe(i) && "static" === Le(i).position) ? e : i || function (t) { 882 var e = /firefox/i.test(Te()); 883 if (/Trident/i.test(Te()) && _e(t) && "fixed" === Le(t).position) return null; 884 var i = $e(t); 885 for (be(i) && (i = i.host); _e(i) && ["html", "body"].indexOf(pe(i)) < 0;) { 886 var n = Le(i); 887 if ("none" !== n.transform || "none" !== n.perspective || "paint" === n.contain || -1 !== ["transform", "perspective"].indexOf(n.willChange) || e && "filter" === n.willChange || e && n.filter && "none" !== n.filter) return i; 888 i = i.parentNode 889 } 890 return null 891 }(t) || e 892 } 893 894 function Pe(t) { 895 return ["top", "bottom"].indexOf(t) >= 0 ? "x" : "y" 896 } 897 898 function je(t, e, i) { 899 return we(t, Ae(e, i)) 900 } 901 902 function Me(t) { 903 return Object.assign({}, {top: 0, right: 0, bottom: 0, left: 0}, t) 904 } 905 906 function Fe(t, e) { 907 return e.reduce((function (e, i) { 908 return e[i] = t, e 909 }), {}) 910 } 911 912 const He = { 913 name: "arrow", enabled: !0, phase: "main", fn: function (t) { 914 var e, i = t.state, n = t.name, s = t.options, o = i.elements.arrow, r = i.modifiersData.popperOffsets, 915 a = ye(i.placement), l = Pe(a), c = [Qt, Kt].indexOf(a) >= 0 ? "height" : "width"; 916 if (o && r) { 917 var h = function (t, e) { 918 return Me("number" != typeof (t = "function" == typeof t ? t(Object.assign({}, e.rects, {placement: e.placement})) : t) ? t : Fe(t, Yt)) 919 }(s.padding, i), d = xe(o), u = "y" === l ? qt : Qt, f = "y" === l ? Vt : Kt, 920 p = i.rects.reference[c] + i.rects.reference[l] - r[l] - i.rects.popper[c], 921 m = r[l] - i.rects.reference[l], g = Ne(o), 922 _ = g ? "y" === l ? g.clientHeight || 0 : g.clientWidth || 0 : 0, b = p / 2 - m / 2, v = h[u], 923 y = _ - d[c] - h[f], w = _ / 2 - d[c] / 2 + b, A = je(v, w, y), E = l; 924 i.modifiersData[n] = ((e = {})[E] = A, e.centerOffset = A - w, e) 925 } 926 }, effect: function (t) { 927 var e = t.state, i = t.options.element, n = void 0 === i ? "[data-
vendor: 4,191 bytes, lines 927-994
927popper-arrow]" : i; 928 null != n && ("string" != typeof n || (n = e.elements.popper.querySelector(n))) && ke(e.elements.popper, n) && (e.elements.arrow = n) 929 }, requires: ["popperOffsets"], requiresIfExists: ["preventOverflow"] 930 }; 931 932 function We(t) { 933 return t.split("-")[1] 934 } 935 936 var Be = {top: "auto", right: "auto", bottom: "auto", left: "auto"}; 937 938 function ze(t) { 939 var e, i = t.popper, n = t.popperRect, s = t.placement, o = t.variation, r = t.offsets, a = t.position, 940 l = t.gpuAcceleration, c = t.adaptive, h = t.roundOffsets, d = t.isFixed, u = r.x, f = void 0 === u ? 0 : u, 941 p = r.y, m = void 0 === p ? 0 : p, g = "function" == typeof h ? h({x: f, y: m}) : {x: f, y: m}; 942 f = g.x, m = g.y; 943 var _ = r.hasOwnProperty("x"), b = r.hasOwnProperty("y"), v = Qt, y = qt, w = window; 944 if (c) { 945 var A = Ne(i), E = "clientHeight", T = "clientWidth"; 946 A === me(i) && "static" !== Le(A = De(i)).position && "absolute" === a && (E = "scrollHeight", T = "scrollWidth"), (s === qt || (s === Qt || s === Kt) && o === Gt) && (y = Vt, m -= (d && A === w && w.visualViewport ? w.visualViewport.height : A[E]) - n.height, m *= l ? 1 : -1), s !== Qt && (s !== qt && s !== Vt || o !== Gt) || (v = Kt, f -= (d && A === w && w.visualViewport ? w.visualViewport.width : A[T]) - n.width, f *= l ? 1 : -1) 947 } 948 var C, O = Object.assign({position: a}, c && Be), x = !0 === h ? function (t, e) { 949 var i = t.x, n = t.y, s = e.devicePixelRatio || 1; 950 return {x: Ee(i * s) / s || 0, y: Ee(n * s) / s || 0} 951 }({x: f, y: m}, me(i)) : {x: f, y: m}; 952 return f = x.x, m = x.y, l ? Object.assign({}, O, ((C = {})[y] = b ? "0" : "", C[v] = _ ? "0" : "", C.transform = (w.devicePixelRatio || 1) <= 1 ? "translate(" + f + "px, " + m + "px)" : "translate3d(" + f + "px, " + m + "px, 0)", C)) : Object.assign({}, O, ((e = {})[y] = b ? m + "px" : "", e[v] = _ ? f + "px" : "", e.transform = "", e)) 953 } 954 955 const Re = { 956 name: "computeStyles", enabled: !0, phase: "beforeWrite", fn: function (t) { 957 var e = t.state, i = t.options, n = i.gpuAcceleration, s = void 0 === n || n, o = i.adaptive, 958 r = void 0 === o || o, a = i.roundOffsets, l = void 0 === a || a, c = { 959 placement: ye(e.placement), 960 variation: We(e.placement), 961 popper: e.elements.popper, 962 popperRect: e.rects.popper, 963 gpuAcceleration: s, 964 isFixed: "fixed" === e.options.strategy 965 }; 966 null != e.modifiersData.popperOffsets && (e.styles.popper = Object.assign({}, e.styles.popper, ze(Object.assign({}, c, { 967 offsets: e.modifiersData.popperOffsets, 968 position: e.options.strategy, 969 adaptive: r, 970 roundOffsets: l 971 })))), null != e.modifiersData.arrow && (e.styles.arrow = Object.assign({}, e.styles.arrow, ze(Object.assign({}, c, { 972 offsets: e.modifiersData.arrow, 973 position: "absolute", 974 adaptive: !1, 975 roundOffsets: l 976 })))), e.attributes.popper = Object.assign({}, e.attributes.popper, {"data-popper-placement": e.placement}) 977 }, data: {} 978 }; 979 var qe = {passive: !0}; 980 const Ve = { 981 name: "eventListeners", enabled: !0, phase: "write", fn: function () { 982 }, effect: function (t) { 983 var e = t.state, i = t.instance, n = t.options, s = n.scroll, o = void 0 === s || s, r = n.resize, 984 a = void 0 === r || r, l = me(e.elements.popper), 985 c = [].concat(e.scrollParents.reference, e.scrollParents.popper); 986 return o && c.forEach((function (t) { 987 t.addEventListener("scroll", i.update, qe) 988 })), a && l.addEventListener("resize", i.update, qe), function () { 989 o && c.forEach((function (t) { 990 t.removeEventListener("scroll", i.update, qe) 991 })), a && l.removeEventListener("resize", i.update, qe) 992 } 993 }, data: {} 994 };
vendor: 24,095 bytes, lines 995-1519
995 var Ke = {left: "right", right: "left", bottom: "top", top: "bottom"}; 996 997 function Qe(t) { 998 return t.replace(/left|right|bottom|top/g, (function (t) { 999 return Ke[t] 1000 })) 1001 } 1002 1003 var Xe = {start: "end", end: "start"}; 1004 1005 function Ye(t) { 1006 return t.replace(/start|end/g, (function (t) { 1007 return Xe[t] 1008 })) 1009 } 1010 1011 function Ue(t) { 1012 var e = me(t); 1013 return {scrollLeft: e.pageXOffset, scrollTop: e.pageYOffset} 1014 } 1015 1016 function Ge(t) { 1017 return Oe(De(t)).left + Ue(t).scrollLeft 1018 } 1019 1020 function Je(t) { 1021 var e = Le(t), i = e.overflow, n = e.overflowX, s = e.overflowY; 1022 return /auto|scroll|overlay|hidden/.test(i + s + n) 1023 } 1024 1025 function Ze(t) { 1026 return ["html", "body", "#document"].indexOf(pe(t)) >= 0 ? t.ownerDocument.body : _e(t) && Je(t) ? t : Ze($e(t)) 1027 } 1028 1029 function ti(t, e) { 1030 var i; 1031 void 0 === e && (e = []); 1032 var n = Ze(t), s = n === (null == (i = t.ownerDocument) ? void 0 : i.body), o = me(n), 1033 r = s ? [o].concat(o.visualViewport || [], Je(n) ? n : []) : n, a = e.concat(r); 1034 return s ? a : a.concat(ti($e(r))) 1035 } 1036 1037 function ei(t) { 1038 return Object.assign({}, t, {left: t.x, top: t.y, right: t.x + t.width, bottom: t.y + t.height}) 1039 } 1040 1041 function ii(t, e, i) { 1042 return e === Zt ? ei(function (t, e) { 1043 var i = me(t), n = De(t), s = i.visualViewport, o = n.clientWidth, r = n.clientHeight, a = 0, l = 0; 1044 if (s) { 1045 o = s.width, r = s.height; 1046 var c = Ce(); 1047 (c || !c && "fixed" === e) && (a = s.offsetLeft, l = s.offsetTop) 1048 } 1049 return {width: o, height: r, x: a + Ge(t), y: l} 1050 }(t, i)) : ge(e) ? function (t, e) { 1051 var i = Oe(t, !1, "fixed" === e); 1052 return i.top = i.top + t.clientTop, i.left = i.left + t.clientLeft, i.bottom = i.top + t.clientHeight, i.right = i.left + t.clientWidth, i.width = t.clientWidth, i.height = t.clientHeight, i.x = i.left, i.y = i.top, i 1053 }(e, i) : ei(function (t) { 1054 var e, i = De(t), n = Ue(t), s = null == (e = t.ownerDocument) ? void 0 : e.body, 1055 o = we(i.scrollWidth, i.clientWidth, s ? s.scrollWidth : 0, s ? s.clientWidth : 0), 1056 r = we(i.scrollHeight, i.clientHeight, s ? s.scrollHeight : 0, s ? s.clientHeight : 0), 1057 a = -n.scrollLeft + Ge(t), l = -n.scrollTop; 1058 return "rtl" === Le(s || i).direction && (a += we(i.clientWidth, s ? s.clientWidth : 0) - o), { 1059 width: o, 1060 height: r, 1061 x: a, 1062 y: l 1063 } 1064 }(De(t))) 1065 } 1066 1067 function ni(t) { 1068 var e, i = t.reference, n = t.element, s = t.placement, o = s ? ye(s) : null, r = s ? We(s) : null, 1069 a = i.x + i.width / 2 - n.width / 2, l = i.y + i.height / 2 - n.height / 2; 1070 switch (o) { 1071 case qt: 1072 e = {x: a, y: i.y - n.height}; 1073 break; 1074 case Vt: 1075 e = {x: a, y: i.y + i.height}; 1076 break; 1077 case Kt: 1078 e = {x: i.x + i.width, y: l}; 1079 break; 1080 case Qt: 1081 e = {x: i.x - n.width, y: l}; 1082 break; 1083 default: 1084 e = {x: i.x, y: i.y} 1085 } 1086 var c = o ? Pe(o) : null; 1087 if (null != c) { 1088 var h = "y" === c ? "height" : "width"; 1089 switch (r) { 1090 case Ut: 1091 e[c] = e[c] - (i[h] / 2 - n[h] / 2); 1092 break; 1093 case Gt: 1094 e[c] = e[c] + (i[h] / 2 - n[h] / 2) 1095 } 1096 } 1097 return e 1098 } 1099 1100 function si(t, e) { 1101 void 0 === e && (e = {}); 1102 var i = e, n = i.placement, s = void 0 === n ? t.placement : n, o = i.strategy, 1103 r = void 0 === o ? t.strategy : o, a = i.boundary, l = void 0 === a ? Jt : a, c = i.rootBoundary, 1104 h = void 0 === c ? Zt : c, d = i.elementContext, u = void 0 === d ? te : d, f = i.altBoundary, 1105 p = void 0 !== f && f, m = i.padding, g = void 0 === m ? 0 : m, 1106 _ = Me("number" != typeof g ? g : Fe(g, Yt)), b = u === te ? ee : te, v = t.rects.popper, 1107 y = t.elements[p ? b : u], w = function (t, e, i, n) { 1108 var s = "clippingParents" === e ? function (t) { 1109 var e = ti($e(t)), i = ["absolute", "fixed"].indexOf(Le(t).position) >= 0 && _e(t) ? Ne(t) : t; 1110 return ge(i) ? e.filter((function (t) { 1111 return ge(t) && ke(t, i) && "body" !== pe(t) 1112 })) : [] 1113 }(t) : [].concat(e), o = [].concat(s, [i]), r = o[0], a = o.reduce((function (e, i) { 1114 var s = ii(t, i, n); 1115 return e.top = we(s.top, e.top), e.right = Ae(s.right, e.right), e.bottom = Ae(s.bottom, e.bottom), e.left = we(s.left, e.left), e 1116 }), ii(t, r, n)); 1117 return a.width = a.right - a.left, a.height = a.bottom - a.top, a.x = a.left, a.y = a.top, a 1118 }(ge(y) ? y : y.contextElement || De(t.elements.popper), l, h, r), A = Oe(t.elements.reference), 1119 E = ni({reference: A, element: v, placement: s}), T = ei(Object.assign({}, v, E)), C = u === te ? T : A, 1120 O = { 1121 top: w.top - C.top + _.top, 1122 bottom: C.bottom - w.bottom + _.bottom, 1123 left: w.left - C.left + _.left, 1124 right: C.right - w.right + _.right 1125 }, x = t.modifiersData.offset; 1126 if (u === te && x) { 1127 var k = x[s]; 1128 Object.keys(O).forEach((function (t) { 1129 var e = [Kt, Vt].indexOf(t) >= 0 ? 1 : -1, i = [qt, Vt].indexOf(t) >= 0 ? "y" : "x"; 1130 O[t] += k[i] * e 1131 })) 1132 } 1133 return O 1134 } 1135 1136 function oi(t, e) { 1137 void 0 === e && (e = {}); 1138 var i = e, n = i.placement, s = i.boundary, o = i.rootBoundary, r = i.padding, a = i.flipVariations, 1139 l = i.allowedAutoPlacements, c = void 0 === l ? ne : l, h = We(n), 1140 d = h ? a ? ie : ie.filter((function (t) { 1141 return We(t) === h 1142 })) : Yt, u = d.filter((function (t) { 1143 return c.indexOf(t) >= 0 1144 })); 1145 0 === u.length && (u = d); 1146 var f = u.reduce((function (e, i) { 1147 return e[i] = si(t, {placement: i, boundary: s, rootBoundary: o, padding: r})[ye(i)], e 1148 }), {}); 1149 return Object.keys(f).sort((function (t, e) { 1150 return f[t] - f[e] 1151 })) 1152 } 1153 1154 const ri = { 1155 name: "flip", enabled: !0, phase: "main", fn: function (t) { 1156 var e = t.state, i = t.options, n = t.name; 1157 if (!e.modifiersData[n]._skip) { 1158 for (var s = i.mainAxis, o = void 0 === s || s, r = i.altAxis, a = void 0 === r || r, l = i.fallbackPlacements, c = i.padding, h = i.boundary, d = i.rootBoundary, u = i.altBoundary, f = i.flipVariations, p = void 0 === f || f, m = i.allowedAutoPlacements, g = e.options.placement, _ = ye(g), b = l || (_ !== g && p ? function (t) { 1159 if (ye(t) === Xt) return []; 1160 var e = Qe(t); 1161 return [Ye(t), e, Ye(e)] 1162 }(g) : [Qe(g)]), v = [g].concat(b).reduce((function (t, i) { 1163 return t.concat(ye(i) === Xt ? oi(e, { 1164 placement: i, 1165 boundary: h, 1166 rootBoundary: d, 1167 padding: c, 1168 flipVariations: p, 1169 allowedAutoPlacements: m 1170 }) : i) 1171 }), []), y = e.rects.reference, w = e.rects.popper, A = new Map, E = !0, T = v[0], C = 0; C < v.length; C++) { 1172 var O = v[C], x = ye(O), k = We(O) === Ut, L = [qt, Vt].indexOf(x) >= 0, S = L ? "width" : "height", 1173 D = si(e, {placement: O, boundary: h, rootBoundary: d, altBoundary: u, padding: c}), 1174 $ = L ? k ? Kt : Qt : k ? Vt : qt; 1175 y[S] > w[S] && ($ = Qe($)); 1176 var I = Qe($), N = []; 1177 if (o && N.push(D[x] <= 0), a && N.push(D[$] <= 0, D[I] <= 0), N.every((function (t) { 1178 return t 1179 }))) { 1180 T = O, E = !1; 1181 break 1182 } 1183 A.set(O, N) 1184 } 1185 if (E) for (var P = function (t) { 1186 var e = v.find((function (e) { 1187 var i = A.get(e); 1188 if (i) return i.slice(0, t).every((function (t) { 1189 return t 1190 })) 1191 })); 1192 if (e) return T = e, "break" 1193 }, j = p ? 3 : 1; j > 0 && "break" !== P(j); j--) ; 1194 e.placement !== T && (e.modifiersData[n]._skip = !0, e.placement = T, e.reset = !0) 1195 } 1196 }, requiresIfExists: ["offset"], data: {_skip: !1} 1197 }; 1198 1199 function ai(t, e, i) { 1200 return void 0 === i && (i = {x: 0, y: 0}), { 1201 top: t.top - e.height - i.y, 1202 right: t.right - e.width + i.x, 1203 bottom: t.bottom - e.height + i.y, 1204 left: t.left - e.width - i.x 1205 } 1206 } 1207 1208 function li(t) { 1209 return [qt, Kt, Vt, Qt].some((function (e) { 1210 return t[e] >= 0 1211 })) 1212 } 1213 1214 const ci = { 1215 name: "hide", enabled: !0, phase: "main", requiresIfExists: ["preventOverflow"], fn: function (t) { 1216 var e = t.state, i = t.name, n = e.rects.reference, s = e.rects.popper, o = e.modifiersData.preventOverflow, 1217 r = si(e, {elementContext: "reference"}), a = si(e, {altBoundary: !0}), l = ai(r, n), c = ai(a, s, o), 1218 h = li(l), d = li(c); 1219 e.modifiersData[i] = { 1220 referenceClippingOffsets: l, 1221 popperEscapeOffsets: c, 1222 isReferenceHidden: h, 1223 hasPopperEscaped: d 1224 }, e.attributes.popper = Object.assign({}, e.attributes.popper, { 1225 "data-popper-reference-hidden": h, 1226 "data-popper-escaped": d 1227 }) 1228 } 1229 }, hi = { 1230 name: "offset", enabled: !0, phase: "main", requires: ["popperOffsets"], fn: function (t) { 1231 var e = t.state, i = t.options, n = t.name, s = i.offset, o = void 0 === s ? [0, 0] : s, 1232 r = ne.reduce((function (t, i) { 1233 return t[i] = function (t, e, i) { 1234 var n = ye(t), s = [Qt, qt].indexOf(n) >= 0 ? -1 : 1, 1235 o = "function" == typeof i ? i(Object.assign({}, e, {placement: t})) : i, r = o[0], 1236 a = o[1]; 1237 return r = r || 0, a = (a || 0) * s, [Qt, Kt].indexOf(n) >= 0 ? {x: a, y: r} : {x: r, y: a} 1238 }(i, e.rects, o), t 1239 }), {}), a = r[e.placement], l = a.x, c = a.y; 1240 null != e.modifiersData.popperOffsets && (e.modifiersData.popperOffsets.x += l, e.modifiersData.popperOffsets.y += c), e.modifiersData[n] = r 1241 } 1242 }, di = { 1243 name: "popperOffsets", enabled: !0, phase: "read", fn: function (t) { 1244 var e = t.state, i = t.name; 1245 e.modifiersData[i] = ni({reference: e.rects.reference, element: e.rects.popper, placement: e.placement}) 1246 }, data: {} 1247 }, ui = { 1248 name: "preventOverflow", enabled: !0, phase: "main", fn: function (t) { 1249 var e = t.state, i = t.options, n = t.name, s = i.mainAxis, o = void 0 === s || s, r = i.altAxis, 1250 a = void 0 !== r && r, l = i.boundary, c = i.rootBoundary, h = i.altBoundary, d = i.padding, 1251 u = i.tether, f = void 0 === u || u, p = i.tetherOffset, m = void 0 === p ? 0 : p, 1252 g = si(e, {boundary: l, rootBoundary: c, padding: d, altBoundary: h}), _ = ye(e.placement), 1253 b = We(e.placement), v = !b, y = Pe(_), w = "x" === y ? "y" : "x", A = e.modifiersData.popperOffsets, 1254 E = e.rects.reference, T = e.rects.popper, 1255 C = "function" == typeof m ? m(Object.assign({}, e.rects, {placement: e.placement})) : m, 1256 O = "number" == typeof C ? {mainAxis: C, altAxis: C} : Object.assign({mainAxis: 0, altAxis: 0}, C), 1257 x = e.modifiersData.offset ? e.modifiersData.offset[e.placement] : null, k = {x: 0, y: 0}; 1258 if (A) { 1259 if (o) { 1260 var L, S = "y" === y ? qt : Qt, D = "y" === y ? Vt : Kt, $ = "y" === y ? "height" : "width", 1261 I = A[y], N = I + g[S], P = I - g[D], j = f ? -T[$] / 2 : 0, M = b === Ut ? E[$] : T[$], 1262 F = b === Ut ? -T[$] : -E[$], H = e.elements.arrow, W = f && H ? xe(H) : {width: 0, height: 0}, 1263 B = e.modifiersData["arrow#persistent"] ? e.modifiersData["arrow#persistent"].padding : { 1264 top: 0, 1265 right: 0, 1266 bottom: 0, 1267 left: 0 1268 }, z = B[S], R = B[D], q = je(0, E[$], W[$]), 1269 V = v ? E[$] / 2 - j - q - z - O.mainAxis : M - q - z - O.mainAxis, 1270 K = v ? -E[$] / 2 + j + q + R + O.mainAxis : F + q + R + O.mainAxis, 1271 Q = e.elements.arrow && Ne(e.elements.arrow), 1272 X = Q ? "y" === y ? Q.clientTop || 0 : Q.clientLeft || 0 : 0, 1273 Y = null != (L = null == x ? void 0 : x[y]) ? L : 0, U = I + K - Y, 1274 G = je(f ? Ae(N, I + V - Y - X) : N, I, f ? we(P, U) : P); 1275 A[y] = G, k[y] = G - I 1276 } 1277 if (a) { 1278 var J, Z = "x" === y ? qt : Qt, tt = "x" === y ? Vt : Kt, et = A[w], 1279 it = "y" === w ? "height" : "width", nt = et + g[Z], st = et - g[tt], 1280 ot = -1 !== [qt, Qt].indexOf(_), rt = null != (J = null == x ? void 0 : x[w]) ? J : 0, 1281 at = ot ? nt : et - E[it] - T[it] - rt + O.altAxis, 1282 lt = ot ? et + E[it] + T[it] - rt - O.altAxis : st, ct = f && ot ? function (t, e, i) { 1283 var n = je(t, e, i); 1284 return n > i ? i : n 1285 }(at, et, lt) : je(f ? at : nt, et, f ? lt : st); 1286 A[w] = ct, k[w] = ct - et 1287 } 1288 e.modifiersData[n] = k 1289 } 1290 }, requiresIfExists: ["offset"] 1291 }; 1292 1293 function fi(t, e, i) { 1294 void 0 === i && (i = !1); 1295 var n, s, o = _e(e), r = _e(e) && function (t) { 1296 var e = t.getBoundingClientRect(), i = Ee(e.width) / t.offsetWidth || 1, 1297 n = Ee(e.height) / t.offsetHeight || 1; 1298 return 1 !== i || 1 !== n 1299 }(e), a = De(e), l = Oe(t, r, i), c = {scrollLeft: 0, scrollTop: 0}, h = {x: 0, y: 0}; 1300 return (o || !o && !i) && (("body" !== pe(e) || Je(a)) && (c = (n = e) !== me(n) && _e(n) ? { 1301 scrollLeft: (s = n).scrollLeft, 1302 scrollTop: s.scrollTop 1303 } : Ue(n)), _e(e) ? ((h = Oe(e, !0)).x += e.clientLeft, h.y += e.clientTop) : a && (h.x = Ge(a))), { 1304 x: l.left + c.scrollLeft - h.x, 1305 y: l.top + c.scrollTop - h.y, 1306 width: l.width, 1307 height: l.height 1308 } 1309 } 1310 1311 function pi(t) { 1312 var e = new Map, i = new Set, n = []; 1313 1314 function s(t) { 1315 i.add(t.name), [].concat(t.requires || [], t.requiresIfExists || []).forEach((function (t) { 1316 if (!i.has(t)) { 1317 var n = e.get(t); 1318 n && s(n) 1319 } 1320 })), n.push(t) 1321 } 1322 1323 return t.forEach((function (t) { 1324 e.set(t.name, t) 1325 })), t.forEach((function (t) { 1326 i.has(t.name) || s(t) 1327 })), n 1328 } 1329 1330 var mi = {placement: "bottom", modifiers: [], strategy: "absolute"}; 1331 1332 function gi() { 1333 for (var t = arguments.length, e = new Array(t), i = 0; i < t; i++) e[i] = arguments[i]; 1334 return !e.some((function (t) { 1335 return !(t && "function" == typeof t.getBoundingClientRect) 1336 })) 1337 } 1338 1339 function _i(t) { 1340 void 0 === t && (t = {}); 1341 var e = t, i = e.defaultModifiers, n = void 0 === i ? [] : i, s = e.defaultOptions, o = void 0 === s ? mi : s; 1342 return function (t, e, i) { 1343 void 0 === i && (i = o); 1344 var s, r, a = { 1345 placement: "bottom", 1346 orderedModifiers: [], 1347 options: Object.assign({}, mi, o), 1348 modifiersData: {}, 1349 elements: {reference: t, popper: e}, 1350 attributes: {}, 1351 styles: {} 1352 }, l = [], c = !1, h = { 1353 state: a, setOptions: function (i) { 1354 var s = "function" == typeof i ? i(a.options) : i; 1355 d(), a.options = Object.assign({}, o, a.options, s), a.scrollParents = { 1356 reference: ge(t) ? ti(t) : t.contextElement ? ti(t.contextElement) : [], 1357 popper: ti(e) 1358 }; 1359 var r, c, u = function (t) { 1360 var e = pi(t); 1361 return fe.reduce((function (t, i) { 1362 return t.concat(e.filter((function (t) { 1363 return t.phase === i 1364 }))) 1365 }), []) 1366 }((r = [].concat(n, a.options.modifiers), c = r.reduce((function (t, e) { 1367 var i = t[e.name]; 1368 return t[e.name] = i ? Object.assign({}, i, e, { 1369 options: Object.assign({}, i.options, e.options), 1370 data: Object.assign({}, i.data, e.data) 1371 }) : e, t 1372 }), {}), Object.keys(c).map((function (t) { 1373 return c[t] 1374 })))); 1375 return a.orderedModifiers = u.filter((function (t) { 1376 return t.enabled 1377 })), a.orderedModifiers.forEach((function (t) { 1378 var e = t.name, i = t.options, n = void 0 === i ? {} : i, s = t.effect; 1379 if ("function" == typeof s) { 1380 var o = s({state: a, name: e, instance: h, options: n}); 1381 l.push(o || function () { 1382 }) 1383 } 1384 })), h.update() 1385 }, forceUpdate: function () { 1386 if (!c) { 1387 var t = a.elements, e = t.reference, i = t.popper; 1388 if (gi(e, i)) { 1389 a.rects = { 1390 reference: fi(e, Ne(i), "fixed" === a.options.strategy), 1391 popper: xe(i) 1392 }, a.reset = !1, a.placement = a.options.placement, a.orderedModifiers.forEach((function (t) { 1393 return a.modifiersData[t.name] = Object.assign({}, t.data) 1394 })); 1395 for (var n = 0; n < a.orderedModifiers.length; n++) if (!0 !== a.reset) { 1396 var s = a.orderedModifiers[n], o = s.fn, r = s.options, l = void 0 === r ? {} : r, 1397 d = s.name; 1398 "function" == typeof o && (a = o({state: a, options: l, name: d, instance: h}) || a) 1399 } else a.reset = !1, n = -1 1400 } 1401 } 1402 }, update: (s = function () { 1403 return new Promise((function (t) { 1404 h.forceUpdate(), t(a) 1405 })) 1406 }, function () { 1407 return r || (r = new Promise((function (t) { 1408 Promise.resolve().then((function () { 1409 r = void 0, t(s()) 1410 })) 1411 }))), r 1412 }), destroy: function () { 1413 d(), c = !0 1414 } 1415 }; 1416 if (!gi(t, e)) return h; 1417 1418 function d() { 1419 l.forEach((function (t) { 1420 return t() 1421 })), l = [] 1422 } 1423 1424 return h.setOptions(i).then((function (t) { 1425 !c && i.onFirstUpdate && i.onFirstUpdate(t) 1426 })), h 1427 } 1428 } 1429 1430 var bi = _i(), vi = _i({defaultModifiers: [Ve, di, Re, ve]}), 1431 yi = _i({defaultModifiers: [Ve, di, Re, ve, hi, ri, ui, He, ci]}); 1432 const wi = Object.freeze(Object.defineProperty({ 1433 __proto__: null, 1434 afterMain: ce, 1435 afterRead: re, 1436 afterWrite: ue, 1437 applyStyles: ve, 1438 arrow: He, 1439 auto: Xt, 1440 basePlacements: Yt, 1441 beforeMain: ae, 1442 beforeRead: se, 1443 beforeWrite: he, 1444 bottom: Vt, 1445 clippingParents: Jt, 1446 computeStyles: Re, 1447 createPopper: yi, 1448 createPopperBase: bi, 1449 createPopperLite: vi, 1450 detectOverflow: si, 1451 end: Gt, 1452 eventListeners: Ve, 1453 flip: ri, 1454 hide: ci, 1455 left: Qt, 1456 main: le, 1457 modifierPhases: fe, 1458 offset: hi, 1459 placements: ne, 1460 popper: te, 1461 popperGenerator: _i, 1462 popperOffsets: di, 1463 preventOverflow: ui, 1464 read: oe, 1465 reference: ee, 1466 right: Kt, 1467 start: Ut, 1468 top: qt, 1469 variationPlacements: ie, 1470 viewport: Zt, 1471 write: de 1472 }, Symbol.toStringTag, {value: "Module"})), Ai = "dropdown", Ei = ".bs.dropdown", Ti = ".data-api", Ci = "ArrowUp", 1473 Oi = "ArrowDown", xi = `hide${Ei}`, ki = `hidden${Ei}`, Li = `show${Ei}`, Si = `shown${Ei}`, 1474 Di = `click${Ei}${Ti}`, $i = `keydown${Ei}${Ti}`, Ii = `keyup${Ei}${Ti}`, Ni = "show", 1475 Pi = '[data-bs-toggle="dropdown"]:not(.disabled):not(:disabled)', ji = `${Pi}.${Ni}`, Mi = ".dropdown-menu", 1476 Fi = p() ? "top-end" : "top-start", Hi = p() ? "top-start" : "top-end", 1477 Wi = p() ? "bottom-end" : "bottom-start", Bi = p() ? "bottom-start" : "bottom-end", 1478 zi = p() ? "left-start" : "right-start", Ri = p() ? "right-start" : "left-start", qi = { 1479 autoClose: !0, 1480 boundary: "clippingParents", 1481 display: "dynamic", 1482 offset: [0, 2], 1483 popperConfig: null, 1484 reference: "toggle" 1485 }, Vi = { 1486 autoClose: "(boolean|string)", 1487 boundary: "(string|element)", 1488 display: "string", 1489 offset: "(array|string|function)", 1490 popperConfig: "(null|object|function)", 1491 reference: "(string|element|object)" 1492 }; 1493 1494 class Ki extends W { 1495 constructor(t, e) { 1496 super(t, e), this._popper = null, this._parent = this._element.parentNode, this._menu = z.next(this._element, Mi)[0] || z.prev(this._element, Mi)[0] || z.findOne(Mi, this._parent), this._inNavbar = this._detectNavbar() 1497 } 1498 1499 static get Default() { 1500 return qi 1501 } 1502 1503 static get DefaultType() { 1504 return Vi 1505 } 1506 1507 static get NAME() { 1508 return Ai 1509 } 1510 1511 toggle() { 1512 return this._isShown() ? this.hide() : this.show() 1513 } 1514 1515 show() { 1516 if (l(this._element) || this._isShown()) return; 1517 const t = {relatedTarget: this._element}; 1518 if (!N.trigger(this._element, Li, t).defaultPrevented) { 1519 if (this._createPopper(), "ontouchstart" in document.documentElement && !this._parent.closest(".
vendor: 2,710 bytes, lines 1519-1572
1519navbar-nav")) for (const t of [].concat(...document.body.children)) N.on(t, "mouseover", h); 1520 this._element.focus(), this._element.setAttribute("aria-expanded", !0), this._menu.classList.add(Ni), this._element.classList.add(Ni), N.trigger(this._element, Si, t) 1521 } 1522 } 1523 1524 hide() { 1525 if (l(this._element) || !this._isShown()) return; 1526 const t = {relatedTarget: this._element}; 1527 this._completeHide(t) 1528 } 1529 1530 dispose() { 1531 this._popper && this._popper.destroy(), super.dispose() 1532 } 1533 1534 update() { 1535 this._inNavbar = this._detectNavbar(), this._popper && this._popper.update() 1536 } 1537 1538 _completeHide(t) { 1539 if (!N.trigger(this._element, xi, t).defaultPrevented) { 1540 if ("ontouchstart" in document.documentElement) for (const t of [].concat(...document.body.children)) N.off(t, "mouseover", h); 1541 this._popper && this._popper.destroy(), this._menu.classList.remove(Ni), this._element.classList.remove(Ni), this._element.setAttribute("aria-expanded", "false"), F.removeDataAttribute(this._menu, "popper"), N.trigger(this._element, ki, t), this._element.focus() 1542 } 1543 } 1544 1545 _getConfig(t) { 1546 if ("object" == typeof (t = super._getConfig(t)).reference && !o(t.reference) && "function" != typeof t.reference.getBoundingClientRect) throw new TypeError(`${Ai.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`); 1547 return t 1548 } 1549 1550 _createPopper() { 1551 if (void 0 === wi) throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org/docs/v2/)"); 1552 let t = this._element; 1553 "parent" === this._config.reference ? t = this._parent : o(this._config.reference) ? t = r(this._config.reference) : "object" == typeof this._config.reference && (t = this._config.reference); 1554 const e = this._getPopperConfig(); 1555 this._popper = yi(t, this._menu, e) 1556 } 1557 1558 _isShown() { 1559 return this._menu.classList.contains(Ni) 1560 } 1561 1562 _getPlacement() { 1563 const t = this._parent; 1564 if (t.classList.contains("dropend")) return zi; 1565 if (t.classList.contains("dropstart")) return Ri; 1566 if (t.classList.contains("dropup-center")) return "top"; 1567 if (t.classList.contains("dropdown-center")) return "bottom"; 1568 const e = "end" === getComputedStyle(this._menu).getPropertyValue("--bs-position").trim(); 1569 return t.classList.contains("dropup") ? e ? Hi : Fi : e ? Bi : Wi 1570 } 1571 1572 _detectNavbar() {
vendor: 18,467 bytes, lines 1573-2007
1573 return null !== this._element.closest(".navbar") 1574 } 1575 1576 _getOffset() { 1577 const {offset: t} = this._config; 1578 return "string" == typeof t ? t.split(",").map((t => Number.parseInt(t, 10))) : "function" == typeof t ? e => t(e, this._element) : t 1579 } 1580 1581 _getPopperConfig() { 1582 const t = { 1583 placement: this._getPlacement(), 1584 modifiers: [{name: "preventOverflow", options: {boundary: this._config.boundary}}, { 1585 name: "offset", 1586 options: {offset: this._getOffset()} 1587 }] 1588 }; 1589 return (this._inNavbar || "static" === this._config.display) && (F.setDataAttribute(this._menu, "popper", "static"), t.modifiers = [{ 1590 name: "applyStyles", 1591 enabled: !1 1592 }]), {...t, ...g(this._config.popperConfig, [void 0, t])} 1593 } 1594 1595 _selectMenuItem({key: t, target: e}) { 1596 const i = z.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)", this._menu).filter((t => a(t))); 1597 i.length && b(i, e, t === Oi, !i.includes(e)).focus() 1598 } 1599 1600 static jQueryInterface(t) { 1601 return this.each((function () { 1602 const e = Ki.getOrCreateInstance(this, t); 1603 if ("string" == typeof t) { 1604 if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`); 1605 e[t]() 1606 } 1607 })) 1608 } 1609 1610 static clearMenus(t) { 1611 if (2 === t.button || "keyup" === t.type && "Tab" !== t.key) return; 1612 const e = z.find(ji); 1613 for (const i of e) { 1614 const e = Ki.getInstance(i); 1615 if (!e || !1 === e._config.autoClose) continue; 1616 const n = t.composedPath(), s = n.includes(e._menu); 1617 if (n.includes(e._element) || "inside" === e._config.autoClose && !s || "outside" === e._config.autoClose && s) continue; 1618 if (e._menu.contains(t.target) && ("keyup" === t.type && "Tab" === t.key || /input|select|option|textarea|form/i.test(t.target.tagName))) continue; 1619 const o = {relatedTarget: e._element}; 1620 "click" === t.type && (o.clickEvent = t), e._completeHide(o) 1621 } 1622 } 1623 1624 static dataApiKeydownHandler(t) { 1625 const e = /input|textarea/i.test(t.target.tagName), i = "Escape" === t.key, n = [Ci, Oi].includes(t.key); 1626 if (!n && !i) return; 1627 if (e && !i) return; 1628 t.preventDefault(); 1629 const s = this.matches(Pi) ? this : z.prev(this, Pi)[0] || z.next(this, Pi)[0] || z.findOne(Pi, t.delegateTarget.parentNode), 1630 o = Ki.getOrCreateInstance(s); 1631 if (n) return t.stopPropagation(), o.show(), void o._selectMenuItem(t); 1632 o._isShown() && (t.stopPropagation(), o.hide(), s.focus()) 1633 } 1634 } 1635 1636 N.on(document, $i, Pi, Ki.dataApiKeydownHandler), N.on(document, $i, Mi, Ki.dataApiKeydownHandler), N.on(document, Di, Ki.clearMenus), N.on(document, Ii, Ki.clearMenus), N.on(document, Di, Pi, (function (t) { 1637 t.preventDefault(), Ki.getOrCreateInstance(this).toggle() 1638 })), m(Ki); 1639 const Qi = "backdrop", Xi = "show", Yi = `mousedown.bs.${Qi}`, 1640 Ui = {className: "modal-backdrop", clickCallback: null, isAnimated: !1, isVisible: !0, rootElement: "body"}, 1641 Gi = { 1642 className: "string", 1643 clickCallback: "(function|null)", 1644 isAnimated: "boolean", 1645 isVisible: "boolean", 1646 rootElement: "(element|string)" 1647 }; 1648 1649 class Ji extends H { 1650 constructor(t) { 1651 super(), this._config = this._getConfig(t), this._isAppended = !1, this._element = null 1652 } 1653 1654 static get Default() { 1655 return Ui 1656 } 1657 1658 static get DefaultType() { 1659 return Gi 1660 } 1661 1662 static get NAME() { 1663 return Qi 1664 } 1665 1666 show(t) { 1667 if (!this._config.isVisible) return void g(t); 1668 this._append(); 1669 const e = this._getElement(); 1670 this._config.isAnimated && d(e), e.classList.add(Xi), this._emulateAnimation((() => { 1671 g(t) 1672 })) 1673 } 1674 1675 hide(t) { 1676 this._config.isVisible ? (this._getElement().classList.remove(Xi), this._emulateAnimation((() => { 1677 this.dispose(), g(t) 1678 }))) : g(t) 1679 } 1680 1681 dispose() { 1682 this._isAppended && (N.off(this._element, Yi), this._element.remove(), this._isAppended = !1) 1683 } 1684 1685 _getElement() { 1686 if (!this._element) { 1687 const t = document.createElement("div"); 1688 t.className = this._config.className, this._config.isAnimated && t.classList.add("fade"), this._element = t 1689 } 1690 return this._element 1691 } 1692 1693 _configAfterMerge(t) { 1694 return t.rootElement = r(t.rootElement), t 1695 } 1696 1697 _append() { 1698 if (this._isAppended) return; 1699 const t = this._getElement(); 1700 this._config.rootElement.append(t), N.on(t, Yi, (() => { 1701 g(this._config.clickCallback) 1702 })), this._isAppended = !0 1703 } 1704 1705 _emulateAnimation(t) { 1706 _(t, this._getElement(), this._config.isAnimated) 1707 } 1708 } 1709 1710 const Zi = ".bs.focustrap", tn = `focusin${Zi}`, en = `keydown.tab${Zi}`, nn = "backward", 1711 sn = {autofocus: !0, trapElement: null}, on = {autofocus: "boolean", trapElement: "element"}; 1712 1713 class rn extends H { 1714 constructor(t) { 1715 super(), this._config = this._getConfig(t), this._isActive = !1, this._lastTabNavDirection = null 1716 } 1717 1718 static get Default() { 1719 return sn 1720 } 1721 1722 static get DefaultType() { 1723 return on 1724 } 1725 1726 static get NAME() { 1727 return "focustrap" 1728 } 1729 1730 activate() { 1731 this._isActive || (this._config.autofocus && this._config.trapElement.focus(), N.off(document, Zi), N.on(document, tn, (t => this._handleFocusin(t))), N.on(document, en, (t => this._handleKeydown(t))), this._isActive = !0) 1732 } 1733 1734 deactivate() { 1735 this._isActive && (this._isActive = !1, N.off(document, Zi)) 1736 } 1737 1738 _handleFocusin(t) { 1739 const {trapElement: e} = this._config; 1740 if (t.target === document || t.target === e || e.contains(t.target)) return; 1741 const i = z.focusableChildren(e); 1742 0 === i.length ? e.focus() : this._lastTabNavDirection === nn ? i[i.length - 1].focus() : i[0].focus() 1743 } 1744 1745 _handleKeydown(t) { 1746 "Tab" === t.key && (this._lastTabNavDirection = t.shiftKey ? nn : "forward") 1747 } 1748 } 1749 1750 const an = ".fixed-top, .fixed-bottom, .is-fixed, .sticky-top", ln = ".sticky-top", cn = "padding-right", 1751 hn = "margin-right"; 1752 1753 class dn { 1754 constructor() { 1755 this._element = document.body 1756 } 1757 1758 getWidth() { 1759 const t = document.documentElement.clientWidth; 1760 return Math.abs(window.innerWidth - t) 1761 } 1762 1763 hide() { 1764 const t = this.getWidth(); 1765 this._disableOverFlow(), this._setElementAttributes(this._element, cn, (e => e + t)), this._setElementAttributes(an, cn, (e => e + t)), this._setElementAttributes(ln, hn, (e => e - t)) 1766 } 1767 1768 reset() { 1769 this._resetElementAttributes(this._element, "overflow"), this._resetElementAttributes(this._element, cn), this._resetElementAttributes(an, cn), this._resetElementAttributes(ln, hn) 1770 } 1771 1772 isOverflowing() { 1773 return this.getWidth() > 0 1774 } 1775 1776 _disableOverFlow() { 1777 this._saveInitialAttribute(this._element, "overflow"), this._element.style.overflow = "hidden" 1778 } 1779 1780 _setElementAttributes(t, e, i) { 1781 const n = this.getWidth(); 1782 this._applyManipulationCallback(t, (t => { 1783 if (t !== this._element && window.innerWidth > t.clientWidth + n) return; 1784 this._saveInitialAttribute(t, e); 1785 const s = window.getComputedStyle(t).getPropertyValue(e); 1786 t.style.setProperty(e, `${i(Number.parseFloat(s))}px`) 1787 })) 1788 } 1789 1790 _saveInitialAttribute(t, e) { 1791 const i = t.style.getPropertyValue(e); 1792 i && F.setDataAttribute(t, e, i) 1793 } 1794 1795 _resetElementAttributes(t, e) { 1796 this._applyManipulationCallback(t, (t => { 1797 const i = F.getDataAttribute(t, e); 1798 null !== i ? (F.removeDataAttribute(t, e), t.style.setProperty(e, i)) : t.style.removeProperty(e) 1799 })) 1800 } 1801 1802 _applyManipulationCallback(t, e) { 1803 if (o(t)) e(t); else for (const i of z.find(t, this._element)) e(i) 1804 } 1805 } 1806 1807 const un = ".bs.modal", fn = `hide${un}`, pn = `hidePrevented${un}`, mn = `hidden${un}`, gn = `show${un}`, 1808 _n = `shown${un}`, bn = `resize${un}`, vn = `click.dismiss${un}`, yn = `mousedown.dismiss${un}`, 1809 wn = `keydown.dismiss${un}`, An = `click${un}.data-api`, En = "modal-open", Tn = "show", Cn = "modal-static", 1810 On = {backdrop: !0, focus: !0, keyboard: !0}, 1811 xn = {backdrop: "(boolean|string)", focus: "boolean", keyboard: "boolean"}; 1812 1813 class kn extends W { 1814 constructor(t, e) { 1815 super(t, e), this._dialog = z.findOne(".modal-dialog", this._element), this._backdrop = this._initializeBackDrop(), this._focustrap = this._initializeFocusTrap(), this._isShown = !1, this._isTransitioning = !1, this._scrollBar = new dn, this._addEventListeners() 1816 } 1817 1818 static get Default() { 1819 return On 1820 } 1821 1822 static get DefaultType() { 1823 return xn 1824 } 1825 1826 static get NAME() { 1827 return "modal" 1828 } 1829 1830 toggle(t) { 1831 return this._isShown ? this.hide() : this.show(t) 1832 } 1833 1834 show(t) { 1835 this._isShown || this._isTransitioning || N.trigger(this._element, gn, {relatedTarget: t}).defaultPrevented || (this._isShown = !0, this._isTransitioning = !0, this._scrollBar.hide(), document.body.classList.add(En), this._adjustDialog(), this._backdrop.show((() => this._showElement(t)))) 1836 } 1837 1838 hide() { 1839 this._isShown && !this._isTransitioning && (N.trigger(this._element, fn).defaultPrevented || (this._isShown = !1, this._isTransitioning = !0, this._focustrap.deactivate(), this._element.classList.remove(Tn), this._queueCallback((() => this._hideModal()), this._element, this._isAnimated()))) 1840 } 1841 1842 dispose() { 1843 N.off(window, un), N.off(this._dialog, un), this._backdrop.dispose(), this._focustrap.deactivate(), super.dispose() 1844 } 1845 1846 handleUpdate() { 1847 this._adjustDialog() 1848 } 1849 1850 _initializeBackDrop() { 1851 return new Ji({isVisible: Boolean(this._config.backdrop), isAnimated: this._isAnimated()}) 1852 } 1853 1854 _initializeFocusTrap() { 1855 return new rn({trapElement: this._element}) 1856 } 1857 1858 _showElement(t) { 1859 document.body.contains(this._element) || document.body.append(this._element), this._element.style.display = "block", this._element.removeAttribute("aria-hidden"), this._element.setAttribute("aria-modal", !0), this._element.setAttribute("role", "dialog"), this._element.scrollTop = 0; 1860 const e = z.findOne(".modal-body", this._dialog); 1861 e && (e.scrollTop = 0), d(this._element), this._element.classList.add(Tn), this._queueCallback((() => { 1862 this._config.focus && this._focustrap.activate(), this._isTransitioning = !1, N.trigger(this._element, _n, {relatedTarget: t}) 1863 }), this._dialog, this._isAnimated()) 1864 } 1865 1866 _addEventListeners() { 1867 N.on(this._element, wn, (t => { 1868 "Escape" === t.key && (this._config.keyboard ? this.hide() : this._triggerBackdropTransition()) 1869 })), N.on(window, bn, (() => { 1870 this._isShown && !this._isTransitioning && this._adjustDialog() 1871 })), N.on(this._element, yn, (t => { 1872 N.one(this._element, vn, (e => { 1873 this._element === t.target && this._element === e.target && ("static" !== this._config.backdrop ? this._config.backdrop && this.hide() : this._triggerBackdropTransition()) 1874 })) 1875 })) 1876 } 1877 1878 _hideModal() { 1879 this._element.style.display = "none", this._element.setAttribute("aria-hidden", !0), this._element.removeAttribute("aria-modal"), this._element.removeAttribute("role"), this._isTransitioning = !1, this._backdrop.hide((() => { 1880 document.body.classList.remove(En), this._resetAdjustments(), this._scrollBar.reset(), N.trigger(this._element, mn) 1881 })) 1882 } 1883 1884 _isAnimated() { 1885 return this._element.classList.contains("fade") 1886 } 1887 1888 _triggerBackdropTransition() { 1889 if (N.trigger(this._element, pn).defaultPrevented) return; 1890 const t = this._element.scrollHeight > document.documentElement.clientHeight, 1891 e = this._element.style.overflowY; 1892 "hidden" === e || this._element.classList.contains(Cn) || (t || (this._element.style.overflowY = "hidden"), this._element.classList.add(Cn), this._queueCallback((() => { 1893 this._element.classList.remove(Cn), this._queueCallback((() => { 1894 this._element.style.overflowY = e 1895 }), this._dialog) 1896 }), this._dialog), this._element.focus()) 1897 } 1898 1899 _adjustDialog() { 1900 const t = this._element.scrollHeight > document.documentElement.clientHeight, 1901 e = this._scrollBar.getWidth(), i = e > 0; 1902 if (i && !t) { 1903 const t = p() ? "paddingLeft" : "paddingRight"; 1904 this._element.style[t] = `${e}px` 1905 } 1906 if (!i && t) { 1907 const t = p() ? "paddingRight" : "paddingLeft"; 1908 this._element.style[t] = `${e}px` 1909 } 1910 } 1911 1912 _resetAdjustments() { 1913 this._element.style.paddingLeft = "", this._element.style.paddingRight = "" 1914 } 1915 1916 static jQueryInterface(t, e) { 1917 return this.each((function () { 1918 const i = kn.getOrCreateInstance(this, t); 1919 if ("string" == typeof t) { 1920 if (void 0 === i[t]) throw new TypeError(`No method named "${t}"`); 1921 i[t](e) 1922 } 1923 })) 1924 } 1925 } 1926 1927 N.on(document, An, '[data-bs-toggle="modal"]', (function (t) { 1928 const e = z.getElementFromSelector(this); 1929 ["A", "AREA"].includes(this.tagName) && t.preventDefault(), N.one(e, gn, (t => { 1930 t.defaultPrevented || N.one(e, mn, (() => { 1931 a(this) && this.focus() 1932 })) 1933 })); 1934 const i = z.findOne(".modal.show"); 1935 i && kn.getInstance(i).hide(), kn.getOrCreateInstance(e).toggle(this) 1936 })), R(kn), m(kn); 1937 const Ln = ".bs.offcanvas", Sn = ".data-api", Dn = `load${Ln}${Sn}`, $n = "show", In = "showing", Nn = "hiding", 1938 Pn = ".offcanvas.show", jn = `show${Ln}`, Mn = `shown${Ln}`, Fn = `hide${Ln}`, Hn = `hidePrevented${Ln}`, 1939 Wn = `hidden${Ln}`, Bn = `resize${Ln}`, zn = `click${Ln}${Sn}`, Rn = `keydown.dismiss${Ln}`, 1940 qn = {backdrop: !0, keyboard: !0, scroll: !1}, 1941 Vn = {backdrop: "(boolean|string)", keyboard: "boolean", scroll: "boolean"}; 1942 1943 class Kn extends W { 1944 constructor(t, e) { 1945 super(t, e), this._isShown = !1, this._backdrop = this._initializeBackDrop(), this._focustrap = this._initializeFocusTrap(), this._addEventListeners() 1946 } 1947 1948 static get Default() { 1949 return qn 1950 } 1951 1952 static get DefaultType() { 1953 return Vn 1954 } 1955 1956 static get NAME() { 1957 return "offcanvas" 1958 } 1959 1960 toggle(t) { 1961 return this._isShown ? this.hide() : this.show(t) 1962 } 1963 1964 show(t) { 1965 this._isShown || N.trigger(this._element, jn, {relatedTarget: t}).defaultPrevented || (this._isShown = !0, this._backdrop.show(), this._config.scroll || (new dn).hide(), this._element.setAttribute("aria-modal", !0), this._element.setAttribute("role", "dialog"), this._element.classList.add(In), this._queueCallback((() => { 1966 this._config.scroll && !this._config.backdrop || this._focustrap.activate(), this._element.classList.add($n), this._element.classList.remove(In), N.trigger(this._element, Mn, {relatedTarget: t}) 1967 }), this._element, !0)) 1968 } 1969 1970 hide() { 1971 this._isShown && (N.trigger(this._element, Fn).defaultPrevented || (this._focustrap.deactivate(), this._element.blur(), this._isShown = !1, this._element.classList.add(Nn), this._backdrop.hide(), this._queueCallback((() => { 1972 this._element.classList.remove($n, Nn), this._element.removeAttribute("aria-modal"), this._element.removeAttribute("role"), this._config.scroll || (new dn).reset(), N.trigger(this._element, Wn) 1973 }), this._element, !0))) 1974 } 1975 1976 dispose() { 1977 this._backdrop.dispose(), this._focustrap.deactivate(), super.dispose() 1978 } 1979 1980 _initializeBackDrop() { 1981 const t = Boolean(this._config.backdrop); 1982 return new Ji({ 1983 className: "offcanvas-backdrop", 1984 isVisible: t, 1985 isAnimated: !0, 1986 rootElement: this._element.parentNode, 1987 clickCallback: t ? () => { 1988 "static" !== this._config.backdrop ? this.hide() : N.trigger(this._element, Hn) 1989 } : null 1990 }) 1991 } 1992 1993 _initializeFocusTrap() { 1994 return new rn({trapElement: this._element}) 1995 } 1996 1997 _addEventListeners() { 1998 N.on(this._element, Rn, (t => { 1999 "Escape" === t.key && (this._config.keyboard ? this.hide() : N.trigger(this._element, Hn)) 2000 })) 2001 } 2002 2003 static jQueryInterface(t) { 2004 return this.each((function () { 2005 const e = Kn.getOrCreateInstance(this, t); 2006 if ("string" == typeof t) { 2007 if (void 0 === e[t] || t.startsWith("_") || "constructor" === t) throw new TypeError(`No method n
2007amed "${t}"`); 2008 e[t](this) 2009 } 2010 })) 2011 } 2012 } 2013 2014 N.on(document, zn, '[data-bs-toggle="offcanvas"]', (function (t) { 2015 const e = z.getElementFromSelector(this); 2016 if (["A", "AREA"].includes(this.tagName) && t.preventDefault(), l(this)) return; 2017 N.one(e, Wn, (() => { 2018 a(this) && this.focus() 2019 })); 2020 const i = z.findOne(Pn); 2021 i && i !== e && Kn.getInstance(i).hide(), Kn.getOrCreateInstance(e).toggle(this) 2022 })), N.on(window, Dn, (() => { 2023 for (const t of z.find(Pn)) Kn.getOrCreateInstance(t).show() 2024 })), N.on(window, Bn, (() => { 2025 for (const t of z.find("[aria-modal][class*=show][class*=offcanvas-]")) "fixed" !== getComputedStyle(t).position && Kn.getOrCreateInstance(t).hide() 2026 })), R(Kn), m(Kn); 2027 const Qn = { 2028 "*": ["class", "dir", "id", "lang", "role", /^aria-[\w-]*$/i], 2029 a: ["target", "href", "title", "rel"], 2030 area: [], 2031 b: [], 2032 br: [], 2033 col: [], 2034 code: [], 2035 dd: [], 2036 div: [], 2037 dl: [], 2038 dt: [], 2039 em: [], 2040 hr: [], 2041 h1: [], 2042 h2: [], 2043 h3: [], 2044 h4: [], 2045 h5: [], 2046 h6: [], 2047 i: [], 2048 img: ["src", "srcset", "alt", "title", "width", "height"], 2049 li: [], 2050 ol: [], 2051 p: [], 2052 pre: [], 2053 s: [], 2054 small: [], 2055 span: [], 2056 sub: [], 2057 sup: [], 2058 strong: [], 2059 u: [], 2060 ul: [] 2061 }, Xn = new Set(["background", "cite", "href", "itemtype", "longdesc", "poster", "src", "xlink:href"]), 2062 Yn = /^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:/?#]*(?:[/?#]|$))/i, Un = (t, e) => { 2063 const i = t.nodeName.toLowerCase(); 2064 return e.includes(i) ? !Xn.has(i) || Boolean(Yn.test(t.nodeValue)) : e.filter((t => t instanceof RegExp)).some((t => t.test(i))) 2065 }, Gn = { 2066 allowList: Qn, 2067 content: {}, 2068 extraClass: "", 2069 html: !1, 2070 sanitize: !0, 2071 sanitizeFn: null, 2072 template: "<div></div>" 2073 }, Jn = { 2074 allowList: "object", 2075 content: "object", 2076 extraClass: "(string|function)", 2077 html: "boolean", 2078 sanitize: "boolean", 2079 sanitizeFn: "(null|function)", 2080 template: "string" 2081 }, Zn = {entry: "(string|element|function|null)", selector: "(string|element)"}; 2082 2083 class ts extends H { 2084 constructor(t) { 2085 super(), this._config = this._getConfig(t) 2086 } 2087 2088 static get Default() { 2089 return Gn 2090 } 2091 2092 static get DefaultType() { 2093 return Jn 2094 } 2095 2096 static get NAME() { 2097 return "TemplateFactory" 2098 } 2099 2100 getContent() { 2101 return Object.values(this._config.content).map((t => this._resolvePossibleFunction(t))).filter(Boolean) 2102 } 2103 2104 hasContent() { 2105 return this.getContent().length > 0 2106 } 2107 2108 changeContent(t) { 2109 return this._checkContent(t), this._config.content = {...this._config.content, ...t}, this 2110 } 2111 2112 toHtml() { 2113 const t = document.createElement("div"); 2114 t.innerHTML = this._maybeSanitize(this._config.template); 2115 for (const [e, i] of Object.entries(this._config.content)) this._setContent(t, i, e); 2116 const e = t.children[0], i = this._resolvePossibleFunction(this._config.extraClass); 2117 return i && e.classList.add(...i.split(" ")), e 2118 } 2119 2120 _typeCheckConfig(t) { 2121 super._typeCheckConfig(t), this._checkContent(t.content) 2122 } 2123 2124 _checkContent(t) { 2125 for (const [e, i] of Object.entries(t)) super._typeCheckConfig({selector: e, entry: i}, Zn) 2126 } 2127 2128 _setContent(t, e, i) { 2129 const n = z.findOne(i, t); 2130 n && ((e = this._resolvePossibleFunction(e)) ? o(e) ? this._putElementInTemplate(r(e), n) : this._config.html ? n.innerHTML = this._maybeSanitize(e) : n.textContent = e : n.remove()) 2131 } 2132 2133 _maybeSanitize(t) { 2134 return this._config.sanitize ? function (t, e, i) { 2135 if (!t.length) return t; 2136 if (i && "function" == typeof i) return i(t); 2137 const n = (new window.DOMParser).parseFromString(t, "text/html"), 2138 s = [].concat(...n.body.querySelectorAll("*")); 2139 for (const t of s) { 2140 const i = t.nodeName.toLowerCase(); 2141 if (!Object.keys(e).includes(i)) { 2142 t.remove(); 2143 continue 2144 } 2145 const n = [].concat(...t.attributes), s = [].concat(e["*"] || [], e[i] || []); 2146 for (const e of n) Un(e, s) || t.removeAttribute(e.nodeName) 2147 } 2148 return n.body.innerHTML 2149 }(t, this._config.allowList, this._config.sanitizeFn) : t 2150 } 2151 2152 _resolvePossibleFunction(t) { 2153 return g(t, [void 0, this]) 2154 } 2155 2156 _putElementInTemplate(t, e) { 2157 if (this._config.html) return e.innerHTML = "", void e.append(t); 2158 e.textContent = t.textContent 2159 } 2160 } 2161 2162 const es = new Set(["sanitize", "allowList", "sanitizeFn"]), is = "fade", ns = "show", ss = ".tooltip-inner", 2163 os = ".modal", rs = "hide.bs.modal", as = "hover", ls = "focus", cs = "click", 2164 hs = {AUTO: "auto", TOP: "top", RIGHT: p() ? "left" : "right", BOTTOM: "bottom", LEFT: p() ? "right" : "left"}, 2165 ds = { 2166 allowList: Qn, 2167 animation: !0, 2168 boundary: "clippingParents", 2169 container: !1, 2170 customClass: "", 2171 delay: 0, 2172 fallbackPlacements: ["top", "right", "bottom", "left"], 2173 html: !1, 2174 offset: [0, 6], 2175 placement: "top", 2176 popperConfig: null, 2177 sanitize: !0, 2178 sanitizeFn: null, 2179 selector: !1, 2180 template: '<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>', 2181 title: "", 2182 trigger: "hover focus" 2183 }, us = { 2184 allowList: "object", 2185 animation: "boolean", 2186 boundary: "(string|element)", 2187 container: "(string|element|boolean)", 2188 customClass: "(string|function)", 2189 delay: "(number|object)", 2190 fallbackPlacements: "array", 2191 html: "boolean", 2192 offset: "(array|string|function)", 2193 placement: "(string|function)", 2194 popperConfig: "(null|object|function)", 2195 sanitize: "boolean", 2196 sanitizeFn: "(null|function)", 2197 selector: "(string|boolean)", 2198 template: "string", 2199 title: "(string|element|function)", 2200 trigger: "string" 2201 }; 2202 2203 class fs extends W { 2204 constructor(t, e) { 2205 if (void 0 === wi) throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org/docs/v2/)"); 2206 super(t, e), this._isEnabled = !0, this._timeout = 0, this._isHovered = null, this._activeTrigger = {}, this._popper = null, this._templateFactory = null, this._newContent = null, this.tip = null, this._setListeners(), this._config.selector || this._fixTitle() 2207 } 2208 2209 static get Default() { 2210 return ds 2211 } 2212 2213 static get DefaultType() { 2214 return us 2215 } 2216 2217 static get NAME() { 2218 return "tooltip" 2219 } 2220 2221 enable() { 2222 this._isEnabled = !0 2223 } 2224 2225 disable() { 2226 this._isEnabled = !1 2227 } 2228 2229 toggleEnabled() { 2230 this._isEnabled = !this._isEnabled 2231 } 2232 2233 toggle() { 2234 this._isEnabled && (this._isShown() ? this._leave() : this._enter()) 2235 } 2236 2237 dispose() { 2238 clearTimeout(this._timeout), N.off(this._element.closest(os), rs, this._hideModalHandler), this._element.getAttribute("data-bs-original-title") && this._element.setAttribute("title", this._element.getAttribute("data-bs-original-title")), this._disposePopper(), super.dispose() 2239 } 2240 2241 show() { 2242 if ("none" === this._element.style.display) throw new Error("Please use show on visible elements"); 2243 if (!this._isWithContent() || !this._isEnabled) return; 2244 const t = N.trigger(this._element, this.constructor.eventName("show")), 2245 e = (c(this._element) || this._element.ownerDocument.documentElement).contains(this._element); 2246 if (t.defaultPrevented || !e) return; 2247 this._disposePopper(); 2248 const i = this._getTipElement(); 2249 this._element.setAttribute("aria-describedby", i.getAttribute("id")); 2250 const {container: n} = this._config; 2251 if (this._element.ownerDocument.documentElement.contains(this.tip) || (n.append(i), N.trigger(this._element, this.constructor.eventName("inserted"))), this._popper = this._createPopper(i), i.classList.add(ns), "ontouchstart" in document.documentElement) for (const t of [].concat(...document.body.children)) N.on(t, "mouseover", h); 2252 this._queueCallback((() => { 2253 N.trigger(this._element, this.constructor.eventName("shown")), !1 === this._isHovered && this._leave(), this._isHovered = !1 2254 }), this.tip, this._isAnimated()) 2255 } 2256 2257 hide() { 2258 if (this._isShown() && !N.trigger(this._element, this.constructor.eventName("hide")).defaultPrevented) { 2259 if (this._getTipElement().classList.remove(ns), "ontouchstart" in document.documentElement) for (const t of [].concat(...document.body.children)) N.off(t, "mouseover", h); 2260 this._activeTrigger[cs] = !1, this._activeTrigger[ls] = !1, this._activeTrigger[as] = !1, this._isHovered = null, this._queueCallback((() => { 2261 this._isWithActiveTrigger() || (this._isHovered || this._disposePopper(), this._element.removeAttribute("aria-describedby"), N.trigger(this._element, this.constructor.eventName("hidden"))) 2262 }), this.tip, this._isAnimated()) 2263 } 2264 } 2265 2266 update() {
vendor: 7,109 bytes, lines 2267-2431
2267 this._popper && this._popper.update() 2268 } 2269 2270 _isWithContent() { 2271 return Boolean(this._getTitle()) 2272 } 2273 2274 _getTipElement() { 2275 return this.tip || (this.tip = this._createTipElement(this._newContent || this._getContentForTemplate())), this.tip 2276 } 2277 2278 _createTipElement(t) { 2279 const e = this._getTemplateFactory(t).toHtml(); 2280 if (!e) return null; 2281 e.classList.remove(is, ns), e.classList.add(`bs-${this.constructor.NAME}-auto`); 2282 const i = (t => { 2283 do { 2284 t += Math.floor(1e6 * Math.random()) 2285 } while (document.getElementById(t)); 2286 return t 2287 })(this.constructor.NAME).toString(); 2288 return e.setAttribute("id", i), this._isAnimated() && e.classList.add(is), e 2289 } 2290 2291 setContent(t) { 2292 this._newContent = t, this._isShown() && (this._disposePopper(), this.show()) 2293 } 2294 2295 _getTemplateFactory(t) { 2296 return this._templateFactory ? this._templateFactory.changeContent(t) : this._templateFactory = new ts({ 2297 ...this._config, 2298 content: t, 2299 extraClass: this._resolvePossibleFunction(this._config.customClass) 2300 }), this._templateFactory 2301 } 2302 2303 _getContentForTemplate() { 2304 return {[ss]: this._getTitle()} 2305 } 2306 2307 _getTitle() { 2308 return this._resolvePossibleFunction(this._config.title) || this._element.getAttribute("data-bs-original-title") 2309 } 2310 2311 _initializeOnDelegatedTarget(t) { 2312 return this.constructor.getOrCreateInstance(t.delegateTarget, this._getDelegateConfig()) 2313 } 2314 2315 _isAnimated() { 2316 return this._config.animation || this.tip && this.tip.classList.contains(is) 2317 } 2318 2319 _isShown() { 2320 return this.tip && this.tip.classList.contains(ns) 2321 } 2322 2323 _createPopper(t) { 2324 const e = g(this._config.placement, [this, t, this._element]), i = hs[e.toUpperCase()]; 2325 return yi(this._element, t, this._getPopperConfig(i)) 2326 } 2327 2328 _getOffset() { 2329 const {offset: t} = this._config; 2330 return "string" == typeof t ? t.split(",").map((t => Number.parseInt(t, 10))) : "function" == typeof t ? e => t(e, this._element) : t 2331 } 2332 2333 _resolvePossibleFunction(t) { 2334 return g(t, [this._element, this._element]) 2335 } 2336 2337 _getPopperConfig(t) { 2338 const e = { 2339 placement: t, 2340 modifiers: [{ 2341 name: "flip", 2342 options: {fallbackPlacements: this._config.fallbackPlacements} 2343 }, {name: "offset", options: {offset: this._getOffset()}}, { 2344 name: "preventOverflow", 2345 options: {boundary: this._config.boundary} 2346 }, {name: "arrow", options: {element: `.${this.constructor.NAME}-arrow`}}, { 2347 name: "preSetPlacement", 2348 enabled: !0, 2349 phase: "beforeMain", 2350 fn: t => { 2351 this._getTipElement().setAttribute("data-popper-placement", t.state.placement) 2352 } 2353 }] 2354 }; 2355 return {...e, ...g(this._config.popperConfig, [void 0, e])} 2356 } 2357 2358 _setListeners() { 2359 const t = this._config.trigger.split(" "); 2360 for (const e of t) if ("click" === e) N.on(this._element, this.constructor.eventName("click"), this._config.selector, (t => { 2361 const e = this._initializeOnDelegatedTarget(t); 2362 e._activeTrigger[cs] = !(e._isShown() && e._activeTrigger[cs]), e.toggle() 2363 })); else if ("manual" !== e) { 2364 const t = e === as ? this.constructor.eventName("mouseenter") : this.constructor.eventName("focusin"), 2365 i = e === as ? this.constructor.eventName("mouseleave") : this.constructor.eventName("focusout"); 2366 N.on(this._element, t, this._config.selector, (t => { 2367 const e = this._initializeOnDelegatedTarget(t); 2368 e._activeTrigger["focusin" === t.type ? ls : as] = !0, e._enter() 2369 })), N.on(this._element, i, this._config.selector, (t => { 2370 const e = this._initializeOnDelegatedTarget(t); 2371 e._activeTrigger["focusout" === t.type ? ls : as] = e._element.contains(t.relatedTarget), e._leave() 2372 })) 2373 } 2374 this._hideModalHandler = () => { 2375 this._element && this.hide() 2376 }, N.on(this._element.closest(os), rs, this._hideModalHandler) 2377 } 2378 2379 _fixTitle() { 2380 const t = this._element.getAttribute("title"); 2381 t && (this._element.getAttribute("aria-label") || this._element.textContent.trim() || this._element.setAttribute("aria-label", t), this._element.setAttribute("data-bs-original-title", t), this._element.removeAttribute("title")) 2382 } 2383 2384 _enter() { 2385 this._isShown() || this._isHovered ? this._isHovered = !0 : (this._isHovered = !0, this._setTimeout((() => { 2386 this._isHovered && this.show() 2387 }), this._config.delay.show)) 2388 } 2389 2390 _leave() { 2391 this._isWithActiveTrigger() || (this._isHovered = !1, this._setTimeout((() => { 2392 this._isHovered || this.hide() 2393 }), this._config.delay.hide)) 2394 } 2395 2396 _setTimeout(t, e) { 2397 clearTimeout(this._timeout), this._timeout = setTimeout(t, e) 2398 } 2399 2400 _isWithActiveTrigger() { 2401 return Object.values(this._activeTrigger).includes(!0) 2402 } 2403 2404 _getConfig(t) { 2405 const e = F.getDataAttributes(this._element); 2406 for (const t of Object.keys(e)) es.has(t) && delete e[t]; 2407 return t = {...e, ..."object" == typeof t && t ? t : {}}, t = this._mergeConfigObj(t), t = this._configAfterMerge(t), this._typeCheckConfig(t), t 2408 } 2409 2410 _configAfterMerge(t) { 2411 return t.container = !1 === t.container ? document.body : r(t.container), "number" == typeof t.delay && (t.delay = { 2412 show: t.delay, 2413 hide: t.delay 2414 }), "number" == typeof t.title && (t.title = t.title.toString()), "number" == typeof t.content && (t.content = t.content.toString()), t 2415 } 2416 2417 _getDelegateConfig() { 2418 const t = {}; 2419 for (const [e, i] of Object.entries(this._config)) this.constructor.Default[e] !== i && (t[e] = i); 2420 return t.selector = !1, t.trigger = "manual", t 2421 } 2422 2423 _disposePopper() { 2424 this._popper && (this._popper.destroy(), this._popper = null), this.tip && (this.tip.remove(), this.tip = null) 2425 } 2426 2427 static jQueryInterface(t) { 2428 return this.each((function () { 2429 const e = fs.getOrCreateInstance(this, t); 2430 if ("string" == typeof t) { 2431 if (void 0 === e[t]) throw new TypeError(`No method n
2431amed "${t}"`); 2432 e[t]() 2433 } 2434 })) 2435 } 2436 } 2437 2438 m(fs); 2439 const ps = ".popover-header", ms = ".popover-body", gs = { 2440 ...fs.Default, 2441 content: "", 2442 offset: [0, 8], 2443 placement: "right", 2444 template: '<div class="popover" role="tooltip"><div class="popover-arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>', 2445 trigger: "click" 2446 }, _s = {...fs.DefaultType, content: "(null|string|element|function)"}; 2447 2448 class bs extends fs { 2449 static get Default() { 2450 return gs 2451 } 2452 2453 static get DefaultType() { 2454 return _s 2455 } 2456 2457 static get NAME() { 2458 return "popover" 2459 } 2460 2461 _isWithContent() { 2462 return this._getTitle() || this._getContent() 2463 } 2464 2465 _getContentForTemplate() { 2466 return {[ps]: this._getTitle(), [ms]: this._getContent()} 2467 } 2468 2469 _getContent() { 2470 return this._resolvePossibleFunction(this._config.content) 2471 } 2472 2473 static jQueryInterface(t) { 2474 return this.each((function () { 2475 const e = bs.getOrCreateInstance(this, t); 2476 if ("string" == typeof t) { 2477 if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`); 2478 e[t]() 2479 } 2480 })) 2481 } 2482 } 2483 2484 m(bs); 2485 const vs = ".bs.scrollspy", ys = `activate${vs}`, ws = `click${vs}`, As = `load${vs}.data-api`, Es = "active", 2486 Ts = "[href]", Cs = ".nav-link", Os = `${Cs}, .nav-item > ${Cs}, .list-group-item`, 2487 xs = {offset: null, rootMargin: "0px 0px -25%", smoothScroll: !1, target: null, threshold: [.1, .5, 1]}, ks = { 2488 offset: "(number|null)", 2489 rootMargin: "string", 2490 smoothScroll: "boolean", 2491 target: "element", 2492 threshold: "array" 2493 }; 2494 2495 class Ls extends W { 2496 constructor(t, e) { 2497 super(t, e), this._targetLinks = new Map, this._observableSections = new Map, this._rootElement = "visible" === getComputedStyle(this._element).overflowY ? null : this._element, this._activeTarget = null, this._observer = null, this._previousScrollData = { 2498 visibleEntryTop: 0, 2499 parentScrollTop: 0 2500 }, this.refresh() 2501 } 2502 2503 static get Default() { 2504 return xs 2505 } 2506 2507 static get DefaultType() { 2508 return ks 2509 } 2510 2511 static get NAME() { 2512 return "scrollspy" 2513 } 2514 2515 refresh() { 2516 this._initializeTargetsAndObservables(), this._maybeEnableSmoothScroll(), this._observer ? this._observer.disconnect() : this._observer = this._getNewObserver(); 2517 for (const t of this._observableSections.values()) this._observer.observe(t) 2518 } 2519 2520 dispose() { 2521 this._observer.disconnect(), super.dispose() 2522 } 2523 2524 _configAfterMerge(t) { 2525 return t.target = r(t.target) || document.body, t.rootMargin = t.offset ? `${t.offset}px 0px -30%` : t.rootMargin, "string" == typeof t.threshold && (t.threshold = t.threshold.split(",").map((t => Number.parseFloat(t)))), t 2526 } 2527 2528 _maybeEnableSmoothScroll() { 2529 this._config.smoothScroll && (N.off(this._config.target, ws), N.on(this._config.target, ws, Ts, (t => { 2530 const e = this._observableSections.get(t.target.hash); 2531 if (e) { 2532 t.preventDefault(); 2533 const i = this._rootElement || window, n = e.offsetTop - this._element.offsetTop; 2534 if (i.scrollTo) return void i.scrollTo({top: n, behavior: "smooth"}); 2535 i.scrollTop = n 2536 } 2537 }))) 2538 } 2539 2540 _getNewObserver() { 2541 const t = {root: this._rootElement, threshold: this._config.threshold, rootMargin: this._config.rootMargin}; 2542 return new IntersectionObserver((t => this._observerCallback(t)), t) 2543 } 2544 2545 _observerCallback(t) { 2546 const e = t => this._targetLinks.get(`#${t.target.id}`), i = t => { 2547 this._previousScrollData.visibleEntryTop = t.target.offsetTop, this._process(e(t)) 2548 }, n = (this._rootElement || document.documentElement).scrollTop, 2549 s = n >= this._previousScrollData.parentScrollTop; 2550 this._previousScrollData.parentScrollTop = n; 2551 for (const o of t) { 2552 if (!o.isIntersecting) { 2553 this._activeTarget = null, this._clearActiveClass(e(o)); 2554 continue 2555 } 2556 const t = o.target.offsetTop >= this._previousScrollData.visibleEntryTop; 2557 if (s && t) { 2558 if (i(o), !n) return 2559 } else s || t || i(o) 2560 } 2561 } 2562 2563 _initializeTargetsAndObservables() { 2564 this._targetLinks = new Map, this._observableSections = new Map; 2565 const t = z.find(Ts, this._config.target); 2566 for (const e of t) { 2567 if (!e.hash || l(e)) continue; 2568 const t = z.findOne(decodeURI(e.hash), this._element); 2569 a(t) && (this._targetLinks.set(decodeURI(e.hash), e), this._observableSections.set(e.hash, t)) 2570 } 2571 } 2572 2573 _process(t) { 2574 this._activeTarget !== t && (this._clearActiveClass(this._config.target), this._activeTarget = t, t.classList.add(Es), this._activateParents(t), N.trigger(this._element, ys, {relatedTarget: t})) 2575 } 2576 2577 _activateParents(t) { 2578 if (t.classList.contains("dropdown-item")) z.findOne(".dropdown-toggle", t.closest(".dropdown")).classList.add(Es); else for (const e of z.parents(t, ".nav, .list-group")) for (const t of z.prev(e, Os)) t.classList.add(Es) 2579 } 2580 2581 _clearActiveClass(t) { 2582 t.classList.remove(Es); 2583 const e = z.find(`${Ts}.${Es}`, t); 2584 for (const t of e) t.classList.remove(Es) 2585 } 2586 2587 static jQueryInterface(t) { 2588 return this.each((function () { 2589 const e = Ls.getOrCreateInstance(this, t); 2590 if ("string" == typeof t) { 2591 if (void 0 === e[t] || t.startsWith("_") || "constructor" === t) throw new TypeError(`No method n
2591amed "${t}"`); 2592 e[t]() 2593 } 2594 })) 2595 } 2596 } 2597 2598 N.on(window, As, (() => { 2599 for (const t of z.find('[data-bs-spy="scroll"]')) Ls.getOrCreateInstance(t) 2600 })), m(Ls); 2601 const Ss = ".bs.tab", Ds = `hide${Ss}`, $s = `hidden${Ss}`, Is = `show${Ss}`, Ns = `shown${Ss}`, Ps = `click${Ss}`, 2602 js = `keydown${Ss}`, Ms = `load${Ss}`, Fs = "ArrowLeft", Hs = "ArrowRight", Ws = "ArrowUp", Bs = "ArrowDown", 2603 zs = "Home", Rs = "End", qs = "active", Vs = "fade", Ks = "show", Qs = ".dropdown-toggle", Xs = `:not(${Qs})`, 2604 Ys = '[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]', 2605 Us = `.nav-link${Xs}, .list-group-item${Xs}, [role="tab"]${Xs}, ${Ys}`, 2606 Gs = `.${qs}[data-bs-toggle="tab"], .${qs}[data-bs-toggle="pill"], .${qs}[data-bs-toggle="list"]`; 2607 2608 class Js extends W { 2609 constructor(t) { 2610 super(t), this._parent = this._element.closest('.list-group, .nav, [role="tablist"]'), this._parent && (this._setInitialAttributes(this._parent, this._getChildren()), N.on(this._element, js, (t => this._keydown(t)))) 2611 } 2612 2613 static get NAME() { 2614 return "tab" 2615 } 2616 2617 show() { 2618 const t = this._element; 2619 if (this._elemIsActive(t)) return; 2620 const e = this._getActiveElem(), i = e ? N.trigger(e, Ds, {relatedTarget: t}) : null; 2621 N.trigger(t, Is, {relatedTarget: e}).defaultPrevented || i && i.defaultPrevented || (this._deactivate(e, t), this._activate(t, e)) 2622 } 2623 2624 _activate(t, e) { 2625 t && (t.classList.add(qs), this._activate(z.getElementFromSelector(t)), this._queueCallback((() => { 2626 "tab" === t.getAttribute("role") ? (t.removeAttribute("tabindex"), t.setAttribute("aria-selected", !0), this._toggleDropDown(t, !0), N.trigger(t, Ns, {relatedTarget: e})) : t.classList.add(Ks) 2627 }), t, t.classList.contains(Vs))) 2628 } 2629 2630 _deactivate(t, e) { 2631 t && (t.classList.remove(qs), t.blur(), this._deactivate(z.getElementFromSelector(t)), this._queueCallback((() => { 2632 "tab" === t.getAttribute("role") ? (t.setAttribute("aria-selected", !1), t.setAttribute("tabindex", "-1"), this._toggleDropDown(t, !1), N.trigger(t, $s, {relatedTarget: e})) : t.classList.remove(Ks) 2633 }), t, t.classList.contains(Vs))) 2634 } 2635 2636 _keydown(t) { 2637 if (![Fs, Hs, Ws, Bs, zs, Rs].includes(t.key)) return; 2638 t.stopPropagation(), t.preventDefault(); 2639 const e = this._getChildren().filter((t => !l(t))); 2640 let i; 2641 if ([zs, Rs].includes(t.key)) i = e[t.key === zs ? 0 : e.length - 1]; else { 2642 const n = [Hs, Bs].includes(t.key); 2643 i = b(e, t.target, n, !0) 2644 } 2645 i && (i.focus({preventScroll: !0}), Js.getOrCreateInstance(i).show()) 2646 } 2647 2648 _getChildren() { 2649 return z.find(Us, this._parent) 2650 } 2651 2652 _getActiveElem() { 2653 return this._getChildren().find((t => this._elemIsActive(t))) || null 2654 } 2655 2656 _setInitialAttributes(t, e) { 2657 this._setAttributeIfNotExists(t, "role", "tablist"); 2658 for (const t of e) this._setInitialAttributesOnChild(t) 2659 } 2660 2661 _setInitialAttributesOnChild(t) { 2662 t = this._getInnerElement(t); 2663 const e = this._elemIsActive(t), i = this._getOuterElement(t); 2664 t.setAttribute("aria-selected", e), i !== t && this._setAttributeIfNotExists(i, "role", "presentation"), e || t.setAttribute("tabindex", "-1"), this._setAttributeIfNotExists(t, "role", "tab"), this._setInitialAttributesOnTargetPanel(t) 2665 } 2666 2667 _setInitialAttributesOnTargetPanel(t) { 2668 const e = z.getElementFromSelector(t); 2669 e && (this._setAttributeIfNotExists(e, "role", "tabpanel"), t.id && this._setAttributeIfNotExists(e, "aria-labelledby", `${t.id}`)) 2670 } 2671 2672 _toggleDropDown(t, e) { 2673 const i = this._getOuterElement(t); 2674 if (!i.classList.contains("dropdown")) return; 2675 const n = (t, n) => { 2676 const s = z.findOne(t, i); 2677 s && s.classList.toggle(n, e) 2678 }; 2679 n(Qs, qs), n(".dropdown-menu", Ks), i.setAttribute("aria-expanded", e) 2680 } 2681 2682 _setAttributeIfNotExists(t, e, i) { 2683 t.hasAttribute(e) || t.setAttribute(e, i) 2684 } 2685 2686 _elemIsActive(t) { 2687 return t.classList.contains(qs) 2688 } 2689 2690 _getInnerElement(t) { 2691 return t.matches(Us) ? t : z.findOne(Us, t) 2692 } 2693 2694 _getOuterElement(t) {
vendor: 4,194 bytes, lines 2695-2802
2695 return t.closest(".nav-item, .list-group-item") || t 2696 } 2697 2698 static jQueryInterface(t) { 2699 return this.each((function () { 2700 const e = Js.getOrCreateInstance(this); 2701 if ("string" == typeof t) { 2702 if (void 0 === e[t] || t.startsWith("_") || "constructor" === t) throw new TypeError(`No method named "${t}"`); 2703 e[t]() 2704 } 2705 })) 2706 } 2707 } 2708 2709 N.on(document, Ps, Ys, (function (t) { 2710 ["A", "AREA"].includes(this.tagName) && t.preventDefault(), l(this) || Js.getOrCreateInstance(this).show() 2711 })), N.on(window, Ms, (() => { 2712 for (const t of z.find(Gs)) Js.getOrCreateInstance(t) 2713 })), m(Js); 2714 const Zs = ".bs.toast", to = `mouseover${Zs}`, eo = `mouseout${Zs}`, io = `focusin${Zs}`, no = `focusout${Zs}`, 2715 so = `hide${Zs}`, oo = `hidden${Zs}`, ro = `show${Zs}`, ao = `shown${Zs}`, lo = "hide", co = "show", 2716 ho = "showing", uo = {animation: "boolean", autohide: "boolean", delay: "number"}, 2717 fo = {animation: !0, autohide: !0, delay: 5e3}; 2718 2719 class po extends W { 2720 constructor(t, e) { 2721 super(t, e), this._timeout = null, this._hasMouseInteraction = !1, this._hasKeyboardInteraction = !1, this._setListeners() 2722 } 2723 2724 static get Default() { 2725 return fo 2726 } 2727 2728 static get DefaultType() { 2729 return uo 2730 } 2731 2732 static get NAME() { 2733 return "toast" 2734 } 2735 2736 show() { 2737 N.trigger(this._element, ro).defaultPrevented || (this._clearTimeout(), this._config.animation && this._element.classList.add("fade"), this._element.classList.remove(lo), d(this._element), this._element.classList.add(co, ho), this._queueCallback((() => { 2738 this._element.classList.remove(ho), N.trigger(this._element, ao), this._maybeScheduleHide() 2739 }), this._element, this._config.animation)) 2740 } 2741 2742 hide() { 2743 this.isShown() && (N.trigger(this._element, so).defaultPrevented || (this._element.classList.add(ho), this._queueCallback((() => { 2744 this._element.classList.add(lo), this._element.classList.remove(ho, co), N.trigger(this._element, oo) 2745 }), this._element, this._config.animation))) 2746 } 2747 2748 dispose() { 2749 this._clearTimeout(), this.isShown() && this._element.classList.remove(co), super.dispose() 2750 } 2751 2752 isShown() { 2753 return this._element.classList.contains(co) 2754 } 2755 2756 _maybeScheduleHide() { 2757 this._config.autohide && (this._hasMouseInteraction || this._hasKeyboardInteraction || (this._timeout = setTimeout((() => { 2758 this.hide() 2759 }), this._config.delay))) 2760 } 2761 2762 _onInteraction(t, e) { 2763 switch (t.type) { 2764 case"mouseover": 2765 case"mouseout": 2766 this._hasMouseInteraction = e; 2767 break; 2768 case"focusin": 2769 case"focusout": 2770 this._hasKeyboardInteraction = e 2771 } 2772 if (e) return void this._clearTimeout(); 2773 const i = t.relatedTarget; 2774 this._element === i || this._element.contains(i) || this._maybeScheduleHide() 2775 } 2776 2777 _setListeners() { 2778 N.on(this._element, to, (t => this._onInteraction(t, !0))), N.on(this._element, eo, (t => this._onInteraction(t, !1))), N.on(this._element, io, (t => this._onInteraction(t, !0))), N.on(this._element, no, (t => this._onInteraction(t, !1))) 2779 } 2780 2781 _clearTimeout() { 2782 clearTimeout(this._timeout), this._timeout = null 2783 } 2784 2785 static jQueryInterface(t) { 2786 return this.each((function () { 2787 const e = po.getOrCreateInstance(this, t); 2788 if ("string" == typeof t) { 2789 if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`); 2790 e[t](this) 2791 } 2792 })) 2793 } 2794 } 2795 2796 return R(po), m(po), { 2797 Alert: Q, 2798 Button: Y, 2799 Carousel: Lt, 2800 Collapse: Rt, 2801 Dropdown: Ki, 2802 Modal: kn,
2803 Offcanvas: Kn, 2804 Popover: bs, 2805 ScrollSpy: Ls, 2806 Tab: Js, 2807 Toast: po, 2808 Tooltip: fs 2809 } 2810})); 2811//
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.