diff --git a/.prettierignore b/.prettierignore index 7a3d9f0..1f3fd06 100644 --- a/.prettierignore +++ b/.prettierignore @@ -1,2 +1,3 @@ node_modules -.js \ No newline at end of file +.js +test_web \ No newline at end of file diff --git a/test_web/static/js/bootstrap.min.js b/test_web/static/js/bootstrap.min.js index 10b2d4d..e5a2429 100644 --- a/test_web/static/js/bootstrap.min.js +++ b/test_web/static/js/bootstrap.min.js @@ -1,5043 +1,7 @@ /*! - * Bootstrap v4.3.1 (https://getbootstrap.com/) - * Copyright 2011-2019 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - */ -!(function (t, e) { - 'object' == typeof exports && 'undefined' != typeof module - ? e(exports, require('jquery'), require('popper.js')) - : 'function' == typeof define && define.amd - ? define(['exports', 'jquery', 'popper.js'], e) - : e(((t = t || self).bootstrap = {}), t.jQuery, t.Popper); -})(this, function (t, g, u) { - 'use strict'; - function i(t, e) { - for (var n = 0; n < e.length; n++) { - var i = e[n]; - (i.enumerable = i.enumerable || !1), - (i.configurable = !0), - 'value' in i && (i.writable = !0), - Object.defineProperty(t, i.key, i); - } - } - function s(t, e, n) { - return e && i(t.prototype, e), n && i(t, n), t; - } - function l(o) { - for (var t = 1; t < arguments.length; t++) { - var r = null != arguments[t] ? arguments[t] : {}, - e = Object.keys(r); - 'function' == typeof Object.getOwnPropertySymbols && - (e = e.concat( - Object.getOwnPropertySymbols(r).filter(function (t) { - return Object.getOwnPropertyDescriptor(r, t).enumerable; - }), - )), - e.forEach(function (t) { - var e, n, i; - (e = o), - (i = r[(n = t)]), - n in e - ? Object.defineProperty(e, n, { - value: i, - enumerable: !0, - configurable: !0, - writable: !0, - }) - : (e[n] = i); - }); - } - return o; - } - (g = g && g.hasOwnProperty('default') ? g.default : g), - (u = u && u.hasOwnProperty('default') ? u.default : u); - var e = 'transitionend'; - function n(t) { - var e = this, - n = !1; - return ( - g(this).one(_.TRANSITION_END, function () { - n = !0; - }), - setTimeout(function () { - n || _.triggerTransitionEnd(e); - }, t), - this - ); - } - var _ = { - TRANSITION_END: 'bsTransitionEnd', - getUID: function (t) { - for (; (t += ~~(1e6 * Math.random())), document.getElementById(t); ); - return t; - }, - getSelectorFromElement: function (t) { - var e = t.getAttribute('data-target'); - if (!e || '#' === e) { - var n = t.getAttribute('href'); - e = n && '#' !== n ? n.trim() : ''; - } - try { - return document.querySelector(e) ? e : null; - } catch (t) { - return null; - } - }, - getTransitionDurationFromElement: function (t) { - if (!t) return 0; - var e = g(t).css('transition-duration'), - n = g(t).css('transition-delay'), - i = parseFloat(e), - o = parseFloat(n); - return i || o - ? ((e = e.split(',')[0]), - (n = n.split(',')[0]), - 1e3 * (parseFloat(e) + parseFloat(n))) - : 0; - }, - reflow: function (t) { - return t.offsetHeight; - }, - triggerTransitionEnd: function (t) { - g(t).trigger(e); - }, - supportsTransitionEnd: function () { - return Boolean(e); - }, - isElement: function (t) { - return (t[0] || t).nodeType; - }, - typeCheckConfig: function (t, e, n) { - for (var i in n) - if (Object.prototype.hasOwnProperty.call(n, i)) { - var o = n[i], - r = e[i], - s = - r && _.isElement(r) - ? 'element' - : ((a = r), - {}.toString - .call(a) - .match(/\s([a-z]+)/i)[1] - .toLowerCase()); - if (!new RegExp(o).test(s)) - throw new Error( - t.toUpperCase() + - ': Option "' + - i + - '" provided type "' + - s + - '" but expected type "' + - o + - '".', - ); - } - var a; - }, - findShadowRoot: function (t) { - if (!document.documentElement.attachShadow) return null; - if ('function' != typeof t.getRootNode) - return t instanceof ShadowRoot - ? t - : t.parentNode - ? _.findShadowRoot(t.parentNode) - : null; - var e = t.getRootNode(); - return e instanceof ShadowRoot ? e : null; - }, - }; - (g.fn.emulateTransitionEnd = n), - (g.event.special[_.TRANSITION_END] = { - bindType: e, - delegateType: e, - handle: function (t) { - if (g(t.target).is(this)) - return t.handleObj.handler.apply(this, arguments); - }, - }); - var o = 'alert', - r = 'bs.alert', - a = '.' + r, - c = g.fn[o], - h = { - CLOSE: 'close' + a, - CLOSED: 'closed' + a, - CLICK_DATA_API: 'click' + a + '.data-api', - }, - f = 'alert', - d = 'fade', - m = 'show', - p = (function () { - function i(t) { - this._element = t; - } - var t = i.prototype; - return ( - (t.close = function (t) { - var e = this._element; - t && (e = this._getRootElement(t)), - this._triggerCloseEvent(e).isDefaultPrevented() || - this._removeElement(e); - }), - (t.dispose = function () { - g.removeData(this._element, r), (this._element = null); - }), - (t._getRootElement = function (t) { - var e = _.getSelectorFromElement(t), - n = !1; - return ( - e && (n = document.querySelector(e)), - n || (n = g(t).closest('.' + f)[0]), - n - ); - }), - (t._triggerCloseEvent = function (t) { - var e = g.Event(h.CLOSE); - return g(t).trigger(e), e; - }), - (t._removeElement = function (e) { - var n = this; - if ((g(e).removeClass(m), g(e).hasClass(d))) { - var t = _.getTransitionDurationFromElement(e); - g(e) - .one(_.TRANSITION_END, function (t) { - return n._destroyElement(e, t); - }) - .emulateTransitionEnd(t); - } else this._destroyElement(e); - }), - (t._destroyElement = function (t) { - g(t).detach().trigger(h.CLOSED).remove(); - }), - (i._jQueryInterface = function (n) { - return this.each(function () { - var t = g(this), - e = t.data(r); - e || ((e = new i(this)), t.data(r, e)), 'close' === n && e[n](this); - }); - }), - (i._handleDismiss = function (e) { - return function (t) { - t && t.preventDefault(), e.close(this); - }; - }), - s(i, null, [ - { - key: 'VERSION', - get: function () { - return '4.3.1'; - }, - }, - ]), - i - ); - })(); - g(document).on( - h.CLICK_DATA_API, - '[data-dismiss="alert"]', - p._handleDismiss(new p()), - ), - (g.fn[o] = p._jQueryInterface), - (g.fn[o].Constructor = p), - (g.fn[o].noConflict = function () { - return (g.fn[o] = c), p._jQueryInterface; - }); - var v = 'button', - y = 'bs.button', - E = '.' + y, - C = '.data-api', - T = g.fn[v], - S = 'active', - b = 'btn', - I = 'focus', - D = '[data-toggle^="button"]', - w = '[data-toggle="buttons"]', - A = 'input:not([type="hidden"])', - N = '.active', - O = '.btn', - k = { - CLICK_DATA_API: 'click' + E + C, - FOCUS_BLUR_DATA_API: 'focus' + E + C + ' blur' + E + C, - }, - P = (function () { - function n(t) { - this._element = t; - } - var t = n.prototype; - return ( - (t.toggle = function () { - var t = !0, - e = !0, - n = g(this._element).closest(w)[0]; - if (n) { - var i = this._element.querySelector(A); - if (i) { - if ('radio' === i.type) - if (i.checked && this._element.classList.contains(S)) t = !1; - else { - var o = n.querySelector(N); - o && g(o).removeClass(S); - } - if (t) { - if ( - i.hasAttribute('disabled') || - n.hasAttribute('disabled') || - i.classList.contains('disabled') || - n.classList.contains('disabled') - ) - return; - (i.checked = !this._element.classList.contains(S)), - g(i).trigger('change'); - } - i.focus(), (e = !1); - } - } - e && - this._element.setAttribute( - 'aria-pressed', - !this._element.classList.contains(S), - ), - t && g(this._element).toggleClass(S); - }), - (t.dispose = function () { - g.removeData(this._element, y), (this._element = null); - }), - (n._jQueryInterface = function (e) { - return this.each(function () { - var t = g(this).data(y); - t || ((t = new n(this)), g(this).data(y, t)), - 'toggle' === e && t[e](); - }); - }), - s(n, null, [ - { - key: 'VERSION', - get: function () { - return '4.3.1'; - }, - }, - ]), - n - ); - })(); - g(document) - .on(k.CLICK_DATA_API, D, function (t) { - t.preventDefault(); - var e = t.target; - g(e).hasClass(b) || (e = g(e).closest(O)), - P._jQueryInterface.call(g(e), 'toggle'); - }) - .on(k.FOCUS_BLUR_DATA_API, D, function (t) { - var e = g(t.target).closest(O)[0]; - g(e).toggleClass(I, /^focus(in)?$/.test(t.type)); - }), - (g.fn[v] = P._jQueryInterface), - (g.fn[v].Constructor = P), - (g.fn[v].noConflict = function () { - return (g.fn[v] = T), P._jQueryInterface; - }); - var L = 'carousel', - j = 'bs.carousel', - H = '.' + j, - R = '.data-api', - x = g.fn[L], - F = { - interval: 5e3, - keyboard: !0, - slide: !1, - pause: 'hover', - wrap: !0, - touch: !0, - }, - U = { - interval: '(number|boolean)', - keyboard: 'boolean', - slide: '(boolean|string)', - pause: '(string|boolean)', - wrap: 'boolean', - touch: 'boolean', - }, - W = 'next', - q = 'prev', - M = 'left', - K = 'right', - Q = { - SLIDE: 'slide' + H, - SLID: 'slid' + H, - KEYDOWN: 'keydown' + H, - MOUSEENTER: 'mouseenter' + H, - MOUSELEAVE: 'mouseleave' + H, - TOUCHSTART: 'touchstart' + H, - TOUCHMOVE: 'touchmove' + H, - TOUCHEND: 'touchend' + H, - POINTERDOWN: 'pointerdown' + H, - POINTERUP: 'pointerup' + H, - DRAG_START: 'dragstart' + H, - LOAD_DATA_API: 'load' + H + R, - CLICK_DATA_API: 'click' + H + R, - }, - B = 'carousel', - V = 'active', - Y = 'slide', - z = 'carousel-item-right', - X = 'carousel-item-left', - $ = 'carousel-item-next', - G = 'carousel-item-prev', - J = 'pointer-event', - Z = '.active', - tt = '.active.carousel-item', - et = '.carousel-item', - nt = '.carousel-item img', - it = '.carousel-item-next, .carousel-item-prev', - ot = '.carousel-indicators', - rt = '[data-slide], [data-slide-to]', - st = '[data-ride="carousel"]', - at = { TOUCH: 'touch', PEN: 'pen' }, - lt = (function () { - function r(t, e) { - (this._items = null), - (this._interval = null), - (this._activeElement = null), - (this._isPaused = !1), - (this._isSliding = !1), - (this.touchTimeout = null), - (this.touchStartX = 0), - (this.touchDeltaX = 0), - (this._config = this._getConfig(e)), - (this._element = t), - (this._indicatorsElement = this._element.querySelector(ot)), - (this._touchSupported = - 'ontouchstart' in document.documentElement || - 0 < navigator.maxTouchPoints), - (this._pointerEvent = Boolean( - window.PointerEvent || window.MSPointerEvent, - )), - this._addEventListeners(); - } - var t = r.prototype; - return ( - (t.next = function () { - this._isSliding || this._slide(W); - }), - (t.nextWhenVisible = function () { - !document.hidden && - g(this._element).is(':visible') && - 'hidden' !== g(this._element).css('visibility') && - this.next(); - }), - (t.prev = function () { - this._isSliding || this._slide(q); - }), - (t.pause = function (t) { - t || (this._isPaused = !0), - this._element.querySelector(it) && - (_.triggerTransitionEnd(this._element), this.cycle(!0)), - clearInterval(this._interval), - (this._interval = null); - }), - (t.cycle = function (t) { - t || (this._isPaused = !1), - this._interval && - (clearInterval(this._interval), (this._interval = null)), - this._config.interval && - !this._isPaused && - (this._interval = setInterval( - (document.visibilityState - ? this.nextWhenVisible - : this.next - ).bind(this), - this._config.interval, - )); - }), - (t.to = function (t) { - var e = this; - this._activeElement = this._element.querySelector(tt); - var n = this._getItemIndex(this._activeElement); - if (!(t > this._items.length - 1 || t < 0)) - if (this._isSliding) - g(this._element).one(Q.SLID, function () { - return e.to(t); - }); - else { - if (n === t) return this.pause(), void this.cycle(); - var i = n < t ? W : q; - this._slide(i, this._items[t]); - } - }), - (t.dispose = function () { - g(this._element).off(H), - g.removeData(this._element, j), - (this._items = null), - (this._config = null), - (this._element = null), - (this._interval = null), - (this._isPaused = null), - (this._isSliding = null), - (this._activeElement = null), - (this._indicatorsElement = null); - }), - (t._getConfig = function (t) { - return (t = l({}, F, t)), _.typeCheckConfig(L, t, U), t; - }), - (t._handleSwipe = function () { - var t = Math.abs(this.touchDeltaX); - if (!(t <= 40)) { - var e = t / this.touchDeltaX; - 0 < e && this.prev(), e < 0 && this.next(); - } - }), - (t._addEventListeners = function () { - var e = this; - this._config.keyboard && - g(this._element).on(Q.KEYDOWN, function (t) { - return e._keydown(t); - }), - 'hover' === this._config.pause && - g(this._element) - .on(Q.MOUSEENTER, function (t) { - return e.pause(t); - }) - .on(Q.MOUSELEAVE, function (t) { - return e.cycle(t); - }), - this._config.touch && this._addTouchEventListeners(); - }), - (t._addTouchEventListeners = function () { - var n = this; - if (this._touchSupported) { - var e = function (t) { - n._pointerEvent && at[t.originalEvent.pointerType.toUpperCase()] - ? (n.touchStartX = t.originalEvent.clientX) - : n._pointerEvent || - (n.touchStartX = t.originalEvent.touches[0].clientX); - }, - i = function (t) { - n._pointerEvent && - at[t.originalEvent.pointerType.toUpperCase()] && - (n.touchDeltaX = t.originalEvent.clientX - n.touchStartX), - n._handleSwipe(), - 'hover' === n._config.pause && - (n.pause(), - n.touchTimeout && clearTimeout(n.touchTimeout), - (n.touchTimeout = setTimeout(function (t) { - return n.cycle(t); - }, 500 + n._config.interval))); - }; - g(this._element.querySelectorAll(nt)).on( - Q.DRAG_START, - function (t) { - return t.preventDefault(); - }, - ), - this._pointerEvent - ? (g(this._element).on(Q.POINTERDOWN, function (t) { - return e(t); - }), - g(this._element).on(Q.POINTERUP, function (t) { - return i(t); - }), - this._element.classList.add(J)) - : (g(this._element).on(Q.TOUCHSTART, function (t) { - return e(t); - }), - g(this._element).on(Q.TOUCHMOVE, function (t) { - var e; - (e = t).originalEvent.touches && - 1 < e.originalEvent.touches.length - ? (n.touchDeltaX = 0) - : (n.touchDeltaX = - e.originalEvent.touches[0].clientX - n.touchStartX); - }), - g(this._element).on(Q.TOUCHEND, function (t) { - return i(t); - })); - } - }), - (t._keydown = function (t) { - if (!/input|textarea/i.test(t.target.tagName)) - switch (t.which) { - case 37: - t.preventDefault(), this.prev(); - break; - case 39: - t.preventDefault(), this.next(); - } - }), - (t._getItemIndex = function (t) { - return ( - (this._items = - t && t.parentNode - ? [].slice.call(t.parentNode.querySelectorAll(et)) - : []), - this._items.indexOf(t) - ); - }), - (t._getItemByDirection = function (t, e) { - var n = t === W, - i = t === q, - o = this._getItemIndex(e), - r = this._items.length - 1; - if (((i && 0 === o) || (n && o === r)) && !this._config.wrap) - return e; - var s = (o + (t === q ? -1 : 1)) % this._items.length; - return -1 === s - ? this._items[this._items.length - 1] - : this._items[s]; - }), - (t._triggerSlideEvent = function (t, e) { - var n = this._getItemIndex(t), - i = this._getItemIndex(this._element.querySelector(tt)), - o = g.Event(Q.SLIDE, { - relatedTarget: t, - direction: e, - from: i, - to: n, - }); - return g(this._element).trigger(o), o; - }), - (t._setActiveIndicatorElement = function (t) { - if (this._indicatorsElement) { - var e = [].slice.call(this._indicatorsElement.querySelectorAll(Z)); - g(e).removeClass(V); - var n = this._indicatorsElement.children[this._getItemIndex(t)]; - n && g(n).addClass(V); - } - }), - (t._slide = function (t, e) { - var n, - i, - o, - r = this, - s = this._element.querySelector(tt), - a = this._getItemIndex(s), - l = e || (s && this._getItemByDirection(t, s)), - c = this._getItemIndex(l), - h = Boolean(this._interval); - if ( - ((o = t === W ? ((n = X), (i = $), M) : ((n = z), (i = G), K)), - l && g(l).hasClass(V)) - ) - this._isSliding = !1; - else if ( - !this._triggerSlideEvent(l, o).isDefaultPrevented() && - s && - l - ) { - (this._isSliding = !0), - h && this.pause(), - this._setActiveIndicatorElement(l); - var u = g.Event(Q.SLID, { - relatedTarget: l, - direction: o, - from: a, - to: c, - }); - if (g(this._element).hasClass(Y)) { - g(l).addClass(i), _.reflow(l), g(s).addClass(n), g(l).addClass(n); - var f = parseInt(l.getAttribute('data-interval'), 10); - this._config.interval = f - ? ((this._config.defaultInterval = - this._config.defaultInterval || this._config.interval), - f) - : this._config.defaultInterval || this._config.interval; - var d = _.getTransitionDurationFromElement(s); - g(s) - .one(_.TRANSITION_END, function () { - g(l) - .removeClass(n + ' ' + i) - .addClass(V), - g(s).removeClass(V + ' ' + i + ' ' + n), - (r._isSliding = !1), - setTimeout(function () { - return g(r._element).trigger(u); - }, 0); - }) - .emulateTransitionEnd(d); - } else - g(s).removeClass(V), - g(l).addClass(V), - (this._isSliding = !1), - g(this._element).trigger(u); - h && this.cycle(); - } - }), - (r._jQueryInterface = function (i) { - return this.each(function () { - var t = g(this).data(j), - e = l({}, F, g(this).data()); - 'object' == typeof i && (e = l({}, e, i)); - var n = 'string' == typeof i ? i : e.slide; - if ( - (t || ((t = new r(this, e)), g(this).data(j, t)), - 'number' == typeof i) - ) - t.to(i); - else if ('string' == typeof n) { - if ('undefined' == typeof t[n]) - throw new TypeError('No method named "' + n + '"'); - t[n](); - } else e.interval && e.ride && (t.pause(), t.cycle()); - }); - }), - (r._dataApiClickHandler = function (t) { - var e = _.getSelectorFromElement(this); - if (e) { - var n = g(e)[0]; - if (n && g(n).hasClass(B)) { - var i = l({}, g(n).data(), g(this).data()), - o = this.getAttribute('data-slide-to'); - o && (i.interval = !1), - r._jQueryInterface.call(g(n), i), - o && g(n).data(j).to(o), - t.preventDefault(); - } - } - }), - s(r, null, [ - { - key: 'VERSION', - get: function () { - return '4.3.1'; - }, - }, - { - key: 'Default', - get: function () { - return F; - }, - }, - ]), - r - ); - })(); - g(document).on(Q.CLICK_DATA_API, rt, lt._dataApiClickHandler), - g(window).on(Q.LOAD_DATA_API, function () { - for ( - var t = [].slice.call(document.querySelectorAll(st)), - e = 0, - n = t.length; - e < n; - e++ - ) { - var i = g(t[e]); - lt._jQueryInterface.call(i, i.data()); - } - }), - (g.fn[L] = lt._jQueryInterface), - (g.fn[L].Constructor = lt), - (g.fn[L].noConflict = function () { - return (g.fn[L] = x), lt._jQueryInterface; - }); - var ct = 'collapse', - ht = 'bs.collapse', - ut = '.' + ht, - ft = g.fn[ct], - dt = { toggle: !0, parent: '' }, - gt = { toggle: 'boolean', parent: '(string|element)' }, - _t = { - SHOW: 'show' + ut, - SHOWN: 'shown' + ut, - HIDE: 'hide' + ut, - HIDDEN: 'hidden' + ut, - CLICK_DATA_API: 'click' + ut + '.data-api', - }, - mt = 'show', - pt = 'collapse', - vt = 'collapsing', - yt = 'collapsed', - Et = 'width', - Ct = 'height', - Tt = '.show, .collapsing', - St = '[data-toggle="collapse"]', - bt = (function () { - function a(e, t) { - (this._isTransitioning = !1), - (this._element = e), - (this._config = this._getConfig(t)), - (this._triggerArray = [].slice.call( - document.querySelectorAll( - '[data-toggle="collapse"][href="#' + - e.id + - '"],[data-toggle="collapse"][data-target="#' + - e.id + - '"]', - ), - )); - for ( - var n = [].slice.call(document.querySelectorAll(St)), - i = 0, - o = n.length; - i < o; - i++ - ) { - var r = n[i], - s = _.getSelectorFromElement(r), - a = [].slice - .call(document.querySelectorAll(s)) - .filter(function (t) { - return t === e; - }); - null !== s && - 0 < a.length && - ((this._selector = s), this._triggerArray.push(r)); - } - (this._parent = this._config.parent ? this._getParent() : null), - this._config.parent || - this._addAriaAndCollapsedClass(this._element, this._triggerArray), - this._config.toggle && this.toggle(); - } - var t = a.prototype; - return ( - (t.toggle = function () { - g(this._element).hasClass(mt) ? this.hide() : this.show(); - }), - (t.show = function () { - var t, - e, - n = this; - if ( - !this._isTransitioning && - !g(this._element).hasClass(mt) && - (this._parent && - 0 === - (t = [].slice - .call(this._parent.querySelectorAll(Tt)) - .filter(function (t) { - return 'string' == typeof n._config.parent - ? t.getAttribute('data-parent') === n._config.parent - : t.classList.contains(pt); - })).length && - (t = null), - !( - t && - (e = g(t).not(this._selector).data(ht)) && - e._isTransitioning - )) - ) { - var i = g.Event(_t.SHOW); - if ((g(this._element).trigger(i), !i.isDefaultPrevented())) { - t && - (a._jQueryInterface.call(g(t).not(this._selector), 'hide'), - e || g(t).data(ht, null)); - var o = this._getDimension(); - g(this._element).removeClass(pt).addClass(vt), - (this._element.style[o] = 0), - this._triggerArray.length && - g(this._triggerArray) - .removeClass(yt) - .attr('aria-expanded', !0), - this.setTransitioning(!0); - var r = 'scroll' + (o[0].toUpperCase() + o.slice(1)), - s = _.getTransitionDurationFromElement(this._element); - g(this._element) - .one(_.TRANSITION_END, function () { - g(n._element).removeClass(vt).addClass(pt).addClass(mt), - (n._element.style[o] = ''), - n.setTransitioning(!1), - g(n._element).trigger(_t.SHOWN); - }) - .emulateTransitionEnd(s), - (this._element.style[o] = this._element[r] + 'px'); - } - } - }), - (t.hide = function () { - var t = this; - if (!this._isTransitioning && g(this._element).hasClass(mt)) { - var e = g.Event(_t.HIDE); - if ((g(this._element).trigger(e), !e.isDefaultPrevented())) { - var n = this._getDimension(); - (this._element.style[n] = - this._element.getBoundingClientRect()[n] + 'px'), - _.reflow(this._element), - g(this._element).addClass(vt).removeClass(pt).removeClass(mt); - var i = this._triggerArray.length; - if (0 < i) - for (var o = 0; o < i; o++) { - var r = this._triggerArray[o], - s = _.getSelectorFromElement(r); - if (null !== s) - g([].slice.call(document.querySelectorAll(s))).hasClass( - mt, - ) || g(r).addClass(yt).attr('aria-expanded', !1); - } - this.setTransitioning(!0); - this._element.style[n] = ''; - var a = _.getTransitionDurationFromElement(this._element); - g(this._element) - .one(_.TRANSITION_END, function () { - t.setTransitioning(!1), - g(t._element) - .removeClass(vt) - .addClass(pt) - .trigger(_t.HIDDEN); - }) - .emulateTransitionEnd(a); - } - } - }), - (t.setTransitioning = function (t) { - this._isTransitioning = t; - }), - (t.dispose = function () { - g.removeData(this._element, ht), - (this._config = null), - (this._parent = null), - (this._element = null), - (this._triggerArray = null), - (this._isTransitioning = null); - }), - (t._getConfig = function (t) { - return ( - ((t = l({}, dt, t)).toggle = Boolean(t.toggle)), - _.typeCheckConfig(ct, t, gt), - t - ); - }), - (t._getDimension = function () { - return g(this._element).hasClass(Et) ? Et : Ct; - }), - (t._getParent = function () { - var t, - n = this; - _.isElement(this._config.parent) - ? ((t = this._config.parent), - 'undefined' != typeof this._config.parent.jquery && - (t = this._config.parent[0])) - : (t = document.querySelector(this._config.parent)); - var e = - '[data-toggle="collapse"][data-parent="' + - this._config.parent + - '"]', - i = [].slice.call(t.querySelectorAll(e)); - return ( - g(i).each(function (t, e) { - n._addAriaAndCollapsedClass(a._getTargetFromElement(e), [e]); - }), - t - ); - }), - (t._addAriaAndCollapsedClass = function (t, e) { - var n = g(t).hasClass(mt); - e.length && g(e).toggleClass(yt, !n).attr('aria-expanded', n); - }), - (a._getTargetFromElement = function (t) { - var e = _.getSelectorFromElement(t); - return e ? document.querySelector(e) : null; - }), - (a._jQueryInterface = function (i) { - return this.each(function () { - var t = g(this), - e = t.data(ht), - n = l({}, dt, t.data(), 'object' == typeof i && i ? i : {}); - if ( - (!e && n.toggle && /show|hide/.test(i) && (n.toggle = !1), - e || ((e = new a(this, n)), t.data(ht, e)), - 'string' == typeof i) - ) { - if ('undefined' == typeof e[i]) - throw new TypeError('No method named "' + i + '"'); - e[i](); - } - }); - }), - s(a, null, [ - { - key: 'VERSION', - get: function () { - return '4.3.1'; - }, - }, - { - key: 'Default', - get: function () { - return dt; - }, - }, - ]), - a - ); - })(); - g(document).on(_t.CLICK_DATA_API, St, function (t) { - 'A' === t.currentTarget.tagName && t.preventDefault(); - var n = g(this), - e = _.getSelectorFromElement(this), - i = [].slice.call(document.querySelectorAll(e)); - g(i).each(function () { - var t = g(this), - e = t.data(ht) ? 'toggle' : n.data(); - bt._jQueryInterface.call(t, e); - }); - }), - (g.fn[ct] = bt._jQueryInterface), - (g.fn[ct].Constructor = bt), - (g.fn[ct].noConflict = function () { - return (g.fn[ct] = ft), bt._jQueryInterface; - }); - var It = 'dropdown', - Dt = 'bs.dropdown', - wt = '.' + Dt, - At = '.data-api', - Nt = g.fn[It], - Ot = new RegExp('38|40|27'), - kt = { - HIDE: 'hide' + wt, - HIDDEN: 'hidden' + wt, - SHOW: 'show' + wt, - SHOWN: 'shown' + wt, - CLICK: 'click' + wt, - CLICK_DATA_API: 'click' + wt + At, - KEYDOWN_DATA_API: 'keydown' + wt + At, - KEYUP_DATA_API: 'keyup' + wt + At, - }, - Pt = 'disabled', - Lt = 'show', - jt = 'dropup', - Ht = 'dropright', - Rt = 'dropleft', - xt = 'dropdown-menu-right', - Ft = 'position-static', - Ut = '[data-toggle="dropdown"]', - Wt = '.dropdown form', - qt = '.dropdown-menu', - Mt = '.navbar-nav', - Kt = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)', - Qt = 'top-start', - Bt = 'top-end', - Vt = 'bottom-start', - Yt = 'bottom-end', - zt = 'right-start', - Xt = 'left-start', - $t = { - offset: 0, - flip: !0, - boundary: 'scrollParent', - reference: 'toggle', - display: 'dynamic', - }, - Gt = { - offset: '(number|string|function)', - flip: 'boolean', - boundary: '(string|element)', - reference: '(string|element)', - display: 'string', - }, - Jt = (function () { - function c(t, e) { - (this._element = t), - (this._popper = null), - (this._config = this._getConfig(e)), - (this._menu = this._getMenuElement()), - (this._inNavbar = this._detectNavbar()), - this._addEventListeners(); - } - var t = c.prototype; - return ( - (t.toggle = function () { - if (!this._element.disabled && !g(this._element).hasClass(Pt)) { - var t = c._getParentFromElement(this._element), - e = g(this._menu).hasClass(Lt); - if ((c._clearMenus(), !e)) { - var n = { relatedTarget: this._element }, - i = g.Event(kt.SHOW, n); - if ((g(t).trigger(i), !i.isDefaultPrevented())) { - if (!this._inNavbar) { - if ('undefined' == typeof u) - throw new TypeError( - "Bootstrap's dropdowns require Popper.js (https://popper.js.org/)", - ); - var o = this._element; - 'parent' === this._config.reference - ? (o = t) - : _.isElement(this._config.reference) && - ((o = this._config.reference), - 'undefined' != typeof this._config.reference.jquery && - (o = this._config.reference[0])), - 'scrollParent' !== this._config.boundary && - g(t).addClass(Ft), - (this._popper = new u( - o, - this._menu, - this._getPopperConfig(), - )); - } - 'ontouchstart' in document.documentElement && - 0 === g(t).closest(Mt).length && - g(document.body).children().on('mouseover', null, g.noop), - this._element.focus(), - this._element.setAttribute('aria-expanded', !0), - g(this._menu).toggleClass(Lt), - g(t).toggleClass(Lt).trigger(g.Event(kt.SHOWN, n)); - } - } - } - }), - (t.show = function () { - if ( - !( - this._element.disabled || - g(this._element).hasClass(Pt) || - g(this._menu).hasClass(Lt) - ) - ) { - var t = { relatedTarget: this._element }, - e = g.Event(kt.SHOW, t), - n = c._getParentFromElement(this._element); - g(n).trigger(e), - e.isDefaultPrevented() || - (g(this._menu).toggleClass(Lt), - g(n).toggleClass(Lt).trigger(g.Event(kt.SHOWN, t))); - } - }), - (t.hide = function () { - if ( - !this._element.disabled && - !g(this._element).hasClass(Pt) && - g(this._menu).hasClass(Lt) - ) { - var t = { relatedTarget: this._element }, - e = g.Event(kt.HIDE, t), - n = c._getParentFromElement(this._element); - g(n).trigger(e), - e.isDefaultPrevented() || - (g(this._menu).toggleClass(Lt), - g(n).toggleClass(Lt).trigger(g.Event(kt.HIDDEN, t))); - } - }), - (t.dispose = function () { - g.removeData(this._element, Dt), - g(this._element).off(wt), - (this._element = null), - (this._menu = null) !== this._popper && - (this._popper.destroy(), (this._popper = null)); - }), - (t.update = function () { - (this._inNavbar = this._detectNavbar()), - null !== this._popper && this._popper.scheduleUpdate(); - }), - (t._addEventListeners = function () { - var e = this; - g(this._element).on(kt.CLICK, function (t) { - t.preventDefault(), t.stopPropagation(), e.toggle(); - }); - }), - (t._getConfig = function (t) { - return ( - (t = l({}, this.constructor.Default, g(this._element).data(), t)), - _.typeCheckConfig(It, t, this.constructor.DefaultType), - t - ); - }), - (t._getMenuElement = function () { - if (!this._menu) { - var t = c._getParentFromElement(this._element); - t && (this._menu = t.querySelector(qt)); - } - return this._menu; - }), - (t._getPlacement = function () { - var t = g(this._element.parentNode), - e = Vt; - return ( - t.hasClass(jt) - ? ((e = Qt), g(this._menu).hasClass(xt) && (e = Bt)) - : t.hasClass(Ht) - ? (e = zt) - : t.hasClass(Rt) - ? (e = Xt) - : g(this._menu).hasClass(xt) && (e = Yt), - e - ); - }), - (t._detectNavbar = function () { - return 0 < g(this._element).closest('.navbar').length; - }), - (t._getOffset = function () { - var e = this, - t = {}; - return ( - 'function' == typeof this._config.offset - ? (t.fn = function (t) { - return ( - (t.offsets = l( - {}, - t.offsets, - e._config.offset(t.offsets, e._element) || {}, - )), - t - ); - }) - : (t.offset = this._config.offset), - t - ); - }), - (t._getPopperConfig = function () { - var t = { - placement: this._getPlacement(), - modifiers: { - offset: this._getOffset(), - flip: { enabled: this._config.flip }, - preventOverflow: { boundariesElement: this._config.boundary }, - }, - }; - return ( - 'static' === this._config.display && - (t.modifiers.applyStyle = { enabled: !1 }), - t - ); - }), - (c._jQueryInterface = function (e) { - return this.each(function () { - var t = g(this).data(Dt); - if ( - (t || - ((t = new c(this, 'object' == typeof e ? e : null)), - g(this).data(Dt, t)), - 'string' == typeof e) - ) { - if ('undefined' == typeof t[e]) - throw new TypeError('No method named "' + e + '"'); - t[e](); - } - }); - }), - (c._clearMenus = function (t) { - if (!t || (3 !== t.which && ('keyup' !== t.type || 9 === t.which))) - for ( - var e = [].slice.call(document.querySelectorAll(Ut)), - n = 0, - i = e.length; - n < i; - n++ - ) { - var o = c._getParentFromElement(e[n]), - r = g(e[n]).data(Dt), - s = { relatedTarget: e[n] }; - if ((t && 'click' === t.type && (s.clickEvent = t), r)) { - var a = r._menu; - if ( - g(o).hasClass(Lt) && - !( - t && - (('click' === t.type && - /input|textarea/i.test(t.target.tagName)) || - ('keyup' === t.type && 9 === t.which)) && - g.contains(o, t.target) - ) - ) { - var l = g.Event(kt.HIDE, s); - g(o).trigger(l), - l.isDefaultPrevented() || - ('ontouchstart' in document.documentElement && - g(document.body) - .children() - .off('mouseover', null, g.noop), - e[n].setAttribute('aria-expanded', 'false'), - g(a).removeClass(Lt), - g(o).removeClass(Lt).trigger(g.Event(kt.HIDDEN, s))); - } - } - } - }), - (c._getParentFromElement = function (t) { - var e, - n = _.getSelectorFromElement(t); - return n && (e = document.querySelector(n)), e || t.parentNode; - }), - (c._dataApiKeydownHandler = function (t) { - if ( - (/input|textarea/i.test(t.target.tagName) - ? !( - 32 === t.which || - (27 !== t.which && - ((40 !== t.which && 38 !== t.which) || - g(t.target).closest(qt).length)) - ) - : Ot.test(t.which)) && - (t.preventDefault(), - t.stopPropagation(), - !this.disabled && !g(this).hasClass(Pt)) - ) { - var e = c._getParentFromElement(this), - n = g(e).hasClass(Lt); - if (n && (!n || (27 !== t.which && 32 !== t.which))) { - var i = [].slice.call(e.querySelectorAll(Kt)); - if (0 !== i.length) { - var o = i.indexOf(t.target); - 38 === t.which && 0 < o && o--, - 40 === t.which && o < i.length - 1 && o++, - o < 0 && (o = 0), - i[o].focus(); - } - } else { - if (27 === t.which) { - var r = e.querySelector(Ut); - g(r).trigger('focus'); - } - g(this).trigger('click'); - } - } - }), - s(c, null, [ - { - key: 'VERSION', - get: function () { - return '4.3.1'; - }, - }, - { - key: 'Default', - get: function () { - return $t; - }, - }, - { - key: 'DefaultType', - get: function () { - return Gt; - }, - }, - ]), - c - ); - })(); - g(document) - .on(kt.KEYDOWN_DATA_API, Ut, Jt._dataApiKeydownHandler) - .on(kt.KEYDOWN_DATA_API, qt, Jt._dataApiKeydownHandler) - .on(kt.CLICK_DATA_API + ' ' + kt.KEYUP_DATA_API, Jt._clearMenus) - .on(kt.CLICK_DATA_API, Ut, function (t) { - t.preventDefault(), - t.stopPropagation(), - Jt._jQueryInterface.call(g(this), 'toggle'); - }) - .on(kt.CLICK_DATA_API, Wt, function (t) { - t.stopPropagation(); - }), - (g.fn[It] = Jt._jQueryInterface), - (g.fn[It].Constructor = Jt), - (g.fn[It].noConflict = function () { - return (g.fn[It] = Nt), Jt._jQueryInterface; - }); - var Zt = 'modal', - te = 'bs.modal', - ee = '.' + te, - ne = g.fn[Zt], - ie = { backdrop: !0, keyboard: !0, focus: !0, show: !0 }, - oe = { - backdrop: '(boolean|string)', - keyboard: 'boolean', - focus: 'boolean', - show: 'boolean', - }, - re = { - HIDE: 'hide' + ee, - HIDDEN: 'hidden' + ee, - SHOW: 'show' + ee, - SHOWN: 'shown' + ee, - FOCUSIN: 'focusin' + ee, - RESIZE: 'resize' + ee, - CLICK_DISMISS: 'click.dismiss' + ee, - KEYDOWN_DISMISS: 'keydown.dismiss' + ee, - MOUSEUP_DISMISS: 'mouseup.dismiss' + ee, - MOUSEDOWN_DISMISS: 'mousedown.dismiss' + ee, - CLICK_DATA_API: 'click' + ee + '.data-api', - }, - se = 'modal-dialog-scrollable', - ae = 'modal-scrollbar-measure', - le = 'modal-backdrop', - ce = 'modal-open', - he = 'fade', - ue = 'show', - fe = '.modal-dialog', - de = '.modal-body', - ge = '[data-toggle="modal"]', - _e = '[data-dismiss="modal"]', - me = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top', - pe = '.sticky-top', - ve = (function () { - function o(t, e) { - (this._config = this._getConfig(e)), - (this._element = t), - (this._dialog = t.querySelector(fe)), - (this._backdrop = null), - (this._isShown = !1), - (this._isBodyOverflowing = !1), - (this._ignoreBackdropClick = !1), - (this._isTransitioning = !1), - (this._scrollbarWidth = 0); - } - var t = o.prototype; - return ( - (t.toggle = function (t) { - return this._isShown ? this.hide() : this.show(t); - }), - (t.show = function (t) { - var e = this; - if (!this._isShown && !this._isTransitioning) { - g(this._element).hasClass(he) && (this._isTransitioning = !0); - var n = g.Event(re.SHOW, { relatedTarget: t }); - g(this._element).trigger(n), - this._isShown || - n.isDefaultPrevented() || - ((this._isShown = !0), - this._checkScrollbar(), - this._setScrollbar(), - this._adjustDialog(), - this._setEscapeEvent(), - this._setResizeEvent(), - g(this._element).on(re.CLICK_DISMISS, _e, function (t) { - return e.hide(t); - }), - g(this._dialog).on(re.MOUSEDOWN_DISMISS, function () { - g(e._element).one(re.MOUSEUP_DISMISS, function (t) { - g(t.target).is(e._element) && (e._ignoreBackdropClick = !0); - }); - }), - this._showBackdrop(function () { - return e._showElement(t); - })); - } - }), - (t.hide = function (t) { - var e = this; - if ( - (t && t.preventDefault(), this._isShown && !this._isTransitioning) - ) { - var n = g.Event(re.HIDE); - if ( - (g(this._element).trigger(n), - this._isShown && !n.isDefaultPrevented()) - ) { - this._isShown = !1; - var i = g(this._element).hasClass(he); - if ( - (i && (this._isTransitioning = !0), - this._setEscapeEvent(), - this._setResizeEvent(), - g(document).off(re.FOCUSIN), - g(this._element).removeClass(ue), - g(this._element).off(re.CLICK_DISMISS), - g(this._dialog).off(re.MOUSEDOWN_DISMISS), - i) - ) { - var o = _.getTransitionDurationFromElement(this._element); - g(this._element) - .one(_.TRANSITION_END, function (t) { - return e._hideModal(t); - }) - .emulateTransitionEnd(o); - } else this._hideModal(); - } - } - }), - (t.dispose = function () { - [window, this._element, this._dialog].forEach(function (t) { - return g(t).off(ee); - }), - g(document).off(re.FOCUSIN), - g.removeData(this._element, te), - (this._config = null), - (this._element = null), - (this._dialog = null), - (this._backdrop = null), - (this._isShown = null), - (this._isBodyOverflowing = null), - (this._ignoreBackdropClick = null), - (this._isTransitioning = null), - (this._scrollbarWidth = null); - }), - (t.handleUpdate = function () { - this._adjustDialog(); - }), - (t._getConfig = function (t) { - return (t = l({}, ie, t)), _.typeCheckConfig(Zt, t, oe), t; - }), - (t._showElement = function (t) { - var e = this, - n = g(this._element).hasClass(he); - (this._element.parentNode && - this._element.parentNode.nodeType === Node.ELEMENT_NODE) || - document.body.appendChild(this._element), - (this._element.style.display = 'block'), - this._element.removeAttribute('aria-hidden'), - this._element.setAttribute('aria-modal', !0), - g(this._dialog).hasClass(se) - ? (this._dialog.querySelector(de).scrollTop = 0) - : (this._element.scrollTop = 0), - n && _.reflow(this._element), - g(this._element).addClass(ue), - this._config.focus && this._enforceFocus(); - var i = g.Event(re.SHOWN, { relatedTarget: t }), - o = function () { - e._config.focus && e._element.focus(), - (e._isTransitioning = !1), - g(e._element).trigger(i); - }; - if (n) { - var r = _.getTransitionDurationFromElement(this._dialog); - g(this._dialog).one(_.TRANSITION_END, o).emulateTransitionEnd(r); - } else o(); - }), - (t._enforceFocus = function () { - var e = this; - g(document) - .off(re.FOCUSIN) - .on(re.FOCUSIN, function (t) { - document !== t.target && - e._element !== t.target && - 0 === g(e._element).has(t.target).length && - e._element.focus(); - }); - }), - (t._setEscapeEvent = function () { - var e = this; - this._isShown && this._config.keyboard - ? g(this._element).on(re.KEYDOWN_DISMISS, function (t) { - 27 === t.which && (t.preventDefault(), e.hide()); - }) - : this._isShown || g(this._element).off(re.KEYDOWN_DISMISS); - }), - (t._setResizeEvent = function () { - var e = this; - this._isShown - ? g(window).on(re.RESIZE, function (t) { - return e.handleUpdate(t); - }) - : g(window).off(re.RESIZE); - }), - (t._hideModal = function () { - var t = this; - (this._element.style.display = 'none'), - this._element.setAttribute('aria-hidden', !0), - this._element.removeAttribute('aria-modal'), - (this._isTransitioning = !1), - this._showBackdrop(function () { - g(document.body).removeClass(ce), - t._resetAdjustments(), - t._resetScrollbar(), - g(t._element).trigger(re.HIDDEN); - }); - }), - (t._removeBackdrop = function () { - this._backdrop && - (g(this._backdrop).remove(), (this._backdrop = null)); - }), - (t._showBackdrop = function (t) { - var e = this, - n = g(this._element).hasClass(he) ? he : ''; - if (this._isShown && this._config.backdrop) { - if ( - ((this._backdrop = document.createElement('div')), - (this._backdrop.className = le), - n && this._backdrop.classList.add(n), - g(this._backdrop).appendTo(document.body), - g(this._element).on(re.CLICK_DISMISS, function (t) { - e._ignoreBackdropClick - ? (e._ignoreBackdropClick = !1) - : t.target === t.currentTarget && - ('static' === e._config.backdrop - ? e._element.focus() - : e.hide()); - }), - n && _.reflow(this._backdrop), - g(this._backdrop).addClass(ue), - !t) - ) - return; - if (!n) return void t(); - var i = _.getTransitionDurationFromElement(this._backdrop); - g(this._backdrop).one(_.TRANSITION_END, t).emulateTransitionEnd(i); - } else if (!this._isShown && this._backdrop) { - g(this._backdrop).removeClass(ue); - var o = function () { - e._removeBackdrop(), t && t(); - }; - if (g(this._element).hasClass(he)) { - var r = _.getTransitionDurationFromElement(this._backdrop); - g(this._backdrop) - .one(_.TRANSITION_END, o) - .emulateTransitionEnd(r); - } else o(); - } else t && t(); - }), - (t._adjustDialog = function () { - var t = - this._element.scrollHeight > document.documentElement.clientHeight; - !this._isBodyOverflowing && - t && - (this._element.style.paddingLeft = this._scrollbarWidth + 'px'), - this._isBodyOverflowing && - !t && - (this._element.style.paddingRight = this._scrollbarWidth + 'px'); - }), - (t._resetAdjustments = function () { - (this._element.style.paddingLeft = ''), - (this._element.style.paddingRight = ''); - }), - (t._checkScrollbar = function () { - var t = document.body.getBoundingClientRect(); - (this._isBodyOverflowing = t.left + t.right < window.innerWidth), - (this._scrollbarWidth = this._getScrollbarWidth()); - }), - (t._setScrollbar = function () { - var o = this; - if (this._isBodyOverflowing) { - var t = [].slice.call(document.querySelectorAll(me)), - e = [].slice.call(document.querySelectorAll(pe)); - g(t).each(function (t, e) { - var n = e.style.paddingRight, - i = g(e).css('padding-right'); - g(e) - .data('padding-right', n) - .css('padding-right', parseFloat(i) + o._scrollbarWidth + 'px'); - }), - g(e).each(function (t, e) { - var n = e.style.marginRight, - i = g(e).css('margin-right'); - g(e) - .data('margin-right', n) - .css( - 'margin-right', - parseFloat(i) - o._scrollbarWidth + 'px', - ); - }); - var n = document.body.style.paddingRight, - i = g(document.body).css('padding-right'); - g(document.body) - .data('padding-right', n) - .css( - 'padding-right', - parseFloat(i) + this._scrollbarWidth + 'px', - ); - } - g(document.body).addClass(ce); - }), - (t._resetScrollbar = function () { - var t = [].slice.call(document.querySelectorAll(me)); - g(t).each(function (t, e) { - var n = g(e).data('padding-right'); - g(e).removeData('padding-right'), (e.style.paddingRight = n || ''); - }); - var e = [].slice.call(document.querySelectorAll('' + pe)); - g(e).each(function (t, e) { - var n = g(e).data('margin-right'); - 'undefined' != typeof n && - g(e).css('margin-right', n).removeData('margin-right'); - }); - var n = g(document.body).data('padding-right'); - g(document.body).removeData('padding-right'), - (document.body.style.paddingRight = n || ''); - }), - (t._getScrollbarWidth = function () { - var t = document.createElement('div'); - (t.className = ae), document.body.appendChild(t); - var e = t.getBoundingClientRect().width - t.clientWidth; - return document.body.removeChild(t), e; - }), - (o._jQueryInterface = function (n, i) { - return this.each(function () { - var t = g(this).data(te), - e = l({}, ie, g(this).data(), 'object' == typeof n && n ? n : {}); - if ( - (t || ((t = new o(this, e)), g(this).data(te, t)), - 'string' == typeof n) - ) { - if ('undefined' == typeof t[n]) - throw new TypeError('No method named "' + n + '"'); - t[n](i); - } else e.show && t.show(i); - }); - }), - s(o, null, [ - { - key: 'VERSION', - get: function () { - return '4.3.1'; - }, - }, - { - key: 'Default', - get: function () { - return ie; - }, - }, - ]), - o - ); - })(); - g(document).on(re.CLICK_DATA_API, ge, function (t) { - var e, - n = this, - i = _.getSelectorFromElement(this); - i && (e = document.querySelector(i)); - var o = g(e).data(te) ? 'toggle' : l({}, g(e).data(), g(this).data()); - ('A' !== this.tagName && 'AREA' !== this.tagName) || t.preventDefault(); - var r = g(e).one(re.SHOW, function (t) { - t.isDefaultPrevented() || - r.one(re.HIDDEN, function () { - g(n).is(':visible') && n.focus(); - }); - }); - ve._jQueryInterface.call(g(e), o, this); - }), - (g.fn[Zt] = ve._jQueryInterface), - (g.fn[Zt].Constructor = ve), - (g.fn[Zt].noConflict = function () { - return (g.fn[Zt] = ne), ve._jQueryInterface; - }); - var ye = [ - 'background', - 'cite', - 'href', - 'itemtype', - 'longdesc', - 'poster', - 'src', - 'xlink:href', - ], - Ee = { - '*': ['class', 'dir', 'id', 'lang', 'role', /^aria-[\w-]*$/i], - a: ['target', 'href', 'title', 'rel'], - area: [], - b: [], - br: [], - col: [], - code: [], - div: [], - em: [], - hr: [], - h1: [], - h2: [], - h3: [], - h4: [], - h5: [], - h6: [], - i: [], - img: ['src', 'alt', 'title', 'width', 'height'], - li: [], - ol: [], - p: [], - pre: [], - s: [], - small: [], - span: [], - sub: [], - sup: [], - strong: [], - u: [], - ul: [], - }, - Ce = /^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi, - Te = - /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i; - function Se(t, s, e) { - if (0 === t.length) return t; - if (e && 'function' == typeof e) return e(t); - for ( - var n = new window.DOMParser().parseFromString(t, 'text/html'), - a = Object.keys(s), - l = [].slice.call(n.body.querySelectorAll('*')), - i = function (t, e) { - var n = l[t], - i = n.nodeName.toLowerCase(); - if (-1 === a.indexOf(n.nodeName.toLowerCase())) - return n.parentNode.removeChild(n), 'continue'; - var o = [].slice.call(n.attributes), - r = [].concat(s['*'] || [], s[i] || []); - o.forEach(function (t) { - (function (t, e) { - var n = t.nodeName.toLowerCase(); - if (-1 !== e.indexOf(n)) - return ( - -1 === ye.indexOf(n) || - Boolean(t.nodeValue.match(Ce) || t.nodeValue.match(Te)) - ); - for ( - var i = e.filter(function (t) { - return t instanceof RegExp; - }), - o = 0, - r = i.length; - o < r; - o++ - ) - if (n.match(i[o])) return !0; - return !1; - })(t, r) || n.removeAttribute(t.nodeName); - }); - }, - o = 0, - r = l.length; - o < r; - o++ - ) - i(o); - return n.body.innerHTML; - } - var be = 'tooltip', - Ie = 'bs.tooltip', - De = '.' + Ie, - we = g.fn[be], - Ae = 'bs-tooltip', - Ne = new RegExp('(^|\\s)' + Ae + '\\S+', 'g'), - Oe = ['sanitize', 'whiteList', 'sanitizeFn'], - ke = { - animation: 'boolean', - template: 'string', - title: '(string|element|function)', - trigger: 'string', - delay: '(number|object)', - html: 'boolean', - selector: '(string|boolean)', - placement: '(string|function)', - offset: '(number|string|function)', - container: '(string|element|boolean)', - fallbackPlacement: '(string|array)', - boundary: '(string|element)', - sanitize: 'boolean', - sanitizeFn: '(null|function)', - whiteList: 'object', - }, - Pe = { - AUTO: 'auto', - TOP: 'top', - RIGHT: 'right', - BOTTOM: 'bottom', - LEFT: 'left', - }, - Le = { - animation: !0, - template: - '', - trigger: 'hover focus', - title: '', - delay: 0, - html: !1, - selector: !1, - placement: 'top', - offset: 0, - container: !1, - fallbackPlacement: 'flip', - boundary: 'scrollParent', - sanitize: !0, - sanitizeFn: null, - whiteList: Ee, - }, - je = 'show', - He = 'out', - Re = { - HIDE: 'hide' + De, - HIDDEN: 'hidden' + De, - SHOW: 'show' + De, - SHOWN: 'shown' + De, - INSERTED: 'inserted' + De, - CLICK: 'click' + De, - FOCUSIN: 'focusin' + De, - FOCUSOUT: 'focusout' + De, - MOUSEENTER: 'mouseenter' + De, - MOUSELEAVE: 'mouseleave' + De, - }, - xe = 'fade', - Fe = 'show', - Ue = '.tooltip-inner', - We = '.arrow', - qe = 'hover', - Me = 'focus', - Ke = 'click', - Qe = 'manual', - Be = (function () { - function i(t, e) { - if ('undefined' == typeof u) - throw new TypeError( - "Bootstrap's tooltips require Popper.js (https://popper.js.org/)", - ); - (this._isEnabled = !0), - (this._timeout = 0), - (this._hoverState = ''), - (this._activeTrigger = {}), - (this._popper = null), - (this.element = t), - (this.config = this._getConfig(e)), - (this.tip = null), - this._setListeners(); - } - var t = i.prototype; - return ( - (t.enable = function () { - this._isEnabled = !0; - }), - (t.disable = function () { - this._isEnabled = !1; - }), - (t.toggleEnabled = function () { - this._isEnabled = !this._isEnabled; - }), - (t.toggle = function (t) { - if (this._isEnabled) - if (t) { - var e = this.constructor.DATA_KEY, - n = g(t.currentTarget).data(e); - n || - ((n = new this.constructor( - t.currentTarget, - this._getDelegateConfig(), - )), - g(t.currentTarget).data(e, n)), - (n._activeTrigger.click = !n._activeTrigger.click), - n._isWithActiveTrigger() - ? n._enter(null, n) - : n._leave(null, n); - } else { - if (g(this.getTipElement()).hasClass(Fe)) - return void this._leave(null, this); - this._enter(null, this); - } - }), - (t.dispose = function () { - clearTimeout(this._timeout), - g.removeData(this.element, this.constructor.DATA_KEY), - g(this.element).off(this.constructor.EVENT_KEY), - g(this.element).closest('.modal').off('hide.bs.modal'), - this.tip && g(this.tip).remove(), - (this._isEnabled = null), - (this._timeout = null), - (this._hoverState = null), - (this._activeTrigger = null) !== this._popper && - this._popper.destroy(), - (this._popper = null), - (this.element = null), - (this.config = null), - (this.tip = null); - }), - (t.show = function () { - var e = this; - if ('none' === g(this.element).css('display')) - throw new Error('Please use show on visible elements'); - var t = g.Event(this.constructor.Event.SHOW); - if (this.isWithContent() && this._isEnabled) { - g(this.element).trigger(t); - var n = _.findShadowRoot(this.element), - i = g.contains( - null !== n ? n : this.element.ownerDocument.documentElement, - this.element, - ); - if (t.isDefaultPrevented() || !i) return; - var o = this.getTipElement(), - r = _.getUID(this.constructor.NAME); - o.setAttribute('id', r), - this.element.setAttribute('aria-describedby', r), - this.setContent(), - this.config.animation && g(o).addClass(xe); - var s = - 'function' == typeof this.config.placement - ? this.config.placement.call(this, o, this.element) - : this.config.placement, - a = this._getAttachment(s); - this.addAttachmentClass(a); - var l = this._getContainer(); - g(o).data(this.constructor.DATA_KEY, this), - g.contains( - this.element.ownerDocument.documentElement, - this.tip, - ) || g(o).appendTo(l), - g(this.element).trigger(this.constructor.Event.INSERTED), - (this._popper = new u(this.element, o, { - placement: a, - modifiers: { - offset: this._getOffset(), - flip: { behavior: this.config.fallbackPlacement }, - arrow: { element: We }, - preventOverflow: { boundariesElement: this.config.boundary }, - }, - onCreate: function (t) { - t.originalPlacement !== t.placement && - e._handlePopperPlacementChange(t); - }, - onUpdate: function (t) { - return e._handlePopperPlacementChange(t); - }, - })), - g(o).addClass(Fe), - 'ontouchstart' in document.documentElement && - g(document.body).children().on('mouseover', null, g.noop); - var c = function () { - e.config.animation && e._fixTransition(); - var t = e._hoverState; - (e._hoverState = null), - g(e.element).trigger(e.constructor.Event.SHOWN), - t === He && e._leave(null, e); - }; - if (g(this.tip).hasClass(xe)) { - var h = _.getTransitionDurationFromElement(this.tip); - g(this.tip).one(_.TRANSITION_END, c).emulateTransitionEnd(h); - } else c(); - } - }), - (t.hide = function (t) { - var e = this, - n = this.getTipElement(), - i = g.Event(this.constructor.Event.HIDE), - o = function () { - e._hoverState !== je && - n.parentNode && - n.parentNode.removeChild(n), - e._cleanTipClass(), - e.element.removeAttribute('aria-describedby'), - g(e.element).trigger(e.constructor.Event.HIDDEN), - null !== e._popper && e._popper.destroy(), - t && t(); - }; - if ((g(this.element).trigger(i), !i.isDefaultPrevented())) { - if ( - (g(n).removeClass(Fe), - 'ontouchstart' in document.documentElement && - g(document.body).children().off('mouseover', null, g.noop), - (this._activeTrigger[Ke] = !1), - (this._activeTrigger[Me] = !1), - (this._activeTrigger[qe] = !1), - g(this.tip).hasClass(xe)) - ) { - var r = _.getTransitionDurationFromElement(n); - g(n).one(_.TRANSITION_END, o).emulateTransitionEnd(r); - } else o(); - this._hoverState = ''; - } - }), - (t.update = function () { - null !== this._popper && this._popper.scheduleUpdate(); - }), - (t.isWithContent = function () { - return Boolean(this.getTitle()); - }), - (t.addAttachmentClass = function (t) { - g(this.getTipElement()).addClass(Ae + '-' + t); - }), - (t.getTipElement = function () { - return (this.tip = this.tip || g(this.config.template)[0]), this.tip; - }), - (t.setContent = function () { - var t = this.getTipElement(); - this.setElementContent(g(t.querySelectorAll(Ue)), this.getTitle()), - g(t).removeClass(xe + ' ' + Fe); - }), - (t.setElementContent = function (t, e) { - 'object' != typeof e || (!e.nodeType && !e.jquery) - ? this.config.html - ? (this.config.sanitize && - (e = Se(e, this.config.whiteList, this.config.sanitizeFn)), - t.html(e)) - : t.text(e) - : this.config.html - ? g(e).parent().is(t) || t.empty().append(e) - : t.text(g(e).text()); - }), - (t.getTitle = function () { - var t = this.element.getAttribute('data-original-title'); - return ( - t || - (t = - 'function' == typeof this.config.title - ? this.config.title.call(this.element) - : this.config.title), - t - ); - }), - (t._getOffset = function () { - var e = this, - t = {}; - return ( - 'function' == typeof this.config.offset - ? (t.fn = function (t) { - return ( - (t.offsets = l( - {}, - t.offsets, - e.config.offset(t.offsets, e.element) || {}, - )), - t - ); - }) - : (t.offset = this.config.offset), - t - ); - }), - (t._getContainer = function () { - return !1 === this.config.container - ? document.body - : _.isElement(this.config.container) - ? g(this.config.container) - : g(document).find(this.config.container); - }), - (t._getAttachment = function (t) { - return Pe[t.toUpperCase()]; - }), - (t._setListeners = function () { - var i = this; - this.config.trigger.split(' ').forEach(function (t) { - if ('click' === t) - g(i.element).on( - i.constructor.Event.CLICK, - i.config.selector, - function (t) { - return i.toggle(t); - }, - ); - else if (t !== Qe) { - var e = - t === qe - ? i.constructor.Event.MOUSEENTER - : i.constructor.Event.FOCUSIN, - n = - t === qe - ? i.constructor.Event.MOUSELEAVE - : i.constructor.Event.FOCUSOUT; - g(i.element) - .on(e, i.config.selector, function (t) { - return i._enter(t); - }) - .on(n, i.config.selector, function (t) { - return i._leave(t); - }); - } - }), - g(this.element) - .closest('.modal') - .on('hide.bs.modal', function () { - i.element && i.hide(); - }), - this.config.selector - ? (this.config = l({}, this.config, { - trigger: 'manual', - selector: '', - })) - : this._fixTitle(); - }), - (t._fixTitle = function () { - var t = typeof this.element.getAttribute('data-original-title'); - (this.element.getAttribute('title') || 'string' !== t) && - (this.element.setAttribute( - 'data-original-title', - this.element.getAttribute('title') || '', - ), - this.element.setAttribute('title', '')); - }), - (t._enter = function (t, e) { - var n = this.constructor.DATA_KEY; - (e = e || g(t.currentTarget).data(n)) || - ((e = new this.constructor( - t.currentTarget, - this._getDelegateConfig(), - )), - g(t.currentTarget).data(n, e)), - t && (e._activeTrigger['focusin' === t.type ? Me : qe] = !0), - g(e.getTipElement()).hasClass(Fe) || e._hoverState === je - ? (e._hoverState = je) - : (clearTimeout(e._timeout), - (e._hoverState = je), - e.config.delay && e.config.delay.show - ? (e._timeout = setTimeout(function () { - e._hoverState === je && e.show(); - }, e.config.delay.show)) - : e.show()); - }), - (t._leave = function (t, e) { - var n = this.constructor.DATA_KEY; - (e = e || g(t.currentTarget).data(n)) || - ((e = new this.constructor( - t.currentTarget, - this._getDelegateConfig(), - )), - g(t.currentTarget).data(n, e)), - t && (e._activeTrigger['focusout' === t.type ? Me : qe] = !1), - e._isWithActiveTrigger() || - (clearTimeout(e._timeout), - (e._hoverState = He), - e.config.delay && e.config.delay.hide - ? (e._timeout = setTimeout(function () { - e._hoverState === He && e.hide(); - }, e.config.delay.hide)) - : e.hide()); - }), - (t._isWithActiveTrigger = function () { - for (var t in this._activeTrigger) - if (this._activeTrigger[t]) return !0; - return !1; - }), - (t._getConfig = function (t) { - var e = g(this.element).data(); - return ( - Object.keys(e).forEach(function (t) { - -1 !== Oe.indexOf(t) && delete e[t]; - }), - 'number' == - typeof (t = l( - {}, - this.constructor.Default, - e, - 'object' == typeof t && t ? t : {}, - )).delay && (t.delay = { show: t.delay, hide: t.delay }), - 'number' == typeof t.title && (t.title = t.title.toString()), - 'number' == typeof t.content && (t.content = t.content.toString()), - _.typeCheckConfig(be, t, this.constructor.DefaultType), - t.sanitize && - (t.template = Se(t.template, t.whiteList, t.sanitizeFn)), - t - ); - }), - (t._getDelegateConfig = function () { - var t = {}; - if (this.config) - for (var e in this.config) - this.constructor.Default[e] !== this.config[e] && - (t[e] = this.config[e]); - return t; - }), - (t._cleanTipClass = function () { - var t = g(this.getTipElement()), - e = t.attr('class').match(Ne); - null !== e && e.length && t.removeClass(e.join('')); - }), - (t._handlePopperPlacementChange = function (t) { - var e = t.instance; - (this.tip = e.popper), - this._cleanTipClass(), - this.addAttachmentClass(this._getAttachment(t.placement)); - }), - (t._fixTransition = function () { - var t = this.getTipElement(), - e = this.config.animation; - null === t.getAttribute('x-placement') && - (g(t).removeClass(xe), - (this.config.animation = !1), - this.hide(), - this.show(), - (this.config.animation = e)); - }), - (i._jQueryInterface = function (n) { - return this.each(function () { - var t = g(this).data(Ie), - e = 'object' == typeof n && n; - if ( - (t || !/dispose|hide/.test(n)) && - (t || ((t = new i(this, e)), g(this).data(Ie, t)), - 'string' == typeof n) - ) { - if ('undefined' == typeof t[n]) - throw new TypeError('No method named "' + n + '"'); - t[n](); - } - }); - }), - s(i, null, [ - { - key: 'VERSION', - get: function () { - return '4.3.1'; - }, - }, - { - key: 'Default', - get: function () { - return Le; - }, - }, - { - key: 'NAME', - get: function () { - return be; - }, - }, - { - key: 'DATA_KEY', - get: function () { - return Ie; - }, - }, - { - key: 'Event', - get: function () { - return Re; - }, - }, - { - key: 'EVENT_KEY', - get: function () { - return De; - }, - }, - { - key: 'DefaultType', - get: function () { - return ke; - }, - }, - ]), - i - ); - })(); - (g.fn[be] = Be._jQueryInterface), - (g.fn[be].Constructor = Be), - (g.fn[be].noConflict = function () { - return (g.fn[be] = we), Be._jQueryInterface; - }); - var Ve = 'popover', - Ye = 'bs.popover', - ze = '.' + Ye, - Xe = g.fn[Ve], - $e = 'bs-popover', - Ge = new RegExp('(^|\\s)' + $e + '\\S+', 'g'), - Je = l({}, Be.Default, { - placement: 'right', - trigger: 'click', - content: '', - template: - '', - }), - Ze = l({}, Be.DefaultType, { content: '(string|element|function)' }), - tn = 'fade', - en = 'show', - nn = '.popover-header', - on = '.popover-body', - rn = { - HIDE: 'hide' + ze, - HIDDEN: 'hidden' + ze, - SHOW: 'show' + ze, - SHOWN: 'shown' + ze, - INSERTED: 'inserted' + ze, - CLICK: 'click' + ze, - FOCUSIN: 'focusin' + ze, - FOCUSOUT: 'focusout' + ze, - MOUSEENTER: 'mouseenter' + ze, - MOUSELEAVE: 'mouseleave' + ze, - }, - sn = (function (t) { - var e, n; - function i() { - return t.apply(this, arguments) || this; - } - (n = t), - ((e = i).prototype = Object.create(n.prototype)), - ((e.prototype.constructor = e).__proto__ = n); - var o = i.prototype; - return ( - (o.isWithContent = function () { - return this.getTitle() || this._getContent(); - }), - (o.addAttachmentClass = function (t) { - g(this.getTipElement()).addClass($e + '-' + t); - }), - (o.getTipElement = function () { - return (this.tip = this.tip || g(this.config.template)[0]), this.tip; - }), - (o.setContent = function () { - var t = g(this.getTipElement()); - this.setElementContent(t.find(nn), this.getTitle()); - var e = this._getContent(); - 'function' == typeof e && (e = e.call(this.element)), - this.setElementContent(t.find(on), e), - t.removeClass(tn + ' ' + en); - }), - (o._getContent = function () { - return ( - this.element.getAttribute('data-content') || this.config.content - ); - }), - (o._cleanTipClass = function () { - var t = g(this.getTipElement()), - e = t.attr('class').match(Ge); - null !== e && 0 < e.length && t.removeClass(e.join('')); - }), - (i._jQueryInterface = function (n) { - return this.each(function () { - var t = g(this).data(Ye), - e = 'object' == typeof n ? n : null; - if ( - (t || !/dispose|hide/.test(n)) && - (t || ((t = new i(this, e)), g(this).data(Ye, t)), - 'string' == typeof n) - ) { - if ('undefined' == typeof t[n]) - throw new TypeError('No method named "' + n + '"'); - t[n](); - } - }); - }), - s(i, null, [ - { - key: 'VERSION', - get: function () { - return '4.3.1'; - }, - }, - { - key: 'Default', - get: function () { - return Je; - }, - }, - { - key: 'NAME', - get: function () { - return Ve; - }, - }, - { - key: 'DATA_KEY', - get: function () { - return Ye; - }, - }, - { - key: 'Event', - get: function () { - return rn; - }, - }, - { - key: 'EVENT_KEY', - get: function () { - return ze; - }, - }, - { - key: 'DefaultType', - get: function () { - return Ze; - }, - }, - ]), - i - ); - })(Be); - (g.fn[Ve] = sn._jQueryInterface), - (g.fn[Ve].Constructor = sn), - (g.fn[Ve].noConflict = function () { - return (g.fn[Ve] = Xe), sn._jQueryInterface; - }); - var an = 'scrollspy', - ln = 'bs.scrollspy', - cn = '.' + ln, - hn = g.fn[an], - un = { offset: 10, method: 'auto', target: '' }, - fn = { offset: 'number', method: 'string', target: '(string|element)' }, - dn = { - ACTIVATE: 'activate' + cn, - SCROLL: 'scroll' + cn, - LOAD_DATA_API: 'load' + cn + '.data-api', - }, - gn = 'dropdown-item', - _n = 'active', - mn = '[data-spy="scroll"]', - pn = '.nav, .list-group', - vn = '.nav-link', - yn = '.nav-item', - En = '.list-group-item', - Cn = '.dropdown', - Tn = '.dropdown-item', - Sn = '.dropdown-toggle', - bn = 'offset', - In = 'position', - Dn = (function () { - function n(t, e) { - var n = this; - (this._element = t), - (this._scrollElement = 'BODY' === t.tagName ? window : t), - (this._config = this._getConfig(e)), - (this._selector = - this._config.target + - ' ' + - vn + - ',' + - this._config.target + - ' ' + - En + - ',' + - this._config.target + - ' ' + - Tn), - (this._offsets = []), - (this._targets = []), - (this._activeTarget = null), - (this._scrollHeight = 0), - g(this._scrollElement).on(dn.SCROLL, function (t) { - return n._process(t); - }), - this.refresh(), - this._process(); - } - var t = n.prototype; - return ( - (t.refresh = function () { - var e = this, - t = this._scrollElement === this._scrollElement.window ? bn : In, - o = 'auto' === this._config.method ? t : this._config.method, - r = o === In ? this._getScrollTop() : 0; - (this._offsets = []), - (this._targets = []), - (this._scrollHeight = this._getScrollHeight()), - [].slice - .call(document.querySelectorAll(this._selector)) - .map(function (t) { - var e, - n = _.getSelectorFromElement(t); - if ((n && (e = document.querySelector(n)), e)) { - var i = e.getBoundingClientRect(); - if (i.width || i.height) return [g(e)[o]().top + r, n]; - } - return null; - }) - .filter(function (t) { - return t; - }) - .sort(function (t, e) { - return t[0] - e[0]; - }) - .forEach(function (t) { - e._offsets.push(t[0]), e._targets.push(t[1]); - }); - }), - (t.dispose = function () { - g.removeData(this._element, ln), - g(this._scrollElement).off(cn), - (this._element = null), - (this._scrollElement = null), - (this._config = null), - (this._selector = null), - (this._offsets = null), - (this._targets = null), - (this._activeTarget = null), - (this._scrollHeight = null); - }), - (t._getConfig = function (t) { - if ( - 'string' != - typeof (t = l({}, un, 'object' == typeof t && t ? t : {})).target - ) { - var e = g(t.target).attr('id'); - e || ((e = _.getUID(an)), g(t.target).attr('id', e)), - (t.target = '#' + e); - } - return _.typeCheckConfig(an, t, fn), t; - }), - (t._getScrollTop = function () { - return this._scrollElement === window - ? this._scrollElement.pageYOffset - : this._scrollElement.scrollTop; - }), - (t._getScrollHeight = function () { - return ( - this._scrollElement.scrollHeight || - Math.max( - document.body.scrollHeight, - document.documentElement.scrollHeight, - ) - ); - }), - (t._getOffsetHeight = function () { - return this._scrollElement === window - ? window.innerHeight - : this._scrollElement.getBoundingClientRect().height; - }), - (t._process = function () { - var t = this._getScrollTop() + this._config.offset, - e = this._getScrollHeight(), - n = this._config.offset + e - this._getOffsetHeight(); - if ((this._scrollHeight !== e && this.refresh(), n <= t)) { - var i = this._targets[this._targets.length - 1]; - this._activeTarget !== i && this._activate(i); - } else { - if ( - this._activeTarget && - t < this._offsets[0] && - 0 < this._offsets[0] - ) - return (this._activeTarget = null), void this._clear(); - for (var o = this._offsets.length; o--; ) { - this._activeTarget !== this._targets[o] && - t >= this._offsets[o] && - ('undefined' == typeof this._offsets[o + 1] || - t < this._offsets[o + 1]) && - this._activate(this._targets[o]); - } - } - }), - (t._activate = function (e) { - (this._activeTarget = e), this._clear(); - var t = this._selector.split(',').map(function (t) { - return ( - t + '[data-target="' + e + '"],' + t + '[href="' + e + '"]' - ); - }), - n = g([].slice.call(document.querySelectorAll(t.join(',')))); - n.hasClass(gn) - ? (n.closest(Cn).find(Sn).addClass(_n), n.addClass(_n)) - : (n.addClass(_n), - n - .parents(pn) - .prev(vn + ', ' + En) - .addClass(_n), - n.parents(pn).prev(yn).children(vn).addClass(_n)), - g(this._scrollElement).trigger(dn.ACTIVATE, { relatedTarget: e }); - }), - (t._clear = function () { - [].slice - .call(document.querySelectorAll(this._selector)) - .filter(function (t) { - return t.classList.contains(_n); - }) - .forEach(function (t) { - return t.classList.remove(_n); - }); - }), - (n._jQueryInterface = function (e) { - return this.each(function () { - var t = g(this).data(ln); - if ( - (t || - ((t = new n(this, 'object' == typeof e && e)), - g(this).data(ln, t)), - 'string' == typeof e) - ) { - if ('undefined' == typeof t[e]) - throw new TypeError('No method named "' + e + '"'); - t[e](); - } - }); - }), - s(n, null, [ - { - key: 'VERSION', - get: function () { - return '4.3.1'; - }, - }, - { - key: 'Default', - get: function () { - return un; - }, - }, - ]), - n - ); - })(); - g(window).on(dn.LOAD_DATA_API, function () { - for ( - var t = [].slice.call(document.querySelectorAll(mn)), e = t.length; - e--; - - ) { - var n = g(t[e]); - Dn._jQueryInterface.call(n, n.data()); - } - }), - (g.fn[an] = Dn._jQueryInterface), - (g.fn[an].Constructor = Dn), - (g.fn[an].noConflict = function () { - return (g.fn[an] = hn), Dn._jQueryInterface; - }); - var wn = 'bs.tab', - An = '.' + wn, - Nn = g.fn.tab, - On = { - HIDE: 'hide' + An, - HIDDEN: 'hidden' + An, - SHOW: 'show' + An, - SHOWN: 'shown' + An, - CLICK_DATA_API: 'click' + An + '.data-api', - }, - kn = 'dropdown-menu', - Pn = 'active', - Ln = 'disabled', - jn = 'fade', - Hn = 'show', - Rn = '.dropdown', - xn = '.nav, .list-group', - Fn = '.active', - Un = '> li > .active', - Wn = '[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]', - qn = '.dropdown-toggle', - Mn = '> .dropdown-menu .active', - Kn = (function () { - function i(t) { - this._element = t; - } - var t = i.prototype; - return ( - (t.show = function () { - var n = this; - if ( - !( - (this._element.parentNode && - this._element.parentNode.nodeType === Node.ELEMENT_NODE && - g(this._element).hasClass(Pn)) || - g(this._element).hasClass(Ln) - ) - ) { - var t, - i, - e = g(this._element).closest(xn)[0], - o = _.getSelectorFromElement(this._element); - if (e) { - var r = 'UL' === e.nodeName || 'OL' === e.nodeName ? Un : Fn; - i = (i = g.makeArray(g(e).find(r)))[i.length - 1]; - } - var s = g.Event(On.HIDE, { relatedTarget: this._element }), - a = g.Event(On.SHOW, { relatedTarget: i }); - if ( - (i && g(i).trigger(s), - g(this._element).trigger(a), - !a.isDefaultPrevented() && !s.isDefaultPrevented()) - ) { - o && (t = document.querySelector(o)), - this._activate(this._element, e); - var l = function () { - var t = g.Event(On.HIDDEN, { relatedTarget: n._element }), - e = g.Event(On.SHOWN, { relatedTarget: i }); - g(i).trigger(t), g(n._element).trigger(e); - }; - t ? this._activate(t, t.parentNode, l) : l(); - } - } - }), - (t.dispose = function () { - g.removeData(this._element, wn), (this._element = null); - }), - (t._activate = function (t, e, n) { - var i = this, - o = ( - !e || ('UL' !== e.nodeName && 'OL' !== e.nodeName) - ? g(e).children(Fn) - : g(e).find(Un) - )[0], - r = n && o && g(o).hasClass(jn), - s = function () { - return i._transitionComplete(t, o, n); - }; - if (o && r) { - var a = _.getTransitionDurationFromElement(o); - g(o) - .removeClass(Hn) - .one(_.TRANSITION_END, s) - .emulateTransitionEnd(a); - } else s(); - }), - (t._transitionComplete = function (t, e, n) { - if (e) { - g(e).removeClass(Pn); - var i = g(e.parentNode).find(Mn)[0]; - i && g(i).removeClass(Pn), - 'tab' === e.getAttribute('role') && - e.setAttribute('aria-selected', !1); - } - if ( - (g(t).addClass(Pn), - 'tab' === t.getAttribute('role') && - t.setAttribute('aria-selected', !0), - _.reflow(t), - t.classList.contains(jn) && t.classList.add(Hn), - t.parentNode && g(t.parentNode).hasClass(kn)) - ) { - var o = g(t).closest(Rn)[0]; - if (o) { - var r = [].slice.call(o.querySelectorAll(qn)); - g(r).addClass(Pn); - } - t.setAttribute('aria-expanded', !0); - } - n && n(); - }), - (i._jQueryInterface = function (n) { - return this.each(function () { - var t = g(this), - e = t.data(wn); - if ( - (e || ((e = new i(this)), t.data(wn, e)), 'string' == typeof n) - ) { - if ('undefined' == typeof e[n]) - throw new TypeError('No method named "' + n + '"'); - e[n](); - } - }); - }), - s(i, null, [ - { - key: 'VERSION', - get: function () { - return '4.3.1'; - }, - }, - ]), - i - ); - })(); - g(document).on(On.CLICK_DATA_API, Wn, function (t) { - t.preventDefault(), Kn._jQueryInterface.call(g(this), 'show'); - }), - (g.fn.tab = Kn._jQueryInterface), - (g.fn.tab.Constructor = Kn), - (g.fn.tab.noConflict = function () { - return (g.fn.tab = Nn), Kn._jQueryInterface; - }); - var Qn = 'toast', - Bn = 'bs.toast', - Vn = '.' + Bn, - Yn = g.fn[Qn], - zn = { - CLICK_DISMISS: 'click.dismiss' + Vn, - HIDE: 'hide' + Vn, - HIDDEN: 'hidden' + Vn, - SHOW: 'show' + Vn, - SHOWN: 'shown' + Vn, - }, - Xn = 'fade', - $n = 'hide', - Gn = 'show', - Jn = 'showing', - Zn = { animation: 'boolean', autohide: 'boolean', delay: 'number' }, - ti = { animation: !0, autohide: !0, delay: 500 }, - ei = '[data-dismiss="toast"]', - ni = (function () { - function i(t, e) { - (this._element = t), - (this._config = this._getConfig(e)), - (this._timeout = null), - this._setListeners(); - } - var t = i.prototype; - return ( - (t.show = function () { - var t = this; - g(this._element).trigger(zn.SHOW), - this._config.animation && this._element.classList.add(Xn); - var e = function () { - t._element.classList.remove(Jn), - t._element.classList.add(Gn), - g(t._element).trigger(zn.SHOWN), - t._config.autohide && t.hide(); - }; - if ( - (this._element.classList.remove($n), - this._element.classList.add(Jn), - this._config.animation) - ) { - var n = _.getTransitionDurationFromElement(this._element); - g(this._element).one(_.TRANSITION_END, e).emulateTransitionEnd(n); - } else e(); - }), - (t.hide = function (t) { - var e = this; - this._element.classList.contains(Gn) && - (g(this._element).trigger(zn.HIDE), - t - ? this._close() - : (this._timeout = setTimeout(function () { - e._close(); - }, this._config.delay))); - }), - (t.dispose = function () { - clearTimeout(this._timeout), - (this._timeout = null), - this._element.classList.contains(Gn) && - this._element.classList.remove(Gn), - g(this._element).off(zn.CLICK_DISMISS), - g.removeData(this._element, Bn), - (this._element = null), - (this._config = null); - }), - (t._getConfig = function (t) { - return ( - (t = l( - {}, - ti, - g(this._element).data(), - 'object' == typeof t && t ? t : {}, - )), - _.typeCheckConfig(Qn, t, this.constructor.DefaultType), - t - ); - }), - (t._setListeners = function () { - var t = this; - g(this._element).on(zn.CLICK_DISMISS, ei, function () { - return t.hide(!0); - }); - }), - (t._close = function () { - var t = this, - e = function () { - t._element.classList.add($n), g(t._element).trigger(zn.HIDDEN); - }; - if ((this._element.classList.remove(Gn), this._config.animation)) { - var n = _.getTransitionDurationFromElement(this._element); - g(this._element).one(_.TRANSITION_END, e).emulateTransitionEnd(n); - } else e(); - }), - (i._jQueryInterface = function (n) { - return this.each(function () { - var t = g(this), - e = t.data(Bn); - if ( - (e || - ((e = new i(this, 'object' == typeof n && n)), t.data(Bn, e)), - 'string' == typeof n) - ) { - if ('undefined' == typeof e[n]) - throw new TypeError('No method named "' + n + '"'); - e[n](this); - } - }); - }), - s(i, null, [ - { - key: 'VERSION', - get: function () { - return '4.3.1'; - }, - }, - { - key: 'DefaultType', - get: function () { - return Zn; - }, - }, - { - key: 'Default', - get: function () { - return ti; - }, - }, - ]), - i - ); - })(); - (g.fn[Qn] = ni._jQueryInterface), - (g.fn[Qn].Constructor = ni), - (g.fn[Qn].noConflict = function () { - return (g.fn[Qn] = Yn), ni._jQueryInterface; - }), - (function () { - if ('undefined' == typeof g) - throw new TypeError( - "Bootstrap's JavaScript requires jQuery. jQuery must be included before Bootstrap's JavaScript.", - ); - var t = g.fn.jquery.split(' ')[0].split('.'); - if ( - (t[0] < 2 && t[1] < 9) || - (1 === t[0] && 9 === t[1] && t[2] < 1) || - 4 <= t[0] - ) - throw new Error( - "Bootstrap's JavaScript requires at least jQuery v1.9.1 but less than v4.0.0", - ); - })(), - (t.Util = _), - (t.Alert = p), - (t.Button = P), - (t.Carousel = lt), - (t.Collapse = bt), - (t.Dropdown = Jt), - (t.Modal = ve), - (t.Popover = sn), - (t.Scrollspy = Dn), - (t.Tab = Kn), - (t.Toast = ni), - (t.Tooltip = Be), - Object.defineProperty(t, '__esModule', { value: !0 }); -}); -//# sourceMappingURL=bootstrap.min.js.map - -/*! - * Bootstrap-select v1.13.1 (https://developer.snapappointments.com/bootstrap-select) - * - * Copyright 2012-2018 SnapAppointments, LLC - * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) - */ -!(function (a, b) { - 'function' == typeof define && define.amd - ? define(['jquery'], function (a) { - return b(a); - }) - : 'object' == typeof module && module.exports - ? (module.exports = b(require('jquery'))) - : b(a.jQuery); -})(this, function (a) { - !(function (a) { - 'use strict'; - function b(a, b) { - return ( - a.length === b.length && - a.every(function (a, c) { - return a === b[c]; - }) - ); - } - function c(a) { - var b, - c = [], - d = a && a.options; - if (a.multiple) - for (var e = 0, f = d.length; e < f; e++) - (b = d[e]), b.selected && c.push(b.value || b.text); - else c = a.value; - return c; - } - function d(a, b, c, d) { - for ( - var e = ['content', 'subtext', 'tokens'], g = !1, h = 0; - h < e.length; - h++ - ) { - var i = e[h], - j = a[i]; - if ( - j && - ((j = j.toString()), - 'content' === i && (j = j.replace(/<[^>]+>/g, '')), - d && (j = f(j)), - (j = j.toUpperCase()), - (g = 'contains' === c ? j.indexOf(b) >= 0 : j.startsWith(b))) - ) - break; - } - return g; - } - function e(a) { - return parseInt(a, 10) || 0; - } - function f(b) { - var c = [ - { re: /[\xC0-\xC6]/g, ch: 'A' }, - { re: /[\xE0-\xE6]/g, ch: 'a' }, - { re: /[\xC8-\xCB]/g, ch: 'E' }, - { re: /[\xE8-\xEB]/g, ch: 'e' }, - { re: /[\xCC-\xCF]/g, ch: 'I' }, - { re: /[\xEC-\xEF]/g, ch: 'i' }, - { re: /[\xD2-\xD6]/g, ch: 'O' }, - { re: /[\xF2-\xF6]/g, ch: 'o' }, - { re: /[\xD9-\xDC]/g, ch: 'U' }, - { re: /[\xF9-\xFC]/g, ch: 'u' }, - { re: /[\xC7-\xE7]/g, ch: 'c' }, - { re: /[\xD1]/g, ch: 'N' }, - { re: /[\xF1]/g, ch: 'n' }, - ]; - return ( - a.each(c, function () { - b = b ? b.replace(this.re, this.ch) : ''; - }), - b - ); - } - function g(b) { - var c = arguments, - d = b; - [].shift.apply(c); - var e, - f = this.each(function () { - var b = a(this); - if (b.is('select')) { - var f = b.data('selectpicker'), - g = 'object' == typeof d && d; - if (f) { - if (g) - for (var h in g) g.hasOwnProperty(h) && (f.options[h] = g[h]); - } else { - var i = a.extend( - {}, - x.DEFAULTS, - a.fn.selectpicker.defaults || {}, - b.data(), - g, - ); - (i.template = a.extend( - {}, - x.DEFAULTS.template, - a.fn.selectpicker.defaults - ? a.fn.selectpicker.defaults.template - : {}, - b.data().template, - g.template, - )), - b.data('selectpicker', (f = new x(this, i))); - } - 'string' == typeof d && - (e = f[d] instanceof Function ? f[d].apply(f, c) : f.options[d]); - } - }); - return void 0 !== e ? e : f; - } - var h = document.createElement('_'); - if ((h.classList.toggle('c3', !1), h.classList.contains('c3'))) { - var i = DOMTokenList.prototype.toggle; - DOMTokenList.prototype.toggle = function (a, b) { - return 1 in arguments && !this.contains(a) == !b ? b : i.call(this, a); - }; - } - String.prototype.startsWith || - (function () { - var a = (function () { - try { - var a = {}, - b = Object.defineProperty, - c = b(a, a, a) && b; - } catch (a) {} - return c; - })(), - b = {}.toString, - c = function (a) { - if (null == this) throw new TypeError(); - var c = String(this); - if (a && '[object RegExp]' == b.call(a)) throw new TypeError(); - var d = c.length, - e = String(a), - f = e.length, - g = arguments.length > 1 ? arguments[1] : void 0, - h = g ? Number(g) : 0; - h != h && (h = 0); - var i = Math.min(Math.max(h, 0), d); - if (f + i > d) return !1; - for (var j = -1; ++j < f; ) - if (c.charCodeAt(i + j) != e.charCodeAt(j)) return !1; - return !0; - }; - a - ? a(String.prototype, 'startsWith', { - value: c, - configurable: !0, - writable: !0, - }) - : (String.prototype.startsWith = c); - })(), - Object.keys || - (Object.keys = function (a, b, c) { - c = []; - for (b in a) c.hasOwnProperty.call(a, b) && c.push(b); - return c; - }); - var j = { useDefault: !1, _set: a.valHooks.select.set }; - a.valHooks.select.set = function (b, c) { - return ( - c && !j.useDefault && a(b).data('selected', !0), - j._set.apply(this, arguments) - ); - }; - var k = null, - l = (function () { - try { - return new Event('change'), !0; - } catch (a) { - return !1; - } - })(); - a.fn.triggerNative = function (a) { - var b, - c = this[0]; - c.dispatchEvent - ? (l - ? (b = new Event(a, { bubbles: !0 })) - : ((b = document.createEvent('Event')), b.initEvent(a, !0, !1)), - c.dispatchEvent(b)) - : c.fireEvent - ? ((b = document.createEventObject()), - (b.eventType = a), - c.fireEvent('on' + a, b)) - : this.trigger(a); - }; - var m = { - '&': '&', - '<': '<', - '>': '>', - '"': '"', - "'": ''', - '`': '`', - }, - n = { - '&': '&', - '<': '<', - '>': '>', - '"': '"', - ''': "'", - '`': '`', - }, - o = function (a) { - var b = function (b) { - return a[b]; - }, - c = '(?:' + Object.keys(a).join('|') + ')', - d = RegExp(c), - e = RegExp(c, 'g'); - return function (a) { - return (a = null == a ? '' : '' + a), d.test(a) ? a.replace(e, b) : a; - }; - }, - p = o(m), - q = o(n), - r = { - 32: ' ', - 48: '0', - 49: '1', - 50: '2', - 51: '3', - 52: '4', - 53: '5', - 54: '6', - 55: '7', - 56: '8', - 57: '9', - 59: ';', - 65: 'A', - 66: 'B', - 67: 'C', - 68: 'D', - 69: 'E', - 70: 'F', - 71: 'G', - 72: 'H', - 73: 'I', - 74: 'J', - 75: 'K', - 76: 'L', - 77: 'M', - 78: 'N', - 79: 'O', - 80: 'P', - 81: 'Q', - 82: 'R', - 83: 'S', - 84: 'T', - 85: 'U', - 86: 'V', - 87: 'W', - 88: 'X', - 89: 'Y', - 90: 'Z', - 96: '0', - 97: '1', - 98: '2', - 99: '3', - 100: '4', - 101: '5', - 102: '6', - 103: '7', - 104: '8', - 105: '9', - }, - s = { - ESCAPE: 27, - ENTER: 13, - SPACE: 32, - TAB: 9, - ARROW_UP: 38, - ARROW_DOWN: 40, - }, - t = {}; - try { - (t.full = (a.fn.dropdown.Constructor.VERSION || '') - .split(' ')[0] - .split('.')), - (t.major = t.full[0]); - } catch (a) { - console.error( - "There was an issue retrieving Bootstrap's version. Ensure Bootstrap is being loaded before bootstrap-select and there is no namespace collision.", - a, - ), - (t.major = '3'); - } - var u = { - DISABLED: 'disabled', - DIVIDER: '4' === t.major ? 'dropdown-divider' : 'divider', - SHOW: '4' === t.major ? 'show' : 'open', - DROPUP: 'dropup', - MENURIGHT: 'dropdown-menu-right', - MENULEFT: 'dropdown-menu-left', - BUTTONCLASS: '4' === t.major ? 'btn-light' : 'btn-default', - POPOVERHEADER: '4' === t.major ? 'popover-header' : 'popover-title', - }, - v = new RegExp(s.ARROW_UP + '|' + s.ARROW_DOWN), - w = new RegExp('^' + s.TAB + '$|' + s.ESCAPE), - x = - (new RegExp(s.ENTER + '|' + s.SPACE), - function (b, c) { - var d = this; - j.useDefault || - ((a.valHooks.select.set = j._set), (j.useDefault = !0)), - (this.$element = a(b)), - (this.$newElement = null), - (this.$button = null), - (this.$menu = null), - (this.options = c), - (this.selectpicker = { - main: { map: { newIndex: {}, originalIndex: {} } }, - current: { map: {} }, - search: { map: {} }, - view: {}, - keydown: { - keyHistory: '', - resetKeyHistory: { - start: function () { - return setTimeout(function () { - d.selectpicker.keydown.keyHistory = ''; - }, 800); - }, - }, - }, - }), - null === this.options.title && - (this.options.title = this.$element.attr('title')); - var e = this.options.windowPadding; - 'number' == typeof e && (this.options.windowPadding = [e, e, e, e]), - (this.val = x.prototype.val), - (this.render = x.prototype.render), - (this.refresh = x.prototype.refresh), - (this.setStyle = x.prototype.setStyle), - (this.selectAll = x.prototype.selectAll), - (this.deselectAll = x.prototype.deselectAll), - (this.destroy = x.prototype.destroy), - (this.remove = x.prototype.remove), - (this.show = x.prototype.show), - (this.hide = x.prototype.hide), - this.init(); - }); - (x.VERSION = '1.13.1'), - (x.DEFAULTS = { - noneSelectedText: 'Nothing selected', - noneResultsText: 'No results matched {0}', - countSelectedText: function (a, b) { - return 1 == a ? '{0} item selected' : '{0} items selected'; - }, - maxOptionsText: function (a, b) { - return [ - 1 == a - ? 'Limit reached ({n} item max)' - : 'Limit reached ({n} items max)', - 1 == b - ? 'Group limit reached ({n} item max)' - : 'Group limit reached ({n} items max)', - ]; - }, - selectAllText: 'Select All', - deselectAllText: 'Deselect All', - doneButton: !1, - doneButtonText: 'Close', - multipleSeparator: ', ', - styleBase: 'btn', - style: 'btn-default', - size: 'auto', - title: null, - selectedTextFormat: 'values', - width: !1, - container: !1, - hideDisabled: !1, - showSubtext: !1, - showIcon: !0, - showContent: !0, - dropupAuto: !0, - header: !1, - liveSearch: !1, - liveSearchPlaceholder: null, - liveSearchNormalize: !1, - liveSearchStyle: 'contains', - actionsBox: !1, - iconBase: 'glyphicon', - tickIcon: 'glyphicon-ok', - showTick: !1, - template: { caret: '' }, - maxOptions: !1, - mobile: !1, - selectOnTab: !1, - dropdownAlignRight: !1, - windowPadding: 0, - virtualScroll: 600, - }), - '4' === t.major && - ((x.DEFAULTS.style = 'btn-light'), - (x.DEFAULTS.iconBase = ''), - (x.DEFAULTS.tickIcon = 'bs-ok-default')), - (x.prototype = { - constructor: x, - init: function () { - var a = this, - b = this.$element.attr('id'); - this.$element.addClass('bs-select-hidden'), - (this.multiple = this.$element.prop('multiple')), - (this.autofocus = this.$element.prop('autofocus')), - (this.$newElement = this.createDropdown()), - this.createLi(), - this.$element.after(this.$newElement).prependTo(this.$newElement), - (this.$button = this.$newElement.children('button')), - (this.$menu = this.$newElement.children('.dropdown-menu')), - (this.$menuInner = this.$menu.children('.inner')), - (this.$searchbox = this.$menu.find('input')), - this.$element.removeClass('bs-select-hidden'), - !0 === this.options.dropdownAlignRight && - this.$menu.addClass(u.MENURIGHT), - void 0 !== b && this.$button.attr('data-id', b), - this.checkDisabled(), - this.clickListener(), - this.options.liveSearch && this.liveSearchListener(), - this.render(), - this.setStyle(), - this.setWidth(), - this.options.container - ? this.selectPosition() - : this.$element.on('hide.bs.select', function () { - if (a.isVirtual()) { - var b = a.$menuInner[0], - c = b.firstChild.cloneNode(!1); - b.replaceChild(c, b.firstChild), (b.scrollTop = 0); - } - }), - this.$menu.data('this', this), - this.$newElement.data('this', this), - this.options.mobile && this.mobile(), - this.$newElement.on({ - 'hide.bs.dropdown': function (b) { - a.$menuInner.attr('aria-expanded', !1), - a.$element.trigger('hide.bs.select', b); - }, - 'hidden.bs.dropdown': function (b) { - a.$element.trigger('hidden.bs.select', b); - }, - 'show.bs.dropdown': function (b) { - a.$menuInner.attr('aria-expanded', !0), - a.$element.trigger('show.bs.select', b); - }, - 'shown.bs.dropdown': function (b) { - a.$element.trigger('shown.bs.select', b); - }, - }), - a.$element[0].hasAttribute('required') && - this.$element.on('invalid', function () { - a.$button.addClass('bs-invalid'), - a.$element.on({ - 'shown.bs.select': function () { - a.$element.val(a.$element.val()).off('shown.bs.select'); - }, - 'rendered.bs.select': function () { - this.validity.valid && - a.$button.removeClass('bs-invalid'), - a.$element.off('rendered.bs.select'); - }, - }), - a.$button.on('blur.bs.select', function () { - a.$element.focus().blur(), a.$button.off('blur.bs.select'); - }); - }), - setTimeout(function () { - a.$element.trigger('loaded.bs.select'); - }); - }, - createDropdown: function () { - var b = this.multiple || this.options.showTick ? ' show-tick' : '', - c = this.autofocus ? ' autofocus' : '', - d = this.options.header - ? '
' + - this.options.header + - '
' - : '', - e = this.options.liveSearch - ? '' - : '', - f = - this.multiple && this.options.actionsBox - ? '
' - : '', - g = - this.multiple && this.options.doneButton - ? '
' - : '', - h = - ''; - return a(h); - }, - setPositionData: function () { - this.selectpicker.view.canHighlight = []; - for (var a = 0; a < this.selectpicker.current.data.length; a++) { - var b = this.selectpicker.current.data[a], - c = !0; - 'divider' === b.type - ? ((c = !1), (b.height = this.sizeInfo.dividerHeight)) - : 'optgroup-label' === b.type - ? ((c = !1), (b.height = this.sizeInfo.dropdownHeaderHeight)) - : (b.height = this.sizeInfo.liHeight), - b.disabled && (c = !1), - this.selectpicker.view.canHighlight.push(c), - (b.position = - (0 === a ? 0 : this.selectpicker.current.data[a - 1].position) + - b.height); - } - }, - isVirtual: function () { - return ( - (!1 !== this.options.virtualScroll && - this.selectpicker.main.elements.length >= - this.options.virtualScroll) || - !0 === this.options.virtualScroll - ); - }, - createView: function (c, d) { - function e(a, d) { - var e, - j, - k, - l, - m, - n, - o, - p = f.selectpicker.current.elements.length, - q = [], - r = void 0, - s = !0, - t = f.isVirtual(); - (f.selectpicker.view.scrollTop = a), - !0 === t && - f.sizeInfo.hasScrollBar && - f.$menu[0].offsetWidth > f.sizeInfo.totalMenuWidth && - ((f.sizeInfo.menuWidth = f.$menu[0].offsetWidth), - (f.sizeInfo.totalMenuWidth = - f.sizeInfo.menuWidth + f.sizeInfo.scrollBarWidth), - f.$menu.css('min-width', f.sizeInfo.menuWidth)), - (e = Math.ceil( - (f.sizeInfo.menuInnerHeight / f.sizeInfo.liHeight) * 1.5, - )), - (j = Math.round(p / e) || 1); - for (var u = 0; u < j; u++) { - var v = (u + 1) * e; - if ( - (u === j - 1 && (v = p), (q[u] = [u * e + (u ? 1 : 0), v]), !p) - ) - break; - void 0 === r && - a <= - f.selectpicker.current.data[v - 1].position - - f.sizeInfo.menuInnerHeight && - (r = u); - } - if ( - (void 0 === r && (r = 0), - (m = [ - f.selectpicker.view.position0, - f.selectpicker.view.position1, - ]), - (k = Math.max(0, r - 1)), - (l = Math.min(j - 1, r + 1)), - (f.selectpicker.view.position0 = Math.max(0, q[k][0]) || 0), - (f.selectpicker.view.position1 = Math.min(p, q[l][1]) || 0), - (n = - m[0] !== f.selectpicker.view.position0 || - m[1] !== f.selectpicker.view.position1), - void 0 !== f.activeIndex && - ((h = - f.selectpicker.current.elements[ - f.selectpicker.current.map.newIndex[f.prevActiveIndex] - ]), - (i = - f.selectpicker.current.elements[ - f.selectpicker.current.map.newIndex[f.activeIndex] - ]), - (g = - f.selectpicker.current.elements[ - f.selectpicker.current.map.newIndex[f.selectedIndex] - ]), - d && - (f.activeIndex !== f.selectedIndex && - (i.classList.remove('active'), - i.firstChild && i.firstChild.classList.remove('active')), - (f.activeIndex = void 0)), - f.activeIndex && - f.activeIndex !== f.selectedIndex && - g && - g.length && - (g.classList.remove('active'), - g.firstChild && g.firstChild.classList.remove('active'))), - void 0 !== f.prevActiveIndex && - f.prevActiveIndex !== f.activeIndex && - f.prevActiveIndex !== f.selectedIndex && - h && - h.length && - (h.classList.remove('active'), - h.firstChild && h.firstChild.classList.remove('active')), - (d || n) && - ((o = f.selectpicker.view.visibleElements - ? f.selectpicker.view.visibleElements.slice() - : []), - (f.selectpicker.view.visibleElements = - f.selectpicker.current.elements.slice( - f.selectpicker.view.position0, - f.selectpicker.view.position1, - )), - f.setOptionStatus(), - (c || (!1 === t && d)) && - (s = !b(o, f.selectpicker.view.visibleElements)), - (d || !0 === t) && s)) - ) { - var w, - x, - y = f.$menuInner[0], - z = document.createDocumentFragment(), - A = y.firstChild.cloneNode(!1), - B = - !0 === t - ? f.selectpicker.view.visibleElements - : f.selectpicker.current.elements; - y.replaceChild(A, y.firstChild); - for (var u = 0, C = B.length; u < C; u++) z.appendChild(B[u]); - !0 === t && - ((w = - 0 === f.selectpicker.view.position0 - ? 0 - : f.selectpicker.current.data[ - f.selectpicker.view.position0 - 1 - ].position), - (x = - f.selectpicker.view.position1 > p - 1 - ? 0 - : f.selectpicker.current.data[p - 1].position - - f.selectpicker.current.data[ - f.selectpicker.view.position1 - 1 - ].position), - (y.firstChild.style.marginTop = w + 'px'), - (y.firstChild.style.marginBottom = x + 'px')), - y.firstChild.appendChild(z); - } - if (((f.prevActiveIndex = f.activeIndex), f.options.liveSearch)) { - if (c && d) { - var D, - E = 0; - f.selectpicker.view.canHighlight[E] || - (E = - 1 + f.selectpicker.view.canHighlight.slice(1).indexOf(!0)), - (D = f.selectpicker.view.visibleElements[E]), - f.selectpicker.view.currentActive && - (f.selectpicker.view.currentActive.classList.remove( - 'active', - ), - f.selectpicker.view.currentActive.firstChild && - f.selectpicker.view.currentActive.firstChild.classList.remove( - 'active', - )), - D && - (D.classList.add('active'), - D.firstChild && D.firstChild.classList.add('active')), - (f.activeIndex = f.selectpicker.current.map.originalIndex[E]); - } - } else f.$menuInner.focus(); - } - d = d || 0; - var f = this; - this.selectpicker.current = c - ? this.selectpicker.search - : this.selectpicker.main; - var g, - h, - i = []; - this.setPositionData(), - e(d, !0), - this.$menuInner - .off('scroll.createView') - .on('scroll.createView', function (a, b) { - f.noScroll || e(this.scrollTop, b), (f.noScroll = !1); - }), - a(window) - .off('resize.createView') - .on('resize.createView', function () { - e(f.$menuInner[0].scrollTop); - }); - }, - createLi: function () { - var b, - c = this, - d = [], - e = 0, - f = 0, - g = [], - h = 0, - i = 0, - j = -1; - this.selectpicker.view.titleOption || - (this.selectpicker.view.titleOption = - document.createElement('option')); - var k = { - span: document.createElement('span'), - subtext: document.createElement('small'), - a: document.createElement('a'), - li: document.createElement('li'), - whitespace: document.createTextNode(' '), - }, - l = k.span.cloneNode(!1), - m = document.createDocumentFragment(); - (l.className = - c.options.iconBase + ' ' + c.options.tickIcon + ' check-mark'), - k.a.appendChild(l), - k.a.setAttribute('role', 'option'), - (k.subtext.className = 'text-muted'), - (k.text = k.span.cloneNode(!1)), - (k.text.className = 'text'); - var n = function (a, b, c, d) { - var e = k.li.cloneNode(!1); - return ( - a && - (1 === a.nodeType || 11 === a.nodeType - ? e.appendChild(a) - : (e.innerHTML = a)), - void 0 !== c && '' !== c && (e.className = c), - void 0 !== d && null !== d && e.classList.add('optgroup-' + d), - e - ); - }, - o = function (a, b, c) { - var d = k.a.cloneNode(!0); - return ( - a && - (11 === a.nodeType - ? d.appendChild(a) - : d.insertAdjacentHTML('beforeend', a)), - (void 0 !== b) & ('' !== b) && (d.className = b), - '4' === t.major && d.classList.add('dropdown-item'), - c && d.setAttribute('style', c), - d - ); - }, - q = function (a) { - var b, - d, - e = k.text.cloneNode(!1); - if (a.optionContent) e.innerHTML = a.optionContent; - else { - if (((e.textContent = a.text), a.optionIcon)) { - var f = k.whitespace.cloneNode(!1); - (d = k.span.cloneNode(!1)), - (d.className = c.options.iconBase + ' ' + a.optionIcon), - m.appendChild(d), - m.appendChild(f); - } - a.optionSubtext && - ((b = k.subtext.cloneNode(!1)), - (b.innerHTML = a.optionSubtext), - e.appendChild(b)); - } - return m.appendChild(e), m; - }, - r = function (a) { - var b, - d, - e = k.text.cloneNode(!1); - if (((e.textContent = a.labelEscaped), a.labelIcon)) { - var f = k.whitespace.cloneNode(!1); - (d = k.span.cloneNode(!1)), - (d.className = c.options.iconBase + ' ' + a.labelIcon), - m.appendChild(d), - m.appendChild(f); - } - return ( - a.labelSubtext && - ((b = k.subtext.cloneNode(!1)), - (b.textContent = a.labelSubtext), - e.appendChild(b)), - m.appendChild(e), - m - ); - }; - if (this.options.title && !this.multiple) { - j--; - var s = this.$element[0], - v = !1, - w = !this.selectpicker.view.titleOption.parentNode; - if (w) { - (this.selectpicker.view.titleOption.className = - 'bs-title-option'), - (this.selectpicker.view.titleOption.value = ''); - v = - void 0 === a(s.options[s.selectedIndex]).attr('selected') && - void 0 === this.$element.data('selected'); - } - (w || 0 !== this.selectpicker.view.titleOption.index) && - s.insertBefore(this.selectpicker.view.titleOption, s.firstChild), - v && (s.selectedIndex = 0); - } - var x = this.$element.find('option'); - x.each(function (k) { - var l = a(this); - if ((j++, !l.hasClass('bs-title-option'))) { - var m, - s, - t = l.data(), - v = this.className || '', - w = p(this.style.cssText), - y = t.content, - z = this.textContent, - A = t.tokens, - B = t.subtext, - C = t.icon, - D = l.parent(), - E = D[0], - F = 'OPTGROUP' === E.tagName, - G = F && E.disabled, - H = this.disabled || G, - I = - this.previousElementSibling && - 'OPTGROUP' === this.previousElementSibling.tagName, - J = D.data(); - if ( - !0 === t.hidden || - (c.options.hideDisabled && ((H && !F) || G)) - ) { - if ( - ((m = t.prevHiddenIndex), - l.next().data('prevHiddenIndex', void 0 !== m ? m : k), - j--, - !I && void 0 !== m) - ) { - var K = x[m].previousElementSibling; - K && 'OPTGROUP' === K.tagName && !K.disabled && (I = !0); - } - return void ( - I && - 'divider' !== g[g.length - 1].type && - (j++, - d.push(n(!1, 0, u.DIVIDER, h + 'div')), - g.push({ type: 'divider', optID: h, originalIndex: k })) - ); - } - if (F && !0 !== t.divider) { - if (c.options.hideDisabled && H) { - if (void 0 === J.allOptionsDisabled) { - var L = D.children(); - D.data( - 'allOptionsDisabled', - L.filter(':disabled').length === L.length, - ); - } - if (D.data('allOptionsDisabled')) return void j--; - } - var M = ' ' + E.className || ''; - if (!this.previousElementSibling) { - h += 1; - var N = E.label, - O = p(N), - P = J.subtext, - Q = J.icon; - 0 !== k && - d.length > 0 && - (j++, - d.push(n(!1, 0, u.DIVIDER, h + 'div')), - g.push({ type: 'divider', optID: h, originalIndex: k })), - j++; - var R = r({ labelEscaped: O, labelSubtext: P, labelIcon: Q }); - d.push(n(R, 0, 'dropdown-header' + M, h)), - g.push({ - content: O, - subtext: P, - type: 'optgroup-label', - optID: h, - originalIndex: k, - }), - (i = j - 1); - } - if ((c.options.hideDisabled && H) || !0 === t.hidden) - return void j--; - (s = q({ - text: z, - optionContent: y, - optionSubtext: B, - optionIcon: C, - })), - d.push(n(o(s, 'opt ' + v + M, w), 0, '', h)), - g.push({ - content: y || z, - subtext: B, - tokens: A, - type: 'option', - optID: h, - headerIndex: i, - lastIndex: i + E.childElementCount, - originalIndex: k, - data: t, - }), - e++; - } else if (!0 === t.divider) - d.push(n(!1, 0, 'divider')), - g.push({ type: 'divider', originalIndex: k }); - else { - if ( - !I && - c.options.hideDisabled && - void 0 !== (m = t.prevHiddenIndex) - ) { - var K = x[m].previousElementSibling; - K && 'OPTGROUP' === K.tagName && !K.disabled && (I = !0); - } - I && - 'divider' !== g[g.length - 1].type && - (j++, - d.push(n(!1, 0, u.DIVIDER, h + 'div')), - g.push({ type: 'divider', optID: h, originalIndex: k })), - (s = q({ - text: z, - optionContent: y, - optionSubtext: B, - optionIcon: C, - })), - d.push(n(o(s, v, w))), - g.push({ - content: y || z, - subtext: B, - tokens: A, - type: 'option', - originalIndex: k, - data: t, - }), - e++; - } - (c.selectpicker.main.map.newIndex[k] = j), - (c.selectpicker.main.map.originalIndex[j] = k); - var S = g[g.length - 1]; - S.disabled = H; - var T = 0; - S.content && (T += S.content.length), - S.subtext && (T += S.subtext.length), - C && (T += 1), - T > f && ((f = T), (b = d[d.length - 1])); - } - }), - (this.selectpicker.main.elements = d), - (this.selectpicker.main.data = g), - (this.selectpicker.current = this.selectpicker.main), - (this.selectpicker.view.widestOption = b), - (this.selectpicker.view.availableOptionsCount = e); - }, - findLis: function () { - return this.$menuInner.find('.inner > li'); - }, - render: function () { - var a = this, - b = this.$element.find('option'), - c = [], - d = []; - this.togglePlaceholder(), this.tabIndex(); - for ( - var e = 0, f = this.selectpicker.main.elements.length; - e < f; - e++ - ) { - var g = this.selectpicker.main.map.originalIndex[e], - h = b[g]; - if ( - h && - h.selected && - (c.push(h), - (d.length < 100 && 'count' !== a.options.selectedTextFormat) || - 1 === c.length) - ) { - if ( - a.options.hideDisabled && - (h.disabled || - ('OPTGROUP' === h.parentNode.tagName && - h.parentNode.disabled)) - ) - return; - var i, - j, - k = this.selectpicker.main.data[e].data, - l = - k.icon && a.options.showIcon - ? ' ' - : ''; - (i = - a.options.showSubtext && k.subtext && !a.multiple - ? ' ' + k.subtext + '' - : ''), - (j = h.title - ? h.title - : k.content && a.options.showContent - ? k.content.toString() - : l + h.innerHTML.trim() + i), - d.push(j); - } - } - var m = this.multiple ? d.join(this.options.multipleSeparator) : d[0]; - if ( - (c.length > 50 && (m += '...'), - this.multiple && - -1 !== this.options.selectedTextFormat.indexOf('count')) - ) { - var n = this.options.selectedTextFormat.split('>'); - if ( - (n.length > 1 && c.length > n[1]) || - (1 === n.length && c.length >= 2) - ) { - var o = this.selectpicker.view.availableOptionsCount; - m = ( - 'function' == typeof this.options.countSelectedText - ? this.options.countSelectedText(c.length, o) - : this.options.countSelectedText - ) - .replace('{0}', c.length.toString()) - .replace('{1}', o.toString()); - } - } - void 0 == this.options.title && - (this.options.title = this.$element.attr('title')), - 'static' == this.options.selectedTextFormat && - (m = this.options.title), - m || - (m = - void 0 !== this.options.title - ? this.options.title - : this.options.noneSelectedText), - (this.$button[0].title = q(m.replace(/<[^>]*>?/g, '').trim())), - (this.$button.find('.filter-option-inner-inner')[0].innerHTML = m), - this.$element.trigger('rendered.bs.select'); - }, - setStyle: function (a, b) { - this.$element.attr('class') && - this.$newElement.addClass( - this.$element - .attr('class') - .replace( - /selectpicker|mobile-device|bs-select-hidden|validate\[.*\]/gi, - '', - ), - ); - var c = a || this.options.style; - 'add' == b - ? this.$button.addClass(c) - : 'remove' == b - ? this.$button.removeClass(c) - : (this.$button.removeClass(this.options.style), - this.$button.addClass(c)); - }, - liHeight: function (b) { - if (b || (!1 !== this.options.size && !this.sizeInfo)) { - this.sizeInfo || (this.sizeInfo = {}); - var c = document.createElement('div'), - d = document.createElement('div'), - f = document.createElement('div'), - g = document.createElement('ul'), - h = document.createElement('li'), - i = document.createElement('li'), - j = document.createElement('li'), - k = document.createElement('a'), - l = document.createElement('span'), - m = - this.options.header && - this.$menu.find('.' + u.POPOVERHEADER).length > 0 - ? this.$menu.find('.' + u.POPOVERHEADER)[0].cloneNode(!0) - : null, - n = this.options.liveSearch - ? document.createElement('div') - : null, - o = - this.options.actionsBox && - this.multiple && - this.$menu.find('.bs-actionsbox').length > 0 - ? this.$menu.find('.bs-actionsbox')[0].cloneNode(!0) - : null, - p = - this.options.doneButton && - this.multiple && - this.$menu.find('.bs-donebutton').length > 0 - ? this.$menu.find('.bs-donebutton')[0].cloneNode(!0) - : null; - if ( - ((this.sizeInfo.selectWidth = this.$newElement[0].offsetWidth), - (l.className = 'text'), - (k.className = 'dropdown-item'), - (c.className = this.$menu[0].parentNode.className + ' ' + u.SHOW), - (c.style.width = this.sizeInfo.selectWidth + 'px'), - (d.className = 'dropdown-menu ' + u.SHOW), - (f.className = 'inner ' + u.SHOW), - (g.className = - 'dropdown-menu inner ' + ('4' === t.major ? u.SHOW : '')), - (h.className = u.DIVIDER), - (i.className = 'dropdown-header'), - l.appendChild(document.createTextNode('Inner text')), - k.appendChild(l), - j.appendChild(k), - i.appendChild(l.cloneNode(!0)), - this.selectpicker.view.widestOption && - g.appendChild( - this.selectpicker.view.widestOption.cloneNode(!0), - ), - g.appendChild(j), - g.appendChild(h), - g.appendChild(i), - m && d.appendChild(m), - n) - ) { - var q = document.createElement('input'); - (n.className = 'bs-searchbox'), - (q.className = 'form-control'), - n.appendChild(q), - d.appendChild(n); - } - o && d.appendChild(o), - f.appendChild(g), - d.appendChild(f), - p && d.appendChild(p), - c.appendChild(d), - document.body.appendChild(c); - var r, - s = k.offsetHeight, - v = i ? i.offsetHeight : 0, - w = m ? m.offsetHeight : 0, - x = n ? n.offsetHeight : 0, - y = o ? o.offsetHeight : 0, - z = p ? p.offsetHeight : 0, - A = a(h).outerHeight(!0), - B = !!window.getComputedStyle && window.getComputedStyle(d), - C = d.offsetWidth, - D = B ? null : a(d), - E = { - vert: - e(B ? B.paddingTop : D.css('paddingTop')) + - e(B ? B.paddingBottom : D.css('paddingBottom')) + - e(B ? B.borderTopWidth : D.css('borderTopWidth')) + - e(B ? B.borderBottomWidth : D.css('borderBottomWidth')), - horiz: - e(B ? B.paddingLeft : D.css('paddingLeft')) + - e(B ? B.paddingRight : D.css('paddingRight')) + - e(B ? B.borderLeftWidth : D.css('borderLeftWidth')) + - e(B ? B.borderRightWidth : D.css('borderRightWidth')), - }, - F = { - vert: - E.vert + - e(B ? B.marginTop : D.css('marginTop')) + - e(B ? B.marginBottom : D.css('marginBottom')) + - 2, - horiz: - E.horiz + - e(B ? B.marginLeft : D.css('marginLeft')) + - e(B ? B.marginRight : D.css('marginRight')) + - 2, - }; - (f.style.overflowY = 'scroll'), - (r = d.offsetWidth - C), - document.body.removeChild(c), - (this.sizeInfo.liHeight = s), - (this.sizeInfo.dropdownHeaderHeight = v), - (this.sizeInfo.headerHeight = w), - (this.sizeInfo.searchHeight = x), - (this.sizeInfo.actionsHeight = y), - (this.sizeInfo.doneButtonHeight = z), - (this.sizeInfo.dividerHeight = A), - (this.sizeInfo.menuPadding = E), - (this.sizeInfo.menuExtras = F), - (this.sizeInfo.menuWidth = C), - (this.sizeInfo.totalMenuWidth = this.sizeInfo.menuWidth), - (this.sizeInfo.scrollBarWidth = r), - (this.sizeInfo.selectHeight = this.$newElement[0].offsetHeight), - this.setPositionData(); - } - }, - getSelectPosition: function () { - var b, - c = this, - d = a(window), - e = c.$newElement.offset(), - f = a(c.options.container); - c.options.container && !f.is('body') - ? ((b = f.offset()), - (b.top += parseInt(f.css('borderTopWidth'))), - (b.left += parseInt(f.css('borderLeftWidth')))) - : (b = { top: 0, left: 0 }); - var g = c.options.windowPadding; - (this.sizeInfo.selectOffsetTop = e.top - b.top - d.scrollTop()), - (this.sizeInfo.selectOffsetBot = - d.height() - - this.sizeInfo.selectOffsetTop - - this.sizeInfo.selectHeight - - b.top - - g[2]), - (this.sizeInfo.selectOffsetLeft = e.left - b.left - d.scrollLeft()), - (this.sizeInfo.selectOffsetRight = - d.width() - - this.sizeInfo.selectOffsetLeft - - this.sizeInfo.selectWidth - - b.left - - g[1]), - (this.sizeInfo.selectOffsetTop -= g[0]), - (this.sizeInfo.selectOffsetLeft -= g[3]); - }, - setMenuSize: function (a) { - this.getSelectPosition(); - var b, - c, - d, - e, - f, - g, - h, - i = this.sizeInfo.selectWidth, - j = this.sizeInfo.liHeight, - k = this.sizeInfo.headerHeight, - l = this.sizeInfo.searchHeight, - m = this.sizeInfo.actionsHeight, - n = this.sizeInfo.doneButtonHeight, - o = this.sizeInfo.dividerHeight, - p = this.sizeInfo.menuPadding, - q = 0; - if ( - (this.options.dropupAuto && - ((h = j * this.selectpicker.current.elements.length + p.vert), - this.$newElement.toggleClass( - u.DROPUP, - this.sizeInfo.selectOffsetTop - this.sizeInfo.selectOffsetBot > - this.sizeInfo.menuExtras.vert && - h + this.sizeInfo.menuExtras.vert + 50 > - this.sizeInfo.selectOffsetBot, - )), - 'auto' === this.options.size) - ) - (e = - this.selectpicker.current.elements.length > 3 - ? 3 * this.sizeInfo.liHeight + this.sizeInfo.menuExtras.vert - 2 - : 0), - (c = - this.sizeInfo.selectOffsetBot - this.sizeInfo.menuExtras.vert), - (d = e + k + l + m + n), - (g = Math.max(e - p.vert, 0)), - this.$newElement.hasClass(u.DROPUP) && - (c = - this.sizeInfo.selectOffsetTop - - this.sizeInfo.menuExtras.vert), - (f = c), - (b = c - k - l - m - n - p.vert); - else if ( - this.options.size && - 'auto' != this.options.size && - this.selectpicker.current.elements.length > this.options.size - ) { - for (var r = 0; r < this.options.size; r++) - 'divider' === this.selectpicker.current.data[r].type && q++; - (c = j * this.options.size + q * o + p.vert), - (b = c - p.vert), - (f = c + k + l + m + n), - (d = g = ''); - } - 'auto' === this.options.dropdownAlignRight && - this.$menu.toggleClass( - u.MENURIGHT, - this.sizeInfo.selectOffsetLeft > - this.sizeInfo.selectOffsetRight && - this.sizeInfo.selectOffsetRight < this.$menu[0].offsetWidth - i, - ), - this.$menu.css({ - 'max-height': f + 'px', - overflow: 'hidden', - 'min-height': d + 'px', - }), - this.$menuInner.css({ - 'max-height': b + 'px', - 'overflow-y': 'auto', - 'min-height': g + 'px', - }), - (this.sizeInfo.menuInnerHeight = b), - this.selectpicker.current.data.length && - this.selectpicker.current.data[ - this.selectpicker.current.data.length - 1 - ].position > this.sizeInfo.menuInnerHeight && - ((this.sizeInfo.hasScrollBar = !0), - (this.sizeInfo.totalMenuWidth = - this.sizeInfo.menuWidth + this.sizeInfo.scrollBarWidth), - this.$menu.css('min-width', this.sizeInfo.totalMenuWidth)), - this.dropdown && - this.dropdown._popper && - this.dropdown._popper.update(); - }, - setSize: function (b) { - if ( - (this.liHeight(b), - this.options.header && this.$menu.css('padding-top', 0), - !1 !== this.options.size) - ) { - var c, - d = this, - e = a(window), - f = 0; - this.setMenuSize(), - 'auto' === this.options.size - ? (this.$searchbox - .off('input.setMenuSize propertychange.setMenuSize') - .on( - 'input.setMenuSize propertychange.setMenuSize', - function () { - return d.setMenuSize(); - }, - ), - e - .off('resize.setMenuSize scroll.setMenuSize') - .on('resize.setMenuSize scroll.setMenuSize', function () { - return d.setMenuSize(); - })) - : this.options.size && - 'auto' != this.options.size && - this.selectpicker.current.elements.length > - this.options.size && - (this.$searchbox.off( - 'input.setMenuSize propertychange.setMenuSize', - ), - e.off('resize.setMenuSize scroll.setMenuSize')), - b - ? (f = this.$menuInner[0].scrollTop) - : d.multiple || - ('number' == - typeof (c = - d.selectpicker.main.map.newIndex[ - d.$element[0].selectedIndex - ]) && - !1 !== d.options.size && - ((f = d.sizeInfo.liHeight * c), - (f = - f - - d.sizeInfo.menuInnerHeight / 2 + - d.sizeInfo.liHeight / 2))), - d.createView(!1, f); - } - }, - setWidth: function () { - var a = this; - 'auto' === this.options.width - ? requestAnimationFrame(function () { - a.$menu.css('min-width', '0'), a.liHeight(), a.setMenuSize(); - var b = a.$newElement.clone().appendTo('body'), - c = b.css('width', 'auto').children('button').outerWidth(); - b.remove(), - (a.sizeInfo.selectWidth = Math.max( - a.sizeInfo.totalMenuWidth, - c, - )), - a.$newElement.css('width', a.sizeInfo.selectWidth + 'px'); - }) - : 'fit' === this.options.width - ? (this.$menu.css('min-width', ''), - this.$newElement.css('width', '').addClass('fit-width')) - : this.options.width - ? (this.$menu.css('min-width', ''), - this.$newElement.css('width', this.options.width)) - : (this.$menu.css('min-width', ''), - this.$newElement.css('width', '')), - this.$newElement.hasClass('fit-width') && - 'fit' !== this.options.width && - this.$newElement.removeClass('fit-width'); - }, - selectPosition: function () { - this.$bsContainer = a('
'); - var b, - c, - d, - e = this, - f = a(this.options.container), - g = function (a) { - var g = {}; - e.$bsContainer - .addClass( - a.attr('class').replace(/form-control|fit-width/gi, ''), - ) - .toggleClass(u.DROPUP, a.hasClass(u.DROPUP)), - (b = a.offset()), - f.is('body') - ? (c = { top: 0, left: 0 }) - : ((c = f.offset()), - (c.top += - parseInt(f.css('borderTopWidth')) - f.scrollTop()), - (c.left += - parseInt(f.css('borderLeftWidth')) - f.scrollLeft())), - (d = a.hasClass(u.DROPUP) ? 0 : a[0].offsetHeight), - t.major < 4 && - ((g.top = b.top - c.top + d), (g.left = b.left - c.left)), - (g.width = a[0].offsetWidth), - e.$bsContainer.css(g); - }; - this.$button.on('click.bs.dropdown.data-api', function () { - e.isDisabled() || - (g(e.$newElement), - e.$bsContainer - .appendTo(e.options.container) - .toggleClass(u.SHOW, !e.$button.hasClass(u.SHOW)) - .append(e.$menu)); - }), - a(window).on('resize scroll', function () { - g(e.$newElement); - }), - this.$element.on('hide.bs.select', function () { - e.$menu.data('height', e.$menu.height()), e.$bsContainer.detach(); - }); - }, - setOptionStatus: function () { - var a = this, - b = this.$element.find('option'); - if ( - ((a.noScroll = !1), - a.selectpicker.view.visibleElements && - a.selectpicker.view.visibleElements.length) - ) - for ( - var c = 0; - c < a.selectpicker.view.visibleElements.length; - c++ - ) { - var d = - a.selectpicker.current.map.originalIndex[ - c + a.selectpicker.view.position0 - ], - e = b[d]; - if (e) { - var f = this.selectpicker.main.map.newIndex[d], - g = this.selectpicker.main.elements[f]; - a.setDisabled( - d, - e.disabled || - ('OPTGROUP' === e.parentNode.tagName && - e.parentNode.disabled), - f, - g, - ), - a.setSelected(d, e.selected, f, g); - } - } - }, - setSelected: function (a, b, c, d) { - var e, - f, - g, - h = void 0 !== this.activeIndex, - i = this.activeIndex === a, - j = i || (b && !this.multiple && !h); - c || (c = this.selectpicker.main.map.newIndex[a]), - d || (d = this.selectpicker.main.elements[c]), - (g = d.firstChild), - b && (this.selectedIndex = a), - d.classList.toggle('selected', b), - d.classList.toggle('active', j), - j && - ((this.selectpicker.view.currentActive = d), - (this.activeIndex = a)), - g && - (g.classList.toggle('selected', b), - g.classList.toggle('active', j), - g.setAttribute('aria-selected', b)), - j || - (!h && - b && - void 0 !== this.prevActiveIndex && - ((e = - this.selectpicker.main.map.newIndex[this.prevActiveIndex]), - (f = this.selectpicker.main.elements[e]), - f.classList.remove('selected'), - f.classList.remove('active'), - f.firstChild && - (f.firstChild.classList.remove('selected'), - f.firstChild.classList.remove('active')))); - }, - setDisabled: function (a, b, c, d) { - var e; - c || (c = this.selectpicker.main.map.newIndex[a]), - d || (d = this.selectpicker.main.elements[c]), - (e = d.firstChild), - d.classList.toggle(u.DISABLED, b), - e && - ('4' === t.major && e.classList.toggle(u.DISABLED, b), - e.setAttribute('aria-disabled', b), - b - ? e.setAttribute('tabindex', -1) - : e.setAttribute('tabindex', 0)); - }, - isDisabled: function () { - return this.$element[0].disabled; - }, - checkDisabled: function () { - var a = this; - this.isDisabled() - ? (this.$newElement.addClass(u.DISABLED), - this.$button - .addClass(u.DISABLED) - .attr('tabindex', -1) - .attr('aria-disabled', !0)) - : (this.$button.hasClass(u.DISABLED) && - (this.$newElement.removeClass(u.DISABLED), - this.$button.removeClass(u.DISABLED).attr('aria-disabled', !1)), - -1 != this.$button.attr('tabindex') || - this.$element.data('tabindex') || - this.$button.removeAttr('tabindex')), - this.$button.click(function () { - return !a.isDisabled(); - }); - }, - togglePlaceholder: function () { - var a = this.$element[0], - b = a.selectedIndex, - c = -1 === b; - c || a.options[b].value || (c = !0), - this.$button.toggleClass('bs-placeholder', c); - }, - tabIndex: function () { - this.$element.data('tabindex') !== this.$element.attr('tabindex') && - -98 !== this.$element.attr('tabindex') && - '-98' !== this.$element.attr('tabindex') && - (this.$element.data('tabindex', this.$element.attr('tabindex')), - this.$button.attr('tabindex', this.$element.data('tabindex'))), - this.$element.attr('tabindex', -98); - }, - clickListener: function () { - var b = this, - d = a(document); - d.data('spaceSelect', !1), - this.$button.on('keyup', function (a) { - /(32)/.test(a.keyCode.toString(10)) && - d.data('spaceSelect') && - (a.preventDefault(), d.data('spaceSelect', !1)); - }), - this.$newElement.on('show.bs.dropdown', function () { - t.major > 3 && - !b.dropdown && - ((b.dropdown = b.$button.data('bs.dropdown')), - (b.dropdown._menu = b.$menu[0])); - }), - this.$button.on('click.bs.dropdown.data-api', function () { - b.$newElement.hasClass(u.SHOW) || b.setSize(); - }), - this.$element.on('shown.bs.select', function () { - b.$menuInner[0].scrollTop !== b.selectpicker.view.scrollTop && - (b.$menuInner[0].scrollTop = b.selectpicker.view.scrollTop), - b.options.liveSearch - ? b.$searchbox.focus() - : b.$menuInner.focus(); - }), - this.$menuInner.on('click', 'li a', function (d, e) { - var f = a(this), - g = b.isVirtual() ? b.selectpicker.view.position0 : 0, - h = - b.selectpicker.current.map.originalIndex[ - f.parent().index() + g - ], - i = c(b.$element[0]), - j = b.$element.prop('selectedIndex'), - l = !0; - if ( - (b.multiple && - 1 !== b.options.maxOptions && - d.stopPropagation(), - d.preventDefault(), - !b.isDisabled() && !f.parent().hasClass(u.DISABLED)) - ) { - var m = b.$element.find('option'), - n = m.eq(h), - o = n.prop('selected'), - p = n.parent('optgroup'), - q = b.options.maxOptions, - r = p.data('maxOptions') || !1; - if ( - (h === b.activeIndex && (e = !0), - e || - ((b.prevActiveIndex = b.activeIndex), - (b.activeIndex = void 0)), - b.multiple) - ) { - if ( - (n.prop('selected', !o), - b.setSelected(h, !o), - f.blur(), - !1 !== q || !1 !== r) - ) { - var s = q < m.filter(':selected').length, - t = r < p.find('option:selected').length; - if ((q && s) || (r && t)) - if (q && 1 == q) - m.prop('selected', !1), - n.prop('selected', !0), - b.$menuInner - .find('.selected') - .removeClass('selected'), - b.setSelected(h, !0); - else if (r && 1 == r) { - p.find('option:selected').prop('selected', !1), - n.prop('selected', !0); - var v = - b.selectpicker.current.data[ - f.parent().index() + b.selectpicker.view.position0 - ].optID; - b.$menuInner - .find('.optgroup-' + v) - .removeClass('selected'), - b.setSelected(h, !0); - } else { - var w = - 'string' == typeof b.options.maxOptionsText - ? [ - b.options.maxOptionsText, - b.options.maxOptionsText, - ] - : b.options.maxOptionsText, - x = 'function' == typeof w ? w(q, r) : w, - y = x[0].replace('{n}', q), - z = x[1].replace('{n}', r), - A = a('
'); - x[2] && - ((y = y.replace('{var}', x[2][q > 1 ? 0 : 1])), - (z = z.replace('{var}', x[2][r > 1 ? 0 : 1]))), - n.prop('selected', !1), - b.$menu.append(A), - q && - s && - (A.append(a('
' + y + '
')), - (l = !1), - b.$element.trigger('maxReached.bs.select')), - r && - t && - (A.append(a('
' + z + '
')), - (l = !1), - b.$element.trigger('maxReachedGrp.bs.select')), - setTimeout(function () { - b.setSelected(h, !1); - }, 10), - A.delay(750).fadeOut(300, function () { - a(this).remove(); - }); - } - } - } else - m.prop('selected', !1), - n.prop('selected', !0), - b.setSelected(h, !0); - !b.multiple || (b.multiple && 1 === b.options.maxOptions) - ? b.$button.focus() - : b.options.liveSearch && b.$searchbox.focus(), - l && - ((i != c(b.$element[0]) && b.multiple) || - (j != b.$element.prop('selectedIndex') && !b.multiple)) && - ((k = [h, n.prop('selected'), i]), - b.$element.triggerNative('change')); - } - }), - this.$menu.on( - 'click', - 'li.' + - u.DISABLED + - ' a, .' + - u.POPOVERHEADER + - ', .' + - u.POPOVERHEADER + - ' :not(.close)', - function (c) { - c.currentTarget == this && - (c.preventDefault(), - c.stopPropagation(), - b.options.liveSearch && !a(c.target).hasClass('close') - ? b.$searchbox.focus() - : b.$button.focus()); - }, - ), - this.$menuInner.on( - 'click', - '.divider, .dropdown-header', - function (a) { - a.preventDefault(), - a.stopPropagation(), - b.options.liveSearch - ? b.$searchbox.focus() - : b.$button.focus(); - }, - ), - this.$menu.on( - 'click', - '.' + u.POPOVERHEADER + ' .close', - function () { - b.$button.click(); - }, - ), - this.$searchbox.on('click', function (a) { - a.stopPropagation(); - }), - this.$menu.on('click', '.actions-btn', function (c) { - b.options.liveSearch ? b.$searchbox.focus() : b.$button.focus(), - c.preventDefault(), - c.stopPropagation(), - a(this).hasClass('bs-select-all') - ? b.selectAll() - : b.deselectAll(); - }), - this.$element.on({ - change: function () { - b.render(), - b.$element.trigger('changed.bs.select', k), - (k = null); - }, - focus: function () { - b.$button.focus(); - }, - }); - }, - liveSearchListener: function () { - var a = this, - b = document.createElement('li'); - this.$button.on('click.bs.dropdown.data-api', function () { - a.$searchbox.val() && a.$searchbox.val(''); - }), - this.$searchbox.on( - 'click.bs.dropdown.data-api focus.bs.dropdown.data-api touchend.bs.dropdown.data-api', - function (a) { - a.stopPropagation(); - }, - ), - this.$searchbox.on('input propertychange', function () { - var c = a.$searchbox.val(); - if ( - ((a.selectpicker.search.map.newIndex = {}), - (a.selectpicker.search.map.originalIndex = {}), - (a.selectpicker.search.elements = []), - (a.selectpicker.search.data = []), - c) - ) { - var e, - f = [], - g = c.toUpperCase(), - h = {}, - i = [], - j = a._searchStyle(), - k = a.options.liveSearchNormalize; - a._$lisSelected = a.$menuInner.find('.selected'); - for (var e = 0; e < a.selectpicker.main.data.length; e++) { - var l = a.selectpicker.main.data[e]; - h[e] || (h[e] = d(l, g, j, k)), - h[e] && - void 0 !== l.headerIndex && - -1 === i.indexOf(l.headerIndex) && - (l.headerIndex > 0 && - ((h[l.headerIndex - 1] = !0), - i.push(l.headerIndex - 1)), - (h[l.headerIndex] = !0), - i.push(l.headerIndex), - (h[l.lastIndex + 1] = !0)), - h[e] && 'optgroup-label' !== l.type && i.push(e); - } - for (var e = 0, m = i.length; e < m; e++) { - var n = i[e], - o = i[e - 1], - l = a.selectpicker.main.data[n], - q = a.selectpicker.main.data[o]; - ('divider' !== l.type || - ('divider' === l.type && - q && - 'divider' !== q.type && - m - 1 !== e)) && - (a.selectpicker.search.data.push(l), - f.push(a.selectpicker.main.elements[n]), - (a.selectpicker.search.map.newIndex[l.originalIndex] = - f.length - 1), - (a.selectpicker.search.map.originalIndex[f.length - 1] = - l.originalIndex)); - } - (a.activeIndex = void 0), - (a.noScroll = !0), - a.$menuInner.scrollTop(0), - (a.selectpicker.search.elements = f), - a.createView(!0), - f.length || - ((b.className = 'no-results'), - (b.innerHTML = a.options.noneResultsText.replace( - '{0}', - '"' + p(c) + '"', - )), - a.$menuInner[0].firstChild.appendChild(b)); - } else a.$menuInner.scrollTop(0), a.createView(!1); - }); - }, - _searchStyle: function () { - return this.options.liveSearchStyle || 'contains'; - }, - val: function (a) { - return void 0 !== a - ? (this.$element.val(a).triggerNative('change'), this.$element) - : this.$element.val(); - }, - changeAll: function (a) { - if (this.multiple) { - void 0 === a && (a = !0); - var b = this.$element.find('option'), - d = 0, - e = 0, - f = c(this.$element[0]); - this.$element.addClass('bs-select-hidden'); - for ( - var g = 0; - g < this.selectpicker.current.elements.length; - g++ - ) { - var h = this.selectpicker.current.map.originalIndex[g], - i = b[h]; - i && (i.selected && d++, (i.selected = a), i.selected && e++); - } - this.$element.removeClass('bs-select-hidden'), - d !== e && - (this.setOptionStatus(), - this.togglePlaceholder(), - (k = [null, null, f]), - this.$element.triggerNative('change')); - } - }, - selectAll: function () { - return this.changeAll(!0); - }, - deselectAll: function () { - return this.changeAll(!1); - }, - toggle: function (a) { - (a = a || window.event), - a && a.stopPropagation(), - this.$button.trigger('click.bs.dropdown.data-api'); - }, - keydown: function (b) { - var c, - e, - f, - g, - h, - i = a(this), - j = i.is('input') ? i.parent().parent() : i.parent(), - k = j.data('this'), - l = k.findLis(), - m = !1, - n = - b.which === s.TAB && - !i.hasClass('dropdown-toggle') && - !k.options.selectOnTab, - o = v.test(b.which) || n, - p = k.$menuInner[0].scrollTop, - q = k.isVirtual(), - t = !0 === q ? k.selectpicker.view.position0 : 0; - if ( - ((e = k.$newElement.hasClass(u.SHOW)), - !e && - (o || - (b.which >= 48 && b.which <= 57) || - (b.which >= 96 && b.which <= 105) || - (b.which >= 65 && b.which <= 90)) && - k.$button.trigger('click.bs.dropdown.data-api'), - b.which === s.ESCAPE && - e && - (b.preventDefault(), - k.$button.trigger('click.bs.dropdown.data-api').focus()), - o) - ) { - if (!l.length) return; - (c = - !0 === q - ? l.index(l.filter('.active')) - : k.selectpicker.current.map.newIndex[k.activeIndex]), - void 0 === c && (c = -1), - -1 !== c && - ((f = k.selectpicker.current.elements[c + t]), - f.classList.remove('active'), - f.firstChild && f.firstChild.classList.remove('active')), - b.which === s.ARROW_UP - ? (-1 !== c && c--, - c + t < 0 && (c += l.length), - k.selectpicker.view.canHighlight[c + t] || - (-1 === - (c = - k.selectpicker.view.canHighlight - .slice(0, c + t) - .lastIndexOf(!0) - t) && - (c = l.length - 1))) - : (b.which === s.ARROW_DOWN || n) && - (c++, - c + t >= k.selectpicker.view.canHighlight.length && (c = 0), - k.selectpicker.view.canHighlight[c + t] || - (c = - c + - 1 + - k.selectpicker.view.canHighlight - .slice(c + t + 1) - .indexOf(!0))), - b.preventDefault(); - var x = t + c; - b.which === s.ARROW_UP - ? 0 === t && c === l.length - 1 - ? ((k.$menuInner[0].scrollTop = k.$menuInner[0].scrollHeight), - (x = k.selectpicker.current.elements.length - 1)) - : ((g = k.selectpicker.current.data[x]), - (h = g.position - g.height), - (m = h < p)) - : (b.which === s.ARROW_DOWN || n) && - (0 !== t && 0 === c - ? ((k.$menuInner[0].scrollTop = 0), (x = 0)) - : ((g = k.selectpicker.current.data[x]), - (h = g.position - k.sizeInfo.menuInnerHeight), - (m = h > p))), - (f = k.selectpicker.current.elements[x]), - f.classList.add('active'), - f.firstChild && f.firstChild.classList.add('active'), - (k.activeIndex = k.selectpicker.current.map.originalIndex[x]), - (k.selectpicker.view.currentActive = f), - m && (k.$menuInner[0].scrollTop = h), - k.options.liveSearch ? k.$searchbox.focus() : i.focus(); - } else if ( - (!i.is('input') && !w.test(b.which)) || - (b.which === s.SPACE && k.selectpicker.keydown.keyHistory) - ) { - var y, - z, - A = []; - b.preventDefault(), - (k.selectpicker.keydown.keyHistory += r[b.which]), - k.selectpicker.keydown.resetKeyHistory.cancel && - clearTimeout(k.selectpicker.keydown.resetKeyHistory.cancel), - (k.selectpicker.keydown.resetKeyHistory.cancel = - k.selectpicker.keydown.resetKeyHistory.start()), - (z = k.selectpicker.keydown.keyHistory), - /^(.)\1+$/.test(z) && (z = z.charAt(0)); - for (var B = 0; B < k.selectpicker.current.data.length; B++) { - var C, - D = k.selectpicker.current.data[B]; - (C = d(D, z, 'startsWith', !0)), - C && - k.selectpicker.view.canHighlight[B] && - ((D.index = B), A.push(D.originalIndex)); - } - if (A.length) { - var E = 0; - l.removeClass('active').find('a').removeClass('active'), - 1 === z.length && - ((E = A.indexOf(k.activeIndex)), - -1 === E || E === A.length - 1 ? (E = 0) : E++), - (y = k.selectpicker.current.map.newIndex[A[E]]), - (g = k.selectpicker.current.data[y]), - p - g.position > 0 - ? ((h = g.position - g.height), (m = !0)) - : ((h = g.position - k.sizeInfo.menuInnerHeight), - (m = g.position > p + k.sizeInfo.menuInnerHeight)), - (f = k.selectpicker.current.elements[y]), - f.classList.add('active'), - f.firstChild && f.firstChild.classList.add('active'), - (k.activeIndex = A[E]), - f.firstChild.focus(), - m && (k.$menuInner[0].scrollTop = h), - i.focus(); - } - } - e && - ((b.which === s.SPACE && !k.selectpicker.keydown.keyHistory) || - b.which === s.ENTER || - (b.which === s.TAB && k.options.selectOnTab)) && - (b.which !== s.SPACE && b.preventDefault(), - (k.options.liveSearch && b.which === s.SPACE) || - (k.$menuInner.find('.active a').trigger('click', !0), - i.focus(), - k.options.liveSearch || - (b.preventDefault(), a(document).data('spaceSelect', !0)))); - }, - mobile: function () { - this.$element.addClass('mobile-device'); - }, - refresh: function () { - var b = a.extend({}, this.options, this.$element.data()); - (this.options = b), - (this.selectpicker.main.map.newIndex = {}), - (this.selectpicker.main.map.originalIndex = {}), - this.createLi(), - this.checkDisabled(), - this.render(), - this.setStyle(), - this.setWidth(), - this.setSize(!0), - this.$element.trigger('refreshed.bs.select'); - }, - hide: function () { - this.$newElement.hide(); - }, - show: function () { - this.$newElement.show(); - }, - remove: function () { - this.$newElement.remove(), this.$element.remove(); - }, - destroy: function () { - this.$newElement.before(this.$element).remove(), - this.$bsContainer - ? this.$bsContainer.remove() - : this.$menu.remove(), - this.$element - .off('.bs.select') - .removeData('selectpicker') - .removeClass('bs-select-hidden selectpicker'); - }, - }); - var y = a.fn.selectpicker; - (a.fn.selectpicker = g), - (a.fn.selectpicker.Constructor = x), - (a.fn.selectpicker.noConflict = function () { - return (a.fn.selectpicker = y), this; - }), - a(document) - .off('keydown.bs.dropdown.data-api') - .on( - 'keydown.bs.select', - '.bootstrap-select [data-toggle="dropdown"], .bootstrap-select [role="listbox"], .bs-searchbox input', - x.prototype.keydown, - ) - .on( - 'focusin.modal', - '.bootstrap-select [data-toggle="dropdown"], .bootstrap-select [role="listbox"], .bs-searchbox input', - function (a) { - a.stopPropagation(); - }, - ), - a(window).on('load.bs.select.data-api', function () { - a('.selectpicker').each(function () { - var b = a(this); - g.call(b, b.data()); - }); - }); - })(a); -}); -//# sourceMappingURL=bootstrap-select.js.map + * Bootstrap v4.4.1 (https://getbootstrap.com/) + * Copyright 2011-2019 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("jquery"),require("popper.js")):"function"==typeof define&&define.amd?define(["exports","jquery","popper.js"],e):e((t=t||self).bootstrap={},t.jQuery,t.Popper)}(this,function(t,g,u){"use strict";function i(t,e){for(var n=0;nthis._items.length-1||t<0))if(this._isSliding)g(this._element).one(Y.SLID,function(){return e.to(t)});else{if(n===t)return this.pause(),void this.cycle();var i=ndocument.documentElement.clientHeight;!this._isBodyOverflowing&&t&&(this._element.style.paddingLeft=this._scrollbarWidth+"px"),this._isBodyOverflowing&&!t&&(this._element.style.paddingRight=this._scrollbarWidth+"px")},t._resetAdjustments=function(){this._element.style.paddingLeft="",this._element.style.paddingRight=""},t._checkScrollbar=function(){var t=document.body.getBoundingClientRect();this._isBodyOverflowing=t.left+t.right
',trigger:"hover focus",title:"",delay:0,html:!1,selector:!1,placement:"top",offset:0,container:!1,fallbackPlacement:"flip",boundary:"scrollParent",sanitize:!0,sanitizeFn:null,whiteList:Se,popperConfig:null},Fe="show",Ue="out",We={HIDE:"hide"+Oe,HIDDEN:"hidden"+Oe,SHOW:"show"+Oe,SHOWN:"shown"+Oe,INSERTED:"inserted"+Oe,CLICK:"click"+Oe,FOCUSIN:"focusin"+Oe,FOCUSOUT:"focusout"+Oe,MOUSEENTER:"mouseenter"+Oe,MOUSELEAVE:"mouseleave"+Oe},qe="fade",Me="show",Ke=".tooltip-inner",Qe=".arrow",Be="hover",Ve="focus",Ye="click",ze="manual",Xe=function(){function i(t,e){if("undefined"==typeof u)throw new TypeError("Bootstrap's tooltips require Popper.js (https://popper.js.org/)");this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this.element=t,this.config=this._getConfig(e),this.tip=null,this._setListeners()}var t=i.prototype;return t.enable=function(){this._isEnabled=!0},t.disable=function(){this._isEnabled=!1},t.toggleEnabled=function(){this._isEnabled=!this._isEnabled},t.toggle=function(t){if(this._isEnabled)if(t){var e=this.constructor.DATA_KEY,n=g(t.currentTarget).data(e);n||(n=new this.constructor(t.currentTarget,this._getDelegateConfig()),g(t.currentTarget).data(e,n)),n._activeTrigger.click=!n._activeTrigger.click,n._isWithActiveTrigger()?n._enter(null,n):n._leave(null,n)}else{if(g(this.getTipElement()).hasClass(Me))return void this._leave(null,this);this._enter(null,this)}},t.dispose=function(){clearTimeout(this._timeout),g.removeData(this.element,this.constructor.DATA_KEY),g(this.element).off(this.constructor.EVENT_KEY),g(this.element).closest(".modal").off("hide.bs.modal",this._hideModalHandler),this.tip&&g(this.tip).remove(),this._isEnabled=null,this._timeout=null,this._hoverState=null,this._activeTrigger=null,this._popper&&this._popper.destroy(),this._popper=null,this.element=null,this.config=null,this.tip=null},t.show=function(){var e=this;if("none"===g(this.element).css("display"))throw new Error("Please use show on visible elements");var t=g.Event(this.constructor.Event.SHOW);if(this.isWithContent()&&this._isEnabled){g(this.element).trigger(t);var n=_.findShadowRoot(this.element),i=g.contains(null!==n?n:this.element.ownerDocument.documentElement,this.element);if(t.isDefaultPrevented()||!i)return;var o=this.getTipElement(),r=_.getUID(this.constructor.NAME);o.setAttribute("id",r),this.element.setAttribute("aria-describedby",r),this.setContent(),this.config.animation&&g(o).addClass(qe);var s="function"==typeof this.config.placement?this.config.placement.call(this,o,this.element):this.config.placement,a=this._getAttachment(s);this.addAttachmentClass(a);var l=this._getContainer();g(o).data(this.constructor.DATA_KEY,this),g.contains(this.element.ownerDocument.documentElement,this.tip)||g(o).appendTo(l),g(this.element).trigger(this.constructor.Event.INSERTED),this._popper=new u(this.element,o,this._getPopperConfig(a)),g(o).addClass(Me),"ontouchstart"in document.documentElement&&g(document.body).children().on("mouseover",null,g.noop);var c=function(){e.config.animation&&e._fixTransition();var t=e._hoverState;e._hoverState=null,g(e.element).trigger(e.constructor.Event.SHOWN),t===Ue&&e._leave(null,e)};if(g(this.tip).hasClass(qe)){var h=_.getTransitionDurationFromElement(this.tip);g(this.tip).one(_.TRANSITION_END,c).emulateTransitionEnd(h)}else c()}},t.hide=function(t){function e(){n._hoverState!==Fe&&i.parentNode&&i.parentNode.removeChild(i),n._cleanTipClass(),n.element.removeAttribute("aria-describedby"),g(n.element).trigger(n.constructor.Event.HIDDEN),null!==n._popper&&n._popper.destroy(),t&&t()}var n=this,i=this.getTipElement(),o=g.Event(this.constructor.Event.HIDE);if(g(this.element).trigger(o),!o.isDefaultPrevented()){if(g(i).removeClass(Me),"ontouchstart"in document.documentElement&&g(document.body).children().off("mouseover",null,g.noop),this._activeTrigger[Ye]=!1,this._activeTrigger[Ve]=!1,this._activeTrigger[Be]=!1,g(this.tip).hasClass(qe)){var r=_.getTransitionDurationFromElement(i);g(i).one(_.TRANSITION_END,e).emulateTransitionEnd(r)}else e();this._hoverState=""}},t.update=function(){null!==this._popper&&this._popper.scheduleUpdate()},t.isWithContent=function(){return Boolean(this.getTitle())},t.addAttachmentClass=function(t){g(this.getTipElement()).addClass(Pe+"-"+t)},t.getTipElement=function(){return this.tip=this.tip||g(this.config.template)[0],this.tip},t.setContent=function(){var t=this.getTipElement();this.setElementContent(g(t.querySelectorAll(Ke)),this.getTitle()),g(t).removeClass(qe+" "+Me)},t.setElementContent=function(t,e){"object"!=typeof e||!e.nodeType&&!e.jquery?this.config.html?(this.config.sanitize&&(e=we(e,this.config.whiteList,this.config.sanitizeFn)),t.html(e)):t.text(e):this.config.html?g(e).parent().is(t)||t.empty().append(e):t.text(g(e).text())},t.getTitle=function(){var t=this.element.getAttribute("data-original-title");return t=t||("function"==typeof this.config.title?this.config.title.call(this.element):this.config.title)},t._getPopperConfig=function(t){var e=this;return l({},{placement:t,modifiers:{offset:this._getOffset(),flip:{behavior:this.config.fallbackPlacement},arrow:{element:Qe},preventOverflow:{boundariesElement:this.config.boundary}},onCreate:function(t){t.originalPlacement!==t.placement&&e._handlePopperPlacementChange(t)},onUpdate:function(t){return e._handlePopperPlacementChange(t)}},{},this.config.popperConfig)},t._getOffset=function(){var e=this,t={};return"function"==typeof this.config.offset?t.fn=function(t){return t.offsets=l({},t.offsets,{},e.config.offset(t.offsets,e.element)||{}),t}:t.offset=this.config.offset,t},t._getContainer=function(){return!1===this.config.container?document.body:_.isElement(this.config.container)?g(this.config.container):g(document).find(this.config.container)},t._getAttachment=function(t){return Re[t.toUpperCase()]},t._setListeners=function(){var i=this;this.config.trigger.split(" ").forEach(function(t){if("click"===t)g(i.element).on(i.constructor.Event.CLICK,i.config.selector,function(t){return i.toggle(t)});else if(t!==ze){var e=t===Be?i.constructor.Event.MOUSEENTER:i.constructor.Event.FOCUSIN,n=t===Be?i.constructor.Event.MOUSELEAVE:i.constructor.Event.FOCUSOUT;g(i.element).on(e,i.config.selector,function(t){return i._enter(t)}).on(n,i.config.selector,function(t){return i._leave(t)})}}),this._hideModalHandler=function(){i.element&&i.hide()},g(this.element).closest(".modal").on("hide.bs.modal",this._hideModalHandler),this.config.selector?this.config=l({},this.config,{trigger:"manual",selector:""}):this._fixTitle()},t._fixTitle=function(){var t=typeof this.element.getAttribute("data-original-title");!this.element.getAttribute("title")&&"string"==t||(this.element.setAttribute("data-original-title",this.element.getAttribute("title")||""),this.element.setAttribute("title",""))},t._enter=function(t,e){var n=this.constructor.DATA_KEY;(e=e||g(t.currentTarget).data(n))||(e=new this.constructor(t.currentTarget,this._getDelegateConfig()),g(t.currentTarget).data(n,e)),t&&(e._activeTrigger["focusin"===t.type?Ve:Be]=!0),g(e.getTipElement()).hasClass(Me)||e._hoverState===Fe?e._hoverState=Fe:(clearTimeout(e._timeout),e._hoverState=Fe,e.config.delay&&e.config.delay.show?e._timeout=setTimeout(function(){e._hoverState===Fe&&e.show()},e.config.delay.show):e.show())},t._leave=function(t,e){var n=this.constructor.DATA_KEY;(e=e||g(t.currentTarget).data(n))||(e=new this.constructor(t.currentTarget,this._getDelegateConfig()),g(t.currentTarget).data(n,e)),t&&(e._activeTrigger["focusout"===t.type?Ve:Be]=!1),e._isWithActiveTrigger()||(clearTimeout(e._timeout),e._hoverState=Ue,e.config.delay&&e.config.delay.hide?e._timeout=setTimeout(function(){e._hoverState===Ue&&e.hide()},e.config.delay.hide):e.hide())},t._isWithActiveTrigger=function(){for(var t in this._activeTrigger)if(this._activeTrigger[t])return!0;return!1},t._getConfig=function(t){var e=g(this.element).data();return Object.keys(e).forEach(function(t){-1!==je.indexOf(t)&&delete e[t]}),"number"==typeof(t=l({},this.constructor.Default,{},e,{},"object"==typeof t&&t?t:{})).delay&&(t.delay={show:t.delay,hide:t.delay}),"number"==typeof t.title&&(t.title=t.title.toString()),"number"==typeof t.content&&(t.content=t.content.toString()),_.typeCheckConfig(Ae,t,this.constructor.DefaultType),t.sanitize&&(t.template=we(t.template,t.whiteList,t.sanitizeFn)),t},t._getDelegateConfig=function(){var t={};if(this.config)for(var e in this.config)this.constructor.Default[e]!==this.config[e]&&(t[e]=this.config[e]);return t},t._cleanTipClass=function(){var t=g(this.getTipElement()),e=t.attr("class").match(Le);null!==e&&e.length&&t.removeClass(e.join(""))},t._handlePopperPlacementChange=function(t){var e=t.instance;this.tip=e.popper,this._cleanTipClass(),this.addAttachmentClass(this._getAttachment(t.placement))},t._fixTransition=function(){var t=this.getTipElement(),e=this.config.animation;null===t.getAttribute("x-placement")&&(g(t).removeClass(qe),this.config.animation=!1,this.hide(),this.show(),this.config.animation=e)},i._jQueryInterface=function(n){return this.each(function(){var t=g(this).data(Ne),e="object"==typeof n&&n;if((t||!/dispose|hide/.test(n))&&(t||(t=new i(this,e),g(this).data(Ne,t)),"string"==typeof n)){if("undefined"==typeof t[n])throw new TypeError('No method named "'+n+'"');t[n]()}})},s(i,null,[{key:"VERSION",get:function(){return"4.4.1"}},{key:"Default",get:function(){return xe}},{key:"NAME",get:function(){return Ae}},{key:"DATA_KEY",get:function(){return Ne}},{key:"Event",get:function(){return We}},{key:"EVENT_KEY",get:function(){return Oe}},{key:"DefaultType",get:function(){return He}}]),i}();g.fn[Ae]=Xe._jQueryInterface,g.fn[Ae].Constructor=Xe,g.fn[Ae].noConflict=function(){return g.fn[Ae]=ke,Xe._jQueryInterface};var $e="popover",Ge="bs.popover",Je="."+Ge,Ze=g.fn[$e],tn="bs-popover",en=new RegExp("(^|\\s)"+tn+"\\S+","g"),nn=l({},Xe.Default,{placement:"right",trigger:"click",content:"",template:''}),on=l({},Xe.DefaultType,{content:"(string|element|function)"}),rn="fade",sn="show",an=".popover-header",ln=".popover-body",cn={HIDE:"hide"+Je,HIDDEN:"hidden"+Je,SHOW:"show"+Je,SHOWN:"shown"+Je,INSERTED:"inserted"+Je,CLICK:"click"+Je,FOCUSIN:"focusin"+Je,FOCUSOUT:"focusout"+Je,MOUSEENTER:"mouseenter"+Je,MOUSELEAVE:"mouseleave"+Je},hn=function(t){function i(){return t.apply(this,arguments)||this}!function(t,e){t.prototype=Object.create(e.prototype),(t.prototype.constructor=t).__proto__=e}(i,t);var e=i.prototype;return e.isWithContent=function(){return this.getTitle()||this._getContent()},e.addAttachmentClass=function(t){g(this.getTipElement()).addClass(tn+"-"+t)},e.getTipElement=function(){return this.tip=this.tip||g(this.config.template)[0],this.tip},e.setContent=function(){var t=g(this.getTipElement());this.setElementContent(t.find(an),this.getTitle());var e=this._getContent();"function"==typeof e&&(e=e.call(this.element)),this.setElementContent(t.find(ln),e),t.removeClass(rn+" "+sn)},e._getContent=function(){return this.element.getAttribute("data-content")||this.config.content},e._cleanTipClass=function(){var t=g(this.getTipElement()),e=t.attr("class").match(en);null!==e&&0=this._offsets[o]&&("undefined"==typeof this._offsets[o+1]||t 0) { - throw new Error('Invalid string. Length must be a multiple of 4'); - } - - // Trim off extra bytes after placeholder bytes are found - // See: https://github.com/beatgammit/base64-js/issues/42 - var validLen = b64.indexOf('='); - if (validLen === -1) validLen = len; - - var placeHoldersLen = validLen === len ? 0 : 4 - (validLen % 4); - - return [validLen, placeHoldersLen]; - } - - // base64 is 4/3 + up to two characters of the original data - function byteLength(b64) { - var lens = getLens(b64); - var validLen = lens[0]; - var placeHoldersLen = lens[1]; - return ((validLen + placeHoldersLen) * 3) / 4 - placeHoldersLen; - } - - function _byteLength(b64, validLen, placeHoldersLen) { - return ((validLen + placeHoldersLen) * 3) / 4 - placeHoldersLen; - } - - function toByteArray(b64) { - var tmp; - var lens = getLens(b64); - var validLen = lens[0]; - var placeHoldersLen = lens[1]; - - var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen)); - - var curByte = 0; - - // if there are placeholders, only get up to the last complete 4 chars - var len = placeHoldersLen > 0 ? validLen - 4 : validLen; - - var i; - for (i = 0; i < len; i += 4) { - tmp = - (revLookup[b64.charCodeAt(i)] << 18) | - (revLookup[b64.charCodeAt(i + 1)] << 12) | - (revLookup[b64.charCodeAt(i + 2)] << 6) | - revLookup[b64.charCodeAt(i + 3)]; - arr[curByte++] = (tmp >> 16) & 0xff; - arr[curByte++] = (tmp >> 8) & 0xff; - arr[curByte++] = tmp & 0xff; - } - - if (placeHoldersLen === 2) { - tmp = - (revLookup[b64.charCodeAt(i)] << 2) | - (revLookup[b64.charCodeAt(i + 1)] >> 4); - arr[curByte++] = tmp & 0xff; - } - - if (placeHoldersLen === 1) { - tmp = - (revLookup[b64.charCodeAt(i)] << 10) | - (revLookup[b64.charCodeAt(i + 1)] << 4) | - (revLookup[b64.charCodeAt(i + 2)] >> 2); - arr[curByte++] = (tmp >> 8) & 0xff; - arr[curByte++] = tmp & 0xff; - } - - return arr; - } - - function tripletToBase64(num) { - return ( - lookup[(num >> 18) & 0x3f] + - lookup[(num >> 12) & 0x3f] + - lookup[(num >> 6) & 0x3f] + - lookup[num & 0x3f] - ); - } - - function encodeChunk(uint8, start, end) { - var tmp; - var output = []; - for (var i = start; i < end; i += 3) { - tmp = - ((uint8[i] << 16) & 0xff0000) + - ((uint8[i + 1] << 8) & 0xff00) + - (uint8[i + 2] & 0xff); - output.push(tripletToBase64(tmp)); - } - return output.join(''); - } - - function fromByteArray(uint8) { - var tmp; - var len = uint8.length; - var extraBytes = len % 3; // if we have 1 byte left, pad 2 bytes - var parts = []; - var maxChunkLength = 16383; // must be multiple of 3 - - // go through the array every three bytes, we'll deal with trailing stuff later - for ( - var i = 0, len2 = len - extraBytes; - i < len2; - i += maxChunkLength - ) { - parts.push( - encodeChunk( - uint8, - i, - i + maxChunkLength > len2 ? len2 : i + maxChunkLength, - ), - ); - } - - // pad the end with zeros, but make sure to not forget the extra bytes - if (extraBytes === 1) { - tmp = uint8[len - 1]; - parts.push(lookup[tmp >> 2] + lookup[(tmp << 4) & 0x3f] + '=='); - } else if (extraBytes === 2) { - tmp = (uint8[len - 2] << 8) + uint8[len - 1]; - parts.push( - lookup[tmp >> 10] + - lookup[(tmp >> 4) & 0x3f] + - lookup[(tmp << 2) & 0x3f] + - '=', - ); - } - - return parts.join(''); - } - }, - {}, - ], - 2: [function (require, module, exports) {}, {}], - 3: [ - function (require, module, exports) { - (function (Buffer) { - (function () { - /*! +(function(){function e(t,u,r){function $(i,s){if(!u[i]){if(!t[i]){var o="function"==typeof require&&require;if(!s&&o)return o(i,!0);if(n)return n(i,!0);var a=Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var c=u[i]={exports:{}};t[i][0].call(c.exports,function(e){return $(t[i][1][e]||e)},c,c.exports,e,t,u,r)}return u[i].exports}for(var n="function"==typeof require&&require,i=0;i0?l-4:l;for(r=0;r>16&255,d[_++]=u>>8&255,d[_++]=255&u;return 2===f&&(u=$[t.charCodeAt(r)]<<2|$[t.charCodeAt(r+1)]>>4,d[_++]=255&u),1===f&&(u=$[t.charCodeAt(r)]<<10|$[t.charCodeAt(r+1)]<<4|$[t.charCodeAt(r+2)]>>2,d[_++]=u>>8&255,d[_++]=255&u),d},u.fromByteArray=function e(t){for(var u,$=t.length,n=$%3,i=[],s=0,o=$-n;so?o:s+16383));return 1===n?i.push(r[(u=t[$-1])>>2]+r[u<<4&63]+"=="):2===n&&i.push(r[(u=(t[$-2]<<8)+t[$-1])>>10]+r[u>>4&63]+r[u<<2&63]+"="),i.join("")};for(var r=[],$=[],n="undefined"!=typeof Uint8Array?Uint8Array:Array,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,o=i.length;s0)throw Error("Invalid string. Length must be a multiple of 4");var u=e.indexOf("=");-1===u&&(u=t);var r=u===t?0:4-u%4;return[u,r]}function c(e){return r[e>>18&63]+r[e>>12&63]+r[e>>6&63]+r[63&e]}function l(e,t,u){for(var r,$=[],n=t;n * @license MIT - */ - /* eslint-disable no-proto */ - - 'use strict'; - - var base64 = require('base64-js'); - var ieee754 = require('ieee754'); - - exports.Buffer = Buffer; - exports.SlowBuffer = SlowBuffer; - exports.INSPECT_MAX_BYTES = 50; - - var K_MAX_LENGTH = 0x7fffffff; - exports.kMaxLength = K_MAX_LENGTH; - - /** - * If `Buffer.TYPED_ARRAY_SUPPORT`: - * === true Use Uint8Array implementation (fastest) - * === false Print warning and recommend using `buffer` v4.x which has an Object - * implementation (most compatible, even IE6) - * - * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+, - * Opera 11.6+, iOS 4.2+. - * - * We report that the browser does not support typed arrays if the are not subclassable - * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array` - * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support - * for __proto__ and has a buggy typed array implementation. - */ - Buffer.TYPED_ARRAY_SUPPORT = typedArraySupport(); - - if ( - !Buffer.TYPED_ARRAY_SUPPORT && - typeof console !== 'undefined' && - typeof console.error === 'function' - ) { - console.error( - 'This browser lacks typed array (Uint8Array) support which is required by ' + - '`buffer` v5.x. Use `buffer` v4.x if you require old browser support.', - ); - } - - function typedArraySupport() { - // Can typed array instances can be augmented? - try { - var arr = new Uint8Array(1); - arr.__proto__ = { - __proto__: Uint8Array.prototype, - foo: function () { - return 42; - }, - }; - return arr.foo() === 42; - } catch (e) { - return false; - } - } - - Object.defineProperty(Buffer.prototype, 'parent', { - enumerable: true, - get: function () { - if (!Buffer.isBuffer(this)) return undefined; - return this.buffer; - }, - }); - - Object.defineProperty(Buffer.prototype, 'offset', { - enumerable: true, - get: function () { - if (!Buffer.isBuffer(this)) return undefined; - return this.byteOffset; - }, - }); - - function createBuffer(length) { - if (length > K_MAX_LENGTH) { - throw new RangeError( - 'The value "' + length + '" is invalid for option "size"', - ); - } - // Return an augmented `Uint8Array` instance - var buf = new Uint8Array(length); - buf.__proto__ = Buffer.prototype; - return buf; - } - - /** - * The Buffer constructor returns instances of `Uint8Array` that have their - * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of - * `Uint8Array`, so the returned instances will have all the node `Buffer` methods - * and the `Uint8Array` methods. Square bracket notation works as expected -- it - * returns a single octet. - * - * The `Uint8Array` prototype remains unmodified. - */ - - function Buffer(arg, encodingOrOffset, length) { - // Common case. - if (typeof arg === 'number') { - if (typeof encodingOrOffset === 'string') { - throw new TypeError( - 'The "string" argument must be of type string. Received type number', - ); - } - return allocUnsafe(arg); - } - return from(arg, encodingOrOffset, length); - } - - // Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97 - if ( - typeof Symbol !== 'undefined' && - Symbol.species != null && - Buffer[Symbol.species] === Buffer - ) { - Object.defineProperty(Buffer, Symbol.species, { - value: null, - configurable: true, - enumerable: false, - writable: false, - }); - } - - Buffer.poolSize = 8192; // not used by this implementation - - function from(value, encodingOrOffset, length) { - if (typeof value === 'string') { - return fromString(value, encodingOrOffset); - } - - if (ArrayBuffer.isView(value)) { - return fromArrayLike(value); - } - - if (value == null) { - throw TypeError( - 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' + - 'or Array-like Object. Received type ' + - typeof value, - ); - } - - if ( - isInstance(value, ArrayBuffer) || - (value && isInstance(value.buffer, ArrayBuffer)) - ) { - return fromArrayBuffer(value, encodingOrOffset, length); - } - - if (typeof value === 'number') { - throw new TypeError( - 'The "value" argument must not be of type number. Received type number', - ); - } - - var valueOf = value.valueOf && value.valueOf(); - if (valueOf != null && valueOf !== value) { - return Buffer.from(valueOf, encodingOrOffset, length); - } - - var b = fromObject(value); - if (b) return b; - - if ( - typeof Symbol !== 'undefined' && - Symbol.toPrimitive != null && - typeof value[Symbol.toPrimitive] === 'function' - ) { - return Buffer.from( - value[Symbol.toPrimitive]('string'), - encodingOrOffset, - length, - ); - } - - throw new TypeError( - 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' + - 'or Array-like Object. Received type ' + - typeof value, - ); - } - - /** - * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError - * if value is a number. - * Buffer.from(str[, encoding]) - * Buffer.from(array) - * Buffer.from(buffer) - * Buffer.from(arrayBuffer[, byteOffset[, length]]) - **/ - Buffer.from = function (value, encodingOrOffset, length) { - return from(value, encodingOrOffset, length); - }; - - // Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug: - // https://github.com/feross/buffer/pull/148 - Buffer.prototype.__proto__ = Uint8Array.prototype; - Buffer.__proto__ = Uint8Array; - - function assertSize(size) { - if (typeof size !== 'number') { - throw new TypeError('"size" argument must be of type number'); - } else if (size < 0) { - throw new RangeError( - 'The value "' + size + '" is invalid for option "size"', - ); - } - } - - function alloc(size, fill, encoding) { - assertSize(size); - if (size <= 0) { - return createBuffer(size); - } - if (fill !== undefined) { - // Only pay attention to encoding if it's a string. This - // prevents accidentally sending in a number that would - // be interpretted as a start offset. - return typeof encoding === 'string' - ? createBuffer(size).fill(fill, encoding) - : createBuffer(size).fill(fill); - } - return createBuffer(size); - } - - /** - * Creates a new filled Buffer instance. - * alloc(size[, fill[, encoding]]) - **/ - Buffer.alloc = function (size, fill, encoding) { - return alloc(size, fill, encoding); - }; - - function allocUnsafe(size) { - assertSize(size); - return createBuffer(size < 0 ? 0 : checked(size) | 0); - } - - /** - * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance. - * */ - Buffer.allocUnsafe = function (size) { - return allocUnsafe(size); - }; - /** - * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance. - */ - Buffer.allocUnsafeSlow = function (size) { - return allocUnsafe(size); - }; - - function fromString(string, encoding) { - if (typeof encoding !== 'string' || encoding === '') { - encoding = 'utf8'; - } - - if (!Buffer.isEncoding(encoding)) { - throw new TypeError('Unknown encoding: ' + encoding); - } - - var length = byteLength(string, encoding) | 0; - var buf = createBuffer(length); - - var actual = buf.write(string, encoding); - - if (actual !== length) { - // Writing a hex string, for example, that contains invalid characters will - // cause everything after the first invalid character to be ignored. (e.g. - // 'abxxcd' will be treated as 'ab') - buf = buf.slice(0, actual); - } - - return buf; - } - - function fromArrayLike(array) { - var length = array.length < 0 ? 0 : checked(array.length) | 0; - var buf = createBuffer(length); - for (var i = 0; i < length; i += 1) { - buf[i] = array[i] & 255; - } - return buf; - } - - function fromArrayBuffer(array, byteOffset, length) { - if (byteOffset < 0 || array.byteLength < byteOffset) { - throw new RangeError('"offset" is outside of buffer bounds'); - } - - if (array.byteLength < byteOffset + (length || 0)) { - throw new RangeError('"length" is outside of buffer bounds'); - } - - var buf; - if (byteOffset === undefined && length === undefined) { - buf = new Uint8Array(array); - } else if (length === undefined) { - buf = new Uint8Array(array, byteOffset); - } else { - buf = new Uint8Array(array, byteOffset, length); - } - - // Return an augmented `Uint8Array` instance - buf.__proto__ = Buffer.prototype; - return buf; - } - - function fromObject(obj) { - if (Buffer.isBuffer(obj)) { - var len = checked(obj.length) | 0; - var buf = createBuffer(len); - - if (buf.length === 0) { - return buf; - } - - obj.copy(buf, 0, 0, len); - return buf; - } - - if (obj.length !== undefined) { - if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) { - return createBuffer(0); - } - return fromArrayLike(obj); - } - - if (obj.type === 'Buffer' && Array.isArray(obj.data)) { - return fromArrayLike(obj.data); - } - } - - function checked(length) { - // Note: cannot use `length < K_MAX_LENGTH` here because that fails when - // length is NaN (which is otherwise coerced to zero.) - if (length >= K_MAX_LENGTH) { - throw new RangeError( - 'Attempt to allocate Buffer larger than maximum ' + - 'size: 0x' + - K_MAX_LENGTH.toString(16) + - ' bytes', - ); - } - return length | 0; - } - - function SlowBuffer(length) { - if (+length != length) { - // eslint-disable-line eqeqeq - length = 0; - } - return Buffer.alloc(+length); - } - - Buffer.isBuffer = function isBuffer(b) { - return ( - b != null && b._isBuffer === true && b !== Buffer.prototype - ); // so Buffer.isBuffer(Buffer.prototype) will be false - }; - - Buffer.compare = function compare(a, b) { - if (isInstance(a, Uint8Array)) - a = Buffer.from(a, a.offset, a.byteLength); - if (isInstance(b, Uint8Array)) - b = Buffer.from(b, b.offset, b.byteLength); - if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) { - throw new TypeError( - 'The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array', - ); - } - - if (a === b) return 0; - - var x = a.length; - var y = b.length; - - for (var i = 0, len = Math.min(x, y); i < len; ++i) { - if (a[i] !== b[i]) { - x = a[i]; - y = b[i]; - break; - } - } - - if (x < y) return -1; - if (y < x) return 1; - return 0; - }; - - Buffer.isEncoding = function isEncoding(encoding) { - switch (String(encoding).toLowerCase()) { - case 'hex': - case 'utf8': - case 'utf-8': - case 'ascii': - case 'latin1': - case 'binary': - case 'base64': - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return true; - default: - return false; - } - }; - - Buffer.concat = function concat(list, length) { - if (!Array.isArray(list)) { - throw new TypeError( - '"list" argument must be an Array of Buffers', - ); - } - - if (list.length === 0) { - return Buffer.alloc(0); - } - - var i; - if (length === undefined) { - length = 0; - for (i = 0; i < list.length; ++i) { - length += list[i].length; - } - } - - var buffer = Buffer.allocUnsafe(length); - var pos = 0; - for (i = 0; i < list.length; ++i) { - var buf = list[i]; - if (isInstance(buf, Uint8Array)) { - buf = Buffer.from(buf); - } - if (!Buffer.isBuffer(buf)) { - throw new TypeError( - '"list" argument must be an Array of Buffers', - ); - } - buf.copy(buffer, pos); - pos += buf.length; - } - return buffer; - }; - - function byteLength(string, encoding) { - if (Buffer.isBuffer(string)) { - return string.length; - } - if ( - ArrayBuffer.isView(string) || - isInstance(string, ArrayBuffer) - ) { - return string.byteLength; - } - if (typeof string !== 'string') { - throw new TypeError( - 'The "string" argument must be one of type string, Buffer, or ArrayBuffer. ' + - 'Received type ' + - typeof string, - ); - } - - var len = string.length; - var mustMatch = arguments.length > 2 && arguments[2] === true; - if (!mustMatch && len === 0) return 0; - - // Use a for loop to avoid recursion - var loweredCase = false; - for (;;) { - switch (encoding) { - case 'ascii': - case 'latin1': - case 'binary': - return len; - case 'utf8': - case 'utf-8': - return utf8ToBytes(string).length; - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return len * 2; - case 'hex': - return len >>> 1; - case 'base64': - return base64ToBytes(string).length; - default: - if (loweredCase) { - return mustMatch ? -1 : utf8ToBytes(string).length; // assume utf8 - } - encoding = ('' + encoding).toLowerCase(); - loweredCase = true; - } - } - } - Buffer.byteLength = byteLength; - - function slowToString(encoding, start, end) { - var loweredCase = false; - - // No need to verify that "this.length <= MAX_UINT32" since it's a read-only - // property of a typed array. - - // This behaves neither like String nor Uint8Array in that we set start/end - // to their upper/lower bounds if the value passed is out of range. - // undefined is handled specially as per ECMA-262 6th Edition, - // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization. - if (start === undefined || start < 0) { - start = 0; - } - // Return early if start > this.length. Done here to prevent potential uint32 - // coercion fail below. - if (start > this.length) { - return ''; - } - - if (end === undefined || end > this.length) { - end = this.length; - } - - if (end <= 0) { - return ''; - } - - // Force coersion to uint32. This will also coerce falsey/NaN values to 0. - end >>>= 0; - start >>>= 0; - - if (end <= start) { - return ''; - } - - if (!encoding) encoding = 'utf8'; - - while (true) { - switch (encoding) { - case 'hex': - return hexSlice(this, start, end); - - case 'utf8': - case 'utf-8': - return utf8Slice(this, start, end); - - case 'ascii': - return asciiSlice(this, start, end); - - case 'latin1': - case 'binary': - return latin1Slice(this, start, end); - - case 'base64': - return base64Slice(this, start, end); - - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return utf16leSlice(this, start, end); - - default: - if (loweredCase) - throw new TypeError('Unknown encoding: ' + encoding); - encoding = (encoding + '').toLowerCase(); - loweredCase = true; - } - } - } - - // This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package) - // to detect a Buffer instance. It's not possible to use `instanceof Buffer` - // reliably in a browserify context because there could be multiple different - // copies of the 'buffer' package in use. This method works even for Buffer - // instances that were created from another copy of the `buffer` package. - // See: https://github.com/feross/buffer/issues/154 - Buffer.prototype._isBuffer = true; - - function swap(b, n, m) { - var i = b[n]; - b[n] = b[m]; - b[m] = i; - } - - Buffer.prototype.swap16 = function swap16() { - var len = this.length; - if (len % 2 !== 0) { - throw new RangeError( - 'Buffer size must be a multiple of 16-bits', - ); - } - for (var i = 0; i < len; i += 2) { - swap(this, i, i + 1); - } - return this; - }; - - Buffer.prototype.swap32 = function swap32() { - var len = this.length; - if (len % 4 !== 0) { - throw new RangeError( - 'Buffer size must be a multiple of 32-bits', - ); - } - for (var i = 0; i < len; i += 4) { - swap(this, i, i + 3); - swap(this, i + 1, i + 2); - } - return this; - }; - - Buffer.prototype.swap64 = function swap64() { - var len = this.length; - if (len % 8 !== 0) { - throw new RangeError( - 'Buffer size must be a multiple of 64-bits', - ); - } - for (var i = 0; i < len; i += 8) { - swap(this, i, i + 7); - swap(this, i + 1, i + 6); - swap(this, i + 2, i + 5); - swap(this, i + 3, i + 4); - } - return this; - }; - - Buffer.prototype.toString = function toString() { - var length = this.length; - if (length === 0) return ''; - if (arguments.length === 0) return utf8Slice(this, 0, length); - return slowToString.apply(this, arguments); - }; - - Buffer.prototype.toLocaleString = Buffer.prototype.toString; - - Buffer.prototype.equals = function equals(b) { - if (!Buffer.isBuffer(b)) - throw new TypeError('Argument must be a Buffer'); - if (this === b) return true; - return Buffer.compare(this, b) === 0; - }; - - Buffer.prototype.inspect = function inspect() { - var str = ''; - var max = exports.INSPECT_MAX_BYTES; - str = this.toString('hex', 0, max) - .replace(/(.{2})/g, '$1 ') - .trim(); - if (this.length > max) str += ' ... '; - return ''; - }; - - Buffer.prototype.compare = function compare( - target, - start, - end, - thisStart, - thisEnd, - ) { - if (isInstance(target, Uint8Array)) { - target = Buffer.from(target, target.offset, target.byteLength); - } - if (!Buffer.isBuffer(target)) { - throw new TypeError( - 'The "target" argument must be one of type Buffer or Uint8Array. ' + - 'Received type ' + - typeof target, - ); - } - - if (start === undefined) { - start = 0; - } - if (end === undefined) { - end = target ? target.length : 0; - } - if (thisStart === undefined) { - thisStart = 0; - } - if (thisEnd === undefined) { - thisEnd = this.length; - } - - if ( - start < 0 || - end > target.length || - thisStart < 0 || - thisEnd > this.length - ) { - throw new RangeError('out of range index'); - } - - if (thisStart >= thisEnd && start >= end) { - return 0; - } - if (thisStart >= thisEnd) { - return -1; - } - if (start >= end) { - return 1; - } - - start >>>= 0; - end >>>= 0; - thisStart >>>= 0; - thisEnd >>>= 0; - - if (this === target) return 0; - - var x = thisEnd - thisStart; - var y = end - start; - var len = Math.min(x, y); - - var thisCopy = this.slice(thisStart, thisEnd); - var targetCopy = target.slice(start, end); - - for (var i = 0; i < len; ++i) { - if (thisCopy[i] !== targetCopy[i]) { - x = thisCopy[i]; - y = targetCopy[i]; - break; - } - } - - if (x < y) return -1; - if (y < x) return 1; - return 0; - }; - - // Finds either the first index of `val` in `buffer` at offset >= `byteOffset`, - // OR the last index of `val` in `buffer` at offset <= `byteOffset`. - // - // Arguments: - // - buffer - a Buffer to search - // - val - a string, Buffer, or number - // - byteOffset - an index into `buffer`; will be clamped to an int32 - // - encoding - an optional encoding, relevant is val is a string - // - dir - true for indexOf, false for lastIndexOf - function bidirectionalIndexOf( - buffer, - val, - byteOffset, - encoding, - dir, - ) { - // Empty buffer means no match - if (buffer.length === 0) return -1; - - // Normalize byteOffset - if (typeof byteOffset === 'string') { - encoding = byteOffset; - byteOffset = 0; - } else if (byteOffset > 0x7fffffff) { - byteOffset = 0x7fffffff; - } else if (byteOffset < -0x80000000) { - byteOffset = -0x80000000; - } - byteOffset = +byteOffset; // Coerce to Number. - if (numberIsNaN(byteOffset)) { - // byteOffset: it it's undefined, null, NaN, "foo", etc, search whole buffer - byteOffset = dir ? 0 : buffer.length - 1; - } - - // Normalize byteOffset: negative offsets start from the end of the buffer - if (byteOffset < 0) byteOffset = buffer.length + byteOffset; - if (byteOffset >= buffer.length) { - if (dir) return -1; - else byteOffset = buffer.length - 1; - } else if (byteOffset < 0) { - if (dir) byteOffset = 0; - else return -1; - } - - // Normalize val - if (typeof val === 'string') { - val = Buffer.from(val, encoding); - } - - // Finally, search either indexOf (if dir is true) or lastIndexOf - if (Buffer.isBuffer(val)) { - // Special case: looking for empty string/buffer always fails - if (val.length === 0) { - return -1; - } - return arrayIndexOf(buffer, val, byteOffset, encoding, dir); - } else if (typeof val === 'number') { - val = val & 0xff; // Search for a byte value [0-255] - if (typeof Uint8Array.prototype.indexOf === 'function') { - if (dir) { - return Uint8Array.prototype.indexOf.call( - buffer, - val, - byteOffset, - ); - } else { - return Uint8Array.prototype.lastIndexOf.call( - buffer, - val, - byteOffset, - ); - } - } - return arrayIndexOf(buffer, [val], byteOffset, encoding, dir); - } - - throw new TypeError('val must be string, number or Buffer'); - } - - function arrayIndexOf(arr, val, byteOffset, encoding, dir) { - var indexSize = 1; - var arrLength = arr.length; - var valLength = val.length; - - if (encoding !== undefined) { - encoding = String(encoding).toLowerCase(); - if ( - encoding === 'ucs2' || - encoding === 'ucs-2' || - encoding === 'utf16le' || - encoding === 'utf-16le' - ) { - if (arr.length < 2 || val.length < 2) { - return -1; - } - indexSize = 2; - arrLength /= 2; - valLength /= 2; - byteOffset /= 2; - } - } - - function read(buf, i) { - if (indexSize === 1) { - return buf[i]; - } else { - return buf.readUInt16BE(i * indexSize); - } - } - - var i; - if (dir) { - var foundIndex = -1; - for (i = byteOffset; i < arrLength; i++) { - if ( - read(arr, i) === - read(val, foundIndex === -1 ? 0 : i - foundIndex) - ) { - if (foundIndex === -1) foundIndex = i; - if (i - foundIndex + 1 === valLength) - return foundIndex * indexSize; - } else { - if (foundIndex !== -1) i -= i - foundIndex; - foundIndex = -1; - } - } - } else { - if (byteOffset + valLength > arrLength) - byteOffset = arrLength - valLength; - for (i = byteOffset; i >= 0; i--) { - var found = true; - for (var j = 0; j < valLength; j++) { - if (read(arr, i + j) !== read(val, j)) { - found = false; - break; - } - } - if (found) return i; - } - } - - return -1; - } - - Buffer.prototype.includes = function includes( - val, - byteOffset, - encoding, - ) { - return this.indexOf(val, byteOffset, encoding) !== -1; - }; - - Buffer.prototype.indexOf = function indexOf( - val, - byteOffset, - encoding, - ) { - return bidirectionalIndexOf( - this, - val, - byteOffset, - encoding, - true, - ); - }; - - Buffer.prototype.lastIndexOf = function lastIndexOf( - val, - byteOffset, - encoding, - ) { - return bidirectionalIndexOf( - this, - val, - byteOffset, - encoding, - false, - ); - }; - - function hexWrite(buf, string, offset, length) { - offset = Number(offset) || 0; - var remaining = buf.length - offset; - if (!length) { - length = remaining; - } else { - length = Number(length); - if (length > remaining) { - length = remaining; - } - } - - var strLen = string.length; - - if (length > strLen / 2) { - length = strLen / 2; - } - for (var i = 0; i < length; ++i) { - var parsed = parseInt(string.substr(i * 2, 2), 16); - if (numberIsNaN(parsed)) return i; - buf[offset + i] = parsed; - } - return i; - } - - function utf8Write(buf, string, offset, length) { - return blitBuffer( - utf8ToBytes(string, buf.length - offset), - buf, - offset, - length, - ); - } - - function asciiWrite(buf, string, offset, length) { - return blitBuffer(asciiToBytes(string), buf, offset, length); - } - - function latin1Write(buf, string, offset, length) { - return asciiWrite(buf, string, offset, length); - } - - function base64Write(buf, string, offset, length) { - return blitBuffer(base64ToBytes(string), buf, offset, length); - } - - function ucs2Write(buf, string, offset, length) { - return blitBuffer( - utf16leToBytes(string, buf.length - offset), - buf, - offset, - length, - ); - } - - Buffer.prototype.write = function write( - string, - offset, - length, - encoding, - ) { - // Buffer#write(string) - if (offset === undefined) { - encoding = 'utf8'; - length = this.length; - offset = 0; - // Buffer#write(string, encoding) - } else if (length === undefined && typeof offset === 'string') { - encoding = offset; - length = this.length; - offset = 0; - // Buffer#write(string, offset[, length][, encoding]) - } else if (isFinite(offset)) { - offset = offset >>> 0; - if (isFinite(length)) { - length = length >>> 0; - if (encoding === undefined) encoding = 'utf8'; - } else { - encoding = length; - length = undefined; - } - } else { - throw new Error( - 'Buffer.write(string, encoding, offset[, length]) is no longer supported', - ); - } - - var remaining = this.length - offset; - if (length === undefined || length > remaining) - length = remaining; - - if ( - (string.length > 0 && (length < 0 || offset < 0)) || - offset > this.length - ) { - throw new RangeError('Attempt to write outside buffer bounds'); - } - - if (!encoding) encoding = 'utf8'; - - var loweredCase = false; - for (;;) { - switch (encoding) { - case 'hex': - return hexWrite(this, string, offset, length); - - case 'utf8': - case 'utf-8': - return utf8Write(this, string, offset, length); - - case 'ascii': - return asciiWrite(this, string, offset, length); - - case 'latin1': - case 'binary': - return latin1Write(this, string, offset, length); - - case 'base64': - // Warning: maxLength not taken into account in base64Write - return base64Write(this, string, offset, length); - - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return ucs2Write(this, string, offset, length); - - default: - if (loweredCase) - throw new TypeError('Unknown encoding: ' + encoding); - encoding = ('' + encoding).toLowerCase(); - loweredCase = true; - } - } - }; - - Buffer.prototype.toJSON = function toJSON() { - return { - type: 'Buffer', - data: Array.prototype.slice.call(this._arr || this, 0), - }; - }; - - function base64Slice(buf, start, end) { - if (start === 0 && end === buf.length) { - return base64.fromByteArray(buf); - } else { - return base64.fromByteArray(buf.slice(start, end)); - } - } - - function utf8Slice(buf, start, end) { - end = Math.min(buf.length, end); - var res = []; - - var i = start; - while (i < end) { - var firstByte = buf[i]; - var codePoint = null; - var bytesPerSequence = - firstByte > 0xef - ? 4 - : firstByte > 0xdf - ? 3 - : firstByte > 0xbf - ? 2 - : 1; - - if (i + bytesPerSequence <= end) { - var secondByte, thirdByte, fourthByte, tempCodePoint; - - switch (bytesPerSequence) { - case 1: - if (firstByte < 0x80) { - codePoint = firstByte; - } - break; - case 2: - secondByte = buf[i + 1]; - if ((secondByte & 0xc0) === 0x80) { - tempCodePoint = - ((firstByte & 0x1f) << 0x6) | (secondByte & 0x3f); - if (tempCodePoint > 0x7f) { - codePoint = tempCodePoint; - } - } - break; - case 3: - secondByte = buf[i + 1]; - thirdByte = buf[i + 2]; - if ( - (secondByte & 0xc0) === 0x80 && - (thirdByte & 0xc0) === 0x80 - ) { - tempCodePoint = - ((firstByte & 0xf) << 0xc) | - ((secondByte & 0x3f) << 0x6) | - (thirdByte & 0x3f); - if ( - tempCodePoint > 0x7ff && - (tempCodePoint < 0xd800 || tempCodePoint > 0xdfff) - ) { - codePoint = tempCodePoint; - } - } - break; - case 4: - secondByte = buf[i + 1]; - thirdByte = buf[i + 2]; - fourthByte = buf[i + 3]; - if ( - (secondByte & 0xc0) === 0x80 && - (thirdByte & 0xc0) === 0x80 && - (fourthByte & 0xc0) === 0x80 - ) { - tempCodePoint = - ((firstByte & 0xf) << 0x12) | - ((secondByte & 0x3f) << 0xc) | - ((thirdByte & 0x3f) << 0x6) | - (fourthByte & 0x3f); - if ( - tempCodePoint > 0xffff && - tempCodePoint < 0x110000 - ) { - codePoint = tempCodePoint; - } - } - } - } - - if (codePoint === null) { - // we did not generate a valid codePoint so insert a - // replacement char (U+FFFD) and advance only 1 byte - codePoint = 0xfffd; - bytesPerSequence = 1; - } else if (codePoint > 0xffff) { - // encode to utf16 (surrogate pair dance) - codePoint -= 0x10000; - res.push(((codePoint >>> 10) & 0x3ff) | 0xd800); - codePoint = 0xdc00 | (codePoint & 0x3ff); - } - - res.push(codePoint); - i += bytesPerSequence; - } - - return decodeCodePointsArray(res); - } - - // Based on http://stackoverflow.com/a/22747272/680742, the browser with - // the lowest limit is Chrome, with 0x10000 args. - // We go 1 magnitude less, for safety - var MAX_ARGUMENTS_LENGTH = 0x1000; - - function decodeCodePointsArray(codePoints) { - var len = codePoints.length; - if (len <= MAX_ARGUMENTS_LENGTH) { - return String.fromCharCode.apply(String, codePoints); // avoid extra slice() - } - - // Decode in chunks to avoid "call stack size exceeded". - var res = ''; - var i = 0; - while (i < len) { - res += String.fromCharCode.apply( - String, - codePoints.slice(i, (i += MAX_ARGUMENTS_LENGTH)), - ); - } - return res; - } - - function asciiSlice(buf, start, end) { - var ret = ''; - end = Math.min(buf.length, end); - - for (var i = start; i < end; ++i) { - ret += String.fromCharCode(buf[i] & 0x7f); - } - return ret; - } - - function latin1Slice(buf, start, end) { - var ret = ''; - end = Math.min(buf.length, end); - - for (var i = start; i < end; ++i) { - ret += String.fromCharCode(buf[i]); - } - return ret; - } - - function hexSlice(buf, start, end) { - var len = buf.length; - - if (!start || start < 0) start = 0; - if (!end || end < 0 || end > len) end = len; - - var out = ''; - for (var i = start; i < end; ++i) { - out += toHex(buf[i]); - } - return out; - } - - function utf16leSlice(buf, start, end) { - var bytes = buf.slice(start, end); - var res = ''; - for (var i = 0; i < bytes.length; i += 2) { - res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256); - } - return res; - } - - Buffer.prototype.slice = function slice(start, end) { - var len = this.length; - start = ~~start; - end = end === undefined ? len : ~~end; - - if (start < 0) { - start += len; - if (start < 0) start = 0; - } else if (start > len) { - start = len; - } - - if (end < 0) { - end += len; - if (end < 0) end = 0; - } else if (end > len) { - end = len; - } - - if (end < start) end = start; - - var newBuf = this.subarray(start, end); - // Return an augmented `Uint8Array` instance - newBuf.__proto__ = Buffer.prototype; - return newBuf; - }; - - /* - * Need to make sure that buffer isn't trying to write out of bounds. - */ - function checkOffset(offset, ext, length) { - if (offset % 1 !== 0 || offset < 0) - throw new RangeError('offset is not uint'); - if (offset + ext > length) - throw new RangeError('Trying to access beyond buffer length'); - } - - Buffer.prototype.readUIntLE = function readUIntLE( - offset, - byteLength, - noAssert, - ) { - offset = offset >>> 0; - byteLength = byteLength >>> 0; - if (!noAssert) checkOffset(offset, byteLength, this.length); - - var val = this[offset]; - var mul = 1; - var i = 0; - while (++i < byteLength && (mul *= 0x100)) { - val += this[offset + i] * mul; - } - - return val; - }; - - Buffer.prototype.readUIntBE = function readUIntBE( - offset, - byteLength, - noAssert, - ) { - offset = offset >>> 0; - byteLength = byteLength >>> 0; - if (!noAssert) { - checkOffset(offset, byteLength, this.length); - } - - var val = this[offset + --byteLength]; - var mul = 1; - while (byteLength > 0 && (mul *= 0x100)) { - val += this[offset + --byteLength] * mul; - } - - return val; - }; - - Buffer.prototype.readUInt8 = function readUInt8(offset, noAssert) { - offset = offset >>> 0; - if (!noAssert) checkOffset(offset, 1, this.length); - return this[offset]; - }; - - Buffer.prototype.readUInt16LE = function readUInt16LE( - offset, - noAssert, - ) { - offset = offset >>> 0; - if (!noAssert) checkOffset(offset, 2, this.length); - return this[offset] | (this[offset + 1] << 8); - }; - - Buffer.prototype.readUInt16BE = function readUInt16BE( - offset, - noAssert, - ) { - offset = offset >>> 0; - if (!noAssert) checkOffset(offset, 2, this.length); - return (this[offset] << 8) | this[offset + 1]; - }; - - Buffer.prototype.readUInt32LE = function readUInt32LE( - offset, - noAssert, - ) { - offset = offset >>> 0; - if (!noAssert) checkOffset(offset, 4, this.length); - - return ( - (this[offset] | - (this[offset + 1] << 8) | - (this[offset + 2] << 16)) + - this[offset + 3] * 0x1000000 - ); - }; - - Buffer.prototype.readUInt32BE = function readUInt32BE( - offset, - noAssert, - ) { - offset = offset >>> 0; - if (!noAssert) checkOffset(offset, 4, this.length); - - return ( - this[offset] * 0x1000000 + - ((this[offset + 1] << 16) | - (this[offset + 2] << 8) | - this[offset + 3]) - ); - }; - - Buffer.prototype.readIntLE = function readIntLE( - offset, - byteLength, - noAssert, - ) { - offset = offset >>> 0; - byteLength = byteLength >>> 0; - if (!noAssert) checkOffset(offset, byteLength, this.length); - - var val = this[offset]; - var mul = 1; - var i = 0; - while (++i < byteLength && (mul *= 0x100)) { - val += this[offset + i] * mul; - } - mul *= 0x80; - - if (val >= mul) val -= Math.pow(2, 8 * byteLength); - - return val; - }; - - Buffer.prototype.readIntBE = function readIntBE( - offset, - byteLength, - noAssert, - ) { - offset = offset >>> 0; - byteLength = byteLength >>> 0; - if (!noAssert) checkOffset(offset, byteLength, this.length); - - var i = byteLength; - var mul = 1; - var val = this[offset + --i]; - while (i > 0 && (mul *= 0x100)) { - val += this[offset + --i] * mul; - } - mul *= 0x80; - - if (val >= mul) val -= Math.pow(2, 8 * byteLength); - - return val; - }; - - Buffer.prototype.readInt8 = function readInt8(offset, noAssert) { - offset = offset >>> 0; - if (!noAssert) checkOffset(offset, 1, this.length); - if (!(this[offset] & 0x80)) return this[offset]; - return (0xff - this[offset] + 1) * -1; - }; - - Buffer.prototype.readInt16LE = function readInt16LE( - offset, - noAssert, - ) { - offset = offset >>> 0; - if (!noAssert) checkOffset(offset, 2, this.length); - var val = this[offset] | (this[offset + 1] << 8); - return val & 0x8000 ? val | 0xffff0000 : val; - }; - - Buffer.prototype.readInt16BE = function readInt16BE( - offset, - noAssert, - ) { - offset = offset >>> 0; - if (!noAssert) checkOffset(offset, 2, this.length); - var val = this[offset + 1] | (this[offset] << 8); - return val & 0x8000 ? val | 0xffff0000 : val; - }; - - Buffer.prototype.readInt32LE = function readInt32LE( - offset, - noAssert, - ) { - offset = offset >>> 0; - if (!noAssert) checkOffset(offset, 4, this.length); - - return ( - this[offset] | - (this[offset + 1] << 8) | - (this[offset + 2] << 16) | - (this[offset + 3] << 24) - ); - }; - - Buffer.prototype.readInt32BE = function readInt32BE( - offset, - noAssert, - ) { - offset = offset >>> 0; - if (!noAssert) checkOffset(offset, 4, this.length); - - return ( - (this[offset] << 24) | - (this[offset + 1] << 16) | - (this[offset + 2] << 8) | - this[offset + 3] - ); - }; - - Buffer.prototype.readFloatLE = function readFloatLE( - offset, - noAssert, - ) { - offset = offset >>> 0; - if (!noAssert) checkOffset(offset, 4, this.length); - return ieee754.read(this, offset, true, 23, 4); - }; - - Buffer.prototype.readFloatBE = function readFloatBE( - offset, - noAssert, - ) { - offset = offset >>> 0; - if (!noAssert) checkOffset(offset, 4, this.length); - return ieee754.read(this, offset, false, 23, 4); - }; - - Buffer.prototype.readDoubleLE = function readDoubleLE( - offset, - noAssert, - ) { - offset = offset >>> 0; - if (!noAssert) checkOffset(offset, 8, this.length); - return ieee754.read(this, offset, true, 52, 8); - }; - - Buffer.prototype.readDoubleBE = function readDoubleBE( - offset, - noAssert, - ) { - offset = offset >>> 0; - if (!noAssert) checkOffset(offset, 8, this.length); - return ieee754.read(this, offset, false, 52, 8); - }; - - function checkInt(buf, value, offset, ext, max, min) { - if (!Buffer.isBuffer(buf)) - throw new TypeError( - '"buffer" argument must be a Buffer instance', - ); - if (value > max || value < min) - throw new RangeError('"value" argument is out of bounds'); - if (offset + ext > buf.length) - throw new RangeError('Index out of range'); - } - - Buffer.prototype.writeUIntLE = function writeUIntLE( - value, - offset, - byteLength, - noAssert, - ) { - value = +value; - offset = offset >>> 0; - byteLength = byteLength >>> 0; - if (!noAssert) { - var maxBytes = Math.pow(2, 8 * byteLength) - 1; - checkInt(this, value, offset, byteLength, maxBytes, 0); - } - - var mul = 1; - var i = 0; - this[offset] = value & 0xff; - while (++i < byteLength && (mul *= 0x100)) { - this[offset + i] = (value / mul) & 0xff; - } - - return offset + byteLength; - }; - - Buffer.prototype.writeUIntBE = function writeUIntBE( - value, - offset, - byteLength, - noAssert, - ) { - value = +value; - offset = offset >>> 0; - byteLength = byteLength >>> 0; - if (!noAssert) { - var maxBytes = Math.pow(2, 8 * byteLength) - 1; - checkInt(this, value, offset, byteLength, maxBytes, 0); - } - - var i = byteLength - 1; - var mul = 1; - this[offset + i] = value & 0xff; - while (--i >= 0 && (mul *= 0x100)) { - this[offset + i] = (value / mul) & 0xff; - } - - return offset + byteLength; - }; - - Buffer.prototype.writeUInt8 = function writeUInt8( - value, - offset, - noAssert, - ) { - value = +value; - offset = offset >>> 0; - if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0); - this[offset] = value & 0xff; - return offset + 1; - }; - - Buffer.prototype.writeUInt16LE = function writeUInt16LE( - value, - offset, - noAssert, - ) { - value = +value; - offset = offset >>> 0; - if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0); - this[offset] = value & 0xff; - this[offset + 1] = value >>> 8; - return offset + 2; - }; - - Buffer.prototype.writeUInt16BE = function writeUInt16BE( - value, - offset, - noAssert, - ) { - value = +value; - offset = offset >>> 0; - if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0); - this[offset] = value >>> 8; - this[offset + 1] = value & 0xff; - return offset + 2; - }; - - Buffer.prototype.writeUInt32LE = function writeUInt32LE( - value, - offset, - noAssert, - ) { - value = +value; - offset = offset >>> 0; - if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0); - this[offset + 3] = value >>> 24; - this[offset + 2] = value >>> 16; - this[offset + 1] = value >>> 8; - this[offset] = value & 0xff; - return offset + 4; - }; - - Buffer.prototype.writeUInt32BE = function writeUInt32BE( - value, - offset, - noAssert, - ) { - value = +value; - offset = offset >>> 0; - if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0); - this[offset] = value >>> 24; - this[offset + 1] = value >>> 16; - this[offset + 2] = value >>> 8; - this[offset + 3] = value & 0xff; - return offset + 4; - }; - - Buffer.prototype.writeIntLE = function writeIntLE( - value, - offset, - byteLength, - noAssert, - ) { - value = +value; - offset = offset >>> 0; - if (!noAssert) { - var limit = Math.pow(2, 8 * byteLength - 1); - - checkInt(this, value, offset, byteLength, limit - 1, -limit); - } - - var i = 0; - var mul = 1; - var sub = 0; - this[offset] = value & 0xff; - while (++i < byteLength && (mul *= 0x100)) { - if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) { - sub = 1; - } - this[offset + i] = (((value / mul) >> 0) - sub) & 0xff; - } - - return offset + byteLength; - }; - - Buffer.prototype.writeIntBE = function writeIntBE( - value, - offset, - byteLength, - noAssert, - ) { - value = +value; - offset = offset >>> 0; - if (!noAssert) { - var limit = Math.pow(2, 8 * byteLength - 1); - - checkInt(this, value, offset, byteLength, limit - 1, -limit); - } - - var i = byteLength - 1; - var mul = 1; - var sub = 0; - this[offset + i] = value & 0xff; - while (--i >= 0 && (mul *= 0x100)) { - if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) { - sub = 1; - } - this[offset + i] = (((value / mul) >> 0) - sub) & 0xff; - } - - return offset + byteLength; - }; - - Buffer.prototype.writeInt8 = function writeInt8( - value, - offset, - noAssert, - ) { - value = +value; - offset = offset >>> 0; - if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80); - if (value < 0) value = 0xff + value + 1; - this[offset] = value & 0xff; - return offset + 1; - }; - - Buffer.prototype.writeInt16LE = function writeInt16LE( - value, - offset, - noAssert, - ) { - value = +value; - offset = offset >>> 0; - if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000); - this[offset] = value & 0xff; - this[offset + 1] = value >>> 8; - return offset + 2; - }; - - Buffer.prototype.writeInt16BE = function writeInt16BE( - value, - offset, - noAssert, - ) { - value = +value; - offset = offset >>> 0; - if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000); - this[offset] = value >>> 8; - this[offset + 1] = value & 0xff; - return offset + 2; - }; - - Buffer.prototype.writeInt32LE = function writeInt32LE( - value, - offset, - noAssert, - ) { - value = +value; - offset = offset >>> 0; - if (!noAssert) - checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000); - this[offset] = value & 0xff; - this[offset + 1] = value >>> 8; - this[offset + 2] = value >>> 16; - this[offset + 3] = value >>> 24; - return offset + 4; - }; - - Buffer.prototype.writeInt32BE = function writeInt32BE( - value, - offset, - noAssert, - ) { - value = +value; - offset = offset >>> 0; - if (!noAssert) - checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000); - if (value < 0) value = 0xffffffff + value + 1; - this[offset] = value >>> 24; - this[offset + 1] = value >>> 16; - this[offset + 2] = value >>> 8; - this[offset + 3] = value & 0xff; - return offset + 4; - }; - - function checkIEEE754(buf, value, offset, ext, max, min) { - if (offset + ext > buf.length) - throw new RangeError('Index out of range'); - if (offset < 0) throw new RangeError('Index out of range'); - } - - function writeFloat(buf, value, offset, littleEndian, noAssert) { - value = +value; - offset = offset >>> 0; - if (!noAssert) { - checkIEEE754( - buf, - value, - offset, - 4, - 3.4028234663852886e38, - -3.4028234663852886e38, - ); - } - ieee754.write(buf, value, offset, littleEndian, 23, 4); - return offset + 4; - } - - Buffer.prototype.writeFloatLE = function writeFloatLE( - value, - offset, - noAssert, - ) { - return writeFloat(this, value, offset, true, noAssert); - }; - - Buffer.prototype.writeFloatBE = function writeFloatBE( - value, - offset, - noAssert, - ) { - return writeFloat(this, value, offset, false, noAssert); - }; - - function writeDouble(buf, value, offset, littleEndian, noAssert) { - value = +value; - offset = offset >>> 0; - if (!noAssert) { - checkIEEE754( - buf, - value, - offset, - 8, - 1.7976931348623157e308, - -1.7976931348623157e308, - ); - } - ieee754.write(buf, value, offset, littleEndian, 52, 8); - return offset + 8; - } - - Buffer.prototype.writeDoubleLE = function writeDoubleLE( - value, - offset, - noAssert, - ) { - return writeDouble(this, value, offset, true, noAssert); - }; - - Buffer.prototype.writeDoubleBE = function writeDoubleBE( - value, - offset, - noAssert, - ) { - return writeDouble(this, value, offset, false, noAssert); - }; - - // copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length) - Buffer.prototype.copy = function copy( - target, - targetStart, - start, - end, - ) { - if (!Buffer.isBuffer(target)) - throw new TypeError('argument should be a Buffer'); - if (!start) start = 0; - if (!end && end !== 0) end = this.length; - if (targetStart >= target.length) targetStart = target.length; - if (!targetStart) targetStart = 0; - if (end > 0 && end < start) end = start; - - // Copy 0 bytes; we're done - if (end === start) return 0; - if (target.length === 0 || this.length === 0) return 0; - - // Fatal error conditions - if (targetStart < 0) { - throw new RangeError('targetStart out of bounds'); - } - if (start < 0 || start >= this.length) - throw new RangeError('Index out of range'); - if (end < 0) throw new RangeError('sourceEnd out of bounds'); - - // Are we oob? - if (end > this.length) end = this.length; - if (target.length - targetStart < end - start) { - end = target.length - targetStart + start; - } - - var len = end - start; - - if ( - this === target && - typeof Uint8Array.prototype.copyWithin === 'function' - ) { - // Use built-in when available, missing from IE11 - this.copyWithin(targetStart, start, end); - } else if ( - this === target && - start < targetStart && - targetStart < end - ) { - // descending copy from end - for (var i = len - 1; i >= 0; --i) { - target[i + targetStart] = this[i + start]; - } - } else { - Uint8Array.prototype.set.call( - target, - this.subarray(start, end), - targetStart, - ); - } - - return len; - }; - - // Usage: - // buffer.fill(number[, offset[, end]]) - // buffer.fill(buffer[, offset[, end]]) - // buffer.fill(string[, offset[, end]][, encoding]) - Buffer.prototype.fill = function fill(val, start, end, encoding) { - // Handle string cases: - if (typeof val === 'string') { - if (typeof start === 'string') { - encoding = start; - start = 0; - end = this.length; - } else if (typeof end === 'string') { - encoding = end; - end = this.length; - } - if (encoding !== undefined && typeof encoding !== 'string') { - throw new TypeError('encoding must be a string'); - } - if ( - typeof encoding === 'string' && - !Buffer.isEncoding(encoding) - ) { - throw new TypeError('Unknown encoding: ' + encoding); - } - if (val.length === 1) { - var code = val.charCodeAt(0); - if ( - (encoding === 'utf8' && code < 128) || - encoding === 'latin1' - ) { - // Fast path: If `val` fits into a single byte, use that numeric value. - val = code; - } - } - } else if (typeof val === 'number') { - val = val & 255; - } - - // Invalid ranges are not set to a default, so can range check early. - if (start < 0 || this.length < start || this.length < end) { - throw new RangeError('Out of range index'); - } - - if (end <= start) { - return this; - } - - start = start >>> 0; - end = end === undefined ? this.length : end >>> 0; - - if (!val) val = 0; - - var i; - if (typeof val === 'number') { - for (i = start; i < end; ++i) { - this[i] = val; - } - } else { - var bytes = Buffer.isBuffer(val) - ? val - : Buffer.from(val, encoding); - var len = bytes.length; - if (len === 0) { - throw new TypeError( - 'The value "' + val + '" is invalid for argument "value"', - ); - } - for (i = 0; i < end - start; ++i) { - this[i + start] = bytes[i % len]; - } - } - - return this; - }; - - // HELPER FUNCTIONS - // ================ - - var INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g; - - function base64clean(str) { - // Node takes equal signs as end of the Base64 encoding - str = str.split('=')[0]; - // Node strips out invalid characters like \n and \t from the string, base64-js does not - str = str.trim().replace(INVALID_BASE64_RE, ''); - // Node converts strings with length < 2 to '' - if (str.length < 2) return ''; - // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not - while (str.length % 4 !== 0) { - str = str + '='; - } - return str; - } - - function toHex(n) { - if (n < 16) return '0' + n.toString(16); - return n.toString(16); - } - - function utf8ToBytes(string, units) { - units = units || Infinity; - var codePoint; - var length = string.length; - var leadSurrogate = null; - var bytes = []; - - for (var i = 0; i < length; ++i) { - codePoint = string.charCodeAt(i); - - // is surrogate component - if (codePoint > 0xd7ff && codePoint < 0xe000) { - // last char was a lead - if (!leadSurrogate) { - // no lead yet - if (codePoint > 0xdbff) { - // unexpected trail - if ((units -= 3) > -1) bytes.push(0xef, 0xbf, 0xbd); - continue; - } else if (i + 1 === length) { - // unpaired lead - if ((units -= 3) > -1) bytes.push(0xef, 0xbf, 0xbd); - continue; - } - - // valid lead - leadSurrogate = codePoint; - - continue; - } - - // 2 leads in a row - if (codePoint < 0xdc00) { - if ((units -= 3) > -1) bytes.push(0xef, 0xbf, 0xbd); - leadSurrogate = codePoint; - continue; - } - - // valid surrogate pair - codePoint = - (((leadSurrogate - 0xd800) << 10) | (codePoint - 0xdc00)) + - 0x10000; - } else if (leadSurrogate) { - // valid bmp char, but last char was a lead - if ((units -= 3) > -1) bytes.push(0xef, 0xbf, 0xbd); - } - - leadSurrogate = null; - - // encode utf8 - if (codePoint < 0x80) { - if ((units -= 1) < 0) break; - bytes.push(codePoint); - } else if (codePoint < 0x800) { - if ((units -= 2) < 0) break; - bytes.push( - (codePoint >> 0x6) | 0xc0, - (codePoint & 0x3f) | 0x80, - ); - } else if (codePoint < 0x10000) { - if ((units -= 3) < 0) break; - bytes.push( - (codePoint >> 0xc) | 0xe0, - ((codePoint >> 0x6) & 0x3f) | 0x80, - (codePoint & 0x3f) | 0x80, - ); - } else if (codePoint < 0x110000) { - if ((units -= 4) < 0) break; - bytes.push( - (codePoint >> 0x12) | 0xf0, - ((codePoint >> 0xc) & 0x3f) | 0x80, - ((codePoint >> 0x6) & 0x3f) | 0x80, - (codePoint & 0x3f) | 0x80, - ); - } else { - throw new Error('Invalid code point'); - } - } - - return bytes; - } - - function asciiToBytes(str) { - var byteArray = []; - for (var i = 0; i < str.length; ++i) { - // Node's code seems to be doing this and not & 0x7F.. - byteArray.push(str.charCodeAt(i) & 0xff); - } - return byteArray; - } - - function utf16leToBytes(str, units) { - var c, hi, lo; - var byteArray = []; - for (var i = 0; i < str.length; ++i) { - if ((units -= 2) < 0) break; - - c = str.charCodeAt(i); - hi = c >> 8; - lo = c % 256; - byteArray.push(lo); - byteArray.push(hi); - } - - return byteArray; - } - - function base64ToBytes(str) { - return base64.toByteArray(base64clean(str)); - } - - function blitBuffer(src, dst, offset, length) { - for (var i = 0; i < length; ++i) { - if (i + offset >= dst.length || i >= src.length) break; - dst[i + offset] = src[i]; - } - return i; - } - - // ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass - // the `instanceof` check but they should be treated as of that type. - // See: https://github.com/feross/buffer/issues/166 - function isInstance(obj, type) { - return ( - obj instanceof type || - (obj != null && - obj.constructor != null && - obj.constructor.name != null && - obj.constructor.name === type.name) - ); - } - function numberIsNaN(obj) { - // For IE11 support - return obj !== obj; // eslint-disable-line no-self-compare - } - }).call(this); - }).call(this, require('buffer').Buffer); - }, - { 'base64-js': 1, 'buffer': 3, 'ieee754': 30 }, - ], - 4: [ - function (require, module, exports) { - 'use strict'; - - var isMergeableObject = function isMergeableObject(value) { - return isNonNullObject(value) && !isSpecial(value); - }; - - function isNonNullObject(value) { - return !!value && typeof value === 'object'; - } - - function isSpecial(value) { - var stringValue = Object.prototype.toString.call(value); - - return ( - stringValue === '[object RegExp]' || - stringValue === '[object Date]' || - isReactElement(value) - ); - } - - // see https://github.com/facebook/react/blob/b5ac963fb791d1298e7f396236383bc955f916c1/src/isomorphic/classic/element/ReactElement.js#L21-L25 - var canUseSymbol = typeof Symbol === 'function' && Symbol.for; - var REACT_ELEMENT_TYPE = canUseSymbol - ? Symbol.for('react.element') - : 0xeac7; - - function isReactElement(value) { - return value.$$typeof === REACT_ELEMENT_TYPE; - } - - function emptyTarget(val) { - return Array.isArray(val) ? [] : {}; - } - - function cloneUnlessOtherwiseSpecified(value, options) { - return options.clone !== false && options.isMergeableObject(value) - ? deepmerge(emptyTarget(value), value, options) - : value; - } - - function defaultArrayMerge(target, source, options) { - return target.concat(source).map(function (element) { - return cloneUnlessOtherwiseSpecified(element, options); - }); - } - - function getMergeFunction(key, options) { - if (!options.customMerge) { - return deepmerge; - } - var customMerge = options.customMerge(key); - return typeof customMerge === 'function' ? customMerge : deepmerge; - } - - function getEnumerableOwnPropertySymbols(target) { - return Object.getOwnPropertySymbols - ? Object.getOwnPropertySymbols(target).filter(function (symbol) { - return Object.propertyIsEnumerable.call(target, symbol); - }) - : []; - } - - function getKeys(target) { - return Object.keys(target).concat( - getEnumerableOwnPropertySymbols(target), - ); - } - - function propertyIsOnObject(object, property) { - try { - return property in object; - } catch (_) { - return false; - } - } - - // Protects from prototype poisoning and unexpected merging up the prototype chain. - function propertyIsUnsafe(target, key) { - return ( - propertyIsOnObject(target, key) && // Properties are safe to merge if they don't exist in the target yet, - !( - Object.hasOwnProperty.call(target, key) && // unsafe if they exist up the prototype chain, - Object.propertyIsEnumerable.call(target, key) - ) - ); // and also unsafe if they're nonenumerable. - } - - function mergeObject(target, source, options) { - var destination = {}; - if (options.isMergeableObject(target)) { - getKeys(target).forEach(function (key) { - destination[key] = cloneUnlessOtherwiseSpecified( - target[key], - options, - ); - }); - } - getKeys(source).forEach(function (key) { - if (propertyIsUnsafe(target, key)) { - return; - } - - if ( - propertyIsOnObject(target, key) && - options.isMergeableObject(source[key]) - ) { - destination[key] = getMergeFunction(key, options)( - target[key], - source[key], - options, - ); - } else { - destination[key] = cloneUnlessOtherwiseSpecified( - source[key], - options, - ); - } - }); - return destination; - } - - function deepmerge(target, source, options) { - options = options || {}; - options.arrayMerge = options.arrayMerge || defaultArrayMerge; - options.isMergeableObject = - options.isMergeableObject || isMergeableObject; - // cloneUnlessOtherwiseSpecified is added to `options` so that custom arrayMerge() - // implementations can use it. The caller may not replace it. - options.cloneUnlessOtherwiseSpecified = cloneUnlessOtherwiseSpecified; - - var sourceIsArray = Array.isArray(source); - var targetIsArray = Array.isArray(target); - var sourceAndTargetTypesMatch = sourceIsArray === targetIsArray; - - if (!sourceAndTargetTypesMatch) { - return cloneUnlessOtherwiseSpecified(source, options); - } else if (sourceIsArray) { - return options.arrayMerge(target, source, options); - } else { - return mergeObject(target, source, options); - } - } - - deepmerge.all = function deepmergeAll(array, options) { - if (!Array.isArray(array)) { - throw new Error('first argument should be an array'); - } - - return array.reduce(function (prev, next) { - return deepmerge(prev, next, options); - }, {}); - }; - - var deepmerge_1 = deepmerge; - - module.exports = deepmerge_1; - }, - {}, - ], - 5: [ - function (require, module, exports) { - 'use strict'; - Object.defineProperty(exports, '__esModule', { value: true }); - exports.attributeNames = exports.elementNames = void 0; - exports.elementNames = new Map( - [ - 'altGlyph', - 'altGlyphDef', - 'altGlyphItem', - 'animateColor', - 'animateMotion', - 'animateTransform', - 'clipPath', - 'feBlend', - 'feColorMatrix', - 'feComponentTransfer', - 'feComposite', - 'feConvolveMatrix', - 'feDiffuseLighting', - 'feDisplacementMap', - 'feDistantLight', - 'feDropShadow', - 'feFlood', - 'feFuncA', - 'feFuncB', - 'feFuncG', - 'feFuncR', - 'feGaussianBlur', - 'feImage', - 'feMerge', - 'feMergeNode', - 'feMorphology', - 'feOffset', - 'fePointLight', - 'feSpecularLighting', - 'feSpotLight', - 'feTile', - 'feTurbulence', - 'foreignObject', - 'glyphRef', - 'linearGradient', - 'radialGradient', - 'textPath', - ].map(function (val) { - return [val.toLowerCase(), val]; - }), - ); - exports.attributeNames = new Map( - [ - 'definitionURL', - 'attributeName', - 'attributeType', - 'baseFrequency', - 'baseProfile', - 'calcMode', - 'clipPathUnits', - 'diffuseConstant', - 'edgeMode', - 'filterUnits', - 'glyphRef', - 'gradientTransform', - 'gradientUnits', - 'kernelMatrix', - 'kernelUnitLength', - 'keyPoints', - 'keySplines', - 'keyTimes', - 'lengthAdjust', - 'limitingConeAngle', - 'markerHeight', - 'markerUnits', - 'markerWidth', - 'maskContentUnits', - 'maskUnits', - 'numOctaves', - 'pathLength', - 'patternContentUnits', - 'patternTransform', - 'patternUnits', - 'pointsAtX', - 'pointsAtY', - 'pointsAtZ', - 'preserveAlpha', - 'preserveAspectRatio', - 'primitiveUnits', - 'refX', - 'refY', - 'repeatCount', - 'repeatDur', - 'requiredExtensions', - 'requiredFeatures', - 'specularConstant', - 'specularExponent', - 'spreadMethod', - 'startOffset', - 'stdDeviation', - 'stitchTiles', - 'surfaceScale', - 'systemLanguage', - 'tableValues', - 'targetX', - 'targetY', - 'textLength', - 'viewBox', - 'viewTarget', - 'xChannelSelector', - 'yChannelSelector', - 'zoomAndPan', - ].map(function (val) { - return [val.toLowerCase(), val]; - }), - ); - }, - {}, - ], - 6: [ - function (require, module, exports) { - 'use strict'; - var __assign = - (this && this.__assign) || - function () { - __assign = - Object.assign || - function (t) { - for (var s, i = 1, n = arguments.length; i < n; i++) { - s = arguments[i]; - for (var p in s) - if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; - } - return t; - }; - return __assign.apply(this, arguments); - }; - var __createBinding = - (this && this.__createBinding) || - (Object.create - ? function (o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if ( - !desc || - ('get' in desc - ? !m.__esModule - : desc.writable || desc.configurable) - ) { - desc = { - enumerable: true, - get: function () { - return m[k]; - }, - }; - } - Object.defineProperty(o, k2, desc); - } - : function (o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault = - (this && this.__setModuleDefault) || - (Object.create - ? function (o, v) { - Object.defineProperty(o, 'default', { - enumerable: true, - value: v, - }); - } - : function (o, v) { - o['default'] = v; - }); - var __importStar = - (this && this.__importStar) || - function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) - for (var k in mod) - if ( - k !== 'default' && - Object.prototype.hasOwnProperty.call(mod, k) - ) - __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; - }; - Object.defineProperty(exports, '__esModule', { value: true }); - exports.render = void 0; - /* - * Module dependencies - */ - var ElementType = __importStar(require('domelementtype')); - var entities_1 = require('entities'); - /** - * Mixed-case SVG and MathML tags & attributes - * recognized by the HTML parser. - * - * @see https://html.spec.whatwg.org/multipage/parsing.html#parsing-main-inforeign - */ - var foreignNames_js_1 = require('./foreignNames.js'); - var unencodedElements = new Set([ - 'style', - 'script', - 'xmp', - 'iframe', - 'noembed', - 'noframes', - 'plaintext', - 'noscript', - ]); - function replaceQuotes(value) { - return value.replace(/"/g, '"'); - } - /** - * Format attributes - */ - function formatAttributes(attributes, opts) { - var _a; - if (!attributes) return; - var encode = - ((_a = opts.encodeEntities) !== null && _a !== void 0 - ? _a - : opts.decodeEntities) === false - ? replaceQuotes - : opts.xmlMode || opts.encodeEntities !== 'utf8' - ? entities_1.encodeXML - : entities_1.escapeAttribute; - return Object.keys(attributes) - .map(function (key) { - var _a, _b; - var value = - (_a = attributes[key]) !== null && _a !== void 0 ? _a : ''; - if (opts.xmlMode === 'foreign') { - /* Fix up mixed-case attribute names */ - key = - (_b = foreignNames_js_1.attributeNames.get(key)) !== null && - _b !== void 0 - ? _b - : key; - } - if (!opts.emptyAttrs && !opts.xmlMode && value === '') { - return key; - } - return ''.concat(key, '="').concat(encode(value), '"'); - }) - .join(' '); - } - /** - * Self-enclosing tags - */ - var singleTag = new Set([ - 'area', - 'base', - 'basefont', - 'br', - 'col', - 'command', - 'embed', - 'frame', - 'hr', - 'img', - 'input', - 'isindex', - 'keygen', - 'link', - 'meta', - 'param', - 'source', - 'track', - 'wbr', - ]); - /** - * Renders a DOM node or an array of DOM nodes to a string. - * - * Can be thought of as the equivalent of the `outerHTML` of the passed node(s). - * - * @param node Node to be rendered. - * @param options Changes serialization behavior - */ - function render(node, options) { - if (options === void 0) { - options = {}; - } - var nodes = 'length' in node ? node : [node]; - var output = ''; - for (var i = 0; i < nodes.length; i++) { - output += renderNode(nodes[i], options); - } - return output; - } - exports.render = render; - exports.default = render; - function renderNode(node, options) { - switch (node.type) { - case ElementType.Root: - return render(node.children, options); - // @ts-expect-error We don't use `Doctype` yet - case ElementType.Doctype: - case ElementType.Directive: - return renderDirective(node); - case ElementType.Comment: - return renderComment(node); - case ElementType.CDATA: - return renderCdata(node); - case ElementType.Script: - case ElementType.Style: - case ElementType.Tag: - return renderTag(node, options); - case ElementType.Text: - return renderText(node, options); - } - } - var foreignModeIntegrationPoints = new Set([ - 'mi', - 'mo', - 'mn', - 'ms', - 'mtext', - 'annotation-xml', - 'foreignObject', - 'desc', - 'title', - ]); - var foreignElements = new Set(['svg', 'math']); - function renderTag(elem, opts) { - var _a; - // Handle SVG / MathML in HTML - if (opts.xmlMode === 'foreign') { - /* Fix up mixed-case element names */ - elem.name = - (_a = foreignNames_js_1.elementNames.get(elem.name)) !== null && - _a !== void 0 - ? _a - : elem.name; - /* Exit foreign mode at integration points */ - if ( - elem.parent && - foreignModeIntegrationPoints.has(elem.parent.name) - ) { - opts = __assign(__assign({}, opts), { xmlMode: false }); - } - } - if (!opts.xmlMode && foreignElements.has(elem.name)) { - opts = __assign(__assign({}, opts), { xmlMode: 'foreign' }); - } - var tag = '<'.concat(elem.name); - var attribs = formatAttributes(elem.attribs, opts); - if (attribs) { - tag += ' '.concat(attribs); - } - if ( - elem.children.length === 0 && - (opts.xmlMode - ? // In XML mode or foreign mode, and user hasn't explicitly turned off self-closing tags - opts.selfClosingTags !== false - : // User explicitly asked for self-closing tags, even in HTML mode - opts.selfClosingTags && singleTag.has(elem.name)) - ) { - if (!opts.xmlMode) tag += ' '; - tag += '/>'; - } else { - tag += '>'; - if (elem.children.length > 0) { - tag += render(elem.children, opts); - } - if (opts.xmlMode || !singleTag.has(elem.name)) { - tag += ''); - } - } - return tag; - } - function renderDirective(elem) { - return '<'.concat(elem.data, '>'); - } - function renderText(elem, opts) { - var _a; - var data = elem.data || ''; - // If entities weren't decoded, no need to encode them back - if ( - ((_a = opts.encodeEntities) !== null && _a !== void 0 - ? _a - : opts.decodeEntities) !== false && - !( - !opts.xmlMode && - elem.parent && - unencodedElements.has(elem.parent.name) - ) - ) { - data = - opts.xmlMode || opts.encodeEntities !== 'utf8' - ? (0, entities_1.encodeXML)(data) - : (0, entities_1.escapeText)(data); - } - return data; - } - function renderCdata(elem) { - return ''); - } - function renderComment(elem) { - return ''); - } - }, - { './foreignNames.js': 5, 'domelementtype': 7, 'entities': 25 }, - ], - 7: [ - function (require, module, exports) { - 'use strict'; - Object.defineProperty(exports, '__esModule', { value: true }); - exports.Doctype = - exports.CDATA = - exports.Tag = - exports.Style = - exports.Script = - exports.Comment = - exports.Directive = - exports.Text = - exports.Root = - exports.isTag = - exports.ElementType = - void 0; - /** Types of elements found in htmlparser2's DOM */ - var ElementType; - (function (ElementType) { - /** Type for the root element of a document */ - ElementType['Root'] = 'root'; - /** Type for Text */ - ElementType['Text'] = 'text'; - /** Type for */ - ElementType['Directive'] = 'directive'; - /** Type for */ - ElementType['Comment'] = 'comment'; - /** Type for `. - this.sequenceIndex = Number(c === CharCodes.Lt); - } - }; - Tokenizer.prototype.stateCDATASequence = function (c) { - if (c === Sequences.Cdata[this.sequenceIndex]) { - if (++this.sequenceIndex === Sequences.Cdata.length) { - this.state = State.InCommentLike; - this.currentSequence = Sequences.CdataEnd; - this.sequenceIndex = 0; - this.sectionStart = this.index + 1; - } - } else { - this.sequenceIndex = 0; - this.state = State.InDeclaration; - this.stateInDeclaration(c); // Reconsume the character - } - }; - /** - * When we wait for one specific character, we can speed things up - * by skipping through the buffer until we find it. - * - * @returns Whether the character was found. - */ - Tokenizer.prototype.fastForwardTo = function (c) { - while (++this.index < this.buffer.length + this.offset) { - if (this.buffer.charCodeAt(this.index - this.offset) === c) { - return true; - } - } - /* - * We increment the index at the end of the `parse` loop, - * so set it to `buffer.length - 1` here. - * - * TODO: Refactor `parse` to increment index before calling states. - */ - this.index = this.buffer.length + this.offset - 1; - return false; - }; - /** - * Comments and CDATA end with `-->` and `]]>`. - * - * Their common qualities are: - * - Their end sequences have a distinct character they start with. - * - That character is then repeated, so we have to check multiple repeats. - * - All characters but the start character of the sequence can be skipped. - */ - Tokenizer.prototype.stateInCommentLike = function (c) { - if (c === this.currentSequence[this.sequenceIndex]) { - if (++this.sequenceIndex === this.currentSequence.length) { - if (this.currentSequence === Sequences.CdataEnd) { - this.cbs.oncdata(this.sectionStart, this.index, 2); - } else { - this.cbs.oncomment(this.sectionStart, this.index, 2); - } - this.sequenceIndex = 0; - this.sectionStart = this.index + 1; - this.state = State.Text; - } - } else if (this.sequenceIndex === 0) { - // Fast-forward to the first character of the sequence - if (this.fastForwardTo(this.currentSequence[0])) { - this.sequenceIndex = 1; - } - } else if (c !== this.currentSequence[this.sequenceIndex - 1]) { - // Allow long sequences, eg. --->, ]]]> - this.sequenceIndex = 0; - } - }; - /** - * HTML only allows ASCII alpha characters (a-z and A-Z) at the beginning of a tag name. - * - * XML allows a lot more characters here (@see https://www.w3.org/TR/REC-xml/#NT-NameStartChar). - * We allow anything that wouldn't end the tag. - */ - Tokenizer.prototype.isTagStartChar = function (c) { - return this.xmlMode ? !isEndOfTagSection(c) : isASCIIAlpha(c); - }; - Tokenizer.prototype.startSpecial = function (sequence, offset) { - this.isSpecial = true; - this.currentSequence = sequence; - this.sequenceIndex = offset; - this.state = State.SpecialStartSequence; - }; - Tokenizer.prototype.stateBeforeTagName = function (c) { - if (c === CharCodes.ExclamationMark) { - this.state = State.BeforeDeclaration; - this.sectionStart = this.index + 1; - } else if (c === CharCodes.Questionmark) { - this.state = State.InProcessingInstruction; - this.sectionStart = this.index + 1; - } else if (this.isTagStartChar(c)) { - var lower = c | 0x20; - this.sectionStart = this.index; - if (!this.xmlMode && lower === Sequences.TitleEnd[2]) { - this.startSpecial(Sequences.TitleEnd, 3); - } else { - this.state = - !this.xmlMode && lower === Sequences.ScriptEnd[2] - ? State.BeforeSpecialS - : State.InTagName; - } - } else if (c === CharCodes.Slash) { - this.state = State.BeforeClosingTagName; - } else { - this.state = State.Text; - this.stateText(c); - } - }; - Tokenizer.prototype.stateInTagName = function (c) { - if (isEndOfTagSection(c)) { - this.cbs.onopentagname(this.sectionStart, this.index); - this.sectionStart = -1; - this.state = State.BeforeAttributeName; - this.stateBeforeAttributeName(c); - } - }; - Tokenizer.prototype.stateBeforeClosingTagName = function (c) { - if (isWhitespace(c)) { - // Ignore - } else if (c === CharCodes.Gt) { - this.state = State.Text; - } else { - this.state = this.isTagStartChar(c) - ? State.InClosingTagName - : State.InSpecialComment; - this.sectionStart = this.index; - } - }; - Tokenizer.prototype.stateInClosingTagName = function (c) { - if (c === CharCodes.Gt || isWhitespace(c)) { - this.cbs.onclosetag(this.sectionStart, this.index); - this.sectionStart = -1; - this.state = State.AfterClosingTagName; - this.stateAfterClosingTagName(c); - } - }; - Tokenizer.prototype.stateAfterClosingTagName = function (c) { - // Skip everything until ">" - if (c === CharCodes.Gt || this.fastForwardTo(CharCodes.Gt)) { - this.state = State.Text; - this.baseState = State.Text; - this.sectionStart = this.index + 1; - } - }; - Tokenizer.prototype.stateBeforeAttributeName = function (c) { - if (c === CharCodes.Gt) { - this.cbs.onopentagend(this.index); - if (this.isSpecial) { - this.state = State.InSpecialTag; - this.sequenceIndex = 0; - } else { - this.state = State.Text; - } - this.baseState = this.state; - this.sectionStart = this.index + 1; - } else if (c === CharCodes.Slash) { - this.state = State.InSelfClosingTag; - } else if (!isWhitespace(c)) { - this.state = State.InAttributeName; - this.sectionStart = this.index; - } - }; - Tokenizer.prototype.stateInSelfClosingTag = function (c) { - if (c === CharCodes.Gt) { - this.cbs.onselfclosingtag(this.index); - this.state = State.Text; - this.baseState = State.Text; - this.sectionStart = this.index + 1; - this.isSpecial = false; // Reset special state, in case of self-closing special tags - } else if (!isWhitespace(c)) { - this.state = State.BeforeAttributeName; - this.stateBeforeAttributeName(c); - } - }; - Tokenizer.prototype.stateInAttributeName = function (c) { - if (c === CharCodes.Eq || isEndOfTagSection(c)) { - this.cbs.onattribname(this.sectionStart, this.index); - this.sectionStart = -1; - this.state = State.AfterAttributeName; - this.stateAfterAttributeName(c); - } - }; - Tokenizer.prototype.stateAfterAttributeName = function (c) { - if (c === CharCodes.Eq) { - this.state = State.BeforeAttributeValue; - } else if (c === CharCodes.Slash || c === CharCodes.Gt) { - this.cbs.onattribend(QuoteType.NoValue, this.index); - this.state = State.BeforeAttributeName; - this.stateBeforeAttributeName(c); - } else if (!isWhitespace(c)) { - this.cbs.onattribend(QuoteType.NoValue, this.index); - this.state = State.InAttributeName; - this.sectionStart = this.index; - } - }; - Tokenizer.prototype.stateBeforeAttributeValue = function (c) { - if (c === CharCodes.DoubleQuote) { - this.state = State.InAttributeValueDq; - this.sectionStart = this.index + 1; - } else if (c === CharCodes.SingleQuote) { - this.state = State.InAttributeValueSq; - this.sectionStart = this.index + 1; - } else if (!isWhitespace(c)) { - this.sectionStart = this.index; - this.state = State.InAttributeValueNq; - this.stateInAttributeValueNoQuotes(c); // Reconsume token - } - }; - Tokenizer.prototype.handleInAttributeValue = function (c, quote) { - if ( - c === quote || - (!this.decodeEntities && this.fastForwardTo(quote)) - ) { - this.cbs.onattribdata(this.sectionStart, this.index); - this.sectionStart = -1; - this.cbs.onattribend( - quote === CharCodes.DoubleQuote - ? QuoteType.Double - : QuoteType.Single, - this.index, - ); - this.state = State.BeforeAttributeName; - } else if (this.decodeEntities && c === CharCodes.Amp) { - this.baseState = this.state; - this.state = State.BeforeEntity; - } - }; - Tokenizer.prototype.stateInAttributeValueDoubleQuotes = function (c) { - this.handleInAttributeValue(c, CharCodes.DoubleQuote); - }; - Tokenizer.prototype.stateInAttributeValueSingleQuotes = function (c) { - this.handleInAttributeValue(c, CharCodes.SingleQuote); - }; - Tokenizer.prototype.stateInAttributeValueNoQuotes = function (c) { - if (isWhitespace(c) || c === CharCodes.Gt) { - this.cbs.onattribdata(this.sectionStart, this.index); - this.sectionStart = -1; - this.cbs.onattribend(QuoteType.Unquoted, this.index); - this.state = State.BeforeAttributeName; - this.stateBeforeAttributeName(c); - } else if (this.decodeEntities && c === CharCodes.Amp) { - this.baseState = this.state; - this.state = State.BeforeEntity; - } - }; - Tokenizer.prototype.stateBeforeDeclaration = function (c) { - if (c === CharCodes.OpeningSquareBracket) { - this.state = State.CDATASequence; - this.sequenceIndex = 0; - } else { - this.state = - c === CharCodes.Dash - ? State.BeforeComment - : State.InDeclaration; - } - }; - Tokenizer.prototype.stateInDeclaration = function (c) { - if (c === CharCodes.Gt || this.fastForwardTo(CharCodes.Gt)) { - this.cbs.ondeclaration(this.sectionStart, this.index); - this.state = State.Text; - this.sectionStart = this.index + 1; - } - }; - Tokenizer.prototype.stateInProcessingInstruction = function (c) { - if (c === CharCodes.Gt || this.fastForwardTo(CharCodes.Gt)) { - this.cbs.onprocessinginstruction(this.sectionStart, this.index); - this.state = State.Text; - this.sectionStart = this.index + 1; - } - }; - Tokenizer.prototype.stateBeforeComment = function (c) { - if (c === CharCodes.Dash) { - this.state = State.InCommentLike; - this.currentSequence = Sequences.CommentEnd; - // Allow short comments (eg. ) - this.sequenceIndex = 2; - this.sectionStart = this.index + 1; - } else { - this.state = State.InDeclaration; - } - }; - Tokenizer.prototype.stateInSpecialComment = function (c) { - if (c === CharCodes.Gt || this.fastForwardTo(CharCodes.Gt)) { - this.cbs.oncomment(this.sectionStart, this.index, 0); - this.state = State.Text; - this.sectionStart = this.index + 1; - } - }; - Tokenizer.prototype.stateBeforeSpecialS = function (c) { - var lower = c | 0x20; - if (lower === Sequences.ScriptEnd[3]) { - this.startSpecial(Sequences.ScriptEnd, 4); - } else if (lower === Sequences.StyleEnd[3]) { - this.startSpecial(Sequences.StyleEnd, 4); - } else { - this.state = State.InTagName; - this.stateInTagName(c); // Consume the token again - } - }; - Tokenizer.prototype.stateBeforeEntity = function (c) { - // Start excess with 1 to include the '&' - this.entityExcess = 1; - this.entityResult = 0; - if (c === CharCodes.Number) { - this.state = State.BeforeNumericEntity; - } else if (c === CharCodes.Amp) { - // We have two `&` characters in a row. Stay in the current state. - } else { - this.trieIndex = 0; - this.trieCurrent = this.entityTrie[0]; - this.state = State.InNamedEntity; - this.stateInNamedEntity(c); - } - }; - Tokenizer.prototype.stateInNamedEntity = function (c) { - this.entityExcess += 1; - this.trieIndex = (0, decode_js_1.determineBranch)( - this.entityTrie, - this.trieCurrent, - this.trieIndex + 1, - c, - ); - if (this.trieIndex < 0) { - this.emitNamedEntity(); - this.index--; - return; - } - this.trieCurrent = this.entityTrie[this.trieIndex]; - var masked = - this.trieCurrent & decode_js_1.BinTrieFlags.VALUE_LENGTH; - // If the branch is a value, store it and continue - if (masked) { - // The mask is the number of bytes of the value, including the current byte. - var valueLength = (masked >> 14) - 1; - // If we have a legacy entity while parsing strictly, just skip the number of bytes - if (!this.allowLegacyEntity() && c !== CharCodes.Semi) { - this.trieIndex += valueLength; - } else { - // Add 1 as we have already incremented the excess - var entityStart = this.index - this.entityExcess + 1; - if (entityStart > this.sectionStart) { - this.emitPartial(this.sectionStart, entityStart); - } - // If this is a surrogate pair, consume the next two bytes - this.entityResult = this.trieIndex; - this.trieIndex += valueLength; - this.entityExcess = 0; - this.sectionStart = this.index + 1; - if (valueLength === 0) { - this.emitNamedEntity(); - } - } - } - }; - Tokenizer.prototype.emitNamedEntity = function () { - this.state = this.baseState; - if (this.entityResult === 0) { - return; - } - var valueLength = - (this.entityTrie[this.entityResult] & - decode_js_1.BinTrieFlags.VALUE_LENGTH) >> - 14; - switch (valueLength) { - case 1: { - this.emitCodePoint( - this.entityTrie[this.entityResult] & - ~decode_js_1.BinTrieFlags.VALUE_LENGTH, - ); - break; - } - case 2: { - this.emitCodePoint(this.entityTrie[this.entityResult + 1]); - break; - } - case 3: { - this.emitCodePoint(this.entityTrie[this.entityResult + 1]); - this.emitCodePoint(this.entityTrie[this.entityResult + 2]); - } - } - }; - Tokenizer.prototype.stateBeforeNumericEntity = function (c) { - if ((c | 0x20) === CharCodes.LowerX) { - this.entityExcess++; - this.state = State.InHexEntity; - } else { - this.state = State.InNumericEntity; - this.stateInNumericEntity(c); - } - }; - Tokenizer.prototype.emitNumericEntity = function (strict) { - var entityStart = this.index - this.entityExcess - 1; - var numberStart = - entityStart + 2 + Number(this.state === State.InHexEntity); - if (numberStart !== this.index) { - // Emit leading data if any - if (entityStart > this.sectionStart) { - this.emitPartial(this.sectionStart, entityStart); - } - this.sectionStart = this.index + Number(strict); - this.emitCodePoint( - (0, decode_js_1.replaceCodePoint)(this.entityResult), - ); - } - this.state = this.baseState; - }; - Tokenizer.prototype.stateInNumericEntity = function (c) { - if (c === CharCodes.Semi) { - this.emitNumericEntity(true); - } else if (isNumber(c)) { - this.entityResult = this.entityResult * 10 + (c - CharCodes.Zero); - this.entityExcess++; - } else { - if (this.allowLegacyEntity()) { - this.emitNumericEntity(false); - } else { - this.state = this.baseState; - } - this.index--; - } - }; - Tokenizer.prototype.stateInHexEntity = function (c) { - if (c === CharCodes.Semi) { - this.emitNumericEntity(true); - } else if (isNumber(c)) { - this.entityResult = this.entityResult * 16 + (c - CharCodes.Zero); - this.entityExcess++; - } else if (isHexDigit(c)) { - this.entityResult = - this.entityResult * 16 + ((c | 0x20) - CharCodes.LowerA + 10); - this.entityExcess++; - } else { - if (this.allowLegacyEntity()) { - this.emitNumericEntity(false); - } else { - this.state = this.baseState; - } - this.index--; - } - }; - Tokenizer.prototype.allowLegacyEntity = function () { - return ( - !this.xmlMode && - (this.baseState === State.Text || - this.baseState === State.InSpecialTag) - ); - }; - /** - * Remove data that has already been consumed from the buffer. - */ - Tokenizer.prototype.cleanup = function () { - // If we are inside of text or attributes, emit what we already have. - if (this.running && this.sectionStart !== this.index) { - if ( - this.state === State.Text || - (this.state === State.InSpecialTag && this.sequenceIndex === 0) - ) { - this.cbs.ontext(this.sectionStart, this.index); - this.sectionStart = this.index; - } else if ( - this.state === State.InAttributeValueDq || - this.state === State.InAttributeValueSq || - this.state === State.InAttributeValueNq - ) { - this.cbs.onattribdata(this.sectionStart, this.index); - this.sectionStart = this.index; - } - } - }; - Tokenizer.prototype.shouldContinue = function () { - return ( - this.index < this.buffer.length + this.offset && this.running - ); - }; - /** - * Iterates through the buffer, calling the function corresponding to the current state. - * - * States that are more likely to be hit are higher up, as a performance improvement. - */ - Tokenizer.prototype.parse = function () { - while (this.shouldContinue()) { - var c = this.buffer.charCodeAt(this.index - this.offset); - switch (this.state) { - case State.Text: { - this.stateText(c); - break; - } - case State.SpecialStartSequence: { - this.stateSpecialStartSequence(c); - break; - } - case State.InSpecialTag: { - this.stateInSpecialTag(c); - break; - } - case State.CDATASequence: { - this.stateCDATASequence(c); - break; - } - case State.InAttributeValueDq: { - this.stateInAttributeValueDoubleQuotes(c); - break; - } - case State.InAttributeName: { - this.stateInAttributeName(c); - break; - } - case State.InCommentLike: { - this.stateInCommentLike(c); - break; - } - case State.InSpecialComment: { - this.stateInSpecialComment(c); - break; - } - case State.BeforeAttributeName: { - this.stateBeforeAttributeName(c); - break; - } - case State.InTagName: { - this.stateInTagName(c); - break; - } - case State.InClosingTagName: { - this.stateInClosingTagName(c); - break; - } - case State.BeforeTagName: { - this.stateBeforeTagName(c); - break; - } - case State.AfterAttributeName: { - this.stateAfterAttributeName(c); - break; - } - case State.InAttributeValueSq: { - this.stateInAttributeValueSingleQuotes(c); - break; - } - case State.BeforeAttributeValue: { - this.stateBeforeAttributeValue(c); - break; - } - case State.BeforeClosingTagName: { - this.stateBeforeClosingTagName(c); - break; - } - case State.AfterClosingTagName: { - this.stateAfterClosingTagName(c); - break; - } - case State.BeforeSpecialS: { - this.stateBeforeSpecialS(c); - break; - } - case State.InAttributeValueNq: { - this.stateInAttributeValueNoQuotes(c); - break; - } - case State.InSelfClosingTag: { - this.stateInSelfClosingTag(c); - break; - } - case State.InDeclaration: { - this.stateInDeclaration(c); - break; - } - case State.BeforeDeclaration: { - this.stateBeforeDeclaration(c); - break; - } - case State.BeforeComment: { - this.stateBeforeComment(c); - break; - } - case State.InProcessingInstruction: { - this.stateInProcessingInstruction(c); - break; - } - case State.InNamedEntity: { - this.stateInNamedEntity(c); - break; - } - case State.BeforeEntity: { - this.stateBeforeEntity(c); - break; - } - case State.InHexEntity: { - this.stateInHexEntity(c); - break; - } - case State.InNumericEntity: { - this.stateInNumericEntity(c); - break; - } - default: { - // `this._state === State.BeforeNumericEntity` - this.stateBeforeNumericEntity(c); - } - } - this.index++; - } - this.cleanup(); - }; - Tokenizer.prototype.finish = function () { - if (this.state === State.InNamedEntity) { - this.emitNamedEntity(); - } - // If there is remaining data, emit it in a reasonable way - if (this.sectionStart < this.index) { - this.handleTrailingData(); - } - this.cbs.onend(); - }; - /** Handle any trailing data. */ - Tokenizer.prototype.handleTrailingData = function () { - var endIndex = this.buffer.length + this.offset; - if (this.state === State.InCommentLike) { - if (this.currentSequence === Sequences.CdataEnd) { - this.cbs.oncdata(this.sectionStart, endIndex, 0); - } else { - this.cbs.oncomment(this.sectionStart, endIndex, 0); - } - } else if ( - this.state === State.InNumericEntity && - this.allowLegacyEntity() - ) { - this.emitNumericEntity(false); - // All trailing data will have been consumed - } else if ( - this.state === State.InHexEntity && - this.allowLegacyEntity() - ) { - this.emitNumericEntity(false); - // All trailing data will have been consumed - } else if ( - this.state === State.InTagName || - this.state === State.BeforeAttributeName || - this.state === State.BeforeAttributeValue || - this.state === State.AfterAttributeName || - this.state === State.InAttributeName || - this.state === State.InAttributeValueSq || - this.state === State.InAttributeValueDq || - this.state === State.InAttributeValueNq || - this.state === State.InClosingTagName - ) { - /* - * If we are currently in an opening or closing tag, us not calling the - * respective callback signals that the tag should be ignored. - */ - } else { - this.cbs.ontext(this.sectionStart, endIndex); - } - }; - Tokenizer.prototype.emitPartial = function (start, endIndex) { - if ( - this.baseState !== State.Text && - this.baseState !== State.InSpecialTag - ) { - this.cbs.onattribdata(start, endIndex); - } else { - this.cbs.ontext(start, endIndex); - } - }; - Tokenizer.prototype.emitCodePoint = function (cp) { - if ( - this.baseState !== State.Text && - this.baseState !== State.InSpecialTag - ) { - this.cbs.onattribentity(cp); - } else { - this.cbs.ontextentity(cp); - } - }; - return Tokenizer; - })(); - exports.default = Tokenizer; - }, - { 'entities/lib/decode.js': 18 }, - ], - 29: [ - function (require, module, exports) { - 'use strict'; - var __createBinding = - (this && this.__createBinding) || - (Object.create - ? function (o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if ( - !desc || - ('get' in desc - ? !m.__esModule - : desc.writable || desc.configurable) - ) { - desc = { - enumerable: true, - get: function () { - return m[k]; - }, - }; - } - Object.defineProperty(o, k2, desc); - } - : function (o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault = - (this && this.__setModuleDefault) || - (Object.create - ? function (o, v) { - Object.defineProperty(o, 'default', { - enumerable: true, - value: v, - }); - } - : function (o, v) { - o['default'] = v; - }); - var __importStar = - (this && this.__importStar) || - function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) - for (var k in mod) - if ( - k !== 'default' && - Object.prototype.hasOwnProperty.call(mod, k) - ) - __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; - }; - var __importDefault = - (this && this.__importDefault) || - function (mod) { - return mod && mod.__esModule ? mod : { 'default': mod }; - }; - Object.defineProperty(exports, '__esModule', { value: true }); - exports.DomUtils = - exports.parseFeed = - exports.getFeed = - exports.ElementType = - exports.Tokenizer = - exports.createDomStream = - exports.parseDOM = - exports.parseDocument = - exports.DefaultHandler = - exports.DomHandler = - exports.Parser = - void 0; - var Parser_js_1 = require('./Parser.js'); - var Parser_js_2 = require('./Parser.js'); - Object.defineProperty(exports, 'Parser', { - enumerable: true, - get: function () { - return Parser_js_2.Parser; - }, - }); - var domhandler_1 = require('domhandler'); - var domhandler_2 = require('domhandler'); - Object.defineProperty(exports, 'DomHandler', { - enumerable: true, - get: function () { - return domhandler_2.DomHandler; - }, - }); - // Old name for DomHandler - Object.defineProperty(exports, 'DefaultHandler', { - enumerable: true, - get: function () { - return domhandler_2.DomHandler; - }, - }); - // Helper methods - /** - * Parses the data, returns the resulting document. - * - * @param data The data that should be parsed. - * @param options Optional options for the parser and DOM builder. - */ - function parseDocument(data, options) { - var handler = new domhandler_1.DomHandler(undefined, options); - new Parser_js_1.Parser(handler, options).end(data); - return handler.root; - } - exports.parseDocument = parseDocument; - /** - * Parses data, returns an array of the root nodes. - * - * Note that the root nodes still have a `Document` node as their parent. - * Use `parseDocument` to get the `Document` node instead. - * - * @param data The data that should be parsed. - * @param options Optional options for the parser and DOM builder. - * @deprecated Use `parseDocument` instead. - */ - function parseDOM(data, options) { - return parseDocument(data, options).children; - } - exports.parseDOM = parseDOM; - /** - * Creates a parser instance, with an attached DOM handler. - * - * @param callback A callback that will be called once parsing has been completed. - * @param options Optional options for the parser and DOM builder. - * @param elementCallback An optional callback that will be called every time a tag has been completed inside of the DOM. - */ - function createDomStream(callback, options, elementCallback) { - var handler = new domhandler_1.DomHandler( - callback, - options, - elementCallback, - ); - return new Parser_js_1.Parser(handler, options); - } - exports.createDomStream = createDomStream; - var Tokenizer_js_1 = require('./Tokenizer.js'); - Object.defineProperty(exports, 'Tokenizer', { - enumerable: true, - get: function () { - return __importDefault(Tokenizer_js_1).default; - }, - }); - /* - * All of the following exports exist for backwards-compatibility. - * They should probably be removed eventually. - */ - exports.ElementType = __importStar(require('domelementtype')); - var domutils_1 = require('domutils'); - var domutils_2 = require('domutils'); - Object.defineProperty(exports, 'getFeed', { - enumerable: true, - get: function () { - return domutils_2.getFeed; - }, - }); - var parseFeedDefaultOptions = { xmlMode: true }; - /** - * Parse a feed. - * - * @param feed The feed that should be parsed, as a string. - * @param options Optionally, options for parsing. When using this, you should set `xmlMode` to `true`. - */ - function parseFeed(feed, options) { - if (options === void 0) { - options = parseFeedDefaultOptions; - } - return (0, domutils_1.getFeed)(parseDOM(feed, options)); - } - exports.parseFeed = parseFeed; - exports.DomUtils = __importStar(require('domutils')); - }, - { - './Parser.js': 27, - './Tokenizer.js': 28, - 'domelementtype': 7, - 'domhandler': 8, - 'domutils': 12, - }, - ], - 30: [ - function (require, module, exports) { - /*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */ - exports.read = function (buffer, offset, isLE, mLen, nBytes) { - var e, m; - var eLen = nBytes * 8 - mLen - 1; - var eMax = (1 << eLen) - 1; - var eBias = eMax >> 1; - var nBits = -7; - var i = isLE ? nBytes - 1 : 0; - var d = isLE ? -1 : 1; - var s = buffer[offset + i]; - - i += d; - - e = s & ((1 << -nBits) - 1); - s >>= -nBits; - nBits += eLen; - for ( - ; - nBits > 0; - e = e * 256 + buffer[offset + i], i += d, nBits -= 8 - ) {} - - m = e & ((1 << -nBits) - 1); - e >>= -nBits; - nBits += mLen; - for ( - ; - nBits > 0; - m = m * 256 + buffer[offset + i], i += d, nBits -= 8 - ) {} - - if (e === 0) { - e = 1 - eBias; - } else if (e === eMax) { - return m ? NaN : (s ? -1 : 1) * Infinity; - } else { - m = m + Math.pow(2, mLen); - e = e - eBias; - } - return (s ? -1 : 1) * m * Math.pow(2, e - mLen); - }; - - exports.write = function (buffer, value, offset, isLE, mLen, nBytes) { - var e, m, c; - var eLen = nBytes * 8 - mLen - 1; - var eMax = (1 << eLen) - 1; - var eBias = eMax >> 1; - var rt = mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0; - var i = isLE ? 0 : nBytes - 1; - var d = isLE ? 1 : -1; - var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0; - - value = Math.abs(value); - - if (isNaN(value) || value === Infinity) { - m = isNaN(value) ? 1 : 0; - e = eMax; - } else { - e = Math.floor(Math.log(value) / Math.LN2); - if (value * (c = Math.pow(2, -e)) < 1) { - e--; - c *= 2; - } - if (e + eBias >= 1) { - value += rt / c; - } else { - value += rt * Math.pow(2, 1 - eBias); - } - if (value * c >= 2) { - e++; - c /= 2; - } - - if (e + eBias >= eMax) { - m = 0; - e = eMax; - } else if (e + eBias >= 1) { - m = (value * c - 1) * Math.pow(2, mLen); - e = e + eBias; - } else { - m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen); - e = 0; - } - } - - for ( - ; - mLen >= 8; - buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8 - ) {} - - e = (e << mLen) | m; - eLen += mLen; - for ( - ; - eLen > 0; - buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8 - ) {} - - buffer[offset + i - d] |= s * 128; - }; - }, - {}, - ], - 31: [ - function (require, module, exports) { - 'use strict'; - - Object.defineProperty(exports, '__esModule', { value: true }); - - /*! + */ "use strict";var t=e("base64-js"),r=e("ieee754");function $(e){if(e>2147483647)throw RangeError('The value "'+e+'" is invalid for option "size"');var t=new Uint8Array(e);return t.__proto__=n.prototype,t}function n(e,t,u){if("number"==typeof e){if("string"==typeof t)throw TypeError('The "string" argument must be of type string. Received type number');return o(e)}return i(e,t,u)}function i(e,t,u){if("string"==typeof e)return function e(t,u){if(("string"!=typeof u||""===u)&&(u="utf8"),!n.isEncoding(u))throw TypeError("Unknown encoding: "+u);var r=0|l(t,u),i=$(r),s=i.write(t,u);return s!==r&&(i=i.slice(0,s)),i}(e,t);if(ArrayBuffer.isView(e))return a(e);if(null==e)throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(M(e,ArrayBuffer)||e&&M(e.buffer,ArrayBuffer))return function e(t,u,r){var $;if(u<0||t.byteLength=2147483647)throw RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+2147483647..toString(16)+" bytes");return 0|e}function l(e,t){if(n.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||M(e,ArrayBuffer))return e.byteLength;if("string"!=typeof e)throw TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);var u=e.length,r=arguments.length>2&&!0===arguments[2];if(!r&&0===u)return 0;for(var $=!1;;)switch(t){case"ascii":case"latin1":case"binary":return u;case"utf8":case"utf-8":return q(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*u;case"hex":return u>>>1;case"base64":return O(e).length;default:if($)return r?-1:q(e).length;t=(""+t).toLowerCase(),$=!0}}function f(e,t,u){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length||((void 0===u||u>this.length)&&(u=this.length),u<=0||(u>>>=0)<=(t>>>=0)))return"";for(e||(e="utf8");;)switch(e){case"hex":return E(this,t,u);case"utf8":case"utf-8":return w(this,t,u);case"ascii":return S(this,t,u);case"latin1":case"binary":return T(this,t,u);case"base64":return v(this,t,u);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return A(this,t,u);default:if(r)throw TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function d(e,t,u){var r=e[t];e[t]=e[u],e[u]=r}function _(e,t,u,r,$){var i;if(0===e.length)return -1;if("string"==typeof u?(r=u,u=0):u>2147483647?u=2147483647:u<-2147483648&&(u=-2147483648),i=u=+u,i!=i&&(u=$?0:e.length-1),u<0&&(u=e.length+u),u>=e.length){if($)return -1;u=e.length-1}else if(u<0){if(!$)return -1;u=0}if("string"==typeof t&&(t=n.from(t,r)),n.isBuffer(t))return 0===t.length?-1:h(e,t,u,r,$);if("number"==typeof t)return(t&=255,"function"==typeof Uint8Array.prototype.indexOf)?$?Uint8Array.prototype.indexOf.call(e,t,u):Uint8Array.prototype.lastIndexOf.call(e,t,u):h(e,[t],u,r,$);throw TypeError("val must be string, number or Buffer")}function h(e,t,u,r,$){var n,i=1,s=e.length,o=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return -1;i=2,s/=2,o/=2,u/=2}function a(e,t){return 1===i?e[t]:e.readUInt16BE(t*i)}if($){var c=-1;for(n=u;ns&&(u=s-o),n=u;n>=0;n--){for(var l=!0,f=0;f$&&(r=$):r=$;var n=t.length;r>n/2&&(r=n/2);for(var i=0;i>8,n=r%256,i.push(n),i.push($);return i}(t,e.length-u),e,u,r)}function v(e,u,r){return 0===u&&r===e.length?t.fromByteArray(e):t.fromByteArray(e.slice(u,r))}function w(e,t,u){u=Math.min(e.length,u);for(var r=[],$=t;$239?4:a>223?3:a>191?2:1;if($+l<=u)switch(l){case 1:a<128&&(c=a);break;case 2:(192&(n=e[$+1]))==128&&(o=(31&a)<<6|63&n)>127&&(c=o);break;case 3:n=e[$+1],i=e[$+2],(192&n)==128&&(192&i)==128&&(o=(15&a)<<12|(63&n)<<6|63&i)>2047&&(o<55296||o>57343)&&(c=o);break;case 4:n=e[$+1],i=e[$+2],s=e[$+3],(192&n)==128&&(192&i)==128&&(192&s)==128&&(o=(15&a)<<18|(63&n)<<12|(63&i)<<6|63&s)>65535&&o<1114112&&(c=o)}null===c?(c=65533,l=1):c>65535&&(c-=65536,r.push(c>>>10&1023|55296),c=56320|1023&c),r.push(c),$+=l}return function e(t){var u=t.length;if(u<=4096)return String.fromCharCode.apply(String,t);for(var r="",$=0;$r)&&(u=r);for(var $="",n=t;nu)throw RangeError("Trying to access beyond buffer length")}function k(e,t,u,r,$,i){if(!n.isBuffer(e))throw TypeError('"buffer" argument must be a Buffer instance');if(t>$||te.length)throw RangeError("Index out of range")}function I(e,t,u,r,$,n){if(u+r>e.length||u<0)throw RangeError("Index out of range")}function N(e,t,u,$,n){return t=+t,u>>>=0,n||I(e,t,u,4,34028234663852886e22,-34028234663852886e22),r.write(e,t,u,$,23,4),u+4}function L(e,t,u,$,n){return t=+t,u>>>=0,n||I(e,t,u,8,17976931348623157e292,-17976931348623157e292),r.write(e,t,u,$,52,8),u+8}u.Buffer=n,u.SlowBuffer=function e(t){return+t!=t&&(t=0),n.alloc(+t)},u.INSPECT_MAX_BYTES=50,u.kMaxLength=2147483647,n.TYPED_ARRAY_SUPPORT=function e(){try{var t=new Uint8Array(1);return t.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===t.foo()}catch(u){return!1}}(),n.TYPED_ARRAY_SUPPORT||"undefined"==typeof console||"function"!=typeof console.error||console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."),Object.defineProperty(n.prototype,"parent",{enumerable:!0,get:function(){if(n.isBuffer(this))return this.buffer}}),Object.defineProperty(n.prototype,"offset",{enumerable:!0,get:function(){if(n.isBuffer(this))return this.byteOffset}}),"undefined"!=typeof Symbol&&null!=Symbol.species&&n[Symbol.species]===n&&Object.defineProperty(n,Symbol.species,{value:null,configurable:!0,enumerable:!1,writable:!1}),n.poolSize=8192,n.from=function(e,t,u){return i(e,t,u)},n.prototype.__proto__=Uint8Array.prototype,n.__proto__=Uint8Array,n.alloc=function(e,t,u){var r,n,i;return r=e,n=t,i=u,(s(r),r<=0)?$(r):void 0!==n?"string"==typeof i?$(r).fill(n,i):$(r).fill(n):$(r)},n.allocUnsafe=function(e){return o(e)},n.allocUnsafeSlow=function(e){return o(e)},n.isBuffer=function e(t){return null!=t&&!0===t._isBuffer&&t!==n.prototype},n.compare=function e(t,u){if(M(t,Uint8Array)&&(t=n.from(t,t.offset,t.byteLength)),M(u,Uint8Array)&&(u=n.from(u,u.offset,u.byteLength)),!n.isBuffer(t)||!n.isBuffer(u))throw TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(t===u)return 0;for(var r=t.length,$=u.length,i=0,s=Math.min(r,$);ir&&(t+=" ... "),""},n.prototype.compare=function e(t,u,r,$,i){if(M(t,Uint8Array)&&(t=n.from(t,t.offset,t.byteLength)),!n.isBuffer(t))throw TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(void 0===u&&(u=0),void 0===r&&(r=t?t.length:0),void 0===$&&($=0),void 0===i&&(i=this.length),u<0||r>t.length||$<0||i>this.length)throw RangeError("out of range index");if($>=i&&u>=r)return 0;if($>=i)return -1;if(u>=r)return 1;if(u>>>=0,r>>>=0,$>>>=0,i>>>=0,this===t)return 0;for(var s=i-$,o=r-u,a=Math.min(s,o),c=this.slice($,i),l=t.slice(u,r),f=0;f>>=0,isFinite(r)?(r>>>=0,void 0===$&&($="utf8")):($=r,r=void 0);else throw Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var n,i,s,o,a=this.length-u;if((void 0===r||r>a)&&(r=a),t.length>0&&(r<0||u<0)||u>this.length)throw RangeError("Attempt to write outside buffer bounds");$||($="utf8");for(var c=!1;;)switch($){case"hex":return p(this,t,u,r);case"utf8":case"utf-8":return b(this,t,u,r);case"ascii":return m(this,t,u,r);case"latin1":case"binary":return n=this,i=t,s=u,m(n,i,s,o=r);case"base64":return x(this,t,u,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return y(this,t,u,r);default:if(c)throw TypeError("Unknown encoding: "+$);$=(""+$).toLowerCase(),c=!0}},n.prototype.toJSON=function e(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}},n.prototype.slice=function e(t,u){var r=this.length;t=~~t,u=void 0===u?r:~~u,t<0?(t+=r)<0&&(t=0):t>r&&(t=r),u<0?(u+=r)<0&&(u=0):u>r&&(u=r),u>>=0,u>>>=0,r||C(t,u,this.length);for(var $=this[t],n=1,i=0;++i>>=0,u>>>=0,r||C(t,u,this.length);for(var $=this[t+--u],n=1;u>0&&(n*=256);)$+=this[t+--u]*n;return $},n.prototype.readUInt8=function e(t,u){return t>>>=0,u||C(t,1,this.length),this[t]},n.prototype.readUInt16LE=function e(t,u){return t>>>=0,u||C(t,2,this.length),this[t]|this[t+1]<<8},n.prototype.readUInt16BE=function e(t,u){return t>>>=0,u||C(t,2,this.length),this[t]<<8|this[t+1]},n.prototype.readUInt32LE=function e(t,u){return t>>>=0,u||C(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},n.prototype.readUInt32BE=function e(t,u){return t>>>=0,u||C(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},n.prototype.readIntLE=function e(t,u,r){t>>>=0,u>>>=0,r||C(t,u,this.length);for(var $=this[t],n=1,i=0;++i=(n*=128)&&($-=Math.pow(2,8*u)),$},n.prototype.readIntBE=function e(t,u,r){t>>>=0,u>>>=0,r||C(t,u,this.length);for(var $=u,n=1,i=this[t+--$];$>0&&(n*=256);)i+=this[t+--$]*n;return i>=(n*=128)&&(i-=Math.pow(2,8*u)),i},n.prototype.readInt8=function e(t,u){return(t>>>=0,u||C(t,1,this.length),128&this[t])?-((255-this[t]+1)*1):this[t]},n.prototype.readInt16LE=function e(t,u){t>>>=0,u||C(t,2,this.length);var r=this[t]|this[t+1]<<8;return 32768&r?4294901760|r:r},n.prototype.readInt16BE=function e(t,u){t>>>=0,u||C(t,2,this.length);var r=this[t+1]|this[t]<<8;return 32768&r?4294901760|r:r},n.prototype.readInt32LE=function e(t,u){return t>>>=0,u||C(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},n.prototype.readInt32BE=function e(t,u){return t>>>=0,u||C(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},n.prototype.readFloatLE=function e(t,u){return t>>>=0,u||C(t,4,this.length),r.read(this,t,!0,23,4)},n.prototype.readFloatBE=function e(t,u){return t>>>=0,u||C(t,4,this.length),r.read(this,t,!1,23,4)},n.prototype.readDoubleLE=function e(t,u){return t>>>=0,u||C(t,8,this.length),r.read(this,t,!0,52,8)},n.prototype.readDoubleBE=function e(t,u){return t>>>=0,u||C(t,8,this.length),r.read(this,t,!1,52,8)},n.prototype.writeUIntLE=function e(t,u,r,$){if(t=+t,u>>>=0,r>>>=0,!$){var n=Math.pow(2,8*r)-1;k(this,t,u,r,n,0)}var i=1,s=0;for(this[u]=255&t;++s>>=0,r>>>=0,!$){var n=Math.pow(2,8*r)-1;k(this,t,u,r,n,0)}var i=r-1,s=1;for(this[u+i]=255&t;--i>=0&&(s*=256);)this[u+i]=t/s&255;return u+r},n.prototype.writeUInt8=function e(t,u,r){return t=+t,u>>>=0,r||k(this,t,u,1,255,0),this[u]=255&t,u+1},n.prototype.writeUInt16LE=function e(t,u,r){return t=+t,u>>>=0,r||k(this,t,u,2,65535,0),this[u]=255&t,this[u+1]=t>>>8,u+2},n.prototype.writeUInt16BE=function e(t,u,r){return t=+t,u>>>=0,r||k(this,t,u,2,65535,0),this[u]=t>>>8,this[u+1]=255&t,u+2},n.prototype.writeUInt32LE=function e(t,u,r){return t=+t,u>>>=0,r||k(this,t,u,4,4294967295,0),this[u+3]=t>>>24,this[u+2]=t>>>16,this[u+1]=t>>>8,this[u]=255&t,u+4},n.prototype.writeUInt32BE=function e(t,u,r){return t=+t,u>>>=0,r||k(this,t,u,4,4294967295,0),this[u]=t>>>24,this[u+1]=t>>>16,this[u+2]=t>>>8,this[u+3]=255&t,u+4},n.prototype.writeIntLE=function e(t,u,r,$){if(t=+t,u>>>=0,!$){var n=Math.pow(2,8*r-1);k(this,t,u,r,n-1,-n)}var i=0,s=1,o=0;for(this[u]=255&t;++i>0)-o&255;return u+r},n.prototype.writeIntBE=function e(t,u,r,$){if(t=+t,u>>>=0,!$){var n=Math.pow(2,8*r-1);k(this,t,u,r,n-1,-n)}var i=r-1,s=1,o=0;for(this[u+i]=255&t;--i>=0&&(s*=256);)t<0&&0===o&&0!==this[u+i+1]&&(o=1),this[u+i]=(t/s>>0)-o&255;return u+r},n.prototype.writeInt8=function e(t,u,r){return t=+t,u>>>=0,r||k(this,t,u,1,127,-128),t<0&&(t=255+t+1),this[u]=255&t,u+1},n.prototype.writeInt16LE=function e(t,u,r){return t=+t,u>>>=0,r||k(this,t,u,2,32767,-32768),this[u]=255&t,this[u+1]=t>>>8,u+2},n.prototype.writeInt16BE=function e(t,u,r){return t=+t,u>>>=0,r||k(this,t,u,2,32767,-32768),this[u]=t>>>8,this[u+1]=255&t,u+2},n.prototype.writeInt32LE=function e(t,u,r){return t=+t,u>>>=0,r||k(this,t,u,4,2147483647,-2147483648),this[u]=255&t,this[u+1]=t>>>8,this[u+2]=t>>>16,this[u+3]=t>>>24,u+4},n.prototype.writeInt32BE=function e(t,u,r){return t=+t,u>>>=0,r||k(this,t,u,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[u]=t>>>24,this[u+1]=t>>>16,this[u+2]=t>>>8,this[u+3]=255&t,u+4},n.prototype.writeFloatLE=function e(t,u,r){return N(this,t,u,!0,r)},n.prototype.writeFloatBE=function e(t,u,r){return N(this,t,u,!1,r)},n.prototype.writeDoubleLE=function e(t,u,r){return L(this,t,u,!0,r)},n.prototype.writeDoubleBE=function e(t,u,r){return L(this,t,u,!1,r)},n.prototype.copy=function e(t,u,r,$){if(!n.isBuffer(t))throw TypeError("argument should be a Buffer");if(r||(r=0),$||0===$||($=this.length),u>=t.length&&(u=t.length),u||(u=0),$>0&&$=this.length)throw RangeError("Index out of range");if($<0)throw RangeError("sourceEnd out of bounds");$>this.length&&($=this.length),t.length-u<$-r&&($=t.length-u+r);var i=$-r;if(this===t&&"function"==typeof Uint8Array.prototype.copyWithin)this.copyWithin(u,r,$);else if(this===t&&r=0;--s)t[s+u]=this[s+r];else Uint8Array.prototype.set.call(t,this.subarray(r,$),u);return i},n.prototype.fill=function e(t,u,r,$){if("string"==typeof t){if("string"==typeof u?($=u,u=0,r=this.length):"string"==typeof r&&($=r,r=this.length),void 0!==$&&"string"!=typeof $)throw TypeError("encoding must be a string");if("string"==typeof $&&!n.isEncoding($))throw TypeError("Unknown encoding: "+$);if(1===t.length){var i,s=t.charCodeAt(0);("utf8"===$&&s<128||"latin1"===$)&&(t=s)}}else"number"==typeof t&&(t&=255);if(u<0||this.length>>=0,r=void 0===r?this.length:r>>>0,t||(t=0),"number"==typeof t)for(i=u;i55295&&u<57344){if(!$){if(u>56319||i+1===r){(t-=3)>-1&&n.push(239,191,189);continue}$=u;continue}if(u<56320){(t-=3)>-1&&n.push(239,191,189),$=u;continue}u=($-55296<<10|u-56320)+65536}else $&&(t-=3)>-1&&n.push(239,191,189);if($=null,u<128){if((t-=1)<0)break;n.push(u)}else if(u<2048){if((t-=2)<0)break;n.push(u>>6|192,63&u|128)}else if(u<65536){if((t-=3)<0)break;n.push(u>>12|224,u>>6&63|128,63&u|128)}else if(u<1114112){if((t-=4)<0)break;n.push(u>>18|240,u>>12&63|128,u>>6&63|128,63&u|128)}else throw Error("Invalid code point")}return n}function O(e){return t.toByteArray(function e(t){if((t=(t=t.split("=")[0]).trim().replace(P,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(e))}function B(e,t,u,r){for(var $=0;$=t.length)&&!($>=e.length);++$)t[$+u]=e[$];return $}function M(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function R(e){return e!=e}}).call(this)}).call(this,e("buffer").Buffer)},{"base64-js":1,buffer:3,ieee754:30},],4:[function(e,t,u){"use strict";var r=function e(t){var u,r,n,i;return u=t,!!u&&"object"==typeof u&&(r=t,n=Object.prototype.toString.call(r),"[object RegExp]"!==n&&"[object Date]"!==n&&(i=r,i.$$typeof!==$))},$="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function n(e,t){var u;return!1!==t.clone&&t.isMergeableObject(e)?a(Array.isArray(u=e)?[]:{},e,t):e}function i(e,t,u){return e.concat(t).map(function(e){return n(e,u)})}function s(e){var t;return Object.keys(e).concat((t=e,Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(t).filter(function(e){return Object.propertyIsEnumerable.call(t,e)}):[]))}function o(e,t){try{return t in e}catch(u){return!1}}function a(e,t,u){(u=u||{}).arrayMerge=u.arrayMerge||i,u.isMergeableObject=u.isMergeableObject||r,u.cloneUnlessOtherwiseSpecified=n;var $,c,l,f,d,_=Array.isArray(t);return _!==Array.isArray(e)?n(t,u):_?u.arrayMerge(e,t,u):($=e,c=t,f={},(l=u).isMergeableObject($)&&s($).forEach(function(e){f[e]=n($[e],l)}),s(c).forEach(function(e){var t,u;t=$,(!o(t,u=e)||Object.hasOwnProperty.call(t,u)&&Object.propertyIsEnumerable.call(t,u))&&(o($,e)&&l.isMergeableObject(c[e])?f[e]=(function e(t,u){if(!u.customMerge)return a;var r=u.customMerge(t);return"function"==typeof r?r:a})(e,l)($[e],c[e],l):f[e]=n(c[e],l))}),f)}a.all=function e(t,u){if(!Array.isArray(t))throw Error("first argument should be an array");return t.reduce(function(e,t){return a(e,t,u)},{})},t.exports=a},{},],5:[function(e,t,u){"use strict";Object.defineProperty(u,"__esModule",{value:!0}),u.attributeNames=u.elementNames=void 0,u.elementNames=new Map(["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath",].map(function(e){return[e.toLowerCase(),e]})),u.attributeNames=new Map(["definitionURL","attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","diffuseConstant","edgeMode","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan",].map(function(e){return[e.toLowerCase(),e]}))},{},],6:[function(e,t,u){"use strict";var r=this&&this.__assign||function(){return(r=Object.assign||function(e){for(var t,u=1,r=arguments.length;u");case s.Comment:return $=e,"");case s.CDATA:return n=e,"");case s.Script:case s.Style:case s.Tag:return i=e,_=t,"foreign"===_.xmlMode&&(i.name=null!==(b=a.elementNames.get(i.name))&&void 0!==b?b:i.name,i.parent&&h.has(i.parent.name)&&(_=r(r({},_),{xmlMode:!1}))),!_.xmlMode&&p.has(i.name)&&(_=r(r({},_),{xmlMode:"foreign"})),m="<".concat(i.name),g=function e(t,u){if(t){var r,$=(null!==(r=u.encodeEntities)&&void 0!==r?r:u.decodeEntities)===!1?l:u.xmlMode||"utf8"!==u.encodeEntities?o.encodeXML:o.escapeAttribute;return Object.keys(t).map(function(e){var r,n,i=null!==(r=t[e])&&void 0!==r?r:"";return("foreign"===u.xmlMode&&(e=null!==(n=a.attributeNames.get(e))&&void 0!==n?n:e),u.emptyAttrs||u.xmlMode||""!==i)?"".concat(e,'="').concat($(i),'"'):e}).join(" ")}}(i.attribs,_),g&&(m+=" ".concat(g)),0===i.children.length&&(_.xmlMode?!1!==_.selfClosingTags:_.selfClosingTags&&f.has(i.name))?(_.xmlMode||(m+=" "),m+="/>"):(m+=">",i.children.length>0&&(m+=d(i.children,_)),(_.xmlMode||!f.has(i.name))&&(m+=""))),m;case s.Text:return x=e,y=t,w=x.data||"",(null!==(v=y.encodeEntities)&&void 0!==v?v:y.decodeEntities)===!1||!y.xmlMode&&x.parent&&c.has(x.parent.name)||(w=y.xmlMode||"utf8"!==y.encodeEntities?(0,o.encodeXML)(w):(0,o.escapeText)(w)),w}}u.render=d,u.default=d;var h=new Set(["mi","mo","mn","ms","mtext","annotation-xml","foreignObject","desc","title",]),p=new Set(["svg","math"])},{"./foreignNames.js":5,domelementtype:7,entities:25},],7:[function(e,t,u){"use strict";var r,$;Object.defineProperty(u,"__esModule",{value:!0}),u.Doctype=u.CDATA=u.Tag=u.Style=u.Script=u.Comment=u.Directive=u.Text=u.Root=u.isTag=u.ElementType=void 0,($=r=u.ElementType||(u.ElementType={})).Root="root",$.Text="text",$.Directive="directive",$.Comment="comment",$.Script="script",$.Style="style",$.Tag="tag",$.CDATA="cdata",$.Doctype="doctype",u.isTag=function e(t){return t.type===r.Tag||t.type===r.Script||t.type===r.Style},u.Root=r.Root,u.Text=r.Text,u.Directive=r.Directive,u.Comment=r.Comment,u.Script=r.Script,u.Style=r.Style,u.Tag=r.Tag,u.CDATA=r.CDATA,u.Doctype=r.Doctype},{},],8:[function(e,t,u){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,u,r){void 0===r&&(r=u);var $=Object.getOwnPropertyDescriptor(t,u);(!$||("get"in $?!t.__esModule:$.writable||$.configurable))&&($={enumerable:!0,get:function(){return t[u]}}),Object.defineProperty(e,r,$)}:function(e,t,u,r){void 0===r&&(r=u),e[r]=t[u]}),$=this&&this.__exportStar||function(e,t){for(var u in e)"default"===u||Object.prototype.hasOwnProperty.call(t,u)||r(t,e,u)};Object.defineProperty(u,"__esModule",{value:!0}),u.DomHandler=void 0;var n=e("domelementtype"),i=e("./node.js");$(e("./node.js"),u);var s={withStartIndices:!1,withEndIndices:!1,xmlMode:!1},o=function(){function e(e,t,u){this.dom=[],this.root=new i.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null,"function"==typeof t&&(u=t,t=s),"object"==typeof e&&(t=e,e=void 0),this.callback=null!=e?e:null,this.options=null!=t?t:s,this.elementCB=null!=u?u:null}return e.prototype.onparserinit=function(e){this.parser=e},e.prototype.onreset=function(){this.dom=[],this.root=new i.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null},e.prototype.onend=function(){this.done||(this.done=!0,this.parser=null,this.handleCallback(null))},e.prototype.onerror=function(e){this.handleCallback(e)},e.prototype.onclosetag=function(){this.lastNode=null;var e=this.tagStack.pop();this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),this.elementCB&&this.elementCB(e)},e.prototype.onopentag=function(e,t){var u=this.options.xmlMode?n.ElementType.Tag:void 0,r=new i.Element(e,t,void 0,u);this.addNode(r),this.tagStack.push(r)},e.prototype.ontext=function(e){var t=this.lastNode;if(t&&t.type===n.ElementType.Text)t.data+=e,this.options.withEndIndices&&(t.endIndex=this.parser.endIndex);else{var u=new i.Text(e);this.addNode(u),this.lastNode=u}},e.prototype.oncomment=function(e){if(this.lastNode&&this.lastNode.type===n.ElementType.Comment){this.lastNode.data+=e;return}var t=new i.Comment(e);this.addNode(t),this.lastNode=t},e.prototype.oncommentend=function(){this.lastNode=null},e.prototype.oncdatastart=function(){var e=new i.Text(""),t=new i.CDATA([e]);this.addNode(t),e.parent=t,this.lastNode=e},e.prototype.oncdataend=function(){this.lastNode=null},e.prototype.onprocessinginstruction=function(e,t){var u=new i.ProcessingInstruction(e,t);this.addNode(u)},e.prototype.handleCallback=function(e){if("function"==typeof this.callback)this.callback(e,this.dom);else if(e)throw e},e.prototype.addNode=function(e){var t=this.tagStack[this.tagStack.length-1],u=t.children[t.children.length-1];this.options.withStartIndices&&(e.startIndex=this.parser.startIndex),this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),t.children.push(e),u&&(e.prev=u,u.next=e),e.parent=t,this.lastNode=null},e}();u.DomHandler=o,u.default=o},{"./node.js":9,domelementtype:7},],9:[function(e,t,u){"use strict";var r,$=this&&this.__extends||(r=function(e,t){return(r=Object.setPrototypeOf||({__proto__:[]})instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var u in t)Object.prototype.hasOwnProperty.call(t,u)&&(e[u]=t[u])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw TypeError("Class extends value "+String(t)+" is not a constructor or null");function u(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(u.prototype=t.prototype,new u)}),n=this&&this.__assign||function(){return(n=Object.assign||function(e){for(var t,u=1,r=arguments.length;u0?this.children[this.children.length-1]:null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"childNodes",{get:function(){return this.children},set:function(e){this.children=e},enumerable:!1,configurable:!0}),t}(s);u.NodeWithChildren=f;var d=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=i.ElementType.CDATA,t}return $(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 4},enumerable:!1,configurable:!0}),t}(f);u.CDATA=d;var _=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=i.ElementType.Root,t}return $(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 9},enumerable:!1,configurable:!0}),t}(f);u.Document=_;var h=function(e){function t(t,u,r,$){void 0===r&&(r=[]),void 0===$&&($="script"===t?i.ElementType.Script:"style"===t?i.ElementType.Style:i.ElementType.Tag);var n=e.call(this,r)||this;return n.name=t,n.attribs=u,n.type=$,n}return $(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 1},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"tagName",{get:function(){return this.name},set:function(e){this.name=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"attributes",{get:function(){var e=this;return Object.keys(this.attribs).map(function(t){var u,r;return{name:t,value:e.attribs[t],namespace:null===(u=e["x-attribsNamespace"])||void 0===u?void 0:u[t],prefix:null===(r=e["x-attribsPrefix"])||void 0===r?void 0:r[t]}})},enumerable:!1,configurable:!0}),t}(f);function p(e){return(0,i.isTag)(e)}function b(e){return e.type===i.ElementType.CDATA}function m(e){return e.type===i.ElementType.Text}function g(e){return e.type===i.ElementType.Comment}function x(e){return e.type===i.ElementType.Directive}function y(e){return e.type===i.ElementType.Root}function v(e,t){if(void 0===t&&(t=!1),m(e))u=new a(e.data);else if(g(e))u=new c(e.data);else if(p(e)){var u,r=t?w(e.children):[],$=new h(e.name,n({},e.attribs),r);r.forEach(function(e){return e.parent=$}),null!=e.namespace&&($.namespace=e.namespace),e["x-attribsNamespace"]&&($["x-attribsNamespace"]=n({},e["x-attribsNamespace"])),e["x-attribsPrefix"]&&($["x-attribsPrefix"]=n({},e["x-attribsPrefix"])),u=$}else if(b(e)){var r=t?w(e.children):[],i=new d(r);r.forEach(function(e){return e.parent=i}),u=i}else if(y(e)){var r=t?w(e.children):[],s=new _(r);r.forEach(function(e){return e.parent=s}),e["x-mode"]&&(s["x-mode"]=e["x-mode"]),u=s}else if(x(e)){var o=new l(e.name,e.data);null!=e["x-name"]&&(o["x-name"]=e["x-name"],o["x-publicId"]=e["x-publicId"],o["x-systemId"]=e["x-systemId"]),u=o}else throw Error("Not implemented yet: ".concat(e.type));return u.startIndex=e.startIndex,u.endIndex=e.endIndex,null!=e.sourceCodeLocation&&(u.sourceCodeLocation=e.sourceCodeLocation),u}function w(e){for(var t=e.map(function(e){return v(e,!0)}),u=1;uc.indexOf(f)?a===t?r.FOLLOWING|r.CONTAINED_BY:r.FOLLOWING:a===e?r.PRECEDING|r.CONTAINS:r.PRECEDING}u.removeSubsets=function e(t){for(var u=t.length;--u>=0;){var r=t[u];if(u>0&&t.lastIndexOf(r,u-1)>=0){t.splice(u,1);continue}for(var $=r.parent;$;$=$.parent)if(t.includes($)){t.splice(u,1);break}}return t},($=r=u.DocumentPosition||(u.DocumentPosition={}))[$.DISCONNECTED=1]="DISCONNECTED",$[$.PRECEDING=2]="PRECEDING",$[$.FOLLOWING=4]="FOLLOWING",$[$.CONTAINS=8]="CONTAINS",$[$.CONTAINED_BY=16]="CONTAINED_BY",u.compareDocumentPosition=i,u.uniqueSort=function e(t){return(t=t.filter(function(e,t,u){return!u.includes(e,t+1)})).sort(function(e,t){var u=i(e,t);return u&r.PRECEDING?-1:u&r.FOLLOWING?1:0}),t}},{domhandler:8},],12:[function(e,t,u){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,u,r){void 0===r&&(r=u);var $=Object.getOwnPropertyDescriptor(t,u);(!$||("get"in $?!t.__esModule:$.writable||$.configurable))&&($={enumerable:!0,get:function(){return t[u]}}),Object.defineProperty(e,r,$)}:function(e,t,u,r){void 0===r&&(r=u),e[r]=t[u]}),$=this&&this.__exportStar||function(e,t){for(var u in e)"default"===u||Object.prototype.hasOwnProperty.call(t,u)||r(t,e,u)};Object.defineProperty(u,"__esModule",{value:!0}),u.hasChildren=u.isDocument=u.isComment=u.isText=u.isCDATA=u.isTag=void 0,$(e("./stringify.js"),u),$(e("./traversal.js"),u),$(e("./manipulation.js"),u),$(e("./querying.js"),u),$(e("./legacy.js"),u),$(e("./helpers.js"),u),$(e("./feeds.js"),u);var n=e("domhandler");Object.defineProperty(u,"isTag",{enumerable:!0,get:function(){return n.isTag}}),Object.defineProperty(u,"isCDATA",{enumerable:!0,get:function(){return n.isCDATA}}),Object.defineProperty(u,"isText",{enumerable:!0,get:function(){return n.isText}}),Object.defineProperty(u,"isComment",{enumerable:!0,get:function(){return n.isComment}}),Object.defineProperty(u,"isDocument",{enumerable:!0,get:function(){return n.isDocument}}),Object.defineProperty(u,"hasChildren",{enumerable:!0,get:function(){return n.hasChildren}})},{"./feeds.js":10,"./helpers.js":11,"./legacy.js":13,"./manipulation.js":14,"./querying.js":15,"./stringify.js":16,"./traversal.js":17,domhandler:8},],13:[function(e,t,u){"use strict";Object.defineProperty(u,"__esModule",{value:!0}),u.getElementsByTagType=u.getElementsByTagName=u.getElementById=u.getElements=u.testElement=void 0;var r=e("domhandler"),$=e("./querying.js"),n={tag_name:function(e){return"function"==typeof e?function(t){return(0,r.isTag)(t)&&e(t.name)}:"*"===e?r.isTag:function(t){return(0,r.isTag)(t)&&t.name===e}},tag_type:function(e){return"function"==typeof e?function(t){return e(t.type)}:function(t){return t.type===e}},tag_contains:function(e){return"function"==typeof e?function(t){return(0,r.isText)(t)&&e(t.data)}:function(t){return(0,r.isText)(t)&&t.data===e}}};function i(e,t){return"function"==typeof t?function(u){return(0,r.isTag)(u)&&t(u.attribs[e])}:function(u){return(0,r.isTag)(u)&&u.attribs[e]===t}}function s(e,t){return function(u){return e(u)||t(u)}}function o(e){var t=Object.keys(e).map(function(t){var u=e[t];return Object.prototype.hasOwnProperty.call(n,t)?n[t](u):i(t,u)});return 0===t.length?null:t.reduce(s)}u.testElement=function e(t,u){var r=o(t);return!r||r(u)},u.getElements=function e(t,u,r,n){void 0===n&&(n=1/0);var i=o(t);return i?(0,$.filter)(i,u,r,n):[]},u.getElementById=function e(t,u,r){return void 0===r&&(r=!0),Array.isArray(u)||(u=[u]),(0,$.findOne)(i("id",t),u,r)},u.getElementsByTagName=function e(t,u,r,i){return void 0===r&&(r=!0),void 0===i&&(i=1/0),(0,$.filter)(n.tag_name(t),u,r,i)},u.getElementsByTagType=function e(t,u,r,i){return void 0===r&&(r=!0),void 0===i&&(i=1/0),(0,$.filter)(n.tag_type(t),u,r,i)}},{"./querying.js":15,domhandler:8},],14:[function(e,t,u){"use strict";function r(e){if(e.prev&&(e.prev.next=e.next),e.next&&(e.next.prev=e.prev),e.parent){var t=e.parent.children,u=t.lastIndexOf(e);u>=0&&t.splice(u,1)}e.next=null,e.prev=null,e.parent=null}Object.defineProperty(u,"__esModule",{value:!0}),u.prepend=u.prependChild=u.append=u.appendChild=u.replaceElement=u.removeElement=void 0,u.removeElement=r,u.replaceElement=function e(t,u){var r=u.prev=t.prev;r&&(r.next=u);var $=u.next=t.next;$&&($.prev=u);var n=u.parent=t.parent;if(n){var i=n.children;i[i.lastIndexOf(t)]=u,t.parent=null}},u.appendChild=function e(t,u){if(r(u),u.next=null,u.parent=t,t.children.push(u)>1){var $=t.children[t.children.length-2];$.next=u,u.prev=$}else u.prev=null},u.append=function e(t,u){r(u);var $=t.parent,n=t.next;if(u.next=n,u.prev=t,t.next=u,u.parent=$,n){if(n.prev=u,$){var i=$.children;i.splice(i.lastIndexOf(n),0,u)}}else $&&$.children.push(u)},u.prependChild=function e(t,u){if(r(u),u.parent=t,u.prev=null,1!==t.children.unshift(u)){var $=t.children[1];$.prev=u,u.next=$}else u.next=null},u.prepend=function e(t,u){r(u);var $=t.parent;if($){var n=$.children;n.splice(n.indexOf(t),0,u)}t.prev&&(t.prev.next=u),u.parent=$,u.prev=t.prev,u.next=t,t.prev=u}},{},],15:[function(e,t,u){"use strict";Object.defineProperty(u,"__esModule",{value:!0}),u.findAll=u.existsOne=u.findOne=u.findOneChild=u.find=u.filter=void 0;var r=e("domhandler");function $(e,t,u,$){for(var n=[],i=[t],s=[0];;){if(s[0]>=i[0].length){if(1===s.length)return n;i.shift(),s.shift();continue}var o=i[0][s[0]++];if(e(o)&&(n.push(o),--$<=0))return n;u&&(0,r.hasChildren)(o)&&o.children.length>0&&(s.unshift(0),i.unshift(o.children))}}u.filter=function e(t,u,r,n){return void 0===r&&(r=!0),void 0===n&&(n=1/0),$(t,Array.isArray(u)?u:[u],r,n)},u.find=$,u.findOneChild=function e(t,u){return u.find(t)},u.findOne=function e(t,u,$){void 0===$&&($=!0);for(var n=null,i=0;i0&&(n=e(t,s.children,!0)))}return n},u.existsOne=function e(t,u){return u.some(function(u){return(0,r.isTag)(u)&&(t(u)||e(t,u.children))})},u.findAll=function e(t,u){for(var $=[],n=[u],i=[0];;){if(i[0]>=n[0].length){if(1===n.length)return $;n.shift(),i.shift();continue}var s=n[0][i[0]++];(0,r.isTag)(s)&&(t(s)&&$.push(s),s.children.length>0&&(i.unshift(0),n.unshift(s.children)))}}},{domhandler:8},],16:[function(e,t,u){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(u,"__esModule",{value:!0}),u.innerText=u.textContent=u.getText=u.getInnerHTML=u.getOuterHTML=void 0;var $=e("domhandler"),n=r(e("dom-serializer")),i=e("domelementtype");function s(e,t){return(0,n.default)(e,t)}u.getOuterHTML=s,u.getInnerHTML=function e(t,u){return(0,$.hasChildren)(t)?t.children.map(function(e){return s(e,u)}).join(""):""},u.getText=function e(t){return Array.isArray(t)?t.map(e).join(""):(0,$.isTag)(t)?"br"===t.name?"\n":e(t.children):(0,$.isCDATA)(t)?e(t.children):(0,$.isText)(t)?t.data:""},u.textContent=function e(t){return Array.isArray(t)?t.map(e).join(""):(0,$.hasChildren)(t)&&!(0,$.isComment)(t)?e(t.children):(0,$.isText)(t)?t.data:""},u.innerText=function e(t){return Array.isArray(t)?t.map(e).join(""):(0,$.hasChildren)(t)&&(t.type===i.ElementType.Tag||(0,$.isCDATA)(t))?e(t.children):(0,$.isText)(t)?t.data:""}},{"dom-serializer":6,domelementtype:7,domhandler:8},],17:[function(e,t,u){"use strict";Object.defineProperty(u,"__esModule",{value:!0}),u.prevElementSibling=u.nextElementSibling=u.getName=u.hasAttrib=u.getAttributeValue=u.getSiblings=u.getParent=u.getChildren=void 0;var r=e("domhandler");function $(e){return(0,r.hasChildren)(e)?e.children:[]}function n(e){return e.parent||null}u.getChildren=$,u.getParent=n,u.getSiblings=function e(t){var u,r,i=n(t);if(null!=i)return $(i);for(var s=[t],o=t.prev,a=t.next;null!=o;)s.unshift(o),o=(u=o).prev;for(;null!=a;)s.push(a),a=(r=a).next;return s},u.getAttributeValue=function e(t,u){var r;return null===(r=t.attribs)||void 0===r?void 0:r[u]},u.hasAttrib=function e(t,u){return null!=t.attribs&&Object.prototype.hasOwnProperty.call(t.attribs,u)&&null!=t.attribs[u]},u.getName=function e(t){return t.name},u.nextElementSibling=function e(t){for(var u,$=t.next;null!==$&&!(0,r.isTag)($);)$=(u=$).next;return $},u.prevElementSibling=function e(t){for(var u,$=t.prev;null!==$&&!(0,r.isTag)($);)$=(u=$).prev;return $}},{domhandler:8},],18:[function(e,t,u){"use strict";var r,$,n,i,s,o,a,c=this&&this.__createBinding||(Object.create?function(e,t,u,r){void 0===r&&(r=u);var $=Object.getOwnPropertyDescriptor(t,u);(!$||("get"in $?!t.__esModule:$.writable||$.configurable))&&($={enumerable:!0,get:function(){return t[u]}}),Object.defineProperty(e,r,$)}:function(e,t,u,r){void 0===r&&(r=u),e[r]=t[u]}),l=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),f=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var u in e)"default"!==u&&Object.prototype.hasOwnProperty.call(e,u)&&c(t,e,u);return l(t,e),t},d=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(u,"__esModule",{value:!0}),u.decodeXML=u.decodeHTMLStrict=u.decodeHTMLAttribute=u.decodeHTML=u.determineBranch=u.EntityDecoder=u.DecodingMode=u.BinTrieFlags=u.fromCodePoint=u.replaceCodePoint=u.decodeCodePoint=u.xmlDecodeTree=u.htmlDecodeTree=void 0;var _=d(e("./generated/decode-data-html.js"));u.htmlDecodeTree=_.default;var h=d(e("./generated/decode-data-xml.js"));u.xmlDecodeTree=h.default;var p=f(e("./decode_codepoint.js"));u.decodeCodePoint=p.default;var b,m=e("./decode_codepoint.js");function g(e){return e>=i.ZERO&&e<=i.NINE}function x(e){return e>=i.UPPER_A&&e<=i.UPPER_F||e>=i.LOWER_A&&e<=i.LOWER_F}function y(e){var t;return e===i.EQUALS||(t=e)>=i.UPPER_A&&t<=i.UPPER_Z||t>=i.LOWER_A&&t<=i.LOWER_Z||g(t)}Object.defineProperty(u,"replaceCodePoint",{enumerable:!0,get:function(){return m.replaceCodePoint}}),Object.defineProperty(u,"fromCodePoint",{enumerable:!0,get:function(){return m.fromCodePoint}}),(b=i||(i={}))[b.NUM=35]="NUM",b[b.SEMI=59]="SEMI",b[b.EQUALS=61]="EQUALS",b[b.ZERO=48]="ZERO",b[b.NINE=57]="NINE",b[b.LOWER_A=97]="LOWER_A",b[b.LOWER_F=102]="LOWER_F",b[b.LOWER_X=120]="LOWER_X",b[b.LOWER_Z=122]="LOWER_Z",b[b.UPPER_A=65]="UPPER_A",b[b.UPPER_F=70]="UPPER_F",b[b.UPPER_Z=90]="UPPER_Z",(r=s=u.BinTrieFlags||(u.BinTrieFlags={}))[r.VALUE_LENGTH=49152]="VALUE_LENGTH",r[r.BRANCH_LENGTH=16256]="BRANCH_LENGTH",r[r.JUMP_TABLE=127]="JUMP_TABLE",($=o||(o={}))[$.EntityStart=0]="EntityStart",$[$.NumericStart=1]="NumericStart",$[$.NumericDecimal=2]="NumericDecimal",$[$.NumericHex=3]="NumericHex",$[$.NamedEntity=4]="NamedEntity",(n=a=u.DecodingMode||(u.DecodingMode={}))[n.Legacy=0]="Legacy",n[n.Strict=1]="Strict",n[n.Attribute=2]="Attribute";var v=function(){function e(e,t,u){this.decodeTree=e,this.emitCodePoint=t,this.errors=u,this.state=o.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=a.Strict}return e.prototype.startEntity=function(e){this.decodeMode=e,this.state=o.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1},e.prototype.write=function(e,t){switch(this.state){case o.EntityStart:if(e.charCodeAt(t)===i.NUM)return this.state=o.NumericStart,this.consumed+=1,this.stateNumericStart(e,t+1);return this.state=o.NamedEntity,this.stateNamedEntity(e,t);case o.NumericStart:return this.stateNumericStart(e,t);case o.NumericDecimal:return this.stateNumericDecimal(e,t);case o.NumericHex:return this.stateNumericHex(e,t);case o.NamedEntity:return this.stateNamedEntity(e,t)}},e.prototype.stateNumericStart=function(e,t){return t>=e.length?-1:(32|e.charCodeAt(t))===i.LOWER_X?(this.state=o.NumericHex,this.consumed+=1,this.stateNumericHex(e,t+1)):(this.state=o.NumericDecimal,this.stateNumericDecimal(e,t))},e.prototype.addToNumericResult=function(e,t,u,r){if(t!==u){var $=u-t;this.result=this.result*Math.pow(r,$)+parseInt(e.substr(t,$),r),this.consumed+=$}},e.prototype.stateNumericHex=function(e,t){for(var u=t;t>14;t>14)){if(n===i.SEMI)return this.emitNamedEntityData(this.treeIndex,$,this.consumed+this.excess);this.decodeMode!==a.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return -1},e.prototype.emitNotTerminatedNamedEntity=function(){var e,t=this.result,u=(this.decodeTree[t]&s.VALUE_LENGTH)>>14;return this.emitNamedEntityData(t,u,this.consumed),null===(e=this.errors)||void 0===e||e.missingSemicolonAfterCharacterReference(),this.consumed},e.prototype.emitNamedEntityData=function(e,t,u){var r=this.decodeTree;return this.emitCodePoint(1===t?r[e]&~s.VALUE_LENGTH:r[e+1],u),3===t&&this.emitCodePoint(r[e+2],u),u},e.prototype.end=function(){var e;switch(this.state){case o.NamedEntity:return 0!==this.result&&(this.decodeMode!==a.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case o.NumericDecimal:return this.emitNumericEntity(0,2);case o.NumericHex:return this.emitNumericEntity(0,3);case o.NumericStart:return null===(e=this.errors)||void 0===e||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case o.EntityStart:return 0}},e}();function w(e){var t="",u=new v(e,function(e){return t+=(0,p.fromCodePoint)(e)});return function e(r,$){for(var n=0,i=0;(i=r.indexOf("&",i))>=0;){t+=r.slice(n,i),u.startEntity($);var s=u.write(r,i+1);if(s<0){n=i+u.end();break}n=i+s,i=0===s?n+1:n}var o=t+r.slice(n);return t="",o}}function S(e,t,u,r){var $=(t&s.BRANCH_LENGTH)>>7,n=t&s.JUMP_TABLE;if(0===$)return 0!==n&&r===n?u:-1;if(n){var i=r-n;return i<0||i>=$?-1:e[u+i]-1}for(var o=u,a=o+$-1;o<=a;){var c=o+a>>>1,l=e[c];if(lr))return e[c+$];a=c-1}}return -1}u.EntityDecoder=v,u.determineBranch=S;var T=w(_.default),E=w(h.default);u.decodeHTML=function e(t,u){return void 0===u&&(u=a.Legacy),T(t,u)},u.decodeHTMLAttribute=function e(t){return T(t,a.Attribute)},u.decodeHTMLStrict=function e(t){return T(t,a.Strict)},u.decodeXML=function e(t){return E(t,a.Strict)}},{"./decode_codepoint.js":19,"./generated/decode-data-html.js":22,"./generated/decode-data-xml.js":23},],19:[function(e,t,u){"use strict";Object.defineProperty(u,"__esModule",{value:!0}),u.replaceCodePoint=u.fromCodePoint=void 0;var r,$=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376],]);function n(e){var t;return e>=55296&&e<=57343||e>1114111?65533:null!==(t=$.get(e))&&void 0!==t?t:e}u.fromCodePoint=null!==(r=String.fromCodePoint)&&void 0!==r?r:function(e){var t="";return e>65535&&(e-=65536,t+=String.fromCharCode(e>>>10&1023|55296),e=56320|1023&e),t+=String.fromCharCode(e)},u.replaceCodePoint=n,u.default=function e(t){return(0,u.fromCodePoint)(n(t))}},{},],20:[function(e,t,u){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(u,"__esModule",{value:!0}),u.encodeNonAsciiHTML=u.encodeHTML=void 0;var $=r(e("./generated/encode-html.js")),n=e("./escape.js"),i=/[\t\n!-,./:-@[-`\f{-}$\x80-\uFFFF]/g;function s(e,t){for(var u,r="",i=0;null!==(u=e.exec(t));){var s=u.index;r+=t.substring(i,s);var o=t.charCodeAt(s),a=$.default.get(o);if("object"==typeof a){if(s+1$\x80-\uFFFF]/g;var r=new Map([[34,"""],[38,"&"],[39,"'"],[60,"<"],[62,">"],]);function $(e){for(var t,$="",n=0;null!==(t=u.xmlReplacer.exec(e));){var i=t.index,s=e.charCodeAt(i),o=r.get(s);void 0!==o?($+=e.substring(n,i)+o,n=i+1):($+="".concat(e.substring(n,i),"&#x").concat((0,u.getCodePoint)(e,i).toString(16),";"),n=u.xmlReplacer.lastIndex+=Number((64512&s)==55296))}return $+e.substr(n)}function n(e,t){return function u(r){for(var $,n=0,i="";$=e.exec(r);)n!==$.index&&(i+=r.substring(n,$.index)),i+=t.get($[0].charCodeAt(0)),n=$.index+1;return i+r.substring(n)}}u.getCodePoint=null!=String.prototype.codePointAt?function(e,t){return e.codePointAt(t)}:function(e,t){return(64512&e.charCodeAt(t))==55296?(e.charCodeAt(t)-55296)*1024+e.charCodeAt(t+1)-56320+65536:e.charCodeAt(t)},u.encodeXML=$,u.escape=$,u.escapeUTF8=n(/[&<>'"]/g,r),u.escapeAttribute=n(/["&\u00A0]/g,new Map([[34,"""],[38,"&"],[160," "],])),u.escapeText=n(/[&<>\u00A0]/g,new Map([[38,"&"],[60,"<"],[62,">"],[160," "],]))},{},],22:[function(e,t,u){"use strict";Object.defineProperty(u,"__esModule",{value:!0}),u.default=new Uint16Array('ᵁ<\xd5ıʊҝջאٵ۞ޢߖࠏ੊ઑඡ๭༉༦჊ረዡᐕᒝᓃᓟᔥ\0\0\0\0\0\0ᕫᛍᦍᰒᷝ὾⁠↰⊍⏀⏻⑂⠤⤒ⴈ⹈⿎〖㊺㘹㞬㣾㨨㩱㫠㬮ࠀEMabcfglmnoprstu\\bfms\x7f\x84\x8b\x90\x95\x98\xa6\xb3\xb9\xc8\xcflig耻\xc6䃆P耻&䀦cute耻\xc1䃁reve;䄂Āiyx}rc耻\xc2䃂;䐐r;쀀\ud835\udd04rave耻\xc0䃀pha;䎑acr;䄀d;橓Āgp\x9d\xa1on;䄄f;쀀\ud835\udd38plyFunction;恡ing耻\xc5䃅Ācs\xbe\xc3r;쀀\ud835\udc9cign;扔ilde耻\xc3䃃ml耻\xc4䃄Ѐaceforsu\xe5\xfb\xfeėĜĢħĪĀcr\xea\xf2kslash;或Ŷ\xf6\xf8;櫧ed;挆y;䐑ƀcrtąċĔause;戵noullis;愬a;䎒r;쀀\ud835\udd05pf;쀀\ud835\udd39eve;䋘c\xf2ēmpeq;扎܀HOacdefhilorsuōőŖƀƞƢƵƷƺǜȕɳɸɾcy;䐧PY耻\xa9䂩ƀcpyŝŢźute;䄆Ā;iŧŨ拒talDifferentialD;慅leys;愭ȀaeioƉƎƔƘron;䄌dil耻\xc7䃇rc;䄈nint;戰ot;䄊ĀdnƧƭilla;䂸terDot;䂷\xf2ſi;䎧rcleȀDMPTLJNjǑǖot;抙inus;抖lus;投imes;抗oĀcsǢǸkwiseContourIntegral;戲eCurlyĀDQȃȏoubleQuote;思uote;怙ȀlnpuȞȨɇɕonĀ;eȥȦ户;橴ƀgitȯȶȺruent;扡nt;戯ourIntegral;戮ĀfrɌɎ;愂oduct;成nterClockwiseContourIntegral;戳oss;樯cr;쀀\ud835\udc9epĀ;Cʄʅ拓ap;才րDJSZacefiosʠʬʰʴʸˋ˗ˡ˦̳ҍĀ;oŹʥtrahd;椑cy;䐂cy;䐅cy;䐏ƀgrsʿ˄ˇger;怡r;憡hv;櫤Āayː˕ron;䄎;䐔lĀ;t˝˞戇a;䎔r;쀀\ud835\udd07Āaf˫̧Ācm˰̢riticalȀADGT̖̜̀̆cute;䂴oŴ̋̍;䋙bleAcute;䋝rave;䁠ilde;䋜ond;拄ferentialD;慆Ѱ̽\0\0\0͔͂\0Ѕf;쀀\ud835\udd3bƀ;DE͈͉͍䂨ot;惜qual;扐blèCDLRUVͣͲ΂ϏϢϸontourIntegra\xecȹoɴ͹\0\0ͻ\xbb͉nArrow;懓Āeo·ΤftƀARTΐΖΡrrow;懐ightArrow;懔e\xe5ˊngĀLRΫτeftĀARγιrrow;柸ightArrow;柺ightArrow;柹ightĀATϘϞrrow;懒ee;抨pɁϩ\0\0ϯrrow;懑ownArrow;懕erticalBar;戥ǹABLRTaВЪаўѿͼrrowƀ;BUНОТ憓ar;椓pArrow;懵reve;䌑eft˒к\0ц\0ѐightVector;楐eeVector;楞ectorĀ;Bљњ憽ar;楖ightǔѧ\0ѱeeVector;楟ectorĀ;BѺѻ懁ar;楗eeĀ;A҆҇护rrow;憧ĀctҒҗr;쀀\ud835\udc9frok;䄐ࠀNTacdfglmopqstuxҽӀӄӋӞӢӧӮӵԡԯԶՒ՝ՠեG;䅊H耻\xd0䃐cute耻\xc9䃉ƀaiyӒӗӜron;䄚rc耻\xca䃊;䐭ot;䄖r;쀀\ud835\udd08rave耻\xc8䃈ement;戈ĀapӺӾcr;䄒tyɓԆ\0\0ԒmallSquare;旻erySmallSquare;斫ĀgpԦԪon;䄘f;쀀\ud835\udd3csilon;䎕uĀaiԼՉlĀ;TՂՃ橵ilde;扂librium;懌Āci՗՚r;愰m;橳a;䎗ml耻\xcb䃋Āipժկsts;戃onentialE;慇ʀcfiosօֈ֍ֲ׌y;䐤r;쀀\ud835\udd09lledɓ֗\0\0֣mallSquare;旼erySmallSquare;斪Ͱֺ\0ֿ\0\0ׄf;쀀\ud835\udd3dAll;戀riertrf;愱c\xf2׋؀JTabcdfgorstר׬ׯ׺؀ؒؖ؛؝أ٬ٲcy;䐃耻>䀾mmaĀ;d׷׸䎓;䏜reve;䄞ƀeiy؇،ؐdil;䄢rc;䄜;䐓ot;䄠r;쀀\ud835\udd0a;拙pf;쀀\ud835\udd3eeater̀EFGLSTصلَٖٛ٦qualĀ;Lؾؿ扥ess;招ullEqual;执reater;檢ess;扷lantEqual;橾ilde;扳cr;쀀\ud835\udca2;扫ЀAacfiosuڅڋږڛڞڪھۊRDcy;䐪Āctڐڔek;䋇;䁞irc;䄤r;愌lbertSpace;愋ǰگ\0ڲf;愍izontalLine;攀Āctۃۅ\xf2کrok;䄦mpńېۘownHum\xf0įqual;扏܀EJOacdfgmnostuۺ۾܃܇܎ܚܞܡܨ݄ݸދޏޕcy;䐕lig;䄲cy;䐁cute耻\xcd䃍Āiyܓܘrc耻\xce䃎;䐘ot;䄰r;愑rave耻\xcc䃌ƀ;apܠܯܿĀcgܴܷr;䄪inaryI;慈lie\xf3ϝǴ݉\0ݢĀ;eݍݎ戬Āgrݓݘral;戫section;拂isibleĀCTݬݲomma;恣imes;恢ƀgptݿރވon;䄮f;쀀\ud835\udd40a;䎙cr;愐ilde;䄨ǫޚ\0ޞcy;䐆l耻\xcf䃏ʀcfosuެ޷޼߂ߐĀiyޱ޵rc;䄴;䐙r;쀀\ud835\udd0dpf;쀀\ud835\udd41ǣ߇\0ߌr;쀀\ud835\udca5rcy;䐈kcy;䐄΀HJacfosߤߨ߽߬߱ࠂࠈcy;䐥cy;䐌ppa;䎚Āey߶߻dil;䄶;䐚r;쀀\ud835\udd0epf;쀀\ud835\udd42cr;쀀\ud835\udca6րJTaceflmostࠥࠩࠬࡐࡣ঳সে্਷ੇcy;䐉耻<䀼ʀcmnpr࠷࠼ࡁࡄࡍute;䄹bda;䎛g;柪lacetrf;愒r;憞ƀaeyࡗ࡜ࡡron;䄽dil;䄻;䐛Āfsࡨ॰tԀACDFRTUVarࡾࢩࢱࣦ࣠ࣼयज़ΐ४Ānrࢃ࢏gleBracket;柨rowƀ;BR࢙࢚࢞憐ar;懤ightArrow;懆eiling;挈oǵࢷ\0ࣃbleBracket;柦nǔࣈ\0࣒eeVector;楡ectorĀ;Bࣛࣜ懃ar;楙loor;挊ightĀAV࣯ࣵrrow;憔ector;楎Āerँगeƀ;AVउऊऐ抣rrow;憤ector;楚iangleƀ;BEतथऩ抲ar;槏qual;抴pƀDTVषूौownVector;楑eeVector;楠ectorĀ;Bॖॗ憿ar;楘ectorĀ;B॥०憼ar;楒ight\xe1Μs̀EFGLSTॾঋকঝঢভqualGreater;拚ullEqual;扦reater;扶ess;檡lantEqual;橽ilde;扲r;쀀\ud835\udd0fĀ;eঽা拘ftarrow;懚idot;䄿ƀnpw৔ਖਛgȀLRlr৞৷ਂਐeftĀAR০৬rrow;柵ightArrow;柷ightArrow;柶eftĀarγਊight\xe1οight\xe1ϊf;쀀\ud835\udd43erĀLRਢਬeftArrow;憙ightArrow;憘ƀchtਾੀੂ\xf2ࡌ;憰rok;䅁;扪Ѐacefiosuਗ਼੝੠੷੼અઋ઎p;椅y;䐜Ādl੥੯iumSpace;恟lintrf;愳r;쀀\ud835\udd10nusPlus;戓pf;쀀\ud835\udd44c\xf2੶;䎜ҀJacefostuણધભીଔଙඑ඗ඞcy;䐊cute;䅃ƀaey઴હાron;䅇dil;䅅;䐝ƀgswે૰଎ativeƀMTV૓૟૨ediumSpace;怋hiĀcn૦૘\xeb૙eryThi\xee૙tedĀGL૸ଆreaterGreate\xf2ٳessLes\xf3ੈLine;䀊r;쀀\ud835\udd11ȀBnptଢନଷ଺reak;恠BreakingSpace;䂠f;愕ڀ;CDEGHLNPRSTV୕ୖ୪୼஡௫ఄ౞಄ದ೘ൡඅ櫬Āou୛୤ngruent;扢pCap;扭oubleVerticalBar;戦ƀlqxஃஊ஛ement;戉ualĀ;Tஒஓ扠ilde;쀀≂̸ists;戄reater΀;EFGLSTஶஷ஽௉௓௘௥扯qual;扱ullEqual;쀀≧̸reater;쀀≫̸ess;批lantEqual;쀀⩾̸ilde;扵umpń௲௽ownHump;쀀≎̸qual;쀀≏̸eĀfsఊధtTriangleƀ;BEచఛడ拪ar;쀀⧏̸qual;括s̀;EGLSTవశ఼ౄోౘ扮qual;扰reater;扸ess;쀀≪̸lantEqual;쀀⩽̸ilde;扴estedĀGL౨౹reaterGreater;쀀⪢̸essLess;쀀⪡̸recedesƀ;ESಒಓಛ技qual;쀀⪯̸lantEqual;拠ĀeiಫಹverseElement;戌ghtTriangleƀ;BEೋೌ೒拫ar;쀀⧐̸qual;拭ĀquೝഌuareSuĀbp೨೹setĀ;E೰ೳ쀀⊏̸qual;拢ersetĀ;Eഃആ쀀⊐̸qual;拣ƀbcpഓതൎsetĀ;Eഛഞ쀀⊂⃒qual;抈ceedsȀ;ESTലള഻െ抁qual;쀀⪰̸lantEqual;拡ilde;쀀≿̸ersetĀ;E൘൛쀀⊃⃒qual;抉ildeȀ;EFT൮൯൵ൿ扁qual;扄ullEqual;扇ilde;扉erticalBar;戤cr;쀀\ud835\udca9ilde耻\xd1䃑;䎝܀Eacdfgmoprstuvලෂ෉෕ෛ෠෧෼ขภยา฿ไlig;䅒cute耻\xd3䃓Āiy෎ීrc耻\xd4䃔;䐞blac;䅐r;쀀\ud835\udd12rave耻\xd2䃒ƀaei෮ෲ෶cr;䅌ga;䎩cron;䎟pf;쀀\ud835\udd46enCurlyĀDQฎบoubleQuote;怜uote;怘;橔Āclวฬr;쀀\ud835\udcaaash耻\xd8䃘iŬื฼de耻\xd5䃕es;樷ml耻\xd6䃖erĀBP๋๠Āar๐๓r;怾acĀek๚๜;揞et;掴arenthesis;揜Ҁacfhilors๿ງຊຏຒດຝະ໼rtialD;戂y;䐟r;쀀\ud835\udd13i;䎦;䎠usMinus;䂱Āipຢອncareplan\xe5ڝf;愙Ȁ;eio຺ູ໠໤檻cedesȀ;EST່້໏໚扺qual;檯lantEqual;扼ilde;找me;怳Ādp໩໮uct;戏ortionĀ;aȥ໹l;戝Āci༁༆r;쀀\ud835\udcab;䎨ȀUfos༑༖༛༟OT耻"䀢r;쀀\ud835\udd14pf;愚cr;쀀\ud835\udcac؀BEacefhiorsu༾གྷཇའཱིྦྷྪྭ႖ႩႴႾarr;椐G耻\xae䂮ƀcnrཎནབute;䅔g;柫rĀ;tཛྷཝ憠l;椖ƀaeyཧཬཱron;䅘dil;䅖;䐠Ā;vླྀཹ愜erseĀEUྂྙĀlq྇ྎement;戋uilibrium;懋pEquilibrium;楯r\xbbཹo;䎡ghtЀACDFTUVa࿁࿫࿳ဢဨၛႇϘĀnr࿆࿒gleBracket;柩rowƀ;BL࿜࿝࿡憒ar;懥eftArrow;懄eiling;按oǵ࿹\0စbleBracket;柧nǔည\0နeeVector;楝ectorĀ;Bဝသ懂ar;楕loor;挋Āerိ၃eƀ;AVဵံြ抢rrow;憦ector;楛iangleƀ;BEၐၑၕ抳ar;槐qual;抵pƀDTVၣၮၸownVector;楏eeVector;楜ectorĀ;Bႂႃ憾ar;楔ectorĀ;B႑႒懀ar;楓Āpuႛ႞f;愝ndImplies;楰ightarrow;懛ĀchႹႼr;愛;憱leDelayed;槴ڀHOacfhimoqstuფჱჷჽᄙᄞᅑᅖᅡᅧᆵᆻᆿĀCcჩხHcy;䐩y;䐨FTcy;䐬cute;䅚ʀ;aeiyᄈᄉᄎᄓᄗ檼ron;䅠dil;䅞rc;䅜;䐡r;쀀\ud835\udd16ortȀDLRUᄪᄴᄾᅉownArrow\xbbОeftArrow\xbb࢚ightArrow\xbb࿝pArrow;憑gma;䎣allCircle;战pf;쀀\ud835\udd4aɲᅭ\0\0ᅰt;戚areȀ;ISUᅻᅼᆉᆯ斡ntersection;抓uĀbpᆏᆞsetĀ;Eᆗᆘ抏qual;抑ersetĀ;Eᆨᆩ抐qual;抒nion;抔cr;쀀\ud835\udcaear;拆ȀbcmpᇈᇛሉላĀ;sᇍᇎ拐etĀ;Eᇍᇕqual;抆ĀchᇠህeedsȀ;ESTᇭᇮᇴᇿ扻qual;檰lantEqual;扽ilde;承Th\xe1ྌ;我ƀ;esሒሓሣ拑rsetĀ;Eሜም抃qual;抇et\xbbሓրHRSacfhiorsሾቄ቉ቕ቞ቱቶኟዂወዑORN耻\xde䃞ADE;愢ĀHc቎ቒcy;䐋y;䐦Ābuቚቜ;䀉;䎤ƀaeyብቪቯron;䅤dil;䅢;䐢r;쀀\ud835\udd17Āeiቻ኉Dzኀ\0ኇefore;戴a;䎘Ācn኎ኘkSpace;쀀  Space;怉ldeȀ;EFTካኬኲኼ戼qual;扃ullEqual;扅ilde;扈pf;쀀\ud835\udd4bipleDot;惛Āctዖዛr;쀀\ud835\udcafrok;䅦ૡዷጎጚጦ\0ጬጱ\0\0\0\0\0ጸጽ፷ᎅ\0᏿ᐄᐊᐐĀcrዻጁute耻\xda䃚rĀ;oጇገ憟cir;楉rǣጓ\0጖y;䐎ve;䅬Āiyጞጣrc耻\xdb䃛;䐣blac;䅰r;쀀\ud835\udd18rave耻\xd9䃙acr;䅪Ādiፁ፩erĀBPፈ፝Āarፍፐr;䁟acĀekፗፙ;揟et;掵arenthesis;揝onĀ;P፰፱拃lus;抎Āgp፻፿on;䅲f;쀀\ud835\udd4cЀADETadps᎕ᎮᎸᏄϨᏒᏗᏳrrowƀ;BDᅐᎠᎤar;椒ownArrow;懅ownArrow;憕quilibrium;楮eeĀ;AᏋᏌ报rrow;憥own\xe1ϳerĀLRᏞᏨeftArrow;憖ightArrow;憗iĀ;lᏹᏺ䏒on;䎥ing;䅮cr;쀀\ud835\udcb0ilde;䅨ml耻\xdc䃜ҀDbcdefosvᐧᐬᐰᐳᐾᒅᒊᒐᒖash;披ar;櫫y;䐒ashĀ;lᐻᐼ抩;櫦Āerᑃᑅ;拁ƀbtyᑌᑐᑺar;怖Ā;iᑏᑕcalȀBLSTᑡᑥᑪᑴar;戣ine;䁼eparator;杘ilde;所ThinSpace;怊r;쀀\ud835\udd19pf;쀀\ud835\udd4dcr;쀀\ud835\udcb1dash;抪ʀcefosᒧᒬᒱᒶᒼirc;䅴dge;拀r;쀀\ud835\udd1apf;쀀\ud835\udd4ecr;쀀\ud835\udcb2Ȁfiosᓋᓐᓒᓘr;쀀\ud835\udd1b;䎞pf;쀀\ud835\udd4fcr;쀀\ud835\udcb3ҀAIUacfosuᓱᓵᓹᓽᔄᔏᔔᔚᔠcy;䐯cy;䐇cy;䐮cute耻\xdd䃝Āiyᔉᔍrc;䅶;䐫r;쀀\ud835\udd1cpf;쀀\ud835\udd50cr;쀀\ud835\udcb4ml;䅸ЀHacdefosᔵᔹᔿᕋᕏᕝᕠᕤcy;䐖cute;䅹Āayᕄᕉron;䅽;䐗ot;䅻Dzᕔ\0ᕛoWidt\xe8૙a;䎖r;愨pf;愤cr;쀀\ud835\udcb5௡ᖃᖊᖐ\0ᖰᖶᖿ\0\0\0\0ᗆᗛᗫᙟ᙭\0ᚕ᚛ᚲᚹ\0ᚾcute耻\xe1䃡reve;䄃̀;Ediuyᖜᖝᖡᖣᖨᖭ戾;쀀∾̳;房rc耻\xe2䃢te肻\xb4̆;䐰lig耻\xe6䃦Ā;r\xb2ᖺ;쀀\ud835\udd1erave耻\xe0䃠ĀepᗊᗖĀfpᗏᗔsym;愵\xe8ᗓha;䎱ĀapᗟcĀclᗤᗧr;䄁g;樿ɤᗰ\0\0ᘊʀ;adsvᗺᗻᗿᘁᘇ戧nd;橕;橜lope;橘;橚΀;elmrszᘘᘙᘛᘞᘿᙏᙙ戠;榤e\xbbᘙsdĀ;aᘥᘦ戡ѡᘰᘲᘴᘶᘸᘺᘼᘾ;榨;榩;榪;榫;榬;榭;榮;榯tĀ;vᙅᙆ戟bĀ;dᙌᙍ抾;榝Āptᙔᙗh;戢\xbb\xb9arr;捼Āgpᙣᙧon;䄅f;쀀\ud835\udd52΀;Eaeiop዁ᙻᙽᚂᚄᚇᚊ;橰cir;橯;扊d;手s;䀧roxĀ;e዁ᚒ\xf1ᚃing耻\xe5䃥ƀctyᚡᚦᚨr;쀀\ud835\udcb6;䀪mpĀ;e዁ᚯ\xf1ʈilde耻\xe3䃣ml耻\xe4䃤Āciᛂᛈonin\xf4ɲnt;樑ࠀNabcdefiklnoprsu᛭ᛱᜰ᜼ᝃᝈ᝸᝽០៦ᠹᡐᜍ᤽᥈ᥰot;櫭Ācrᛶ᜞kȀcepsᜀᜅᜍᜓong;扌psilon;䏶rime;怵imĀ;e᜚᜛戽q;拍Ŷᜢᜦee;抽edĀ;gᜬᜭ挅e\xbbᜭrkĀ;t፜᜷brk;掶Āoyᜁᝁ;䐱quo;怞ʀcmprtᝓ᝛ᝡᝤᝨausĀ;eĊĉptyv;榰s\xe9ᜌno\xf5ēƀahwᝯ᝱ᝳ;䎲;愶een;扬r;쀀\ud835\udd1fg΀costuvwឍឝឳេ៕៛៞ƀaiuបពរ\xf0ݠrc;旯p\xbb፱ƀdptឤឨឭot;樀lus;樁imes;樂ɱឹ\0\0ើcup;樆ar;昅riangleĀdu៍្own;施p;斳plus;樄e\xe5ᑄ\xe5ᒭarow;植ƀako៭ᠦᠵĀcn៲ᠣkƀlst៺֫᠂ozenge;槫riangleȀ;dlr᠒᠓᠘᠝斴own;斾eft;旂ight;斸k;搣Ʊᠫ\0ᠳƲᠯ\0ᠱ;斒;斑4;斓ck;斈ĀeoᠾᡍĀ;qᡃᡆ쀀=⃥uiv;쀀≡⃥t;挐Ȁptwxᡙᡞᡧᡬf;쀀\ud835\udd53Ā;tᏋᡣom\xbbᏌtie;拈؀DHUVbdhmptuvᢅᢖᢪᢻᣗᣛᣬ᣿ᤅᤊᤐᤡȀLRlrᢎᢐᢒᢔ;敗;敔;敖;敓ʀ;DUduᢡᢢᢤᢦᢨ敐;敦;敩;敤;敧ȀLRlrᢳᢵᢷᢹ;敝;敚;敜;教΀;HLRhlrᣊᣋᣍᣏᣑᣓᣕ救;敬;散;敠;敫;敢;敟ox;槉ȀLRlrᣤᣦᣨᣪ;敕;敒;攐;攌ʀ;DUduڽ᣷᣹᣻᣽;敥;敨;攬;攴inus;抟lus;択imes;抠ȀLRlrᤙᤛᤝ᤟;敛;敘;攘;攔΀;HLRhlrᤰᤱᤳᤵᤷ᤻᤹攂;敪;敡;敞;攼;攤;攜Āevģ᥂bar耻\xa6䂦Ȁceioᥑᥖᥚᥠr;쀀\ud835\udcb7mi;恏mĀ;e᜚᜜lƀ;bhᥨᥩᥫ䁜;槅sub;柈Ŭᥴ᥾lĀ;e᥹᥺怢t\xbb᥺pƀ;Eeįᦅᦇ;檮Ā;qۜۛೡᦧ\0᧨ᨑᨕᨲ\0ᨷᩐ\0\0᪴\0\0᫁\0\0ᬡᬮ᭍᭒\0᯽\0ᰌƀcpr᦭ᦲ᧝ute;䄇̀;abcdsᦿᧀᧄ᧊᧕᧙戩nd;橄rcup;橉Āau᧏᧒p;橋p;橇ot;橀;쀀∩︀Āeo᧢᧥t;恁\xeeړȀaeiu᧰᧻ᨁᨅǰ᧵\0᧸s;橍on;䄍dil耻\xe7䃧rc;䄉psĀ;sᨌᨍ橌m;橐ot;䄋ƀdmnᨛᨠᨦil肻\xb8ƭptyv;榲t脀\xa2;eᨭᨮ䂢r\xe4Ʋr;쀀\ud835\udd20ƀceiᨽᩀᩍy;䑇ckĀ;mᩇᩈ朓ark\xbbᩈ;䏇r΀;Ecefms᩟᩠ᩢᩫ᪤᪪᪮旋;槃ƀ;elᩩᩪᩭ䋆q;扗eɡᩴ\0\0᪈rrowĀlr᩼᪁eft;憺ight;憻ʀRSacd᪒᪔᪖᪚᪟\xbbཇ;擈st;抛irc;抚ash;抝nint;樐id;櫯cir;槂ubsĀ;u᪻᪼晣it\xbb᪼ˬ᫇᫔᫺\0ᬊonĀ;eᫍᫎ䀺Ā;q\xc7\xc6ɭ᫙\0\0᫢aĀ;t᫞᫟䀬;䁀ƀ;fl᫨᫩᫫戁\xeeᅠeĀmx᫱᫶ent\xbb᫩e\xf3ɍǧ᫾\0ᬇĀ;dኻᬂot;橭n\xf4Ɇƀfryᬐᬔᬗ;쀀\ud835\udd54o\xe4ɔ脀\xa9;sŕᬝr;愗Āaoᬥᬩrr;憵ss;朗Ācuᬲᬷr;쀀\ud835\udcb8Ābpᬼ᭄Ā;eᭁᭂ櫏;櫑Ā;eᭉᭊ櫐;櫒dot;拯΀delprvw᭠᭬᭷ᮂᮬᯔ᯹arrĀlr᭨᭪;椸;椵ɰ᭲\0\0᭵r;拞c;拟arrĀ;p᭿ᮀ憶;椽̀;bcdosᮏᮐᮖᮡᮥᮨ截rcap;橈Āauᮛᮞp;橆p;橊ot;抍r;橅;쀀∪︀Ȁalrv᮵ᮿᯞᯣrrĀ;mᮼᮽ憷;椼yƀevwᯇᯔᯘqɰᯎ\0\0ᯒre\xe3᭳u\xe3᭵ee;拎edge;拏en耻\xa4䂤earrowĀlrᯮ᯳eft\xbbᮀight\xbbᮽe\xe4ᯝĀciᰁᰇonin\xf4Ƿnt;戱lcty;挭ঀAHabcdefhijlorstuwz᰸᰻᰿ᱝᱩᱵᲊᲞᲬᲷ᳻᳿ᴍᵻᶑᶫᶻ᷆᷍r\xf2΁ar;楥Ȁglrs᱈ᱍ᱒᱔ger;怠eth;愸\xf2ᄳhĀ;vᱚᱛ怐\xbbऊūᱡᱧarow;椏a\xe3̕Āayᱮᱳron;䄏;䐴ƀ;ao̲ᱼᲄĀgrʿᲁr;懊tseq;橷ƀglmᲑᲔᲘ耻\xb0䂰ta;䎴ptyv;榱ĀirᲣᲨsht;楿;쀀\ud835\udd21arĀlrᲳᲵ\xbbࣜ\xbbသʀaegsv᳂͸᳖᳜᳠mƀ;oș᳊᳔ndĀ;ș᳑uit;晦amma;䏝in;拲ƀ;io᳧᳨᳸䃷de脀\xf7;o᳧ᳰntimes;拇n\xf8᳷cy;䑒cɯᴆ\0\0ᴊrn;挞op;挍ʀlptuwᴘᴝᴢᵉᵕlar;䀤f;쀀\ud835\udd55ʀ;emps̋ᴭᴷᴽᵂqĀ;d͒ᴳot;扑inus;戸lus;戔quare;抡blebarwedg\xe5\xfanƀadhᄮᵝᵧownarrow\xf3ᲃarpoonĀlrᵲᵶef\xf4Ჴigh\xf4ᲶŢᵿᶅkaro\xf7གɯᶊ\0\0ᶎrn;挟op;挌ƀcotᶘᶣᶦĀryᶝᶡ;쀀\ud835\udcb9;䑕l;槶rok;䄑Ādrᶰᶴot;拱iĀ;fᶺ᠖斿Āah᷀᷃r\xf2Щa\xf2ྦangle;榦Āci᷒ᷕy;䑟grarr;柿ऀDacdefglmnopqrstuxḁḉḙḸոḼṉṡṾấắẽỡἪἷὄ὎὚ĀDoḆᴴo\xf4ᲉĀcsḎḔute耻\xe9䃩ter;橮ȀaioyḢḧḱḶron;䄛rĀ;cḭḮ扖耻\xea䃪lon;払;䑍ot;䄗ĀDrṁṅot;扒;쀀\ud835\udd22ƀ;rsṐṑṗ檚ave耻\xe8䃨Ā;dṜṝ檖ot;檘Ȁ;ilsṪṫṲṴ檙nters;揧;愓Ā;dṹṺ檕ot;檗ƀapsẅẉẗcr;䄓tyƀ;svẒẓẕ戅et\xbbẓpĀ1;ẝẤijạả;怄;怅怃ĀgsẪẬ;䅋p;怂ĀgpẴẸon;䄙f;쀀\ud835\udd56ƀalsỄỎỒrĀ;sỊị拕l;槣us;橱iƀ;lvỚớở䎵on\xbbớ;䏵ȀcsuvỪỳἋἣĀioữḱrc\xbbḮɩỹ\0\0ỻ\xedՈantĀglἂἆtr\xbbṝess\xbbṺƀaeiἒ἖Ἒls;䀽st;扟vĀ;DȵἠD;橸parsl;槥ĀDaἯἳot;打rr;楱ƀcdiἾὁỸr;愯o\xf4͒ĀahὉὋ;䎷耻\xf0䃰Āmrὓὗl耻\xeb䃫o;悬ƀcipὡὤὧl;䀡s\xf4ծĀeoὬὴctatio\xeeՙnential\xe5չৡᾒ\0ᾞ\0ᾡᾧ\0\0ῆῌ\0ΐ\0ῦῪ \0 ⁚llingdotse\xf1Ṅy;䑄male;晀ƀilrᾭᾳ῁lig;耀ffiɩᾹ\0\0᾽g;耀ffig;耀ffl;쀀\ud835\udd23lig;耀filig;쀀fjƀaltῙ῜ῡt;晭ig;耀flns;斱of;䆒ǰ΅\0ῳf;쀀\ud835\udd57ĀakֿῷĀ;vῼ´拔;櫙artint;樍Āao‌⁕Ācs‑⁒ႉ‸⁅⁈\0⁐β•‥‧‪‬\0‮耻\xbd䂽;慓耻\xbc䂼;慕;慙;慛Ƴ‴\0‶;慔;慖ʴ‾⁁\0\0⁃耻\xbe䂾;慗;慜5;慘ƶ⁌\0⁎;慚;慝8;慞l;恄wn;挢cr;쀀\ud835\udcbbࢀEabcdefgijlnorstv₂₉₟₥₰₴⃰⃵⃺⃿℃ℒℸ̗ℾ⅒↞Ā;lٍ₇;檌ƀcmpₐₕ₝ute;䇵maĀ;dₜ᳚䎳;檆reve;䄟Āiy₪₮rc;䄝;䐳ot;䄡Ȁ;lqsؾق₽⃉ƀ;qsؾٌ⃄lan\xf4٥Ȁ;cdl٥⃒⃥⃕c;檩otĀ;o⃜⃝檀Ā;l⃢⃣檂;檄Ā;e⃪⃭쀀⋛︀s;檔r;쀀\ud835\udd24Ā;gٳ؛mel;愷cy;䑓Ȁ;Eajٚℌℎℐ;檒;檥;檤ȀEaesℛℝ℩ℴ;扩pĀ;p℣ℤ檊rox\xbbℤĀ;q℮ℯ檈Ā;q℮ℛim;拧pf;쀀\ud835\udd58Āci⅃ⅆr;愊mƀ;el٫ⅎ⅐;檎;檐茀>;cdlqr׮ⅠⅪⅮⅳⅹĀciⅥⅧ;檧r;橺ot;拗Par;榕uest;橼ʀadelsↄⅪ←ٖ↛ǰ↉\0↎pro\xf8₞r;楸qĀlqؿ↖les\xf3₈i\xed٫Āen↣↭rtneqq;쀀≩︀\xc5↪ԀAabcefkosy⇄⇇⇱⇵⇺∘∝∯≨≽r\xf2ΠȀilmr⇐⇔⇗⇛rs\xf0ᒄf\xbb․il\xf4کĀdr⇠⇤cy;䑊ƀ;cwࣴ⇫⇯ir;楈;憭ar;意irc;䄥ƀalr∁∎∓rtsĀ;u∉∊晥it\xbb∊lip;怦con;抹r;쀀\ud835\udd25sĀew∣∩arow;椥arow;椦ʀamopr∺∾≃≞≣rr;懿tht;戻kĀlr≉≓eftarrow;憩ightarrow;憪f;쀀\ud835\udd59bar;怕ƀclt≯≴≸r;쀀\ud835\udcbdas\xe8⇴rok;䄧Ābp⊂⊇ull;恃hen\xbbᱛૡ⊣\0⊪\0⊸⋅⋎\0⋕⋳\0\0⋸⌢⍧⍢⍿\0⎆⎪⎴cute耻\xed䃭ƀ;iyݱ⊰⊵rc耻\xee䃮;䐸Ācx⊼⊿y;䐵cl耻\xa1䂡ĀfrΟ⋉;쀀\ud835\udd26rave耻\xec䃬Ȁ;inoܾ⋝⋩⋮Āin⋢⋦nt;樌t;戭fin;槜ta;愩lig;䄳ƀaop⋾⌚⌝ƀcgt⌅⌈⌗r;䄫ƀelpܟ⌏⌓in\xe5ގar\xf4ܠh;䄱f;抷ed;䆵ʀ;cfotӴ⌬⌱⌽⍁are;愅inĀ;t⌸⌹戞ie;槝do\xf4⌙ʀ;celpݗ⍌⍐⍛⍡al;抺Āgr⍕⍙er\xf3ᕣ\xe3⍍arhk;樗rod;樼Ȁcgpt⍯⍲⍶⍻y;䑑on;䄯f;쀀\ud835\udd5aa;䎹uest耻\xbf䂿Āci⎊⎏r;쀀\ud835\udcbenʀ;EdsvӴ⎛⎝⎡ӳ;拹ot;拵Ā;v⎦⎧拴;拳Ā;iݷ⎮lde;䄩ǫ⎸\0⎼cy;䑖l耻\xef䃯̀cfmosu⏌⏗⏜⏡⏧⏵Āiy⏑⏕rc;䄵;䐹r;쀀\ud835\udd27ath;䈷pf;쀀\ud835\udd5bǣ⏬\0⏱r;쀀\ud835\udcbfrcy;䑘kcy;䑔Ѐacfghjos␋␖␢␧␭␱␵␻ppaĀ;v␓␔䎺;䏰Āey␛␠dil;䄷;䐺r;쀀\ud835\udd28reen;䄸cy;䑅cy;䑜pf;쀀\ud835\udd5ccr;쀀\ud835\udcc0஀ABEHabcdefghjlmnoprstuv⑰⒁⒆⒍⒑┎┽╚▀♎♞♥♹♽⚚⚲⛘❝❨➋⟀⠁⠒ƀart⑷⑺⑼r\xf2৆\xf2Εail;椛arr;椎Ā;gঔ⒋;檋ar;楢ॣ⒥\0⒪\0⒱\0\0\0\0\0⒵Ⓔ\0ⓆⓈⓍ\0⓹ute;䄺mptyv;榴ra\xeeࡌbda;䎻gƀ;dlࢎⓁⓃ;榑\xe5ࢎ;檅uo耻\xab䂫rЀ;bfhlpst࢙ⓞⓦⓩ⓫⓮⓱⓵Ā;f࢝ⓣs;椟s;椝\xeb≒p;憫l;椹im;楳l;憢ƀ;ae⓿─┄檫il;椙Ā;s┉┊檭;쀀⪭︀ƀabr┕┙┝rr;椌rk;杲Āak┢┬cĀek┨┪;䁻;䁛Āes┱┳;榋lĀdu┹┻;榏;榍Ȁaeuy╆╋╖╘ron;䄾Ādi═╔il;䄼\xecࢰ\xe2┩;䐻Ȁcqrs╣╦╭╽a;椶uoĀ;rนᝆĀdu╲╷har;楧shar;楋h;憲ʀ;fgqs▋▌উ◳◿扤tʀahlrt▘▤▷◂◨rrowĀ;t࢙□a\xe9⓶arpoonĀdu▯▴own\xbbњp\xbb०eftarrows;懇ightƀahs◍◖◞rrowĀ;sࣴࢧarpoon\xf3྘quigarro\xf7⇰hreetimes;拋ƀ;qs▋ও◺lan\xf4বʀ;cdgsব☊☍☝☨c;檨otĀ;o☔☕橿Ā;r☚☛檁;檃Ā;e☢☥쀀⋚︀s;檓ʀadegs☳☹☽♉♋ppro\xf8Ⓠot;拖qĀgq♃♅\xf4উgt\xf2⒌\xf4ছi\xedলƀilr♕࣡♚sht;楼;쀀\ud835\udd29Ā;Eজ♣;檑š♩♶rĀdu▲♮Ā;l॥♳;楪lk;斄cy;䑙ʀ;achtੈ⚈⚋⚑⚖r\xf2◁orne\xf2ᴈard;楫ri;旺Āio⚟⚤dot;䅀ustĀ;a⚬⚭掰che\xbb⚭ȀEaes⚻⚽⛉⛔;扨pĀ;p⛃⛄檉rox\xbb⛄Ā;q⛎⛏檇Ā;q⛎⚻im;拦Ѐabnoptwz⛩⛴⛷✚✯❁❇❐Ānr⛮⛱g;柬r;懽r\xebࣁgƀlmr⛿✍✔eftĀar০✇ight\xe1৲apsto;柼ight\xe1৽parrowĀlr✥✩ef\xf4⓭ight;憬ƀafl✶✹✽r;榅;쀀\ud835\udd5dus;樭imes;樴š❋❏st;戗\xe1ፎƀ;ef❗❘᠀旊nge\xbb❘arĀ;l❤❥䀨t;榓ʀachmt❳❶❼➅➇r\xf2ࢨorne\xf2ᶌarĀ;d྘➃;業;怎ri;抿̀achiqt➘➝ੀ➢➮➻quo;怹r;쀀\ud835\udcc1mƀ;egল➪➬;檍;檏Ābu┪➳oĀ;rฟ➹;怚rok;䅂萀<;cdhilqrࠫ⟒☹⟜⟠⟥⟪⟰Āci⟗⟙;檦r;橹re\xe5◲mes;拉arr;楶uest;橻ĀPi⟵⟹ar;榖ƀ;ef⠀भ᠛旃rĀdu⠇⠍shar;楊har;楦Āen⠗⠡rtneqq;쀀≨︀\xc5⠞܀Dacdefhilnopsu⡀⡅⢂⢎⢓⢠⢥⢨⣚⣢⣤ઃ⣳⤂Dot;戺Ȁclpr⡎⡒⡣⡽r耻\xaf䂯Āet⡗⡙;時Ā;e⡞⡟朠se\xbb⡟Ā;sျ⡨toȀ;dluျ⡳⡷⡻ow\xeeҌef\xf4ए\xf0Ꮡker;斮Āoy⢇⢌mma;権;䐼ash;怔asuredangle\xbbᘦr;쀀\ud835\udd2ao;愧ƀcdn⢯⢴⣉ro耻\xb5䂵Ȁ;acdᑤ⢽⣀⣄s\xf4ᚧir;櫰ot肻\xb7Ƶusƀ;bd⣒ᤃ⣓戒Ā;uᴼ⣘;横ţ⣞⣡p;櫛\xf2−\xf0ઁĀdp⣩⣮els;抧f;쀀\ud835\udd5eĀct⣸⣽r;쀀\ud835\udcc2pos\xbbᖝƀ;lm⤉⤊⤍䎼timap;抸ఀGLRVabcdefghijlmoprstuvw⥂⥓⥾⦉⦘⧚⧩⨕⨚⩘⩝⪃⪕⪤⪨⬄⬇⭄⭿⮮ⰴⱧⱼ⳩Āgt⥇⥋;쀀⋙̸Ā;v⥐௏쀀≫⃒ƀelt⥚⥲⥶ftĀar⥡⥧rrow;懍ightarrow;懎;쀀⋘̸Ā;v⥻ే쀀≪⃒ightarrow;懏ĀDd⦎⦓ash;抯ash;抮ʀbcnpt⦣⦧⦬⦱⧌la\xbb˞ute;䅄g;쀀∠⃒ʀ;Eiop඄⦼⧀⧅⧈;쀀⩰̸d;쀀≋̸s;䅉ro\xf8඄urĀ;a⧓⧔普lĀ;s⧓ସdz⧟\0⧣p肻\xa0ଷmpĀ;e௹ఀʀaeouy⧴⧾⨃⨐⨓ǰ⧹\0⧻;橃on;䅈dil;䅆ngĀ;dൾ⨊ot;쀀⩭̸p;橂;䐽ash;怓΀;Aadqsxஒ⨩⨭⨻⩁⩅⩐rr;懗rĀhr⨳⨶k;椤Ā;oᏲᏰot;쀀≐̸ui\xf6ୣĀei⩊⩎ar;椨\xed஘istĀ;s஠டr;쀀\ud835\udd2bȀEest௅⩦⩹⩼ƀ;qs஼⩭௡ƀ;qs஼௅⩴lan\xf4௢i\xed௪Ā;rஶ⪁\xbbஷƀAap⪊⪍⪑r\xf2⥱rr;憮ar;櫲ƀ;svྍ⪜ྌĀ;d⪡⪢拼;拺cy;䑚΀AEadest⪷⪺⪾⫂⫅⫶⫹r\xf2⥦;쀀≦̸rr;憚r;急Ȁ;fqs఻⫎⫣⫯tĀar⫔⫙rro\xf7⫁ightarro\xf7⪐ƀ;qs఻⪺⫪lan\xf4ౕĀ;sౕ⫴\xbbశi\xedౝĀ;rవ⫾iĀ;eచథi\xe4ඐĀpt⬌⬑f;쀀\ud835\udd5f膀\xac;in⬙⬚⬶䂬nȀ;Edvஉ⬤⬨⬮;쀀⋹̸ot;쀀⋵̸ǡஉ⬳⬵;拷;拶iĀ;vಸ⬼ǡಸ⭁⭃;拾;拽ƀaor⭋⭣⭩rȀ;ast୻⭕⭚⭟lle\xec୻l;쀀⫽⃥;쀀∂̸lint;樔ƀ;ceಒ⭰⭳u\xe5ಥĀ;cಘ⭸Ā;eಒ⭽\xf1ಘȀAait⮈⮋⮝⮧r\xf2⦈rrƀ;cw⮔⮕⮙憛;쀀⤳̸;쀀↝̸ghtarrow\xbb⮕riĀ;eೋೖ΀chimpqu⮽⯍⯙⬄୸⯤⯯Ȁ;cerല⯆ഷ⯉u\xe5൅;쀀\ud835\udcc3ortɭ⬅\0\0⯖ar\xe1⭖mĀ;e൮⯟Ā;q൴൳suĀbp⯫⯭\xe5೸\xe5ഋƀbcp⯶ⰑⰙȀ;Ees⯿ⰀഢⰄ抄;쀀⫅̸etĀ;eഛⰋqĀ;qണⰀcĀ;eലⰗ\xf1സȀ;EesⰢⰣൟⰧ抅;쀀⫆̸etĀ;e൘ⰮqĀ;qൠⰣȀgilrⰽⰿⱅⱇ\xecௗlde耻\xf1䃱\xe7ృiangleĀlrⱒⱜeftĀ;eచⱚ\xf1దightĀ;eೋⱥ\xf1೗Ā;mⱬⱭ䎽ƀ;esⱴⱵⱹ䀣ro;愖p;怇ҀDHadgilrsⲏⲔⲙⲞⲣⲰⲶⳓⳣash;抭arr;椄p;쀀≍⃒ash;抬ĀetⲨⲬ;쀀≥⃒;쀀>⃒nfin;槞ƀAetⲽⳁⳅrr;椂;쀀≤⃒Ā;rⳊⳍ쀀<⃒ie;쀀⊴⃒ĀAtⳘⳜrr;椃rie;쀀⊵⃒im;쀀∼⃒ƀAan⳰⳴ⴂrr;懖rĀhr⳺⳽k;椣Ā;oᏧᏥear;椧ቓ᪕\0\0\0\0\0\0\0\0\0\0\0\0\0ⴭ\0ⴸⵈⵠⵥ⵲ⶄᬇ\0\0ⶍⶫ\0ⷈⷎ\0ⷜ⸙⸫⸾⹃Ācsⴱ᪗ute耻\xf3䃳ĀiyⴼⵅrĀ;c᪞ⵂ耻\xf4䃴;䐾ʀabios᪠ⵒⵗLjⵚlac;䅑v;樸old;榼lig;䅓Ācr⵩⵭ir;榿;쀀\ud835\udd2cͯ⵹\0\0⵼\0ⶂn;䋛ave耻\xf2䃲;槁Ābmⶈ෴ar;榵Ȁacitⶕ⶘ⶥⶨr\xf2᪀Āir⶝ⶠr;榾oss;榻n\xe5๒;槀ƀaeiⶱⶵⶹcr;䅍ga;䏉ƀcdnⷀⷅǍron;䎿;榶pf;쀀\ud835\udd60ƀaelⷔ⷗ǒr;榷rp;榹΀;adiosvⷪⷫⷮ⸈⸍⸐⸖戨r\xf2᪆Ȁ;efmⷷⷸ⸂⸅橝rĀ;oⷾⷿ愴f\xbbⷿ耻\xaa䂪耻\xba䂺gof;抶r;橖lope;橗;橛ƀclo⸟⸡⸧\xf2⸁ash耻\xf8䃸l;折iŬⸯ⸴de耻\xf5䃵esĀ;aǛ⸺s;樶ml耻\xf6䃶bar;挽ૡ⹞\0⹽\0⺀⺝\0⺢⺹\0\0⻋ຜ\0⼓\0\0⼫⾼\0⿈rȀ;astЃ⹧⹲຅脀\xb6;l⹭⹮䂶le\xecЃɩ⹸\0\0⹻m;櫳;櫽y;䐿rʀcimpt⺋⺏⺓ᡥ⺗nt;䀥od;䀮il;怰enk;怱r;쀀\ud835\udd2dƀimo⺨⺰⺴Ā;v⺭⺮䏆;䏕ma\xf4੶ne;明ƀ;tv⺿⻀⻈䏀chfork\xbb´;䏖Āau⻏⻟nĀck⻕⻝kĀ;h⇴⻛;愎\xf6⇴sҀ;abcdemst⻳⻴ᤈ⻹⻽⼄⼆⼊⼎䀫cir;樣ir;樢Āouᵀ⼂;樥;橲n肻\xb1ຝim;樦wo;樧ƀipu⼙⼠⼥ntint;樕f;쀀\ud835\udd61nd耻\xa3䂣Ԁ;Eaceinosu່⼿⽁⽄⽇⾁⾉⾒⽾⾶;檳p;檷u\xe5໙Ā;c໎⽌̀;acens່⽙⽟⽦⽨⽾ppro\xf8⽃urlye\xf1໙\xf1໎ƀaes⽯⽶⽺pprox;檹qq;檵im;拨i\xedໟmeĀ;s⾈ຮ怲ƀEas⽸⾐⽺\xf0⽵ƀdfp໬⾙⾯ƀals⾠⾥⾪lar;挮ine;挒urf;挓Ā;t໻⾴\xef໻rel;抰Āci⿀⿅r;쀀\ud835\udcc5;䏈ncsp;怈̀fiopsu⿚⋢⿟⿥⿫⿱r;쀀\ud835\udd2epf;쀀\ud835\udd62rime;恗cr;쀀\ud835\udcc6ƀaeo⿸〉〓tĀei⿾々rnion\xf3ڰnt;樖stĀ;e【】䀿\xf1Ἑ\xf4༔઀ABHabcdefhilmnoprstux぀けさすムㄎㄫㅇㅢㅲㆎ㈆㈕㈤㈩㉘㉮㉲㊐㊰㊷ƀartぇおがr\xf2Ⴓ\xf2ϝail;検ar\xf2ᱥar;楤΀cdenqrtとふへみわゔヌĀeuねぱ;쀀∽̱te;䅕i\xe3ᅮmptyv;榳gȀ;del࿑らるろ;榒;榥\xe5࿑uo耻\xbb䂻rր;abcfhlpstw࿜ガクシスゼゾダッデナp;極Ā;f࿠ゴs;椠;椳s;椞\xeb≝\xf0✮l;楅im;楴l;憣;憝Āaiパフil;椚oĀ;nホボ戶al\xf3༞ƀabrョリヮr\xf2៥rk;杳ĀakンヽcĀekヹ・;䁽;䁝Āes㄂㄄;榌lĀduㄊㄌ;榎;榐Ȁaeuyㄗㄜㄧㄩron;䅙Ādiㄡㄥil;䅗\xec࿲\xe2ヺ;䑀Ȁclqsㄴㄷㄽㅄa;椷dhar;楩uoĀ;rȎȍh;憳ƀacgㅎㅟངlȀ;ipsླྀㅘㅛႜn\xe5Ⴛar\xf4ྩt;断ƀilrㅩဣㅮsht;楽;쀀\ud835\udd2fĀaoㅷㆆrĀduㅽㅿ\xbbѻĀ;l႑ㆄ;楬Ā;vㆋㆌ䏁;䏱ƀgns㆕ㇹㇼht̀ahlrstㆤㆰ㇂㇘㇤㇮rrowĀ;t࿜ㆭa\xe9トarpoonĀduㆻㆿow\xeeㅾp\xbb႒eftĀah㇊㇐rrow\xf3࿪arpoon\xf3Ցightarrows;應quigarro\xf7ニhreetimes;拌g;䋚ingdotse\xf1ἲƀahm㈍㈐㈓r\xf2࿪a\xf2Ց;怏oustĀ;a㈞㈟掱che\xbb㈟mid;櫮Ȁabpt㈲㈽㉀㉒Ānr㈷㈺g;柭r;懾r\xebဃƀafl㉇㉊㉎r;榆;쀀\ud835\udd63us;樮imes;樵Āap㉝㉧rĀ;g㉣㉤䀩t;榔olint;樒ar\xf2㇣Ȁachq㉻㊀Ⴜ㊅quo;怺r;쀀\ud835\udcc7Ābu・㊊oĀ;rȔȓƀhir㊗㊛㊠re\xe5ㇸmes;拊iȀ;efl㊪ၙᠡ㊫方tri;槎luhar;楨;愞ൡ㋕㋛㋟㌬㌸㍱\0㍺㎤\0\0㏬㏰\0㐨㑈㑚㒭㒱㓊㓱\0㘖\0\0㘳cute;䅛qu\xef➺Ԁ;Eaceinpsyᇭ㋳㋵㋿㌂㌋㌏㌟㌦㌩;檴ǰ㋺\0㋼;檸on;䅡u\xe5ᇾĀ;dᇳ㌇il;䅟rc;䅝ƀEas㌖㌘㌛;檶p;檺im;择olint;樓i\xedሄ;䑁otƀ;be㌴ᵇ㌵担;橦΀Aacmstx㍆㍊㍗㍛㍞㍣㍭rr;懘rĀhr㍐㍒\xeb∨Ā;oਸ਼਴t耻\xa7䂧i;䀻war;椩mĀin㍩\xf0nu\xf3\xf1t;朶rĀ;o㍶⁕쀀\ud835\udd30Ȁacoy㎂㎆㎑㎠rp;景Āhy㎋㎏cy;䑉;䑈rtɭ㎙\0\0㎜i\xe4ᑤara\xec⹯耻\xad䂭Āgm㎨㎴maƀ;fv㎱㎲㎲䏃;䏂Ѐ;deglnprካ㏅㏉㏎㏖㏞㏡㏦ot;橪Ā;q኱ኰĀ;E㏓㏔檞;檠Ā;E㏛㏜檝;檟e;扆lus;樤arr;楲ar\xf2ᄽȀaeit㏸㐈㐏㐗Āls㏽㐄lsetm\xe9㍪hp;樳parsl;槤Ādlᑣ㐔e;挣Ā;e㐜㐝檪Ā;s㐢㐣檬;쀀⪬︀ƀflp㐮㐳㑂tcy;䑌Ā;b㐸㐹䀯Ā;a㐾㐿槄r;挿f;쀀\ud835\udd64aĀdr㑍ЂesĀ;u㑔㑕晠it\xbb㑕ƀcsu㑠㑹㒟Āau㑥㑯pĀ;sᆈ㑫;쀀⊓︀pĀ;sᆴ㑵;쀀⊔︀uĀbp㑿㒏ƀ;esᆗᆜ㒆etĀ;eᆗ㒍\xf1ᆝƀ;esᆨᆭ㒖etĀ;eᆨ㒝\xf1ᆮƀ;afᅻ㒦ְrť㒫ֱ\xbbᅼar\xf2ᅈȀcemt㒹㒾㓂㓅r;쀀\ud835\udcc8tm\xee\xf1i\xec㐕ar\xe6ᆾĀar㓎㓕rĀ;f㓔ឿ昆Āan㓚㓭ightĀep㓣㓪psilo\xeeỠh\xe9⺯s\xbb⡒ʀbcmnp㓻㕞ሉ㖋㖎Ҁ;Edemnprs㔎㔏㔑㔕㔞㔣㔬㔱㔶抂;櫅ot;檽Ā;dᇚ㔚ot;櫃ult;櫁ĀEe㔨㔪;櫋;把lus;檿arr;楹ƀeiu㔽㕒㕕tƀ;en㔎㕅㕋qĀ;qᇚ㔏eqĀ;q㔫㔨m;櫇Ābp㕚㕜;櫕;櫓c̀;acensᇭ㕬㕲㕹㕻㌦ppro\xf8㋺urlye\xf1ᇾ\xf1ᇳƀaes㖂㖈㌛ppro\xf8㌚q\xf1㌗g;晪ڀ123;Edehlmnps㖩㖬㖯ሜ㖲㖴㗀㗉㗕㗚㗟㗨㗭耻\xb9䂹耻\xb2䂲耻\xb3䂳;櫆Āos㖹㖼t;檾ub;櫘Ā;dሢ㗅ot;櫄sĀou㗏㗒l;柉b;櫗arr;楻ult;櫂ĀEe㗤㗦;櫌;抋lus;櫀ƀeiu㗴㘉㘌tƀ;enሜ㗼㘂qĀ;qሢ㖲eqĀ;q㗧㗤m;櫈Ābp㘑㘓;櫔;櫖ƀAan㘜㘠㘭rr;懙rĀhr㘦㘨\xeb∮Ā;oਫ਩war;椪lig耻\xdf䃟௡㙑㙝㙠ዎ㙳㙹\0㙾㛂\0\0\0\0\0㛛㜃\0㜉㝬\0\0\0㞇ɲ㙖\0\0㙛get;挖;䏄r\xeb๟ƀaey㙦㙫㙰ron;䅥dil;䅣;䑂lrec;挕r;쀀\ud835\udd31Ȁeiko㚆㚝㚵㚼Dz㚋\0㚑eĀ4fኄኁaƀ;sv㚘㚙㚛䎸ym;䏑Ācn㚢㚲kĀas㚨㚮ppro\xf8዁im\xbbኬs\xf0ኞĀas㚺㚮\xf0዁rn耻\xfe䃾Ǭ̟㛆⋧es膀\xd7;bd㛏㛐㛘䃗Ā;aᤏ㛕r;樱;樰ƀeps㛡㛣㜀\xe1⩍Ȁ;bcf҆㛬㛰㛴ot;挶ir;櫱Ā;o㛹㛼쀀\ud835\udd65rk;櫚\xe1㍢rime;怴ƀaip㜏㜒㝤d\xe5ቈ΀adempst㜡㝍㝀㝑㝗㝜㝟ngleʀ;dlqr㜰㜱㜶㝀㝂斵own\xbbᶻeftĀ;e⠀㜾\xf1म;扜ightĀ;e㊪㝋\xf1ၚot;旬inus;樺lus;樹b;槍ime;樻ezium;揢ƀcht㝲㝽㞁Āry㝷㝻;쀀\ud835\udcc9;䑆cy;䑛rok;䅧Āio㞋㞎x\xf4᝷headĀlr㞗㞠eftarro\xf7ࡏightarrow\xbbཝऀAHabcdfghlmoprstuw㟐㟓㟗㟤㟰㟼㠎㠜㠣㠴㡑㡝㡫㢩㣌㣒㣪㣶r\xf2ϭar;楣Ācr㟜㟢ute耻\xfa䃺\xf2ᅐrǣ㟪\0㟭y;䑞ve;䅭Āiy㟵㟺rc耻\xfb䃻;䑃ƀabh㠃㠆㠋r\xf2Ꭽlac;䅱a\xf2ᏃĀir㠓㠘sht;楾;쀀\ud835\udd32rave耻\xf9䃹š㠧㠱rĀlr㠬㠮\xbbॗ\xbbႃlk;斀Āct㠹㡍ɯ㠿\0\0㡊rnĀ;e㡅㡆挜r\xbb㡆op;挏ri;旸Āal㡖㡚cr;䅫肻\xa8͉Āgp㡢㡦on;䅳f;쀀\ud835\udd66̀adhlsuᅋ㡸㡽፲㢑㢠own\xe1ᎳarpoonĀlr㢈㢌ef\xf4㠭igh\xf4㠯iƀ;hl㢙㢚㢜䏅\xbbᏺon\xbb㢚parrows;懈ƀcit㢰㣄㣈ɯ㢶\0\0㣁rnĀ;e㢼㢽挝r\xbb㢽op;挎ng;䅯ri;旹cr;쀀\ud835\udccaƀdir㣙㣝㣢ot;拰lde;䅩iĀ;f㜰㣨\xbb᠓Āam㣯㣲r\xf2㢨l耻\xfc䃼angle;榧ހABDacdeflnoprsz㤜㤟㤩㤭㦵㦸㦽㧟㧤㧨㧳㧹㧽㨁㨠r\xf2ϷarĀ;v㤦㤧櫨;櫩as\xe8ϡĀnr㤲㤷grt;榜΀eknprst㓣㥆㥋㥒㥝㥤㦖app\xe1␕othin\xe7ẖƀhir㓫⻈㥙op\xf4⾵Ā;hᎷ㥢\xefㆍĀiu㥩㥭gm\xe1㎳Ābp㥲㦄setneqĀ;q㥽㦀쀀⊊︀;쀀⫋︀setneqĀ;q㦏㦒쀀⊋︀;쀀⫌︀Āhr㦛㦟et\xe1㚜iangleĀlr㦪㦯eft\xbbथight\xbbၑy;䐲ash\xbbံƀelr㧄㧒㧗ƀ;beⷪ㧋㧏ar;抻q;扚lip;拮Ābt㧜ᑨa\xf2ᑩr;쀀\ud835\udd33tr\xe9㦮suĀbp㧯㧱\xbbജ\xbb൙pf;쀀\ud835\udd67ro\xf0໻tr\xe9㦴Ācu㨆㨋r;쀀\ud835\udccbĀbp㨐㨘nĀEe㦀㨖\xbb㥾nĀEe㦒㨞\xbb㦐igzag;榚΀cefoprs㨶㨻㩖㩛㩔㩡㩪irc;䅵Ādi㩀㩑Ābg㩅㩉ar;機eĀ;qᗺ㩏;扙erp;愘r;쀀\ud835\udd34pf;쀀\ud835\udd68Ā;eᑹ㩦at\xe8ᑹcr;쀀\ud835\udcccૣណ㪇\0㪋\0㪐㪛\0\0㪝㪨㪫㪯\0\0㫃㫎\0㫘ៜ៟tr\xe9៑r;쀀\ud835\udd35ĀAa㪔㪗r\xf2σr\xf2৶;䎾ĀAa㪡㪤r\xf2θr\xf2৫a\xf0✓is;拻ƀdptឤ㪵㪾Āfl㪺ឩ;쀀\ud835\udd69im\xe5ឲĀAa㫇㫊r\xf2ώr\xf2ਁĀcq㫒ីr;쀀\ud835\udccdĀpt៖㫜r\xe9។Ѐacefiosu㫰㫽㬈㬌㬑㬕㬛㬡cĀuy㫶㫻te耻\xfd䃽;䑏Āiy㬂㬆rc;䅷;䑋n耻\xa5䂥r;쀀\ud835\udd36cy;䑗pf;쀀\ud835\udd6acr;쀀\ud835\udcceĀcm㬦㬩y;䑎l耻\xff䃿Ԁacdefhiosw㭂㭈㭔㭘㭤㭩㭭㭴㭺㮀cute;䅺Āay㭍㭒ron;䅾;䐷ot;䅼Āet㭝㭡tr\xe6ᕟa;䎶r;쀀\ud835\udd37cy;䐶grarr;懝pf;쀀\ud835\udd6bcr;쀀\ud835\udccfĀjn㮅㮇;怍j;怌'.split("").map(function(e){return e.charCodeAt(0)}))},{},],23:[function(e,t,u){"use strict";Object.defineProperty(u,"__esModule",{value:!0}),u.default=new Uint16Array("Ȁaglq \x15\x18\x1bɭ\x0f\0\0\x12p;䀦os;䀧t;䀾t;䀼uot;䀢".split("").map(function(e){return e.charCodeAt(0)}))},{},],24:[function(e,t,u){"use strict";function r(e){for(var t=1;t{if("string"!=typeof e)throw TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}},{},],27:[function(e,t,u){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,u,r){void 0===r&&(r=u);var $=Object.getOwnPropertyDescriptor(t,u);(!$||("get"in $?!t.__esModule:$.writable||$.configurable))&&($={enumerable:!0,get:function(){return t[u]}}),Object.defineProperty(e,r,$)}:function(e,t,u,r){void 0===r&&(r=u),e[r]=t[u]}),$=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),n=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var u in e)"default"!==u&&Object.prototype.hasOwnProperty.call(e,u)&&r(t,e,u);return $(t,e),t};Object.defineProperty(u,"__esModule",{value:!0}),u.Parser=void 0;var i=n(e("./Tokenizer.js")),s=e("entities/lib/decode.js"),o=new Set(["input","option","optgroup","select","button","datalist","textarea",]),a=new Set(["p"]),c=new Set(["thead","tbody"]),l=new Set(["dd","dt"]),f=new Set(["rt","rp"]),d=new Map([["tr",new Set(["tr","th","td"])],["th",new Set(["th"])],["td",new Set(["thead","th","td"])],["body",new Set(["head","link","script"])],["li",new Set(["li"])],["p",a],["h1",a],["h2",a],["h3",a],["h4",a],["h5",a],["h6",a],["select",o],["input",o],["output",o],["button",o],["datalist",o],["textarea",o],["option",new Set(["option"])],["optgroup",new Set(["optgroup","option"])],["dd",l],["dt",l],["address",a],["article",a],["aside",a],["blockquote",a],["details",a],["div",a],["dl",a],["fieldset",a],["figcaption",a],["figure",a],["footer",a],["form",a],["header",a],["hr",a],["main",a],["nav",a],["ol",a],["pre",a],["section",a],["table",a],["ul",a],["rt",f],["rp",f],["tbody",c],["tfoot",c],]),_=new Set(["area","base","basefont","br","col","command","embed","frame","hr","img","input","isindex","keygen","link","meta","param","source","track","wbr",]),h=new Set(["math","svg"]),p=new Set(["mi","mo","mn","ms","mtext","annotation-xml","foreignobject","desc","title",]),b=/\s|\//,m=function(){function e(e,t){var u,r,$,n,s;void 0===t&&(t={}),this.options=t,this.startIndex=0,this.endIndex=0,this.openTagStart=0,this.tagname="",this.attribname="",this.attribvalue="",this.attribs=null,this.stack=[],this.foreignContext=[],this.buffers=[],this.bufferOffset=0,this.writeIndex=0,this.ended=!1,this.cbs=null!=e?e:{},this.lowerCaseTagNames=null!==(u=t.lowerCaseTags)&&void 0!==u?u:!t.xmlMode,this.lowerCaseAttributeNames=null!==(r=t.lowerCaseAttributeNames)&&void 0!==r?r:!t.xmlMode,this.tokenizer=new(null!==($=t.Tokenizer)&&void 0!==$?$:i.default)(this.options,this),null===(s=(n=this.cbs).onparserinit)||void 0===s||s.call(n,this)}return e.prototype.ontext=function(e,t){var u,r,$=this.getSlice(e,t);this.endIndex=t-1,null===(r=(u=this.cbs).ontext)||void 0===r||r.call(u,$),this.startIndex=t},e.prototype.ontextentity=function(e){var t,u,r=this.tokenizer.getSectionStart();this.endIndex=r-1,null===(u=(t=this.cbs).ontext)||void 0===u||u.call(t,(0,s.fromCodePoint)(e)),this.startIndex=r},e.prototype.isVoidElement=function(e){return!this.options.xmlMode&&_.has(e)},e.prototype.onopentagname=function(e,t){this.endIndex=t;var u=this.getSlice(e,t);this.lowerCaseTagNames&&(u=u.toLowerCase()),this.emitOpenTag(u)},e.prototype.emitOpenTag=function(e){this.openTagStart=this.startIndex,this.tagname=e;var t,u,r,$,n=!this.options.xmlMode&&d.get(e);if(n)for(;this.stack.length>0&&n.has(this.stack[this.stack.length-1]);){var i=this.stack.pop();null===(u=(t=this.cbs).onclosetag)||void 0===u||u.call(t,i,!0)}!this.isVoidElement(e)&&(this.stack.push(e),h.has(e)?this.foreignContext.push(!0):p.has(e)&&this.foreignContext.push(!1)),null===($=(r=this.cbs).onopentagname)||void 0===$||$.call(r,e),this.cbs.onopentag&&(this.attribs={})},e.prototype.endOpenTag=function(e){var t,u;this.startIndex=this.openTagStart,this.attribs&&(null===(u=(t=this.cbs).onopentag)||void 0===u||u.call(t,this.tagname,this.attribs,e),this.attribs=null),this.cbs.onclosetag&&this.isVoidElement(this.tagname)&&this.cbs.onclosetag(this.tagname,!0),this.tagname=""},e.prototype.onopentagend=function(e){this.endIndex=e,this.endOpenTag(!1),this.startIndex=e+1},e.prototype.onclosetag=function(e,t){this.endIndex=t;var u,r,$,n,i,s,o=this.getSlice(e,t);if(this.lowerCaseTagNames&&(o=o.toLowerCase()),(h.has(o)||p.has(o))&&this.foreignContext.pop(),this.isVoidElement(o))this.options.xmlMode||"br"!==o||(null===(r=(u=this.cbs).onopentagname)||void 0===r||r.call(u,"br"),null===(n=($=this.cbs).onopentag)||void 0===n||n.call($,"br",{},!0),null===(s=(i=this.cbs).onclosetag)||void 0===s||s.call(i,"br",!1));else{var a=this.stack.lastIndexOf(o);if(-1!==a){if(this.cbs.onclosetag)for(var c=this.stack.length-a;c--;)this.cbs.onclosetag(this.stack.pop(),0!==c);else this.stack.length=a}else this.options.xmlMode||"p"!==o||(this.emitOpenTag("p"),this.closeCurrentTag(!0))}this.startIndex=t+1},e.prototype.onselfclosingtag=function(e){this.endIndex=e,this.options.xmlMode||this.options.recognizeSelfClosing||this.foreignContext[this.foreignContext.length-1]?(this.closeCurrentTag(!1),this.startIndex=e+1):this.onopentagend(e)},e.prototype.closeCurrentTag=function(e){var t,u,r=this.tagname;this.endOpenTag(e),this.stack[this.stack.length-1]===r&&(null===(u=(t=this.cbs).onclosetag)||void 0===u||u.call(t,r,!e),this.stack.pop())},e.prototype.onattribname=function(e,t){this.startIndex=e;var u=this.getSlice(e,t);this.attribname=this.lowerCaseAttributeNames?u.toLowerCase():u},e.prototype.onattribdata=function(e,t){this.attribvalue+=this.getSlice(e,t)},e.prototype.onattribentity=function(e){this.attribvalue+=(0,s.fromCodePoint)(e)},e.prototype.onattribend=function(e,t){var u,r;this.endIndex=t,null===(r=(u=this.cbs).onattribute)||void 0===r||r.call(u,this.attribname,this.attribvalue,e===i.QuoteType.Double?'"':e===i.QuoteType.Single?"'":e===i.QuoteType.NoValue?void 0:null),this.attribs&&!Object.prototype.hasOwnProperty.call(this.attribs,this.attribname)&&(this.attribs[this.attribname]=this.attribvalue),this.attribvalue=""},e.prototype.getInstructionName=function(e){var t=e.search(b),u=t<0?e:e.substr(0,t);return this.lowerCaseTagNames&&(u=u.toLowerCase()),u},e.prototype.ondeclaration=function(e,t){this.endIndex=t;var u=this.getSlice(e,t);if(this.cbs.onprocessinginstruction){var r=this.getInstructionName(u);this.cbs.onprocessinginstruction("!".concat(r),"!".concat(u))}this.startIndex=t+1},e.prototype.onprocessinginstruction=function(e,t){this.endIndex=t;var u=this.getSlice(e,t);if(this.cbs.onprocessinginstruction){var r=this.getInstructionName(u);this.cbs.onprocessinginstruction("?".concat(r),"?".concat(u))}this.startIndex=t+1},e.prototype.oncomment=function(e,t,u){var r,$,n,i;this.endIndex=t,null===($=(r=this.cbs).oncomment)||void 0===$||$.call(r,this.getSlice(e,t-u)),null===(i=(n=this.cbs).oncommentend)||void 0===i||i.call(n),this.startIndex=t+1},e.prototype.oncdata=function(e,t,u){this.endIndex=t;var r,$,n,i,s,o,a,c,l,f,d=this.getSlice(e,t-u);this.options.xmlMode||this.options.recognizeCDATA?(null===($=(r=this.cbs).oncdatastart)||void 0===$||$.call(r),null===(i=(n=this.cbs).ontext)||void 0===i||i.call(n,d),null===(o=(s=this.cbs).oncdataend)||void 0===o||o.call(s)):(null===(c=(a=this.cbs).oncomment)||void 0===c||c.call(a,"[CDATA[".concat(d,"]]")),null===(f=(l=this.cbs).oncommentend)||void 0===f||f.call(l)),this.startIndex=t+1},e.prototype.onend=function(){var e,t;if(this.cbs.onclosetag){this.endIndex=this.startIndex;for(var u=this.stack.length;u>0;this.cbs.onclosetag(this.stack[--u],!0));}null===(t=(e=this.cbs).onend)||void 0===t||t.call(e)},e.prototype.reset=function(){var e,t,u,r;null===(t=(e=this.cbs).onreset)||void 0===t||t.call(e),this.tokenizer.reset(),this.tagname="",this.attribname="",this.attribs=null,this.stack.length=0,this.startIndex=0,this.endIndex=0,null===(r=(u=this.cbs).onparserinit)||void 0===r||r.call(u,this),this.buffers.length=0,this.bufferOffset=0,this.writeIndex=0,this.ended=!1},e.prototype.parseComplete=function(e){this.reset(),this.end(e)},e.prototype.getSlice=function(e,t){for(;e-this.bufferOffset>=this.buffers[0].length;)this.shiftBuffer();for(var u=this.buffers[0].slice(e-this.bufferOffset,t-this.bufferOffset);t-this.bufferOffset>this.buffers[0].length;)this.shiftBuffer(),u+=this.buffers[0].slice(0,t-this.bufferOffset);return u},e.prototype.shiftBuffer=function(){this.bufferOffset+=this.buffers[0].length,this.writeIndex--,this.buffers.shift()},e.prototype.write=function(e){var t,u;if(this.ended){null===(u=(t=this.cbs).onerror)||void 0===u||u.call(t,Error(".write() after done!"));return}this.buffers.push(e),this.tokenizer.running&&(this.tokenizer.write(e),this.writeIndex++)},e.prototype.end=function(e){var t,u;if(this.ended){null===(u=(t=this.cbs).onerror)||void 0===u||u.call(t,Error(".end() after done!"));return}e&&this.write(e),this.ended=!0,this.tokenizer.end()},e.prototype.pause=function(){this.tokenizer.pause()},e.prototype.resume=function(){for(this.tokenizer.resume();this.tokenizer.running&&this.writeIndex=$.Zero&&e<=$.Nine}(s=$||($={}))[s.Tab=9]="Tab",s[s.NewLine=10]="NewLine",s[s.FormFeed=12]="FormFeed",s[s.CarriageReturn=13]="CarriageReturn",s[s.Space=32]="Space",s[s.ExclamationMark=33]="ExclamationMark",s[s.Number=35]="Number",s[s.Amp=38]="Amp",s[s.SingleQuote=39]="SingleQuote",s[s.DoubleQuote=34]="DoubleQuote",s[s.Dash=45]="Dash",s[s.Slash=47]="Slash",s[s.Zero=48]="Zero",s[s.Nine=57]="Nine",s[s.Semi=59]="Semi",s[s.Lt=60]="Lt",s[s.Eq=61]="Eq",s[s.Gt=62]="Gt",s[s.Questionmark=63]="Questionmark",s[s.UpperA=65]="UpperA",s[s.LowerA=97]="LowerA",s[s.UpperF=70]="UpperF",s[s.LowerF=102]="LowerF",s[s.UpperZ=90]="UpperZ",s[s.LowerZ=122]="LowerZ",s[s.LowerX=120]="LowerX",s[s.OpeningSquareBracket=91]="OpeningSquareBracket",(o=n||(n={}))[o.Text=1]="Text",o[o.BeforeTagName=2]="BeforeTagName",o[o.InTagName=3]="InTagName",o[o.InSelfClosingTag=4]="InSelfClosingTag",o[o.BeforeClosingTagName=5]="BeforeClosingTagName",o[o.InClosingTagName=6]="InClosingTagName",o[o.AfterClosingTagName=7]="AfterClosingTagName",o[o.BeforeAttributeName=8]="BeforeAttributeName",o[o.InAttributeName=9]="InAttributeName",o[o.AfterAttributeName=10]="AfterAttributeName",o[o.BeforeAttributeValue=11]="BeforeAttributeValue",o[o.InAttributeValueDq=12]="InAttributeValueDq",o[o.InAttributeValueSq=13]="InAttributeValueSq",o[o.InAttributeValueNq=14]="InAttributeValueNq",o[o.BeforeDeclaration=15]="BeforeDeclaration",o[o.InDeclaration=16]="InDeclaration",o[o.InProcessingInstruction=17]="InProcessingInstruction",o[o.BeforeComment=18]="BeforeComment",o[o.CDATASequence=19]="CDATASequence",o[o.InSpecialComment=20]="InSpecialComment",o[o.InCommentLike=21]="InCommentLike",o[o.BeforeSpecialS=22]="BeforeSpecialS",o[o.SpecialStartSequence=23]="SpecialStartSequence",o[o.InSpecialTag=24]="InSpecialTag",o[o.BeforeEntity=25]="BeforeEntity",o[o.BeforeNumericEntity=26]="BeforeNumericEntity",o[o.InNamedEntity=27]="InNamedEntity",o[o.InNumericEntity=28]="InNumericEntity",o[o.InHexEntity=29]="InHexEntity",(r=i=u.QuoteType||(u.QuoteType={}))[r.NoValue=0]="NoValue",r[r.Unquoted=1]="Unquoted",r[r.Single=2]="Single",r[r.Double=3]="Double";var d={Cdata:new Uint8Array([67,68,65,84,65,91]),CdataEnd:new Uint8Array([93,93,62]),CommentEnd:new Uint8Array([45,45,62]),ScriptEnd:new Uint8Array([60,47,115,99,114,105,112,116,]),StyleEnd:new Uint8Array([60,47,115,116,121,108,101]),TitleEnd:new Uint8Array([60,47,116,105,116,108,101])},_=function(){function e(e,t){var u=e.xmlMode,r=void 0!==u&&u,$=e.decodeEntities;this.cbs=t,this.state=n.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=n.Text,this.isSpecial=!1,this.running=!0,this.offset=0,this.currentSequence=void 0,this.sequenceIndex=0,this.trieIndex=0,this.trieCurrent=0,this.entityResult=0,this.entityExcess=0,this.xmlMode=r,this.decodeEntities=void 0===$||$,this.entityTrie=r?a.xmlDecodeTree:a.htmlDecodeTree}return e.prototype.reset=function(){this.state=n.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=n.Text,this.currentSequence=void 0,this.running=!0,this.offset=0},e.prototype.write=function(e){this.offset+=this.buffer.length,this.buffer=e,this.parse()},e.prototype.end=function(){this.running&&this.finish()},e.prototype.pause=function(){this.running=!1},e.prototype.resume=function(){this.running=!0,this.indexthis.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=n.BeforeTagName,this.sectionStart=this.index):this.decodeEntities&&e===$.Amp&&(this.state=n.BeforeEntity)},e.prototype.stateSpecialStartSequence=function(e){var t=this.sequenceIndex===this.currentSequence.length;if(t?l(e):(32|e)===this.currentSequence[this.sequenceIndex]){if(!t){this.sequenceIndex++;return}}else this.isSpecial=!1;this.sequenceIndex=0,this.state=n.InTagName,this.stateInTagName(e)},e.prototype.stateInSpecialTag=function(e){if(this.sequenceIndex===this.currentSequence.length){if(e===$.Gt||c(e)){var t=this.index-this.currentSequence.length;if(this.sectionStart=$.LowerA&&t<=$.LowerZ||t>=$.UpperA&&t<=$.UpperZ},e.prototype.startSpecial=function(e,t){this.isSpecial=!0,this.currentSequence=e,this.sequenceIndex=t,this.state=n.SpecialStartSequence},e.prototype.stateBeforeTagName=function(e){if(e===$.ExclamationMark)this.state=n.BeforeDeclaration,this.sectionStart=this.index+1;else if(e===$.Questionmark)this.state=n.InProcessingInstruction,this.sectionStart=this.index+1;else if(this.isTagStartChar(e)){var t=32|e;this.sectionStart=this.index,this.xmlMode||t!==d.TitleEnd[2]?this.state=this.xmlMode||t!==d.ScriptEnd[2]?n.InTagName:n.BeforeSpecialS:this.startSpecial(d.TitleEnd,3)}else e===$.Slash?this.state=n.BeforeClosingTagName:(this.state=n.Text,this.stateText(e))},e.prototype.stateInTagName=function(e){l(e)&&(this.cbs.onopentagname(this.sectionStart,this.index),this.sectionStart=-1,this.state=n.BeforeAttributeName,this.stateBeforeAttributeName(e))},e.prototype.stateBeforeClosingTagName=function(e){c(e)||(e===$.Gt?this.state=n.Text:(this.state=this.isTagStartChar(e)?n.InClosingTagName:n.InSpecialComment,this.sectionStart=this.index))},e.prototype.stateInClosingTagName=function(e){(e===$.Gt||c(e))&&(this.cbs.onclosetag(this.sectionStart,this.index),this.sectionStart=-1,this.state=n.AfterClosingTagName,this.stateAfterClosingTagName(e))},e.prototype.stateAfterClosingTagName=function(e){(e===$.Gt||this.fastForwardTo($.Gt))&&(this.state=n.Text,this.baseState=n.Text,this.sectionStart=this.index+1)},e.prototype.stateBeforeAttributeName=function(e){e===$.Gt?(this.cbs.onopentagend(this.index),this.isSpecial?(this.state=n.InSpecialTag,this.sequenceIndex=0):this.state=n.Text,this.baseState=this.state,this.sectionStart=this.index+1):e===$.Slash?this.state=n.InSelfClosingTag:c(e)||(this.state=n.InAttributeName,this.sectionStart=this.index)},e.prototype.stateInSelfClosingTag=function(e){e===$.Gt?(this.cbs.onselfclosingtag(this.index),this.state=n.Text,this.baseState=n.Text,this.sectionStart=this.index+1,this.isSpecial=!1):c(e)||(this.state=n.BeforeAttributeName,this.stateBeforeAttributeName(e))},e.prototype.stateInAttributeName=function(e){(e===$.Eq||l(e))&&(this.cbs.onattribname(this.sectionStart,this.index),this.sectionStart=-1,this.state=n.AfterAttributeName,this.stateAfterAttributeName(e))},e.prototype.stateAfterAttributeName=function(e){e===$.Eq?this.state=n.BeforeAttributeValue:e===$.Slash||e===$.Gt?(this.cbs.onattribend(i.NoValue,this.index),this.state=n.BeforeAttributeName,this.stateBeforeAttributeName(e)):c(e)||(this.cbs.onattribend(i.NoValue,this.index),this.state=n.InAttributeName,this.sectionStart=this.index)},e.prototype.stateBeforeAttributeValue=function(e){e===$.DoubleQuote?(this.state=n.InAttributeValueDq,this.sectionStart=this.index+1):e===$.SingleQuote?(this.state=n.InAttributeValueSq,this.sectionStart=this.index+1):c(e)||(this.sectionStart=this.index,this.state=n.InAttributeValueNq,this.stateInAttributeValueNoQuotes(e))},e.prototype.handleInAttributeValue=function(e,t){e===t||!this.decodeEntities&&this.fastForwardTo(t)?(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=-1,this.cbs.onattribend(t===$.DoubleQuote?i.Double:i.Single,this.index),this.state=n.BeforeAttributeName):this.decodeEntities&&e===$.Amp&&(this.baseState=this.state,this.state=n.BeforeEntity)},e.prototype.stateInAttributeValueDoubleQuotes=function(e){this.handleInAttributeValue(e,$.DoubleQuote)},e.prototype.stateInAttributeValueSingleQuotes=function(e){this.handleInAttributeValue(e,$.SingleQuote)},e.prototype.stateInAttributeValueNoQuotes=function(e){c(e)||e===$.Gt?(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=-1,this.cbs.onattribend(i.Unquoted,this.index),this.state=n.BeforeAttributeName,this.stateBeforeAttributeName(e)):this.decodeEntities&&e===$.Amp&&(this.baseState=this.state,this.state=n.BeforeEntity)},e.prototype.stateBeforeDeclaration=function(e){e===$.OpeningSquareBracket?(this.state=n.CDATASequence,this.sequenceIndex=0):this.state=e===$.Dash?n.BeforeComment:n.InDeclaration},e.prototype.stateInDeclaration=function(e){(e===$.Gt||this.fastForwardTo($.Gt))&&(this.cbs.ondeclaration(this.sectionStart,this.index),this.state=n.Text,this.sectionStart=this.index+1)},e.prototype.stateInProcessingInstruction=function(e){(e===$.Gt||this.fastForwardTo($.Gt))&&(this.cbs.onprocessinginstruction(this.sectionStart,this.index),this.state=n.Text,this.sectionStart=this.index+1)},e.prototype.stateBeforeComment=function(e){e===$.Dash?(this.state=n.InCommentLike,this.currentSequence=d.CommentEnd,this.sequenceIndex=2,this.sectionStart=this.index+1):this.state=n.InDeclaration},e.prototype.stateInSpecialComment=function(e){(e===$.Gt||this.fastForwardTo($.Gt))&&(this.cbs.oncomment(this.sectionStart,this.index,0),this.state=n.Text,this.sectionStart=this.index+1)},e.prototype.stateBeforeSpecialS=function(e){var t=32|e;t===d.ScriptEnd[3]?this.startSpecial(d.ScriptEnd,4):t===d.StyleEnd[3]?this.startSpecial(d.StyleEnd,4):(this.state=n.InTagName,this.stateInTagName(e))},e.prototype.stateBeforeEntity=function(e){this.entityExcess=1,this.entityResult=0,e===$.Number?this.state=n.BeforeNumericEntity:e===$.Amp||(this.trieIndex=0,this.trieCurrent=this.entityTrie[0],this.state=n.InNamedEntity,this.stateInNamedEntity(e))},e.prototype.stateInNamedEntity=function(e){if(this.entityExcess+=1,this.trieIndex=(0,a.determineBranch)(this.entityTrie,this.trieCurrent,this.trieIndex+1,e),this.trieIndex<0){this.emitNamedEntity(),this.index--;return}this.trieCurrent=this.entityTrie[this.trieIndex];var t=this.trieCurrent&a.BinTrieFlags.VALUE_LENGTH;if(t){var u=(t>>14)-1;if(this.allowLegacyEntity()||e===$.Semi){var r=this.index-this.entityExcess+1;r>this.sectionStart&&this.emitPartial(this.sectionStart,r),this.entityResult=this.trieIndex,this.trieIndex+=u,this.entityExcess=0,this.sectionStart=this.index+1,0===u&&this.emitNamedEntity()}else this.trieIndex+=u}},e.prototype.emitNamedEntity=function(){if(this.state=this.baseState,0!==this.entityResult){var e=(this.entityTrie[this.entityResult]&a.BinTrieFlags.VALUE_LENGTH)>>14;switch(e){case 1:this.emitCodePoint(this.entityTrie[this.entityResult]&~a.BinTrieFlags.VALUE_LENGTH);break;case 2:this.emitCodePoint(this.entityTrie[this.entityResult+1]);break;case 3:this.emitCodePoint(this.entityTrie[this.entityResult+1]),this.emitCodePoint(this.entityTrie[this.entityResult+2])}}},e.prototype.stateBeforeNumericEntity=function(e){(32|e)===$.LowerX?(this.entityExcess++,this.state=n.InHexEntity):(this.state=n.InNumericEntity,this.stateInNumericEntity(e))},e.prototype.emitNumericEntity=function(e){var t=this.index-this.entityExcess-1;t+2+Number(this.state===n.InHexEntity)!==this.index&&(t>this.sectionStart&&this.emitPartial(this.sectionStart,t),this.sectionStart=this.index+Number(e),this.emitCodePoint((0,a.replaceCodePoint)(this.entityResult))),this.state=this.baseState},e.prototype.stateInNumericEntity=function(e){e===$.Semi?this.emitNumericEntity(!0):f(e)?(this.entityResult=10*this.entityResult+(e-$.Zero),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)},e.prototype.stateInHexEntity=function(e){if(e===$.Semi)this.emitNumericEntity(!0);else if(f(e))this.entityResult=16*this.entityResult+(e-$.Zero),this.entityExcess++;else{var t;(t=e)>=$.UpperA&&t<=$.UpperF||t>=$.LowerA&&t<=$.LowerF?(this.entityResult=16*this.entityResult+((32|e)-$.LowerA+10),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)}},e.prototype.allowLegacyEntity=function(){return!this.xmlMode&&(this.baseState===n.Text||this.baseState===n.InSpecialTag)},e.prototype.cleanup=function(){this.running&&this.sectionStart!==this.index&&(this.state===n.Text||this.state===n.InSpecialTag&&0===this.sequenceIndex?(this.cbs.ontext(this.sectionStart,this.index),this.sectionStart=this.index):(this.state===n.InAttributeValueDq||this.state===n.InAttributeValueSq||this.state===n.InAttributeValueNq)&&(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=this.index))},e.prototype.shouldContinue=function(){return this.index */ u.read=function(e,t,u,r,$){var n,i,s=8*$-r-1,o=(1<>1,c=-7,l=u?$-1:0,f=u?-1:1,d=e[t+l];for(l+=f,n=d&(1<<-c)-1,d>>=-c,c+=s;c>0;n=256*n+e[t+l],l+=f,c-=8);for(i=n&(1<<-c)-1,n>>=-c,c+=r;c>0;i=256*i+e[t+l],l+=f,c-=8);if(0===n)n=1-a;else{if(n===o)return i?NaN:(d?-1:1)*(1/0);i+=Math.pow(2,r),n-=a}return(d?-1:1)*i*Math.pow(2,n-r)},u.write=function(e,t,u,r,$,n){var i,s,o,a=8*n-$-1,c=(1<>1,f=23===$?5960464477539062e-23:0,d=r?0:n-1,_=r?1:-1,h=t<0||0===t&&1/t<0?1:0;for(isNaN(t=Math.abs(t))||t===1/0?(s=isNaN(t)?1:0,i=c):(i=Math.floor(Math.log(t)/Math.LN2),t*(o=Math.pow(2,-i))<1&&(i--,o*=2),i+l>=1?t+=f/o:t+=f*Math.pow(2,1-l),t*o>=2&&(i++,o/=2),i+l>=c?(s=0,i=c):i+l>=1?(s=(t*o-1)*Math.pow(2,$),i+=l):(s=t*Math.pow(2,l-1)*Math.pow(2,$),i=0));$>=8;e[u+d]=255&s,d+=_,s/=256,$-=8);for(i=i<<$|s,a+=$;a>0;e[u+d]=255&i,d+=_,i/=256,a-=8);e[u+d-_]|=128*h}},{},],31:[function(e,t,u){"use strict";/*! * is-plain-object * * Copyright (c) 2014-2017, Jon Schlinkert. * Released under the MIT License. - */ + */ function r(e){return"[object Object]"===Object.prototype.toString.call(e)}Object.defineProperty(u,"__esModule",{value:!0}),u.isPlainObject=function e(t){var u,$;return!1!==r(t)&&(void 0===(u=t.constructor)||!1!==r($=u.prototype)&&!1!==$.hasOwnProperty("isPrototypeOf"))}},{},],32:[function(e,t,u){let r=(e,t=21)=>(u=t)=>{let r="",$=u;for(;$--;)r+=e[Math.random()*e.length|0];return r},$=(e=21)=>{let t="",u=e;for(;u--;)t+="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict"[64*Math.random()|0];return t};t.exports={nanoid:$,customAlphabet:r}},{},],33:[function(e,t,u){var r,$;r=this,$=function(){return function(e){function t(e){return" "===e||" "===e||"\n"===e||"\f"===e||"\r"===e}function u(t){var u,r=t.exec(e.substring(h));if(r)return h+=(u=r[0]).length,u}for(var r,$,n,i,s,o=e.length,a=/^[ \t\n\r\u000c]+/,c=/^[, \t\n\r\u000c]+/,l=/^[^ \t\n\r\u000c]+/,f=/[,]+$/,d=/^\d+$/,_=/^-?(?:[0-9]+|[0-9]*\.[0-9]+)(?:[eE][+-]?[0-9]+)?$/,h=0,p=[];;){if(u(c),h>=o)return p;r=u(l),$=[],","===r.slice(-1)?(r=r.replace(f,""),m()):b()}function b(){for(u(a),n="",i="in descriptor";;){if(s=e.charAt(h),"in descriptor"===i){if(t(s))n&&($.push(n),n="",i="after descriptor");else if(","===s){h+=1,n&&$.push(n),m();return}else if("("===s)n+=s,i="in parens";else if(""===s){n&&$.push(n),m();return}else n+=s}else if("in parens"===i){if(")"===s)n+=s,i="in descriptor";else if(""===s){$.push(n),m();return}else n+=s}else if("after descriptor"===i){if(t(s));else if(""===s){m();return}else i="in descriptor",h-=1}h+=1}}function m(){var t,u,n,i,s,o,a,c,l,f=!1,h={};for(i=0;i<$.length;i++)o=(s=$[i])[s.length-1],c=parseInt(a=s.substring(0,s.length-1),10),l=parseFloat(a),d.test(a)&&"w"===o?((t||u)&&(f=!0),0===c?f=!0:t=c):_.test(a)&&"x"===o?((t||u||n)&&(f=!0),l<0?f=!0:u=l):d.test(a)&&"h"===o?((n||u)&&(f=!0),0===c?f=!0:n=c):f=!0;f?console&&console.log&&console.log("Invalid srcset descriptor found in '"+e+"' at '"+s+"'."):(h.url=r,t&&(h.w=t),u&&(h.d=u),n&&(h.h=n),p.push(h))}}},"function"==typeof define&&define.amd?define([],$):"object"==typeof t&&t.exports?t.exports=$():r.parseSrcset=$()},{},],34:[function(e,t,u){var r=String,$=function(){return{isColorSupported:!1,reset:r,bold:r,dim:r,italic:r,underline:r,inverse:r,hidden:r,strikethrough:r,black:r,red:r,green:r,yellow:r,blue:r,magenta:r,cyan:r,white:r,gray:r,bgBlack:r,bgRed:r,bgGreen:r,bgYellow:r,bgBlue:r,bgMagenta:r,bgCyan:r,bgWhite:r}};t.exports=$(),t.exports.createColors=$},{},],35:[function(e,t,u){"use strict";let r=e("./container");class $ extends r{constructor(e){super(e),this.type="atrule"}append(...e){return this.proxyOf.nodes||(this.nodes=[]),super.append(...e)}prepend(...e){return this.proxyOf.nodes||(this.nodes=[]),super.prepend(...e)}}t.exports=$,$.default=$,r.registerAtRule($)},{"./container":37},],36:[function(e,t,u){"use strict";let r=e("./node");class $ extends r{constructor(e){super(e),this.type="comment"}}t.exports=$,$.default=$},{"./node":47},],37:[function(e,t,u){"use strict";let{isClean:r,my:$}=e("./symbols"),n=e("./declaration"),i=e("./comment"),s=e("./node"),o,a,c,l;class f extends s{append(...e){for(let t of e){let u=this.normalize(t,this.last);for(let r of u)this.proxyOf.nodes.push(r)}return this.markDirty(),this}cleanRaws(e){if(super.cleanRaws(e),this.nodes)for(let t of this.nodes)t.cleanRaws(e)}each(e){if(!this.proxyOf.nodes)return;let t=this.getIterator(),u,r;for(;this.indexes[t]e[t](...u.map(e=>"function"==typeof e?(t,u)=>e(t.toProxy(),u):e));if("every"===t||"some"===t)return u=>e[t]((e,...t)=>u(e.toProxy(),...t));if("root"===t)return()=>e.root().toProxy();else if("nodes"===t)return e.nodes.map(e=>e.toProxy());else if("first"===t||"last"===t)return e[t].toProxy();else return e[t]},set:(e,t,u)=>e[t]===u||(e[t]=u,("name"===t||"params"===t||"selector"===t)&&e.markDirty(),!0)}}index(e){return"number"==typeof e?e:(e.proxyOf&&(e=e.proxyOf),this.proxyOf.nodes.indexOf(e))}insertAfter(e,t){let u=this.index(e),r=this.normalize(t,this.proxyOf.nodes[u]).reverse();for(let $ of(u=this.index(e),r))this.proxyOf.nodes.splice(u+1,0,$);let n;for(let i in this.indexes)u<(n=this.indexes[i])&&(this.indexes[i]=n+r.length);return this.markDirty(),this}insertBefore(e,t){let u=this.index(e),r=0===u&&"prepend",$=this.normalize(t,this.proxyOf.nodes[u],r).reverse();for(let n of(u=this.index(e),$))this.proxyOf.nodes.splice(u,0,n);let i;for(let s in this.indexes)u<=(i=this.indexes[s])&&(this.indexes[s]=i+$.length);return this.markDirty(),this}normalize(e,t){if("string"==typeof e)e=function e(t){return t.map(t=>(t.nodes&&(t.nodes=e(t.nodes)),delete t.source,t))}(o(e).nodes);else if(Array.isArray(e))for(let u of e=e.slice(0))u.parent&&u.parent.removeChild(u,"ignore");else if("root"===e.type&&"document"!==this.type)for(let s of e=e.nodes.slice(0))s.parent&&s.parent.removeChild(s,"ignore");else if(e.type)e=[e];else if(e.prop){if(void 0===e.value)throw Error("Value field is missed in node creation");"string"!=typeof e.value&&(e.value=String(e.value)),e=[new n(e)]}else if(e.selector)e=[new a(e)];else if(e.name)e=[new c(e)];else if(e.text)e=[new i(e)];else throw Error("Unknown node type in node creation");return e.map(e=>(e[$]||f.rebuild(e),(e=e.proxyOf).parent&&e.parent.removeChild(e),e[r]&&function e(t){if(t[r]=!1,t.proxyOf.nodes)for(let u of t.proxyOf.nodes)e(u)}(e),void 0===e.raws.before&&t&&void 0!==t.raws.before&&(e.raws.before=t.raws.before.replace(/\S/g,"")),e.parent=this.proxyOf,e))}prepend(...e){for(let t of e=e.reverse()){let u=this.normalize(t,this.first,"prepend").reverse();for(let r of u)this.proxyOf.nodes.unshift(r);for(let $ in this.indexes)this.indexes[$]=this.indexes[$]+u.length}return this.markDirty(),this}push(e){return e.parent=this,this.proxyOf.nodes.push(e),this}removeAll(){for(let e of this.proxyOf.nodes)e.parent=void 0;return this.proxyOf.nodes=[],this.markDirty(),this}removeChild(e){e=this.index(e),this.proxyOf.nodes[e].parent=void 0,this.proxyOf.nodes.splice(e,1);let t;for(let u in this.indexes)(t=this.indexes[u])>=e&&(this.indexes[u]=t-1);return this.markDirty(),this}replaceValues(e,t,u){return u||(u=t,t={}),this.walkDecls(r=>{(!t.props||t.props.includes(r.prop))&&(!t.fast||r.value.includes(t.fast))&&(r.value=r.value.replace(e,u))}),this.markDirty(),this}some(e){return this.nodes.some(e)}walk(e){return this.each((t,u)=>{let r;try{r=e(t,u)}catch($){throw t.addToError($)}return!1!==r&&t.walk&&(r=t.walk(e)),r})}walkAtRules(e,t){return t?e instanceof RegExp?this.walk((u,r)=>{if("atrule"===u.type&&e.test(u.name))return t(u,r)}):this.walk((u,r)=>{if("atrule"===u.type&&u.name===e)return t(u,r)}):(t=e,this.walk((e,u)=>{if("atrule"===e.type)return t(e,u)}))}walkComments(e){return this.walk((t,u)=>{if("comment"===t.type)return e(t,u)})}walkDecls(e,t){return t?e instanceof RegExp?this.walk((u,r)=>{if("decl"===u.type&&e.test(u.prop))return t(u,r)}):this.walk((u,r)=>{if("decl"===u.type&&u.prop===e)return t(u,r)}):(t=e,this.walk((e,u)=>{if("decl"===e.type)return t(e,u)}))}walkRules(e,t){return t?e instanceof RegExp?this.walk((u,r)=>{if("rule"===u.type&&e.test(u.selector))return t(u,r)}):this.walk((u,r)=>{if("rule"===u.type&&u.selector===e)return t(u,r)}):(t=e,this.walk((e,u)=>{if("rule"===e.type)return t(e,u)}))}get first(){if(this.proxyOf.nodes)return this.proxyOf.nodes[0]}get last(){if(this.proxyOf.nodes)return this.proxyOf.nodes[this.proxyOf.nodes.length-1]}}f.registerParse=e=>{o=e},f.registerRule=e=>{a=e},f.registerAtRule=e=>{c=e},f.registerRoot=e=>{l=e},t.exports=f,f.default=f,f.rebuild=e=>{"atrule"===e.type?Object.setPrototypeOf(e,c.prototype):"rule"===e.type?Object.setPrototypeOf(e,a.prototype):"decl"===e.type?Object.setPrototypeOf(e,n.prototype):"comment"===e.type?Object.setPrototypeOf(e,i.prototype):"root"===e.type&&Object.setPrototypeOf(e,l.prototype),e[$]=!0,e.nodes&&e.nodes.forEach(e=>{f.rebuild(e)})}},{"./comment":36,"./declaration":39,"./node":47,"./symbols":58},],38:[function(e,t,u){"use strict";let r=e("picocolors"),$=e("./terminal-highlight");class n extends Error{constructor(e,t,u,r,$,i){super(e),this.name="CssSyntaxError",this.reason=e,$&&(this.file=$),r&&(this.source=r),i&&(this.plugin=i),void 0!==t&&void 0!==u&&("number"==typeof t?(this.line=t,this.column=u):(this.line=t.line,this.column=t.column,this.endLine=u.line,this.endColumn=u.column)),this.setMessage(),Error.captureStackTrace&&Error.captureStackTrace(this,n)}setMessage(){this.message=this.plugin?this.plugin+": ":"",this.message+=this.file?this.file:"",void 0!==this.line&&(this.message+=":"+this.line+":"+this.column),this.message+=": "+this.reason}showSourceCode(e){if(!this.source)return"";let t=this.source;null==e&&(e=r.isColorSupported),$&&e&&(t=$(t));let u=t.split(/\r?\n/),n=Math.max(this.line-3,0),i=Math.min(this.line+2,u.length),s=String(i).length,o,a;if(e){let{bold:c,gray:l,red:f}=r.createColors(!0);o=e=>c(f(e)),a=e=>l(e)}else o=a=e=>e;return u.slice(n,i).map((e,t)=>{let u=n+1+t,r=" "+(" "+u).slice(-s)+" | ";if(u===this.line){let $=a(r.replace(/\d/g," "))+e.slice(0,this.column-1).replace(/[^\t]/g," ");return o(">")+a(r)+e+"\n "+$+o("^")}return" "+a(r)+e}).join("\n")}toString(){let e=this.showSourceCode();return e&&(e="\n\n"+e+"\n"),this.name+": "+this.message+e}}t.exports=n,n.default=n},{"./terminal-highlight":2,picocolors:34},],39:[function(e,t,u){"use strict";let r=e("./node");class $ extends r{constructor(e){e&&void 0!==e.value&&"string"!=typeof e.value&&(e={...e,value:String(e.value)}),super(e),this.type="decl"}get variable(){return this.prop.startsWith("--")||"$"===this.prop[0]}}t.exports=$,$.default=$},{"./node":47},],40:[function(e,t,u){"use strict";let r=e("./container"),$,n;class i extends r{constructor(e){super({type:"document",...e}),this.nodes||(this.nodes=[])}toResult(e={}){return new $(new n,this,e).stringify()}}i.registerLazyResult=e=>{$=e},i.registerProcessor=e=>{n=e},t.exports=i,i.default=i},{"./container":37},],41:[function(e,t,u){"use strict";let r=e("./declaration"),$=e("./previous-map"),n=e("./comment"),i=e("./at-rule"),s=e("./input"),o=e("./root"),a=e("./rule");function c(e,t){if(Array.isArray(e))return e.map(e=>c(e));let{inputs:u,...l}=e;if(u)for(let f of(t=[],u)){let d={...f,__proto__:s.prototype};d.map&&(d.map={...d.map,__proto__:$.prototype}),t.push(d)}if(l.nodes&&(l.nodes=e.nodes.map(e=>c(e,t))),l.source){let{inputId:_,...h}=l.source;l.source=h,null!=_&&(l.source.input=t[_])}if("root"===l.type)return new o(l);if("decl"===l.type)return new r(l);if("rule"===l.type)return new a(l);if("comment"===l.type)return new n(l);if("atrule"===l.type)return new i(l);else throw Error("Unknown node type: "+e.type)}t.exports=c,c.default=c},{"./at-rule":35,"./comment":36,"./declaration":39,"./input":42,"./previous-map":51,"./root":54,"./rule":55},],42:[function(e,t,u){"use strict";let{SourceMapConsumer:r,SourceMapGenerator:$}=e("source-map-js"),{fileURLToPath:n,pathToFileURL:i}=e("url"),{isAbsolute:s,resolve:o}=e("path"),{nanoid:a}=e("nanoid/non-secure"),c=e("./terminal-highlight"),l=e("./css-syntax-error"),f=e("./previous-map"),d=Symbol("fromOffsetCache"),_=Boolean(r&&$),h=Boolean(o&&s);class p{constructor(e,t={}){if(null==e||"object"==typeof e&&!e.toString)throw Error(`PostCSS received ${e} instead of CSS string`);if(this.css=e.toString(),"\uFEFF"===this.css[0]||"￾"===this.css[0]?(this.hasBOM=!0,this.css=this.css.slice(1)):this.hasBOM=!1,t.from&&(!h||/^\w+:\/\//.test(t.from)||s(t.from)?this.file=t.from:this.file=o(t.from)),h&&_){let u=new f(this.css,t);if(u.text){this.map=u;let r=u.consumer().file;!this.file&&r&&(this.file=this.mapResolve(r))}}this.file||(this.id=""),this.map&&(this.map.file=this.from)}error(e,t,u,r={}){let $,n,s;if(t&&"object"==typeof t){let o=t,a=u;if("number"==typeof o.offset){let c=this.fromOffset(o.offset);t=c.line,u=c.col}else t=o.line,u=o.column;if("number"==typeof a.offset){let f=this.fromOffset(a.offset);n=f.line,s=f.col}else n=a.line,s=a.column}else if(!u){let d=this.fromOffset(t);t=d.line,u=d.col}let _=this.origin(t,u,n,s);return($=_?new l(e,void 0===_.endLine?_.line:{column:_.column,line:_.line},void 0===_.endLine?_.column:{column:_.endColumn,line:_.endLine},_.source,_.file,r.plugin):new l(e,void 0===n?t:{column:u,line:t},void 0===n?u:{column:s,line:n},this.css,this.file,r.plugin)).input={column:u,endColumn:s,endLine:n,line:t,source:this.css},this.file&&(i&&($.input.url=i(this.file).toString()),$.input.file=this.file),$}fromOffset(e){let t,u;if(this[d])u=this[d];else{let r=this.css.split("\n");u=Array(r.length);let $=0;for(let n=0,i=r.length;n=t)s=u.length-1;else{let o=u.length-2,a;for(;s>1)])o=a-1;else if(e>=u[a+1])s=a+1;else{s=a;break}}return{col:e-u[s]+1,line:s+1}}mapResolve(e){return/^\w+:\/\//.test(e)?e:o(this.map.consumer().sourceRoot||this.map.root||".",e)}origin(e,t,u,r){if(!this.map)return!1;let $=this.map.consumer(),o=$.originalPositionFor({column:t,line:e});if(!o.source)return!1;let a;"number"==typeof u&&(a=$.originalPositionFor({column:r,line:u}));let c;c=s(o.source)?i(o.source):new URL(o.source,this.map.consumer().sourceRoot||i(this.map.mapFile));let l={column:o.column,endColumn:a&&a.column,endLine:a&&a.line,line:o.line,url:c.toString()};if("file:"===c.protocol){if(n)l.file=n(c);else throw Error("file: protocol is not available in this PostCSS build")}let f=$.sourceContentFor(o.source);return f&&(l.source=f),l}toJSON(){let e={};for(let t of["hasBOM","css","file","id"])null!=this[t]&&(e[t]=this[t]);return this.map&&(e.map={...this.map},e.map.consumerCache&&(e.map.consumerCache=void 0)),e}get from(){return this.file||this.id}}t.exports=p,p.default=p,c&&c.registerInput&&c.registerInput(p)},{"./css-syntax-error":38,"./previous-map":51,"./terminal-highlight":2,"nanoid/non-secure":32,path:2,"source-map-js":2,url:2},],43:[function(e,t,u){(function(u){(function(){"use strict";let{isClean:r,my:$}=e("./symbols"),n=e("./map-generator"),i=e("./stringify"),s=e("./container"),o=e("./document"),a=e("./warn-once"),c=e("./result"),l=e("./parse"),f=e("./root"),d={atrule:"AtRule",comment:"Comment",decl:"Declaration",document:"Document",root:"Root",rule:"Rule"},_={AtRule:!0,AtRuleExit:!0,Comment:!0,CommentExit:!0,Declaration:!0,DeclarationExit:!0,Document:!0,DocumentExit:!0,Once:!0,OnceExit:!0,postcssPlugin:!0,prepare:!0,Root:!0,RootExit:!0,Rule:!0,RuleExit:!0},h={Once:!0,postcssPlugin:!0,prepare:!0};function p(e){return"object"==typeof e&&"function"==typeof e.then}function b(e){let t=!1,u=d[e.type];return("decl"===e.type?t=e.prop.toLowerCase():"atrule"===e.type&&(t=e.name.toLowerCase()),t&&e.append)?[u,u+"-"+t,0,u+"Exit",u+"Exit-"+t,]:t?[u,u+"-"+t,u+"Exit",u+"Exit-"+t,]:e.append?[u,0,u+"Exit"]:[u,u+"Exit"]}function m(e){let t;return t="document"===e.type?["Document",0,"DocumentExit"]:"root"===e.type?["Root",0,"RootExit"]:b(e),{eventIndex:0,events:t,iterator:0,node:e,visitorIndex:0,visitors:[]}}function g(e){return e[r]=!1,e.nodes&&e.nodes.forEach(e=>g(e)),e}let x={};class y{constructor(e,t,u){this.stringified=!1,this.processed=!1;let r;if("object"==typeof t&&null!==t&&("root"===t.type||"document"===t.type))r=g(t);else if(t instanceof y||t instanceof c)r=g(t.root),t.map&&(void 0===u.map&&(u.map={}),u.map.inline||(u.map.inline=!1),u.map.prev=t.map);else{let n=l;u.syntax&&(n=u.syntax.parse),u.parser&&(n=u.parser),n.parse&&(n=n.parse);try{r=n(t,u)}catch(i){this.processed=!0,this.error=i}r&&!r[$]&&s.rebuild(r)}this.result=new c(e,r,u),this.helpers={...x,postcss:x,result:this.result},this.plugins=this.processor.plugins.map(e=>"object"==typeof e&&e.prepare?{...e,...e.prepare(this.result)}:e)}async(){return this.error?Promise.reject(this.error):this.processed?Promise.resolve(this.result):(this.processing||(this.processing=this.runAsync()),this.processing)}catch(e){return this.async().catch(e)}finally(e){return this.async().then(e,e)}getAsyncError(){throw Error("Use process(css).then(cb) to work with async plugins")}handleError(e,t){let r=this.result.lastPlugin;try{if(t&&t.addToError(e),this.error=e,"CssSyntaxError"!==e.name||e.plugin){if(r.postcssVersion&&"production"!==u.env.NODE_ENV){let $=r.postcssPlugin,n=r.postcssVersion,i=this.result.processor.version,s=n.split("."),o=i.split(".");(s[0]!==o[0]||parseInt(s[1])>parseInt(o[1]))&&console.error("Unknown error from PostCSS plugin. Your current PostCSS version is "+i+", but "+$+" uses "+n+". Perhaps this is the source of the error below.")}}else e.plugin=r.postcssPlugin,e.setMessage()}catch(a){console&&console.error&&console.error(a)}return e}prepareVisitors(){this.listeners={};let e=(e,t,u)=>{this.listeners[t]||(this.listeners[t]=[]),this.listeners[t].push([e,u])};for(let t of this.plugins)if("object"==typeof t)for(let u in t){if(!_[u]&&/^[A-Z]/.test(u))throw Error(`Unknown event ${u} in ${t.postcssPlugin}. Try to update PostCSS (${this.processor.version} now).`);if(!h[u]){if("object"==typeof t[u])for(let r in t[u])e(t,"*"===r?u:u+"-"+r.toLowerCase(),t[u][r]);else"function"==typeof t[u]&&e(t,u,t[u])}}this.hasListener=Object.keys(this.listeners).length>0}async runAsync(){this.plugin=0;for(let e=0;e0;){let s=this.visitTick(i);if(p(s))try{await s}catch(o){let a=i[i.length-1].node;throw this.handleError(o,a)}}}if(this.listeners.OnceExit)for(let[c,l]of this.listeners.OnceExit){this.result.lastPlugin=c;try{"document"===n.type?await Promise.all(n.nodes.map(e=>l(e,this.helpers))):await l(n,this.helpers)}catch(f){throw this.handleError(f)}}}return this.processed=!0,this.stringify()}runOnRoot(e){this.result.lastPlugin=e;try{if("object"==typeof e&&e.Once){if("document"===this.result.root.type){let t=this.result.root.nodes.map(t=>e.Once(t,this.helpers));if(p(t[0]))return Promise.all(t);return t}return e.Once(this.result.root,this.helpers)}if("function"==typeof e)return e(this.result.root,this.result)}catch(u){throw this.handleError(u)}}stringify(){if(this.error)throw this.error;if(this.stringified)return this.result;this.stringified=!0,this.sync();let e=this.result.opts,t=i;e.syntax&&(t=e.syntax.stringify),e.stringifier&&(t=e.stringifier),t.stringify&&(t=t.stringify);let u=new n(t,this.result.root,this.result.opts).generate();return this.result.css=u[0],this.result.map=u[1],this.result}sync(){if(this.error)throw this.error;if(this.processed)return this.result;if(this.processed=!0,this.processing)throw this.getAsyncError();for(let e of this.plugins)if(p(this.runOnRoot(e)))throw this.getAsyncError();if(this.prepareVisitors(),this.hasListener){let t=this.result.root;for(;!t[r];)t[r]=!0,this.walkSync(t);if(this.listeners.OnceExit){if("document"===t.type)for(let u of t.nodes)this.visitSync(this.listeners.OnceExit,u);else this.visitSync(this.listeners.OnceExit,t)}}return this.result}then(e,t){return"production"===u.env.NODE_ENV||"from"in this.opts||a("Without `from` option PostCSS could generate wrong source map and will not find Browserslist config. Set it to CSS file path or to `undefined` to prevent this warning."),this.async().then(e,t)}toString(){return this.css}visitSync(e,t){for(let[u,r]of e){this.result.lastPlugin=u;let $;try{$=r(t,this.helpers)}catch(n){throw this.handleError(n,t.proxyOf)}if("root"!==t.type&&"document"!==t.type&&!t.parent)return!0;if(p($))throw this.getAsyncError()}}visitTick(e){let t=e[e.length-1],{node:u,visitors:$}=t;if("root"!==u.type&&"document"!==u.type&&!u.parent){e.pop();return}if($.length>0&&t.visitorIndex<$.length){let[n,i]=$[t.visitorIndex];t.visitorIndex+=1,t.visitorIndex===$.length&&(t.visitors=[],t.visitorIndex=0),this.result.lastPlugin=n;try{return i(u.toProxy(),this.helpers)}catch(s){throw this.handleError(s,u)}}if(0!==t.iterator){let o=t.iterator,a;for(;a=u.nodes[u.indexes[o]];)if(u.indexes[o]+=1,!a[r]){a[r]=!0,e.push(m(a));return}t.iterator=0,delete u.indexes[o]}let c=t.events;for(;t.eventIndex{e[r]||this.walkSync(e)});else{let $=this.listeners[u];if($&&this.visitSync($,e.toProxy()))return}}warnings(){return this.sync().warnings()}get content(){return this.stringify().content}get css(){return this.stringify().css}get map(){return this.stringify().map}get messages(){return this.sync().messages}get opts(){return this.result.opts}get processor(){return this.result.processor}get root(){return this.sync().root}get[Symbol.toStringTag](){return"LazyResult"}}y.registerPostcss=e=>{x=e},t.exports=y,y.default=y,f.registerLazyResult(y),o.registerLazyResult(y)}).call(this)}).call(this,e("_process"))},{"./container":37,"./document":40,"./map-generator":45,"./parse":48,"./result":53,"./root":54,"./stringify":57,"./symbols":58,"./warn-once":60,_process:62},],44:[function(e,t,u){"use strict";let r={comma:e=>r.split(e,[","],!0),space:e=>r.split(e,[" ","\n"," "]),split(e,t,u){let r=[],$="",n=!1,i=0,s=!1,o="",a=!1;for(let c of e)a?a=!1:"\\"===c?a=!0:s?c===o&&(s=!1):'"'===c||"'"===c?(s=!0,o=c):"("===c?i+=1:")"===c?i>0&&(i-=1):0===i&&t.includes(c)&&(n=!0),n?(""!==$&&r.push($.trim()),$="",n=!1):$+=c;return(u||""!==$)&&r.push($.trim()),r}};t.exports=r,r.default=r},{},],45:[function(e,t,u){(function(u){(function(){"use strict";let{SourceMapConsumer:r,SourceMapGenerator:$}=e("source-map-js"),{dirname:n,relative:i,resolve:s,sep:o}=e("path"),{pathToFileURL:a}=e("url"),c=e("./input"),l=Boolean(r&&$),f=Boolean(n&&s&&i&&o);t.exports=class e{constructor(e,t,u,r){this.stringify=e,this.mapOpts=u.map||{},this.root=t,this.opts=u,this.css=r,this.usesFileUrls=!this.mapOpts.from&&this.mapOpts.absolute,this.memoizedFileURLs=new Map,this.memoizedPaths=new Map,this.memoizedURLs=new Map}addAnnotation(){let e;e=this.isInline()?"data:application/json;base64,"+this.toBase64(this.map.toString()):"string"==typeof this.mapOpts.annotation?this.mapOpts.annotation:"function"==typeof this.mapOpts.annotation?this.mapOpts.annotation(this.opts.to,this.root):this.outputFile()+".map";let t="\n";this.css.includes("\r\n")&&(t="\r\n"),this.css+=t+"/*# sourceMappingURL="+e+" */"}applyPrevMaps(){for(let e of this.previous()){let t=this.toUrl(this.path(e.file)),u=e.root||n(e.file),$;!1===this.mapOpts.sourcesContent?($=new r(e.text)).sourcesContent&&($.sourcesContent=$.sourcesContent.map(()=>null)):$=e.consumer(),this.map.applySourceMap($,t,this.toUrl(this.path(u)))}}clearAnnotation(){if(!1!==this.mapOpts.annotation){if(this.root){let e;for(let t=this.root.nodes.length-1;t>=0;t--)"comment"===(e=this.root.nodes[t]).type&&0===e.text.indexOf("# sourceMappingURL=")&&this.root.removeChild(t)}else this.css&&(this.css=this.css.replace(/(\n)?\/\*#[\S\s]*?\*\/$/gm,""))}}generate(){if(this.clearAnnotation(),f&&l&&this.isMap())return this.generateMap();{let e="";return this.stringify(this.root,t=>{e+=t}),[e]}}generateMap(){if(this.root)this.generateString();else if(1===this.previous().length){let e=this.previous()[0].consumer();e.file=this.outputFile(),this.map=$.fromSourceMap(e)}else this.map=new $({file:this.outputFile()}),this.map.addMapping({generated:{column:0,line:1},original:{column:0,line:1},source:this.opts.from?this.toUrl(this.path(this.opts.from)):""});return(this.isSourcesContent()&&this.setSourcesContent(),this.root&&this.previous().length>0&&this.applyPrevMaps(),this.isAnnotation()&&this.addAnnotation(),this.isInline())?[this.css]:[this.css,this.map]}generateString(){this.css="",this.map=new $({file:this.outputFile()});let e=1,t=1,u="",r={generated:{column:0,line:0},original:{column:0,line:0},source:""},n,i;this.stringify(this.root,($,s,o)=>{if(this.css+=$,s&&"end"!==o&&(r.generated.line=e,r.generated.column=t-1,s.source&&s.source.start?(r.source=this.sourcePath(s),r.original.line=s.source.start.line,r.original.column=s.source.start.column-1,this.map.addMapping(r)):(r.source=u,r.original.line=1,r.original.column=0,this.map.addMapping(r))),(n=$.match(/\n/g))?(e+=n.length,i=$.lastIndexOf("\n"),t=$.length-i):t+=$.length,s&&"start"!==o){let a=s.parent||{raws:{}};(!("decl"===s.type||"atrule"===s.type&&!s.nodes)||s!==a.last||a.raws.semicolon)&&(s.source&&s.source.end?(r.source=this.sourcePath(s),r.original.line=s.source.end.line,r.original.column=s.source.end.column-1,r.generated.line=e,r.generated.column=t-2,this.map.addMapping(r)):(r.source=u,r.original.line=1,r.original.column=0,r.generated.line=e,r.generated.column=t-1,this.map.addMapping(r)))}})}isAnnotation(){return!!this.isInline()||(void 0!==this.mapOpts.annotation?this.mapOpts.annotation:!this.previous().length||this.previous().some(e=>e.annotation))}isInline(){if(void 0!==this.mapOpts.inline)return this.mapOpts.inline;let e=this.mapOpts.annotation;return(void 0===e||!0===e)&&(!this.previous().length||this.previous().some(e=>e.inline))}isMap(){return void 0!==this.opts.map?!!this.opts.map:this.previous().length>0}isSourcesContent(){return void 0!==this.mapOpts.sourcesContent?this.mapOpts.sourcesContent:!this.previous().length||this.previous().some(e=>e.withContent())}outputFile(){return this.opts.to?this.path(this.opts.to):this.opts.from?this.path(this.opts.from):"to.css"}path(e){if(this.mapOpts.absolute||60===e.charCodeAt(0)||/^\w+:\/\//.test(e))return e;let t=this.memoizedPaths.get(e);if(t)return t;let u=this.opts.to?n(this.opts.to):".";"string"==typeof this.mapOpts.annotation&&(u=n(s(u,this.mapOpts.annotation)));let r=i(u,e);return this.memoizedPaths.set(e,r),r}previous(){if(!this.previousMaps){if(this.previousMaps=[],this.root)this.root.walk(e=>{if(e.source&&e.source.input.map){let t=e.source.input.map;this.previousMaps.includes(t)||this.previousMaps.push(t)}});else{let e=new c(this.css,this.opts);e.map&&this.previousMaps.push(e.map)}}return this.previousMaps}setSourcesContent(){let e={};if(this.root)this.root.walk(t=>{if(t.source){let u=t.source.input.from;if(u&&!e[u]){e[u]=!0;let r=this.usesFileUrls?this.toFileUrl(u):this.toUrl(this.path(u));this.map.setSourceContent(r,t.source.input.css)}}});else if(this.css){let t=this.opts.from?this.toUrl(this.path(this.opts.from)):"";this.map.setSourceContent(t,this.css)}}sourcePath(e){return this.mapOpts.from?this.toUrl(this.mapOpts.from):this.usesFileUrls?this.toFileUrl(e.source.input.from):this.toUrl(this.path(e.source.input.from))}toBase64(e){return u?u.from(e).toString("base64"):window.btoa(unescape(encodeURIComponent(e)))}toFileUrl(e){let t=this.memoizedFileURLs.get(e);if(t)return t;if(a){let u=a(e).toString();return this.memoizedFileURLs.set(e,u),u}throw Error("`map.absolute` option is not available in this PostCSS build")}toUrl(e){let t=this.memoizedURLs.get(e);if(t)return t;"\\"===o&&(e=e.replace(/\\/g,"/"));let u=encodeURI(e).replace(/[#?]/g,encodeURIComponent);return this.memoizedURLs.set(e,u),u}}}).call(this)}).call(this,e("buffer").Buffer)},{"./input":42,buffer:3,path:2,"source-map-js":2,url:2},],46:[function(e,t,u){(function(u){(function(){"use strict";let r=e("./map-generator"),$=e("./stringify"),n=e("./warn-once"),i=e("./parse"),s=e("./result");class o{constructor(e,t,u){t=t.toString(),this.stringified=!1,this._processor=e,this._css=t,this._opts=u,this._map=void 0;let n;this.result=new s(this._processor,n,this._opts),this.result.css=t;let i=this;Object.defineProperty(this.result,"root",{get:()=>i.root});let o=new r($,n,this._opts,t);if(o.isMap()){let[a,c]=o.generate();a&&(this.result.css=a),c&&(this.result.map=c)}}async(){return this.error?Promise.reject(this.error):Promise.resolve(this.result)}catch(e){return this.async().catch(e)}finally(e){return this.async().then(e,e)}sync(){if(this.error)throw this.error;return this.result}then(e,t){return"production"===u.env.NODE_ENV||"from"in this._opts||n("Without `from` option PostCSS could generate wrong source map and will not find Browserslist config. Set it to CSS file path or to `undefined` to prevent this warning."),this.async().then(e,t)}toString(){return this._css}warnings(){return[]}get content(){return this.result.css}get css(){return this.result.css}get map(){return this.result.map}get messages(){return[]}get opts(){return this.result.opts}get processor(){return this.result.processor}get root(){if(this._root)return this._root;let e;try{e=i(this._css,this._opts)}catch(t){this.error=t}if(!this.error)return this._root=e,e;throw this.error}get[Symbol.toStringTag](){return"NoWorkResult"}}t.exports=o,o.default=o}).call(this)}).call(this,e("_process"))},{"./map-generator":45,"./parse":48,"./result":53,"./stringify":57,"./warn-once":60,_process:62},],47:[function(e,t,u){"use strict";let{isClean:r,my:$}=e("./symbols"),n=e("./css-syntax-error"),i=e("./stringifier"),s=e("./stringify");class o{constructor(e={}){for(let t in this.raws={},this[r]=!1,this[$]=!0,e)if("nodes"===t)for(let u of(this.nodes=[],e[t]))"function"==typeof u.clone?this.append(u.clone()):this.append(u);else this[t]=e[t]}addToError(e){if(e.postcssNode=this,e.stack&&this.source&&/\n\s{4}at /.test(e.stack)){let t=this.source;e.stack=e.stack.replace(/\n\s{4}at /,`$&${t.input.from}:${t.start.line}:${t.start.column}$&`)}return e}after(e){return this.parent.insertAfter(this,e),this}assign(e={}){for(let t in e)this[t]=e[t];return this}before(e){return this.parent.insertBefore(this,e),this}cleanRaws(e){delete this.raws.before,delete this.raws.after,e||delete this.raws.between}clone(e={}){let t=function e(t,u){let r=new t.constructor;for(let $ in t){if(!Object.prototype.hasOwnProperty.call(t,$)||"proxyCache"===$)continue;let n=t[$],i=typeof n;"parent"===$&&"object"===i?u&&(r[$]=u):"source"===$?r[$]=n:Array.isArray(n)?r[$]=n.map(t=>e(t,r)):("object"===i&&null!==n&&(n=e(n)),r[$]=n)}return r}(this);for(let u in e)t[u]=e[u];return t}cloneAfter(e={}){let t=this.clone(e);return this.parent.insertAfter(this,t),t}cloneBefore(e={}){let t=this.clone(e);return this.parent.insertBefore(this,t),t}error(e,t={}){if(this.source){let{end:u,start:r}=this.rangeBy(t);return this.source.input.error(e,{column:r.column,line:r.line},{column:u.column,line:u.line},t)}return new n(e)}getProxyProcessor(){return{get:(e,t)=>"proxyOf"===t?e:"root"===t?()=>e.root().toProxy():e[t],set:(e,t,u)=>e[t]===u||(e[t]=u,("prop"===t||"value"===t||"name"===t||"params"===t||"important"===t||"text"===t)&&e.markDirty(),!0)}}markDirty(){if(this[r]){this[r]=!1;let e=this;for(;e=e.parent;)e[r]=!1}}next(){if(!this.parent)return;let e=this.parent.index(this);return this.parent.nodes[e+1]}positionBy(e,t){let u=this.source.start;if(e.index)u=this.positionInside(e.index,t);else if(e.word){let r=(t=this.toString()).indexOf(e.word);-1!==r&&(u=this.positionInside(r,t))}return u}positionInside(e,t){let u=t||this.toString(),r=this.source.start.column,$=this.source.start.line;for(let n=0;n"object"==typeof e&&e.toJSON?e.toJSON(null,t):e);else if("object"==typeof i&&i.toJSON)u[n]=i.toJSON(null,t);else if("source"===n){let s=t.get(i.input);null==s&&(s=$,t.set(i.input,$),$++),u[n]={end:i.end,inputId:s,start:i.start}}else u[n]=i}return r&&(u.inputs=[...t.keys()].map(e=>e.toJSON())),u}toProxy(){return this.proxyCache||(this.proxyCache=new Proxy(this,this.getProxyProcessor())),this.proxyCache}toString(e=s){e.stringify&&(e=e.stringify);let t="";return e(this,e=>{t+=e}),t}warn(e,t,u){let r={node:this};for(let $ in u)r[$]=u[$];return e.warn(t,r)}get proxyOf(){return this}}t.exports=o,o.default=o},{"./css-syntax-error":38,"./stringifier":56,"./stringify":57,"./symbols":58},],48:[function(e,t,u){(function(u){(function(){"use strict";let r=e("./container"),$=e("./parser"),n=e("./input");function i(e,t){let r=new n(e,t),i=new $(r);try{i.parse()}catch(s){throw"production"!==u.env.NODE_ENV&&"CssSyntaxError"===s.name&&t&&t.from&&(/\.scss$/i.test(t.from)?s.message+="\nYou tried to parse SCSS with the standard CSS parser; try again with the postcss-scss parser":/\.sass/i.test(t.from)?s.message+="\nYou tried to parse Sass with the standard CSS parser; try again with the postcss-sass parser":/\.less$/i.test(t.from)&&(s.message+="\nYou tried to parse Less with the standard CSS parser; try again with the postcss-less parser")),s}return i.root}t.exports=i,i.default=i,r.registerParse(i)}).call(this)}).call(this,e("_process"))},{"./container":37,"./input":42,"./parser":49,_process:62},],49:[function(e,t,u){"use strict";let r=e("./declaration"),$=e("./tokenize"),n=e("./comment"),i=e("./at-rule"),s=e("./root"),o=e("./rule"),a={empty:!0,space:!0};t.exports=class e{constructor(e){this.input=e,this.root=new s,this.current=this.root,this.spaces="",this.semicolon=!1,this.customProperty=!1,this.createTokenizer(),this.root.source={input:e,start:{column:1,line:1,offset:0}}}atrule(e){let t=new i;t.name=e[1].slice(1),""===t.name&&this.unnamedAtrule(t,e),this.init(t,e[2]);let u,r,$,n=!1,s=!1,o=[],a=[];for(;!this.tokenizer.endOfFile();){if("("===(u=(e=this.tokenizer.nextToken())[0])||"["===u?a.push("("===u?")":"]"):"{"===u&&a.length>0?a.push("}"):u===a[a.length-1]&&a.pop(),0===a.length){if(";"===u){t.source.end=this.getPosition(e[2]),t.source.end.offset++,this.semicolon=!0;break}if("{"===u){s=!0;break}if("}"===u){if(o.length>0){for(r=o[$=o.length-1];r&&"space"===r[0];)r=o[--$];r&&(t.source.end=this.getPosition(r[3]||r[2]),t.source.end.offset++)}this.end(e);break}else o.push(e)}else o.push(e);if(this.tokenizer.endOfFile()){n=!0;break}}t.raws.between=this.spacesAndCommentsFromEnd(o),o.length?(t.raws.afterName=this.spacesAndCommentsFromStart(o),this.raw(t,"params",o),n&&(e=o[o.length-1],t.source.end=this.getPosition(e[3]||e[2]),t.source.end.offset++,this.spaces=t.raws.between,t.raws.between="")):(t.raws.afterName="",t.params=""),s&&(t.nodes=[],this.current=t)}checkMissedSemicolon(e){let t=this.colon(e);if(!1===t)return;let u=0,r;for(let $=t-1;$>=0&&("space"===(r=e[$])[0]||2!==(u+=1));$--);throw this.input.error("Missed semicolon","word"===r[0]?r[3]+1:r[2])}colon(e){let t=0,u,r,$;for(let[n,i]of e.entries()){if("("===(r=(u=i)[0])&&(t+=1),")"===r&&(t-=1),0===t&&":"===r){if($){if("word"===$[0]&&"progid"===$[1])continue;return n}this.doubleColon(u)}$=u}return!1}comment(e){let t=new n;this.init(t,e[2]),t.source.end=this.getPosition(e[3]||e[2]),t.source.end.offset++;let u=e[1].slice(2,-2);if(/^\s*$/.test(u))t.text="",t.raws.left=u,t.raws.right="";else{let r=u.match(/^(\s*)([^]*\S)(\s*)$/);t.text=r[2],t.raws.left=r[1],t.raws.right=r[3]}}createTokenizer(){this.tokenizer=$(this.input)}decl(e,t){let u=new r;this.init(u,e[0][2]);let $=e[e.length-1];for(";"===$[0]&&(this.semicolon=!0,e.pop()),u.source.end=this.getPosition($[3]||$[2]||function e(t){for(let u=t.length-1;u>=0;u--){let r=t[u],$=r[3]||r[2];if($)return $}}(e)),u.source.end.offset++;"word"!==e[0][0];)1===e.length&&this.unknownWord(e),u.raws.before+=e.shift()[1];for(u.source.start=this.getPosition(e[0][2]),u.prop="";e.length;){let n=e[0][0];if(":"===n||"space"===n||"comment"===n)break;u.prop+=e.shift()[1]}u.raws.between="";let i;for(;e.length;){if(":"===(i=e.shift())[0]){u.raws.between+=i[1];break}"word"===i[0]&&/\w/.test(i[1])&&this.unknownWord([i]),u.raws.between+=i[1]}("_"===u.prop[0]||"*"===u.prop[0])&&(u.raws.before+=u.prop[0],u.prop=u.prop.slice(1));let s=[],o;for(;e.length&&("space"===(o=e[0][0])||"comment"===o);)s.push(e.shift());this.precheckMissedSemicolon(e);for(let a=e.length-1;a>=0;a--){if("!important"===(i=e[a])[1].toLowerCase()){u.important=!0;let c=this.stringFrom(e,a);" !important"!==(c=this.spacesFromEnd(e)+c)&&(u.raws.important=c);break}if("important"===i[1].toLowerCase()){let l=e.slice(0),f="";for(let d=a;d>0;d--){let _=l[d][0];if(0===f.trim().indexOf("!")&&"space"!==_)break;f=l.pop()[1]+f}0===f.trim().indexOf("!")&&(u.important=!0,u.raws.important=f,e=l)}if("space"!==i[0]&&"comment"!==i[0])break}e.some(e=>"space"!==e[0]&&"comment"!==e[0])&&(u.raws.between+=s.map(e=>e[1]).join(""),s=[]),this.raw(u,"value",s.concat(e),t),u.value.includes(":")&&!t&&this.checkMissedSemicolon(e)}doubleColon(e){throw this.input.error("Double colon",{offset:e[2]},{offset:e[2]+e[1].length})}emptyRule(e){let t=new o;this.init(t,e[2]),t.selector="",t.raws.between="",this.current=t}end(e){this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.semicolon=!1,this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.spaces="",this.current.parent?(this.current.source.end=this.getPosition(e[2]),this.current.source.end.offset++,this.current=this.current.parent):this.unexpectedClose(e)}endFile(){this.current.parent&&this.unclosedBlock(),this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.root.source.end=this.getPosition(this.tokenizer.position())}freeSemicolon(e){if(this.spaces+=e[1],this.current.nodes){let t=this.current.nodes[this.current.nodes.length-1];t&&"rule"===t.type&&!t.raws.ownSemicolon&&(t.raws.ownSemicolon=this.spaces,this.spaces="")}}getPosition(e){let t=this.input.fromOffset(e);return{column:t.col,line:t.line,offset:e}}init(e,t){this.current.push(e),e.source={input:this.input,start:this.getPosition(t)},e.raws.before=this.spaces,this.spaces="","comment"!==e.type&&(this.semicolon=!1)}other(e){let t=!1,u=null,r=!1,$=null,n=[],i=e[1].startsWith("--"),s=[],o=e;for(;o;){if(u=o[0],s.push(o),"("===u||"["===u)$||($=o),n.push("("===u?")":"]");else if(i&&r&&"{"===u)$||($=o),n.push("}");else if(0===n.length){if(";"===u){if(r){this.decl(s,i);return}break}if("{"===u){this.rule(s);return}if("}"===u){this.tokenizer.back(s.pop()),t=!0;break}else":"===u&&(r=!0)}else u===n[n.length-1]&&(n.pop(),0===n.length&&($=null));o=this.tokenizer.nextToken()}if(this.tokenizer.endOfFile()&&(t=!0),n.length>0&&this.unclosedBracket($),t&&r){if(!i)for(;s.length&&("space"===(o=s[s.length-1][0])||"comment"===o);)this.tokenizer.back(s.pop());this.decl(s,i)}else this.unknownWord(s)}parse(){let e;for(;!this.tokenizer.endOfFile();)switch((e=this.tokenizer.nextToken())[0]){case"space":this.spaces+=e[1];break;case";":this.freeSemicolon(e);break;case"}":this.end(e);break;case"comment":this.comment(e);break;case"at-word":this.atrule(e);break;case"{":this.emptyRule(e);break;default:this.other(e)}this.endFile()}precheckMissedSemicolon(){}raw(e,t,u,r){let $,n,i=u.length,s="",o=!0,c,l;for(let f=0;fe+t[1],"");e.raws[t]={raw:d,value:s}}e[t]=s}rule(e){e.pop();let t=new o;this.init(t,e[0][2]),t.raws.between=this.spacesAndCommentsFromEnd(e),this.raw(t,"selector",e),this.current=t}spacesAndCommentsFromEnd(e){let t,u="";for(;e.length&&("space"===(t=e[e.length-1][0])||"comment"===t);)u=e.pop()[1]+u;return u}spacesAndCommentsFromStart(e){let t,u="";for(;e.length&&("space"===(t=e[0][0])||"comment"===t);)u+=e.shift()[1];return u}spacesFromEnd(e){let t,u="";for(;e.length&&"space"===(t=e[e.length-1][0]);)u=e.pop()[1]+u;return u}stringFrom(e,t){let u="";for(let r=t;r(i||(i=n()),i)}),n.process=function(e,t,u){return y([n(u)]).process(e,t)},n},y.stringify=o,y.parse=p,y.fromJSON=a,y.list=b,y.comment=e=>new f(e),y.atRule=e=>new d(e),y.decl=e=>new $(e),y.rule=e=>new m(e),y.root=e=>new g(e),y.document=e=>new c(e),y.CssSyntaxError=r,y.Declaration=$,y.Container=i,y.Processor=s,y.Document=c,y.Comment=f,y.Warning=l,y.AtRule=d,y.Result=_,y.Input=h,y.Rule=m,y.Root=g,y.Node=x,n.registerPostcss(y),t.exports=y,y.default=y}).call(this)}).call(this,e("_process"))},{"./at-rule":35,"./comment":36,"./container":37,"./css-syntax-error":38,"./declaration":39,"./document":40,"./fromJSON":41,"./input":42,"./lazy-result":43,"./list":44,"./node":47,"./parse":48,"./processor":52,"./result.js":53,"./root":54,"./rule":55,"./stringify":57,"./warning":61,_process:62},],51:[function(e,t,u){(function(u){(function(){"use strict";let{SourceMapConsumer:r,SourceMapGenerator:$}=e("source-map-js"),{existsSync:n,readFileSync:i}=e("fs"),{dirname:s,join:o}=e("path");class a{constructor(e,t){if(!1===t.map)return;this.loadAnnotation(e),this.inline=this.startWith(this.annotation,"data:");let u=t.map?t.map.prev:void 0,r=this.loadMap(t.from,u);!this.mapFile&&t.from&&(this.mapFile=t.from),this.mapFile&&(this.root=s(this.mapFile)),r&&(this.text=r)}consumer(){return this.consumerCache||(this.consumerCache=new r(this.text)),this.consumerCache}decodeInline(e){if(/^data:application\/json;charset=utf-?8,/.test(e)||/^data:application\/json,/.test(e))return decodeURIComponent(e.substr(RegExp.lastMatch.length));if(/^data:application\/json;charset=utf-?8;base64,/.test(e)||/^data:application\/json;base64,/.test(e)){var t;return t=e.substr(RegExp.lastMatch.length),u?u.from(t,"base64").toString():window.atob(t)}throw Error("Unsupported source map encoding "+e.match(/data:application\/json;([^,]+),/)[1])}getAnnotationURL(e){return e.replace(/^\/\*\s*# sourceMappingURL=/,"").trim()}isMap(e){return"object"==typeof e&&("string"==typeof e.mappings||"string"==typeof e._mappings||Array.isArray(e.sections))}loadAnnotation(e){let t=e.match(/\/\*\s*# sourceMappingURL=/gm);if(!t)return;let u=e.lastIndexOf(t.pop()),r=e.indexOf("*/",u);u>-1&&r>-1&&(this.annotation=this.getAnnotationURL(e.substring(u,r)))}loadFile(e){if(this.root=s(e),n(e))return this.mapFile=e,i(e,"utf-8").toString().trim()}loadMap(e,t){if(!1===t)return!1;if(t){if("string"==typeof t)return t;if("function"==typeof t){let u=t(e);if(u){let n=this.loadFile(u);if(!n)throw Error("Unable to load previous source map: "+u.toString());return n}}else if(t instanceof r)return $.fromSourceMap(t).toString();else if(t instanceof $)return t.toString();else if(this.isMap(t))return JSON.stringify(t);else throw Error("Unsupported previous source map format: "+t.toString())}else if(this.inline)return this.decodeInline(this.annotation);else if(this.annotation){let i=this.annotation;return e&&(i=o(s(e),i)),this.loadFile(i)}}startWith(e,t){return!!e&&e.substr(0,t.length)===t}withContent(){return!!(this.consumer().sourcesContent&&this.consumer().sourcesContent.length>0)}}t.exports=a,a.default=a}).call(this)}).call(this,e("buffer").Buffer)},{buffer:3,fs:2,path:2,"source-map-js":2},],52:[function(e,t,u){(function(u){(function(){"use strict";let r=e("./no-work-result"),$=e("./lazy-result"),n=e("./document"),i=e("./root");class s{constructor(e=[]){this.version="8.4.31",this.plugins=this.normalize(e)}normalize(e){let t=[];for(let r of e)if(!0===r.postcss?r=r():r.postcss&&(r=r.postcss),"object"==typeof r&&Array.isArray(r.plugins))t=t.concat(r.plugins);else if("object"==typeof r&&r.postcssPlugin)t.push(r);else if("function"==typeof r)t.push(r);else if("object"==typeof r&&(r.parse||r.stringify)){if("production"!==u.env.NODE_ENV)throw Error("PostCSS syntaxes cannot be used as plugins. Instead, please use one of the syntax/parser/stringifier options as outlined in your PostCSS runner documentation.")}else throw Error(r+" is not a PostCSS plugin");return t}process(e,t={}){return 0===this.plugins.length&&void 0===t.parser&&void 0===t.stringifier&&void 0===t.syntax?new r(this,e,t):new $(this,e,t)}use(e){return this.plugins=this.plugins.concat(this.normalize([e])),this}}t.exports=s,s.default=s,i.registerProcessor(s),n.registerProcessor(s)}).call(this)}).call(this,e("_process"))},{"./document":40,"./lazy-result":43,"./no-work-result":46,"./root":54,_process:62},],53:[function(e,t,u){"use strict";let r=e("./warning");class ${constructor(e,t,u){this.processor=e,this.messages=[],this.root=t,this.opts=u,this.css=void 0,this.map=void 0}toString(){return this.css}warn(e,t={}){!t.plugin&&this.lastPlugin&&this.lastPlugin.postcssPlugin&&(t.plugin=this.lastPlugin.postcssPlugin);let u=new r(e,t);return this.messages.push(u),u}warnings(){return this.messages.filter(e=>"warning"===e.type)}get content(){return this.css}}t.exports=$,$.default=$},{"./warning":61},],54:[function(e,t,u){"use strict";let r=e("./container"),$,n;class i extends r{constructor(e){super(e),this.type="root",this.nodes||(this.nodes=[])}normalize(e,t,u){let r=super.normalize(e);if(t){if("prepend"===u)this.nodes.length>1?t.raws.before=this.nodes[1].raws.before:delete t.raws.before;else if(this.first!==t)for(let $ of r)$.raws.before=t.raws.before}return r}removeChild(e,t){let u=this.index(e);return!t&&0===u&&this.nodes.length>1&&(this.nodes[1].raws.before=this.nodes[u].raws.before),super.removeChild(e)}toResult(e={}){return new $(new n,this,e).stringify()}}i.registerLazyResult=e=>{$=e},i.registerProcessor=e=>{n=e},t.exports=i,i.default=i,r.registerRoot(i)},{"./container":37},],55:[function(e,t,u){"use strict";let r=e("./container"),$=e("./list");class n extends r{constructor(e){super(e),this.type="rule",this.nodes||(this.nodes=[])}get selectors(){return $.comma(this.selector)}set selectors(e){let t=this.selector?this.selector.match(/,\s*/):null,u=t?t[0]:","+this.raw("between","beforeOpen");this.selector=e.join(u)}}t.exports=n,n.default=n,r.registerRule(n)},{"./container":37,"./list":44},],56:[function(e,t,u){"use strict";let r={after:"\n",beforeClose:"\n",beforeComment:"\n",beforeDecl:"\n",beforeOpen:" ",beforeRule:"\n",colon:": ",commentLeft:" ",commentRight:" ",emptyBody:"",indent:" ",semicolon:!1};class ${constructor(e){this.builder=e}atrule(e,t){let u="@"+e.name,r=e.params?this.rawValue(e,"params"):"";if(void 0!==e.raws.afterName?u+=e.raws.afterName:r&&(u+=" "),e.nodes)this.block(e,u+r);else{let $=(e.raws.between||"")+(t?";":"");this.builder(u+r+$,e)}}beforeAfter(e,t){let u;u="decl"===e.type?this.raw(e,null,"beforeDecl"):"comment"===e.type?this.raw(e,null,"beforeComment"):"before"===t?this.raw(e,null,"beforeRule"):this.raw(e,null,"beforeClose");let r=e.parent,$=0;for(;r&&"root"!==r.type;)$+=1,r=r.parent;if(u.includes("\n")){let n=this.raw(e,null,"indent");if(n.length)for(let i=0;i<$;i++)u+=n}return u}block(e,t){let u=this.raw(e,"between","beforeOpen");this.builder(t+u+"{",e,"start");let r;e.nodes&&e.nodes.length?(this.body(e),r=this.raw(e,"after")):r=this.raw(e,"after","emptyBody"),r&&this.builder(r),this.builder("}",e,"end")}body(e){let t=e.nodes.length-1;for(;t>0&&"comment"===e.nodes[t].type;)t-=1;let u=this.raw(e,"semicolon");for(let r=0;r{if(void 0!==($=e.raws[t]))return!1})}return void 0===$&&($=r[u]),i.rawCache[u]=$,$}rawBeforeClose(e){let t;return e.walk(e=>{if(e.nodes&&e.nodes.length>0&&void 0!==e.raws.after)return(t=e.raws.after).includes("\n")&&(t=t.replace(/[^\n]+$/,"")),!1}),t&&(t=t.replace(/\S/g,"")),t}rawBeforeComment(e,t){let u;return e.walkComments(e=>{if(void 0!==e.raws.before)return(u=e.raws.before).includes("\n")&&(u=u.replace(/[^\n]+$/,"")),!1}),void 0===u?u=this.raw(t,null,"beforeDecl"):u&&(u=u.replace(/\S/g,"")),u}rawBeforeDecl(e,t){let u;return e.walkDecls(e=>{if(void 0!==e.raws.before)return(u=e.raws.before).includes("\n")&&(u=u.replace(/[^\n]+$/,"")),!1}),void 0===u?u=this.raw(t,null,"beforeRule"):u&&(u=u.replace(/\S/g,"")),u}rawBeforeOpen(e){let t;return e.walk(e=>{if("decl"!==e.type&&void 0!==(t=e.raws.between))return!1}),t}rawBeforeRule(e){let t;return e.walk(u=>{if(u.nodes&&(u.parent!==e||e.first!==u)&&void 0!==u.raws.before)return(t=u.raws.before).includes("\n")&&(t=t.replace(/[^\n]+$/,"")),!1}),t&&(t=t.replace(/\S/g,"")),t}rawColon(e){let t;return e.walkDecls(e=>{if(void 0!==e.raws.between)return t=e.raws.between.replace(/[^\s:]/g,""),!1}),t}rawEmptyBody(e){let t;return e.walk(e=>{if(e.nodes&&0===e.nodes.length&&void 0!==(t=e.raws.after))return!1}),t}rawIndent(e){if(e.raws.indent)return e.raws.indent;let t;return e.walk(u=>{let r=u.parent;if(r&&r!==e&&r.parent&&r.parent===e&&void 0!==u.raws.before){let $=u.raws.before.split("\n");return t=(t=$[$.length-1]).replace(/\S/g,""),!1}}),t}rawSemicolon(e){let t;return e.walk(e=>{if(e.nodes&&e.nodes.length&&"decl"===e.last.type&&void 0!==(t=e.raws.semicolon))return!1}),t}rawValue(e,t){let u=e[t],r=e.raws[t];return r&&r.value===u?r.raw:u}root(e){this.body(e),e.raws.after&&this.builder(e.raws.after)}rule(e){this.block(e,this.rawValue(e,"selector")),e.raws.ownSemicolon&&this.builder(e.raws.ownSemicolon,e,"end")}stringify(e,t){if(!this[e.type])throw Error("Unknown AST node type "+e.type+". Maybe you need to change PostCSS stringifier.");this[e.type](e,t)}}t.exports=$,$.default=$},{},],57:[function(e,t,u){"use strict";let r=e("./stringifier");function $(e,t){new r(t).stringify(e)}t.exports=$,$.default=$},{"./stringifier":56},],58:[function(e,t,u){"use strict";t.exports.isClean=Symbol("isClean"),t.exports.my=Symbol("my")},{},],59:[function(e,t,u){"use strict";let r=/[\t\n\f\r "#'()/;[\\\]{}]/g,$=/[\t\n\f\r !"#'():;@[\\\]{}]|\/(?=\*)/g,n=/.[\r\n"'(/\\]/,i=/[\da-f]/i;t.exports=function e(t,u={}){let s=t.css.valueOf(),o=u.ignoreErrors,a,c,l,f,d,_,h,p,b,m,g=s.length,x=0,y=[],v=[];function w(){return x}function S(e){throw t.error("Unclosed "+e,x)}return{back:function e(t){v.push(t)},endOfFile:function e(){return 0===v.length&&x>=g},nextToken:function e(t){if(v.length)return v.pop();if(x>=g)return;let u=!!t&&t.ignoreUnclosed;switch(a=s.charCodeAt(x)){case 10:case 32:case 9:case 13:case 12:c=x;do c+=1,a=s.charCodeAt(c);while(32===a||10===a||9===a||13===a||12===a);m=["space",s.slice(x,c)],x=c-1;break;case 91:case 93:case 123:case 125:case 58:case 59:case 41:{let w=String.fromCharCode(a);m=[w,w,x];break}case 40:if(p=y.length?y.pop()[1]:"",b=s.charCodeAt(x+1),"url"===p&&39!==b&&34!==b&&32!==b&&10!==b&&9!==b&&12!==b&&13!==b){c=x;do{if(_=!1,-1===(c=s.indexOf(")",c+1))){if(o||u){c=x;break}S("bracket")}for(h=c;92===s.charCodeAt(h-1);)h-=1,_=!_}while(_);m=["brackets",s.slice(x,c+1),x,c,],x=c}else c=s.indexOf(")",x+1),f=s.slice(x,c+1),-1===c||n.test(f)?m=["(","(",x]:(m=["brackets",f,x,c],x=c);break;case 39:case 34:l=39===a?"'":'"',c=x;do{if(_=!1,-1===(c=s.indexOf(l,c+1))){if(o||u){c=x+1;break}S("string")}for(h=c;92===s.charCodeAt(h-1);)h-=1,_=!_}while(_);m=["string",s.slice(x,c+1),x,c],x=c;break;case 64:r.lastIndex=x+1,r.test(s),c=0===r.lastIndex?s.length-1:r.lastIndex-2,m=["at-word",s.slice(x,c+1),x,c],x=c;break;case 92:for(c=x,d=!0;92===s.charCodeAt(c+1);)c+=1,d=!d;if(a=s.charCodeAt(c+1),d&&47!==a&&32!==a&&10!==a&&9!==a&&13!==a&&12!==a&&(c+=1,i.test(s.charAt(c)))){for(;i.test(s.charAt(c+1));)c+=1;32===s.charCodeAt(c+1)&&(c+=1)}m=["word",s.slice(x,c+1),x,c],x=c;break;default:47===a&&42===s.charCodeAt(x+1)?(0===(c=s.indexOf("*/",x+2)+1)&&(o||u?c=s.length:S("comment")),m=["comment",s.slice(x,c+1),x,c,],x=c):($.lastIndex=x+1,$.test(s),c=0===$.lastIndex?s.length-1:$.lastIndex-2,m=["word",s.slice(x,c+1),x,c],y.push(m),x=c)}return x++,m},position:w}}},{},],60:[function(e,t,u){"use strict";let r={};t.exports=function e(t){!r[t]&&(r[t]=!0,"undefined"!=typeof console&&console.warn&&console.warn(t))}},{},],61:[function(e,t,u){"use strict";class r{constructor(e,t={}){if(this.type="warning",this.text=e,t.node&&t.node.source){let u=t.node.rangeBy(t);this.line=u.start.line,this.column=u.start.column,this.endLine=u.end.line,this.endColumn=u.end.column}for(let r in t)this[r]=t[r]}toString(){return this.node?this.node.error(this.text,{index:this.index,plugin:this.plugin,word:this.word}).message:this.plugin?this.plugin+": "+this.text:this.text}}t.exports=r,r.default=r},{},],62:[function(e,t,u){var r,$,n,i=t.exports={};function s(){throw Error("setTimeout has not been defined")}function o(){throw Error("clearTimeout has not been defined")}function a(e){if(r===setTimeout)return setTimeout(e,0);if((r===s||!r)&&setTimeout)return r=setTimeout,setTimeout(e,0);try{return r(e,0)}catch(t){try{return r.call(null,e,0)}catch(u){return r.call(this,e,0)}}}!function(){try{r="function"==typeof setTimeout?setTimeout:s}catch(e){r=s}try{$="function"==typeof clearTimeout?clearTimeout:o}catch(t){$=o}}();var c=[],l=!1,f=-1;function d(){l&&n&&(l=!1,n.length?c=n.concat(c):f=-1,c.length&&_())}function _(){if(!l){var e=a(d);l=!0;for(var t=c.length;t;){for(n=c,c=[];++f1)for(var u=1;u]+$/;function h(e,t,u){if(null==e)return"";"number"==typeof e&&(e=e.toString());let b="",m="";function g(e,t){let u=this;this.tag=e,this.attribs=t||{},this.tagPosition=b.length,this.text="",this.mediaChildren=[],this.updateParentNodeText=function(){if(I.length){let e=I[I.length-1];e.text+=u.text}},this.updateParentNodeMediaChildren=function(){if(I.length&&a.includes(this.tag)){let e=I[I.length-1];e.mediaChildren.push(this.tag)}}}(t=Object.assign({},h.defaults,t)).parser=Object.assign({},p,t.parser);let x=function(e){return!1===t.allowedTags||(t.allowedTags||[]).indexOf(e)>-1};c.forEach(function(e){x(e)&&!t.allowVulnerableTags&&console.warn(` - function isObject(o) { - return Object.prototype.toString.call(o) === '[object Object]'; - } +⚠️ Your \`allowedTags\` option includes, \`${e}\`, which is inherently +vulnerable to XSS attacks. Please remove it from \`allowedTags\`. +Or, to disable this warning, add the \`allowVulnerableTags\` option +and ensure you are accounting for this risk. - function isPlainObject(o) { - var ctor, prot; - - if (isObject(o) === false) return false; - - // If has modified constructor - ctor = o.constructor; - if (ctor === undefined) return true; - - // If has modified prototype - prot = ctor.prototype; - if (isObject(prot) === false) return false; - - // If constructor does not have an Object-specific method - if (prot.hasOwnProperty('isPrototypeOf') === false) { - return false; - } - - // Most likely a plain Object - return true; - } - - exports.isPlainObject = isPlainObject; - }, - {}, - ], - 32: [ - function (require, module, exports) { - let urlAlphabet = - 'useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict'; - let customAlphabet = (alphabet, defaultSize = 21) => { - return (size = defaultSize) => { - let id = ''; - let i = size; - while (i--) { - id += alphabet[(Math.random() * alphabet.length) | 0]; - } - return id; - }; - }; - let nanoid = (size = 21) => { - let id = ''; - let i = size; - while (i--) { - id += urlAlphabet[(Math.random() * 64) | 0]; - } - return id; - }; - module.exports = { nanoid, customAlphabet }; - }, - {}, - ], - 33: [ - function (require, module, exports) { - /** - * Srcset Parser - * - * By Alex Bell | MIT License - * - * JS Parser for the string value that appears in markup - * - * @returns Array [{url: _, d: _, w: _, h:_}, ...] - * - * Based super duper closely on the reference algorithm at: - * https://html.spec.whatwg.org/multipage/embedded-content.html#parse-a-srcset-attribute - * - * Most comments are copied in directly from the spec - * (except for comments in parens). - */ - - (function (root, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. Register as an anonymous module. - define([], factory); - } else if (typeof module === 'object' && module.exports) { - // Node. Does not work with strict CommonJS, but - // only CommonJS-like environments that support module.exports, - // like Node. - module.exports = factory(); - } else { - // Browser globals (root is window) - root.parseSrcset = factory(); - } - })(this, function () { - // 1. Let input be the value passed to this algorithm. - return function (input) { - // UTILITY FUNCTIONS - - // Manual is faster than RegEx - // http://bjorn.tipling.com/state-and-regular-expressions-in-javascript - // http://jsperf.com/whitespace-character/5 - function isSpace(c) { - return ( - c === '\u0020' || // space - c === '\u0009' || // horizontal tab - c === '\u000A' || // new line - c === '\u000C' || // form feed - c === '\u000D' - ); // carriage return - } - - function collectCharacters(regEx) { - var chars, - match = regEx.exec(input.substring(pos)); - if (match) { - chars = match[0]; - pos += chars.length; - return chars; - } - } - - var inputLength = input.length, - // (Don't use \s, to avoid matching non-breaking space) - regexLeadingSpaces = /^[ \t\n\r\u000c]+/, - regexLeadingCommasOrSpaces = /^[, \t\n\r\u000c]+/, - regexLeadingNotSpaces = /^[^ \t\n\r\u000c]+/, - regexTrailingCommas = /[,]+$/, - regexNonNegativeInteger = /^\d+$/, - // ( Positive or negative or unsigned integers or decimals, without or without exponents. - // Must include at least one digit. - // According to spec tests any decimal point must be followed by a digit. - // No leading plus sign is allowed.) - // https://html.spec.whatwg.org/multipage/infrastructure.html#valid-floating-point-number - regexFloatingPoint = - /^-?(?:[0-9]+|[0-9]*\.[0-9]+)(?:[eE][+-]?[0-9]+)?$/, - url, - descriptors, - currentDescriptor, - state, - c, - // 2. Let position be a pointer into input, initially pointing at the start - // of the string. - pos = 0, - // 3. Let candidates be an initially empty source set. - candidates = []; - - // 4. Splitting loop: Collect a sequence of characters that are space - // characters or U+002C COMMA characters. If any U+002C COMMA characters - // were collected, that is a parse error. - while (true) { - collectCharacters(regexLeadingCommasOrSpaces); - - // 5. If position is past the end of input, return candidates and abort these steps. - if (pos >= inputLength) { - return candidates; // (we're done, this is the sole return path) - } - - // 6. Collect a sequence of characters that are not space characters, - // and let that be url. - url = collectCharacters(regexLeadingNotSpaces); - - // 7. Let descriptors be a new empty list. - descriptors = []; - - // 8. If url ends with a U+002C COMMA character (,), follow these substeps: - // (1). Remove all trailing U+002C COMMA characters from url. If this removed - // more than one character, that is a parse error. - if (url.slice(-1) === ',') { - url = url.replace(regexTrailingCommas, ''); - // (Jump ahead to step 9 to skip tokenization and just push the candidate). - parseDescriptors(); - - // Otherwise, follow these substeps: - } else { - tokenize(); - } // (close else of step 8) - - // 16. Return to the step labeled splitting loop. - } // (Close of big while loop.) - - /** - * Tokenizes descriptor properties prior to parsing - * Returns undefined. - */ - function tokenize() { - // 8.1. Descriptor tokeniser: Skip whitespace - collectCharacters(regexLeadingSpaces); - - // 8.2. Let current descriptor be the empty string. - currentDescriptor = ''; - - // 8.3. Let state be in descriptor. - state = 'in descriptor'; - - while (true) { - // 8.4. Let c be the character at position. - c = input.charAt(pos); - - // Do the following depending on the value of state. - // For the purpose of this step, "EOF" is a special character representing - // that position is past the end of input. - - // In descriptor - if (state === 'in descriptor') { - // Do the following, depending on the value of c: - - // Space character - // If current descriptor is not empty, append current descriptor to - // descriptors and let current descriptor be the empty string. - // Set state to after descriptor. - if (isSpace(c)) { - if (currentDescriptor) { - descriptors.push(currentDescriptor); - currentDescriptor = ''; - state = 'after descriptor'; - } - - // U+002C COMMA (,) - // Advance position to the next character in input. If current descriptor - // is not empty, append current descriptor to descriptors. Jump to the step - // labeled descriptor parser. - } else if (c === ',') { - pos += 1; - if (currentDescriptor) { - descriptors.push(currentDescriptor); - } - parseDescriptors(); - return; - - // U+0028 LEFT PARENTHESIS (() - // Append c to current descriptor. Set state to in parens. - } else if (c === '\u0028') { - currentDescriptor = currentDescriptor + c; - state = 'in parens'; - - // EOF - // If current descriptor is not empty, append current descriptor to - // descriptors. Jump to the step labeled descriptor parser. - } else if (c === '') { - if (currentDescriptor) { - descriptors.push(currentDescriptor); - } - parseDescriptors(); - return; - - // Anything else - // Append c to current descriptor. - } else { - currentDescriptor = currentDescriptor + c; - } - // (end "in descriptor" - - // In parens - } else if (state === 'in parens') { - // U+0029 RIGHT PARENTHESIS ()) - // Append c to current descriptor. Set state to in descriptor. - if (c === ')') { - currentDescriptor = currentDescriptor + c; - state = 'in descriptor'; - - // EOF - // Append current descriptor to descriptors. Jump to the step labeled - // descriptor parser. - } else if (c === '') { - descriptors.push(currentDescriptor); - parseDescriptors(); - return; - - // Anything else - // Append c to current descriptor. - } else { - currentDescriptor = currentDescriptor + c; - } - - // After descriptor - } else if (state === 'after descriptor') { - // Do the following, depending on the value of c: - // Space character: Stay in this state. - if (isSpace(c)) { - // EOF: Jump to the step labeled descriptor parser. - } else if (c === '') { - parseDescriptors(); - return; - - // Anything else - // Set state to in descriptor. Set position to the previous character in input. - } else { - state = 'in descriptor'; - pos -= 1; - } - } - - // Advance position to the next character in input. - pos += 1; - - // Repeat this step. - } // (close while true loop) - } - - /** - * Adds descriptor properties to a candidate, pushes to the candidates array - * @return undefined - */ - // Declared outside of the while loop so that it's only created once. - function parseDescriptors() { - // 9. Descriptor parser: Let error be no. - var pError = false, - // 10. Let width be absent. - // 11. Let density be absent. - // 12. Let future-compat-h be absent. (We're implementing it now as h) - w, - d, - h, - i, - candidate = {}, - desc, - lastChar, - value, - intVal, - floatVal; - - // 13. For each descriptor in descriptors, run the appropriate set of steps - // from the following list: - for (i = 0; i < descriptors.length; i++) { - desc = descriptors[i]; - - lastChar = desc[desc.length - 1]; - value = desc.substring(0, desc.length - 1); - intVal = parseInt(value, 10); - floatVal = parseFloat(value); - - // If the descriptor consists of a valid non-negative integer followed by - // a U+0077 LATIN SMALL LETTER W character - if (regexNonNegativeInteger.test(value) && lastChar === 'w') { - // If width and density are not both absent, then let error be yes. - if (w || d) { - pError = true; - } - - // Apply the rules for parsing non-negative integers to the descriptor. - // If the result is zero, let error be yes. - // Otherwise, let width be the result. - if (intVal === 0) { - pError = true; - } else { - w = intVal; - } - - // If the descriptor consists of a valid floating-point number followed by - // a U+0078 LATIN SMALL LETTER X character - } else if (regexFloatingPoint.test(value) && lastChar === 'x') { - // If width, density and future-compat-h are not all absent, then let error - // be yes. - if (w || d || h) { - pError = true; - } - - // Apply the rules for parsing floating-point number values to the descriptor. - // If the result is less than zero, let error be yes. Otherwise, let density - // be the result. - if (floatVal < 0) { - pError = true; - } else { - d = floatVal; - } - - // If the descriptor consists of a valid non-negative integer followed by - // a U+0068 LATIN SMALL LETTER H character - } else if ( - regexNonNegativeInteger.test(value) && - lastChar === 'h' - ) { - // If height and density are not both absent, then let error be yes. - if (h || d) { - pError = true; - } - - // Apply the rules for parsing non-negative integers to the descriptor. - // If the result is zero, let error be yes. Otherwise, let future-compat-h - // be the result. - if (intVal === 0) { - pError = true; - } else { - h = intVal; - } - - // Anything else, Let error be yes. - } else { - pError = true; - } - } // (close step 13 for loop) - - // 15. If error is still no, then append a new image source to candidates whose - // URL is url, associated with a width width if not absent and a pixel - // density density if not absent. Otherwise, there is a parse error. - if (!pError) { - candidate.url = url; - if (w) { - candidate.w = w; - } - if (d) { - candidate.d = d; - } - if (h) { - candidate.h = h; - } - candidates.push(candidate); - } else if (console && console.log) { - console.log( - "Invalid srcset descriptor found in '" + - input + - "' at '" + - desc + - "'.", - ); - } - } // (close parseDescriptors fn) - }; - }); - }, - {}, - ], - 34: [ - function (require, module, exports) { - var x = String; - var create = function () { - return { - isColorSupported: false, - reset: x, - bold: x, - dim: x, - italic: x, - underline: x, - inverse: x, - hidden: x, - strikethrough: x, - black: x, - red: x, - green: x, - yellow: x, - blue: x, - magenta: x, - cyan: x, - white: x, - gray: x, - bgBlack: x, - bgRed: x, - bgGreen: x, - bgYellow: x, - bgBlue: x, - bgMagenta: x, - bgCyan: x, - bgWhite: x, - }; - }; - module.exports = create(); - module.exports.createColors = create; - }, - {}, - ], - 35: [ - function (require, module, exports) { - 'use strict'; - - let Container = require('./container'); - - class AtRule extends Container { - constructor(defaults) { - super(defaults); - this.type = 'atrule'; - } - - append(...children) { - if (!this.proxyOf.nodes) this.nodes = []; - return super.append(...children); - } - - prepend(...children) { - if (!this.proxyOf.nodes) this.nodes = []; - return super.prepend(...children); - } - } - - module.exports = AtRule; - AtRule.default = AtRule; - - Container.registerAtRule(AtRule); - }, - { './container': 37 }, - ], - 36: [ - function (require, module, exports) { - 'use strict'; - - let Node = require('./node'); - - class Comment extends Node { - constructor(defaults) { - super(defaults); - this.type = 'comment'; - } - } - - module.exports = Comment; - Comment.default = Comment; - }, - { './node': 47 }, - ], - 37: [ - function (require, module, exports) { - 'use strict'; - - let { isClean, my } = require('./symbols'); - let Declaration = require('./declaration'); - let Comment = require('./comment'); - let Node = require('./node'); - - let parse, Rule, AtRule, Root; - - function cleanSource(nodes) { - return nodes.map(i => { - if (i.nodes) i.nodes = cleanSource(i.nodes); - delete i.source; - return i; - }); - } - - function markDirtyUp(node) { - node[isClean] = false; - if (node.proxyOf.nodes) { - for (let i of node.proxyOf.nodes) { - markDirtyUp(i); - } - } - } - - class Container extends Node { - append(...children) { - for (let child of children) { - let nodes = this.normalize(child, this.last); - for (let node of nodes) this.proxyOf.nodes.push(node); - } - - this.markDirty(); - - return this; - } - - cleanRaws(keepBetween) { - super.cleanRaws(keepBetween); - if (this.nodes) { - for (let node of this.nodes) node.cleanRaws(keepBetween); - } - } - - each(callback) { - if (!this.proxyOf.nodes) return undefined; - let iterator = this.getIterator(); - - let index, result; - while (this.indexes[iterator] < this.proxyOf.nodes.length) { - index = this.indexes[iterator]; - result = callback(this.proxyOf.nodes[index], index); - if (result === false) break; - - this.indexes[iterator] += 1; - } - - delete this.indexes[iterator]; - return result; - } - - every(condition) { - return this.nodes.every(condition); - } - - getIterator() { - if (!this.lastEach) this.lastEach = 0; - if (!this.indexes) this.indexes = {}; - - this.lastEach += 1; - let iterator = this.lastEach; - this.indexes[iterator] = 0; - - return iterator; - } - - getProxyProcessor() { - return { - get(node, prop) { - if (prop === 'proxyOf') { - return node; - } else if (!node[prop]) { - return node[prop]; - } else if ( - prop === 'each' || - (typeof prop === 'string' && prop.startsWith('walk')) - ) { - return (...args) => { - return node[prop]( - ...args.map(i => { - if (typeof i === 'function') { - return (child, index) => i(child.toProxy(), index); - } else { - return i; - } - }), - ); - }; - } else if (prop === 'every' || prop === 'some') { - return cb => { - return node[prop]((child, ...other) => - cb(child.toProxy(), ...other), - ); - }; - } else if (prop === 'root') { - return () => node.root().toProxy(); - } else if (prop === 'nodes') { - return node.nodes.map(i => i.toProxy()); - } else if (prop === 'first' || prop === 'last') { - return node[prop].toProxy(); - } else { - return node[prop]; - } - }, - - set(node, prop, value) { - if (node[prop] === value) return true; - node[prop] = value; - if ( - prop === 'name' || - prop === 'params' || - prop === 'selector' - ) { - node.markDirty(); - } - return true; - }, - }; - } - - index(child) { - if (typeof child === 'number') return child; - if (child.proxyOf) child = child.proxyOf; - return this.proxyOf.nodes.indexOf(child); - } - - insertAfter(exist, add) { - let existIndex = this.index(exist); - let nodes = this.normalize( - add, - this.proxyOf.nodes[existIndex], - ).reverse(); - existIndex = this.index(exist); - for (let node of nodes) - this.proxyOf.nodes.splice(existIndex + 1, 0, node); - - let index; - for (let id in this.indexes) { - index = this.indexes[id]; - if (existIndex < index) { - this.indexes[id] = index + nodes.length; - } - } - - this.markDirty(); - - return this; - } - - insertBefore(exist, add) { - let existIndex = this.index(exist); - let type = existIndex === 0 ? 'prepend' : false; - let nodes = this.normalize( - add, - this.proxyOf.nodes[existIndex], - type, - ).reverse(); - existIndex = this.index(exist); - for (let node of nodes) - this.proxyOf.nodes.splice(existIndex, 0, node); - - let index; - for (let id in this.indexes) { - index = this.indexes[id]; - if (existIndex <= index) { - this.indexes[id] = index + nodes.length; - } - } - - this.markDirty(); - - return this; - } - - normalize(nodes, sample) { - if (typeof nodes === 'string') { - nodes = cleanSource(parse(nodes).nodes); - } else if (Array.isArray(nodes)) { - nodes = nodes.slice(0); - for (let i of nodes) { - if (i.parent) i.parent.removeChild(i, 'ignore'); - } - } else if (nodes.type === 'root' && this.type !== 'document') { - nodes = nodes.nodes.slice(0); - for (let i of nodes) { - if (i.parent) i.parent.removeChild(i, 'ignore'); - } - } else if (nodes.type) { - nodes = [nodes]; - } else if (nodes.prop) { - if (typeof nodes.value === 'undefined') { - throw new Error('Value field is missed in node creation'); - } else if (typeof nodes.value !== 'string') { - nodes.value = String(nodes.value); - } - nodes = [new Declaration(nodes)]; - } else if (nodes.selector) { - nodes = [new Rule(nodes)]; - } else if (nodes.name) { - nodes = [new AtRule(nodes)]; - } else if (nodes.text) { - nodes = [new Comment(nodes)]; - } else { - throw new Error('Unknown node type in node creation'); - } - - let processed = nodes.map(i => { - /* c8 ignore next */ - if (!i[my]) Container.rebuild(i); - i = i.proxyOf; - if (i.parent) i.parent.removeChild(i); - if (i[isClean]) markDirtyUp(i); - if (typeof i.raws.before === 'undefined') { - if (sample && typeof sample.raws.before !== 'undefined') { - i.raws.before = sample.raws.before.replace(/\S/g, ''); - } - } - i.parent = this.proxyOf; - return i; - }); - - return processed; - } - - prepend(...children) { - children = children.reverse(); - for (let child of children) { - let nodes = this.normalize( - child, - this.first, - 'prepend', - ).reverse(); - for (let node of nodes) this.proxyOf.nodes.unshift(node); - for (let id in this.indexes) { - this.indexes[id] = this.indexes[id] + nodes.length; - } - } - - this.markDirty(); - - return this; - } - - push(child) { - child.parent = this; - this.proxyOf.nodes.push(child); - return this; - } - - removeAll() { - for (let node of this.proxyOf.nodes) node.parent = undefined; - this.proxyOf.nodes = []; - - this.markDirty(); - - return this; - } - - removeChild(child) { - child = this.index(child); - this.proxyOf.nodes[child].parent = undefined; - this.proxyOf.nodes.splice(child, 1); - - let index; - for (let id in this.indexes) { - index = this.indexes[id]; - if (index >= child) { - this.indexes[id] = index - 1; - } - } - - this.markDirty(); - - return this; - } - - replaceValues(pattern, opts, callback) { - if (!callback) { - callback = opts; - opts = {}; - } - - this.walkDecls(decl => { - if (opts.props && !opts.props.includes(decl.prop)) return; - if (opts.fast && !decl.value.includes(opts.fast)) return; - - decl.value = decl.value.replace(pattern, callback); - }); - - this.markDirty(); - - return this; - } - - some(condition) { - return this.nodes.some(condition); - } - - walk(callback) { - return this.each((child, i) => { - let result; - try { - result = callback(child, i); - } catch (e) { - throw child.addToError(e); - } - if (result !== false && child.walk) { - result = child.walk(callback); - } - - return result; - }); - } - - walkAtRules(name, callback) { - if (!callback) { - callback = name; - return this.walk((child, i) => { - if (child.type === 'atrule') { - return callback(child, i); - } - }); - } - if (name instanceof RegExp) { - return this.walk((child, i) => { - if (child.type === 'atrule' && name.test(child.name)) { - return callback(child, i); - } - }); - } - return this.walk((child, i) => { - if (child.type === 'atrule' && child.name === name) { - return callback(child, i); - } - }); - } - - walkComments(callback) { - return this.walk((child, i) => { - if (child.type === 'comment') { - return callback(child, i); - } - }); - } - - walkDecls(prop, callback) { - if (!callback) { - callback = prop; - return this.walk((child, i) => { - if (child.type === 'decl') { - return callback(child, i); - } - }); - } - if (prop instanceof RegExp) { - return this.walk((child, i) => { - if (child.type === 'decl' && prop.test(child.prop)) { - return callback(child, i); - } - }); - } - return this.walk((child, i) => { - if (child.type === 'decl' && child.prop === prop) { - return callback(child, i); - } - }); - } - - walkRules(selector, callback) { - if (!callback) { - callback = selector; - - return this.walk((child, i) => { - if (child.type === 'rule') { - return callback(child, i); - } - }); - } - if (selector instanceof RegExp) { - return this.walk((child, i) => { - if (child.type === 'rule' && selector.test(child.selector)) { - return callback(child, i); - } - }); - } - return this.walk((child, i) => { - if (child.type === 'rule' && child.selector === selector) { - return callback(child, i); - } - }); - } - - get first() { - if (!this.proxyOf.nodes) return undefined; - return this.proxyOf.nodes[0]; - } - - get last() { - if (!this.proxyOf.nodes) return undefined; - return this.proxyOf.nodes[this.proxyOf.nodes.length - 1]; - } - } - - Container.registerParse = dependant => { - parse = dependant; - }; - - Container.registerRule = dependant => { - Rule = dependant; - }; - - Container.registerAtRule = dependant => { - AtRule = dependant; - }; - - Container.registerRoot = dependant => { - Root = dependant; - }; - - module.exports = Container; - Container.default = Container; - - /* c8 ignore start */ - Container.rebuild = node => { - if (node.type === 'atrule') { - Object.setPrototypeOf(node, AtRule.prototype); - } else if (node.type === 'rule') { - Object.setPrototypeOf(node, Rule.prototype); - } else if (node.type === 'decl') { - Object.setPrototypeOf(node, Declaration.prototype); - } else if (node.type === 'comment') { - Object.setPrototypeOf(node, Comment.prototype); - } else if (node.type === 'root') { - Object.setPrototypeOf(node, Root.prototype); - } - - node[my] = true; - - if (node.nodes) { - node.nodes.forEach(child => { - Container.rebuild(child); - }); - } - }; - /* c8 ignore stop */ - }, - { './comment': 36, './declaration': 39, './node': 47, './symbols': 58 }, - ], - 38: [ - function (require, module, exports) { - 'use strict'; - - let pico = require('picocolors'); - - let terminalHighlight = require('./terminal-highlight'); - - class CssSyntaxError extends Error { - constructor(message, line, column, source, file, plugin) { - super(message); - this.name = 'CssSyntaxError'; - this.reason = message; - - if (file) { - this.file = file; - } - if (source) { - this.source = source; - } - if (plugin) { - this.plugin = plugin; - } - if (typeof line !== 'undefined' && typeof column !== 'undefined') { - if (typeof line === 'number') { - this.line = line; - this.column = column; - } else { - this.line = line.line; - this.column = line.column; - this.endLine = column.line; - this.endColumn = column.column; - } - } - - this.setMessage(); - - if (Error.captureStackTrace) { - Error.captureStackTrace(this, CssSyntaxError); - } - } - - setMessage() { - this.message = this.plugin ? this.plugin + ': ' : ''; - this.message += this.file ? this.file : ''; - if (typeof this.line !== 'undefined') { - this.message += ':' + this.line + ':' + this.column; - } - this.message += ': ' + this.reason; - } - - showSourceCode(color) { - if (!this.source) return ''; - - let css = this.source; - if (color == null) color = pico.isColorSupported; - if (terminalHighlight) { - if (color) css = terminalHighlight(css); - } - - let lines = css.split(/\r?\n/); - let start = Math.max(this.line - 3, 0); - let end = Math.min(this.line + 2, lines.length); - - let maxWidth = String(end).length; - - let mark, aside; - if (color) { - let { bold, gray, red } = pico.createColors(true); - mark = text => bold(red(text)); - aside = text => gray(text); - } else { - mark = aside = str => str; - } - - return lines - .slice(start, end) - .map((line, index) => { - let number = start + 1 + index; - let gutter = ' ' + (' ' + number).slice(-maxWidth) + ' | '; - if (number === this.line) { - let spacing = - aside(gutter.replace(/\d/g, ' ')) + - line.slice(0, this.column - 1).replace(/[^\t]/g, ' '); - return ( - mark('>') + - aside(gutter) + - line + - '\n ' + - spacing + - mark('^') - ); - } - return ' ' + aside(gutter) + line; - }) - .join('\n'); - } - - toString() { - let code = this.showSourceCode(); - if (code) { - code = '\n\n' + code + '\n'; - } - return this.name + ': ' + this.message + code; - } - } - - module.exports = CssSyntaxError; - CssSyntaxError.default = CssSyntaxError; - }, - { './terminal-highlight': 2, 'picocolors': 34 }, - ], - 39: [ - function (require, module, exports) { - 'use strict'; - - let Node = require('./node'); - - class Declaration extends Node { - constructor(defaults) { - if ( - defaults && - typeof defaults.value !== 'undefined' && - typeof defaults.value !== 'string' - ) { - defaults = { ...defaults, value: String(defaults.value) }; - } - super(defaults); - this.type = 'decl'; - } - - get variable() { - return this.prop.startsWith('--') || this.prop[0] === '$'; - } - } - - module.exports = Declaration; - Declaration.default = Declaration; - }, - { './node': 47 }, - ], - 40: [ - function (require, module, exports) { - 'use strict'; - - let Container = require('./container'); - - let LazyResult, Processor; - - class Document extends Container { - constructor(defaults) { - // type needs to be passed to super, otherwise child roots won't be normalized correctly - super({ type: 'document', ...defaults }); - - if (!this.nodes) { - this.nodes = []; - } - } - - toResult(opts = {}) { - let lazy = new LazyResult(new Processor(), this, opts); - - return lazy.stringify(); - } - } - - Document.registerLazyResult = dependant => { - LazyResult = dependant; - }; - - Document.registerProcessor = dependant => { - Processor = dependant; - }; - - module.exports = Document; - Document.default = Document; - }, - { './container': 37 }, - ], - 41: [ - function (require, module, exports) { - 'use strict'; - - let Declaration = require('./declaration'); - let PreviousMap = require('./previous-map'); - let Comment = require('./comment'); - let AtRule = require('./at-rule'); - let Input = require('./input'); - let Root = require('./root'); - let Rule = require('./rule'); - - function fromJSON(json, inputs) { - if (Array.isArray(json)) return json.map(n => fromJSON(n)); - - let { inputs: ownInputs, ...defaults } = json; - if (ownInputs) { - inputs = []; - for (let input of ownInputs) { - let inputHydrated = { ...input, __proto__: Input.prototype }; - if (inputHydrated.map) { - inputHydrated.map = { - ...inputHydrated.map, - __proto__: PreviousMap.prototype, - }; - } - inputs.push(inputHydrated); - } - } - if (defaults.nodes) { - defaults.nodes = json.nodes.map(n => fromJSON(n, inputs)); - } - if (defaults.source) { - let { inputId, ...source } = defaults.source; - defaults.source = source; - if (inputId != null) { - defaults.source.input = inputs[inputId]; - } - } - if (defaults.type === 'root') { - return new Root(defaults); - } else if (defaults.type === 'decl') { - return new Declaration(defaults); - } else if (defaults.type === 'rule') { - return new Rule(defaults); - } else if (defaults.type === 'comment') { - return new Comment(defaults); - } else if (defaults.type === 'atrule') { - return new AtRule(defaults); - } else { - throw new Error('Unknown node type: ' + json.type); - } - } - - module.exports = fromJSON; - fromJSON.default = fromJSON; - }, - { - './at-rule': 35, - './comment': 36, - './declaration': 39, - './input': 42, - './previous-map': 51, - './root': 54, - './rule': 55, - }, - ], - 42: [ - function (require, module, exports) { - 'use strict'; - - let { - SourceMapConsumer, - SourceMapGenerator, - } = require('source-map-js'); - let { fileURLToPath, pathToFileURL } = require('url'); - let { isAbsolute, resolve } = require('path'); - let { nanoid } = require('nanoid/non-secure'); - - let terminalHighlight = require('./terminal-highlight'); - let CssSyntaxError = require('./css-syntax-error'); - let PreviousMap = require('./previous-map'); - - let fromOffsetCache = Symbol('fromOffsetCache'); - - let sourceMapAvailable = Boolean( - SourceMapConsumer && SourceMapGenerator, - ); - let pathAvailable = Boolean(resolve && isAbsolute); - - class Input { - constructor(css, opts = {}) { - if ( - css === null || - typeof css === 'undefined' || - (typeof css === 'object' && !css.toString) - ) { - throw new Error(`PostCSS received ${css} instead of CSS string`); - } - - this.css = css.toString(); - - if (this.css[0] === '\uFEFF' || this.css[0] === '\uFFFE') { - this.hasBOM = true; - this.css = this.css.slice(1); - } else { - this.hasBOM = false; - } - - if (opts.from) { - if ( - !pathAvailable || - /^\w+:\/\//.test(opts.from) || - isAbsolute(opts.from) - ) { - this.file = opts.from; - } else { - this.file = resolve(opts.from); - } - } - - if (pathAvailable && sourceMapAvailable) { - let map = new PreviousMap(this.css, opts); - if (map.text) { - this.map = map; - let file = map.consumer().file; - if (!this.file && file) this.file = this.mapResolve(file); - } - } - - if (!this.file) { - this.id = ''; - } - if (this.map) this.map.file = this.from; - } - - error(message, line, column, opts = {}) { - let result, endLine, endColumn; - - if (line && typeof line === 'object') { - let start = line; - let end = column; - if (typeof start.offset === 'number') { - let pos = this.fromOffset(start.offset); - line = pos.line; - column = pos.col; - } else { - line = start.line; - column = start.column; - } - if (typeof end.offset === 'number') { - let pos = this.fromOffset(end.offset); - endLine = pos.line; - endColumn = pos.col; - } else { - endLine = end.line; - endColumn = end.column; - } - } else if (!column) { - let pos = this.fromOffset(line); - line = pos.line; - column = pos.col; - } - - let origin = this.origin(line, column, endLine, endColumn); - if (origin) { - result = new CssSyntaxError( - message, - origin.endLine === undefined - ? origin.line - : { column: origin.column, line: origin.line }, - origin.endLine === undefined - ? origin.column - : { column: origin.endColumn, line: origin.endLine }, - origin.source, - origin.file, - opts.plugin, - ); - } else { - result = new CssSyntaxError( - message, - endLine === undefined ? line : { column, line }, - endLine === undefined - ? column - : { column: endColumn, line: endLine }, - this.css, - this.file, - opts.plugin, - ); - } - - result.input = { - column, - endColumn, - endLine, - line, - source: this.css, - }; - if (this.file) { - if (pathToFileURL) { - result.input.url = pathToFileURL(this.file).toString(); - } - result.input.file = this.file; - } - - return result; - } - - fromOffset(offset) { - let lastLine, lineToIndex; - if (!this[fromOffsetCache]) { - let lines = this.css.split('\n'); - lineToIndex = new Array(lines.length); - let prevIndex = 0; - - for (let i = 0, l = lines.length; i < l; i++) { - lineToIndex[i] = prevIndex; - prevIndex += lines[i].length + 1; - } - - this[fromOffsetCache] = lineToIndex; - } else { - lineToIndex = this[fromOffsetCache]; - } - lastLine = lineToIndex[lineToIndex.length - 1]; - - let min = 0; - if (offset >= lastLine) { - min = lineToIndex.length - 1; - } else { - let max = lineToIndex.length - 2; - let mid; - while (min < max) { - mid = min + ((max - min) >> 1); - if (offset < lineToIndex[mid]) { - max = mid - 1; - } else if (offset >= lineToIndex[mid + 1]) { - min = mid + 1; - } else { - min = mid; - break; - } - } - } - return { - col: offset - lineToIndex[min] + 1, - line: min + 1, - }; - } - - mapResolve(file) { - if (/^\w+:\/\//.test(file)) { - return file; - } - return resolve( - this.map.consumer().sourceRoot || this.map.root || '.', - file, - ); - } - - origin(line, column, endLine, endColumn) { - if (!this.map) return false; - let consumer = this.map.consumer(); - - let from = consumer.originalPositionFor({ column, line }); - if (!from.source) return false; - - let to; - if (typeof endLine === 'number') { - to = consumer.originalPositionFor({ - column: endColumn, - line: endLine, - }); - } - - let fromUrl; - - if (isAbsolute(from.source)) { - fromUrl = pathToFileURL(from.source); - } else { - fromUrl = new URL( - from.source, - this.map.consumer().sourceRoot || - pathToFileURL(this.map.mapFile), - ); - } - - let result = { - column: from.column, - endColumn: to && to.column, - endLine: to && to.line, - line: from.line, - url: fromUrl.toString(), - }; - - if (fromUrl.protocol === 'file:') { - if (fileURLToPath) { - result.file = fileURLToPath(fromUrl); - } else { - /* c8 ignore next 2 */ - throw new Error( - `file: protocol is not available in this PostCSS build`, - ); - } - } - - let source = consumer.sourceContentFor(from.source); - if (source) result.source = source; - - return result; - } - - toJSON() { - let json = {}; - for (let name of ['hasBOM', 'css', 'file', 'id']) { - if (this[name] != null) { - json[name] = this[name]; - } - } - if (this.map) { - json.map = { ...this.map }; - if (json.map.consumerCache) { - json.map.consumerCache = undefined; - } - } - return json; - } - - get from() { - return this.file || this.id; - } - } - - module.exports = Input; - Input.default = Input; - - if (terminalHighlight && terminalHighlight.registerInput) { - terminalHighlight.registerInput(Input); - } - }, - { - './css-syntax-error': 38, - './previous-map': 51, - './terminal-highlight': 2, - 'nanoid/non-secure': 32, - 'path': 2, - 'source-map-js': 2, - 'url': 2, - }, - ], - 43: [ - function (require, module, exports) { - (function (process) { - (function () { - 'use strict'; - - let { isClean, my } = require('./symbols'); - let MapGenerator = require('./map-generator'); - let stringify = require('./stringify'); - let Container = require('./container'); - let Document = require('./document'); - let warnOnce = require('./warn-once'); - let Result = require('./result'); - let parse = require('./parse'); - let Root = require('./root'); - - const TYPE_TO_CLASS_NAME = { - atrule: 'AtRule', - comment: 'Comment', - decl: 'Declaration', - document: 'Document', - root: 'Root', - rule: 'Rule', - }; - - const PLUGIN_PROPS = { - AtRule: true, - AtRuleExit: true, - Comment: true, - CommentExit: true, - Declaration: true, - DeclarationExit: true, - Document: true, - DocumentExit: true, - Once: true, - OnceExit: true, - postcssPlugin: true, - prepare: true, - Root: true, - RootExit: true, - Rule: true, - RuleExit: true, - }; - - const NOT_VISITORS = { - Once: true, - postcssPlugin: true, - prepare: true, - }; - - const CHILDREN = 0; - - function isPromise(obj) { - return typeof obj === 'object' && typeof obj.then === 'function'; - } - - function getEvents(node) { - let key = false; - let type = TYPE_TO_CLASS_NAME[node.type]; - if (node.type === 'decl') { - key = node.prop.toLowerCase(); - } else if (node.type === 'atrule') { - key = node.name.toLowerCase(); - } - - if (key && node.append) { - return [ - type, - type + '-' + key, - CHILDREN, - type + 'Exit', - type + 'Exit-' + key, - ]; - } else if (key) { - return [ - type, - type + '-' + key, - type + 'Exit', - type + 'Exit-' + key, - ]; - } else if (node.append) { - return [type, CHILDREN, type + 'Exit']; - } else { - return [type, type + 'Exit']; - } - } - - function toStack(node) { - let events; - if (node.type === 'document') { - events = ['Document', CHILDREN, 'DocumentExit']; - } else if (node.type === 'root') { - events = ['Root', CHILDREN, 'RootExit']; - } else { - events = getEvents(node); - } - - return { - eventIndex: 0, - events, - iterator: 0, - node, - visitorIndex: 0, - visitors: [], - }; - } - - function cleanMarks(node) { - node[isClean] = false; - if (node.nodes) node.nodes.forEach(i => cleanMarks(i)); - return node; - } - - let postcss = {}; - - class LazyResult { - constructor(processor, css, opts) { - this.stringified = false; - this.processed = false; - - let root; - if ( - typeof css === 'object' && - css !== null && - (css.type === 'root' || css.type === 'document') - ) { - root = cleanMarks(css); - } else if (css instanceof LazyResult || css instanceof Result) { - root = cleanMarks(css.root); - if (css.map) { - if (typeof opts.map === 'undefined') opts.map = {}; - if (!opts.map.inline) opts.map.inline = false; - opts.map.prev = css.map; - } - } else { - let parser = parse; - if (opts.syntax) parser = opts.syntax.parse; - if (opts.parser) parser = opts.parser; - if (parser.parse) parser = parser.parse; - - try { - root = parser(css, opts); - } catch (error) { - this.processed = true; - this.error = error; - } - - if (root && !root[my]) { - /* c8 ignore next 2 */ - Container.rebuild(root); - } - } - - this.result = new Result(processor, root, opts); - this.helpers = { ...postcss, postcss, result: this.result }; - this.plugins = this.processor.plugins.map(plugin => { - if (typeof plugin === 'object' && plugin.prepare) { - return { ...plugin, ...plugin.prepare(this.result) }; - } else { - return plugin; - } - }); - } - - async() { - if (this.error) return Promise.reject(this.error); - if (this.processed) return Promise.resolve(this.result); - if (!this.processing) { - this.processing = this.runAsync(); - } - return this.processing; - } - - catch(onRejected) { - return this.async().catch(onRejected); - } - - finally(onFinally) { - return this.async().then(onFinally, onFinally); - } - - getAsyncError() { - throw new Error( - 'Use process(css).then(cb) to work with async plugins', - ); - } - - handleError(error, node) { - let plugin = this.result.lastPlugin; - try { - if (node) node.addToError(error); - this.error = error; - if (error.name === 'CssSyntaxError' && !error.plugin) { - error.plugin = plugin.postcssPlugin; - error.setMessage(); - } else if (plugin.postcssVersion) { - if (process.env.NODE_ENV !== 'production') { - let pluginName = plugin.postcssPlugin; - let pluginVer = plugin.postcssVersion; - let runtimeVer = this.result.processor.version; - let a = pluginVer.split('.'); - let b = runtimeVer.split('.'); - - if (a[0] !== b[0] || parseInt(a[1]) > parseInt(b[1])) { - // eslint-disable-next-line no-console - console.error( - 'Unknown error from PostCSS plugin. Your current PostCSS ' + - 'version is ' + - runtimeVer + - ', but ' + - pluginName + - ' uses ' + - pluginVer + - '. Perhaps this is the source of the error below.', - ); - } - } - } - } catch (err) { - /* c8 ignore next 3 */ - // eslint-disable-next-line no-console - if (console && console.error) console.error(err); - } - return error; - } - - prepareVisitors() { - this.listeners = {}; - let add = (plugin, type, cb) => { - if (!this.listeners[type]) this.listeners[type] = []; - this.listeners[type].push([plugin, cb]); - }; - for (let plugin of this.plugins) { - if (typeof plugin === 'object') { - for (let event in plugin) { - if (!PLUGIN_PROPS[event] && /^[A-Z]/.test(event)) { - throw new Error( - `Unknown event ${event} in ${plugin.postcssPlugin}. ` + - `Try to update PostCSS (${this.processor.version} now).`, - ); - } - if (!NOT_VISITORS[event]) { - if (typeof plugin[event] === 'object') { - for (let filter in plugin[event]) { - if (filter === '*') { - add(plugin, event, plugin[event][filter]); - } else { - add( - plugin, - event + '-' + filter.toLowerCase(), - plugin[event][filter], - ); - } - } - } else if (typeof plugin[event] === 'function') { - add(plugin, event, plugin[event]); - } - } - } - } - } - this.hasListener = Object.keys(this.listeners).length > 0; - } - - async runAsync() { - this.plugin = 0; - for (let i = 0; i < this.plugins.length; i++) { - let plugin = this.plugins[i]; - let promise = this.runOnRoot(plugin); - if (isPromise(promise)) { - try { - await promise; - } catch (error) { - throw this.handleError(error); - } - } - } - - this.prepareVisitors(); - if (this.hasListener) { - let root = this.result.root; - while (!root[isClean]) { - root[isClean] = true; - let stack = [toStack(root)]; - while (stack.length > 0) { - let promise = this.visitTick(stack); - if (isPromise(promise)) { - try { - await promise; - } catch (e) { - let node = stack[stack.length - 1].node; - throw this.handleError(e, node); - } - } - } - } - - if (this.listeners.OnceExit) { - for (let [plugin, visitor] of this.listeners.OnceExit) { - this.result.lastPlugin = plugin; - try { - if (root.type === 'document') { - let roots = root.nodes.map(subRoot => - visitor(subRoot, this.helpers), - ); - - await Promise.all(roots); - } else { - await visitor(root, this.helpers); - } - } catch (e) { - throw this.handleError(e); - } - } - } - } - - this.processed = true; - return this.stringify(); - } - - runOnRoot(plugin) { - this.result.lastPlugin = plugin; - try { - if (typeof plugin === 'object' && plugin.Once) { - if (this.result.root.type === 'document') { - let roots = this.result.root.nodes.map(root => - plugin.Once(root, this.helpers), - ); - - if (isPromise(roots[0])) { - return Promise.all(roots); - } - - return roots; - } - - return plugin.Once(this.result.root, this.helpers); - } else if (typeof plugin === 'function') { - return plugin(this.result.root, this.result); - } - } catch (error) { - throw this.handleError(error); - } - } - - stringify() { - if (this.error) throw this.error; - if (this.stringified) return this.result; - this.stringified = true; - - this.sync(); - - let opts = this.result.opts; - let str = stringify; - if (opts.syntax) str = opts.syntax.stringify; - if (opts.stringifier) str = opts.stringifier; - if (str.stringify) str = str.stringify; - - let map = new MapGenerator( - str, - this.result.root, - this.result.opts, - ); - let data = map.generate(); - this.result.css = data[0]; - this.result.map = data[1]; - - return this.result; - } - - sync() { - if (this.error) throw this.error; - if (this.processed) return this.result; - this.processed = true; - - if (this.processing) { - throw this.getAsyncError(); - } - - for (let plugin of this.plugins) { - let promise = this.runOnRoot(plugin); - if (isPromise(promise)) { - throw this.getAsyncError(); - } - } - - this.prepareVisitors(); - if (this.hasListener) { - let root = this.result.root; - while (!root[isClean]) { - root[isClean] = true; - this.walkSync(root); - } - if (this.listeners.OnceExit) { - if (root.type === 'document') { - for (let subRoot of root.nodes) { - this.visitSync(this.listeners.OnceExit, subRoot); - } - } else { - this.visitSync(this.listeners.OnceExit, root); - } - } - } - - return this.result; - } - - then(onFulfilled, onRejected) { - if (process.env.NODE_ENV !== 'production') { - if (!('from' in this.opts)) { - warnOnce( - 'Without `from` option PostCSS could generate wrong source map ' + - 'and will not find Browserslist config. Set it to CSS file path ' + - 'or to `undefined` to prevent this warning.', - ); - } - } - return this.async().then(onFulfilled, onRejected); - } - - toString() { - return this.css; - } - - visitSync(visitors, node) { - for (let [plugin, visitor] of visitors) { - this.result.lastPlugin = plugin; - let promise; - try { - promise = visitor(node, this.helpers); - } catch (e) { - throw this.handleError(e, node.proxyOf); - } - if ( - node.type !== 'root' && - node.type !== 'document' && - !node.parent - ) { - return true; - } - if (isPromise(promise)) { - throw this.getAsyncError(); - } - } - } - - visitTick(stack) { - let visit = stack[stack.length - 1]; - let { node, visitors } = visit; - - if ( - node.type !== 'root' && - node.type !== 'document' && - !node.parent - ) { - stack.pop(); - return; - } - - if ( - visitors.length > 0 && - visit.visitorIndex < visitors.length - ) { - let [plugin, visitor] = visitors[visit.visitorIndex]; - visit.visitorIndex += 1; - if (visit.visitorIndex === visitors.length) { - visit.visitors = []; - visit.visitorIndex = 0; - } - this.result.lastPlugin = plugin; - try { - return visitor(node.toProxy(), this.helpers); - } catch (e) { - throw this.handleError(e, node); - } - } - - if (visit.iterator !== 0) { - let iterator = visit.iterator; - let child; - while ((child = node.nodes[node.indexes[iterator]])) { - node.indexes[iterator] += 1; - if (!child[isClean]) { - child[isClean] = true; - stack.push(toStack(child)); - return; - } - } - visit.iterator = 0; - delete node.indexes[iterator]; - } - - let events = visit.events; - while (visit.eventIndex < events.length) { - let event = events[visit.eventIndex]; - visit.eventIndex += 1; - if (event === CHILDREN) { - if (node.nodes && node.nodes.length) { - node[isClean] = true; - visit.iterator = node.getIterator(); - } - return; - } else if (this.listeners[event]) { - visit.visitors = this.listeners[event]; - return; - } - } - stack.pop(); - } - - walkSync(node) { - node[isClean] = true; - let events = getEvents(node); - for (let event of events) { - if (event === CHILDREN) { - if (node.nodes) { - node.each(child => { - if (!child[isClean]) this.walkSync(child); - }); - } - } else { - let visitors = this.listeners[event]; - if (visitors) { - if (this.visitSync(visitors, node.toProxy())) return; - } - } - } - } - - warnings() { - return this.sync().warnings(); - } - - get content() { - return this.stringify().content; - } - - get css() { - return this.stringify().css; - } - - get map() { - return this.stringify().map; - } - - get messages() { - return this.sync().messages; - } - - get opts() { - return this.result.opts; - } - - get processor() { - return this.result.processor; - } - - get root() { - return this.sync().root; - } - - get [Symbol.toStringTag]() { - return 'LazyResult'; - } - } - - LazyResult.registerPostcss = dependant => { - postcss = dependant; - }; - - module.exports = LazyResult; - LazyResult.default = LazyResult; - - Root.registerLazyResult(LazyResult); - Document.registerLazyResult(LazyResult); - }).call(this); - }).call(this, require('_process')); - }, - { - './container': 37, - './document': 40, - './map-generator': 45, - './parse': 48, - './result': 53, - './root': 54, - './stringify': 57, - './symbols': 58, - './warn-once': 60, - '_process': 62, - }, - ], - 44: [ - function (require, module, exports) { - 'use strict'; - - let list = { - comma(string) { - return list.split(string, [','], true); - }, - - space(string) { - let spaces = [' ', '\n', '\t']; - return list.split(string, spaces); - }, - - split(string, separators, last) { - let array = []; - let current = ''; - let split = false; - - let func = 0; - let inQuote = false; - let prevQuote = ''; - let escape = false; - - for (let letter of string) { - if (escape) { - escape = false; - } else if (letter === '\\') { - escape = true; - } else if (inQuote) { - if (letter === prevQuote) { - inQuote = false; - } - } else if (letter === '"' || letter === "'") { - inQuote = true; - prevQuote = letter; - } else if (letter === '(') { - func += 1; - } else if (letter === ')') { - if (func > 0) func -= 1; - } else if (func === 0) { - if (separators.includes(letter)) split = true; - } - - if (split) { - if (current !== '') array.push(current.trim()); - current = ''; - split = false; - } else { - current += letter; - } - } - - if (last || current !== '') array.push(current.trim()); - return array; - }, - }; - - module.exports = list; - list.default = list; - }, - {}, - ], - 45: [ - function (require, module, exports) { - (function (Buffer) { - (function () { - 'use strict'; - - let { - SourceMapConsumer, - SourceMapGenerator, - } = require('source-map-js'); - let { dirname, relative, resolve, sep } = require('path'); - let { pathToFileURL } = require('url'); - - let Input = require('./input'); - - let sourceMapAvailable = Boolean( - SourceMapConsumer && SourceMapGenerator, - ); - let pathAvailable = Boolean(dirname && resolve && relative && sep); - - class MapGenerator { - constructor(stringify, root, opts, cssString) { - this.stringify = stringify; - this.mapOpts = opts.map || {}; - this.root = root; - this.opts = opts; - this.css = cssString; - this.usesFileUrls = !this.mapOpts.from && this.mapOpts.absolute; - - this.memoizedFileURLs = new Map(); - this.memoizedPaths = new Map(); - this.memoizedURLs = new Map(); - } - - addAnnotation() { - let content; - - if (this.isInline()) { - content = - 'data:application/json;base64,' + - this.toBase64(this.map.toString()); - } else if (typeof this.mapOpts.annotation === 'string') { - content = this.mapOpts.annotation; - } else if (typeof this.mapOpts.annotation === 'function') { - content = this.mapOpts.annotation(this.opts.to, this.root); - } else { - content = this.outputFile() + '.map'; - } - let eol = '\n'; - if (this.css.includes('\r\n')) eol = '\r\n'; - - this.css += eol + '/*# sourceMappingURL=' + content + ' */'; - } - - applyPrevMaps() { - for (let prev of this.previous()) { - let from = this.toUrl(this.path(prev.file)); - let root = prev.root || dirname(prev.file); - let map; - - if (this.mapOpts.sourcesContent === false) { - map = new SourceMapConsumer(prev.text); - if (map.sourcesContent) { - map.sourcesContent = map.sourcesContent.map(() => null); - } - } else { - map = prev.consumer(); - } - - this.map.applySourceMap( - map, - from, - this.toUrl(this.path(root)), - ); - } - } - - clearAnnotation() { - if (this.mapOpts.annotation === false) return; - - if (this.root) { - let node; - for (let i = this.root.nodes.length - 1; i >= 0; i--) { - node = this.root.nodes[i]; - if (node.type !== 'comment') continue; - if (node.text.indexOf('# sourceMappingURL=') === 0) { - this.root.removeChild(i); - } - } - } else if (this.css) { - this.css = this.css.replace(/(\n)?\/\*#[\S\s]*?\*\/$/gm, ''); - } - } - - generate() { - this.clearAnnotation(); - if (pathAvailable && sourceMapAvailable && this.isMap()) { - return this.generateMap(); - } else { - let result = ''; - this.stringify(this.root, i => { - result += i; - }); - return [result]; - } - } - - generateMap() { - if (this.root) { - this.generateString(); - } else if (this.previous().length === 1) { - let prev = this.previous()[0].consumer(); - prev.file = this.outputFile(); - this.map = SourceMapGenerator.fromSourceMap(prev); - } else { - this.map = new SourceMapGenerator({ - file: this.outputFile(), - }); - this.map.addMapping({ - generated: { column: 0, line: 1 }, - original: { column: 0, line: 1 }, - source: this.opts.from - ? this.toUrl(this.path(this.opts.from)) - : '', - }); - } - - if (this.isSourcesContent()) this.setSourcesContent(); - if (this.root && this.previous().length > 0) - this.applyPrevMaps(); - if (this.isAnnotation()) this.addAnnotation(); - - if (this.isInline()) { - return [this.css]; - } else { - return [this.css, this.map]; - } - } - - generateString() { - this.css = ''; - this.map = new SourceMapGenerator({ file: this.outputFile() }); - - let line = 1; - let column = 1; - - let noSource = ''; - let mapping = { - generated: { column: 0, line: 0 }, - original: { column: 0, line: 0 }, - source: '', - }; - - let lines, last; - this.stringify(this.root, (str, node, type) => { - this.css += str; - - if (node && type !== 'end') { - mapping.generated.line = line; - mapping.generated.column = column - 1; - if (node.source && node.source.start) { - mapping.source = this.sourcePath(node); - mapping.original.line = node.source.start.line; - mapping.original.column = node.source.start.column - 1; - this.map.addMapping(mapping); - } else { - mapping.source = noSource; - mapping.original.line = 1; - mapping.original.column = 0; - this.map.addMapping(mapping); - } - } - - lines = str.match(/\n/g); - if (lines) { - line += lines.length; - last = str.lastIndexOf('\n'); - column = str.length - last; - } else { - column += str.length; - } - - if (node && type !== 'start') { - let p = node.parent || { raws: {} }; - let childless = - node.type === 'decl' || - (node.type === 'atrule' && !node.nodes); - if (!childless || node !== p.last || p.raws.semicolon) { - if (node.source && node.source.end) { - mapping.source = this.sourcePath(node); - mapping.original.line = node.source.end.line; - mapping.original.column = node.source.end.column - 1; - mapping.generated.line = line; - mapping.generated.column = column - 2; - this.map.addMapping(mapping); - } else { - mapping.source = noSource; - mapping.original.line = 1; - mapping.original.column = 0; - mapping.generated.line = line; - mapping.generated.column = column - 1; - this.map.addMapping(mapping); - } - } - } - }); - } - - isAnnotation() { - if (this.isInline()) { - return true; - } - if (typeof this.mapOpts.annotation !== 'undefined') { - return this.mapOpts.annotation; - } - if (this.previous().length) { - return this.previous().some(i => i.annotation); - } - return true; - } - - isInline() { - if (typeof this.mapOpts.inline !== 'undefined') { - return this.mapOpts.inline; - } - - let annotation = this.mapOpts.annotation; - if (typeof annotation !== 'undefined' && annotation !== true) { - return false; - } - - if (this.previous().length) { - return this.previous().some(i => i.inline); - } - return true; - } - - isMap() { - if (typeof this.opts.map !== 'undefined') { - return !!this.opts.map; - } - return this.previous().length > 0; - } - - isSourcesContent() { - if (typeof this.mapOpts.sourcesContent !== 'undefined') { - return this.mapOpts.sourcesContent; - } - if (this.previous().length) { - return this.previous().some(i => i.withContent()); - } - return true; - } - - outputFile() { - if (this.opts.to) { - return this.path(this.opts.to); - } else if (this.opts.from) { - return this.path(this.opts.from); - } else { - return 'to.css'; - } - } - - path(file) { - if (this.mapOpts.absolute) return file; - if (file.charCodeAt(0) === 60 /* `<` */) return file; - if (/^\w+:\/\//.test(file)) return file; - let cached = this.memoizedPaths.get(file); - if (cached) return cached; - - let from = this.opts.to ? dirname(this.opts.to) : '.'; - - if (typeof this.mapOpts.annotation === 'string') { - from = dirname(resolve(from, this.mapOpts.annotation)); - } - - let path = relative(from, file); - this.memoizedPaths.set(file, path); - - return path; - } - - previous() { - if (!this.previousMaps) { - this.previousMaps = []; - if (this.root) { - this.root.walk(node => { - if (node.source && node.source.input.map) { - let map = node.source.input.map; - if (!this.previousMaps.includes(map)) { - this.previousMaps.push(map); - } - } - }); - } else { - let input = new Input(this.css, this.opts); - if (input.map) this.previousMaps.push(input.map); - } - } - - return this.previousMaps; - } - - setSourcesContent() { - let already = {}; - if (this.root) { - this.root.walk(node => { - if (node.source) { - let from = node.source.input.from; - if (from && !already[from]) { - already[from] = true; - let fromUrl = this.usesFileUrls - ? this.toFileUrl(from) - : this.toUrl(this.path(from)); - this.map.setSourceContent( - fromUrl, - node.source.input.css, - ); - } - } - }); - } else if (this.css) { - let from = this.opts.from - ? this.toUrl(this.path(this.opts.from)) - : ''; - this.map.setSourceContent(from, this.css); - } - } - - sourcePath(node) { - if (this.mapOpts.from) { - return this.toUrl(this.mapOpts.from); - } else if (this.usesFileUrls) { - return this.toFileUrl(node.source.input.from); - } else { - return this.toUrl(this.path(node.source.input.from)); - } - } - - toBase64(str) { - if (Buffer) { - return Buffer.from(str).toString('base64'); - } else { - return window.btoa(unescape(encodeURIComponent(str))); - } - } - - toFileUrl(path) { - let cached = this.memoizedFileURLs.get(path); - if (cached) return cached; - - if (pathToFileURL) { - let fileURL = pathToFileURL(path).toString(); - this.memoizedFileURLs.set(path, fileURL); - - return fileURL; - } else { - throw new Error( - '`map.absolute` option is not available in this PostCSS build', - ); - } - } - - toUrl(path) { - let cached = this.memoizedURLs.get(path); - if (cached) return cached; - - if (sep === '\\') { - path = path.replace(/\\/g, '/'); - } - - let url = encodeURI(path).replace(/[#?]/g, encodeURIComponent); - this.memoizedURLs.set(path, url); - - return url; - } - } - - module.exports = MapGenerator; - }).call(this); - }).call(this, require('buffer').Buffer); - }, - { './input': 42, 'buffer': 3, 'path': 2, 'source-map-js': 2, 'url': 2 }, - ], - 46: [ - function (require, module, exports) { - (function (process) { - (function () { - 'use strict'; - - let MapGenerator = require('./map-generator'); - let stringify = require('./stringify'); - let warnOnce = require('./warn-once'); - let parse = require('./parse'); - const Result = require('./result'); - - class NoWorkResult { - constructor(processor, css, opts) { - css = css.toString(); - this.stringified = false; - - this._processor = processor; - this._css = css; - this._opts = opts; - this._map = undefined; - let root; - - let str = stringify; - this.result = new Result(this._processor, root, this._opts); - this.result.css = css; - - let self = this; - Object.defineProperty(this.result, 'root', { - get() { - return self.root; - }, - }); - - let map = new MapGenerator(str, root, this._opts, css); - if (map.isMap()) { - let [generatedCSS, generatedMap] = map.generate(); - if (generatedCSS) { - this.result.css = generatedCSS; - } - if (generatedMap) { - this.result.map = generatedMap; - } - } - } - - async() { - if (this.error) return Promise.reject(this.error); - return Promise.resolve(this.result); - } - - catch(onRejected) { - return this.async().catch(onRejected); - } - - finally(onFinally) { - return this.async().then(onFinally, onFinally); - } - - sync() { - if (this.error) throw this.error; - return this.result; - } - - then(onFulfilled, onRejected) { - if (process.env.NODE_ENV !== 'production') { - if (!('from' in this._opts)) { - warnOnce( - 'Without `from` option PostCSS could generate wrong source map ' + - 'and will not find Browserslist config. Set it to CSS file path ' + - 'or to `undefined` to prevent this warning.', - ); - } - } - - return this.async().then(onFulfilled, onRejected); - } - - toString() { - return this._css; - } - - warnings() { - return []; - } - - get content() { - return this.result.css; - } - - get css() { - return this.result.css; - } - - get map() { - return this.result.map; - } - - get messages() { - return []; - } - - get opts() { - return this.result.opts; - } - - get processor() { - return this.result.processor; - } - - get root() { - if (this._root) { - return this._root; - } - - let root; - let parser = parse; - - try { - root = parser(this._css, this._opts); - } catch (error) { - this.error = error; - } - - if (this.error) { - throw this.error; - } else { - this._root = root; - return root; - } - } - - get [Symbol.toStringTag]() { - return 'NoWorkResult'; - } - } - - module.exports = NoWorkResult; - NoWorkResult.default = NoWorkResult; - }).call(this); - }).call(this, require('_process')); - }, - { - './map-generator': 45, - './parse': 48, - './result': 53, - './stringify': 57, - './warn-once': 60, - '_process': 62, - }, - ], - 47: [ - function (require, module, exports) { - 'use strict'; - - let { isClean, my } = require('./symbols'); - let CssSyntaxError = require('./css-syntax-error'); - let Stringifier = require('./stringifier'); - let stringify = require('./stringify'); - - function cloneNode(obj, parent) { - let cloned = new obj.constructor(); - - for (let i in obj) { - if (!Object.prototype.hasOwnProperty.call(obj, i)) { - /* c8 ignore next 2 */ - continue; - } - if (i === 'proxyCache') continue; - let value = obj[i]; - let type = typeof value; - - if (i === 'parent' && type === 'object') { - if (parent) cloned[i] = parent; - } else if (i === 'source') { - cloned[i] = value; - } else if (Array.isArray(value)) { - cloned[i] = value.map(j => cloneNode(j, cloned)); - } else { - if (type === 'object' && value !== null) value = cloneNode(value); - cloned[i] = value; - } - } - - return cloned; - } - - class Node { - constructor(defaults = {}) { - this.raws = {}; - this[isClean] = false; - this[my] = true; - - for (let name in defaults) { - if (name === 'nodes') { - this.nodes = []; - for (let node of defaults[name]) { - if (typeof node.clone === 'function') { - this.append(node.clone()); - } else { - this.append(node); - } - } - } else { - this[name] = defaults[name]; - } - } - } - - addToError(error) { - error.postcssNode = this; - if (error.stack && this.source && /\n\s{4}at /.test(error.stack)) { - let s = this.source; - error.stack = error.stack.replace( - /\n\s{4}at /, - `$&${s.input.from}:${s.start.line}:${s.start.column}$&`, - ); - } - return error; - } - - after(add) { - this.parent.insertAfter(this, add); - return this; - } - - assign(overrides = {}) { - for (let name in overrides) { - this[name] = overrides[name]; - } - return this; - } - - before(add) { - this.parent.insertBefore(this, add); - return this; - } - - cleanRaws(keepBetween) { - delete this.raws.before; - delete this.raws.after; - if (!keepBetween) delete this.raws.between; - } - - clone(overrides = {}) { - let cloned = cloneNode(this); - for (let name in overrides) { - cloned[name] = overrides[name]; - } - return cloned; - } - - cloneAfter(overrides = {}) { - let cloned = this.clone(overrides); - this.parent.insertAfter(this, cloned); - return cloned; - } - - cloneBefore(overrides = {}) { - let cloned = this.clone(overrides); - this.parent.insertBefore(this, cloned); - return cloned; - } - - error(message, opts = {}) { - if (this.source) { - let { end, start } = this.rangeBy(opts); - return this.source.input.error( - message, - { column: start.column, line: start.line }, - { column: end.column, line: end.line }, - opts, - ); - } - return new CssSyntaxError(message); - } - - getProxyProcessor() { - return { - get(node, prop) { - if (prop === 'proxyOf') { - return node; - } else if (prop === 'root') { - return () => node.root().toProxy(); - } else { - return node[prop]; - } - }, - - set(node, prop, value) { - if (node[prop] === value) return true; - node[prop] = value; - if ( - prop === 'prop' || - prop === 'value' || - prop === 'name' || - prop === 'params' || - prop === 'important' || - /* c8 ignore next */ - prop === 'text' - ) { - node.markDirty(); - } - return true; - }, - }; - } - - markDirty() { - if (this[isClean]) { - this[isClean] = false; - let next = this; - while ((next = next.parent)) { - next[isClean] = false; - } - } - } - - next() { - if (!this.parent) return undefined; - let index = this.parent.index(this); - return this.parent.nodes[index + 1]; - } - - positionBy(opts, stringRepresentation) { - let pos = this.source.start; - if (opts.index) { - pos = this.positionInside(opts.index, stringRepresentation); - } else if (opts.word) { - stringRepresentation = this.toString(); - let index = stringRepresentation.indexOf(opts.word); - if (index !== -1) - pos = this.positionInside(index, stringRepresentation); - } - return pos; - } - - positionInside(index, stringRepresentation) { - let string = stringRepresentation || this.toString(); - let column = this.source.start.column; - let line = this.source.start.line; - - for (let i = 0; i < index; i++) { - if (string[i] === '\n') { - column = 1; - line += 1; - } else { - column += 1; - } - } - - return { column, line }; - } - - prev() { - if (!this.parent) return undefined; - let index = this.parent.index(this); - return this.parent.nodes[index - 1]; - } - - rangeBy(opts) { - let start = { - column: this.source.start.column, - line: this.source.start.line, - }; - let end = this.source.end - ? { - column: this.source.end.column + 1, - line: this.source.end.line, - } - : { - column: start.column + 1, - line: start.line, - }; - - if (opts.word) { - let stringRepresentation = this.toString(); - let index = stringRepresentation.indexOf(opts.word); - if (index !== -1) { - start = this.positionInside(index, stringRepresentation); - end = this.positionInside( - index + opts.word.length, - stringRepresentation, - ); - } - } else { - if (opts.start) { - start = { - column: opts.start.column, - line: opts.start.line, - }; - } else if (opts.index) { - start = this.positionInside(opts.index); - } - - if (opts.end) { - end = { - column: opts.end.column, - line: opts.end.line, - }; - } else if (opts.endIndex) { - end = this.positionInside(opts.endIndex); - } else if (opts.index) { - end = this.positionInside(opts.index + 1); - } - } - - if ( - end.line < start.line || - (end.line === start.line && end.column <= start.column) - ) { - end = { column: start.column + 1, line: start.line }; - } - - return { end, start }; - } - - raw(prop, defaultType) { - let str = new Stringifier(); - return str.raw(this, prop, defaultType); - } - - remove() { - if (this.parent) { - this.parent.removeChild(this); - } - this.parent = undefined; - return this; - } - - replaceWith(...nodes) { - if (this.parent) { - let bookmark = this; - let foundSelf = false; - for (let node of nodes) { - if (node === this) { - foundSelf = true; - } else if (foundSelf) { - this.parent.insertAfter(bookmark, node); - bookmark = node; - } else { - this.parent.insertBefore(bookmark, node); - } - } - - if (!foundSelf) { - this.remove(); - } - } - - return this; - } - - root() { - let result = this; - while (result.parent && result.parent.type !== 'document') { - result = result.parent; - } - return result; - } - - toJSON(_, inputs) { - let fixed = {}; - let emitInputs = inputs == null; - inputs = inputs || new Map(); - let inputsNextIndex = 0; - - for (let name in this) { - if (!Object.prototype.hasOwnProperty.call(this, name)) { - /* c8 ignore next 2 */ - continue; - } - if (name === 'parent' || name === 'proxyCache') continue; - let value = this[name]; - - if (Array.isArray(value)) { - fixed[name] = value.map(i => { - if (typeof i === 'object' && i.toJSON) { - return i.toJSON(null, inputs); - } else { - return i; - } - }); - } else if (typeof value === 'object' && value.toJSON) { - fixed[name] = value.toJSON(null, inputs); - } else if (name === 'source') { - let inputId = inputs.get(value.input); - if (inputId == null) { - inputId = inputsNextIndex; - inputs.set(value.input, inputsNextIndex); - inputsNextIndex++; - } - fixed[name] = { - end: value.end, - inputId, - start: value.start, - }; - } else { - fixed[name] = value; - } - } - - if (emitInputs) { - fixed.inputs = [...inputs.keys()].map(input => input.toJSON()); - } - - return fixed; - } - - toProxy() { - if (!this.proxyCache) { - this.proxyCache = new Proxy(this, this.getProxyProcessor()); - } - return this.proxyCache; - } - - toString(stringifier = stringify) { - if (stringifier.stringify) stringifier = stringifier.stringify; - let result = ''; - stringifier(this, i => { - result += i; - }); - return result; - } - - warn(result, text, opts) { - let data = { node: this }; - for (let i in opts) data[i] = opts[i]; - return result.warn(text, data); - } - - get proxyOf() { - return this; - } - } - - module.exports = Node; - Node.default = Node; - }, - { - './css-syntax-error': 38, - './stringifier': 56, - './stringify': 57, - './symbols': 58, - }, - ], - 48: [ - function (require, module, exports) { - (function (process) { - (function () { - 'use strict'; - - let Container = require('./container'); - let Parser = require('./parser'); - let Input = require('./input'); - - function parse(css, opts) { - let input = new Input(css, opts); - let parser = new Parser(input); - try { - parser.parse(); - } catch (e) { - if (process.env.NODE_ENV !== 'production') { - if (e.name === 'CssSyntaxError' && opts && opts.from) { - if (/\.scss$/i.test(opts.from)) { - e.message += - '\nYou tried to parse SCSS with ' + - 'the standard CSS parser; ' + - 'try again with the postcss-scss parser'; - } else if (/\.sass/i.test(opts.from)) { - e.message += - '\nYou tried to parse Sass with ' + - 'the standard CSS parser; ' + - 'try again with the postcss-sass parser'; - } else if (/\.less$/i.test(opts.from)) { - e.message += - '\nYou tried to parse Less with ' + - 'the standard CSS parser; ' + - 'try again with the postcss-less parser'; - } - } - } - throw e; - } - - return parser.root; - } - - module.exports = parse; - parse.default = parse; - - Container.registerParse(parse); - }).call(this); - }).call(this, require('_process')); - }, - { './container': 37, './input': 42, './parser': 49, '_process': 62 }, - ], - 49: [ - function (require, module, exports) { - 'use strict'; - - let Declaration = require('./declaration'); - let tokenizer = require('./tokenize'); - let Comment = require('./comment'); - let AtRule = require('./at-rule'); - let Root = require('./root'); - let Rule = require('./rule'); - - const SAFE_COMMENT_NEIGHBOR = { - empty: true, - space: true, - }; - - function findLastWithPosition(tokens) { - for (let i = tokens.length - 1; i >= 0; i--) { - let token = tokens[i]; - let pos = token[3] || token[2]; - if (pos) return pos; - } - } - - class Parser { - constructor(input) { - this.input = input; - - this.root = new Root(); - this.current = this.root; - this.spaces = ''; - this.semicolon = false; - this.customProperty = false; - - this.createTokenizer(); - this.root.source = { - input, - start: { column: 1, line: 1, offset: 0 }, - }; - } - - atrule(token) { - let node = new AtRule(); - node.name = token[1].slice(1); - if (node.name === '') { - this.unnamedAtrule(node, token); - } - this.init(node, token[2]); - - let type; - let prev; - let shift; - let last = false; - let open = false; - let params = []; - let brackets = []; - - while (!this.tokenizer.endOfFile()) { - token = this.tokenizer.nextToken(); - type = token[0]; - - if (type === '(' || type === '[') { - brackets.push(type === '(' ? ')' : ']'); - } else if (type === '{' && brackets.length > 0) { - brackets.push('}'); - } else if (type === brackets[brackets.length - 1]) { - brackets.pop(); - } - - if (brackets.length === 0) { - if (type === ';') { - node.source.end = this.getPosition(token[2]); - node.source.end.offset++; - this.semicolon = true; - break; - } else if (type === '{') { - open = true; - break; - } else if (type === '}') { - if (params.length > 0) { - shift = params.length - 1; - prev = params[shift]; - while (prev && prev[0] === 'space') { - prev = params[--shift]; - } - if (prev) { - node.source.end = this.getPosition(prev[3] || prev[2]); - node.source.end.offset++; - } - } - this.end(token); - break; - } else { - params.push(token); - } - } else { - params.push(token); - } - - if (this.tokenizer.endOfFile()) { - last = true; - break; - } - } - - node.raws.between = this.spacesAndCommentsFromEnd(params); - if (params.length) { - node.raws.afterName = this.spacesAndCommentsFromStart(params); - this.raw(node, 'params', params); - if (last) { - token = params[params.length - 1]; - node.source.end = this.getPosition(token[3] || token[2]); - node.source.end.offset++; - this.spaces = node.raws.between; - node.raws.between = ''; - } - } else { - node.raws.afterName = ''; - node.params = ''; - } - - if (open) { - node.nodes = []; - this.current = node; - } - } - - checkMissedSemicolon(tokens) { - let colon = this.colon(tokens); - if (colon === false) return; - - let founded = 0; - let token; - for (let j = colon - 1; j >= 0; j--) { - token = tokens[j]; - if (token[0] !== 'space') { - founded += 1; - if (founded === 2) break; - } - } - // If the token is a word, e.g. `!important`, `red` or any other valid property's value. - // Then we need to return the colon after that word token. [3] is the "end" colon of that word. - // And because we need it after that one we do +1 to get the next one. - throw this.input.error( - 'Missed semicolon', - token[0] === 'word' ? token[3] + 1 : token[2], - ); - } - - colon(tokens) { - let brackets = 0; - let token, type, prev; - for (let [i, element] of tokens.entries()) { - token = element; - type = token[0]; - - if (type === '(') { - brackets += 1; - } - if (type === ')') { - brackets -= 1; - } - if (brackets === 0 && type === ':') { - if (!prev) { - this.doubleColon(token); - } else if (prev[0] === 'word' && prev[1] === 'progid') { - continue; - } else { - return i; - } - } - - prev = token; - } - return false; - } - - comment(token) { - let node = new Comment(); - this.init(node, token[2]); - node.source.end = this.getPosition(token[3] || token[2]); - node.source.end.offset++; - - let text = token[1].slice(2, -2); - if (/^\s*$/.test(text)) { - node.text = ''; - node.raws.left = text; - node.raws.right = ''; - } else { - let match = text.match(/^(\s*)([^]*\S)(\s*)$/); - node.text = match[2]; - node.raws.left = match[1]; - node.raws.right = match[3]; - } - } - - createTokenizer() { - this.tokenizer = tokenizer(this.input); - } - - decl(tokens, customProperty) { - let node = new Declaration(); - this.init(node, tokens[0][2]); - - let last = tokens[tokens.length - 1]; - if (last[0] === ';') { - this.semicolon = true; - tokens.pop(); - } - - node.source.end = this.getPosition( - last[3] || last[2] || findLastWithPosition(tokens), - ); - node.source.end.offset++; - - while (tokens[0][0] !== 'word') { - if (tokens.length === 1) this.unknownWord(tokens); - node.raws.before += tokens.shift()[1]; - } - node.source.start = this.getPosition(tokens[0][2]); - - node.prop = ''; - while (tokens.length) { - let type = tokens[0][0]; - if (type === ':' || type === 'space' || type === 'comment') { - break; - } - node.prop += tokens.shift()[1]; - } - - node.raws.between = ''; - - let token; - while (tokens.length) { - token = tokens.shift(); - - if (token[0] === ':') { - node.raws.between += token[1]; - break; - } else { - if (token[0] === 'word' && /\w/.test(token[1])) { - this.unknownWord([token]); - } - node.raws.between += token[1]; - } - } - - if (node.prop[0] === '_' || node.prop[0] === '*') { - node.raws.before += node.prop[0]; - node.prop = node.prop.slice(1); - } - - let firstSpaces = []; - let next; - while (tokens.length) { - next = tokens[0][0]; - if (next !== 'space' && next !== 'comment') break; - firstSpaces.push(tokens.shift()); - } - - this.precheckMissedSemicolon(tokens); - - for (let i = tokens.length - 1; i >= 0; i--) { - token = tokens[i]; - if (token[1].toLowerCase() === '!important') { - node.important = true; - let string = this.stringFrom(tokens, i); - string = this.spacesFromEnd(tokens) + string; - if (string !== ' !important') node.raws.important = string; - break; - } else if (token[1].toLowerCase() === 'important') { - let cache = tokens.slice(0); - let str = ''; - for (let j = i; j > 0; j--) { - let type = cache[j][0]; - if (str.trim().indexOf('!') === 0 && type !== 'space') { - break; - } - str = cache.pop()[1] + str; - } - if (str.trim().indexOf('!') === 0) { - node.important = true; - node.raws.important = str; - tokens = cache; - } - } - - if (token[0] !== 'space' && token[0] !== 'comment') { - break; - } - } - - let hasWord = tokens.some( - i => i[0] !== 'space' && i[0] !== 'comment', - ); - - if (hasWord) { - node.raws.between += firstSpaces.map(i => i[1]).join(''); - firstSpaces = []; - } - this.raw(node, 'value', firstSpaces.concat(tokens), customProperty); - - if (node.value.includes(':') && !customProperty) { - this.checkMissedSemicolon(tokens); - } - } - - doubleColon(token) { - throw this.input.error( - 'Double colon', - { offset: token[2] }, - { offset: token[2] + token[1].length }, - ); - } - - emptyRule(token) { - let node = new Rule(); - this.init(node, token[2]); - node.selector = ''; - node.raws.between = ''; - this.current = node; - } - - end(token) { - if (this.current.nodes && this.current.nodes.length) { - this.current.raws.semicolon = this.semicolon; - } - this.semicolon = false; - - this.current.raws.after = - (this.current.raws.after || '') + this.spaces; - this.spaces = ''; - - if (this.current.parent) { - this.current.source.end = this.getPosition(token[2]); - this.current.source.end.offset++; - this.current = this.current.parent; - } else { - this.unexpectedClose(token); - } - } - - endFile() { - if (this.current.parent) this.unclosedBlock(); - if (this.current.nodes && this.current.nodes.length) { - this.current.raws.semicolon = this.semicolon; - } - this.current.raws.after = - (this.current.raws.after || '') + this.spaces; - this.root.source.end = this.getPosition(this.tokenizer.position()); - } - - freeSemicolon(token) { - this.spaces += token[1]; - if (this.current.nodes) { - let prev = this.current.nodes[this.current.nodes.length - 1]; - if (prev && prev.type === 'rule' && !prev.raws.ownSemicolon) { - prev.raws.ownSemicolon = this.spaces; - this.spaces = ''; - } - } - } - - // Helpers - - getPosition(offset) { - let pos = this.input.fromOffset(offset); - return { - column: pos.col, - line: pos.line, - offset, - }; - } - - init(node, offset) { - this.current.push(node); - node.source = { - input: this.input, - start: this.getPosition(offset), - }; - node.raws.before = this.spaces; - this.spaces = ''; - if (node.type !== 'comment') this.semicolon = false; - } - - other(start) { - let end = false; - let type = null; - let colon = false; - let bracket = null; - let brackets = []; - let customProperty = start[1].startsWith('--'); - - let tokens = []; - let token = start; - while (token) { - type = token[0]; - tokens.push(token); - - if (type === '(' || type === '[') { - if (!bracket) bracket = token; - brackets.push(type === '(' ? ')' : ']'); - } else if (customProperty && colon && type === '{') { - if (!bracket) bracket = token; - brackets.push('}'); - } else if (brackets.length === 0) { - if (type === ';') { - if (colon) { - this.decl(tokens, customProperty); - return; - } else { - break; - } - } else if (type === '{') { - this.rule(tokens); - return; - } else if (type === '}') { - this.tokenizer.back(tokens.pop()); - end = true; - break; - } else if (type === ':') { - colon = true; - } - } else if (type === brackets[brackets.length - 1]) { - brackets.pop(); - if (brackets.length === 0) bracket = null; - } - - token = this.tokenizer.nextToken(); - } - - if (this.tokenizer.endOfFile()) end = true; - if (brackets.length > 0) this.unclosedBracket(bracket); - - if (end && colon) { - if (!customProperty) { - while (tokens.length) { - token = tokens[tokens.length - 1][0]; - if (token !== 'space' && token !== 'comment') break; - this.tokenizer.back(tokens.pop()); - } - } - this.decl(tokens, customProperty); - } else { - this.unknownWord(tokens); - } - } - - parse() { - let token; - while (!this.tokenizer.endOfFile()) { - token = this.tokenizer.nextToken(); - - switch (token[0]) { - case 'space': - this.spaces += token[1]; - break; - - case ';': - this.freeSemicolon(token); - break; - - case '}': - this.end(token); - break; - - case 'comment': - this.comment(token); - break; - - case 'at-word': - this.atrule(token); - break; - - case '{': - this.emptyRule(token); - break; - - default: - this.other(token); - break; - } - } - this.endFile(); - } - - precheckMissedSemicolon(/* tokens */) { - // Hook for Safe Parser - } - - raw(node, prop, tokens, customProperty) { - let token, type; - let length = tokens.length; - let value = ''; - let clean = true; - let next, prev; - - for (let i = 0; i < length; i += 1) { - token = tokens[i]; - type = token[0]; - if (type === 'space' && i === length - 1 && !customProperty) { - clean = false; - } else if (type === 'comment') { - prev = tokens[i - 1] ? tokens[i - 1][0] : 'empty'; - next = tokens[i + 1] ? tokens[i + 1][0] : 'empty'; - if ( - !SAFE_COMMENT_NEIGHBOR[prev] && - !SAFE_COMMENT_NEIGHBOR[next] - ) { - if (value.slice(-1) === ',') { - clean = false; - } else { - value += token[1]; - } - } else { - clean = false; - } - } else { - value += token[1]; - } - } - if (!clean) { - let raw = tokens.reduce((all, i) => all + i[1], ''); - node.raws[prop] = { raw, value }; - } - node[prop] = value; - } - - rule(tokens) { - tokens.pop(); - - let node = new Rule(); - this.init(node, tokens[0][2]); - - node.raws.between = this.spacesAndCommentsFromEnd(tokens); - this.raw(node, 'selector', tokens); - this.current = node; - } - - spacesAndCommentsFromEnd(tokens) { - let lastTokenType; - let spaces = ''; - while (tokens.length) { - lastTokenType = tokens[tokens.length - 1][0]; - if (lastTokenType !== 'space' && lastTokenType !== 'comment') - break; - spaces = tokens.pop()[1] + spaces; - } - return spaces; - } - - // Errors - - spacesAndCommentsFromStart(tokens) { - let next; - let spaces = ''; - while (tokens.length) { - next = tokens[0][0]; - if (next !== 'space' && next !== 'comment') break; - spaces += tokens.shift()[1]; - } - return spaces; - } - - spacesFromEnd(tokens) { - let lastTokenType; - let spaces = ''; - while (tokens.length) { - lastTokenType = tokens[tokens.length - 1][0]; - if (lastTokenType !== 'space') break; - spaces = tokens.pop()[1] + spaces; - } - return spaces; - } - - stringFrom(tokens, from) { - let result = ''; - for (let i = from; i < tokens.length; i++) { - result += tokens[i][1]; - } - tokens.splice(from, tokens.length - from); - return result; - } - - unclosedBlock() { - let pos = this.current.source.start; - throw this.input.error('Unclosed block', pos.line, pos.column); - } - - unclosedBracket(bracket) { - throw this.input.error( - 'Unclosed bracket', - { offset: bracket[2] }, - { offset: bracket[2] + 1 }, - ); - } - - unexpectedClose(token) { - throw this.input.error( - 'Unexpected }', - { offset: token[2] }, - { offset: token[2] + 1 }, - ); - } - - unknownWord(tokens) { - throw this.input.error( - 'Unknown word', - { offset: tokens[0][2] }, - { offset: tokens[0][2] + tokens[0][1].length }, - ); - } - - unnamedAtrule(node, token) { - throw this.input.error( - 'At-rule without name', - { offset: token[2] }, - { offset: token[2] + token[1].length }, - ); - } - } - - module.exports = Parser; - }, - { - './at-rule': 35, - './comment': 36, - './declaration': 39, - './root': 54, - './rule': 55, - './tokenize': 59, - }, - ], - 50: [ - function (require, module, exports) { - (function (process) { - (function () { - 'use strict'; - - let CssSyntaxError = require('./css-syntax-error'); - let Declaration = require('./declaration'); - let LazyResult = require('./lazy-result'); - let Container = require('./container'); - let Processor = require('./processor'); - let stringify = require('./stringify'); - let fromJSON = require('./fromJSON'); - let Document = require('./document'); - let Warning = require('./warning'); - let Comment = require('./comment'); - let AtRule = require('./at-rule'); - let Result = require('./result.js'); - let Input = require('./input'); - let parse = require('./parse'); - let list = require('./list'); - let Rule = require('./rule'); - let Root = require('./root'); - let Node = require('./node'); - - function postcss(...plugins) { - if (plugins.length === 1 && Array.isArray(plugins[0])) { - plugins = plugins[0]; - } - return new Processor(plugins); - } - - postcss.plugin = function plugin(name, initializer) { - let warningPrinted = false; - function creator(...args) { - // eslint-disable-next-line no-console - if (console && console.warn && !warningPrinted) { - warningPrinted = true; - // eslint-disable-next-line no-console - console.warn( - name + - ': postcss.plugin was deprecated. Migration guide:\n' + - 'https://evilmartians.com/chronicles/postcss-8-plugin-migration', - ); - if (process.env.LANG && process.env.LANG.startsWith('cn')) { - /* c8 ignore next 7 */ - // eslint-disable-next-line no-console - console.warn( - name + - ': 里面 postcss.plugin 被弃用. 迁移指南:\n' + - 'https://www.w3ctech.com/topic/2226', - ); - } - } - let transformer = initializer(...args); - transformer.postcssPlugin = name; - transformer.postcssVersion = new Processor().version; - return transformer; - } - - let cache; - Object.defineProperty(creator, 'postcss', { - get() { - if (!cache) cache = creator(); - return cache; - }, - }); - - creator.process = function (css, processOpts, pluginOpts) { - return postcss([creator(pluginOpts)]).process(css, processOpts); - }; - - return creator; - }; - - postcss.stringify = stringify; - postcss.parse = parse; - postcss.fromJSON = fromJSON; - postcss.list = list; - - postcss.comment = defaults => new Comment(defaults); - postcss.atRule = defaults => new AtRule(defaults); - postcss.decl = defaults => new Declaration(defaults); - postcss.rule = defaults => new Rule(defaults); - postcss.root = defaults => new Root(defaults); - postcss.document = defaults => new Document(defaults); - - postcss.CssSyntaxError = CssSyntaxError; - postcss.Declaration = Declaration; - postcss.Container = Container; - postcss.Processor = Processor; - postcss.Document = Document; - postcss.Comment = Comment; - postcss.Warning = Warning; - postcss.AtRule = AtRule; - postcss.Result = Result; - postcss.Input = Input; - postcss.Rule = Rule; - postcss.Root = Root; - postcss.Node = Node; - - LazyResult.registerPostcss(postcss); - - module.exports = postcss; - postcss.default = postcss; - }).call(this); - }).call(this, require('_process')); - }, - { - './at-rule': 35, - './comment': 36, - './container': 37, - './css-syntax-error': 38, - './declaration': 39, - './document': 40, - './fromJSON': 41, - './input': 42, - './lazy-result': 43, - './list': 44, - './node': 47, - './parse': 48, - './processor': 52, - './result.js': 53, - './root': 54, - './rule': 55, - './stringify': 57, - './warning': 61, - '_process': 62, - }, - ], - 51: [ - function (require, module, exports) { - (function (Buffer) { - (function () { - 'use strict'; - - let { - SourceMapConsumer, - SourceMapGenerator, - } = require('source-map-js'); - let { existsSync, readFileSync } = require('fs'); - let { dirname, join } = require('path'); - - function fromBase64(str) { - if (Buffer) { - return Buffer.from(str, 'base64').toString(); - } else { - /* c8 ignore next 2 */ - return window.atob(str); - } - } - - class PreviousMap { - constructor(css, opts) { - if (opts.map === false) return; - this.loadAnnotation(css); - this.inline = this.startWith(this.annotation, 'data:'); - - let prev = opts.map ? opts.map.prev : undefined; - let text = this.loadMap(opts.from, prev); - if (!this.mapFile && opts.from) { - this.mapFile = opts.from; - } - if (this.mapFile) this.root = dirname(this.mapFile); - if (text) this.text = text; - } - - consumer() { - if (!this.consumerCache) { - this.consumerCache = new SourceMapConsumer(this.text); - } - return this.consumerCache; - } - - decodeInline(text) { - let baseCharsetUri = - /^data:application\/json;charset=utf-?8;base64,/; - let baseUri = /^data:application\/json;base64,/; - let charsetUri = /^data:application\/json;charset=utf-?8,/; - let uri = /^data:application\/json,/; - - if (charsetUri.test(text) || uri.test(text)) { - return decodeURIComponent( - text.substr(RegExp.lastMatch.length), - ); - } - - if (baseCharsetUri.test(text) || baseUri.test(text)) { - return fromBase64(text.substr(RegExp.lastMatch.length)); - } - - let encoding = text.match(/data:application\/json;([^,]+),/)[1]; - throw new Error('Unsupported source map encoding ' + encoding); - } - - getAnnotationURL(sourceMapString) { - return sourceMapString - .replace(/^\/\*\s*# sourceMappingURL=/, '') - .trim(); - } - - isMap(map) { - if (typeof map !== 'object') return false; - return ( - typeof map.mappings === 'string' || - typeof map._mappings === 'string' || - Array.isArray(map.sections) - ); - } - - loadAnnotation(css) { - let comments = css.match(/\/\*\s*# sourceMappingURL=/gm); - if (!comments) return; - - // sourceMappingURLs from comments, strings, etc. - let start = css.lastIndexOf(comments.pop()); - let end = css.indexOf('*/', start); - - if (start > -1 && end > -1) { - // Locate the last sourceMappingURL to avoid pickin - this.annotation = this.getAnnotationURL( - css.substring(start, end), - ); - } - } - - loadFile(path) { - this.root = dirname(path); - if (existsSync(path)) { - this.mapFile = path; - return readFileSync(path, 'utf-8').toString().trim(); - } - } - - loadMap(file, prev) { - if (prev === false) return false; - - if (prev) { - if (typeof prev === 'string') { - return prev; - } else if (typeof prev === 'function') { - let prevPath = prev(file); - if (prevPath) { - let map = this.loadFile(prevPath); - if (!map) { - throw new Error( - 'Unable to load previous source map: ' + - prevPath.toString(), - ); - } - return map; - } - } else if (prev instanceof SourceMapConsumer) { - return SourceMapGenerator.fromSourceMap(prev).toString(); - } else if (prev instanceof SourceMapGenerator) { - return prev.toString(); - } else if (this.isMap(prev)) { - return JSON.stringify(prev); - } else { - throw new Error( - 'Unsupported previous source map format: ' + - prev.toString(), - ); - } - } else if (this.inline) { - return this.decodeInline(this.annotation); - } else if (this.annotation) { - let map = this.annotation; - if (file) map = join(dirname(file), map); - return this.loadFile(map); - } - } - - startWith(string, start) { - if (!string) return false; - return string.substr(0, start.length) === start; - } - - withContent() { - return !!( - this.consumer().sourcesContent && - this.consumer().sourcesContent.length > 0 - ); - } - } - - module.exports = PreviousMap; - PreviousMap.default = PreviousMap; - }).call(this); - }).call(this, require('buffer').Buffer); - }, - { 'buffer': 3, 'fs': 2, 'path': 2, 'source-map-js': 2 }, - ], - 52: [ - function (require, module, exports) { - (function (process) { - (function () { - 'use strict'; - - let NoWorkResult = require('./no-work-result'); - let LazyResult = require('./lazy-result'); - let Document = require('./document'); - let Root = require('./root'); - - class Processor { - constructor(plugins = []) { - this.version = '8.4.31'; - this.plugins = this.normalize(plugins); - } - - normalize(plugins) { - let normalized = []; - for (let i of plugins) { - if (i.postcss === true) { - i = i(); - } else if (i.postcss) { - i = i.postcss; - } - - if (typeof i === 'object' && Array.isArray(i.plugins)) { - normalized = normalized.concat(i.plugins); - } else if (typeof i === 'object' && i.postcssPlugin) { - normalized.push(i); - } else if (typeof i === 'function') { - normalized.push(i); - } else if ( - typeof i === 'object' && - (i.parse || i.stringify) - ) { - if (process.env.NODE_ENV !== 'production') { - throw new Error( - 'PostCSS syntaxes cannot be used as plugins. Instead, please use ' + - 'one of the syntax/parser/stringifier options as outlined ' + - 'in your PostCSS runner documentation.', - ); - } - } else { - throw new Error(i + ' is not a PostCSS plugin'); - } - } - return normalized; - } - - process(css, opts = {}) { - if ( - this.plugins.length === 0 && - typeof opts.parser === 'undefined' && - typeof opts.stringifier === 'undefined' && - typeof opts.syntax === 'undefined' - ) { - return new NoWorkResult(this, css, opts); - } else { - return new LazyResult(this, css, opts); - } - } - - use(plugin) { - this.plugins = this.plugins.concat(this.normalize([plugin])); - return this; - } - } - - module.exports = Processor; - Processor.default = Processor; - - Root.registerProcessor(Processor); - Document.registerProcessor(Processor); - }).call(this); - }).call(this, require('_process')); - }, - { - './document': 40, - './lazy-result': 43, - './no-work-result': 46, - './root': 54, - '_process': 62, - }, - ], - 53: [ - function (require, module, exports) { - 'use strict'; - - let Warning = require('./warning'); - - class Result { - constructor(processor, root, opts) { - this.processor = processor; - this.messages = []; - this.root = root; - this.opts = opts; - this.css = undefined; - this.map = undefined; - } - - toString() { - return this.css; - } - - warn(text, opts = {}) { - if (!opts.plugin) { - if (this.lastPlugin && this.lastPlugin.postcssPlugin) { - opts.plugin = this.lastPlugin.postcssPlugin; - } - } - - let warning = new Warning(text, opts); - this.messages.push(warning); - - return warning; - } - - warnings() { - return this.messages.filter(i => i.type === 'warning'); - } - - get content() { - return this.css; - } - } - - module.exports = Result; - Result.default = Result; - }, - { './warning': 61 }, - ], - 54: [ - function (require, module, exports) { - 'use strict'; - - let Container = require('./container'); - - let LazyResult, Processor; - - class Root extends Container { - constructor(defaults) { - super(defaults); - this.type = 'root'; - if (!this.nodes) this.nodes = []; - } - - normalize(child, sample, type) { - let nodes = super.normalize(child); - - if (sample) { - if (type === 'prepend') { - if (this.nodes.length > 1) { - sample.raws.before = this.nodes[1].raws.before; - } else { - delete sample.raws.before; - } - } else if (this.first !== sample) { - for (let node of nodes) { - node.raws.before = sample.raws.before; - } - } - } - - return nodes; - } - - removeChild(child, ignore) { - let index = this.index(child); - - if (!ignore && index === 0 && this.nodes.length > 1) { - this.nodes[1].raws.before = this.nodes[index].raws.before; - } - - return super.removeChild(child); - } - - toResult(opts = {}) { - let lazy = new LazyResult(new Processor(), this, opts); - return lazy.stringify(); - } - } - - Root.registerLazyResult = dependant => { - LazyResult = dependant; - }; - - Root.registerProcessor = dependant => { - Processor = dependant; - }; - - module.exports = Root; - Root.default = Root; - - Container.registerRoot(Root); - }, - { './container': 37 }, - ], - 55: [ - function (require, module, exports) { - 'use strict'; - - let Container = require('./container'); - let list = require('./list'); - - class Rule extends Container { - constructor(defaults) { - super(defaults); - this.type = 'rule'; - if (!this.nodes) this.nodes = []; - } - - get selectors() { - return list.comma(this.selector); - } - - set selectors(values) { - let match = this.selector ? this.selector.match(/,\s*/) : null; - let sep = match - ? match[0] - : ',' + this.raw('between', 'beforeOpen'); - this.selector = values.join(sep); - } - } - - module.exports = Rule; - Rule.default = Rule; - - Container.registerRule(Rule); - }, - { './container': 37, './list': 44 }, - ], - 56: [ - function (require, module, exports) { - 'use strict'; - - const DEFAULT_RAW = { - after: '\n', - beforeClose: '\n', - beforeComment: '\n', - beforeDecl: '\n', - beforeOpen: ' ', - beforeRule: '\n', - colon: ': ', - commentLeft: ' ', - commentRight: ' ', - emptyBody: '', - indent: ' ', - semicolon: false, - }; - - function capitalize(str) { - return str[0].toUpperCase() + str.slice(1); - } - - class Stringifier { - constructor(builder) { - this.builder = builder; - } - - atrule(node, semicolon) { - let name = '@' + node.name; - let params = node.params ? this.rawValue(node, 'params') : ''; - - if (typeof node.raws.afterName !== 'undefined') { - name += node.raws.afterName; - } else if (params) { - name += ' '; - } - - if (node.nodes) { - this.block(node, name + params); - } else { - let end = (node.raws.between || '') + (semicolon ? ';' : ''); - this.builder(name + params + end, node); - } - } - - beforeAfter(node, detect) { - let value; - if (node.type === 'decl') { - value = this.raw(node, null, 'beforeDecl'); - } else if (node.type === 'comment') { - value = this.raw(node, null, 'beforeComment'); - } else if (detect === 'before') { - value = this.raw(node, null, 'beforeRule'); - } else { - value = this.raw(node, null, 'beforeClose'); - } - - let buf = node.parent; - let depth = 0; - while (buf && buf.type !== 'root') { - depth += 1; - buf = buf.parent; - } - - if (value.includes('\n')) { - let indent = this.raw(node, null, 'indent'); - if (indent.length) { - for (let step = 0; step < depth; step++) value += indent; - } - } - - return value; - } - - block(node, start) { - let between = this.raw(node, 'between', 'beforeOpen'); - this.builder(start + between + '{', node, 'start'); - - let after; - if (node.nodes && node.nodes.length) { - this.body(node); - after = this.raw(node, 'after'); - } else { - after = this.raw(node, 'after', 'emptyBody'); - } - - if (after) this.builder(after); - this.builder('}', node, 'end'); - } - - body(node) { - let last = node.nodes.length - 1; - while (last > 0) { - if (node.nodes[last].type !== 'comment') break; - last -= 1; - } - - let semicolon = this.raw(node, 'semicolon'); - for (let i = 0; i < node.nodes.length; i++) { - let child = node.nodes[i]; - let before = this.raw(child, 'before'); - if (before) this.builder(before); - this.stringify(child, last !== i || semicolon); - } - } - - comment(node) { - let left = this.raw(node, 'left', 'commentLeft'); - let right = this.raw(node, 'right', 'commentRight'); - this.builder('/*' + left + node.text + right + '*/', node); - } - - decl(node, semicolon) { - let between = this.raw(node, 'between', 'colon'); - let string = node.prop + between + this.rawValue(node, 'value'); - - if (node.important) { - string += node.raws.important || ' !important'; - } - - if (semicolon) string += ';'; - this.builder(string, node); - } - - document(node) { - this.body(node); - } - - raw(node, own, detect) { - let value; - if (!detect) detect = own; - - // Already had - if (own) { - value = node.raws[own]; - if (typeof value !== 'undefined') return value; - } - - let parent = node.parent; - - if (detect === 'before') { - // Hack for first rule in CSS - if ( - !parent || - (parent.type === 'root' && parent.first === node) - ) { - return ''; - } - - // `root` nodes in `document` should use only their own raws - if (parent && parent.type === 'document') { - return ''; - } - } - - // Floating child without parent - if (!parent) return DEFAULT_RAW[detect]; - - // Detect style by other nodes - let root = node.root(); - if (!root.rawCache) root.rawCache = {}; - if (typeof root.rawCache[detect] !== 'undefined') { - return root.rawCache[detect]; - } - - if (detect === 'before' || detect === 'after') { - return this.beforeAfter(node, detect); - } else { - let method = 'raw' + capitalize(detect); - if (this[method]) { - value = this[method](root, node); - } else { - root.walk(i => { - value = i.raws[own]; - if (typeof value !== 'undefined') return false; - }); - } - } - - if (typeof value === 'undefined') value = DEFAULT_RAW[detect]; - - root.rawCache[detect] = value; - return value; - } - - rawBeforeClose(root) { - let value; - root.walk(i => { - if (i.nodes && i.nodes.length > 0) { - if (typeof i.raws.after !== 'undefined') { - value = i.raws.after; - if (value.includes('\n')) { - value = value.replace(/[^\n]+$/, ''); - } - return false; - } - } - }); - if (value) value = value.replace(/\S/g, ''); - return value; - } - - rawBeforeComment(root, node) { - let value; - root.walkComments(i => { - if (typeof i.raws.before !== 'undefined') { - value = i.raws.before; - if (value.includes('\n')) { - value = value.replace(/[^\n]+$/, ''); - } - return false; - } - }); - if (typeof value === 'undefined') { - value = this.raw(node, null, 'beforeDecl'); - } else if (value) { - value = value.replace(/\S/g, ''); - } - return value; - } - - rawBeforeDecl(root, node) { - let value; - root.walkDecls(i => { - if (typeof i.raws.before !== 'undefined') { - value = i.raws.before; - if (value.includes('\n')) { - value = value.replace(/[^\n]+$/, ''); - } - return false; - } - }); - if (typeof value === 'undefined') { - value = this.raw(node, null, 'beforeRule'); - } else if (value) { - value = value.replace(/\S/g, ''); - } - return value; - } - - rawBeforeOpen(root) { - let value; - root.walk(i => { - if (i.type !== 'decl') { - value = i.raws.between; - if (typeof value !== 'undefined') return false; - } - }); - return value; - } - - rawBeforeRule(root) { - let value; - root.walk(i => { - if (i.nodes && (i.parent !== root || root.first !== i)) { - if (typeof i.raws.before !== 'undefined') { - value = i.raws.before; - if (value.includes('\n')) { - value = value.replace(/[^\n]+$/, ''); - } - return false; - } - } - }); - if (value) value = value.replace(/\S/g, ''); - return value; - } - - rawColon(root) { - let value; - root.walkDecls(i => { - if (typeof i.raws.between !== 'undefined') { - value = i.raws.between.replace(/[^\s:]/g, ''); - return false; - } - }); - return value; - } - - rawEmptyBody(root) { - let value; - root.walk(i => { - if (i.nodes && i.nodes.length === 0) { - value = i.raws.after; - if (typeof value !== 'undefined') return false; - } - }); - return value; - } - - rawIndent(root) { - if (root.raws.indent) return root.raws.indent; - let value; - root.walk(i => { - let p = i.parent; - if (p && p !== root && p.parent && p.parent === root) { - if (typeof i.raws.before !== 'undefined') { - let parts = i.raws.before.split('\n'); - value = parts[parts.length - 1]; - value = value.replace(/\S/g, ''); - return false; - } - } - }); - return value; - } - - rawSemicolon(root) { - let value; - root.walk(i => { - if (i.nodes && i.nodes.length && i.last.type === 'decl') { - value = i.raws.semicolon; - if (typeof value !== 'undefined') return false; - } - }); - return value; - } - - rawValue(node, prop) { - let value = node[prop]; - let raw = node.raws[prop]; - if (raw && raw.value === value) { - return raw.raw; - } - - return value; - } - - root(node) { - this.body(node); - if (node.raws.after) this.builder(node.raws.after); - } - - rule(node) { - this.block(node, this.rawValue(node, 'selector')); - if (node.raws.ownSemicolon) { - this.builder(node.raws.ownSemicolon, node, 'end'); - } - } - - stringify(node, semicolon) { - /* c8 ignore start */ - if (!this[node.type]) { - throw new Error( - 'Unknown AST node type ' + - node.type + - '. ' + - 'Maybe you need to change PostCSS stringifier.', - ); - } - /* c8 ignore stop */ - this[node.type](node, semicolon); - } - } - - module.exports = Stringifier; - Stringifier.default = Stringifier; - }, - {}, - ], - 57: [ - function (require, module, exports) { - 'use strict'; - - let Stringifier = require('./stringifier'); - - function stringify(node, builder) { - let str = new Stringifier(builder); - str.stringify(node); - } - - module.exports = stringify; - stringify.default = stringify; - }, - { './stringifier': 56 }, - ], - 58: [ - function (require, module, exports) { - 'use strict'; - - module.exports.isClean = Symbol('isClean'); - - module.exports.my = Symbol('my'); - }, - {}, - ], - 59: [ - function (require, module, exports) { - 'use strict'; - - const SINGLE_QUOTE = "'".charCodeAt(0); - const DOUBLE_QUOTE = '"'.charCodeAt(0); - const BACKSLASH = '\\'.charCodeAt(0); - const SLASH = '/'.charCodeAt(0); - const NEWLINE = '\n'.charCodeAt(0); - const SPACE = ' '.charCodeAt(0); - const FEED = '\f'.charCodeAt(0); - const TAB = '\t'.charCodeAt(0); - const CR = '\r'.charCodeAt(0); - const OPEN_SQUARE = '['.charCodeAt(0); - const CLOSE_SQUARE = ']'.charCodeAt(0); - const OPEN_PARENTHESES = '('.charCodeAt(0); - const CLOSE_PARENTHESES = ')'.charCodeAt(0); - const OPEN_CURLY = '{'.charCodeAt(0); - const CLOSE_CURLY = '}'.charCodeAt(0); - const SEMICOLON = ';'.charCodeAt(0); - const ASTERISK = '*'.charCodeAt(0); - const COLON = ':'.charCodeAt(0); - const AT = '@'.charCodeAt(0); - - const RE_AT_END = /[\t\n\f\r "#'()/;[\\\]{}]/g; - const RE_WORD_END = /[\t\n\f\r !"#'():;@[\\\]{}]|\/(?=\*)/g; - const RE_BAD_BRACKET = /.[\r\n"'(/\\]/; - const RE_HEX_ESCAPE = /[\da-f]/i; - - module.exports = function tokenizer(input, options = {}) { - let css = input.css.valueOf(); - let ignore = options.ignoreErrors; - - let code, next, quote, content, escape; - let escaped, escapePos, prev, n, currentToken; - - let length = css.length; - let pos = 0; - let buffer = []; - let returned = []; - - function position() { - return pos; - } - - function unclosed(what) { - throw input.error('Unclosed ' + what, pos); - } - - function endOfFile() { - return returned.length === 0 && pos >= length; - } - - function nextToken(opts) { - if (returned.length) return returned.pop(); - if (pos >= length) return; - - let ignoreUnclosed = opts ? opts.ignoreUnclosed : false; - - code = css.charCodeAt(pos); - - switch (code) { - case NEWLINE: - case SPACE: - case TAB: - case CR: - case FEED: { - next = pos; - do { - next += 1; - code = css.charCodeAt(next); - } while ( - code === SPACE || - code === NEWLINE || - code === TAB || - code === CR || - code === FEED - ); - - currentToken = ['space', css.slice(pos, next)]; - pos = next - 1; - break; - } - - case OPEN_SQUARE: - case CLOSE_SQUARE: - case OPEN_CURLY: - case CLOSE_CURLY: - case COLON: - case SEMICOLON: - case CLOSE_PARENTHESES: { - let controlChar = String.fromCharCode(code); - currentToken = [controlChar, controlChar, pos]; - break; - } - - case OPEN_PARENTHESES: { - prev = buffer.length ? buffer.pop()[1] : ''; - n = css.charCodeAt(pos + 1); - if ( - prev === 'url' && - n !== SINGLE_QUOTE && - n !== DOUBLE_QUOTE && - n !== SPACE && - n !== NEWLINE && - n !== TAB && - n !== FEED && - n !== CR - ) { - next = pos; - do { - escaped = false; - next = css.indexOf(')', next + 1); - if (next === -1) { - if (ignore || ignoreUnclosed) { - next = pos; - break; - } else { - unclosed('bracket'); - } - } - escapePos = next; - while (css.charCodeAt(escapePos - 1) === BACKSLASH) { - escapePos -= 1; - escaped = !escaped; - } - } while (escaped); - - currentToken = [ - 'brackets', - css.slice(pos, next + 1), - pos, - next, - ]; - - pos = next; - } else { - next = css.indexOf(')', pos + 1); - content = css.slice(pos, next + 1); - - if (next === -1 || RE_BAD_BRACKET.test(content)) { - currentToken = ['(', '(', pos]; - } else { - currentToken = ['brackets', content, pos, next]; - pos = next; - } - } - - break; - } - - case SINGLE_QUOTE: - case DOUBLE_QUOTE: { - quote = code === SINGLE_QUOTE ? "'" : '"'; - next = pos; - do { - escaped = false; - next = css.indexOf(quote, next + 1); - if (next === -1) { - if (ignore || ignoreUnclosed) { - next = pos + 1; - break; - } else { - unclosed('string'); - } - } - escapePos = next; - while (css.charCodeAt(escapePos - 1) === BACKSLASH) { - escapePos -= 1; - escaped = !escaped; - } - } while (escaped); - - currentToken = ['string', css.slice(pos, next + 1), pos, next]; - pos = next; - break; - } - - case AT: { - RE_AT_END.lastIndex = pos + 1; - RE_AT_END.test(css); - if (RE_AT_END.lastIndex === 0) { - next = css.length - 1; - } else { - next = RE_AT_END.lastIndex - 2; - } - - currentToken = ['at-word', css.slice(pos, next + 1), pos, next]; - - pos = next; - break; - } - - case BACKSLASH: { - next = pos; - escape = true; - while (css.charCodeAt(next + 1) === BACKSLASH) { - next += 1; - escape = !escape; - } - code = css.charCodeAt(next + 1); - if ( - escape && - code !== SLASH && - code !== SPACE && - code !== NEWLINE && - code !== TAB && - code !== CR && - code !== FEED - ) { - next += 1; - if (RE_HEX_ESCAPE.test(css.charAt(next))) { - while (RE_HEX_ESCAPE.test(css.charAt(next + 1))) { - next += 1; - } - if (css.charCodeAt(next + 1) === SPACE) { - next += 1; - } - } - } - - currentToken = ['word', css.slice(pos, next + 1), pos, next]; - - pos = next; - break; - } - - default: { - if (code === SLASH && css.charCodeAt(pos + 1) === ASTERISK) { - next = css.indexOf('*/', pos + 2) + 1; - if (next === 0) { - if (ignore || ignoreUnclosed) { - next = css.length; - } else { - unclosed('comment'); - } - } - - currentToken = [ - 'comment', - css.slice(pos, next + 1), - pos, - next, - ]; - pos = next; - } else { - RE_WORD_END.lastIndex = pos + 1; - RE_WORD_END.test(css); - if (RE_WORD_END.lastIndex === 0) { - next = css.length - 1; - } else { - next = RE_WORD_END.lastIndex - 2; - } - - currentToken = ['word', css.slice(pos, next + 1), pos, next]; - buffer.push(currentToken); - pos = next; - } - - break; - } - } - - pos++; - return currentToken; - } - - function back(token) { - returned.push(token); - } - - return { - back, - endOfFile, - nextToken, - position, - }; - }; - }, - {}, - ], - 60: [ - function (require, module, exports) { - /* eslint-disable no-console */ - 'use strict'; - - let printed = {}; - - module.exports = function warnOnce(message) { - if (printed[message]) return; - printed[message] = true; - - if (typeof console !== 'undefined' && console.warn) { - console.warn(message); - } - }; - }, - {}, - ], - 61: [ - function (require, module, exports) { - 'use strict'; - - class Warning { - constructor(text, opts = {}) { - this.type = 'warning'; - this.text = text; - - if (opts.node && opts.node.source) { - let range = opts.node.rangeBy(opts); - this.line = range.start.line; - this.column = range.start.column; - this.endLine = range.end.line; - this.endColumn = range.end.column; - } - - for (let opt in opts) this[opt] = opts[opt]; - } - - toString() { - if (this.node) { - return this.node.error(this.text, { - index: this.index, - plugin: this.plugin, - word: this.word, - }).message; - } - - if (this.plugin) { - return this.plugin + ': ' + this.text; - } - - return this.text; - } - } - - module.exports = Warning; - Warning.default = Warning; - }, - {}, - ], - 62: [ - function (require, module, exports) { - // shim for using process in browser - var process = (module.exports = {}); - - // cached from whatever global is present so that test runners that stub it - // don't break things. But we need to wrap it in a try catch in case it is - // wrapped in strict mode code which doesn't define any globals. It's inside a - // function because try/catches deoptimize in certain engines. - - var cachedSetTimeout; - var cachedClearTimeout; - - function defaultSetTimout() { - throw new Error('setTimeout has not been defined'); - } - function defaultClearTimeout() { - throw new Error('clearTimeout has not been defined'); - } - (function () { - try { - if (typeof setTimeout === 'function') { - cachedSetTimeout = setTimeout; - } else { - cachedSetTimeout = defaultSetTimout; - } - } catch (e) { - cachedSetTimeout = defaultSetTimout; - } - try { - if (typeof clearTimeout === 'function') { - cachedClearTimeout = clearTimeout; - } else { - cachedClearTimeout = defaultClearTimeout; - } - } catch (e) { - cachedClearTimeout = defaultClearTimeout; - } - })(); - function runTimeout(fun) { - if (cachedSetTimeout === setTimeout) { - //normal enviroments in sane situations - return setTimeout(fun, 0); - } - // if setTimeout wasn't available but was latter defined - if ( - (cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && - setTimeout - ) { - cachedSetTimeout = setTimeout; - return setTimeout(fun, 0); - } - try { - // when when somebody has screwed with setTimeout but no I.E. maddness - return cachedSetTimeout(fun, 0); - } catch (e) { - try { - // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally - return cachedSetTimeout.call(null, fun, 0); - } catch (e) { - // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error - return cachedSetTimeout.call(this, fun, 0); - } - } - } - function runClearTimeout(marker) { - if (cachedClearTimeout === clearTimeout) { - //normal enviroments in sane situations - return clearTimeout(marker); - } - // if clearTimeout wasn't available but was latter defined - if ( - (cachedClearTimeout === defaultClearTimeout || - !cachedClearTimeout) && - clearTimeout - ) { - cachedClearTimeout = clearTimeout; - return clearTimeout(marker); - } - try { - // when when somebody has screwed with setTimeout but no I.E. maddness - return cachedClearTimeout(marker); - } catch (e) { - try { - // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally - return cachedClearTimeout.call(null, marker); - } catch (e) { - // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error. - // Some versions of I.E. have different rules for clearTimeout vs setTimeout - return cachedClearTimeout.call(this, marker); - } - } - } - var queue = []; - var draining = false; - var currentQueue; - var queueIndex = -1; - - function cleanUpNextTick() { - if (!draining || !currentQueue) { - return; - } - draining = false; - if (currentQueue.length) { - queue = currentQueue.concat(queue); - } else { - queueIndex = -1; - } - if (queue.length) { - drainQueue(); - } - } - - function drainQueue() { - if (draining) { - return; - } - var timeout = runTimeout(cleanUpNextTick); - draining = true; - - var len = queue.length; - while (len) { - currentQueue = queue; - queue = []; - while (++queueIndex < len) { - if (currentQueue) { - currentQueue[queueIndex].run(); - } - } - queueIndex = -1; - len = queue.length; - } - currentQueue = null; - draining = false; - runClearTimeout(timeout); - } - - process.nextTick = function (fun) { - var args = new Array(arguments.length - 1); - if (arguments.length > 1) { - for (var i = 1; i < arguments.length; i++) { - args[i - 1] = arguments[i]; - } - } - queue.push(new Item(fun, args)); - if (queue.length === 1 && !draining) { - runTimeout(drainQueue); - } - }; - - // v8 likes predictible objects - function Item(fun, array) { - this.fun = fun; - this.array = array; - } - Item.prototype.run = function () { - this.fun.apply(null, this.array); - }; - process.title = 'browser'; - process.browser = true; - process.env = {}; - process.argv = []; - process.version = ''; // empty string to avoid regexp issues - process.versions = {}; - - function noop() {} - - process.on = noop; - process.addListener = noop; - process.once = noop; - process.off = noop; - process.removeListener = noop; - process.removeAllListeners = noop; - process.emit = noop; - process.prependListener = noop; - process.prependOnceListener = noop; - - process.listeners = function (name) { - return []; - }; - - process.binding = function (name) { - throw new Error('process.binding is not supported'); - }; - - process.cwd = function () { - return '/'; - }; - process.chdir = function (dir) { - throw new Error('process.chdir is not supported'); - }; - process.umask = function () { - return 0; - }; - }, - {}, - ], - 63: [ - function (require, module, exports) { - const htmlparser = require('htmlparser2'); - const escapeStringRegexp = require('escape-string-regexp'); - const { isPlainObject } = require('is-plain-object'); - const deepmerge = require('deepmerge'); - const parseSrcset = require('parse-srcset'); - const { parse: postcssParse } = require('postcss'); - // Tags that can conceivably represent stand-alone media. - const mediaTags = [ - 'img', - 'audio', - 'video', - 'picture', - 'svg', - 'object', - 'map', - 'iframe', - 'embed', - ]; - // Tags that are inherently vulnerable to being used in XSS attacks. - const vulnerableTags = ['script', 'style']; - - function each(obj, cb) { - if (obj) { - Object.keys(obj).forEach(function (key) { - cb(obj[key], key); - }); - } - } - - // Avoid false positives with .__proto__, .hasOwnProperty, etc. - function has(obj, key) { - return {}.hasOwnProperty.call(obj, key); - } - - // Returns those elements of `a` for which `cb(a)` returns truthy - function filter(a, cb) { - const n = []; - each(a, function (v) { - if (cb(v)) { - n.push(v); - } - }); - return n; - } - - function isEmptyObject(obj) { - for (const key in obj) { - if (has(obj, key)) { - return false; - } - } - return true; - } - - function stringifySrcset(parsedSrcset) { - return parsedSrcset - .map(function (part) { - if (!part.url) { - throw new Error('URL missing'); - } - - return ( - part.url + - (part.w ? ` ${part.w}w` : '') + - (part.h ? ` ${part.h}h` : '') + - (part.d ? ` ${part.d}x` : '') - ); - }) - .join(', '); - } - - module.exports = sanitizeHtml; - - // A valid attribute name. - // We use a tolerant definition based on the set of strings defined by - // html.spec.whatwg.org/multipage/parsing.html#before-attribute-name-state - // and html.spec.whatwg.org/multipage/parsing.html#attribute-name-state . - // The characters accepted are ones which can be appended to the attribute - // name buffer without triggering a parse error: - // * unexpected-equals-sign-before-attribute-name - // * unexpected-null-character - // * unexpected-character-in-attribute-name - // We exclude the empty string because it's impossible to get to the after - // attribute name state with an empty attribute name buffer. - const VALID_HTML_ATTRIBUTE_NAME = /^[^\0\t\n\f\r /<=>]+$/; - - // Ignore the _recursing flag; it's there for recursive - // invocation as a guard against this exploit: - // https://github.com/fb55/htmlparser2/issues/105 - - function sanitizeHtml(html, options, _recursing) { - if (html == null) { - return ''; - } - if (typeof html === 'number') { - html = html.toString(); - } - - let result = ''; - // Used for hot swapping the result variable with an empty string in order to "capture" the text written to it. - let tempResult = ''; - - function Frame(tag, attribs) { - const that = this; - this.tag = tag; - this.attribs = attribs || {}; - this.tagPosition = result.length; - this.text = ''; // Node inner text - this.mediaChildren = []; - - this.updateParentNodeText = function () { - if (stack.length) { - const parentFrame = stack[stack.length - 1]; - parentFrame.text += that.text; - } - }; - - this.updateParentNodeMediaChildren = function () { - if (stack.length && mediaTags.includes(this.tag)) { - const parentFrame = stack[stack.length - 1]; - parentFrame.mediaChildren.push(this.tag); - } - }; - } - - options = Object.assign({}, sanitizeHtml.defaults, options); - options.parser = Object.assign( - {}, - htmlParserDefaults, - options.parser, - ); - - const tagAllowed = function (name) { - return ( - options.allowedTags === false || - (options.allowedTags || []).indexOf(name) > -1 - ); - }; - - // vulnerableTags - vulnerableTags.forEach(function (tag) { - if (tagAllowed(tag) && !options.allowVulnerableTags) { - console.warn( - `\n\n⚠️ Your \`allowedTags\` option includes, \`${tag}\`, which is inherently\nvulnerable to XSS attacks. Please remove it from \`allowedTags\`.\nOr, to disable this warning, add the \`allowVulnerableTags\` option\nand ensure you are accounting for this risk.\n\n`, - ); - } - }); - - // Tags that contain something other than HTML, or where discarding - // the text when the tag is disallowed makes sense for other reasons. - // If we are not allowing these tags, we should drop their content too. - // For other tags you would drop the tag but keep its content. - const nonTextTagsArray = options.nonTextTags || [ - 'script', - 'style', - 'textarea', - 'option', - ]; - let allowedAttributesMap; - let allowedAttributesGlobMap; - if (options.allowedAttributes) { - allowedAttributesMap = {}; - allowedAttributesGlobMap = {}; - each(options.allowedAttributes, function (attributes, tag) { - allowedAttributesMap[tag] = []; - const globRegex = []; - attributes.forEach(function (obj) { - if (typeof obj === 'string' && obj.indexOf('*') >= 0) { - globRegex.push( - escapeStringRegexp(obj).replace(/\\\*/g, '.*'), - ); - } else { - allowedAttributesMap[tag].push(obj); - } - }); - if (globRegex.length) { - allowedAttributesGlobMap[tag] = new RegExp( - '^(' + globRegex.join('|') + ')$', - ); - } - }); - } - const allowedClassesMap = {}; - const allowedClassesGlobMap = {}; - const allowedClassesRegexMap = {}; - each(options.allowedClasses, function (classes, tag) { - // Implicitly allows the class attribute - if (allowedAttributesMap) { - if (!has(allowedAttributesMap, tag)) { - allowedAttributesMap[tag] = []; - } - allowedAttributesMap[tag].push('class'); - } - - allowedClassesMap[tag] = classes; - - if (Array.isArray(classes)) { - const globRegex = []; - allowedClassesMap[tag] = []; - allowedClassesRegexMap[tag] = []; - classes.forEach(function (obj) { - if (typeof obj === 'string' && obj.indexOf('*') >= 0) { - globRegex.push( - escapeStringRegexp(obj).replace(/\\\*/g, '.*'), - ); - } else if (obj instanceof RegExp) { - allowedClassesRegexMap[tag].push(obj); - } else { - allowedClassesMap[tag].push(obj); - } - }); - if (globRegex.length) { - allowedClassesGlobMap[tag] = new RegExp( - '^(' + globRegex.join('|') + ')$', - ); - } - } - }); - - const transformTagsMap = {}; - let transformTagsAll; - each(options.transformTags, function (transform, tag) { - let transFun; - if (typeof transform === 'function') { - transFun = transform; - } else if (typeof transform === 'string') { - transFun = sanitizeHtml.simpleTransform(transform); - } - if (tag === '*') { - transformTagsAll = transFun; - } else { - transformTagsMap[tag] = transFun; - } - }); - - let depth; - let stack; - let skipMap; - let transformMap; - let skipText; - let skipTextDepth; - let addedText = false; - - initializeState(); - - const parser = new htmlparser.Parser( - { - onopentag: function (name, attribs) { - // If `enforceHtmlBoundary` is `true` and this has found the opening - // `html` tag, reset the state. - if (options.enforceHtmlBoundary && name === 'html') { - initializeState(); - } - - if (skipText) { - skipTextDepth++; - return; - } - const frame = new Frame(name, attribs); - stack.push(frame); - - let skip = false; - const hasText = !!frame.text; - let transformedTag; - if (has(transformTagsMap, name)) { - transformedTag = transformTagsMap[name](name, attribs); - - frame.attribs = attribs = transformedTag.attribs; - - if (transformedTag.text !== undefined) { - frame.innerText = transformedTag.text; - } - - if (name !== transformedTag.tagName) { - frame.name = name = transformedTag.tagName; - transformMap[depth] = transformedTag.tagName; - } - } - if (transformTagsAll) { - transformedTag = transformTagsAll(name, attribs); - - frame.attribs = attribs = transformedTag.attribs; - if (name !== transformedTag.tagName) { - frame.name = name = transformedTag.tagName; - transformMap[depth] = transformedTag.tagName; - } - } - - if ( - !tagAllowed(name) || - (options.disallowedTagsMode === 'recursiveEscape' && - !isEmptyObject(skipMap)) || - (options.nestingLimit != null && - depth >= options.nestingLimit) - ) { - skip = true; - skipMap[depth] = true; - if (options.disallowedTagsMode === 'discard') { - if (nonTextTagsArray.indexOf(name) !== -1) { - skipText = true; - skipTextDepth = 1; - } - } - skipMap[depth] = true; - } - depth++; - if (skip) { - if (options.disallowedTagsMode === 'discard') { - // We want the contents but not this tag - return; - } - tempResult = result; - result = ''; - } - result += '<' + name; - - if (name === 'script') { - if ( - options.allowedScriptHostnames || - options.allowedScriptDomains - ) { - frame.innerText = ''; - } - } - - if ( - !allowedAttributesMap || - has(allowedAttributesMap, name) || - allowedAttributesMap['*'] - ) { - each(attribs, function (value, a) { - if (!VALID_HTML_ATTRIBUTE_NAME.test(a)) { - // This prevents part of an attribute name in the output from being - // interpreted as the end of an attribute, or end of a tag. - delete frame.attribs[a]; - return; - } - // If the value is empty, and this is a known non-boolean attribute, delete it - // List taken from https://html.spec.whatwg.org/multipage/indices.html#attributes-3 - if ( - value === '' && - (options.nonBooleanAttributes.includes(a) || - options.nonBooleanAttributes.includes('*')) - ) { - delete frame.attribs[a]; - return; - } - // check allowedAttributesMap for the element and attribute and modify the value - // as necessary if there are specific values defined. - let passedAllowedAttributesMapCheck = false; - if ( - !allowedAttributesMap || - (has(allowedAttributesMap, name) && - allowedAttributesMap[name].indexOf(a) !== -1) || - (allowedAttributesMap['*'] && - allowedAttributesMap['*'].indexOf(a) !== -1) || - (has(allowedAttributesGlobMap, name) && - allowedAttributesGlobMap[name].test(a)) || - (allowedAttributesGlobMap['*'] && - allowedAttributesGlobMap['*'].test(a)) - ) { - passedAllowedAttributesMapCheck = true; - } else if ( - allowedAttributesMap && - allowedAttributesMap[name] - ) { - for (const o of allowedAttributesMap[name]) { - if (isPlainObject(o) && o.name && o.name === a) { - passedAllowedAttributesMapCheck = true; - let newValue = ''; - if (o.multiple === true) { - // verify the values that are allowed - const splitStrArray = value.split(' '); - for (const s of splitStrArray) { - if (o.values.indexOf(s) !== -1) { - if (newValue === '') { - newValue = s; - } else { - newValue += ' ' + s; - } - } - } - } else if (o.values.indexOf(value) >= 0) { - // verified an allowed value matches the entire attribute value - newValue = value; - } - value = newValue; - } - } - } - if (passedAllowedAttributesMapCheck) { - if ( - options.allowedSchemesAppliedToAttributes.indexOf(a) !== - -1 - ) { - if (naughtyHref(name, value)) { - delete frame.attribs[a]; - return; - } - } - - if (name === 'script' && a === 'src') { - let allowed = true; - - try { - const parsed = parseUrl(value); - - if ( - options.allowedScriptHostnames || - options.allowedScriptDomains - ) { - const allowedHostname = ( - options.allowedScriptHostnames || [] - ).find(function (hostname) { - return hostname === parsed.url.hostname; - }); - const allowedDomain = ( - options.allowedScriptDomains || [] - ).find(function (domain) { - return ( - parsed.url.hostname === domain || - parsed.url.hostname.endsWith(`.${domain}`) - ); - }); - allowed = allowedHostname || allowedDomain; - } - } catch (e) { - allowed = false; - } - - if (!allowed) { - delete frame.attribs[a]; - return; - } - } - - if (name === 'iframe' && a === 'src') { - let allowed = true; - try { - const parsed = parseUrl(value); - - if (parsed.isRelativeUrl) { - // default value of allowIframeRelativeUrls is true - // unless allowedIframeHostnames or allowedIframeDomains specified - allowed = has(options, 'allowIframeRelativeUrls') - ? options.allowIframeRelativeUrls - : !options.allowedIframeHostnames && - !options.allowedIframeDomains; - } else if ( - options.allowedIframeHostnames || - options.allowedIframeDomains - ) { - const allowedHostname = ( - options.allowedIframeHostnames || [] - ).find(function (hostname) { - return hostname === parsed.url.hostname; - }); - const allowedDomain = ( - options.allowedIframeDomains || [] - ).find(function (domain) { - return ( - parsed.url.hostname === domain || - parsed.url.hostname.endsWith(`.${domain}`) - ); - }); - allowed = allowedHostname || allowedDomain; - } - } catch (e) { - // Unparseable iframe src - allowed = false; - } - if (!allowed) { - delete frame.attribs[a]; - return; - } - } - if (a === 'srcset') { - try { - let parsed = parseSrcset(value); - parsed.forEach(function (value) { - if (naughtyHref('srcset', value.url)) { - value.evil = true; - } - }); - parsed = filter(parsed, function (v) { - return !v.evil; - }); - if (!parsed.length) { - delete frame.attribs[a]; - return; - } else { - value = stringifySrcset( - filter(parsed, function (v) { - return !v.evil; - }), - ); - frame.attribs[a] = value; - } - } catch (e) { - // Unparseable srcset - delete frame.attribs[a]; - return; - } - } - if (a === 'class') { - const allowedSpecificClasses = allowedClassesMap[name]; - const allowedWildcardClasses = allowedClassesMap['*']; - const allowedSpecificClassesGlob = - allowedClassesGlobMap[name]; - const allowedSpecificClassesRegex = - allowedClassesRegexMap[name]; - const allowedWildcardClassesGlob = - allowedClassesGlobMap['*']; - const allowedClassesGlobs = [ - allowedSpecificClassesGlob, - allowedWildcardClassesGlob, - ] - .concat(allowedSpecificClassesRegex) - .filter(function (t) { - return t; - }); - if (allowedSpecificClasses && allowedWildcardClasses) { - value = filterClasses( - value, - deepmerge( - allowedSpecificClasses, - allowedWildcardClasses, - ), - allowedClassesGlobs, - ); - } else { - value = filterClasses( - value, - allowedSpecificClasses || allowedWildcardClasses, - allowedClassesGlobs, - ); - } - if (!value.length) { - delete frame.attribs[a]; - return; - } - } - if (a === 'style') { - if (options.parseStyleAttributes) { - try { - const abstractSyntaxTree = postcssParse( - name + ' {' + value + '}', - ); - const filteredAST = filterCss( - abstractSyntaxTree, - options.allowedStyles, - ); - - value = stringifyStyleAttributes(filteredAST); - - if (value.length === 0) { - delete frame.attribs[a]; - return; - } - } catch (e) { - if (typeof window !== 'undefined') { - console.warn( - 'Failed to parse "' + - name + - ' {' + - value + - '}' + - '", If you\'re running this in a browser, we recommend to disable style parsing: options.parseStyleAttributes: false, since this only works in a node environment due to a postcss dependency, More info: https://github.com/apostrophecms/sanitize-html/issues/547', - ); - } - delete frame.attribs[a]; - return; - } - } else if (options.allowedStyles) { - throw new Error( - 'allowedStyles option cannot be used together with parseStyleAttributes: false.', - ); - } - } - result += ' ' + a; - if (value && value.length) { - result += '="' + escapeHtml(value, true) + '"'; - } - } else { - delete frame.attribs[a]; - } - }); - } - if (options.selfClosing.indexOf(name) !== -1) { - result += ' />'; - } else { - result += '>'; - if (frame.innerText && !hasText && !options.textFilter) { - result += escapeHtml(frame.innerText); - addedText = true; - } - } - if (skip) { - result = tempResult + escapeHtml(result); - tempResult = ''; - } - }, - ontext: function (text) { - if (skipText) { - return; - } - const lastFrame = stack[stack.length - 1]; - let tag; - - if (lastFrame) { - tag = lastFrame.tag; - // If inner text was set by transform function then let's use it - text = - lastFrame.innerText !== undefined - ? lastFrame.innerText - : text; - } - - if ( - options.disallowedTagsMode === 'discard' && - (tag === 'script' || tag === 'style') - ) { - // htmlparser2 gives us these as-is. Escaping them ruins the content. Allowing - // script tags is, by definition, game over for XSS protection, so if that's - // your concern, don't allow them. The same is essentially true for style tags - // which have their own collection of XSS vectors. - result += text; - } else { - const escaped = escapeHtml(text, false); - if (options.textFilter && !addedText) { - result += options.textFilter(escaped, tag); - } else if (!addedText) { - result += escaped; - } - } - if (stack.length) { - const frame = stack[stack.length - 1]; - frame.text += text; - } - }, - onclosetag: function (name, isImplied) { - if (skipText) { - skipTextDepth--; - if (!skipTextDepth) { - skipText = false; - } else { - return; - } - } - - const frame = stack.pop(); - if (!frame) { - // Do not crash on bad markup - return; - } - - if (frame.tag !== name) { - // Another case of bad markup. - // Push to stack, so that it will be used in future closing tags. - stack.push(frame); - return; - } - - skipText = options.enforceHtmlBoundary - ? name === 'html' - : false; - depth--; - const skip = skipMap[depth]; - if (skip) { - delete skipMap[depth]; - if (options.disallowedTagsMode === 'discard') { - frame.updateParentNodeText(); - return; - } - tempResult = result; - result = ''; - } - - if (transformMap[depth]) { - name = transformMap[depth]; - delete transformMap[depth]; - } - - if (options.exclusiveFilter && options.exclusiveFilter(frame)) { - result = result.substr(0, frame.tagPosition); - return; - } - - frame.updateParentNodeMediaChildren(); - frame.updateParentNodeText(); - - if ( - // Already output /> - options.selfClosing.indexOf(name) !== -1 || - // Escaped tag, closing tag is implied - (isImplied && - !tagAllowed(name) && - ['escape', 'recursiveEscape'].indexOf( - options.disallowedTagsMode, - ) >= 0) - ) { - if (skip) { - result = tempResult; - tempResult = ''; - } - return; - } - - result += ''; - if (skip) { - result = tempResult + escapeHtml(result); - tempResult = ''; - } - addedText = false; - }, - }, - options.parser, - ); - parser.write(html); - parser.end(); - - return result; - - function initializeState() { - result = ''; - depth = 0; - stack = []; - skipMap = {}; - transformMap = {}; - skipText = false; - skipTextDepth = 0; - } - - function escapeHtml(s, quote) { - if (typeof s !== 'string') { - s = s + ''; - } - if (options.parser.decodeEntities) { - s = s - .replace(/&/g, '&') - .replace(//g, '>'); - if (quote) { - s = s.replace(/"/g, '"'); - } - } - // TODO: this is inadequate because it will pass `&0;`. This approach - // will not work, each & must be considered with regard to whether it - // is followed by a 100% syntactically valid entity or not, and escaped - // if it is not. If this bothers you, don't set parser.decodeEntities - // to false. (The default is true.) - s = s - .replace(/&(?![a-zA-Z0-9#]{1,20};)/g, '&') // Match ampersands not part of existing HTML entity - .replace(//g, '>'); - if (quote) { - s = s.replace(/"/g, '"'); - } - return s; - } - - function naughtyHref(name, href) { - // Browsers ignore character codes of 32 (space) and below in a surprising - // number of situations. Start reading here: - // https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Embedded_tab - // eslint-disable-next-line no-control-regex - href = href.replace(/[\x00-\x20]+/g, ''); - // Clobber any comments in URLs, which the browser might - // interpret inside an XML data island, allowing - // a javascript: URL to be snuck through - while (true) { - const firstIndex = href.indexOf('', firstIndex + 4); - if (lastIndex === -1) { - break; - } - href = - href.substring(0, firstIndex) + href.substring(lastIndex + 3); - } - // Case insensitive so we don't get faked out by JAVASCRIPT #1 - // Allow more characters after the first so we don't get faked - // out by certain schemes browsers accept - const matches = href.match(/^([a-zA-Z][a-zA-Z0-9.\-+]*):/); - if (!matches) { - // Protocol-relative URL starting with any combination of '/' and '\' - if (href.match(/^[/\\]{2}/)) { - return !options.allowProtocolRelative; - } - - // No scheme - return false; - } - const scheme = matches[1].toLowerCase(); - - if (has(options.allowedSchemesByTag, name)) { - return options.allowedSchemesByTag[name].indexOf(scheme) === -1; - } - - return ( - !options.allowedSchemes || - options.allowedSchemes.indexOf(scheme) === -1 - ); - } - - function parseUrl(value) { - value = value.replace(/^(\w+:)?\s*[\\/]\s*[\\/]/, '$1//'); - if (value.startsWith('relative:')) { - // An attempt to exploit our workaround for base URLs being - // mandatory for relative URL validation in the WHATWG - // URL parser, reject it - throw new Error('relative: exploit attempt'); - } - // naughtyHref is in charge of whether protocol relative URLs - // are cool. Here we are concerned just with allowed hostnames and - // whether to allow relative URLs. - // - // Build a placeholder "base URL" against which any reasonable - // relative URL may be parsed successfully - let base = 'relative://relative-site'; - for (let i = 0; i < 100; i++) { - base += `/${i}`; - } - - const parsed = new URL(value, base); - - const isRelativeUrl = - parsed && - parsed.hostname === 'relative-site' && - parsed.protocol === 'relative:'; - return { - isRelativeUrl, - url: parsed, - }; - } - /** - * Filters user input css properties by allowlisted regex attributes. - * Modifies the abstractSyntaxTree object. - * - * @param {object} abstractSyntaxTree - Object representation of CSS attributes. - * @property {array[Declaration]} abstractSyntaxTree.nodes[0] - Each object cointains prop and value key, i.e { prop: 'color', value: 'red' }. - * @param {object} allowedStyles - Keys are properties (i.e color), value is list of permitted regex rules (i.e /green/i). - * @return {object} - The modified tree. - */ - function filterCss(abstractSyntaxTree, allowedStyles) { - if (!allowedStyles) { - return abstractSyntaxTree; - } - - const astRules = abstractSyntaxTree.nodes[0]; - let selectedRule; - - // Merge global and tag-specific styles into new AST. - if (allowedStyles[astRules.selector] && allowedStyles['*']) { - selectedRule = deepmerge( - allowedStyles[astRules.selector], - allowedStyles['*'], - ); - } else { - selectedRule = - allowedStyles[astRules.selector] || allowedStyles['*']; - } - - if (selectedRule) { - abstractSyntaxTree.nodes[0].nodes = astRules.nodes.reduce( - filterDeclarations(selectedRule), - [], - ); - } - - return abstractSyntaxTree; - } - - /** - * Extracts the style attributes from an AbstractSyntaxTree and formats those - * values in the inline style attribute format. - * - * @param {AbstractSyntaxTree} filteredAST - * @return {string} - Example: "color:yellow;text-align:center !important;font-family:helvetica;" - */ - function stringifyStyleAttributes(filteredAST) { - return filteredAST.nodes[0].nodes - .reduce(function (extractedAttributes, attrObject) { - extractedAttributes.push( - `${attrObject.prop}:${attrObject.value}${attrObject.important ? ' !important' : ''}`, - ); - return extractedAttributes; - }, []) - .join(';'); - } - - /** - * Filters the existing attributes for the given property. Discards any attributes - * which don't match the allowlist. - * - * @param {object} selectedRule - Example: { color: red, font-family: helvetica } - * @param {array} allowedDeclarationsList - List of declarations which pass the allowlist. - * @param {object} attributeObject - Object representing the current css property. - * @property {string} attributeObject.type - Typically 'declaration'. - * @property {string} attributeObject.prop - The CSS property, i.e 'color'. - * @property {string} attributeObject.value - The corresponding value to the css property, i.e 'red'. - * @return {function} - When used in Array.reduce, will return an array of Declaration objects - */ - function filterDeclarations(selectedRule) { - return function (allowedDeclarationsList, attributeObject) { - // If this property is allowlisted... - if (has(selectedRule, attributeObject.prop)) { - const matchesRegex = selectedRule[attributeObject.prop].some( - function (regularExpression) { - return regularExpression.test(attributeObject.value); - }, - ); - - if (matchesRegex) { - allowedDeclarationsList.push(attributeObject); - } - } - return allowedDeclarationsList; - }; - } - - function filterClasses(classes, allowed, allowedGlobs) { - if (!allowed) { - // The class attribute is allowed without filtering on this tag - return classes; - } - classes = classes.split(/\s+/); - return classes - .filter(function (clss) { - return ( - allowed.indexOf(clss) !== -1 || - allowedGlobs.some(function (glob) { - return glob.test(clss); - }) - ); - }) - .join(' '); - } - } - - // Defaults are accessible to you so that you can use them as a starting point - // programmatically if you wish - - const htmlParserDefaults = { - decodeEntities: true, - }; - sanitizeHtml.defaults = { - allowedTags: [ - // Sections derived from MDN element categories and limited to the more - // benign categories. - // https://developer.mozilla.org/en-US/docs/Web/HTML/Element - // Content sectioning - 'address', - 'article', - 'aside', - 'footer', - 'header', - 'h1', - 'h2', - 'h3', - 'h4', - 'h5', - 'h6', - 'hgroup', - 'main', - 'nav', - 'section', - // Text content - 'blockquote', - 'dd', - 'div', - 'dl', - 'dt', - 'figcaption', - 'figure', - 'hr', - 'li', - 'main', - 'ol', - 'p', - 'pre', - 'ul', - // Inline text semantics - 'a', - 'abbr', - 'b', - 'bdi', - 'bdo', - 'br', - 'cite', - 'code', - 'data', - 'dfn', - 'em', - 'i', - 'kbd', - 'mark', - 'q', - 'rb', - 'rp', - 'rt', - 'rtc', - 'ruby', - 's', - 'samp', - 'small', - 'span', - 'strong', - 'sub', - 'sup', - 'time', - 'u', - 'var', - 'wbr', - // Table content - 'caption', - 'col', - 'colgroup', - 'table', - 'tbody', - 'td', - 'tfoot', - 'th', - 'thead', - 'tr', - ], - // Tags that cannot be boolean - nonBooleanAttributes: [ - 'abbr', - 'accept', - 'accept-charset', - 'accesskey', - 'action', - 'allow', - 'alt', - 'as', - 'autocapitalize', - 'autocomplete', - 'blocking', - 'charset', - 'cite', - 'class', - 'color', - 'cols', - 'colspan', - 'content', - 'contenteditable', - 'coords', - 'crossorigin', - 'data', - 'datetime', - 'decoding', - 'dir', - 'dirname', - 'download', - 'draggable', - 'enctype', - 'enterkeyhint', - 'fetchpriority', - 'for', - 'form', - 'formaction', - 'formenctype', - 'formmethod', - 'formtarget', - 'headers', - 'height', - 'hidden', - 'high', - 'href', - 'hreflang', - 'http-equiv', - 'id', - 'imagesizes', - 'imagesrcset', - 'inputmode', - 'integrity', - 'is', - 'itemid', - 'itemprop', - 'itemref', - 'itemtype', - 'kind', - 'label', - 'lang', - 'list', - 'loading', - 'low', - 'max', - 'maxlength', - 'media', - 'method', - 'min', - 'minlength', - 'name', - 'nonce', - 'optimum', - 'pattern', - 'ping', - 'placeholder', - 'popover', - 'popovertarget', - 'popovertargetaction', - 'poster', - 'preload', - 'referrerpolicy', - 'rel', - 'rows', - 'rowspan', - 'sandbox', - 'scope', - 'shape', - 'size', - 'sizes', - 'slot', - 'span', - 'spellcheck', - 'src', - 'srcdoc', - 'srclang', - 'srcset', - 'start', - 'step', - 'style', - 'tabindex', - 'target', - 'title', - 'translate', - 'type', - 'usemap', - 'value', - 'width', - 'wrap', - // Event handlers - 'onauxclick', - 'onafterprint', - 'onbeforematch', - 'onbeforeprint', - 'onbeforeunload', - 'onbeforetoggle', - 'onblur', - 'oncancel', - 'oncanplay', - 'oncanplaythrough', - 'onchange', - 'onclick', - 'onclose', - 'oncontextlost', - 'oncontextmenu', - 'oncontextrestored', - 'oncopy', - 'oncuechange', - 'oncut', - 'ondblclick', - 'ondrag', - 'ondragend', - 'ondragenter', - 'ondragleave', - 'ondragover', - 'ondragstart', - 'ondrop', - 'ondurationchange', - 'onemptied', - 'onended', - 'onerror', - 'onfocus', - 'onformdata', - 'onhashchange', - 'oninput', - 'oninvalid', - 'onkeydown', - 'onkeypress', - 'onkeyup', - 'onlanguagechange', - 'onload', - 'onloadeddata', - 'onloadedmetadata', - 'onloadstart', - 'onmessage', - 'onmessageerror', - 'onmousedown', - 'onmouseenter', - 'onmouseleave', - 'onmousemove', - 'onmouseout', - 'onmouseover', - 'onmouseup', - 'onoffline', - 'ononline', - 'onpagehide', - 'onpageshow', - 'onpaste', - 'onpause', - 'onplay', - 'onplaying', - 'onpopstate', - 'onprogress', - 'onratechange', - 'onreset', - 'onresize', - 'onrejectionhandled', - 'onscroll', - 'onscrollend', - 'onsecuritypolicyviolation', - 'onseeked', - 'onseeking', - 'onselect', - 'onslotchange', - 'onstalled', - 'onstorage', - 'onsubmit', - 'onsuspend', - 'ontimeupdate', - 'ontoggle', - 'onunhandledrejection', - 'onunload', - 'onvolumechange', - 'onwaiting', - 'onwheel', - ], - disallowedTagsMode: 'discard', - allowedAttributes: { - a: ['href', 'name', 'target'], - // We don't currently allow img itself by default, but - // these attributes would make sense if we did. - img: [ - 'src', - 'srcset', - 'alt', - 'title', - 'width', - 'height', - 'loading', - ], - }, - // Lots of these won't come up by default because we don't allow them - selfClosing: [ - 'img', - 'br', - 'hr', - 'area', - 'base', - 'basefont', - 'input', - 'link', - 'meta', - ], - // URL schemes we permit - allowedSchemes: ['http', 'https', 'ftp', 'mailto', 'tel'], - allowedSchemesByTag: {}, - allowedSchemesAppliedToAttributes: ['href', 'src', 'cite'], - allowProtocolRelative: true, - enforceHtmlBoundary: false, - parseStyleAttributes: true, - }; - - sanitizeHtml.simpleTransform = function ( - newTagName, - newAttribs, - merge, - ) { - merge = merge === undefined ? true : merge; - newAttribs = newAttribs || {}; - - return function (tagName, attribs) { - let attrib; - if (merge) { - for (attrib in newAttribs) { - attribs[attrib] = newAttribs[attrib]; - } - } else { - attribs = newAttribs; - } - - return { - tagName: newTagName, - attribs: attribs, - }; - }; - }; - }, - { - 'deepmerge': 4, - 'escape-string-regexp': 26, - 'htmlparser2': 29, - 'is-plain-object': 31, - 'parse-srcset': 33, - 'postcss': 50, - }, - ], - 64: [ - function (require, module, exports) { - const sanitizeHtml = require('sanitize-html'); - - /** @typedef {{removeExtraParagraphSpacing?: boolean}} Options */ - - const loadingGif = - 'https://raw.githubusercontent.com/LNReader/lnreader/plugins/android/app/src/main/assets/images/loading.gif'; - - /** - * - * @param {string} html - * @param {Options?} options - */ - window.sanitizeChapterText = (html, options) => { - if (html) { - html = html.replace(/</g, '<').replace(/>/g, '>'); - } - let text = sanitizeHtml(html, { - allowedTags: sanitizeHtml.defaults.allowedTags.concat([ - 'img', - 'i', - 'em', - 'b', - 'a', - 'div', - ]), - allowedAttributes: { - img: ['src'], - a: ['href'], - }, - allowedSchemes: ['data', 'http', 'https', 'file'], - }); - if (text) { - if (options?.removeExtraParagraphSpacing) { - text = text - .replace(/<\s*br[^>]*>/gi, '\n') - .replace(/\n{2,}/g, '\n\n'); - } - const imgHandlerRegex = /]*src="[^"]+"[^>]*)>/g; - const ttsHandlerRegex = - /(< *\w+ *>[^<.?!]+< *\/\w+ *>|< *a *href *= *"[^"]+" *>\s*(]+>|[^<]+|(< *\w+ *>[^]+< *\/\w+ *>)*)\s*< *\/a *>|< *img[^>]+>|[^<>.?!]+[.?!])/g; - // first -> match whole tags which dont have attribute and [.?!] inside - // second -> match a tags and its childs - // third -> match img tags - // match sentence split by [.?!] - - text = text - .replace( - imgHandlerRegex, - `Plugin can't fetch this img`, - ) - .replace(ttsHandlerRegex, '$1'); - } else { - text = 'HTML is empty'; - } - return text; - }; - }, - { 'sanitize-html': 63 }, - ], - }, - {}, - [64], -); +`)});let y=t.nonTextTags||["script","style","textarea","option",],v,w;t.allowedAttributes&&(v={},w={},l(t.allowedAttributes,function(e,t){v[t]=[];let u=[];e.forEach(function(e){"string"==typeof e&&e.indexOf("*")>=0?u.push($(e).replace(/\\\*/g,".*")):v[t].push(e)}),u.length&&(w[t]=RegExp("^("+u.join("|")+")$"))}));let S={},T={},E={};l(t.allowedClasses,function(e,t){if(v&&(f(v,t)||(v[t]=[]),v[t].push("class")),S[t]=e,Array.isArray(e)){let u=[];S[t]=[],E[t]=[],e.forEach(function(e){"string"==typeof e&&e.indexOf("*")>=0?u.push($(e).replace(/\\\*/g,".*")):e instanceof RegExp?E[t].push(e):S[t].push(e)}),u.length&&(T[t]=RegExp("^("+u.join("|")+")$"))}});let A={},C;l(t.transformTags,function(e,t){let u;"function"==typeof e?u=e:"string"==typeof e&&(u=h.simpleTransform(e)),"*"===t?C=u:A[t]=u});let k,I,N,L,P,D,q=!1;B();let O=new r.Parser({onopentag:function(e,u){if(t.enforceHtmlBoundary&&"html"===e&&B(),P){D++;return}let r=new g(e,u);I.push(r);let $=!1,a=!!r.text,c;if(f(A,e)&&(c=A[e](e,u),r.attribs=u=c.attribs,void 0!==c.text&&(r.innerText=c.text),e!==c.tagName&&(r.name=e=c.tagName,L[k]=c.tagName)),C&&(c=C(e,u),r.attribs=u=c.attribs,e!==c.tagName&&(r.name=e=c.tagName,L[k]=c.tagName)),(!x(e)||"recursiveEscape"===t.disallowedTagsMode&&!function e(t){for(let u in t)if(f(t,u))return!1;return!0}(N)||null!=t.nestingLimit&&k>=t.nestingLimit)&&($=!0,N[k]=!0,"discard"===t.disallowedTagsMode&&-1!==y.indexOf(e)&&(P=!0,D=1),N[k]=!0),k++,$){if("discard"===t.disallowedTagsMode)return;m=b,b=""}b+="<"+e,"script"===e&&(t.allowedScriptHostnames||t.allowedScriptDomains)&&(r.innerText=""),(!v||f(v,e)||v["*"])&&l(u,function(u,$){if(!_.test($)||""===u&&(t.nonBooleanAttributes.includes($)||t.nonBooleanAttributes.includes("*"))){delete r.attribs[$];return}let a=!1;if(!v||f(v,e)&&-1!==v[e].indexOf($)||v["*"]&&-1!==v["*"].indexOf($)||f(w,e)&&w[e].test($)||w["*"]&&w["*"].test($))a=!0;else if(v&&v[e]){for(let c of v[e])if(n(c)&&c.name&&c.name===$){a=!0;let l="";if(!0===c.multiple){let h=u.split(" ");for(let p of h)-1!==c.values.indexOf(p)&&(""===l?l=p:l+=" "+p)}else c.values.indexOf(u)>=0&&(l=u);u=l}}if(a){var m,g;if(-1!==t.allowedSchemesAppliedToAttributes.indexOf($)&&R(e,u)){delete r.attribs[$];return}if("script"===e&&"src"===$){let x=!0;try{let y=U(u);if(t.allowedScriptHostnames||t.allowedScriptDomains){let A=(t.allowedScriptHostnames||[]).find(function(e){return e===y.url.hostname}),C=(t.allowedScriptDomains||[]).find(function(e){return y.url.hostname===e||y.url.hostname.endsWith(`.${e}`)});x=A||C}}catch(k){x=!1}if(!x){delete r.attribs[$];return}}if("iframe"===e&&"src"===$){let I=!0;try{let N=U(u);if(N.isRelativeUrl)I=f(t,"allowIframeRelativeUrls")?t.allowIframeRelativeUrls:!t.allowedIframeHostnames&&!t.allowedIframeDomains;else if(t.allowedIframeHostnames||t.allowedIframeDomains){let L=(t.allowedIframeHostnames||[]).find(function(e){return e===N.url.hostname}),P=(t.allowedIframeDomains||[]).find(function(e){return N.url.hostname===e||N.url.hostname.endsWith(`.${e}`)});I=L||P}}catch(D){I=!1}if(!I){delete r.attribs[$];return}}if("srcset"===$)try{let q=s(u);if(q.forEach(function(e){R("srcset",e.url)&&(e.evil=!0)}),(q=d(q,function(e){return!e.evil})).length){u=(m=d(q,function(e){return!e.evil})).map(function(e){if(!e.url)throw Error("URL missing");return e.url+(e.w?` ${e.w}w`:"")+(e.h?` ${e.h}h`:"")+(e.d?` ${e.d}x`:"")}).join(", "),r.attribs[$]=u}else{delete r.attribs[$];return}}catch(O){delete r.attribs[$];return}if("class"===$){let B=S[e],H=S["*"],V=T[e],F=E[e],z=T["*"],G=[V,z,].concat(F).filter(function(e){return e});if(!(u=B&&H?j(u,i(B,H),G):j(u,B||H,G)).length){delete r.attribs[$];return}}if("style"===$){if(t.parseStyleAttributes)try{let W=o(e+" {"+u+"}"),X=function e(t,u){var r;if(!u)return t;let $=t.nodes[0],n;return(n=u[$.selector]&&u["*"]?i(u[$.selector],u["*"]):u[$.selector]||u["*"])&&(t.nodes[0].nodes=$.nodes.reduce((r=n,function(e,t){if(f(r,t.prop)){let u=r[t.prop].some(function(e){return e.test(t.value)});u&&e.push(t)}return e}),[])),t}(W,t.allowedStyles);if(u=(g=X,g.nodes[0].nodes.reduce(function(e,t){return e.push(`${t.prop}:${t.value}${t.important?" !important":""}`),e},[]).join(";")),0===u.length){delete r.attribs[$];return}}catch(Q){"undefined"!=typeof window&&console.warn('Failed to parse "'+e+" {"+u+"}\", If you're running this in a browser, we recommend to disable style parsing: options.parseStyleAttributes: false, since this only works in a node environment due to a postcss dependency, More info: https://github.com/apostrophecms/sanitize-html/issues/547"),delete r.attribs[$];return}else if(t.allowedStyles)throw Error("allowedStyles option cannot be used together with parseStyleAttributes: false.")}b+=" "+$,u&&u.length&&(b+='="'+M(u,!0)+'"')}else delete r.attribs[$]}),-1!==t.selfClosing.indexOf(e)?b+=" />":(b+=">",!r.innerText||a||t.textFilter||(b+=M(r.innerText),q=!0)),$&&(b=m+M(b),m="")},ontext:function(e){if(P)return;let u=I[I.length-1],r;if(u&&(r=u.tag,e=void 0!==u.innerText?u.innerText:e),"discard"===t.disallowedTagsMode&&("script"===r||"style"===r))b+=e;else{let $=M(e,!1);t.textFilter&&!q?b+=t.textFilter($,r):q||(b+=$)}if(I.length){let n=I[I.length-1];n.text+=e}},onclosetag:function(e,u){if(P){if(--D)return;P=!1}let r=I.pop();if(!r)return;if(r.tag!==e){I.push(r);return}P=!!t.enforceHtmlBoundary&&"html"===e,k--;let $=N[k];if($){if(delete N[k],"discard"===t.disallowedTagsMode){r.updateParentNodeText();return}m=b,b=""}if(L[k]&&(e=L[k],delete L[k]),t.exclusiveFilter&&t.exclusiveFilter(r)){b=b.substr(0,r.tagPosition);return}if(r.updateParentNodeMediaChildren(),r.updateParentNodeText(),-1!==t.selfClosing.indexOf(e)||u&&!x(e)&&["escape","recursiveEscape"].indexOf(t.disallowedTagsMode)>=0){$&&(b=m,m="");return}b+="",$&&(b=m+M(b),m=""),q=!1}},t.parser);return O.write(e),O.end(),b;function B(){b="",k=0,I=[],N={},L={},P=!1,D=0}function M(e,u){return"string"!=typeof e&&(e+=""),t.parser.decodeEntities&&(e=e.replace(/&/g,"&").replace(//g,">"),u&&(e=e.replace(/"/g,"""))),e=e.replace(/&(?![a-zA-Z0-9#]{1,20};)/g,"&").replace(//g,">"),u&&(e=e.replace(/"/g,""")),e}function R(e,u){for(u=u.replace(/[\x00-\x20]+/g,"");;){let r=u.indexOf("",r+4);if(-1===$)break;u=u.substring(0,r)+u.substring($+3)}let n=u.match(/^([a-zA-Z][a-zA-Z0-9.\-+]*):/);if(!n)return!!u.match(/^[/\\]{2}/)&&!t.allowProtocolRelative;let i=n[1].toLowerCase();return f(t.allowedSchemesByTag,e)?-1===t.allowedSchemesByTag[e].indexOf(i):!t.allowedSchemes||-1===t.allowedSchemes.indexOf(i)}function U(e){if((e=e.replace(/^(\w+:)?\s*[\\/]\s*[\\/]/,"$1//")).startsWith("relative:"))throw Error("relative: exploit attempt");let t="relative://relative-site";for(let u=0;u<100;u++)t+=`/${u}`;let r=new URL(e,t),$=r&&"relative-site"===r.hostname&&"relative:"===r.protocol;return{isRelativeUrl:$,url:r}}function j(e,t,u){return t?(e=e.split(/\s+/)).filter(function(e){return -1!==t.indexOf(e)||u.some(function(t){return t.test(e)})}).join(" "):e}}let p={decodeEntities:!0};h.defaults={allowedTags:["address","article","aside","footer","header","h1","h2","h3","h4","h5","h6","hgroup","main","nav","section","blockquote","dd","div","dl","dt","figcaption","figure","hr","li","main","ol","p","pre","ul","a","abbr","b","bdi","bdo","br","cite","code","data","dfn","em","i","kbd","mark","q","rb","rp","rt","rtc","ruby","s","samp","small","span","strong","sub","sup","time","u","var","wbr","caption","col","colgroup","table","tbody","td","tfoot","th","thead","tr",],nonBooleanAttributes:["abbr","accept","accept-charset","accesskey","action","allow","alt","as","autocapitalize","autocomplete","blocking","charset","cite","class","color","cols","colspan","content","contenteditable","coords","crossorigin","data","datetime","decoding","dir","dirname","download","draggable","enctype","enterkeyhint","fetchpriority","for","form","formaction","formenctype","formmethod","formtarget","headers","height","hidden","high","href","hreflang","http-equiv","id","imagesizes","imagesrcset","inputmode","integrity","is","itemid","itemprop","itemref","itemtype","kind","label","lang","list","loading","low","max","maxlength","media","method","min","minlength","name","nonce","optimum","pattern","ping","placeholder","popover","popovertarget","popovertargetaction","poster","preload","referrerpolicy","rel","rows","rowspan","sandbox","scope","shape","size","sizes","slot","span","spellcheck","src","srcdoc","srclang","srcset","start","step","style","tabindex","target","title","translate","type","usemap","value","width","wrap","onauxclick","onafterprint","onbeforematch","onbeforeprint","onbeforeunload","onbeforetoggle","onblur","oncancel","oncanplay","oncanplaythrough","onchange","onclick","onclose","oncontextlost","oncontextmenu","oncontextrestored","oncopy","oncuechange","oncut","ondblclick","ondrag","ondragend","ondragenter","ondragleave","ondragover","ondragstart","ondrop","ondurationchange","onemptied","onended","onerror","onfocus","onformdata","onhashchange","oninput","oninvalid","onkeydown","onkeypress","onkeyup","onlanguagechange","onload","onloadeddata","onloadedmetadata","onloadstart","onmessage","onmessageerror","onmousedown","onmouseenter","onmouseleave","onmousemove","onmouseout","onmouseover","onmouseup","onoffline","ononline","onpagehide","onpageshow","onpaste","onpause","onplay","onplaying","onpopstate","onprogress","onratechange","onreset","onresize","onrejectionhandled","onscroll","onscrollend","onsecuritypolicyviolation","onseeked","onseeking","onselect","onslotchange","onstalled","onstorage","onsubmit","onsuspend","ontimeupdate","ontoggle","onunhandledrejection","onunload","onvolumechange","onwaiting","onwheel",],disallowedTagsMode:"discard",allowedAttributes:{a:["href","name","target"],img:["src","srcset","alt","title","width","height","loading",]},selfClosing:["img","br","hr","area","base","basefont","input","link","meta",],allowedSchemes:["http","https","ftp","mailto","tel"],allowedSchemesByTag:{},allowedSchemesAppliedToAttributes:["href","src","cite"],allowProtocolRelative:!0,enforceHtmlBoundary:!1,parseStyleAttributes:!0},h.simpleTransform=function(e,t,u){return u=void 0===u||u,t=t||{},function(r,$){let n;if(u)for(n in t)$[n]=t[n];else $=t;return{tagName:e,attribs:$}}}},{deepmerge:4,"escape-string-regexp":26,htmlparser2:29,"is-plain-object":31,"parse-srcset":33,postcss:50},],64:[function(e,t,u){let r=e("sanitize-html");window.sanitizeChapterText=(e,t)=>{e&&(e=e.replace(/</g,"<").replace(/>/g,">"));let u=r(e,{allowedTags:r.defaults.allowedTags.concat(["img","i","em","b","a","div",]),allowedAttributes:{img:["src"],a:["href"]},allowedSchemes:["data","http","https","file"]});return u?(t?.removeExtraParagraphSpacing&&(u=u.replace(/<\s*br[^>]*>/gi,"\n").replace(/\n{2,}/g,"\n\n")),u=u.replace(/]*src="[^"]+"[^>]*)>/g,"\"Plugin").replace(/(< *\w+ *>[^<.?!]+< *\/\w+ *>|< *a *href *= *"[^"]+" *>\s*(]+>|[^<]+|(< *\w+ *>[^]+< *\/\w+ *>)*)\s*< *\/a *>|< *img[^>]+>|[^<>.?!]+[.?!])/g,"$1")):u="HTML is empty",u}},{"sanitize-html":63},]},{},[64]); \ No newline at end of file diff --git a/test_web/static/js/jquery.min.js b/test_web/static/js/jquery.min.js index 0875900..6819434 100644 --- a/test_web/static/js/jquery.min.js +++ b/test_web/static/js/jquery.min.js @@ -1,5595 +1 @@ -/*! jQuery v3.6.4 | (c) OpenJS Foundation and other contributors | jquery.org/license */ -!(function (e, t) { - 'use strict'; - 'object' == typeof module && 'object' == typeof module.exports - ? (module.exports = e.document - ? t(e, !0) - : function (e) { - if (!e.document) - throw new Error('jQuery requires a window with a document'); - return t(e); - }) - : t(e); -})('undefined' != typeof window ? window : this, function (C, e) { - 'use strict'; - var t = [], - r = Object.getPrototypeOf, - s = t.slice, - g = t.flat - ? function (e) { - return t.flat.call(e); - } - : function (e) { - return t.concat.apply([], e); - }, - u = t.push, - i = t.indexOf, - n = {}, - o = n.toString, - y = n.hasOwnProperty, - a = y.toString, - l = a.call(Object), - v = {}, - m = function (e) { - return ( - 'function' == typeof e && - 'number' != typeof e.nodeType && - 'function' != typeof e.item - ); - }, - x = function (e) { - return null != e && e === e.window; - }, - E = C.document, - c = { type: !0, src: !0, nonce: !0, noModule: !0 }; - function b(e, t, n) { - var r, - i, - o = (n = n || E).createElement('script'); - if (((o.text = e), t)) - for (r in c) - (i = t[r] || (t.getAttribute && t.getAttribute(r))) && - o.setAttribute(r, i); - n.head.appendChild(o).parentNode.removeChild(o); - } - function w(e) { - return null == e - ? e + '' - : 'object' == typeof e || 'function' == typeof e - ? n[o.call(e)] || 'object' - : typeof e; - } - var f = '3.6.4', - S = function (e, t) { - return new S.fn.init(e, t); - }; - function p(e) { - var t = !!e && 'length' in e && e.length, - n = w(e); - return ( - !m(e) && - !x(e) && - ('array' === n || - 0 === t || - ('number' == typeof t && 0 < t && t - 1 in e)) - ); - } - (S.fn = S.prototype = - { - jquery: f, - constructor: S, - length: 0, - toArray: function () { - return s.call(this); - }, - get: function (e) { - return null == e - ? s.call(this) - : e < 0 - ? this[e + this.length] - : this[e]; - }, - pushStack: function (e) { - var t = S.merge(this.constructor(), e); - return (t.prevObject = this), t; - }, - each: function (e) { - return S.each(this, e); - }, - map: function (n) { - return this.pushStack( - S.map(this, function (e, t) { - return n.call(e, t, e); - }), - ); - }, - slice: function () { - return this.pushStack(s.apply(this, arguments)); - }, - first: function () { - return this.eq(0); - }, - last: function () { - return this.eq(-1); - }, - even: function () { - return this.pushStack( - S.grep(this, function (e, t) { - return (t + 1) % 2; - }), - ); - }, - odd: function () { - return this.pushStack( - S.grep(this, function (e, t) { - return t % 2; - }), - ); - }, - eq: function (e) { - var t = this.length, - n = +e + (e < 0 ? t : 0); - return this.pushStack(0 <= n && n < t ? [this[n]] : []); - }, - end: function () { - return this.prevObject || this.constructor(); - }, - push: u, - sort: t.sort, - splice: t.splice, - }), - (S.extend = S.fn.extend = - function () { - var e, - t, - n, - r, - i, - o, - a = arguments[0] || {}, - s = 1, - u = arguments.length, - l = !1; - for ( - 'boolean' == typeof a && ((l = a), (a = arguments[s] || {}), s++), - 'object' == typeof a || m(a) || (a = {}), - s === u && ((a = this), s--); - s < u; - s++ - ) - if (null != (e = arguments[s])) - for (t in e) - (r = e[t]), - '__proto__' !== t && - a !== r && - (l && r && (S.isPlainObject(r) || (i = Array.isArray(r))) - ? ((n = a[t]), - (o = - i && !Array.isArray(n) - ? [] - : i || S.isPlainObject(n) - ? n - : {}), - (i = !1), - (a[t] = S.extend(l, o, r))) - : void 0 !== r && (a[t] = r)); - return a; - }), - S.extend({ - expando: 'jQuery' + (f + Math.random()).replace(/\D/g, ''), - isReady: !0, - error: function (e) { - throw new Error(e); - }, - noop: function () {}, - isPlainObject: function (e) { - var t, n; - return ( - !(!e || '[object Object]' !== o.call(e)) && - (!(t = r(e)) || - ('function' == - typeof (n = y.call(t, 'constructor') && t.constructor) && - a.call(n) === l)) - ); - }, - isEmptyObject: function (e) { - var t; - for (t in e) return !1; - return !0; - }, - globalEval: function (e, t, n) { - b(e, { nonce: t && t.nonce }, n); - }, - each: function (e, t) { - var n, - r = 0; - if (p(e)) { - for (n = e.length; r < n; r++) - if (!1 === t.call(e[r], r, e[r])) break; - } else for (r in e) if (!1 === t.call(e[r], r, e[r])) break; - return e; - }, - makeArray: function (e, t) { - var n = t || []; - return ( - null != e && - (p(Object(e)) - ? S.merge(n, 'string' == typeof e ? [e] : e) - : u.call(n, e)), - n - ); - }, - inArray: function (e, t, n) { - return null == t ? -1 : i.call(t, e, n); - }, - merge: function (e, t) { - for (var n = +t.length, r = 0, i = e.length; r < n; r++) e[i++] = t[r]; - return (e.length = i), e; - }, - grep: function (e, t, n) { - for (var r = [], i = 0, o = e.length, a = !n; i < o; i++) - !t(e[i], i) !== a && r.push(e[i]); - return r; - }, - map: function (e, t, n) { - var r, - i, - o = 0, - a = []; - if (p(e)) - for (r = e.length; o < r; o++) - null != (i = t(e[o], o, n)) && a.push(i); - else for (o in e) null != (i = t(e[o], o, n)) && a.push(i); - return g(a); - }, - guid: 1, - support: v, - }), - 'function' == typeof Symbol && (S.fn[Symbol.iterator] = t[Symbol.iterator]), - S.each( - 'Boolean Number String Function Array Date RegExp Object Error Symbol'.split( - ' ', - ), - function (e, t) { - n['[object ' + t + ']'] = t.toLowerCase(); - }, - ); - var d = (function (n) { - var e, - d, - b, - o, - i, - h, - f, - g, - w, - u, - l, - T, - C, - a, - E, - y, - s, - c, - v, - S = 'sizzle' + 1 * new Date(), - p = n.document, - k = 0, - r = 0, - m = ue(), - x = ue(), - A = ue(), - N = ue(), - j = function (e, t) { - return e === t && (l = !0), 0; - }, - D = {}.hasOwnProperty, - t = [], - q = t.pop, - L = t.push, - H = t.push, - O = t.slice, - P = function (e, t) { - for (var n = 0, r = e.length; n < r; n++) if (e[n] === t) return n; - return -1; - }, - R = - 'checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped', - M = '[\\x20\\t\\r\\n\\f]', - I = - '(?:\\\\[\\da-fA-F]{1,6}' + - M + - '?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+', - W = - '\\[' + - M + - '*(' + - I + - ')(?:' + - M + - '*([*^$|!~]?=)' + - M + - '*(?:\'((?:\\\\.|[^\\\\\'])*)\'|"((?:\\\\.|[^\\\\"])*)"|(' + - I + - '))|)' + - M + - '*\\]', - F = - ':(' + - I + - ')(?:\\(((\'((?:\\\\.|[^\\\\\'])*)\'|"((?:\\\\.|[^\\\\"])*)")|((?:\\\\.|[^\\\\()[\\]]|' + - W + - ')*)|.*)\\)|)', - $ = new RegExp(M + '+', 'g'), - B = new RegExp('^' + M + '+|((?:^|[^\\\\])(?:\\\\.)*)' + M + '+$', 'g'), - _ = new RegExp('^' + M + '*,' + M + '*'), - z = new RegExp('^' + M + '*([>+~]|' + M + ')' + M + '*'), - U = new RegExp(M + '|>'), - X = new RegExp(F), - V = new RegExp('^' + I + '$'), - G = { - ID: new RegExp('^#(' + I + ')'), - CLASS: new RegExp('^\\.(' + I + ')'), - TAG: new RegExp('^(' + I + '|[*])'), - ATTR: new RegExp('^' + W), - PSEUDO: new RegExp('^' + F), - CHILD: new RegExp( - '^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(' + - M + - '*(even|odd|(([+-]|)(\\d*)n|)' + - M + - '*(?:([+-]|)' + - M + - '*(\\d+)|))' + - M + - '*\\)|)', - 'i', - ), - bool: new RegExp('^(?:' + R + ')$', 'i'), - needsContext: new RegExp( - '^' + - M + - '*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(' + - M + - '*((?:-\\d)?\\d*)' + - M + - '*\\)|)(?=[^-]|$)', - 'i', - ), - }, - Y = /HTML$/i, - Q = /^(?:input|select|textarea|button)$/i, - J = /^h\d$/i, - K = /^[^{]+\{\s*\[native \w/, - Z = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, - ee = /[+~]/, - te = new RegExp('\\\\[\\da-fA-F]{1,6}' + M + '?|\\\\([^\\r\\n\\f])', 'g'), - ne = function (e, t) { - var n = '0x' + e.slice(1) - 65536; - return ( - t || - (n < 0 - ? String.fromCharCode(n + 65536) - : String.fromCharCode((n >> 10) | 55296, (1023 & n) | 56320)) - ); - }, - re = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g, - ie = function (e, t) { - return t - ? '\0' === e - ? '\ufffd' - : e.slice(0, -1) + - '\\' + - e.charCodeAt(e.length - 1).toString(16) + - ' ' - : '\\' + e; - }, - oe = function () { - T(); - }, - ae = be( - function (e) { - return !0 === e.disabled && 'fieldset' === e.nodeName.toLowerCase(); - }, - { dir: 'parentNode', next: 'legend' }, - ); - try { - H.apply((t = O.call(p.childNodes)), p.childNodes), - t[p.childNodes.length].nodeType; - } catch (e) { - H = { - apply: t.length - ? function (e, t) { - L.apply(e, O.call(t)); - } - : function (e, t) { - var n = e.length, - r = 0; - while ((e[n++] = t[r++])); - e.length = n - 1; - }, - }; - } - function se(t, e, n, r) { - var i, - o, - a, - s, - u, - l, - c, - f = e && e.ownerDocument, - p = e ? e.nodeType : 9; - if ( - ((n = n || []), - 'string' != typeof t || !t || (1 !== p && 9 !== p && 11 !== p)) - ) - return n; - if (!r && (T(e), (e = e || C), E)) { - if (11 !== p && (u = Z.exec(t))) - if ((i = u[1])) { - if (9 === p) { - if (!(a = e.getElementById(i))) return n; - if (a.id === i) return n.push(a), n; - } else if (f && (a = f.getElementById(i)) && v(e, a) && a.id === i) - return n.push(a), n; - } else { - if (u[2]) return H.apply(n, e.getElementsByTagName(t)), n; - if ( - (i = u[3]) && - d.getElementsByClassName && - e.getElementsByClassName - ) - return H.apply(n, e.getElementsByClassName(i)), n; - } - if ( - d.qsa && - !N[t + ' '] && - (!y || !y.test(t)) && - (1 !== p || 'object' !== e.nodeName.toLowerCase()) - ) { - if (((c = t), (f = e), 1 === p && (U.test(t) || z.test(t)))) { - ((f = (ee.test(t) && ve(e.parentNode)) || e) === e && d.scope) || - ((s = e.getAttribute('id')) - ? (s = s.replace(re, ie)) - : e.setAttribute('id', (s = S))), - (o = (l = h(t)).length); - while (o--) l[o] = (s ? '#' + s : ':scope') + ' ' + xe(l[o]); - c = l.join(','); - } - try { - return H.apply(n, f.querySelectorAll(c)), n; - } catch (e) { - N(t, !0); - } finally { - s === S && e.removeAttribute('id'); - } - } - } - return g(t.replace(B, '$1'), e, n, r); - } - function ue() { - var r = []; - return function e(t, n) { - return ( - r.push(t + ' ') > b.cacheLength && delete e[r.shift()], - (e[t + ' '] = n) - ); - }; - } - function le(e) { - return (e[S] = !0), e; - } - function ce(e) { - var t = C.createElement('fieldset'); - try { - return !!e(t); - } catch (e) { - return !1; - } finally { - t.parentNode && t.parentNode.removeChild(t), (t = null); - } - } - function fe(e, t) { - var n = e.split('|'), - r = n.length; - while (r--) b.attrHandle[n[r]] = t; - } - function pe(e, t) { - var n = t && e, - r = - n && - 1 === e.nodeType && - 1 === t.nodeType && - e.sourceIndex - t.sourceIndex; - if (r) return r; - if (n) while ((n = n.nextSibling)) if (n === t) return -1; - return e ? 1 : -1; - } - function de(t) { - return function (e) { - return 'input' === e.nodeName.toLowerCase() && e.type === t; - }; - } - function he(n) { - return function (e) { - var t = e.nodeName.toLowerCase(); - return ('input' === t || 'button' === t) && e.type === n; - }; - } - function ge(t) { - return function (e) { - return 'form' in e - ? e.parentNode && !1 === e.disabled - ? 'label' in e - ? 'label' in e.parentNode - ? e.parentNode.disabled === t - : e.disabled === t - : e.isDisabled === t || (e.isDisabled !== !t && ae(e) === t) - : e.disabled === t - : 'label' in e && e.disabled === t; - }; - } - function ye(a) { - return le(function (o) { - return ( - (o = +o), - le(function (e, t) { - var n, - r = a([], e.length, o), - i = r.length; - while (i--) e[(n = r[i])] && (e[n] = !(t[n] = e[n])); - }) - ); - }); - } - function ve(e) { - return e && 'undefined' != typeof e.getElementsByTagName && e; - } - for (e in ((d = se.support = {}), - (i = se.isXML = - function (e) { - var t = e && e.namespaceURI, - n = e && (e.ownerDocument || e).documentElement; - return !Y.test(t || (n && n.nodeName) || 'HTML'); - }), - (T = se.setDocument = - function (e) { - var t, - n, - r = e ? e.ownerDocument || e : p; - return ( - r != C && - 9 === r.nodeType && - r.documentElement && - ((a = (C = r).documentElement), - (E = !i(C)), - p != C && - (n = C.defaultView) && - n.top !== n && - (n.addEventListener - ? n.addEventListener('unload', oe, !1) - : n.attachEvent && n.attachEvent('onunload', oe)), - (d.scope = ce(function (e) { - return ( - a.appendChild(e).appendChild(C.createElement('div')), - 'undefined' != typeof e.querySelectorAll && - !e.querySelectorAll(':scope fieldset div').length - ); - })), - (d.cssHas = ce(function () { - try { - return C.querySelector(':has(*,:jqfake)'), !1; - } catch (e) { - return !0; - } - })), - (d.attributes = ce(function (e) { - return (e.className = 'i'), !e.getAttribute('className'); - })), - (d.getElementsByTagName = ce(function (e) { - return ( - e.appendChild(C.createComment('')), - !e.getElementsByTagName('*').length - ); - })), - (d.getElementsByClassName = K.test(C.getElementsByClassName)), - (d.getById = ce(function (e) { - return ( - (a.appendChild(e).id = S), - !C.getElementsByName || !C.getElementsByName(S).length - ); - })), - d.getById - ? ((b.filter.ID = function (e) { - var t = e.replace(te, ne); - return function (e) { - return e.getAttribute('id') === t; - }; - }), - (b.find.ID = function (e, t) { - if ('undefined' != typeof t.getElementById && E) { - var n = t.getElementById(e); - return n ? [n] : []; - } - })) - : ((b.filter.ID = function (e) { - var n = e.replace(te, ne); - return function (e) { - var t = - 'undefined' != typeof e.getAttributeNode && - e.getAttributeNode('id'); - return t && t.value === n; - }; - }), - (b.find.ID = function (e, t) { - if ('undefined' != typeof t.getElementById && E) { - var n, - r, - i, - o = t.getElementById(e); - if (o) { - if ((n = o.getAttributeNode('id')) && n.value === e) - return [o]; - (i = t.getElementsByName(e)), (r = 0); - while ((o = i[r++])) - if ((n = o.getAttributeNode('id')) && n.value === e) - return [o]; - } - return []; - } - })), - (b.find.TAG = d.getElementsByTagName - ? function (e, t) { - return 'undefined' != typeof t.getElementsByTagName - ? t.getElementsByTagName(e) - : d.qsa - ? t.querySelectorAll(e) - : void 0; - } - : function (e, t) { - var n, - r = [], - i = 0, - o = t.getElementsByTagName(e); - if ('*' === e) { - while ((n = o[i++])) 1 === n.nodeType && r.push(n); - return r; - } - return o; - }), - (b.find.CLASS = - d.getElementsByClassName && - function (e, t) { - if ('undefined' != typeof t.getElementsByClassName && E) - return t.getElementsByClassName(e); - }), - (s = []), - (y = []), - (d.qsa = K.test(C.querySelectorAll)) && - (ce(function (e) { - var t; - (a.appendChild(e).innerHTML = - ""), - e.querySelectorAll("[msallowcapture^='']").length && - y.push('[*^$]=' + M + '*(?:\'\'|"")'), - e.querySelectorAll('[selected]').length || - y.push('\\[' + M + '*(?:value|' + R + ')'), - e.querySelectorAll('[id~=' + S + '-]').length || y.push('~='), - (t = C.createElement('input')).setAttribute('name', ''), - e.appendChild(t), - e.querySelectorAll("[name='']").length || - y.push('\\[' + M + '*name' + M + '*=' + M + '*(?:\'\'|"")'), - e.querySelectorAll(':checked').length || y.push(':checked'), - e.querySelectorAll('a#' + S + '+*').length || - y.push('.#.+[+~]'), - e.querySelectorAll('\\\f'), - y.push('[\\r\\n\\f]'); - }), - ce(function (e) { - e.innerHTML = - ""; - var t = C.createElement('input'); - t.setAttribute('type', 'hidden'), - e.appendChild(t).setAttribute('name', 'D'), - e.querySelectorAll('[name=d]').length && - y.push('name' + M + '*[*^$|!~]?='), - 2 !== e.querySelectorAll(':enabled').length && - y.push(':enabled', ':disabled'), - (a.appendChild(e).disabled = !0), - 2 !== e.querySelectorAll(':disabled').length && - y.push(':enabled', ':disabled'), - e.querySelectorAll('*,:x'), - y.push(',.*:'); - })), - (d.matchesSelector = K.test( - (c = - a.matches || - a.webkitMatchesSelector || - a.mozMatchesSelector || - a.oMatchesSelector || - a.msMatchesSelector), - )) && - ce(function (e) { - (d.disconnectedMatch = c.call(e, '*')), - c.call(e, "[s!='']:x"), - s.push('!=', F); - }), - d.cssHas || y.push(':has'), - (y = y.length && new RegExp(y.join('|'))), - (s = s.length && new RegExp(s.join('|'))), - (t = K.test(a.compareDocumentPosition)), - (v = - t || K.test(a.contains) - ? function (e, t) { - var n = (9 === e.nodeType && e.documentElement) || e, - r = t && t.parentNode; - return ( - e === r || - !( - !r || - 1 !== r.nodeType || - !(n.contains - ? n.contains(r) - : e.compareDocumentPosition && - 16 & e.compareDocumentPosition(r)) - ) - ); - } - : function (e, t) { - if (t) while ((t = t.parentNode)) if (t === e) return !0; - return !1; - }), - (j = t - ? function (e, t) { - if (e === t) return (l = !0), 0; - var n = - !e.compareDocumentPosition - !t.compareDocumentPosition; - return ( - n || - (1 & - (n = - (e.ownerDocument || e) == (t.ownerDocument || t) - ? e.compareDocumentPosition(t) - : 1) || - (!d.sortDetached && t.compareDocumentPosition(e) === n) - ? e == C || (e.ownerDocument == p && v(p, e)) - ? -1 - : t == C || (t.ownerDocument == p && v(p, t)) - ? 1 - : u - ? P(u, e) - P(u, t) - : 0 - : 4 & n - ? -1 - : 1) - ); - } - : function (e, t) { - if (e === t) return (l = !0), 0; - var n, - r = 0, - i = e.parentNode, - o = t.parentNode, - a = [e], - s = [t]; - if (!i || !o) - return e == C - ? -1 - : t == C - ? 1 - : i - ? -1 - : o - ? 1 - : u - ? P(u, e) - P(u, t) - : 0; - if (i === o) return pe(e, t); - n = e; - while ((n = n.parentNode)) a.unshift(n); - n = t; - while ((n = n.parentNode)) s.unshift(n); - while (a[r] === s[r]) r++; - return r - ? pe(a[r], s[r]) - : a[r] == p - ? -1 - : s[r] == p - ? 1 - : 0; - })), - C - ); - }), - (se.matches = function (e, t) { - return se(e, null, null, t); - }), - (se.matchesSelector = function (e, t) { - if ( - (T(e), - d.matchesSelector && - E && - !N[t + ' '] && - (!s || !s.test(t)) && - (!y || !y.test(t))) - ) - try { - var n = c.call(e, t); - if ( - n || - d.disconnectedMatch || - (e.document && 11 !== e.document.nodeType) - ) - return n; - } catch (e) { - N(t, !0); - } - return 0 < se(t, C, null, [e]).length; - }), - (se.contains = function (e, t) { - return (e.ownerDocument || e) != C && T(e), v(e, t); - }), - (se.attr = function (e, t) { - (e.ownerDocument || e) != C && T(e); - var n = b.attrHandle[t.toLowerCase()], - r = n && D.call(b.attrHandle, t.toLowerCase()) ? n(e, t, !E) : void 0; - return void 0 !== r - ? r - : d.attributes || !E - ? e.getAttribute(t) - : (r = e.getAttributeNode(t)) && r.specified - ? r.value - : null; - }), - (se.escape = function (e) { - return (e + '').replace(re, ie); - }), - (se.error = function (e) { - throw new Error('Syntax error, unrecognized expression: ' + e); - }), - (se.uniqueSort = function (e) { - var t, - n = [], - r = 0, - i = 0; - if ( - ((l = !d.detectDuplicates), - (u = !d.sortStable && e.slice(0)), - e.sort(j), - l) - ) { - while ((t = e[i++])) t === e[i] && (r = n.push(i)); - while (r--) e.splice(n[r], 1); - } - return (u = null), e; - }), - (o = se.getText = - function (e) { - var t, - n = '', - r = 0, - i = e.nodeType; - if (i) { - if (1 === i || 9 === i || 11 === i) { - if ('string' == typeof e.textContent) return e.textContent; - for (e = e.firstChild; e; e = e.nextSibling) n += o(e); - } else if (3 === i || 4 === i) return e.nodeValue; - } else while ((t = e[r++])) n += o(t); - return n; - }), - ((b = se.selectors = - { - cacheLength: 50, - createPseudo: le, - match: G, - attrHandle: {}, - find: {}, - relative: { - '>': { dir: 'parentNode', first: !0 }, - ' ': { dir: 'parentNode' }, - '+': { dir: 'previousSibling', first: !0 }, - '~': { dir: 'previousSibling' }, - }, - preFilter: { - ATTR: function (e) { - return ( - (e[1] = e[1].replace(te, ne)), - (e[3] = (e[3] || e[4] || e[5] || '').replace(te, ne)), - '~=' === e[2] && (e[3] = ' ' + e[3] + ' '), - e.slice(0, 4) - ); - }, - CHILD: function (e) { - return ( - (e[1] = e[1].toLowerCase()), - 'nth' === e[1].slice(0, 3) - ? (e[3] || se.error(e[0]), - (e[4] = +(e[4] - ? e[5] + (e[6] || 1) - : 2 * ('even' === e[3] || 'odd' === e[3]))), - (e[5] = +(e[7] + e[8] || 'odd' === e[3]))) - : e[3] && se.error(e[0]), - e - ); - }, - PSEUDO: function (e) { - var t, - n = !e[6] && e[2]; - return G.CHILD.test(e[0]) - ? null - : (e[3] - ? (e[2] = e[4] || e[5] || '') - : n && - X.test(n) && - (t = h(n, !0)) && - (t = n.indexOf(')', n.length - t) - n.length) && - ((e[0] = e[0].slice(0, t)), (e[2] = n.slice(0, t))), - e.slice(0, 3)); - }, - }, - filter: { - TAG: function (e) { - var t = e.replace(te, ne).toLowerCase(); - return '*' === e - ? function () { - return !0; - } - : function (e) { - return e.nodeName && e.nodeName.toLowerCase() === t; - }; - }, - CLASS: function (e) { - var t = m[e + ' ']; - return ( - t || - ((t = new RegExp('(^|' + M + ')' + e + '(' + M + '|$)')) && - m(e, function (e) { - return t.test( - ('string' == typeof e.className && e.className) || - ('undefined' != typeof e.getAttribute && - e.getAttribute('class')) || - '', - ); - })) - ); - }, - ATTR: function (n, r, i) { - return function (e) { - var t = se.attr(e, n); - return null == t - ? '!=' === r - : !r || - ((t += ''), - '=' === r - ? t === i - : '!=' === r - ? t !== i - : '^=' === r - ? i && 0 === t.indexOf(i) - : '*=' === r - ? i && -1 < t.indexOf(i) - : '$=' === r - ? i && t.slice(-i.length) === i - : '~=' === r - ? -1 < - (' ' + t.replace($, ' ') + ' ').indexOf(i) - : '|=' === r && - (t === i || - t.slice(0, i.length + 1) === i + '-')); - }; - }, - CHILD: function (h, e, t, g, y) { - var v = 'nth' !== h.slice(0, 3), - m = 'last' !== h.slice(-4), - x = 'of-type' === e; - return 1 === g && 0 === y - ? function (e) { - return !!e.parentNode; - } - : function (e, t, n) { - var r, - i, - o, - a, - s, - u, - l = v !== m ? 'nextSibling' : 'previousSibling', - c = e.parentNode, - f = x && e.nodeName.toLowerCase(), - p = !n && !x, - d = !1; - if (c) { - if (v) { - while (l) { - a = e; - while ((a = a[l])) - if ( - x - ? a.nodeName.toLowerCase() === f - : 1 === a.nodeType - ) - return !1; - u = l = 'only' === h && !u && 'nextSibling'; - } - return !0; - } - if (((u = [m ? c.firstChild : c.lastChild]), m && p)) { - (d = - (s = - (r = - (i = - (o = (a = c)[S] || (a[S] = {}))[a.uniqueID] || - (o[a.uniqueID] = {}))[h] || [])[0] === k && - r[1]) && r[2]), - (a = s && c.childNodes[s]); - while ((a = (++s && a && a[l]) || (d = s = 0) || u.pop())) - if (1 === a.nodeType && ++d && a === e) { - i[h] = [k, s, d]; - break; - } - } else if ( - (p && - (d = s = - (r = - (i = - (o = (a = e)[S] || (a[S] = {}))[a.uniqueID] || - (o[a.uniqueID] = {}))[h] || [])[0] === k && r[1]), - !1 === d) - ) - while ((a = (++s && a && a[l]) || (d = s = 0) || u.pop())) - if ( - (x - ? a.nodeName.toLowerCase() === f - : 1 === a.nodeType) && - ++d && - (p && - ((i = - (o = a[S] || (a[S] = {}))[a.uniqueID] || - (o[a.uniqueID] = {}))[h] = [k, d]), - a === e) - ) - break; - return (d -= y) === g || (d % g == 0 && 0 <= d / g); - } - }; - }, - PSEUDO: function (e, o) { - var t, - a = - b.pseudos[e] || - b.setFilters[e.toLowerCase()] || - se.error('unsupported pseudo: ' + e); - return a[S] - ? a(o) - : 1 < a.length - ? ((t = [e, e, '', o]), - b.setFilters.hasOwnProperty(e.toLowerCase()) - ? le(function (e, t) { - var n, - r = a(e, o), - i = r.length; - while (i--) e[(n = P(e, r[i]))] = !(t[n] = r[i]); - }) - : function (e) { - return a(e, 0, t); - }) - : a; - }, - }, - pseudos: { - not: le(function (e) { - var r = [], - i = [], - s = f(e.replace(B, '$1')); - return s[S] - ? le(function (e, t, n, r) { - var i, - o = s(e, null, r, []), - a = e.length; - while (a--) (i = o[a]) && (e[a] = !(t[a] = i)); - }) - : function (e, t, n) { - return (r[0] = e), s(r, null, n, i), (r[0] = null), !i.pop(); - }; - }), - has: le(function (t) { - return function (e) { - return 0 < se(t, e).length; - }; - }), - contains: le(function (t) { - return ( - (t = t.replace(te, ne)), - function (e) { - return -1 < (e.textContent || o(e)).indexOf(t); - } - ); - }), - lang: le(function (n) { - return ( - V.test(n || '') || se.error('unsupported lang: ' + n), - (n = n.replace(te, ne).toLowerCase()), - function (e) { - var t; - do { - if ( - (t = E - ? e.lang - : e.getAttribute('xml:lang') || e.getAttribute('lang')) - ) - return ( - (t = t.toLowerCase()) === n || 0 === t.indexOf(n + '-') - ); - } while ((e = e.parentNode) && 1 === e.nodeType); - return !1; - } - ); - }), - target: function (e) { - var t = n.location && n.location.hash; - return t && t.slice(1) === e.id; - }, - root: function (e) { - return e === a; - }, - focus: function (e) { - return ( - e === C.activeElement && - (!C.hasFocus || C.hasFocus()) && - !!(e.type || e.href || ~e.tabIndex) - ); - }, - enabled: ge(!1), - disabled: ge(!0), - checked: function (e) { - var t = e.nodeName.toLowerCase(); - return ( - ('input' === t && !!e.checked) || ('option' === t && !!e.selected) - ); - }, - selected: function (e) { - return ( - e.parentNode && e.parentNode.selectedIndex, !0 === e.selected - ); - }, - empty: function (e) { - for (e = e.firstChild; e; e = e.nextSibling) - if (e.nodeType < 6) return !1; - return !0; - }, - parent: function (e) { - return !b.pseudos.empty(e); - }, - header: function (e) { - return J.test(e.nodeName); - }, - input: function (e) { - return Q.test(e.nodeName); - }, - button: function (e) { - var t = e.nodeName.toLowerCase(); - return ('input' === t && 'button' === e.type) || 'button' === t; - }, - text: function (e) { - var t; - return ( - 'input' === e.nodeName.toLowerCase() && - 'text' === e.type && - (null == (t = e.getAttribute('type')) || - 'text' === t.toLowerCase()) - ); - }, - first: ye(function () { - return [0]; - }), - last: ye(function (e, t) { - return [t - 1]; - }), - eq: ye(function (e, t, n) { - return [n < 0 ? n + t : n]; - }), - even: ye(function (e, t) { - for (var n = 0; n < t; n += 2) e.push(n); - return e; - }), - odd: ye(function (e, t) { - for (var n = 1; n < t; n += 2) e.push(n); - return e; - }), - lt: ye(function (e, t, n) { - for (var r = n < 0 ? n + t : t < n ? t : n; 0 <= --r; ) e.push(r); - return e; - }), - gt: ye(function (e, t, n) { - for (var r = n < 0 ? n + t : n; ++r < t; ) e.push(r); - return e; - }), - }, - }).pseudos.nth = b.pseudos.eq), - { radio: !0, checkbox: !0, file: !0, password: !0, image: !0 })) - b.pseudos[e] = de(e); - for (e in { submit: !0, reset: !0 }) b.pseudos[e] = he(e); - function me() {} - function xe(e) { - for (var t = 0, n = e.length, r = ''; t < n; t++) r += e[t].value; - return r; - } - function be(s, e, t) { - var u = e.dir, - l = e.next, - c = l || u, - f = t && 'parentNode' === c, - p = r++; - return e.first - ? function (e, t, n) { - while ((e = e[u])) if (1 === e.nodeType || f) return s(e, t, n); - return !1; - } - : function (e, t, n) { - var r, - i, - o, - a = [k, p]; - if (n) { - while ((e = e[u])) - if ((1 === e.nodeType || f) && s(e, t, n)) return !0; - } else - while ((e = e[u])) - if (1 === e.nodeType || f) - if ( - ((i = - (o = e[S] || (e[S] = {}))[e.uniqueID] || - (o[e.uniqueID] = {})), - l && l === e.nodeName.toLowerCase()) - ) - e = e[u] || e; - else { - if ((r = i[c]) && r[0] === k && r[1] === p) - return (a[2] = r[2]); - if (((i[c] = a)[2] = s(e, t, n))) return !0; - } - return !1; - }; - } - function we(i) { - return 1 < i.length - ? function (e, t, n) { - var r = i.length; - while (r--) if (!i[r](e, t, n)) return !1; - return !0; - } - : i[0]; - } - function Te(e, t, n, r, i) { - for (var o, a = [], s = 0, u = e.length, l = null != t; s < u; s++) - (o = e[s]) && ((n && !n(o, r, i)) || (a.push(o), l && t.push(s))); - return a; - } - function Ce(d, h, g, y, v, e) { - return ( - y && !y[S] && (y = Ce(y)), - v && !v[S] && (v = Ce(v, e)), - le(function (e, t, n, r) { - var i, - o, - a, - s = [], - u = [], - l = t.length, - c = - e || - (function (e, t, n) { - for (var r = 0, i = t.length; r < i; r++) se(e, t[r], n); - return n; - })(h || '*', n.nodeType ? [n] : n, []), - f = !d || (!e && h) ? c : Te(c, s, d, n, r), - p = g ? (v || (e ? d : l || y) ? [] : t) : f; - if ((g && g(f, p, n, r), y)) { - (i = Te(p, u)), y(i, [], n, r), (o = i.length); - while (o--) (a = i[o]) && (p[u[o]] = !(f[u[o]] = a)); - } - if (e) { - if (v || d) { - if (v) { - (i = []), (o = p.length); - while (o--) (a = p[o]) && i.push((f[o] = a)); - v(null, (p = []), i, r); - } - o = p.length; - while (o--) - (a = p[o]) && - -1 < (i = v ? P(e, a) : s[o]) && - (e[i] = !(t[i] = a)); - } - } else - (p = Te(p === t ? p.splice(l, p.length) : p)), - v ? v(null, t, p, r) : H.apply(t, p); - }) - ); - } - function Ee(e) { - for ( - var i, - t, - n, - r = e.length, - o = b.relative[e[0].type], - a = o || b.relative[' '], - s = o ? 1 : 0, - u = be( - function (e) { - return e === i; - }, - a, - !0, - ), - l = be( - function (e) { - return -1 < P(i, e); - }, - a, - !0, - ), - c = [ - function (e, t, n) { - var r = - (!o && (n || t !== w)) || - ((i = t).nodeType ? u(e, t, n) : l(e, t, n)); - return (i = null), r; - }, - ]; - s < r; - s++ - ) - if ((t = b.relative[e[s].type])) c = [be(we(c), t)]; - else { - if ((t = b.filter[e[s].type].apply(null, e[s].matches))[S]) { - for (n = ++s; n < r; n++) if (b.relative[e[n].type]) break; - return Ce( - 1 < s && we(c), - 1 < s && - xe( - e - .slice(0, s - 1) - .concat({ value: ' ' === e[s - 2].type ? '*' : '' }), - ).replace(B, '$1'), - t, - s < n && Ee(e.slice(s, n)), - n < r && Ee((e = e.slice(n))), - n < r && xe(e), - ); - } - c.push(t); - } - return we(c); - } - return ( - (me.prototype = b.filters = b.pseudos), - (b.setFilters = new me()), - (h = se.tokenize = - function (e, t) { - var n, - r, - i, - o, - a, - s, - u, - l = x[e + ' ']; - if (l) return t ? 0 : l.slice(0); - (a = e), (s = []), (u = b.preFilter); - while (a) { - for (o in ((n && !(r = _.exec(a))) || - (r && (a = a.slice(r[0].length) || a), s.push((i = []))), - (n = !1), - (r = z.exec(a)) && - ((n = r.shift()), - i.push({ value: n, type: r[0].replace(B, ' ') }), - (a = a.slice(n.length))), - b.filter)) - !(r = G[o].exec(a)) || - (u[o] && !(r = u[o](r))) || - ((n = r.shift()), - i.push({ value: n, type: o, matches: r }), - (a = a.slice(n.length))); - if (!n) break; - } - return t ? a.length : a ? se.error(e) : x(e, s).slice(0); - }), - (f = se.compile = - function (e, t) { - var n, - y, - v, - m, - x, - r, - i = [], - o = [], - a = A[e + ' ']; - if (!a) { - t || (t = h(e)), (n = t.length); - while (n--) (a = Ee(t[n]))[S] ? i.push(a) : o.push(a); - (a = A( - e, - ((y = o), - (m = 0 < (v = i).length), - (x = 0 < y.length), - (r = function (e, t, n, r, i) { - var o, - a, - s, - u = 0, - l = '0', - c = e && [], - f = [], - p = w, - d = e || (x && b.find.TAG('*', i)), - h = (k += null == p ? 1 : Math.random() || 0.1), - g = d.length; - for ( - i && (w = t == C || t || i); - l !== g && null != (o = d[l]); - l++ - ) { - if (x && o) { - (a = 0), t || o.ownerDocument == C || (T(o), (n = !E)); - while ((s = y[a++])) - if (s(o, t || C, n)) { - r.push(o); - break; - } - i && (k = h); - } - m && ((o = !s && o) && u--, e && c.push(o)); - } - if (((u += l), m && l !== u)) { - a = 0; - while ((s = v[a++])) s(c, f, t, n); - if (e) { - if (0 < u) while (l--) c[l] || f[l] || (f[l] = q.call(r)); - f = Te(f); - } - H.apply(r, f), - i && - !e && - 0 < f.length && - 1 < u + v.length && - se.uniqueSort(r); - } - return i && ((k = h), (w = p)), c; - }), - m ? le(r) : r), - )).selector = e; - } - return a; - }), - (g = se.select = - function (e, t, n, r) { - var i, - o, - a, - s, - u, - l = 'function' == typeof e && e, - c = !r && h((e = l.selector || e)); - if (((n = n || []), 1 === c.length)) { - if ( - 2 < (o = c[0] = c[0].slice(0)).length && - 'ID' === (a = o[0]).type && - 9 === t.nodeType && - E && - b.relative[o[1].type] - ) { - if (!(t = (b.find.ID(a.matches[0].replace(te, ne), t) || [])[0])) - return n; - l && (t = t.parentNode), (e = e.slice(o.shift().value.length)); - } - i = G.needsContext.test(e) ? 0 : o.length; - while (i--) { - if (((a = o[i]), b.relative[(s = a.type)])) break; - if ( - (u = b.find[s]) && - (r = u( - a.matches[0].replace(te, ne), - (ee.test(o[0].type) && ve(t.parentNode)) || t, - )) - ) { - if ((o.splice(i, 1), !(e = r.length && xe(o)))) - return H.apply(n, r), n; - break; - } - } - } - return ( - (l || f(e, c))( - r, - t, - !E, - n, - !t || (ee.test(e) && ve(t.parentNode)) || t, - ), - n - ); - }), - (d.sortStable = S.split('').sort(j).join('') === S), - (d.detectDuplicates = !!l), - T(), - (d.sortDetached = ce(function (e) { - return 1 & e.compareDocumentPosition(C.createElement('fieldset')); - })), - ce(function (e) { - return ( - (e.innerHTML = ""), - '#' === e.firstChild.getAttribute('href') - ); - }) || - fe('type|href|height|width', function (e, t, n) { - if (!n) return e.getAttribute(t, 'type' === t.toLowerCase() ? 1 : 2); - }), - (d.attributes && - ce(function (e) { - return ( - (e.innerHTML = ''), - e.firstChild.setAttribute('value', ''), - '' === e.firstChild.getAttribute('value') - ); - })) || - fe('value', function (e, t, n) { - if (!n && 'input' === e.nodeName.toLowerCase()) return e.defaultValue; - }), - ce(function (e) { - return null == e.getAttribute('disabled'); - }) || - fe(R, function (e, t, n) { - var r; - if (!n) - return !0 === e[t] - ? t.toLowerCase() - : (r = e.getAttributeNode(t)) && r.specified - ? r.value - : null; - }), - se - ); - })(C); - (S.find = d), - (S.expr = d.selectors), - (S.expr[':'] = S.expr.pseudos), - (S.uniqueSort = S.unique = d.uniqueSort), - (S.text = d.getText), - (S.isXMLDoc = d.isXML), - (S.contains = d.contains), - (S.escapeSelector = d.escape); - var h = function (e, t, n) { - var r = [], - i = void 0 !== n; - while ((e = e[t]) && 9 !== e.nodeType) - if (1 === e.nodeType) { - if (i && S(e).is(n)) break; - r.push(e); - } - return r; - }, - T = function (e, t) { - for (var n = []; e; e = e.nextSibling) - 1 === e.nodeType && e !== t && n.push(e); - return n; - }, - k = S.expr.match.needsContext; - function A(e, t) { - return e.nodeName && e.nodeName.toLowerCase() === t.toLowerCase(); - } - var N = /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i; - function j(e, n, r) { - return m(n) - ? S.grep(e, function (e, t) { - return !!n.call(e, t, e) !== r; - }) - : n.nodeType - ? S.grep(e, function (e) { - return (e === n) !== r; - }) - : 'string' != typeof n - ? S.grep(e, function (e) { - return -1 < i.call(n, e) !== r; - }) - : S.filter(n, e, r); - } - (S.filter = function (e, t, n) { - var r = t[0]; - return ( - n && (e = ':not(' + e + ')'), - 1 === t.length && 1 === r.nodeType - ? S.find.matchesSelector(r, e) - ? [r] - : [] - : S.find.matches( - e, - S.grep(t, function (e) { - return 1 === e.nodeType; - }), - ) - ); - }), - S.fn.extend({ - find: function (e) { - var t, - n, - r = this.length, - i = this; - if ('string' != typeof e) - return this.pushStack( - S(e).filter(function () { - for (t = 0; t < r; t++) if (S.contains(i[t], this)) return !0; - }), - ); - for (n = this.pushStack([]), t = 0; t < r; t++) S.find(e, i[t], n); - return 1 < r ? S.uniqueSort(n) : n; - }, - filter: function (e) { - return this.pushStack(j(this, e || [], !1)); - }, - not: function (e) { - return this.pushStack(j(this, e || [], !0)); - }, - is: function (e) { - return !!j(this, 'string' == typeof e && k.test(e) ? S(e) : e || [], !1) - .length; - }, - }); - var D, - q = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/; - ((S.fn.init = function (e, t, n) { - var r, i; - if (!e) return this; - if (((n = n || D), 'string' == typeof e)) { - if ( - !(r = - '<' === e[0] && '>' === e[e.length - 1] && 3 <= e.length - ? [null, e, null] - : q.exec(e)) || - (!r[1] && t) - ) - return !t || t.jquery ? (t || n).find(e) : this.constructor(t).find(e); - if (r[1]) { - if ( - ((t = t instanceof S ? t[0] : t), - S.merge( - this, - S.parseHTML(r[1], t && t.nodeType ? t.ownerDocument || t : E, !0), - ), - N.test(r[1]) && S.isPlainObject(t)) - ) - for (r in t) m(this[r]) ? this[r](t[r]) : this.attr(r, t[r]); - return this; - } - return ( - (i = E.getElementById(r[2])) && ((this[0] = i), (this.length = 1)), this - ); - } - return e.nodeType - ? ((this[0] = e), (this.length = 1), this) - : m(e) - ? void 0 !== n.ready - ? n.ready(e) - : e(S) - : S.makeArray(e, this); - }).prototype = S.fn), - (D = S(E)); - var L = /^(?:parents|prev(?:Until|All))/, - H = { children: !0, contents: !0, next: !0, prev: !0 }; - function O(e, t) { - while ((e = e[t]) && 1 !== e.nodeType); - return e; - } - S.fn.extend({ - has: function (e) { - var t = S(e, this), - n = t.length; - return this.filter(function () { - for (var e = 0; e < n; e++) if (S.contains(this, t[e])) return !0; - }); - }, - closest: function (e, t) { - var n, - r = 0, - i = this.length, - o = [], - a = 'string' != typeof e && S(e); - if (!k.test(e)) - for (; r < i; r++) - for (n = this[r]; n && n !== t; n = n.parentNode) - if ( - n.nodeType < 11 && - (a - ? -1 < a.index(n) - : 1 === n.nodeType && S.find.matchesSelector(n, e)) - ) { - o.push(n); - break; - } - return this.pushStack(1 < o.length ? S.uniqueSort(o) : o); - }, - index: function (e) { - return e - ? 'string' == typeof e - ? i.call(S(e), this[0]) - : i.call(this, e.jquery ? e[0] : e) - : this[0] && this[0].parentNode - ? this.first().prevAll().length - : -1; - }, - add: function (e, t) { - return this.pushStack(S.uniqueSort(S.merge(this.get(), S(e, t)))); - }, - addBack: function (e) { - return this.add(null == e ? this.prevObject : this.prevObject.filter(e)); - }, - }), - S.each( - { - parent: function (e) { - var t = e.parentNode; - return t && 11 !== t.nodeType ? t : null; - }, - parents: function (e) { - return h(e, 'parentNode'); - }, - parentsUntil: function (e, t, n) { - return h(e, 'parentNode', n); - }, - next: function (e) { - return O(e, 'nextSibling'); - }, - prev: function (e) { - return O(e, 'previousSibling'); - }, - nextAll: function (e) { - return h(e, 'nextSibling'); - }, - prevAll: function (e) { - return h(e, 'previousSibling'); - }, - nextUntil: function (e, t, n) { - return h(e, 'nextSibling', n); - }, - prevUntil: function (e, t, n) { - return h(e, 'previousSibling', n); - }, - siblings: function (e) { - return T((e.parentNode || {}).firstChild, e); - }, - children: function (e) { - return T(e.firstChild); - }, - contents: function (e) { - return null != e.contentDocument && r(e.contentDocument) - ? e.contentDocument - : (A(e, 'template') && (e = e.content || e), - S.merge([], e.childNodes)); - }, - }, - function (r, i) { - S.fn[r] = function (e, t) { - var n = S.map(this, i, e); - return ( - 'Until' !== r.slice(-5) && (t = e), - t && 'string' == typeof t && (n = S.filter(t, n)), - 1 < this.length && - (H[r] || S.uniqueSort(n), L.test(r) && n.reverse()), - this.pushStack(n) - ); - }; - }, - ); - var P = /[^\x20\t\r\n\f]+/g; - function R(e) { - return e; - } - function M(e) { - throw e; - } - function I(e, t, n, r) { - var i; - try { - e && m((i = e.promise)) - ? i.call(e).done(t).fail(n) - : e && m((i = e.then)) - ? i.call(e, t, n) - : t.apply(void 0, [e].slice(r)); - } catch (e) { - n.apply(void 0, [e]); - } - } - (S.Callbacks = function (r) { - var e, n; - r = - 'string' == typeof r - ? ((e = r), - (n = {}), - S.each(e.match(P) || [], function (e, t) { - n[t] = !0; - }), - n) - : S.extend({}, r); - var i, - t, - o, - a, - s = [], - u = [], - l = -1, - c = function () { - for (a = a || r.once, o = i = !0; u.length; l = -1) { - t = u.shift(); - while (++l < s.length) - !1 === s[l].apply(t[0], t[1]) && - r.stopOnFalse && - ((l = s.length), (t = !1)); - } - r.memory || (t = !1), (i = !1), a && (s = t ? [] : ''); - }, - f = { - add: function () { - return ( - s && - (t && !i && ((l = s.length - 1), u.push(t)), - (function n(e) { - S.each(e, function (e, t) { - m(t) - ? (r.unique && f.has(t)) || s.push(t) - : t && t.length && 'string' !== w(t) && n(t); - }); - })(arguments), - t && !i && c()), - this - ); - }, - remove: function () { - return ( - S.each(arguments, function (e, t) { - var n; - while (-1 < (n = S.inArray(t, s, n))) - s.splice(n, 1), n <= l && l--; - }), - this - ); - }, - has: function (e) { - return e ? -1 < S.inArray(e, s) : 0 < s.length; - }, - empty: function () { - return s && (s = []), this; - }, - disable: function () { - return (a = u = []), (s = t = ''), this; - }, - disabled: function () { - return !s; - }, - lock: function () { - return (a = u = []), t || i || (s = t = ''), this; - }, - locked: function () { - return !!a; - }, - fireWith: function (e, t) { - return ( - a || - ((t = [e, (t = t || []).slice ? t.slice() : t]), - u.push(t), - i || c()), - this - ); - }, - fire: function () { - return f.fireWith(this, arguments), this; - }, - fired: function () { - return !!o; - }, - }; - return f; - }), - S.extend({ - Deferred: function (e) { - var o = [ - [ - 'notify', - 'progress', - S.Callbacks('memory'), - S.Callbacks('memory'), - 2, - ], - [ - 'resolve', - 'done', - S.Callbacks('once memory'), - S.Callbacks('once memory'), - 0, - 'resolved', - ], - [ - 'reject', - 'fail', - S.Callbacks('once memory'), - S.Callbacks('once memory'), - 1, - 'rejected', - ], - ], - i = 'pending', - a = { - state: function () { - return i; - }, - always: function () { - return s.done(arguments).fail(arguments), this; - }, - 'catch': function (e) { - return a.then(null, e); - }, - pipe: function () { - var i = arguments; - return S.Deferred(function (r) { - S.each(o, function (e, t) { - var n = m(i[t[4]]) && i[t[4]]; - s[t[1]](function () { - var e = n && n.apply(this, arguments); - e && m(e.promise) - ? e - .promise() - .progress(r.notify) - .done(r.resolve) - .fail(r.reject) - : r[t[0] + 'With'](this, n ? [e] : arguments); - }); - }), - (i = null); - }).promise(); - }, - then: function (t, n, r) { - var u = 0; - function l(i, o, a, s) { - return function () { - var n = this, - r = arguments, - e = function () { - var e, t; - if (!(i < u)) { - if ((e = a.apply(n, r)) === o.promise()) - throw new TypeError('Thenable self-resolution'); - (t = - e && - ('object' == typeof e || 'function' == typeof e) && - e.then), - m(t) - ? s - ? t.call(e, l(u, o, R, s), l(u, o, M, s)) - : (u++, - t.call( - e, - l(u, o, R, s), - l(u, o, M, s), - l(u, o, R, o.notifyWith), - )) - : (a !== R && ((n = void 0), (r = [e])), - (s || o.resolveWith)(n, r)); - } - }, - t = s - ? e - : function () { - try { - e(); - } catch (e) { - S.Deferred.exceptionHook && - S.Deferred.exceptionHook(e, t.stackTrace), - u <= i + 1 && - (a !== M && ((n = void 0), (r = [e])), - o.rejectWith(n, r)); - } - }; - i - ? t() - : (S.Deferred.getStackHook && - (t.stackTrace = S.Deferred.getStackHook()), - C.setTimeout(t)); - }; - } - return S.Deferred(function (e) { - o[0][3].add(l(0, e, m(r) ? r : R, e.notifyWith)), - o[1][3].add(l(0, e, m(t) ? t : R)), - o[2][3].add(l(0, e, m(n) ? n : M)); - }).promise(); - }, - promise: function (e) { - return null != e ? S.extend(e, a) : a; - }, - }, - s = {}; - return ( - S.each(o, function (e, t) { - var n = t[2], - r = t[5]; - (a[t[1]] = n.add), - r && - n.add( - function () { - i = r; - }, - o[3 - e][2].disable, - o[3 - e][3].disable, - o[0][2].lock, - o[0][3].lock, - ), - n.add(t[3].fire), - (s[t[0]] = function () { - return ( - s[t[0] + 'With'](this === s ? void 0 : this, arguments), this - ); - }), - (s[t[0] + 'With'] = n.fireWith); - }), - a.promise(s), - e && e.call(s, s), - s - ); - }, - when: function (e) { - var n = arguments.length, - t = n, - r = Array(t), - i = s.call(arguments), - o = S.Deferred(), - a = function (t) { - return function (e) { - (r[t] = this), - (i[t] = 1 < arguments.length ? s.call(arguments) : e), - --n || o.resolveWith(r, i); - }; - }; - if ( - n <= 1 && - (I(e, o.done(a(t)).resolve, o.reject, !n), - 'pending' === o.state() || m(i[t] && i[t].then)) - ) - return o.then(); - while (t--) I(i[t], a(t), o.reject); - return o.promise(); - }, - }); - var W = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/; - (S.Deferred.exceptionHook = function (e, t) { - C.console && - C.console.warn && - e && - W.test(e.name) && - C.console.warn('jQuery.Deferred exception: ' + e.message, e.stack, t); - }), - (S.readyException = function (e) { - C.setTimeout(function () { - throw e; - }); - }); - var F = S.Deferred(); - function $() { - E.removeEventListener('DOMContentLoaded', $), - C.removeEventListener('load', $), - S.ready(); - } - (S.fn.ready = function (e) { - return ( - F.then(e)['catch'](function (e) { - S.readyException(e); - }), - this - ); - }), - S.extend({ - isReady: !1, - readyWait: 1, - ready: function (e) { - (!0 === e ? --S.readyWait : S.isReady) || - ((S.isReady = !0) !== e && 0 < --S.readyWait) || - F.resolveWith(E, [S]); - }, - }), - (S.ready.then = F.then), - 'complete' === E.readyState || - ('loading' !== E.readyState && !E.documentElement.doScroll) - ? C.setTimeout(S.ready) - : (E.addEventListener('DOMContentLoaded', $), - C.addEventListener('load', $)); - var B = function (e, t, n, r, i, o, a) { - var s = 0, - u = e.length, - l = null == n; - if ('object' === w(n)) - for (s in ((i = !0), n)) B(e, t, s, n[s], !0, o, a); - else if ( - void 0 !== r && - ((i = !0), - m(r) || (a = !0), - l && - (a - ? (t.call(e, r), (t = null)) - : ((l = t), - (t = function (e, t, n) { - return l.call(S(e), n); - }))), - t) - ) - for (; s < u; s++) t(e[s], n, a ? r : r.call(e[s], s, t(e[s], n))); - return i ? e : l ? t.call(e) : u ? t(e[0], n) : o; - }, - _ = /^-ms-/, - z = /-([a-z])/g; - function U(e, t) { - return t.toUpperCase(); - } - function X(e) { - return e.replace(_, 'ms-').replace(z, U); - } - var V = function (e) { - return 1 === e.nodeType || 9 === e.nodeType || !+e.nodeType; - }; - function G() { - this.expando = S.expando + G.uid++; - } - (G.uid = 1), - (G.prototype = { - cache: function (e) { - var t = e[this.expando]; - return ( - t || - ((t = {}), - V(e) && - (e.nodeType - ? (e[this.expando] = t) - : Object.defineProperty(e, this.expando, { - value: t, - configurable: !0, - }))), - t - ); - }, - set: function (e, t, n) { - var r, - i = this.cache(e); - if ('string' == typeof t) i[X(t)] = n; - else for (r in t) i[X(r)] = t[r]; - return i; - }, - get: function (e, t) { - return void 0 === t - ? this.cache(e) - : e[this.expando] && e[this.expando][X(t)]; - }, - access: function (e, t, n) { - return void 0 === t || (t && 'string' == typeof t && void 0 === n) - ? this.get(e, t) - : (this.set(e, t, n), void 0 !== n ? n : t); - }, - remove: function (e, t) { - var n, - r = e[this.expando]; - if (void 0 !== r) { - if (void 0 !== t) { - n = (t = Array.isArray(t) - ? t.map(X) - : (t = X(t)) in r - ? [t] - : t.match(P) || []).length; - while (n--) delete r[t[n]]; - } - (void 0 === t || S.isEmptyObject(r)) && - (e.nodeType ? (e[this.expando] = void 0) : delete e[this.expando]); - } - }, - hasData: function (e) { - var t = e[this.expando]; - return void 0 !== t && !S.isEmptyObject(t); - }, - }); - var Y = new G(), - Q = new G(), - J = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, - K = /[A-Z]/g; - function Z(e, t, n) { - var r, i; - if (void 0 === n && 1 === e.nodeType) - if ( - ((r = 'data-' + t.replace(K, '-$&').toLowerCase()), - 'string' == typeof (n = e.getAttribute(r))) - ) { - try { - n = - 'true' === (i = n) || - ('false' !== i && - ('null' === i - ? null - : i === +i + '' - ? +i - : J.test(i) - ? JSON.parse(i) - : i)); - } catch (e) {} - Q.set(e, t, n); - } else n = void 0; - return n; - } - S.extend({ - hasData: function (e) { - return Q.hasData(e) || Y.hasData(e); - }, - data: function (e, t, n) { - return Q.access(e, t, n); - }, - removeData: function (e, t) { - Q.remove(e, t); - }, - _data: function (e, t, n) { - return Y.access(e, t, n); - }, - _removeData: function (e, t) { - Y.remove(e, t); - }, - }), - S.fn.extend({ - data: function (n, e) { - var t, - r, - i, - o = this[0], - a = o && o.attributes; - if (void 0 === n) { - if ( - this.length && - ((i = Q.get(o)), 1 === o.nodeType && !Y.get(o, 'hasDataAttrs')) - ) { - t = a.length; - while (t--) - a[t] && - 0 === (r = a[t].name).indexOf('data-') && - ((r = X(r.slice(5))), Z(o, r, i[r])); - Y.set(o, 'hasDataAttrs', !0); - } - return i; - } - return 'object' == typeof n - ? this.each(function () { - Q.set(this, n); - }) - : B( - this, - function (e) { - var t; - if (o && void 0 === e) - return void 0 !== (t = Q.get(o, n)) - ? t - : void 0 !== (t = Z(o, n)) - ? t - : void 0; - this.each(function () { - Q.set(this, n, e); - }); - }, - null, - e, - 1 < arguments.length, - null, - !0, - ); - }, - removeData: function (e) { - return this.each(function () { - Q.remove(this, e); - }); - }, - }), - S.extend({ - queue: function (e, t, n) { - var r; - if (e) - return ( - (t = (t || 'fx') + 'queue'), - (r = Y.get(e, t)), - n && - (!r || Array.isArray(n) - ? (r = Y.access(e, t, S.makeArray(n))) - : r.push(n)), - r || [] - ); - }, - dequeue: function (e, t) { - t = t || 'fx'; - var n = S.queue(e, t), - r = n.length, - i = n.shift(), - o = S._queueHooks(e, t); - 'inprogress' === i && ((i = n.shift()), r--), - i && - ('fx' === t && n.unshift('inprogress'), - delete o.stop, - i.call( - e, - function () { - S.dequeue(e, t); - }, - o, - )), - !r && o && o.empty.fire(); - }, - _queueHooks: function (e, t) { - var n = t + 'queueHooks'; - return ( - Y.get(e, n) || - Y.access(e, n, { - empty: S.Callbacks('once memory').add(function () { - Y.remove(e, [t + 'queue', n]); - }), - }) - ); - }, - }), - S.fn.extend({ - queue: function (t, n) { - var e = 2; - return ( - 'string' != typeof t && ((n = t), (t = 'fx'), e--), - arguments.length < e - ? S.queue(this[0], t) - : void 0 === n - ? this - : this.each(function () { - var e = S.queue(this, t, n); - S._queueHooks(this, t), - 'fx' === t && 'inprogress' !== e[0] && S.dequeue(this, t); - }) - ); - }, - dequeue: function (e) { - return this.each(function () { - S.dequeue(this, e); - }); - }, - clearQueue: function (e) { - return this.queue(e || 'fx', []); - }, - promise: function (e, t) { - var n, - r = 1, - i = S.Deferred(), - o = this, - a = this.length, - s = function () { - --r || i.resolveWith(o, [o]); - }; - 'string' != typeof e && ((t = e), (e = void 0)), (e = e || 'fx'); - while (a--) - (n = Y.get(o[a], e + 'queueHooks')) && - n.empty && - (r++, n.empty.add(s)); - return s(), i.promise(t); - }, - }); - var ee = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source, - te = new RegExp('^(?:([+-])=|)(' + ee + ')([a-z%]*)$', 'i'), - ne = ['Top', 'Right', 'Bottom', 'Left'], - re = E.documentElement, - ie = function (e) { - return S.contains(e.ownerDocument, e); - }, - oe = { composed: !0 }; - re.getRootNode && - (ie = function (e) { - return ( - S.contains(e.ownerDocument, e) || e.getRootNode(oe) === e.ownerDocument - ); - }); - var ae = function (e, t) { - return ( - 'none' === (e = t || e).style.display || - ('' === e.style.display && ie(e) && 'none' === S.css(e, 'display')) - ); - }; - function se(e, t, n, r) { - var i, - o, - a = 20, - s = r - ? function () { - return r.cur(); - } - : function () { - return S.css(e, t, ''); - }, - u = s(), - l = (n && n[3]) || (S.cssNumber[t] ? '' : 'px'), - c = - e.nodeType && - (S.cssNumber[t] || ('px' !== l && +u)) && - te.exec(S.css(e, t)); - if (c && c[3] !== l) { - (u /= 2), (l = l || c[3]), (c = +u || 1); - while (a--) - S.style(e, t, c + l), - (1 - o) * (1 - (o = s() / u || 0.5)) <= 0 && (a = 0), - (c /= o); - (c *= 2), S.style(e, t, c + l), (n = n || []); - } - return ( - n && - ((c = +c || +u || 0), - (i = n[1] ? c + (n[1] + 1) * n[2] : +n[2]), - r && ((r.unit = l), (r.start = c), (r.end = i))), - i - ); - } - var ue = {}; - function le(e, t) { - for (var n, r, i, o, a, s, u, l = [], c = 0, f = e.length; c < f; c++) - (r = e[c]).style && - ((n = r.style.display), - t - ? ('none' === n && - ((l[c] = Y.get(r, 'display') || null), - l[c] || (r.style.display = '')), - '' === r.style.display && - ae(r) && - (l[c] = - ((u = a = o = void 0), - (a = (i = r).ownerDocument), - (s = i.nodeName), - (u = ue[s]) || - ((o = a.body.appendChild(a.createElement(s))), - (u = S.css(o, 'display')), - o.parentNode.removeChild(o), - 'none' === u && (u = 'block'), - (ue[s] = u))))) - : 'none' !== n && ((l[c] = 'none'), Y.set(r, 'display', n))); - for (c = 0; c < f; c++) null != l[c] && (e[c].style.display = l[c]); - return e; - } - S.fn.extend({ - show: function () { - return le(this, !0); - }, - hide: function () { - return le(this); - }, - toggle: function (e) { - return 'boolean' == typeof e - ? e - ? this.show() - : this.hide() - : this.each(function () { - ae(this) ? S(this).show() : S(this).hide(); - }); - }, - }); - var ce, - fe, - pe = /^(?:checkbox|radio)$/i, - de = /<([a-z][^\/\0>\x20\t\r\n\f]*)/i, - he = /^$|^module$|\/(?:java|ecma)script/i; - (ce = E.createDocumentFragment().appendChild(E.createElement('div'))), - (fe = E.createElement('input')).setAttribute('type', 'radio'), - fe.setAttribute('checked', 'checked'), - fe.setAttribute('name', 't'), - ce.appendChild(fe), - (v.checkClone = ce.cloneNode(!0).cloneNode(!0).lastChild.checked), - (ce.innerHTML = ''), - (v.noCloneChecked = !!ce.cloneNode(!0).lastChild.defaultValue), - (ce.innerHTML = ''), - (v.option = !!ce.lastChild); - var ge = { - thead: [1, '', '
'], - col: [2, '', '
'], - tr: [2, '', '
'], - td: [3, '', '
'], - _default: [0, '', ''], - }; - function ye(e, t) { - var n; - return ( - (n = - 'undefined' != typeof e.getElementsByTagName - ? e.getElementsByTagName(t || '*') - : 'undefined' != typeof e.querySelectorAll - ? e.querySelectorAll(t || '*') - : []), - void 0 === t || (t && A(e, t)) ? S.merge([e], n) : n - ); - } - function ve(e, t) { - for (var n = 0, r = e.length; n < r; n++) - Y.set(e[n], 'globalEval', !t || Y.get(t[n], 'globalEval')); - } - (ge.tbody = ge.tfoot = ge.colgroup = ge.caption = ge.thead), - (ge.th = ge.td), - v.option || - (ge.optgroup = ge.option = - [1, "']); - var me = /<|&#?\w+;/; - function xe(e, t, n, r, i) { - for ( - var o, - a, - s, - u, - l, - c, - f = t.createDocumentFragment(), - p = [], - d = 0, - h = e.length; - d < h; - d++ - ) - if ((o = e[d]) || 0 === o) - if ('object' === w(o)) S.merge(p, o.nodeType ? [o] : o); - else if (me.test(o)) { - (a = a || f.appendChild(t.createElement('div'))), - (s = (de.exec(o) || ['', ''])[1].toLowerCase()), - (u = ge[s] || ge._default), - (a.innerHTML = u[1] + S.htmlPrefilter(o) + u[2]), - (c = u[0]); - while (c--) a = a.lastChild; - S.merge(p, a.childNodes), ((a = f.firstChild).textContent = ''); - } else p.push(t.createTextNode(o)); - (f.textContent = ''), (d = 0); - while ((o = p[d++])) - if (r && -1 < S.inArray(o, r)) i && i.push(o); - else if ( - ((l = ie(o)), (a = ye(f.appendChild(o), 'script')), l && ve(a), n) - ) { - c = 0; - while ((o = a[c++])) he.test(o.type || '') && n.push(o); - } - return f; - } - var be = /^([^.]*)(?:\.(.+)|)/; - function we() { - return !0; - } - function Te() { - return !1; - } - function Ce(e, t) { - return ( - (e === - (function () { - try { - return E.activeElement; - } catch (e) {} - })()) == - ('focus' === t) - ); - } - function Ee(e, t, n, r, i, o) { - var a, s; - if ('object' == typeof t) { - for (s in ('string' != typeof n && ((r = r || n), (n = void 0)), t)) - Ee(e, s, n, r, t[s], o); - return e; - } - if ( - (null == r && null == i - ? ((i = n), (r = n = void 0)) - : null == i && - ('string' == typeof n - ? ((i = r), (r = void 0)) - : ((i = r), (r = n), (n = void 0))), - !1 === i) - ) - i = Te; - else if (!i) return e; - return ( - 1 === o && - ((a = i), - ((i = function (e) { - return S().off(e), a.apply(this, arguments); - }).guid = a.guid || (a.guid = S.guid++))), - e.each(function () { - S.event.add(this, t, i, r, n); - }) - ); - } - function Se(e, i, o) { - o - ? (Y.set(e, i, !1), - S.event.add(e, i, { - namespace: !1, - handler: function (e) { - var t, - n, - r = Y.get(this, i); - if (1 & e.isTrigger && this[i]) { - if (r.length) - (S.event.special[i] || {}).delegateType && e.stopPropagation(); - else if ( - ((r = s.call(arguments)), - Y.set(this, i, r), - (t = o(this, i)), - this[i](), - r !== (n = Y.get(this, i)) || t ? Y.set(this, i, !1) : (n = {}), - r !== n) - ) - return ( - e.stopImmediatePropagation(), e.preventDefault(), n && n.value - ); - } else - r.length && - (Y.set(this, i, { - value: S.event.trigger( - S.extend(r[0], S.Event.prototype), - r.slice(1), - this, - ), - }), - e.stopImmediatePropagation()); - }, - })) - : void 0 === Y.get(e, i) && S.event.add(e, i, we); - } - (S.event = { - global: {}, - add: function (t, e, n, r, i) { - var o, - a, - s, - u, - l, - c, - f, - p, - d, - h, - g, - y = Y.get(t); - if (V(t)) { - n.handler && ((n = (o = n).handler), (i = o.selector)), - i && S.find.matchesSelector(re, i), - n.guid || (n.guid = S.guid++), - (u = y.events) || (u = y.events = Object.create(null)), - (a = y.handle) || - (a = y.handle = - function (e) { - return 'undefined' != typeof S && S.event.triggered !== e.type - ? S.event.dispatch.apply(t, arguments) - : void 0; - }), - (l = (e = (e || '').match(P) || ['']).length); - while (l--) - (d = g = (s = be.exec(e[l]) || [])[1]), - (h = (s[2] || '').split('.').sort()), - d && - ((f = S.event.special[d] || {}), - (d = (i ? f.delegateType : f.bindType) || d), - (f = S.event.special[d] || {}), - (c = S.extend( - { - type: d, - origType: g, - data: r, - handler: n, - guid: n.guid, - selector: i, - needsContext: i && S.expr.match.needsContext.test(i), - namespace: h.join('.'), - }, - o, - )), - (p = u[d]) || - (((p = u[d] = []).delegateCount = 0), - (f.setup && !1 !== f.setup.call(t, r, h, a)) || - (t.addEventListener && t.addEventListener(d, a))), - f.add && - (f.add.call(t, c), c.handler.guid || (c.handler.guid = n.guid)), - i ? p.splice(p.delegateCount++, 0, c) : p.push(c), - (S.event.global[d] = !0)); - } - }, - remove: function (e, t, n, r, i) { - var o, - a, - s, - u, - l, - c, - f, - p, - d, - h, - g, - y = Y.hasData(e) && Y.get(e); - if (y && (u = y.events)) { - l = (t = (t || '').match(P) || ['']).length; - while (l--) - if ( - ((d = g = (s = be.exec(t[l]) || [])[1]), - (h = (s[2] || '').split('.').sort()), - d) - ) { - (f = S.event.special[d] || {}), - (p = u[(d = (r ? f.delegateType : f.bindType) || d)] || []), - (s = - s[2] && - new RegExp('(^|\\.)' + h.join('\\.(?:.*\\.|)') + '(\\.|$)')), - (a = o = p.length); - while (o--) - (c = p[o]), - (!i && g !== c.origType) || - (n && n.guid !== c.guid) || - (s && !s.test(c.namespace)) || - (r && r !== c.selector && ('**' !== r || !c.selector)) || - (p.splice(o, 1), - c.selector && p.delegateCount--, - f.remove && f.remove.call(e, c)); - a && - !p.length && - ((f.teardown && !1 !== f.teardown.call(e, h, y.handle)) || - S.removeEvent(e, d, y.handle), - delete u[d]); - } else for (d in u) S.event.remove(e, d + t[l], n, r, !0); - S.isEmptyObject(u) && Y.remove(e, 'handle events'); - } - }, - dispatch: function (e) { - var t, - n, - r, - i, - o, - a, - s = new Array(arguments.length), - u = S.event.fix(e), - l = (Y.get(this, 'events') || Object.create(null))[u.type] || [], - c = S.event.special[u.type] || {}; - for (s[0] = u, t = 1; t < arguments.length; t++) s[t] = arguments[t]; - if ( - ((u.delegateTarget = this), - !c.preDispatch || !1 !== c.preDispatch.call(this, u)) - ) { - (a = S.event.handlers.call(this, u, l)), (t = 0); - while ((i = a[t++]) && !u.isPropagationStopped()) { - (u.currentTarget = i.elem), (n = 0); - while ((o = i.handlers[n++]) && !u.isImmediatePropagationStopped()) - (u.rnamespace && - !1 !== o.namespace && - !u.rnamespace.test(o.namespace)) || - ((u.handleObj = o), - (u.data = o.data), - void 0 !== - (r = ( - (S.event.special[o.origType] || {}).handle || o.handler - ).apply(i.elem, s)) && - !1 === (u.result = r) && - (u.preventDefault(), u.stopPropagation())); - } - return c.postDispatch && c.postDispatch.call(this, u), u.result; - } - }, - handlers: function (e, t) { - var n, - r, - i, - o, - a, - s = [], - u = t.delegateCount, - l = e.target; - if (u && l.nodeType && !('click' === e.type && 1 <= e.button)) - for (; l !== this; l = l.parentNode || this) - if (1 === l.nodeType && ('click' !== e.type || !0 !== l.disabled)) { - for (o = [], a = {}, n = 0; n < u; n++) - void 0 === a[(i = (r = t[n]).selector + ' ')] && - (a[i] = r.needsContext - ? -1 < S(i, this).index(l) - : S.find(i, this, null, [l]).length), - a[i] && o.push(r); - o.length && s.push({ elem: l, handlers: o }); - } - return ( - (l = this), u < t.length && s.push({ elem: l, handlers: t.slice(u) }), s - ); - }, - addProp: function (t, e) { - Object.defineProperty(S.Event.prototype, t, { - enumerable: !0, - configurable: !0, - get: m(e) - ? function () { - if (this.originalEvent) return e(this.originalEvent); - } - : function () { - if (this.originalEvent) return this.originalEvent[t]; - }, - set: function (e) { - Object.defineProperty(this, t, { - enumerable: !0, - configurable: !0, - writable: !0, - value: e, - }); - }, - }); - }, - fix: function (e) { - return e[S.expando] ? e : new S.Event(e); - }, - special: { - load: { noBubble: !0 }, - click: { - setup: function (e) { - var t = this || e; - return ( - pe.test(t.type) && t.click && A(t, 'input') && Se(t, 'click', we), - !1 - ); - }, - trigger: function (e) { - var t = this || e; - return ( - pe.test(t.type) && t.click && A(t, 'input') && Se(t, 'click'), !0 - ); - }, - _default: function (e) { - var t = e.target; - return ( - (pe.test(t.type) && - t.click && - A(t, 'input') && - Y.get(t, 'click')) || - A(t, 'a') - ); - }, - }, - beforeunload: { - postDispatch: function (e) { - void 0 !== e.result && - e.originalEvent && - (e.originalEvent.returnValue = e.result); - }, - }, - }, - }), - (S.removeEvent = function (e, t, n) { - e.removeEventListener && e.removeEventListener(t, n); - }), - (S.Event = function (e, t) { - if (!(this instanceof S.Event)) return new S.Event(e, t); - e && e.type - ? ((this.originalEvent = e), - (this.type = e.type), - (this.isDefaultPrevented = - e.defaultPrevented || - (void 0 === e.defaultPrevented && !1 === e.returnValue) - ? we - : Te), - (this.target = - e.target && 3 === e.target.nodeType - ? e.target.parentNode - : e.target), - (this.currentTarget = e.currentTarget), - (this.relatedTarget = e.relatedTarget)) - : (this.type = e), - t && S.extend(this, t), - (this.timeStamp = (e && e.timeStamp) || Date.now()), - (this[S.expando] = !0); - }), - (S.Event.prototype = { - constructor: S.Event, - isDefaultPrevented: Te, - isPropagationStopped: Te, - isImmediatePropagationStopped: Te, - isSimulated: !1, - preventDefault: function () { - var e = this.originalEvent; - (this.isDefaultPrevented = we), - e && !this.isSimulated && e.preventDefault(); - }, - stopPropagation: function () { - var e = this.originalEvent; - (this.isPropagationStopped = we), - e && !this.isSimulated && e.stopPropagation(); - }, - stopImmediatePropagation: function () { - var e = this.originalEvent; - (this.isImmediatePropagationStopped = we), - e && !this.isSimulated && e.stopImmediatePropagation(), - this.stopPropagation(); - }, - }), - S.each( - { - altKey: !0, - bubbles: !0, - cancelable: !0, - changedTouches: !0, - ctrlKey: !0, - detail: !0, - eventPhase: !0, - metaKey: !0, - pageX: !0, - pageY: !0, - shiftKey: !0, - view: !0, - 'char': !0, - code: !0, - charCode: !0, - key: !0, - keyCode: !0, - button: !0, - buttons: !0, - clientX: !0, - clientY: !0, - offsetX: !0, - offsetY: !0, - pointerId: !0, - pointerType: !0, - screenX: !0, - screenY: !0, - targetTouches: !0, - toElement: !0, - touches: !0, - which: !0, - }, - S.event.addProp, - ), - S.each({ focus: 'focusin', blur: 'focusout' }, function (t, e) { - S.event.special[t] = { - setup: function () { - return Se(this, t, Ce), !1; - }, - trigger: function () { - return Se(this, t), !0; - }, - _default: function (e) { - return Y.get(e.target, t); - }, - delegateType: e, - }; - }), - S.each( - { - mouseenter: 'mouseover', - mouseleave: 'mouseout', - pointerenter: 'pointerover', - pointerleave: 'pointerout', - }, - function (e, i) { - S.event.special[e] = { - delegateType: i, - bindType: i, - handle: function (e) { - var t, - n = e.relatedTarget, - r = e.handleObj; - return ( - (n && (n === this || S.contains(this, n))) || - ((e.type = r.origType), - (t = r.handler.apply(this, arguments)), - (e.type = i)), - t - ); - }, - }; - }, - ), - S.fn.extend({ - on: function (e, t, n, r) { - return Ee(this, e, t, n, r); - }, - one: function (e, t, n, r) { - return Ee(this, e, t, n, r, 1); - }, - off: function (e, t, n) { - var r, i; - if (e && e.preventDefault && e.handleObj) - return ( - (r = e.handleObj), - S(e.delegateTarget).off( - r.namespace ? r.origType + '.' + r.namespace : r.origType, - r.selector, - r.handler, - ), - this - ); - if ('object' == typeof e) { - for (i in e) this.off(i, t, e[i]); - return this; - } - return ( - (!1 !== t && 'function' != typeof t) || ((n = t), (t = void 0)), - !1 === n && (n = Te), - this.each(function () { - S.event.remove(this, e, n, t); - }) - ); - }, - }); - var ke = /\s*$/g; - function je(e, t) { - return ( - (A(e, 'table') && - A(11 !== t.nodeType ? t : t.firstChild, 'tr') && - S(e).children('tbody')[0]) || - e - ); - } - function De(e) { - return (e.type = (null !== e.getAttribute('type')) + '/' + e.type), e; - } - function qe(e) { - return ( - 'true/' === (e.type || '').slice(0, 5) - ? (e.type = e.type.slice(5)) - : e.removeAttribute('type'), - e - ); - } - function Le(e, t) { - var n, r, i, o, a, s; - if (1 === t.nodeType) { - if (Y.hasData(e) && (s = Y.get(e).events)) - for (i in (Y.remove(t, 'handle events'), s)) - for (n = 0, r = s[i].length; n < r; n++) S.event.add(t, i, s[i][n]); - Q.hasData(e) && ((o = Q.access(e)), (a = S.extend({}, o)), Q.set(t, a)); - } - } - function He(n, r, i, o) { - r = g(r); - var e, - t, - a, - s, - u, - l, - c = 0, - f = n.length, - p = f - 1, - d = r[0], - h = m(d); - if (h || (1 < f && 'string' == typeof d && !v.checkClone && Ae.test(d))) - return n.each(function (e) { - var t = n.eq(e); - h && (r[0] = d.call(this, e, t.html())), He(t, r, i, o); - }); - if ( - f && - ((t = (e = xe(r, n[0].ownerDocument, !1, n, o)).firstChild), - 1 === e.childNodes.length && (e = t), - t || o) - ) { - for (s = (a = S.map(ye(e, 'script'), De)).length; c < f; c++) - (u = e), - c !== p && - ((u = S.clone(u, !0, !0)), s && S.merge(a, ye(u, 'script'))), - i.call(n[c], u, c); - if (s) - for (l = a[a.length - 1].ownerDocument, S.map(a, qe), c = 0; c < s; c++) - (u = a[c]), - he.test(u.type || '') && - !Y.access(u, 'globalEval') && - S.contains(l, u) && - (u.src && 'module' !== (u.type || '').toLowerCase() - ? S._evalUrl && - !u.noModule && - S._evalUrl( - u.src, - { nonce: u.nonce || u.getAttribute('nonce') }, - l, - ) - : b(u.textContent.replace(Ne, ''), u, l)); - } - return n; - } - function Oe(e, t, n) { - for (var r, i = t ? S.filter(t, e) : e, o = 0; null != (r = i[o]); o++) - n || 1 !== r.nodeType || S.cleanData(ye(r)), - r.parentNode && - (n && ie(r) && ve(ye(r, 'script')), r.parentNode.removeChild(r)); - return e; - } - S.extend({ - htmlPrefilter: function (e) { - return e; - }, - clone: function (e, t, n) { - var r, - i, - o, - a, - s, - u, - l, - c = e.cloneNode(!0), - f = ie(e); - if ( - !( - v.noCloneChecked || - (1 !== e.nodeType && 11 !== e.nodeType) || - S.isXMLDoc(e) - ) - ) - for (a = ye(c), r = 0, i = (o = ye(e)).length; r < i; r++) - (s = o[r]), - (u = a[r]), - void 0, - 'input' === (l = u.nodeName.toLowerCase()) && pe.test(s.type) - ? (u.checked = s.checked) - : ('input' !== l && 'textarea' !== l) || - (u.defaultValue = s.defaultValue); - if (t) - if (n) - for (o = o || ye(e), a = a || ye(c), r = 0, i = o.length; r < i; r++) - Le(o[r], a[r]); - else Le(e, c); - return ( - 0 < (a = ye(c, 'script')).length && ve(a, !f && ye(e, 'script')), c - ); - }, - cleanData: function (e) { - for (var t, n, r, i = S.event.special, o = 0; void 0 !== (n = e[o]); o++) - if (V(n)) { - if ((t = n[Y.expando])) { - if (t.events) - for (r in t.events) - i[r] ? S.event.remove(n, r) : S.removeEvent(n, r, t.handle); - n[Y.expando] = void 0; - } - n[Q.expando] && (n[Q.expando] = void 0); - } - }, - }), - S.fn.extend({ - detach: function (e) { - return Oe(this, e, !0); - }, - remove: function (e) { - return Oe(this, e); - }, - text: function (e) { - return B( - this, - function (e) { - return void 0 === e - ? S.text(this) - : this.empty().each(function () { - (1 !== this.nodeType && - 11 !== this.nodeType && - 9 !== this.nodeType) || - (this.textContent = e); - }); - }, - null, - e, - arguments.length, - ); - }, - append: function () { - return He(this, arguments, function (e) { - (1 !== this.nodeType && - 11 !== this.nodeType && - 9 !== this.nodeType) || - je(this, e).appendChild(e); - }); - }, - prepend: function () { - return He(this, arguments, function (e) { - if ( - 1 === this.nodeType || - 11 === this.nodeType || - 9 === this.nodeType - ) { - var t = je(this, e); - t.insertBefore(e, t.firstChild); - } - }); - }, - before: function () { - return He(this, arguments, function (e) { - this.parentNode && this.parentNode.insertBefore(e, this); - }); - }, - after: function () { - return He(this, arguments, function (e) { - this.parentNode && this.parentNode.insertBefore(e, this.nextSibling); - }); - }, - empty: function () { - for (var e, t = 0; null != (e = this[t]); t++) - 1 === e.nodeType && (S.cleanData(ye(e, !1)), (e.textContent = '')); - return this; - }, - clone: function (e, t) { - return ( - (e = null != e && e), - (t = null == t ? e : t), - this.map(function () { - return S.clone(this, e, t); - }) - ); - }, - html: function (e) { - return B( - this, - function (e) { - var t = this[0] || {}, - n = 0, - r = this.length; - if (void 0 === e && 1 === t.nodeType) return t.innerHTML; - if ( - 'string' == typeof e && - !ke.test(e) && - !ge[(de.exec(e) || ['', ''])[1].toLowerCase()] - ) { - e = S.htmlPrefilter(e); - try { - for (; n < r; n++) - 1 === (t = this[n] || {}).nodeType && - (S.cleanData(ye(t, !1)), (t.innerHTML = e)); - t = 0; - } catch (e) {} - } - t && this.empty().append(e); - }, - null, - e, - arguments.length, - ); - }, - replaceWith: function () { - var n = []; - return He( - this, - arguments, - function (e) { - var t = this.parentNode; - S.inArray(this, n) < 0 && - (S.cleanData(ye(this)), t && t.replaceChild(e, this)); - }, - n, - ); - }, - }), - S.each( - { - appendTo: 'append', - prependTo: 'prepend', - insertBefore: 'before', - insertAfter: 'after', - replaceAll: 'replaceWith', - }, - function (e, a) { - S.fn[e] = function (e) { - for (var t, n = [], r = S(e), i = r.length - 1, o = 0; o <= i; o++) - (t = o === i ? this : this.clone(!0)), - S(r[o])[a](t), - u.apply(n, t.get()); - return this.pushStack(n); - }; - }, - ); - var Pe = new RegExp('^(' + ee + ')(?!px)[a-z%]+$', 'i'), - Re = /^--/, - Me = function (e) { - var t = e.ownerDocument.defaultView; - return (t && t.opener) || (t = C), t.getComputedStyle(e); - }, - Ie = function (e, t, n) { - var r, - i, - o = {}; - for (i in t) (o[i] = e.style[i]), (e.style[i] = t[i]); - for (i in ((r = n.call(e)), t)) e.style[i] = o[i]; - return r; - }, - We = new RegExp(ne.join('|'), 'i'), - Fe = '[\\x20\\t\\r\\n\\f]', - $e = new RegExp('^' + Fe + '+|((?:^|[^\\\\])(?:\\\\.)*)' + Fe + '+$', 'g'); - function Be(e, t, n) { - var r, - i, - o, - a, - s = Re.test(t), - u = e.style; - return ( - (n = n || Me(e)) && - ((a = n.getPropertyValue(t) || n[t]), - s && a && (a = a.replace($e, '$1') || void 0), - '' !== a || ie(e) || (a = S.style(e, t)), - !v.pixelBoxStyles() && - Pe.test(a) && - We.test(t) && - ((r = u.width), - (i = u.minWidth), - (o = u.maxWidth), - (u.minWidth = u.maxWidth = u.width = a), - (a = n.width), - (u.width = r), - (u.minWidth = i), - (u.maxWidth = o))), - void 0 !== a ? a + '' : a - ); - } - function _e(e, t) { - return { - get: function () { - if (!e()) return (this.get = t).apply(this, arguments); - delete this.get; - }, - }; - } - !(function () { - function e() { - if (l) { - (u.style.cssText = - 'position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0'), - (l.style.cssText = - 'position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%'), - re.appendChild(u).appendChild(l); - var e = C.getComputedStyle(l); - (n = '1%' !== e.top), - (s = 12 === t(e.marginLeft)), - (l.style.right = '60%'), - (o = 36 === t(e.right)), - (r = 36 === t(e.width)), - (l.style.position = 'absolute'), - (i = 12 === t(l.offsetWidth / 3)), - re.removeChild(u), - (l = null); - } - } - function t(e) { - return Math.round(parseFloat(e)); - } - var n, - r, - i, - o, - a, - s, - u = E.createElement('div'), - l = E.createElement('div'); - l.style && - ((l.style.backgroundClip = 'content-box'), - (l.cloneNode(!0).style.backgroundClip = ''), - (v.clearCloneStyle = 'content-box' === l.style.backgroundClip), - S.extend(v, { - boxSizingReliable: function () { - return e(), r; - }, - pixelBoxStyles: function () { - return e(), o; - }, - pixelPosition: function () { - return e(), n; - }, - reliableMarginLeft: function () { - return e(), s; - }, - scrollboxSize: function () { - return e(), i; - }, - reliableTrDimensions: function () { - var e, t, n, r; - return ( - null == a && - ((e = E.createElement('table')), - (t = E.createElement('tr')), - (n = E.createElement('div')), - (e.style.cssText = - 'position:absolute;left:-11111px;border-collapse:separate'), - (t.style.cssText = 'border:1px solid'), - (t.style.height = '1px'), - (n.style.height = '9px'), - (n.style.display = 'block'), - re.appendChild(e).appendChild(t).appendChild(n), - (r = C.getComputedStyle(t)), - (a = - parseInt(r.height, 10) + - parseInt(r.borderTopWidth, 10) + - parseInt(r.borderBottomWidth, 10) === - t.offsetHeight), - re.removeChild(e)), - a - ); - }, - })); - })(); - var ze = ['Webkit', 'Moz', 'ms'], - Ue = E.createElement('div').style, - Xe = {}; - function Ve(e) { - var t = S.cssProps[e] || Xe[e]; - return ( - t || - (e in Ue - ? e - : (Xe[e] = - (function (e) { - var t = e[0].toUpperCase() + e.slice(1), - n = ze.length; - while (n--) if ((e = ze[n] + t) in Ue) return e; - })(e) || e)) - ); - } - var Ge = /^(none|table(?!-c[ea]).+)/, - Ye = { position: 'absolute', visibility: 'hidden', display: 'block' }, - Qe = { letterSpacing: '0', fontWeight: '400' }; - function Je(e, t, n) { - var r = te.exec(t); - return r ? Math.max(0, r[2] - (n || 0)) + (r[3] || 'px') : t; - } - function Ke(e, t, n, r, i, o) { - var a = 'width' === t ? 1 : 0, - s = 0, - u = 0; - if (n === (r ? 'border' : 'content')) return 0; - for (; a < 4; a += 2) - 'margin' === n && (u += S.css(e, n + ne[a], !0, i)), - r - ? ('content' === n && (u -= S.css(e, 'padding' + ne[a], !0, i)), - 'margin' !== n && - (u -= S.css(e, 'border' + ne[a] + 'Width', !0, i))) - : ((u += S.css(e, 'padding' + ne[a], !0, i)), - 'padding' !== n - ? (u += S.css(e, 'border' + ne[a] + 'Width', !0, i)) - : (s += S.css(e, 'border' + ne[a] + 'Width', !0, i))); - return ( - !r && - 0 <= o && - (u += - Math.max( - 0, - Math.ceil( - e['offset' + t[0].toUpperCase() + t.slice(1)] - o - u - s - 0.5, - ), - ) || 0), - u - ); - } - function Ze(e, t, n) { - var r = Me(e), - i = - (!v.boxSizingReliable() || n) && - 'border-box' === S.css(e, 'boxSizing', !1, r), - o = i, - a = Be(e, t, r), - s = 'offset' + t[0].toUpperCase() + t.slice(1); - if (Pe.test(a)) { - if (!n) return a; - a = 'auto'; - } - return ( - ((!v.boxSizingReliable() && i) || - (!v.reliableTrDimensions() && A(e, 'tr')) || - 'auto' === a || - (!parseFloat(a) && 'inline' === S.css(e, 'display', !1, r))) && - e.getClientRects().length && - ((i = 'border-box' === S.css(e, 'boxSizing', !1, r)), - (o = s in e) && (a = e[s])), - (a = parseFloat(a) || 0) + - Ke(e, t, n || (i ? 'border' : 'content'), o, r, a) + - 'px' - ); - } - function et(e, t, n, r, i) { - return new et.prototype.init(e, t, n, r, i); - } - S.extend({ - cssHooks: { - opacity: { - get: function (e, t) { - if (t) { - var n = Be(e, 'opacity'); - return '' === n ? '1' : n; - } - }, - }, - }, - cssNumber: { - animationIterationCount: !0, - columnCount: !0, - fillOpacity: !0, - flexGrow: !0, - flexShrink: !0, - fontWeight: !0, - gridArea: !0, - gridColumn: !0, - gridColumnEnd: !0, - gridColumnStart: !0, - gridRow: !0, - gridRowEnd: !0, - gridRowStart: !0, - lineHeight: !0, - opacity: !0, - order: !0, - orphans: !0, - widows: !0, - zIndex: !0, - zoom: !0, - }, - cssProps: {}, - style: function (e, t, n, r) { - if (e && 3 !== e.nodeType && 8 !== e.nodeType && e.style) { - var i, - o, - a, - s = X(t), - u = Re.test(t), - l = e.style; - if ( - (u || (t = Ve(s)), (a = S.cssHooks[t] || S.cssHooks[s]), void 0 === n) - ) - return a && 'get' in a && void 0 !== (i = a.get(e, !1, r)) ? i : l[t]; - 'string' === (o = typeof n) && - (i = te.exec(n)) && - i[1] && - ((n = se(e, t, i)), (o = 'number')), - null != n && - n == n && - ('number' !== o || - u || - (n += (i && i[3]) || (S.cssNumber[s] ? '' : 'px')), - v.clearCloneStyle || - '' !== n || - 0 !== t.indexOf('background') || - (l[t] = 'inherit'), - (a && 'set' in a && void 0 === (n = a.set(e, n, r))) || - (u ? l.setProperty(t, n) : (l[t] = n))); - } - }, - css: function (e, t, n, r) { - var i, - o, - a, - s = X(t); - return ( - Re.test(t) || (t = Ve(s)), - (a = S.cssHooks[t] || S.cssHooks[s]) && - 'get' in a && - (i = a.get(e, !0, n)), - void 0 === i && (i = Be(e, t, r)), - 'normal' === i && t in Qe && (i = Qe[t]), - '' === n || n - ? ((o = parseFloat(i)), !0 === n || isFinite(o) ? o || 0 : i) - : i - ); - }, - }), - S.each(['height', 'width'], function (e, u) { - S.cssHooks[u] = { - get: function (e, t, n) { - if (t) - return !Ge.test(S.css(e, 'display')) || - (e.getClientRects().length && e.getBoundingClientRect().width) - ? Ze(e, u, n) - : Ie(e, Ye, function () { - return Ze(e, u, n); - }); - }, - set: function (e, t, n) { - var r, - i = Me(e), - o = !v.scrollboxSize() && 'absolute' === i.position, - a = (o || n) && 'border-box' === S.css(e, 'boxSizing', !1, i), - s = n ? Ke(e, u, n, a, i) : 0; - return ( - a && - o && - (s -= Math.ceil( - e['offset' + u[0].toUpperCase() + u.slice(1)] - - parseFloat(i[u]) - - Ke(e, u, 'border', !1, i) - - 0.5, - )), - s && - (r = te.exec(t)) && - 'px' !== (r[3] || 'px') && - ((e.style[u] = t), (t = S.css(e, u))), - Je(0, t, s) - ); - }, - }; - }), - (S.cssHooks.marginLeft = _e(v.reliableMarginLeft, function (e, t) { - if (t) - return ( - (parseFloat(Be(e, 'marginLeft')) || - e.getBoundingClientRect().left - - Ie(e, { marginLeft: 0 }, function () { - return e.getBoundingClientRect().left; - })) + 'px' - ); - })), - S.each({ margin: '', padding: '', border: 'Width' }, function (i, o) { - (S.cssHooks[i + o] = { - expand: function (e) { - for ( - var t = 0, n = {}, r = 'string' == typeof e ? e.split(' ') : [e]; - t < 4; - t++ - ) - n[i + ne[t] + o] = r[t] || r[t - 2] || r[0]; - return n; - }, - }), - 'margin' !== i && (S.cssHooks[i + o].set = Je); - }), - S.fn.extend({ - css: function (e, t) { - return B( - this, - function (e, t, n) { - var r, - i, - o = {}, - a = 0; - if (Array.isArray(t)) { - for (r = Me(e), i = t.length; a < i; a++) - o[t[a]] = S.css(e, t[a], !1, r); - return o; - } - return void 0 !== n ? S.style(e, t, n) : S.css(e, t); - }, - e, - t, - 1 < arguments.length, - ); - }, - }), - (((S.Tween = et).prototype = { - constructor: et, - init: function (e, t, n, r, i, o) { - (this.elem = e), - (this.prop = n), - (this.easing = i || S.easing._default), - (this.options = t), - (this.start = this.now = this.cur()), - (this.end = r), - (this.unit = o || (S.cssNumber[n] ? '' : 'px')); - }, - cur: function () { - var e = et.propHooks[this.prop]; - return e && e.get ? e.get(this) : et.propHooks._default.get(this); - }, - run: function (e) { - var t, - n = et.propHooks[this.prop]; - return ( - this.options.duration - ? (this.pos = t = - S.easing[this.easing]( - e, - this.options.duration * e, - 0, - 1, - this.options.duration, - )) - : (this.pos = t = e), - (this.now = (this.end - this.start) * t + this.start), - this.options.step && - this.options.step.call(this.elem, this.now, this), - n && n.set ? n.set(this) : et.propHooks._default.set(this), - this - ); - }, - }).init.prototype = et.prototype), - ((et.propHooks = { - _default: { - get: function (e) { - var t; - return 1 !== e.elem.nodeType || - (null != e.elem[e.prop] && null == e.elem.style[e.prop]) - ? e.elem[e.prop] - : (t = S.css(e.elem, e.prop, '')) && 'auto' !== t - ? t - : 0; - }, - set: function (e) { - S.fx.step[e.prop] - ? S.fx.step[e.prop](e) - : 1 !== e.elem.nodeType || - (!S.cssHooks[e.prop] && null == e.elem.style[Ve(e.prop)]) - ? (e.elem[e.prop] = e.now) - : S.style(e.elem, e.prop, e.now + e.unit); - }, - }, - }).scrollTop = et.propHooks.scrollLeft = - { - set: function (e) { - e.elem.nodeType && e.elem.parentNode && (e.elem[e.prop] = e.now); - }, - }), - (S.easing = { - linear: function (e) { - return e; - }, - swing: function (e) { - return 0.5 - Math.cos(e * Math.PI) / 2; - }, - _default: 'swing', - }), - (S.fx = et.prototype.init), - (S.fx.step = {}); - var tt, - nt, - rt, - it, - ot = /^(?:toggle|show|hide)$/, - at = /queueHooks$/; - function st() { - nt && - (!1 === E.hidden && C.requestAnimationFrame - ? C.requestAnimationFrame(st) - : C.setTimeout(st, S.fx.interval), - S.fx.tick()); - } - function ut() { - return ( - C.setTimeout(function () { - tt = void 0; - }), - (tt = Date.now()) - ); - } - function lt(e, t) { - var n, - r = 0, - i = { height: e }; - for (t = t ? 1 : 0; r < 4; r += 2 - t) - i['margin' + (n = ne[r])] = i['padding' + n] = e; - return t && (i.opacity = i.width = e), i; - } - function ct(e, t, n) { - for ( - var r, - i = (ft.tweeners[t] || []).concat(ft.tweeners['*']), - o = 0, - a = i.length; - o < a; - o++ - ) - if ((r = i[o].call(n, t, e))) return r; - } - function ft(o, e, t) { - var n, - a, - r = 0, - i = ft.prefilters.length, - s = S.Deferred().always(function () { - delete u.elem; - }), - u = function () { - if (a) return !1; - for ( - var e = tt || ut(), - t = Math.max(0, l.startTime + l.duration - e), - n = 1 - (t / l.duration || 0), - r = 0, - i = l.tweens.length; - r < i; - r++ - ) - l.tweens[r].run(n); - return ( - s.notifyWith(o, [l, n, t]), - n < 1 && i - ? t - : (i || s.notifyWith(o, [l, 1, 0]), s.resolveWith(o, [l]), !1) - ); - }, - l = s.promise({ - elem: o, - props: S.extend({}, e), - opts: S.extend(!0, { specialEasing: {}, easing: S.easing._default }, t), - originalProperties: e, - originalOptions: t, - startTime: tt || ut(), - duration: t.duration, - tweens: [], - createTween: function (e, t) { - var n = S.Tween( - o, - l.opts, - e, - t, - l.opts.specialEasing[e] || l.opts.easing, - ); - return l.tweens.push(n), n; - }, - stop: function (e) { - var t = 0, - n = e ? l.tweens.length : 0; - if (a) return this; - for (a = !0; t < n; t++) l.tweens[t].run(1); - return ( - e - ? (s.notifyWith(o, [l, 1, 0]), s.resolveWith(o, [l, e])) - : s.rejectWith(o, [l, e]), - this - ); - }, - }), - c = l.props; - for ( - !(function (e, t) { - var n, r, i, o, a; - for (n in e) - if ( - ((i = t[(r = X(n))]), - (o = e[n]), - Array.isArray(o) && ((i = o[1]), (o = e[n] = o[0])), - n !== r && ((e[r] = o), delete e[n]), - (a = S.cssHooks[r]) && ('expand' in a)) - ) - for (n in ((o = a.expand(o)), delete e[r], o)) - (n in e) || ((e[n] = o[n]), (t[n] = i)); - else t[r] = i; - })(c, l.opts.specialEasing); - r < i; - r++ - ) - if ((n = ft.prefilters[r].call(l, o, c, l.opts))) - return ( - m(n.stop) && - (S._queueHooks(l.elem, l.opts.queue).stop = n.stop.bind(n)), - n - ); - return ( - S.map(c, ct, l), - m(l.opts.start) && l.opts.start.call(o, l), - l - .progress(l.opts.progress) - .done(l.opts.done, l.opts.complete) - .fail(l.opts.fail) - .always(l.opts.always), - S.fx.timer(S.extend(u, { elem: o, anim: l, queue: l.opts.queue })), - l - ); - } - (S.Animation = S.extend(ft, { - tweeners: { - '*': [ - function (e, t) { - var n = this.createTween(e, t); - return se(n.elem, e, te.exec(t), n), n; - }, - ], - }, - tweener: function (e, t) { - m(e) ? ((t = e), (e = ['*'])) : (e = e.match(P)); - for (var n, r = 0, i = e.length; r < i; r++) - (n = e[r]), - (ft.tweeners[n] = ft.tweeners[n] || []), - ft.tweeners[n].unshift(t); - }, - prefilters: [ - function (e, t, n) { - var r, - i, - o, - a, - s, - u, - l, - c, - f = 'width' in t || 'height' in t, - p = this, - d = {}, - h = e.style, - g = e.nodeType && ae(e), - y = Y.get(e, 'fxshow'); - for (r in (n.queue || - (null == (a = S._queueHooks(e, 'fx')).unqueued && - ((a.unqueued = 0), - (s = a.empty.fire), - (a.empty.fire = function () { - a.unqueued || s(); - })), - a.unqueued++, - p.always(function () { - p.always(function () { - a.unqueued--, S.queue(e, 'fx').length || a.empty.fire(); - }); - })), - t)) - if (((i = t[r]), ot.test(i))) { - if ( - (delete t[r], - (o = o || 'toggle' === i), - i === (g ? 'hide' : 'show')) - ) { - if ('show' !== i || !y || void 0 === y[r]) continue; - g = !0; - } - d[r] = (y && y[r]) || S.style(e, r); - } - if ((u = !S.isEmptyObject(t)) || !S.isEmptyObject(d)) - for (r in (f && - 1 === e.nodeType && - ((n.overflow = [h.overflow, h.overflowX, h.overflowY]), - null == (l = y && y.display) && (l = Y.get(e, 'display')), - 'none' === (c = S.css(e, 'display')) && - (l - ? (c = l) - : (le([e], !0), - (l = e.style.display || l), - (c = S.css(e, 'display')), - le([e]))), - ('inline' === c || ('inline-block' === c && null != l)) && - 'none' === S.css(e, 'float') && - (u || - (p.done(function () { - h.display = l; - }), - null == l && ((c = h.display), (l = 'none' === c ? '' : c))), - (h.display = 'inline-block'))), - n.overflow && - ((h.overflow = 'hidden'), - p.always(function () { - (h.overflow = n.overflow[0]), - (h.overflowX = n.overflow[1]), - (h.overflowY = n.overflow[2]); - })), - (u = !1), - d)) - u || - (y - ? 'hidden' in y && (g = y.hidden) - : (y = Y.access(e, 'fxshow', { display: l })), - o && (y.hidden = !g), - g && le([e], !0), - p.done(function () { - for (r in (g || le([e]), Y.remove(e, 'fxshow'), d)) - S.style(e, r, d[r]); - })), - (u = ct(g ? y[r] : 0, r, p)), - r in y || - ((y[r] = u.start), g && ((u.end = u.start), (u.start = 0))); - }, - ], - prefilter: function (e, t) { - t ? ft.prefilters.unshift(e) : ft.prefilters.push(e); - }, - })), - (S.speed = function (e, t, n) { - var r = - e && 'object' == typeof e - ? S.extend({}, e) - : { - complete: n || (!n && t) || (m(e) && e), - duration: e, - easing: (n && t) || (t && !m(t) && t), - }; - return ( - S.fx.off - ? (r.duration = 0) - : 'number' != typeof r.duration && - (r.duration in S.fx.speeds - ? (r.duration = S.fx.speeds[r.duration]) - : (r.duration = S.fx.speeds._default)), - (null != r.queue && !0 !== r.queue) || (r.queue = 'fx'), - (r.old = r.complete), - (r.complete = function () { - m(r.old) && r.old.call(this), r.queue && S.dequeue(this, r.queue); - }), - r - ); - }), - S.fn.extend({ - fadeTo: function (e, t, n, r) { - return this.filter(ae) - .css('opacity', 0) - .show() - .end() - .animate({ opacity: t }, e, n, r); - }, - animate: function (t, e, n, r) { - var i = S.isEmptyObject(t), - o = S.speed(e, n, r), - a = function () { - var e = ft(this, S.extend({}, t), o); - (i || Y.get(this, 'finish')) && e.stop(!0); - }; - return ( - (a.finish = a), - i || !1 === o.queue ? this.each(a) : this.queue(o.queue, a) - ); - }, - stop: function (i, e, o) { - var a = function (e) { - var t = e.stop; - delete e.stop, t(o); - }; - return ( - 'string' != typeof i && ((o = e), (e = i), (i = void 0)), - e && this.queue(i || 'fx', []), - this.each(function () { - var e = !0, - t = null != i && i + 'queueHooks', - n = S.timers, - r = Y.get(this); - if (t) r[t] && r[t].stop && a(r[t]); - else for (t in r) r[t] && r[t].stop && at.test(t) && a(r[t]); - for (t = n.length; t--; ) - n[t].elem !== this || - (null != i && n[t].queue !== i) || - (n[t].anim.stop(o), (e = !1), n.splice(t, 1)); - (!e && o) || S.dequeue(this, i); - }) - ); - }, - finish: function (a) { - return ( - !1 !== a && (a = a || 'fx'), - this.each(function () { - var e, - t = Y.get(this), - n = t[a + 'queue'], - r = t[a + 'queueHooks'], - i = S.timers, - o = n ? n.length : 0; - for ( - t.finish = !0, - S.queue(this, a, []), - r && r.stop && r.stop.call(this, !0), - e = i.length; - e--; - - ) - i[e].elem === this && - i[e].queue === a && - (i[e].anim.stop(!0), i.splice(e, 1)); - for (e = 0; e < o; e++) - n[e] && n[e].finish && n[e].finish.call(this); - delete t.finish; - }) - ); - }, - }), - S.each(['toggle', 'show', 'hide'], function (e, r) { - var i = S.fn[r]; - S.fn[r] = function (e, t, n) { - return null == e || 'boolean' == typeof e - ? i.apply(this, arguments) - : this.animate(lt(r, !0), e, t, n); - }; - }), - S.each( - { - slideDown: lt('show'), - slideUp: lt('hide'), - slideToggle: lt('toggle'), - fadeIn: { opacity: 'show' }, - fadeOut: { opacity: 'hide' }, - fadeToggle: { opacity: 'toggle' }, - }, - function (e, r) { - S.fn[e] = function (e, t, n) { - return this.animate(r, e, t, n); - }; - }, - ), - (S.timers = []), - (S.fx.tick = function () { - var e, - t = 0, - n = S.timers; - for (tt = Date.now(); t < n.length; t++) - (e = n[t])() || n[t] !== e || n.splice(t--, 1); - n.length || S.fx.stop(), (tt = void 0); - }), - (S.fx.timer = function (e) { - S.timers.push(e), S.fx.start(); - }), - (S.fx.interval = 13), - (S.fx.start = function () { - nt || ((nt = !0), st()); - }), - (S.fx.stop = function () { - nt = null; - }), - (S.fx.speeds = { slow: 600, fast: 200, _default: 400 }), - (S.fn.delay = function (r, e) { - return ( - (r = (S.fx && S.fx.speeds[r]) || r), - (e = e || 'fx'), - this.queue(e, function (e, t) { - var n = C.setTimeout(e, r); - t.stop = function () { - C.clearTimeout(n); - }; - }) - ); - }), - (rt = E.createElement('input')), - (it = E.createElement('select').appendChild(E.createElement('option'))), - (rt.type = 'checkbox'), - (v.checkOn = '' !== rt.value), - (v.optSelected = it.selected), - ((rt = E.createElement('input')).value = 't'), - (rt.type = 'radio'), - (v.radioValue = 't' === rt.value); - var pt, - dt = S.expr.attrHandle; - S.fn.extend({ - attr: function (e, t) { - return B(this, S.attr, e, t, 1 < arguments.length); - }, - removeAttr: function (e) { - return this.each(function () { - S.removeAttr(this, e); - }); - }, - }), - S.extend({ - attr: function (e, t, n) { - var r, - i, - o = e.nodeType; - if (3 !== o && 8 !== o && 2 !== o) - return 'undefined' == typeof e.getAttribute - ? S.prop(e, t, n) - : ((1 === o && S.isXMLDoc(e)) || - (i = - S.attrHooks[t.toLowerCase()] || - (S.expr.match.bool.test(t) ? pt : void 0)), - void 0 !== n - ? null === n - ? void S.removeAttr(e, t) - : i && 'set' in i && void 0 !== (r = i.set(e, n, t)) - ? r - : (e.setAttribute(t, n + ''), n) - : i && 'get' in i && null !== (r = i.get(e, t)) - ? r - : null == (r = S.find.attr(e, t)) - ? void 0 - : r); - }, - attrHooks: { - type: { - set: function (e, t) { - if (!v.radioValue && 'radio' === t && A(e, 'input')) { - var n = e.value; - return e.setAttribute('type', t), n && (e.value = n), t; - } - }, - }, - }, - removeAttr: function (e, t) { - var n, - r = 0, - i = t && t.match(P); - if (i && 1 === e.nodeType) while ((n = i[r++])) e.removeAttribute(n); - }, - }), - (pt = { - set: function (e, t, n) { - return !1 === t ? S.removeAttr(e, n) : e.setAttribute(n, n), n; - }, - }), - S.each(S.expr.match.bool.source.match(/\w+/g), function (e, t) { - var a = dt[t] || S.find.attr; - dt[t] = function (e, t, n) { - var r, - i, - o = t.toLowerCase(); - return ( - n || - ((i = dt[o]), - (dt[o] = r), - (r = null != a(e, t, n) ? o : null), - (dt[o] = i)), - r - ); - }; - }); - var ht = /^(?:input|select|textarea|button)$/i, - gt = /^(?:a|area)$/i; - function yt(e) { - return (e.match(P) || []).join(' '); - } - function vt(e) { - return (e.getAttribute && e.getAttribute('class')) || ''; - } - function mt(e) { - return Array.isArray(e) ? e : ('string' == typeof e && e.match(P)) || []; - } - S.fn.extend({ - prop: function (e, t) { - return B(this, S.prop, e, t, 1 < arguments.length); - }, - removeProp: function (e) { - return this.each(function () { - delete this[S.propFix[e] || e]; - }); - }, - }), - S.extend({ - prop: function (e, t, n) { - var r, - i, - o = e.nodeType; - if (3 !== o && 8 !== o && 2 !== o) - return ( - (1 === o && S.isXMLDoc(e)) || - ((t = S.propFix[t] || t), (i = S.propHooks[t])), - void 0 !== n - ? i && 'set' in i && void 0 !== (r = i.set(e, n, t)) - ? r - : (e[t] = n) - : i && 'get' in i && null !== (r = i.get(e, t)) - ? r - : e[t] - ); - }, - propHooks: { - tabIndex: { - get: function (e) { - var t = S.find.attr(e, 'tabindex'); - return t - ? parseInt(t, 10) - : ht.test(e.nodeName) || (gt.test(e.nodeName) && e.href) - ? 0 - : -1; - }, - }, - }, - propFix: { 'for': 'htmlFor', 'class': 'className' }, - }), - v.optSelected || - (S.propHooks.selected = { - get: function (e) { - var t = e.parentNode; - return t && t.parentNode && t.parentNode.selectedIndex, null; - }, - set: function (e) { - var t = e.parentNode; - t && (t.selectedIndex, t.parentNode && t.parentNode.selectedIndex); - }, - }), - S.each( - [ - 'tabIndex', - 'readOnly', - 'maxLength', - 'cellSpacing', - 'cellPadding', - 'rowSpan', - 'colSpan', - 'useMap', - 'frameBorder', - 'contentEditable', - ], - function () { - S.propFix[this.toLowerCase()] = this; - }, - ), - S.fn.extend({ - addClass: function (t) { - var e, n, r, i, o, a; - return m(t) - ? this.each(function (e) { - S(this).addClass(t.call(this, e, vt(this))); - }) - : (e = mt(t)).length - ? this.each(function () { - if ( - ((r = vt(this)), - (n = 1 === this.nodeType && ' ' + yt(r) + ' ')) - ) { - for (o = 0; o < e.length; o++) - (i = e[o]), n.indexOf(' ' + i + ' ') < 0 && (n += i + ' '); - (a = yt(n)), r !== a && this.setAttribute('class', a); - } - }) - : this; - }, - removeClass: function (t) { - var e, n, r, i, o, a; - return m(t) - ? this.each(function (e) { - S(this).removeClass(t.call(this, e, vt(this))); - }) - : arguments.length - ? (e = mt(t)).length - ? this.each(function () { - if ( - ((r = vt(this)), - (n = 1 === this.nodeType && ' ' + yt(r) + ' ')) - ) { - for (o = 0; o < e.length; o++) { - i = e[o]; - while (-1 < n.indexOf(' ' + i + ' ')) - n = n.replace(' ' + i + ' ', ' '); - } - (a = yt(n)), r !== a && this.setAttribute('class', a); - } - }) - : this - : this.attr('class', ''); - }, - toggleClass: function (t, n) { - var e, - r, - i, - o, - a = typeof t, - s = 'string' === a || Array.isArray(t); - return m(t) - ? this.each(function (e) { - S(this).toggleClass(t.call(this, e, vt(this), n), n); - }) - : 'boolean' == typeof n && s - ? n - ? this.addClass(t) - : this.removeClass(t) - : ((e = mt(t)), - this.each(function () { - if (s) - for (o = S(this), i = 0; i < e.length; i++) - (r = e[i]), - o.hasClass(r) ? o.removeClass(r) : o.addClass(r); - else - (void 0 !== t && 'boolean' !== a) || - ((r = vt(this)) && Y.set(this, '__className__', r), - this.setAttribute && - this.setAttribute( - 'class', - r || !1 === t ? '' : Y.get(this, '__className__') || '', - )); - })); - }, - hasClass: function (e) { - var t, - n, - r = 0; - t = ' ' + e + ' '; - while ((n = this[r++])) - if (1 === n.nodeType && -1 < (' ' + yt(vt(n)) + ' ').indexOf(t)) - return !0; - return !1; - }, - }); - var xt = /\r/g; - S.fn.extend({ - val: function (n) { - var r, - e, - i, - t = this[0]; - return arguments.length - ? ((i = m(n)), - this.each(function (e) { - var t; - 1 === this.nodeType && - (null == (t = i ? n.call(this, e, S(this).val()) : n) - ? (t = '') - : 'number' == typeof t - ? (t += '') - : Array.isArray(t) && - (t = S.map(t, function (e) { - return null == e ? '' : e + ''; - })), - ((r = - S.valHooks[this.type] || - S.valHooks[this.nodeName.toLowerCase()]) && - 'set' in r && - void 0 !== r.set(this, t, 'value')) || - (this.value = t)); - })) - : t - ? (r = S.valHooks[t.type] || S.valHooks[t.nodeName.toLowerCase()]) && - 'get' in r && - void 0 !== (e = r.get(t, 'value')) - ? e - : 'string' == typeof (e = t.value) - ? e.replace(xt, '') - : null == e - ? '' - : e - : void 0; - }, - }), - S.extend({ - valHooks: { - option: { - get: function (e) { - var t = S.find.attr(e, 'value'); - return null != t ? t : yt(S.text(e)); - }, - }, - select: { - get: function (e) { - var t, - n, - r, - i = e.options, - o = e.selectedIndex, - a = 'select-one' === e.type, - s = a ? null : [], - u = a ? o + 1 : i.length; - for (r = o < 0 ? u : a ? o : 0; r < u; r++) - if ( - ((n = i[r]).selected || r === o) && - !n.disabled && - (!n.parentNode.disabled || !A(n.parentNode, 'optgroup')) - ) { - if (((t = S(n).val()), a)) return t; - s.push(t); - } - return s; - }, - set: function (e, t) { - var n, - r, - i = e.options, - o = S.makeArray(t), - a = i.length; - while (a--) - ((r = i[a]).selected = - -1 < S.inArray(S.valHooks.option.get(r), o)) && (n = !0); - return n || (e.selectedIndex = -1), o; - }, - }, - }, - }), - S.each(['radio', 'checkbox'], function () { - (S.valHooks[this] = { - set: function (e, t) { - if (Array.isArray(t)) - return (e.checked = -1 < S.inArray(S(e).val(), t)); - }, - }), - v.checkOn || - (S.valHooks[this].get = function (e) { - return null === e.getAttribute('value') ? 'on' : e.value; - }); - }), - (v.focusin = 'onfocusin' in C); - var bt = /^(?:focusinfocus|focusoutblur)$/, - wt = function (e) { - e.stopPropagation(); - }; - S.extend(S.event, { - trigger: function (e, t, n, r) { - var i, - o, - a, - s, - u, - l, - c, - f, - p = [n || E], - d = y.call(e, 'type') ? e.type : e, - h = y.call(e, 'namespace') ? e.namespace.split('.') : []; - if ( - ((o = f = a = n = n || E), - 3 !== n.nodeType && - 8 !== n.nodeType && - !bt.test(d + S.event.triggered) && - (-1 < d.indexOf('.') && ((d = (h = d.split('.')).shift()), h.sort()), - (u = d.indexOf(':') < 0 && 'on' + d), - ((e = e[S.expando] - ? e - : new S.Event(d, 'object' == typeof e && e)).isTrigger = r ? 2 : 3), - (e.namespace = h.join('.')), - (e.rnamespace = e.namespace - ? new RegExp('(^|\\.)' + h.join('\\.(?:.*\\.|)') + '(\\.|$)') - : null), - (e.result = void 0), - e.target || (e.target = n), - (t = null == t ? [e] : S.makeArray(t, [e])), - (c = S.event.special[d] || {}), - r || !c.trigger || !1 !== c.trigger.apply(n, t))) - ) { - if (!r && !c.noBubble && !x(n)) { - for ( - s = c.delegateType || d, bt.test(s + d) || (o = o.parentNode); - o; - o = o.parentNode - ) - p.push(o), (a = o); - a === (n.ownerDocument || E) && - p.push(a.defaultView || a.parentWindow || C); - } - i = 0; - while ((o = p[i++]) && !e.isPropagationStopped()) - (f = o), - (e.type = 1 < i ? s : c.bindType || d), - (l = - (Y.get(o, 'events') || Object.create(null))[e.type] && - Y.get(o, 'handle')) && l.apply(o, t), - (l = u && o[u]) && - l.apply && - V(o) && - ((e.result = l.apply(o, t)), - !1 === e.result && e.preventDefault()); - return ( - (e.type = d), - r || - e.isDefaultPrevented() || - (c._default && !1 !== c._default.apply(p.pop(), t)) || - !V(n) || - (u && - m(n[d]) && - !x(n) && - ((a = n[u]) && (n[u] = null), - (S.event.triggered = d), - e.isPropagationStopped() && f.addEventListener(d, wt), - n[d](), - e.isPropagationStopped() && f.removeEventListener(d, wt), - (S.event.triggered = void 0), - a && (n[u] = a))), - e.result - ); - } - }, - simulate: function (e, t, n) { - var r = S.extend(new S.Event(), n, { type: e, isSimulated: !0 }); - S.event.trigger(r, null, t); - }, - }), - S.fn.extend({ - trigger: function (e, t) { - return this.each(function () { - S.event.trigger(e, t, this); - }); - }, - triggerHandler: function (e, t) { - var n = this[0]; - if (n) return S.event.trigger(e, t, n, !0); - }, - }), - v.focusin || - S.each({ focus: 'focusin', blur: 'focusout' }, function (n, r) { - var i = function (e) { - S.event.simulate(r, e.target, S.event.fix(e)); - }; - S.event.special[r] = { - setup: function () { - var e = this.ownerDocument || this.document || this, - t = Y.access(e, r); - t || e.addEventListener(n, i, !0), Y.access(e, r, (t || 0) + 1); - }, - teardown: function () { - var e = this.ownerDocument || this.document || this, - t = Y.access(e, r) - 1; - t - ? Y.access(e, r, t) - : (e.removeEventListener(n, i, !0), Y.remove(e, r)); - }, - }; - }); - var Tt = C.location, - Ct = { guid: Date.now() }, - Et = /\?/; - S.parseXML = function (e) { - var t, n; - if (!e || 'string' != typeof e) return null; - try { - t = new C.DOMParser().parseFromString(e, 'text/xml'); - } catch (e) {} - return ( - (n = t && t.getElementsByTagName('parsererror')[0]), - (t && !n) || - S.error( - 'Invalid XML: ' + - (n - ? S.map(n.childNodes, function (e) { - return e.textContent; - }).join('\n') - : e), - ), - t - ); - }; - var St = /\[\]$/, - kt = /\r?\n/g, - At = /^(?:submit|button|image|reset|file)$/i, - Nt = /^(?:input|select|textarea|keygen)/i; - function jt(n, e, r, i) { - var t; - if (Array.isArray(e)) - S.each(e, function (e, t) { - r || St.test(n) - ? i(n, t) - : jt( - n + '[' + ('object' == typeof t && null != t ? e : '') + ']', - t, - r, - i, - ); - }); - else if (r || 'object' !== w(e)) i(n, e); - else for (t in e) jt(n + '[' + t + ']', e[t], r, i); - } - (S.param = function (e, t) { - var n, - r = [], - i = function (e, t) { - var n = m(t) ? t() : t; - r[r.length] = - encodeURIComponent(e) + '=' + encodeURIComponent(null == n ? '' : n); - }; - if (null == e) return ''; - if (Array.isArray(e) || (e.jquery && !S.isPlainObject(e))) - S.each(e, function () { - i(this.name, this.value); - }); - else for (n in e) jt(n, e[n], t, i); - return r.join('&'); - }), - S.fn.extend({ - serialize: function () { - return S.param(this.serializeArray()); - }, - serializeArray: function () { - return this.map(function () { - var e = S.prop(this, 'elements'); - return e ? S.makeArray(e) : this; - }) - .filter(function () { - var e = this.type; - return ( - this.name && - !S(this).is(':disabled') && - Nt.test(this.nodeName) && - !At.test(e) && - (this.checked || !pe.test(e)) - ); - }) - .map(function (e, t) { - var n = S(this).val(); - return null == n - ? null - : Array.isArray(n) - ? S.map(n, function (e) { - return { name: t.name, value: e.replace(kt, '\r\n') }; - }) - : { name: t.name, value: n.replace(kt, '\r\n') }; - }) - .get(); - }, - }); - var Dt = /%20/g, - qt = /#.*$/, - Lt = /([?&])_=[^&]*/, - Ht = /^(.*?):[ \t]*([^\r\n]*)$/gm, - Ot = /^(?:GET|HEAD)$/, - Pt = /^\/\//, - Rt = {}, - Mt = {}, - It = '*/'.concat('*'), - Wt = E.createElement('a'); - function Ft(o) { - return function (e, t) { - 'string' != typeof e && ((t = e), (e = '*')); - var n, - r = 0, - i = e.toLowerCase().match(P) || []; - if (m(t)) - while ((n = i[r++])) - '+' === n[0] - ? ((n = n.slice(1) || '*'), (o[n] = o[n] || []).unshift(t)) - : (o[n] = o[n] || []).push(t); - }; - } - function $t(t, i, o, a) { - var s = {}, - u = t === Mt; - function l(e) { - var r; - return ( - (s[e] = !0), - S.each(t[e] || [], function (e, t) { - var n = t(i, o, a); - return 'string' != typeof n || u || s[n] - ? u - ? !(r = n) - : void 0 - : (i.dataTypes.unshift(n), l(n), !1); - }), - r - ); - } - return l(i.dataTypes[0]) || (!s['*'] && l('*')); - } - function Bt(e, t) { - var n, - r, - i = S.ajaxSettings.flatOptions || {}; - for (n in t) void 0 !== t[n] && ((i[n] ? e : r || (r = {}))[n] = t[n]); - return r && S.extend(!0, e, r), e; - } - (Wt.href = Tt.href), - S.extend({ - active: 0, - lastModified: {}, - etag: {}, - ajaxSettings: { - url: Tt.href, - type: 'GET', - isLocal: - /^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test( - Tt.protocol, - ), - global: !0, - processData: !0, - async: !0, - contentType: 'application/x-www-form-urlencoded; charset=UTF-8', - accepts: { - '*': It, - text: 'text/plain', - html: 'text/html', - xml: 'application/xml, text/xml', - json: 'application/json, text/javascript', - }, - contents: { xml: /\bxml\b/, html: /\bhtml/, json: /\bjson\b/ }, - responseFields: { - xml: 'responseXML', - text: 'responseText', - json: 'responseJSON', - }, - converters: { - '* text': String, - 'text html': !0, - 'text json': JSON.parse, - 'text xml': S.parseXML, - }, - flatOptions: { url: !0, context: !0 }, - }, - ajaxSetup: function (e, t) { - return t ? Bt(Bt(e, S.ajaxSettings), t) : Bt(S.ajaxSettings, e); - }, - ajaxPrefilter: Ft(Rt), - ajaxTransport: Ft(Mt), - ajax: function (e, t) { - 'object' == typeof e && ((t = e), (e = void 0)), (t = t || {}); - var c, - f, - p, - n, - d, - r, - h, - g, - i, - o, - y = S.ajaxSetup({}, t), - v = y.context || y, - m = y.context && (v.nodeType || v.jquery) ? S(v) : S.event, - x = S.Deferred(), - b = S.Callbacks('once memory'), - w = y.statusCode || {}, - a = {}, - s = {}, - u = 'canceled', - T = { - readyState: 0, - getResponseHeader: function (e) { - var t; - if (h) { - if (!n) { - n = {}; - while ((t = Ht.exec(p))) - n[t[1].toLowerCase() + ' '] = ( - n[t[1].toLowerCase() + ' '] || [] - ).concat(t[2]); - } - t = n[e.toLowerCase() + ' ']; - } - return null == t ? null : t.join(', '); - }, - getAllResponseHeaders: function () { - return h ? p : null; - }, - setRequestHeader: function (e, t) { - return ( - null == h && - ((e = s[e.toLowerCase()] = s[e.toLowerCase()] || e), - (a[e] = t)), - this - ); - }, - overrideMimeType: function (e) { - return null == h && (y.mimeType = e), this; - }, - statusCode: function (e) { - var t; - if (e) - if (h) T.always(e[T.status]); - else for (t in e) w[t] = [w[t], e[t]]; - return this; - }, - abort: function (e) { - var t = e || u; - return c && c.abort(t), l(0, t), this; - }, - }; - if ( - (x.promise(T), - (y.url = ((e || y.url || Tt.href) + '').replace( - Pt, - Tt.protocol + '//', - )), - (y.type = t.method || t.type || y.method || y.type), - (y.dataTypes = (y.dataType || '*').toLowerCase().match(P) || ['']), - null == y.crossDomain) - ) { - r = E.createElement('a'); - try { - (r.href = y.url), - (r.href = r.href), - (y.crossDomain = - Wt.protocol + '//' + Wt.host != r.protocol + '//' + r.host); - } catch (e) { - y.crossDomain = !0; - } - } - if ( - (y.data && - y.processData && - 'string' != typeof y.data && - (y.data = S.param(y.data, y.traditional)), - $t(Rt, y, t, T), - h) - ) - return T; - for (i in ((g = S.event && y.global) && - 0 == S.active++ && - S.event.trigger('ajaxStart'), - (y.type = y.type.toUpperCase()), - (y.hasContent = !Ot.test(y.type)), - (f = y.url.replace(qt, '')), - y.hasContent - ? y.data && - y.processData && - 0 === - (y.contentType || '').indexOf( - 'application/x-www-form-urlencoded', - ) && - (y.data = y.data.replace(Dt, '+')) - : ((o = y.url.slice(f.length)), - y.data && - (y.processData || 'string' == typeof y.data) && - ((f += (Et.test(f) ? '&' : '?') + y.data), delete y.data), - !1 === y.cache && - ((f = f.replace(Lt, '$1')), - (o = (Et.test(f) ? '&' : '?') + '_=' + Ct.guid++ + o)), - (y.url = f + o)), - y.ifModified && - (S.lastModified[f] && - T.setRequestHeader('If-Modified-Since', S.lastModified[f]), - S.etag[f] && T.setRequestHeader('If-None-Match', S.etag[f])), - ((y.data && y.hasContent && !1 !== y.contentType) || t.contentType) && - T.setRequestHeader('Content-Type', y.contentType), - T.setRequestHeader( - 'Accept', - y.dataTypes[0] && y.accepts[y.dataTypes[0]] - ? y.accepts[y.dataTypes[0]] + - ('*' !== y.dataTypes[0] ? ', ' + It + '; q=0.01' : '') - : y.accepts['*'], - ), - y.headers)) - T.setRequestHeader(i, y.headers[i]); - if (y.beforeSend && (!1 === y.beforeSend.call(v, T, y) || h)) - return T.abort(); - if ( - ((u = 'abort'), - b.add(y.complete), - T.done(y.success), - T.fail(y.error), - (c = $t(Mt, y, t, T))) - ) { - if (((T.readyState = 1), g && m.trigger('ajaxSend', [T, y]), h)) - return T; - y.async && - 0 < y.timeout && - (d = C.setTimeout(function () { - T.abort('timeout'); - }, y.timeout)); - try { - (h = !1), c.send(a, l); - } catch (e) { - if (h) throw e; - l(-1, e); - } - } else l(-1, 'No Transport'); - function l(e, t, n, r) { - var i, - o, - a, - s, - u, - l = t; - h || - ((h = !0), - d && C.clearTimeout(d), - (c = void 0), - (p = r || ''), - (T.readyState = 0 < e ? 4 : 0), - (i = (200 <= e && e < 300) || 304 === e), - n && - (s = (function (e, t, n) { - var r, - i, - o, - a, - s = e.contents, - u = e.dataTypes; - while ('*' === u[0]) - u.shift(), - void 0 === r && - (r = e.mimeType || t.getResponseHeader('Content-Type')); - if (r) - for (i in s) - if (s[i] && s[i].test(r)) { - u.unshift(i); - break; - } - if (u[0] in n) o = u[0]; - else { - for (i in n) { - if (!u[0] || e.converters[i + ' ' + u[0]]) { - o = i; - break; - } - a || (a = i); - } - o = o || a; - } - if (o) return o !== u[0] && u.unshift(o), n[o]; - })(y, T, n)), - !i && - -1 < S.inArray('script', y.dataTypes) && - S.inArray('json', y.dataTypes) < 0 && - (y.converters['text script'] = function () {}), - (s = (function (e, t, n, r) { - var i, - o, - a, - s, - u, - l = {}, - c = e.dataTypes.slice(); - if (c[1]) - for (a in e.converters) l[a.toLowerCase()] = e.converters[a]; - o = c.shift(); - while (o) - if ( - (e.responseFields[o] && (n[e.responseFields[o]] = t), - !u && r && e.dataFilter && (t = e.dataFilter(t, e.dataType)), - (u = o), - (o = c.shift())) - ) - if ('*' === o) o = u; - else if ('*' !== u && u !== o) { - if (!(a = l[u + ' ' + o] || l['* ' + o])) - for (i in l) - if ( - (s = i.split(' '))[1] === o && - (a = l[u + ' ' + s[0]] || l['* ' + s[0]]) - ) { - !0 === a - ? (a = l[i]) - : !0 !== l[i] && ((o = s[0]), c.unshift(s[1])); - break; - } - if (!0 !== a) - if (a && e['throws']) t = a(t); - else - try { - t = a(t); - } catch (e) { - return { - state: 'parsererror', - error: a - ? e - : 'No conversion from ' + u + ' to ' + o, - }; - } - } - return { state: 'success', data: t }; - })(y, s, T, i)), - i - ? (y.ifModified && - ((u = T.getResponseHeader('Last-Modified')) && - (S.lastModified[f] = u), - (u = T.getResponseHeader('etag')) && (S.etag[f] = u)), - 204 === e || 'HEAD' === y.type - ? (l = 'nocontent') - : 304 === e - ? (l = 'notmodified') - : ((l = s.state), (o = s.data), (i = !(a = s.error)))) - : ((a = l), (!e && l) || ((l = 'error'), e < 0 && (e = 0))), - (T.status = e), - (T.statusText = (t || l) + ''), - i ? x.resolveWith(v, [o, l, T]) : x.rejectWith(v, [T, l, a]), - T.statusCode(w), - (w = void 0), - g && m.trigger(i ? 'ajaxSuccess' : 'ajaxError', [T, y, i ? o : a]), - b.fireWith(v, [T, l]), - g && - (m.trigger('ajaxComplete', [T, y]), - --S.active || S.event.trigger('ajaxStop'))); - } - return T; - }, - getJSON: function (e, t, n) { - return S.get(e, t, n, 'json'); - }, - getScript: function (e, t) { - return S.get(e, void 0, t, 'script'); - }, - }), - S.each(['get', 'post'], function (e, i) { - S[i] = function (e, t, n, r) { - return ( - m(t) && ((r = r || n), (n = t), (t = void 0)), - S.ajax( - S.extend( - { url: e, type: i, dataType: r, data: t, success: n }, - S.isPlainObject(e) && e, - ), - ) - ); - }; - }), - S.ajaxPrefilter(function (e) { - var t; - for (t in e.headers) - 'content-type' === t.toLowerCase() && - (e.contentType = e.headers[t] || ''); - }), - (S._evalUrl = function (e, t, n) { - return S.ajax({ - url: e, - type: 'GET', - dataType: 'script', - cache: !0, - async: !1, - global: !1, - converters: { 'text script': function () {} }, - dataFilter: function (e) { - S.globalEval(e, t, n); - }, - }); - }), - S.fn.extend({ - wrapAll: function (e) { - var t; - return ( - this[0] && - (m(e) && (e = e.call(this[0])), - (t = S(e, this[0].ownerDocument).eq(0).clone(!0)), - this[0].parentNode && t.insertBefore(this[0]), - t - .map(function () { - var e = this; - while (e.firstElementChild) e = e.firstElementChild; - return e; - }) - .append(this)), - this - ); - }, - wrapInner: function (n) { - return m(n) - ? this.each(function (e) { - S(this).wrapInner(n.call(this, e)); - }) - : this.each(function () { - var e = S(this), - t = e.contents(); - t.length ? t.wrapAll(n) : e.append(n); - }); - }, - wrap: function (t) { - var n = m(t); - return this.each(function (e) { - S(this).wrapAll(n ? t.call(this, e) : t); - }); - }, - unwrap: function (e) { - return ( - this.parent(e) - .not('body') - .each(function () { - S(this).replaceWith(this.childNodes); - }), - this - ); - }, - }), - (S.expr.pseudos.hidden = function (e) { - return !S.expr.pseudos.visible(e); - }), - (S.expr.pseudos.visible = function (e) { - return !!(e.offsetWidth || e.offsetHeight || e.getClientRects().length); - }), - (S.ajaxSettings.xhr = function () { - try { - return new C.XMLHttpRequest(); - } catch (e) {} - }); - var _t = { 0: 200, 1223: 204 }, - zt = S.ajaxSettings.xhr(); - (v.cors = !!zt && 'withCredentials' in zt), - (v.ajax = zt = !!zt), - S.ajaxTransport(function (i) { - var o, a; - if (v.cors || (zt && !i.crossDomain)) - return { - send: function (e, t) { - var n, - r = i.xhr(); - if ( - (r.open(i.type, i.url, i.async, i.username, i.password), - i.xhrFields) - ) - for (n in i.xhrFields) r[n] = i.xhrFields[n]; - for (n in (i.mimeType && - r.overrideMimeType && - r.overrideMimeType(i.mimeType), - i.crossDomain || - e['X-Requested-With'] || - (e['X-Requested-With'] = 'XMLHttpRequest'), - e)) - r.setRequestHeader(n, e[n]); - (o = function (e) { - return function () { - o && - ((o = - a = - r.onload = - r.onerror = - r.onabort = - r.ontimeout = - r.onreadystatechange = - null), - 'abort' === e - ? r.abort() - : 'error' === e - ? 'number' != typeof r.status - ? t(0, 'error') - : t(r.status, r.statusText) - : t( - _t[r.status] || r.status, - r.statusText, - 'text' !== (r.responseType || 'text') || - 'string' != typeof r.responseText - ? { binary: r.response } - : { text: r.responseText }, - r.getAllResponseHeaders(), - )); - }; - }), - (r.onload = o()), - (a = r.onerror = r.ontimeout = o('error')), - void 0 !== r.onabort - ? (r.onabort = a) - : (r.onreadystatechange = function () { - 4 === r.readyState && - C.setTimeout(function () { - o && a(); - }); - }), - (o = o('abort')); - try { - r.send((i.hasContent && i.data) || null); - } catch (e) { - if (o) throw e; - } - }, - abort: function () { - o && o(); - }, - }; - }), - S.ajaxPrefilter(function (e) { - e.crossDomain && (e.contents.script = !1); - }), - S.ajaxSetup({ - accepts: { - script: - 'text/javascript, application/javascript, application/ecmascript, application/x-ecmascript', - }, - contents: { script: /\b(?:java|ecma)script\b/ }, - converters: { - 'text script': function (e) { - return S.globalEval(e), e; - }, - }, - }), - S.ajaxPrefilter('script', function (e) { - void 0 === e.cache && (e.cache = !1), e.crossDomain && (e.type = 'GET'); - }), - S.ajaxTransport('script', function (n) { - var r, i; - if (n.crossDomain || n.scriptAttrs) - return { - send: function (e, t) { - (r = S('