vendor: 6,395 bytes, lines 1-179
1/*! 2 * Bootstrap util.js v4.6.2 (https://getbootstrap.com/) 3 * Copyright 2011-2022 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 (global, factory) { 7 typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('jquery')) : 8 typeof define === 'function' && define.amd ? define(['jquery'], factory) : 9 (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Util = factory(global.jQuery)); 10})(this, (function ($) { 'use strict'; 11 12 function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } 13 14 var $__default = /*#__PURE__*/_interopDefaultLegacy($); 15 16 /** 17 * -------------------------------------------------------------------------- 18 * Bootstrap (v4.6.2): util.js 19 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) 20 * -------------------------------------------------------------------------- 21 */ 22 /** 23 * Private TransitionEnd Helpers 24 */ 25 26 var TRANSITION_END = 'transitionend'; 27 var MAX_UID = 1000000; 28 var MILLISECONDS_MULTIPLIER = 1000; // Shoutout AngusCroll (https://goo.gl/pxwQGp) 29 30 function toType(obj) { 31 if (obj === null || typeof obj === 'undefined') { 32 return "" + obj; 33 } 34 35 return {}.toString.call(obj).match(/\s([a-z]+)/i)[1].toLowerCase(); 36 } 37 38 function getSpecialTransitionEndEvent() { 39 return { 40 bindType: TRANSITION_END, 41 delegateType: TRANSITION_END, 42 handle: function handle(event) { 43 if ($__default["default"](event.target).is(this)) { 44 return event.handleObj.handler.apply(this, arguments); // eslint-disable-line prefer-rest-params 45 } 46 47 return undefined; 48 } 49 }; 50 } 51 52 function transitionEndEmulator(duration) { 53 var _this = this; 54 55 var called = false; 56 $__default["default"](this).one(Util.TRANSITION_END, function () { 57 called = true; 58 }); 59 setTimeout(function () { 60 if (!called) { 61 Util.triggerTransitionEnd(_this); 62 } 63 }, duration); 64 return this; 65 } 66 67 function setTransitionEndSupport() { 68 $__default["default"].fn.emulateTransitionEnd = transitionEndEmulator; 69 $__default["default"].event.special[Util.TRANSITION_END] = getSpecialTransitionEndEvent(); 70 } 71 /** 72 * Public Util API 73 */ 74 75 76 var Util = { 77 TRANSITION_END: 'bsTransitionEnd', 78 getUID: function getUID(prefix) { 79 do { 80 // eslint-disable-next-line no-bitwise 81 prefix += ~~(Math.random() * MAX_UID); // "~~" acts like a faster Math.floor() here 82 } while (document.getElementById(prefix)); 83 84 return prefix; 85 }, 86 getSelectorFromElement: function getSelectorFromElement(element) { 87 var selector = element.getAttribute('data-target'); 88 89 if (!selector || selector === '#') { 90 var hrefAttr = element.getAttribute('href'); 91 selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : ''; 92 } 93 94 try { 95 return document.querySelector(selector) ? selector : null; 96 } catch (_) { 97 return null; 98 } 99 }, 100 getTransitionDurationFromElement: function getTransitionDurationFromElement(element) { 101 if (!element) { 102 return 0; 103 } // Get transition-duration of the element 104 105 106 var transitionDuration = $__default["default"](element).css('transition-duration'); 107 var transitionDelay = $__default["default"](element).css('transition-delay'); 108 var floatTransitionDuration = parseFloat(transitionDuration); 109 var floatTransitionDelay = parseFloat(transitionDelay); // Return 0 if element or transition duration is not found 110 111 if (!floatTransitionDuration && !floatTransitionDelay) { 112 return 0; 113 } // If multiple durations are defined, take the first 114 115 116 transitionDuration = transitionDuration.split(',')[0]; 117 transitionDelay = transitionDelay.split(',')[0]; 118 return (parseFloat(transitionDuration) + parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER; 119 }, 120 reflow: function reflow(element) { 121 return element.offsetHeight; 122 }, 123 triggerTransitionEnd: function triggerTransitionEnd(element) { 124 $__default["default"](element).trigger(TRANSITION_END); 125 }, 126 supportsTransitionEnd: function supportsTransitionEnd() { 127 return Boolean(TRANSITION_END); 128 }, 129 isElement: function isElement(obj) { 130 return (obj[0] || obj).nodeType; 131 }, 132 typeCheckConfig: function typeCheckConfig(componentName, config, configTypes) { 133 for (var property in configTypes) { 134 if (Object.prototype.hasOwnProperty.call(configTypes, property)) { 135 var expectedTypes = configTypes[property]; 136 var value = config[property]; 137 var valueType = value && Util.isElement(value) ? 'element' : toType(value); 138 139 if (!new RegExp(expectedTypes).test(valueType)) { 140 throw new Error(componentName.toUpperCase() + ": " + ("Option \"" + property + "\" provided type \"" + valueType + "\" ") + ("but expected type \"" + expectedTypes + "\".")); 141 } 142 } 143 } 144 }, 145 findShadowRoot: function findShadowRoot(element) { 146 if (!document.documentElement.attachShadow) { 147 return null; 148 } // Can find the shadow root otherwise it'll return the document 149 150 151 if (typeof element.getRootNode === 'function') { 152 var root = element.getRootNode(); 153 return root instanceof ShadowRoot ? root : null; 154 } 155 156 if (element instanceof ShadowRoot) { 157 return element; 158 } // when we don't find a shadow root 159 160 161 if (!element.parentNode) { 162 return null; 163 } 164 165 return Util.findShadowRoot(element.parentNode); 166 }, 167 jQueryDetection: function jQueryDetection() { 168 if (typeof $__default["default"] === 'undefined') { 169 throw new TypeError('Bootstrap\'s JavaScript requires jQuery. jQuery must be included before Bootstrap\'s JavaScript.'); 170 } 171 172 var version = $__default["default"].fn.jquery.split(' ')[0].split('.'); 173 var minMajor = 1; 174 var ltMajor = 2; 175 var minMinor = 9; 176 var minPatch = 1; 177 var maxMajor = 4; 178 179 if (version[0] < ltMajor && version[1] < minMinor || version[0] === minMajor && version[1] === minMinor && version[2] < minPatch || version[0] >
vendor: 6,397 bytes, lines 179-352
179= maxMajor) { 180 throw new Error('Bootstrap\'s JavaScript requires at least jQuery v1.9.1 but less than v4.0.0'); 181 } 182 } 183 }; 184 Util.jQueryDetection(); 185 setTransitionEndSupport(); 186 187 return Util; 188 189})); 190 191/*! 192 * Bootstrap tab.js v4.6.2 (https://getbootstrap.com/) 193 * Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) 194 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) 195 */ 196(function (global, factory) { 197 typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('jquery'), require('./util.js')) : 198 typeof define === 'function' && define.amd ? define(['jquery', './util'], factory) : 199 (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Tab = factory(global.jQuery, global.Util)); 200})(this, (function ($, Util) { 'use strict'; 201 202 function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } 203 204 var $__default = /*#__PURE__*/_interopDefaultLegacy($); 205 var Util__default = /*#__PURE__*/_interopDefaultLegacy(Util); 206 207 function _defineProperties(target, props) { 208 for (var i = 0; i < props.length; i++) { 209 var descriptor = props[i]; 210 descriptor.enumerable = descriptor.enumerable || false; 211 descriptor.configurable = true; 212 if ("value" in descriptor) descriptor.writable = true; 213 Object.defineProperty(target, descriptor.key, descriptor); 214 } 215 } 216 217 function _createClass(Constructor, protoProps, staticProps) { 218 if (protoProps) _defineProperties(Constructor.prototype, protoProps); 219 if (staticProps) _defineProperties(Constructor, staticProps); 220 Object.defineProperty(Constructor, "prototype", { 221 writable: false 222 }); 223 return Constructor; 224 } 225 226 /** 227 * Constants 228 */ 229 230 var NAME = 'tab'; 231 var VERSION = '4.6.2'; 232 var DATA_KEY = 'bs.tab'; 233 var EVENT_KEY = "." + DATA_KEY; 234 var DATA_API_KEY = '.data-api'; 235 var JQUERY_NO_CONFLICT = $__default["default"].fn[NAME]; 236 var CLASS_NAME_DROPDOWN_MENU = 'dropdown-menu'; 237 var CLASS_NAME_ACTIVE = 'active'; 238 var CLASS_NAME_DISABLED = 'disabled'; 239 var CLASS_NAME_FADE = 'fade'; 240 var CLASS_NAME_SHOW = 'show'; 241 var EVENT_HIDE = "hide" + EVENT_KEY; 242 var EVENT_HIDDEN = "hidden" + EVENT_KEY; 243 var EVENT_SHOW = "show" + EVENT_KEY; 244 var EVENT_SHOWN = "shown" + EVENT_KEY; 245 var EVENT_CLICK_DATA_API = "click" + EVENT_KEY + DATA_API_KEY; 246 var SELECTOR_DROPDOWN = '.dropdown'; 247 var SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'; 248 var SELECTOR_ACTIVE = '.active'; 249 var SELECTOR_ACTIVE_UL = '> li > .active'; 250 var SELECTOR_DATA_TOGGLE = '[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]'; 251 var SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'; 252 var SELECTOR_DROPDOWN_ACTIVE_CHILD = '> .dropdown-menu .active'; 253 /** 254 * Class definition 255 */ 256 257 var Tab = /*#__PURE__*/function () { 258 function Tab(element) { 259 this._element = element; 260 } // Getters 261 262 263 var _proto = Tab.prototype; 264 265 // Public 266 _proto.show = function show() { 267 var _this = this; 268 269 if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && $__default["default"](this._element).hasClass(CLASS_NAME_ACTIVE) || $__default["default"](this._element).hasClass(CLASS_NAME_DISABLED) || this._element.hasAttribute('disabled')) { 270 return; 271 } 272 273 var target; 274 var previous; 275 var listElement = $__default["default"](this._element).closest(SELECTOR_NAV_LIST_GROUP)[0]; 276 var selector = Util__default["default"].getSelectorFromElement(this._element); 277 278 if (listElement) { 279 var itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE; 280 previous = $__default["default"].makeArray($__default["default"](listElement).find(itemSelector)); 281 previous = previous[previous.length - 1]; 282 } 283 284 var hideEvent = $__default["default"].Event(EVENT_HIDE, { 285 relatedTarget: this._element 286 }); 287 var showEvent = $__default["default"].Event(EVENT_SHOW, { 288 relatedTarget: previous 289 }); 290 291 if (previous) { 292 $__default["default"](previous).trigger(hideEvent); 293 } 294 295 $__default["default"](this._element).trigger(showEvent); 296 297 if (showEvent.isDefaultPrevented() || hideEvent.isDefaultPrevented()) { 298 return; 299 } 300 301 if (selector) { 302 target = document.querySelector(selector); 303 } 304 305 this._activate(this._element, listElement); 306 307 var complete = function complete() { 308 var hiddenEvent = $__default["default"].Event(EVENT_HIDDEN, { 309 relatedTarget: _this._element 310 }); 311 var shownEvent = $__default["default"].Event(EVENT_SHOWN, { 312 relatedTarget: previous 313 }); 314 $__default["default"](previous).trigger(hiddenEvent); 315 $__default["default"](_this._element).trigger(shownEvent); 316 }; 317 318 if (target) { 319 this._activate(target, target.parentNode, complete); 320 } else { 321 complete(); 322 } 323 }; 324 325 _proto.dispose = function dispose() { 326 $__default["default"].removeData(this._element, DATA_KEY); 327 this._element = null; 328 } // Private 329 ; 330 331 _proto._activate = function _activate(element, container, callback) { 332 var _this2 = this; 333 334 var activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ? $__default["default"](container).find(SELECTOR_ACTIVE_UL) : $__default["default"](container).children(SELECTOR_ACTIVE); 335 var active = activeElements[0]; 336 var isTransitioning = callback && active && $__default["default"](active).hasClass(CLASS_NAME_FADE); 337 338 var complete = function complete() { 339 return _this2._transitionComplete(element, active, callback); 340 }; 341 342 if (active && isTransitioning) { 343 var transitionDuration = Util__default["default"].getTransitionDurationFromElement(active); 344 $__default["default"](active).removeClass(CLASS_NAME_SHOW).one(Util__default["default"].TRANSITION_END, complete).emulateTransitionEnd(transitionDuration); 345 } else { 346 complete(); 347 } 348 }; 349 350 _proto._transitionComplete = function _transitionComplete(element, active, callback) { 351 if (active) { 352 $__default["default"](active).removeClass(CLASS_NAME_ACTIVE);
vendor: 2,612 bytes, lines 353-452
353 var dropdownChild = $__default["default"](active.parentNode).find(SELECTOR_DROPDOWN_ACTIVE_CHILD)[0]; 354 355 if (dropdownChild) { 356 $__default["default"](dropdownChild).removeClass(CLASS_NAME_ACTIVE); 357 } 358 359 if (active.getAttribute('role') === 'tab') { 360 active.setAttribute('aria-selected', false); 361 } 362 } 363 364 $__default["default"](element).addClass(CLASS_NAME_ACTIVE); 365 366 if (element.getAttribute('role') === 'tab') { 367 element.setAttribute('aria-selected', true); 368 } 369 370 Util__default["default"].reflow(element); 371 372 if (element.classList.contains(CLASS_NAME_FADE)) { 373 element.classList.add(CLASS_NAME_SHOW); 374 } 375 376 var parent = element.parentNode; 377 378 if (parent && parent.nodeName === 'LI') { 379 parent = parent.parentNode; 380 } 381 382 if (parent && $__default["default"](parent).hasClass(CLASS_NAME_DROPDOWN_MENU)) { 383 var dropdownElement = $__default["default"](element).closest(SELECTOR_DROPDOWN)[0]; 384 385 if (dropdownElement) { 386 var dropdownToggleList = [].slice.call(dropdownElement.querySelectorAll(SELECTOR_DROPDOWN_TOGGLE)); 387 $__default["default"](dropdownToggleList).addClass(CLASS_NAME_ACTIVE); 388 } 389 390 element.setAttribute('aria-expanded', true); 391 } 392 393 if (callback) { 394 callback(); 395 } 396 } // Static 397 ; 398 399 Tab._jQueryInterface = function _jQueryInterface(config) { 400 return this.each(function () { 401 var $this = $__default["default"](this); 402 var data = $this.data(DATA_KEY); 403 404 if (!data) { 405 data = new Tab(this); 406 $this.data(DATA_KEY, data); 407 } 408 409 if (typeof config === 'string') { 410 if (typeof data[config] === 'undefined') { 411 throw new TypeError("No method named \"" + config + "\""); 412 } 413 414 data[config](); 415 } 416 }); 417 }; 418 419 _createClass(Tab, null, [{ 420 key: "VERSION", 421 get: function get() { 422 return VERSION; 423 } 424 }]); 425 426 return Tab; 427 }(); 428 /** 429 * Data API implementation 430 */ 431 432 433 $__default["default"](document).on(EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) { 434 event.preventDefault(); 435 436 Tab._jQueryInterface.call($__default["default"](this), 'show'); 437 }); 438 /** 439 * jQuery 440 */ 441 442 $__default["default"].fn[NAME] = Tab._jQueryInterface; 443 $__default["default"].fn[NAME].Constructor = Tab; 444 445 $__default["default"].fn[NAME].noConflict = function () { 446 $__default["default"].fn[NAME] = JQUERY_NO_CONFLICT; 447 return Tab._jQueryInterface; 448 }; 449 450 return Tab; 451 452}));
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.