vendor: 4,982 bytes, lines 1-156
1/*! @license DOMPurify 3.4.14 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.4.14/LICENSE */ 2function We(r, i) { 3 (i == null || i > r.length) && (i = r.length); 4 for (var s = 0, c = Array(i); s < i; s++) c[s] = r[s]; 5 return c; 6} 7function Fn(r) { 8 if (Array.isArray(r)) return r; 9} 10function zn(r, i) { 11 var s = r == null ? null : typeof Symbol < "u" && r[Symbol.iterator] || r["@@iterator"]; 12 if (s != null) { 13 var c, f, d, y, st = [], N = !0, lt = !1; 14 try { 15 if (d = (s = s.call(r)).next, i !== 0) for (; !(N = (c = d.call(s)).done) && (st.push(c.value), st.length !== i); N = !0) ; 16 } catch (xt) { 17 lt = !0, f = xt; 18 } finally { 19 try { 20 if (!N && s.return != null && (y = s.return(), Object(y) !== y)) return; 21 } finally { 22 if (lt) throw f; 23 } 24 } 25 return st; 26 } 27} 28function Hn() { 29 throw new TypeError(`Invalid attempt to destructure non-iterable instance. 30In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`); 31} 32function Gn(r, i) { 33 return Fn(r) || zn(r, i) || Wn(r, i) || Hn(); 34} 35function Wn(r, i) { 36 if (r) { 37 if (typeof r == "string") return We(r, i); 38 var s = {}.toString.call(r).slice(8, -1); 39 return s === "Object" && r.constructor && (s = r.constructor.name), s === "Map" || s === "Set" ? Array.from(r) : s === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(s) ? We(r, i) : void 0; 40 } 41} 42const on = Object.entries, Be = Object.setPrototypeOf, Bn = Object.isFrozen, Yn = Object.getPrototypeOf, jn = Object.getOwnPropertyDescriptor; 43let S = Object.freeze, b = Object.seal, it = Object.create, rn = typeof Reflect < "u" && Reflect, se = rn.apply, le = rn.construct; 44S || (S = function(i) { 45 return i; 46}); 47b || (b = function(i) { 48 return i; 49}); 50se || (se = function(i, s) { 51 for (var c = arguments.length, f = new Array(c > 2 ? c - 2 : 0), d = 2; d < c; d++) 52 f[d - 2] = arguments[d]; 53 return i.apply(s, f); 54}); 55le || (le = function(i) { 56 for (var s = arguments.length, c = new Array(s > 1 ? s - 1 : 0), f = 1; f < s; f++) 57 c[f - 1] = arguments[f]; 58 return new i(...c); 59}); 60const V = A(Array.prototype.forEach), $n = A(Array.prototype.lastIndexOf), Ye = A(Array.prototype.pop), dt = A(Array.prototype.push), Xn = A(Array.prototype.splice), at = Array.isArray, _t = A(String.prototype.toLowerCase), ee = A(String.prototype.toString), je = A(String.prototype.match), Tt = A(String.prototype.replace), $e = A(String.prototype.indexOf), Vn = A(String.prototype.trim), qn = A(Number.prototype.toString), Kn = A(Boolean.prototype.toString), Xe = typeof BigInt > "u" ? null : A(BigInt.prototype.toString), Ve = typeof Symbol > "u" ? null : A(Symbol.prototype.toString), I = A(Object.prototype.hasOwnProperty), ht = A(Object.prototype.toString), O = A(RegExp.prototype.test), X = Zn(TypeError); 61function A(r) { 62 return function(i) { 63 i instanceof RegExp && (i.lastIndex = 0); 64 for (var s = arguments.length, c = new Array(s > 1 ? s - 1 : 0), f = 1; f < s; f++) 65 c[f - 1] = arguments[f]; 66 return se(r, i, c); 67 }; 68} 69function Zn(r) { 70 return function() { 71 for (var i = arguments.length, s = new Array(i), c = 0; c < i; c++) 72 s[c] = arguments[c]; 73 return le(r, s); 74 }; 75} 76function p(r, i) { 77 let s = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : _t; 78 if (Be && Be(r, null), !at(i)) 79 return r; 80 let c = i.length; 81 for (; c--; ) { 82 let f = i[c]; 83 if (typeof f == "string") { 84 const d = s(f); 85 d !== f && (Bn(i) || (i[c] = d), f = d); 86 } 87 r[f] = !0; 88 } 89 return r; 90} 91function Jn(r) { 92 for (let i = 0; i < r.length; i++) 93 I(r, i) || (r[i] = null); 94 return r; 95} 96function C(r) { 97 const i = it(null); 98 for (const c of on(r)) { 99 var s = Gn(c, 2); 100 const f = s[0], d = s[1]; 101 I(r, f) && (at(d) ? i[f] = Jn(d) : d && typeof d == "object" && d.constructor === Object ? i[f] = C(d) : i[f] = d); 102 } 103 return i; 104} 105function Qn(r) { 106 switch (typeof r) { 107 case "string": 108 return r; 109 case "number": 110 return qn(r); 111 case "boolean": 112 return Kn(r); 113 case "bigint": 114 return Xe ? Xe(r) : "0"; 115 case "symbol": 116 return Ve ? Ve(r) : "Symbol()"; 117 case "undefined": 118 return ht(r); 119 case "function": 120 case "object": { 121 if (r === null) 122 return ht(r); 123 const i = r, s = P(i, "toString"); 124 if (typeof s == "function") { 125 const c = s(i); 126 return typeof c == "string" ? c : ht(c); 127 } 128 return ht(r); 129 } 130 default: 131 return ht(r); 132 } 133} 134function P(r, i) { 135 for (; r !== null; ) { 136 const c = jn(r, i); 137 if (c) { 138 if (c.get) 139 return A(c.get); 140 if (typeof c.value == "function") 141 return A(c.value); 142 } 143 r = Yn(r); 144 } 145 function s() { 146 return null; 147 } 148 return s; 149} 150function to(r) { 151 try { 152 return O(r, ""), !0; 153 } catch { 154 return !1; 155 } 156}
157const qe = S(["a", "abbr", "acronym", "address", "area", "article", "aside", "audio", "b", "bdi", "bdo", "big", "blink", "blockquote", "body", "br", "button", "canvas", "caption", "center", "cite", "code", "col", "colgroup", "content", "data", "datalist", "dd", "decorator", "del", "details", "dfn", "dialog", "dir", "div", "dl", "dt", "element", "em", "fieldset", "figcaption", "figure", "font", "footer", "form", "h1", "h2", "h3", "h4", "h5", "h6", "head", "header", "hgroup", "hr", "html", "i", "img", "input", "ins", "kbd", "label", "legend", "li", "main", "map", "mark", "marquee", "menu", "menuitem", "meter", "nav", "nobr", "ol", "optgroup", "option", "output", "p", "picture", "pre", "progress", "q", "rp", "rt", "ruby", "s", "samp", "search", "section", "select", "shadow", "slot", "small", "source", "spacer", "span", "strike", "strong", "style", "sub", "summary", "sup", "table", "tbody", "td", "template", "textarea", "tfoot", "th", "thead", "time", "tr", "track", "tt", "u", "ul", "var", "video", "wbr"]), ne = S(["svg", "a", "altglyph", "altglyphdef", "altglyphitem", "animatecolor", "animatemotion", "animatetransform", "circle", "clippath", "defs", "desc", "ellipse", "enterkeyhint", "exportparts", "filter", "font", "g", "glyph", "glyphref", "hkern", "image", "inputmode", "line", "lineargradient", "marker", "mask", "metadata", "mpath", "part", "path", "pattern", "polygon", "polyline", "radialgradient", "rect", "stop", "style", "switch", "symbol", "text", "textpath", "title", "tref", "tspan", "view", "vkern"]), oe = S(["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"]), eo = S(["animate", "color-profile", "cursor", "discard", "font-face", "font-face-format", "font-face-name", "font-face-src", "font-face-uri", "foreignobject", "hatch", "hatchpath", "mesh", "meshgradient", "meshpatch", "meshrow", "missing-glyph", "script", "set", "solidcolor", "unknown", "use"]), re = S(["math", "menclose", "merror", "mfenced", "mfrac", "mglyph", "mi", "mlabeledtr", "mmultiscripts", "mn", "mo", "mover", "mpadded", "mphantom", "mroot", "mrow", "ms", "mspace", "msqrt", "mstyle", "msub", "msup", "msubsup", "mtable", "mtd", "mtext", "mtr", "munder", "munderover", "mprescripts"]), no = S(["maction", "maligngroup", "malignmark", "mlongdiv", "mscarries", "mscarry", "msgroup", "mstack", "msline", "msrow", "semantics", "annotation", "annotation-xml", "mprescripts", "none"]), Ke = S(["#text"]), Ze = S(["accept", "action", "align", "alt", "autocapitalize", "autocomplete", "autopictureinpicture", "autoplay", "background", "bgcolor", "border", "capture", "cellpadding", "cellspacing", "checked", "cite", "class", "clear", "color", "cols", "colspan", "command", "commandfor", "controls", "controlslist", "coords", "crossorigin", "datetime", "decoding", "default", "dir", "disabled", "disablepictureinpicture", "disableremoteplayback", "download", "draggable", "enctype", "enterkeyhint", "exportparts", "face", "for", "headers", "height", "hidden", "high", "href", "hreflang", "id", "inert", "inputmode", "integrity", "ismap", "kind", "label", "lang", "list", "loading", "loop", "low", "max", "maxlength", "media", "method", "min", "minlength", "multiple", "muted", "name", "nonce", "noshade", "novalidate", "nowrap", "open", "optimum", "part", "pattern", "placeholder", "playsinline", "popover", "popovertarget", "popovertargetaction", "poster", "preload", "pubdate", "radiogroup", "readonly", "rel", "required", "rev", "reversed", "role", "rows", "rowspan", "spellcheck", "scope", "selected", "shape", "size", "sizes", "slot", "span", "srclang", "start", "src", "srcset", "step", "style", "summary", "tabindex", "title", "translate", "type", "usemap", "valign", "value", "width", "wrap", "xmlns"]), ie = S(["accent-height", "accumulate", "additive", "alignment-baseline", "amplitude", "ascent", "attributename", "attributetype", "azimuth", "basefrequency", "baseline-shift", "begin", "bias", "by", "class", "clip", "clippathunits", "clip-path", "clip-rule", "color", "color-interpolation", "color-interpolation-filters", "color-profile", "color-rendering", "cx", "cy", "d", "dx", "dy", "diffuseconstant", "direction", "dis
vendor: 31,463 bytes, lines 157-898
157play", "divisor", "dominant-baseline", "dur", "edgemode", "elevation", "end", "exponent", "fill", "fill-opacity", "fill-rule", "filter", "filterunits", "flood-color", "flood-opacity", "font-family", "font-size", "font-size-adjust", "font-stretch", "font-style", "font-variant", "font-weight", "fx", "fy", "g1", "g2", "glyph-name", "glyphref", "gradientunits", "gradienttransform", "height", "href", "id", "image-rendering", "in", "in2", "intercept", "k", "k1", "k2", "k3", "k4", "kerning", "keypoints", "keysplines", "keytimes", "lang", "lengthadjust", "letter-spacing", "kernelmatrix", "kernelunitlength", "lighting-color", "local", "marker-end", "marker-mid", "marker-start", "markerheight", "markerunits", "markerwidth", "maskcontentunits", "maskunits", "max", "mask", "mask-type", "media", "method", "mode", "min", "name", "numoctaves", "offset", "operator", "opacity", "order", "orient", "orientation", "origin", "overflow", "paint-order", "path", "pathlength", "patterncontentunits", "patterntransform", "patternunits", "pointer-events", "points", "preservealpha", "preserveaspectratio", "primitiveunits", "r", "rx", "ry", "radius", "refx", "refy", "repeatcount", "repeatdur", "restart", "result", "rotate", "scale", "seed", "shape-rendering", "slope", "specularconstant", "specularexponent", "spreadmethod", "startoffset", "stddeviation", "stitchtiles", "stop-color", "stop-opacity", "stroke-dasharray", "stroke-dashoffset", "stroke-linecap", "stroke-linejoin", "stroke-miterlimit", "stroke-opacity", "stroke", "stroke-width", "style", "surfacescale", "systemlanguage", "tabindex", "tablevalues", "targetx", "targety", "transform", "transform-origin", "text-anchor", "text-decoration", "text-orientation", "text-rendering", "textlength", "type", "u1", "u2", "unicode", "values", "vector-effect", "viewbox", "visibility", "version", "vert-adv-y", "vert-origin-x", "vert-origin-y", "width", "word-spacing", "wrap", "writing-mode", "xchannelselector", "ychannelselector", "x", "x1", "x2", "xmlns", "y", "y1", "y2", "z", "zoomandpan"]), Je = S(["accent", "accentunder", "align", "bevelled", "close", "columnalign", "columnlines", "columnspacing", "columnspan", "denomalign", "depth", "dir", "display", "displaystyle", "encoding", "fence", "frame", "height", "href", "id", "largeop", "length", "linethickness", "lquote", "lspace", "mathbackground", "mathcolor", "mathsize", "mathvariant", "maxsize", "minsize", "movablelimits", "notation", "numalign", "open", "rowalign", "rowlines", "rowspacing", "rowspan", "rspace", "rquote", "scriptlevel", "scriptminsize", "scriptsizemultiplier", "selection", "separator", "separators", "stretchy", "subscriptshift", "supscriptshift", "symmetric", "voffset", "width", "xmlns"]), Pt = S(["xlink:href", "xml:id", "xlink:title", "xml:space", "xmlns:xlink"]), oo = b(/{{[\w\W]*|^[\w\W]*}}/g), ro = b(/<%[\w\W]*|^[\w\W]*%>/g), io = b(/\${[\w\W]*/g), ao = b(/^data-[\-\w.\u00B7-\uFFFF]+$/), so = b(/^aria-[\-\w]+$/), Qe = b( 158 /^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i 159 // eslint-disable-line no-useless-escape 160), lo = b(/^(?:\w+script|data):/i), co = b( 161 /[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g 162 // eslint-disable-line no-control-regex 163), uo = b(/^html$/i), fo = b(/^[a-z][.\w]*(-[.\w]+)+$/i), tn = b(/<[/\w!]/g), en = b(/<[/\w]/g), po = b(/<\/no(script|embed|frames)/i), mo = b(/\/>/i), M = { 164 element: 1, 165 attribute: 2, 166 text: 3, 167 cdataSection: 4, 168 entityReference: 5, 169 // Deprecated 170 entityNode: 6, 171 // Deprecated 172 processingInstruction: 7, 173 comment: 8, 174 document: 9, 175 documentType: 10, 176 documentFragment: 11, 177 notation: 12 178 // Deprecated 179}, an = ["style", "script", "xmp", "iframe", "noembed", "noframes", "plaintext", "noscript"], To = S(p({}, an)), ho = (function() { 180 const r = {}; 181 return V(an, (i) => { 182 r[i] = b(new RegExp("</" + i + "(?=[\\t\\n\\f\\r />])", "i")); 183 }), S(r); 184})(), _o = function() { 185 return typeof window > "u" ? null : window; 186}, go = function(i, s) { 187 if (typeof i != "object" || typeof i.createPolicy != "function") 188 return null; 189 let c = null; 190 const f = "data-tt-policy-suffix"; 191 s && s.hasAttribute(f) && (c = s.getAttribute(f)); 192 const d = "dompurify" + (c ? "#" + c : ""); 193 try { 194 return i.createPolicy(d, { 195 createHTML(y) { 196 return y; 197 }, 198 createScriptURL(y) { 199 return y; 200 } 201 }); 202 } catch { 203 return console.warn("TrustedTypes policy " + d + " could not be created."), null; 204 } 205}, nn = function() { 206 return { 207 afterSanitizeAttributes: [], 208 afterSanitizeElements: [], 209 afterSanitizeShadowDOM: [], 210 beforeSanitizeAttributes: [], 211 beforeSanitizeElements: [], 212 beforeSanitizeShadowDOM: [], 213 uponSanitizeAttribute: [], 214 uponSanitizeElement: [], 215 uponSanitizeShadowNode: [] 216 }; 217}, H = function(i, s, c, f) { 218 return I(i, s) && at(i[s]) ? p(f.base ? C(f.base) : {}, i[s], f.transform) : c; 219}, ae = function(i, s, c) { 220 const f = I(i, s) ? i[s] : void 0; 221 return f && typeof f == "object" ? C(f) : c(); 222}; 223function sn() { 224 let r = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : _o(); 225 const i = (o) => sn(o); 226 if (i.version = "3.4.14", i.removed = [], !r || !r.document || r.document.nodeType !== M.document || !r.Element) 227 return i.isSupported = !1, i; 228 let s = r.document; 229 const c = s, f = c.currentScript; 230 r.DocumentFragment; 231 const d = r.HTMLTemplateElement, y = r.Node, st = r.Element, N = r.NodeFilter, lt = r.NamedNodeMap; 232 lt === void 0 && (r.NamedNodeMap || r.MozNamedAttrMap), r.HTMLFormElement; 233 const xt = r.DOMParser, gt = r.trustedTypes, G = st.prototype, ln = P(G, "cloneNode"), vt = P(G, "remove"), cn = P(G, "nextSibling"), q = P(G, "childNodes"), K = P(G, "parentNode"), ce = P(G, "shadowRoot"), kt = P(G, "attributes"), W = y && y.prototype ? P(y.prototype, "nodeType") : null, Z = y && y.prototype ? P(y.prototype, "nodeName") : null, Et = y && y.prototype ? P(y.prototype, "ownerDocument") : null, ct = function(t) { 234 return W ? W(t) : t.nodeType; 235 }, Ut = function(t) { 236 return Z ? Z(t) : t.nodeName; 237 }; 238 if (typeof d == "function") { 239 const o = s.createElement("template"); 240 o.content && o.content.ownerDocument && (s = o.content.ownerDocument); 241 } 242 let L, B = "", Ft, ue = !1, ut = 0; 243 const fe = function() { 244 if (ut > 0) 245 throw X('A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.'); 246 }, J = function(t) { 247 fe(), ut++; 248 try { 249 return L.createHTML(t); 250 } finally { 251 ut--; 252 } 253 }, un = function(t) { 254 fe(), ut++; 255 try { 256 return L.createScriptURL(t); 257 } finally { 258 ut--; 259 } 260 }, fn = function() { 261 return ue || (Ft = go(gt, f), ue = !0), Ft; 262 }, At = s, zt = At.implementation, pe = At.createNodeIterator, pn = At.createDocumentFragment, mn = At.getElementsByTagName, dn = c.importNode; 263 let T = nn(); 264 i.isSupported = typeof on == "function" && typeof K == "function" && zt && zt.createHTMLDocument !== void 0; 265 const Tn = oo, hn = ro, _n = io, gn = ao, En = so, An = lo, me = co, yn = fo; 266 let de = Qe, h = null; 267 const Ht = p({}, [...qe, ...ne, ...oe, ...re, ...Ke]); 268 let _ = null; 269 const Gt = p({}, [...Ze, ...ie, ...Je, ...Pt]); 270 let x = Object.seal(it(null, { 271 tagNameCheck: { 272 writable: !0, 273 configurable: !1, 274 enumerable: !0, 275 value: null 276 }, 277 attributeNameCheck: { 278 writable: !0, 279 configurable: !1, 280 enumerable: !0, 281 value: null 282 }, 283 allowCustomizedBuiltInElements: { 284 writable: !0, 285 configurable: !1, 286 enumerable: !0, 287 value: !1 288 } 289 })), ft = null, Te = null; 290 const U = Object.seal(it(null, { 291 tagCheck: { 292 writable: !0, 293 configurable: !1, 294 enumerable: !0, 295 value: null 296 }, 297 attributeCheck: { 298 writable: !0, 299 configurable: !1, 300 enumerable: !0, 301 value: null 302 } 303 })); 304 let he = !0, Wt = !0, _e = !1, ge = !0, F = !1, Y = !0, j = !1, Bt = !1, yt = null, St = null, Yt = !1, Q = !1, bt = !1, Ot = !1, Ee = !0, Ae = !1; 305 const ye = "user-content-"; 306 let jt = !0, $t = !1, tt = {}, et = null; 307 const Se = p({}, [ 308 "annotation-xml", 309 "audio", 310 "colgroup", 311 "desc", 312 "foreignobject", 313 "head", 314 "iframe", 315 "math", 316 "mi", 317 "mn", 318 "mo", 319 "ms", 320 "mtext", 321 "noembed", 322 "noframes", 323 "noscript", 324 "plaintext", 325 "script", 326 // <selectedcontent> mirrors the selected <option>'s subtree, cloned by 327 // the UA (customizable <select>) â including any on* handlers â and the 328 // engine re-mirrors synchronously whenever a removal changes which 329 // option/selectedcontent is current, even inside DOMPurify's inert 330 // DOMParser document. Hoisting its children on removal re-inserts a fresh 331 // mirror target ahead of the walk, which the engine refills, looping 332 // forever (DoS) and amplifying output. Dropping its content on removal 333 // (rather than hoisting) breaks that cascade; the content is a duplicate 334 // of the option, which is sanitized on its own. See campaign-3 F1/F6. 335 "selectedcontent", 336 "style", 337 "svg", 338 "template", 339 "thead", 340 "title", 341 "video", 342 "xmp" 343 ]); 344 let be = null; 345 const Oe = p({}, ["audio", "video", "img", "source", "image", "track"]); 346 let Re = null; 347 const Le = p({}, ["alt", "class", "for", "id", "label", "name", "pattern", "placeholder", "role", "summary", "title", "value", "style", "xmlns"]), Rt = "http://www.w3.org/1998/Math/MathML", Lt = "http://www.w3.org/2000/svg", v = "http://www.w3.org/1999/xhtml"; 348 let nt = v, Xt = !1, Vt = null; 349 const Sn = p({}, [Rt, Lt, v], ee), De = S(["mi", "mo", "mn", "ms", "mtext"]); 350 let qt = p({}, De); 351 const we = S(["annotation-xml"]); 352 let Kt = p({}, we); 353 const bn = p({}, ["title", "style", "font", "a", "script"]); 354 let pt = null; 355 const On = ["application/xhtml+xml", "text/html"], Rn = "text/html"; 356 let E = null, ot = null; 357 const Ln = s.createElement("form"), Ie = function(t) { 358 return t instanceof RegExp || t instanceof Function; 359 }, Zt = function() { 360 let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}; 361 if (ot && ot === t) 362 return; 363 (!t || typeof t != "object") && (t = {}), t = C(t), pt = // eslint-disable-next-line unicorn/prefer-includes 364 On.indexOf(t.PARSER_MEDIA_TYPE) === -1 ? Rn : t.PARSER_MEDIA_TYPE, E = pt === "application/xhtml+xml" ? ee : _t, h = H(t, "ALLOWED_TAGS", Ht, { 365 transform: E 366 }), _ = H(t, "ALLOWED_ATTR", Gt, { 367 transform: E 368 }), Vt = H(t, "ALLOWED_NAMESPACES", Sn, { 369 transform: ee 370 }), Re = H(t, "ADD_URI_SAFE_ATTR", Le, { 371 transform: E, 372 base: Le 373 }), be = H(t, "ADD_DATA_URI_TAGS", Oe, { 374 transform: E, 375 base: Oe 376 }), et = H(t, "FORBID_CONTENTS", Se, { 377 transform: E 378 }), ft = H(t, "FORBID_TAGS", C({}), { 379 transform: E 380 }), Te = H(t, "FORBID_ATTR", C({}), { 381 transform: E 382 }), tt = I(t, "USE_PROFILES") ? t.USE_PROFILES && typeof t.USE_PROFILES == "object" ? C(t.USE_PROFILES) : t.USE_PROFILES : !1, he = t.ALLOW_ARIA_ATTR !== !1, Wt = t.ALLOW_DATA_ATTR !== !1, _e = t.ALLOW_UNKNOWN_PROTOCOLS || !1, ge = t.ALLOW_SELF_CLOSE_IN_ATTR !== !1, F = t.SAFE_FOR_TEMPLATES || !1, Y = t.SAFE_FOR_XML !== !1, j = t.WHOLE_DOCUMENT || !1, Q = t.RETURN_DOM || !1, bt = t.RETURN_DOM_FRAGMENT || !1, Ot = t.RETURN_TRUSTED_TYPE || !1, Yt = t.FORCE_BODY || !1, Ee = t.SANITIZE_DOM !== !1, Ae = t.SANITIZE_NAMED_PROPS || !1, jt = t.KEEP_CONTENT !== !1, $t = t.IN_PLACE || !1, de = to(t.ALLOWED_URI_REGEXP) ? t.ALLOWED_URI_REGEXP : Qe, nt = typeof t.NAMESPACE == "string" ? t.NAMESPACE : v, qt = ae( 383 t, 384 "MATHML_TEXT_INTEGRATION_POINTS", 385 () => p({}, De) 386 // Default built-in map 387 ), Kt = ae( 388 t, 389 "HTML_INTEGRATION_POINTS", 390 () => p({}, we) 391 // Default built-in map 392 ); 393 const e = ae(t, "CUSTOM_ELEMENT_HANDLING", () => it(null)); 394 if (x = it(null), I(e, "tagNameCheck") && Ie(e.tagNameCheck) && (x.tagNameCheck = e.tagNameCheck), I(e, "attributeNameCheck") && Ie(e.attributeNameCheck) && (x.attributeNameCheck = e.attributeNameCheck), I(e, "allowCustomizedBuiltInElements") && typeof e.allowCustomizedBuiltInElements == "boolean" && (x.allowCustomizedBuiltInElements = e.allowCustomizedBuiltInElements), b(x), F && (Wt = !1), bt && (Q = !0), tt && (h = p({}, Ke), _ = it(null), tt.html === !0 && (p(h, qe), p(_, Ze)), tt.svg === !0 && (p(h, ne), p(_, ie), p(_, Pt)), tt.svgFilters === !0 && (p(h, oe), p(_, ie), p(_, Pt)), tt.mathMl === !0 && (p(h, re), p(_, Je), p(_, Pt))), U.tagCheck = null, U.attributeCheck = null, I(t, "ADD_TAGS") && (typeof t.ADD_TAGS == "function" ? U.tagCheck = t.ADD_TAGS : at(t.ADD_TAGS) && (h === Ht && (h = C(h)), p(h, t.ADD_TAGS, E))), I(t, "ADD_ATTR") && (typeof t.ADD_ATTR == "function" ? U.attributeCheck = t.ADD_ATTR : at(t.ADD_ATTR) && (_ === Gt && (_ = C(_)), p(_, t.ADD_ATTR, E))), I(t, "ADD_FORBID_CONTENTS") && at(t.ADD_FORBID_CONTENTS) && (et === Se && (et = C(et)), p(et, t.ADD_FORBID_CONTENTS, E)), jt && (h["#text"] = !0), j && p(h, ["html", "head", "body"]), h.table && (p(h, ["tbody"]), delete ft.tbody), t.TRUSTED_TYPES_POLICY) { 395 if (typeof t.TRUSTED_TYPES_POLICY.createHTML != "function") 396 throw X('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.'); 397 if (typeof t.TRUSTED_TYPES_POLICY.createScriptURL != "function") 398 throw X('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.'); 399 const n = L; 400 L = t.TRUSTED_TYPES_POLICY; 401 try { 402 B = J(""); 403 } catch (a) { 404 throw L = n, a; 405 } 406 } else t.TRUSTED_TYPES_POLICY === null ? (L = void 0, B = "") : (L === void 0 && (L = fn()), L && typeof B == "string" && (B = J(""))); 407 S && S(t), ot = t; 408 }, Ne = p({}, [...ne, ...oe, ...eo]), Me = p({}, [...re, ...no]), Dn = function(t, e, n) { 409 return e.namespaceURI === v ? t === "svg" : e.namespaceURI === Rt ? t === "svg" && (n === "annotation-xml" || qt[n]) : !!Ne[t]; 410 }, wn = function(t, e, n) { 411 return e.namespaceURI === v ? t === "math" : e.namespaceURI === Lt ? t === "math" && Kt[n] : !!Me[t]; 412 }, In = function(t, e, n) { 413 return e.namespaceURI === Lt && !Kt[n] || e.namespaceURI === Rt && !qt[n] ? !1 : !Me[t] && (bn[t] || !Ne[t]); 414 }, Nn = function(t) { 415 let e = K(t); 416 (!e || !e.tagName) && (e = { 417 namespaceURI: nt, 418 tagName: "template" 419 }); 420 const n = _t(t.tagName), a = _t(e.tagName); 421 return Vt[t.namespaceURI] ? t.namespaceURI === Lt ? Dn(n, e, a) : t.namespaceURI === Rt ? wn(n, e, a) : t.namespaceURI === v ? In(n, e, a) : !!(pt === "application/xhtml+xml" && Vt[t.namespaceURI]) : !1; 422 }, z = function(t) { 423 dt(i.removed, { 424 element: t 425 }); 426 try { 427 K(t).removeChild(t); 428 } catch { 429 if (vt(t), !K(t)) 430 throw X("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place"); 431 } 432 }, Ce = function(t, e, n) { 433 try { 434 t.removeAttributeNode(e); 435 } catch { 436 try { 437 t.removeAttribute(n); 438 } catch { 439 } 440 } 441 }, Dt = function(t) { 442 wt(t); 443 const e = q(t); 444 if (e) { 445 const a = []; 446 V(e, (l) => { 447 dt(a, l); 448 }), V(a, (l) => { 449 try { 450 vt(l); 451 } catch { 452 } 453 }); 454 } 455 const n = kt(t); 456 if (n) 457 for (let a = n.length - 1; a >= 0; --a) { 458 const l = n[a], u = l && l.name; 459 typeof u == "string" && Ce(t, l, u); 460 } 461 }, $ = function(t, e, n) { 462 if (!n) 463 try { 464 n = e.getAttributeNode(t); 465 } catch { 466 n = null; 467 } 468 dt(i.removed, { 469 attribute: n || null, 470 from: e 471 }); 472 try { 473 n ? e.removeAttributeNode(n) : e.removeAttribute(t); 474 } catch { 475 try { 476 e.removeAttribute(t); 477 } catch { 478 } 479 } 480 if (t === "is") 481 if (Q || bt) 482 try { 483 z(e); 484 } catch { 485 } 486 else 487 try { 488 e.setAttribute(t, ""); 489 } catch { 490 } 491 }, Mn = function(t) { 492 const e = kt(t); 493 if (e) 494 for (let n = e.length - 1; n >= 0; --n) { 495 const a = e[n], l = a && a.name; 496 typeof l != "string" || _[E(l)] || Ce(t, a, l); 497 } 498 }, wt = function(t) { 499 const e = [t]; 500 for (; e.length > 0; ) { 501 const n = e.pop(); 502 ct(n) === M.element && Mn(n); 503 const l = q(n); 504 if (l) 505 for (let u = l.length - 1; u >= 0; --u) 506 e.push(l[u]); 507 } 508 }, Pe = function(t, e) { 509 return Y ? t === "patchsrc" ? !0 : t === "for" && e !== "label" && e !== "output" : !1; 510 }, Cn = function(t) { 511 if (!Y) 512 return; 513 const e = [t]; 514 for (; e.length > 0; ) { 515 const n = e.pop(), a = ct(n); 516 if (a === M.processingInstruction || a === M.comment && O(en, n.data)) { 517 try { 518 vt(n); 519 } catch { 520 } 521 continue; 522 } 523 if (a === M.element) { 524 const u = n, m = E(Ut(n)); 525 try { 526 u.hasAttribute && u.hasAttribute("patchsrc") && u.removeAttribute("patchsrc"), u.hasAttribute && u.hasAttribute("for") && Pe("for", m) && u.removeAttribute("for"); 527 } catch { 528 } 529 } 530 const l = q(n); 531 if (l) 532 for (let u = l.length - 1; u >= 0; --u) 533 e.push(l[u]); 534 } 535 }, xe = function(t) { 536 let e = null, n = null; 537 if (Yt) 538 t = "<remove></remove>" + t; 539 else { 540 const u = je(t, /^[\r\n\t ]+/); 541 n = u && u[0]; 542 } 543 pt === "application/xhtml+xml" && nt === v && (t = '<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>' + t + "</body></html>"); 544 const a = L ? J(t) : t; 545 if (nt === v) 546 try { 547 e = new xt().parseFromString(a, pt); 548 } catch { 549 } 550 if (!e || !e.documentElement) { 551 e = zt.createDocument(nt, "template", null); 552 try { 553 e.documentElement.innerHTML = Xt ? B : a; 554 } catch { 555 } 556 } 557 const l = e.body || e.documentElement; 558 return t && n && l.insertBefore(s.createTextNode(n), l.childNodes[0] || null), nt === v ? mn.call(e, j ? "html" : "body")[0] : j ? e.documentElement : l; 559 }, ve = function(t) { 560 const e = Et ? Et(t) : t.ownerDocument; 561 return pe.call( 562 e || t, 563 t, 564 // eslint-disable-next-line no-bitwise 565 N.SHOW_ELEMENT | N.SHOW_COMMENT | N.SHOW_TEXT | N.SHOW_PROCESSING_INSTRUCTION | N.SHOW_CDATA_SECTION, 566 null 567 ); 568 }, It = function(t) { 569 return t = Tt(t, Tn, " "), t = Tt(t, hn, " "), t = Tt(t, _n, " "), t; 570 }, Jt = function(t) { 571 var e; 572 t.normalize(); 573 const n = Et ? Et(t) : t.ownerDocument, a = pe.call( 574 n || t, 575 t, 576 // eslint-disable-next-line no-bitwise 577 N.SHOW_TEXT | N.SHOW_COMMENT | N.SHOW_CDATA_SECTION | N.SHOW_PROCESSING_INSTRUCTION, 578 null 579 ); 580 let l = a.nextNode(); 581 for (; l; ) 582 l.data = It(l.data), l = a.nextNode(); 583 const u = (e = t.querySelectorAll) === null || e === void 0 ? void 0 : e.call(t, "template"); 584 u && V(u, (m) => { 585 rt(m.content) && Jt(m.content); 586 }); 587 }, Nt = function(t) { 588 const e = Z ? Z(t) : null; 589 return typeof e != "string" || E(e) !== "form" ? !1 : typeof t.nodeName != "string" || typeof t.textContent != "string" || typeof t.removeChild != "function" || // Realm-safe NamedNodeMap detection: equality against the cached 590 // prototype getter. Clobbered .attributes (e.g. <input name="attributes">) 591 // makes the direct read diverge from the cached read; a clean form 592 // (same-realm OR foreign-realm) has both reads pointing at the same 593 // canonical NamedNodeMap. 594 t.attributes !== kt(t) || typeof t.removeAttribute != "function" || typeof t.setAttribute != "function" || typeof t.namespaceURI != "string" || typeof t.insertBefore != "function" || typeof t.hasChildNodes != "function" || // NodeType clobbering probe. Cached Node.prototype.nodeType getter 595 // returns the integer 1 for any Element regardless of realm; direct 596 // read on a clobbered form (e.g. <input name="nodeType">) returns 597 // the named child element. Cheap addition â nodeType is read from 598 // an internal slot, no serialization cost â and removes a residual 599 // clobbering surface used by several mXSS / PI / comment branches 600 // in _sanitizeElements that compare currentNode.nodeType directly. 601 t.nodeType !== W(t) || // HTMLFormElement has [LegacyOverrideBuiltIns]: a descendant named 602 // "childNodes" shadows the prototype getter. Direct reads of 603 // form.childNodes from a clobbered form return the named child 604 // instead of the real NodeList, so any walk that reads it directly 605 // skips the form's real children. Compare the direct read to the 606 // cached Node.prototype getter â when the form's named-property 607 // getter intercepts the read, the two values differ and we flag 608 // the form. This catches every clobbering child type (input, 609 // select, etc.) regardless of whether the named child happens to 610 // carry a numeric .length, which a typeof-based probe would miss 611 // (e.g. HTMLSelectElement.length is a defined unsigned-long). 612 t.childNodes !== q(t); 613 }, rt = function(t) { 614 if (!W || typeof t != "object" || t === null) 615 return !1; 616 try { 617 return W(t) === M.documentFragment; 618 } catch { 619 return !1; 620 } 621 }, mt = function(t) { 622 if (!W || typeof t != "object" || t === null) 623 return !1; 624 try { 625 return typeof W(t) == "number"; 626 } catch { 627 return !1; 628 } 629 }; 630 function k(o, t, e) { 631 o.length !== 0 && V(o, (n) => { 632 n.call(i, t, e, ot); 633 }); 634 } 635 const Pn = function(t, e) { 636 return !!(Y && t.hasChildNodes() && !mt(t.firstElementChild) && O(tn, t.textContent) && O(tn, t.innerHTML) || Y && t.namespaceURI === v && To[e] && (mt(t.firstElementChild) || typeof t.textContent == "string" && O(ho[e], t.textContent)) || t.nodeType === M.processingInstruction || Y && t.nodeType === M.comment && O(en, t.data)); 637 }, Mt = function(t, e) { 638 if (t instanceof RegExp) 639 return O(t, e); 640 if (t instanceof Function) { 641 for (var n = arguments.length, a = new Array(n > 2 ? n - 2 : 0), l = 2; l < n; l++) 642 a[l - 2] = arguments[l]; 643 return !!t(e, ...a); 644 } 645 return !1; 646 }, xn = function(t, e, n) { 647 if (!ft[e] && He(e) && Mt(x.tagNameCheck, e)) 648 return !1; 649 if (jt && !et[e]) { 650 const a = K(t), l = q(t); 651 if (l && a) { 652 const u = l.length; 653 for (let m = u - 1; m >= 0; --m) { 654 const g = t === n ? ln(l[m], !0) : l[m]; 655 a.insertBefore(g, cn(t)); 656 } 657 } 658 } 659 return z(t), !0; 660 }, ke = function(t, e, n, a) { 661 return t.length === 0 ? e : e === n || e === a ? C(e) : e; 662 }, Ue = function(t, e) { 663 return t === e || K(t) !== null ? !1 : ($t && wt(t), !0); 664 }, Fe = function(t, e) { 665 if (k(T.beforeSanitizeElements, t, null), Ue(t, e)) 666 return !0; 667 if (Nt(t)) 668 return z(t), !0; 669 const n = E(Ut(t)); 670 if (h = ke(T.uponSanitizeElement, h, Ht, yt), k(T.uponSanitizeElement, t, { 671 tagName: n, 672 allowedTags: h 673 }), Ue(t, e)) 674 return !0; 675 if (Pn(t, n)) 676 return z(t), !0; 677 if (ft[n] || !(U.tagCheck instanceof Function && U.tagCheck(n)) && !h[n]) { 678 const l = xn(t, n, e); 679 return l === !1 && k(T.afterSanitizeElements, t, null), l; 680 } 681 if (ct(t) === M.element && !Nn(t) || (n === "noscript" || n === "noembed" || n === "noframes") && O(po, t.innerHTML)) 682 return z(t), !0; 683 if (F && t.nodeType === M.text) { 684 const l = It(t.textContent); 685 t.textContent !== l && (dt(i.removed, { 686 element: t.cloneNode() 687 }), t.textContent = l); 688 } 689 return k(T.afterSanitizeElements, t, null), !1; 690 }, ze = function(t, e, n) { 691 if (Te[e] || Pe(e, t) || Ee && (e === "id" || e === "name") && (n in s || n in Ln)) 692 return !1; 693 const a = _[e] || U.attributeCheck instanceof Function && U.attributeCheck(e, t); 694 return Wt && O(gn, e) || he && O(En, e) ? !0 : a ? Re[e] || O(de, Tt(n, me, "")) || (e === "src" || e === "xlink:href" || e === "href") && t !== "script" && $e(n, "data:") === 0 && be[t] || _e && !O(An, Tt(n, me, "")) ? !0 : !n : ( 695 // Condition a) covers a basically valid custom element tag name whose 696 // tag passes the configured tagNameCheck and whose attribute name 697 // passes the configured attributeNameCheck ... 698 He(t) && Mt(x.tagNameCheck, t) && Mt(x.attributeNameCheck, e, t) || // Condition b) covers an `is` attribute whose value passes the 699 // configured tagNameCheck while customized built-in elements are 700 // allowed. 701 e === "is" && x.allowCustomizedBuiltInElements && Mt(x.tagNameCheck, n) 702 ); 703 }, vn = p({}, ["annotation-xml", "color-profile", "font-face", "font-face-format", "font-face-name", "font-face-src", "font-face-uri", "missing-glyph"]), He = function(t) { 704 return !vn[_t(t)] && O(yn, t); 705 }, kn = function(t, e, n, a) { 706 if (L && typeof gt == "object" && typeof gt.getAttributeType == "function" && !n) 707 switch (gt.getAttributeType(t, e)) { 708 case "TrustedHTML": 709 return J(a); 710 case "TrustedScriptURL": 711 return un(a); 712 } 713 return a; 714 }, Un = function(t, e, n, a) { 715 try { 716 n ? t.setAttributeNS(n, e, a) : t.setAttribute(e, a), Nt(t) ? z(t) : Ye(i.removed); 717 } catch { 718 $(e, t); 719 } 720 }, Ge = function(t) { 721 k(T.beforeSanitizeAttributes, t, null); 722 const e = t.attributes; 723 if (!e || Nt(t)) 724 return; 725 _ = ke(T.uponSanitizeAttribute, _, Gt, St); 726 const n = { 727 attrName: "", 728 attrValue: "", 729 keepAttr: !0, 730 allowedAttributes: _, 731 forceKeepAttr: void 0 732 }; 733 let a = e.length; 734 const l = E(t.nodeName); 735 for (; a--; ) { 736 const u = e[a], m = u.name, g = u.namespaceURI, D = u.value, w = E(m), te = D; 737 let R = m === "value" ? te : Vn(te); 738 if (n.attrName = w, n.attrValue = R, n.keepAttr = !0, n.forceKeepAttr = void 0, k(T.uponSanitizeAttribute, t, n), R = n.attrValue, Ae && (w === "id" || w === "name") && $e(R, ye) !== 0 && ($(m, t, u), R = ye + R), Y && O(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i, R)) { 739 $(m, t, u); 740 continue; 741 } 742 if (w === "attributename" && je(R, "href")) { 743 $(m, t, u); 744 continue; 745 } 746 if (!n.forceKeepAttr) { 747 if (!n.keepAttr) { 748 $(m, t, u); 749 continue; 750 } 751 if (!ge && O(mo, R)) { 752 $(m, t, u); 753 continue; 754 } 755 if (F && (R = It(R)), !ze(l, w, R)) { 756 $(m, t, u); 757 continue; 758 } 759 R = kn(l, w, g, R), R !== te && Un(t, m, g, R); 760 } 761 } 762 k(T.afterSanitizeAttributes, t, null); 763 }, Ct = function(t) { 764 let e = null; 765 const n = ve(t); 766 for (k(T.beforeSanitizeShadowDOM, t, null); e = n.nextNode(); ) 767 if (k(T.uponSanitizeShadowNode, e, null), Fe(e, t), Ge(e), rt(e.content) && Ct(e.content), ct(e) === M.element) { 768 const a = ce(e); 769 rt(a) && (Qt(a), Ct(a)); 770 } 771 k(T.afterSanitizeShadowDOM, t, null); 772 }, Qt = function(t) { 773 const e = [{ 774 node: t, 775 shadow: null 776 }]; 777 for (; e.length > 0; ) { 778 const n = e.pop(); 779 if (n.shadow) { 780 Ct(n.shadow); 781 continue; 782 } 783 const a = n.node, u = ct(a) === M.element, m = q(a); 784 if (m) 785 for (let g = m.length - 1; g >= 0; --g) 786 e.push({ 787 node: m[g], 788 shadow: null 789 }); 790 if (u) { 791 const g = Z ? Z(a) : null; 792 if (typeof g == "string" && E(g) === "template") { 793 const D = a.content; 794 rt(D) && e.push({ 795 node: D, 796 shadow: null 797 }); 798 } 799 } 800 if (u) { 801 const g = ce(a); 802 rt(g) && e.push({ 803 node: null, 804 shadow: g 805 }, { 806 node: g, 807 shadow: null 808 }); 809 } 810 } 811 }; 812 return i.sanitize = function(o) { 813 let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, e = null, n = null, a = null, l = null; 814 if (Xt = !o, Xt && (o = "<!-->"), typeof o != "string" && !mt(o) && (o = Qn(o), typeof o != "string")) 815 throw X("dirty is not a string, aborting"); 816 if (!i.isSupported) 817 return o; 818 Bt ? (h = yt, _ = St) : Zt(t), (T.uponSanitizeElement.length > 0 || T.uponSanitizeAttribute.length > 0) && (h = C(h)), T.uponSanitizeAttribute.length > 0 && (_ = C(_)), i.removed = []; 819 const u = $t && typeof o != "string" && mt(o); 820 if (u) { 821 Cn(o); 822 const D = Ut(o); 823 if (typeof D == "string") { 824 const w = E(D); 825 if (!h[w] || ft[w]) 826 throw Dt(o), X("root node is forbidden and cannot be sanitized in-place"); 827 } 828 if (Nt(o)) 829 throw Dt(o), X("root node is clobbered and cannot be sanitized in-place"); 830 try { 831 Qt(o); 832 } catch (w) { 833 throw Dt(o), w; 834 } 835 } else if (mt(o)) 836 e = xe("<!---->"), n = e.ownerDocument.importNode(o, !0), n.nodeType === M.element && n.nodeName === "BODY" || n.nodeName === "HTML" ? e = n : e.appendChild(n), Qt(n); 837 else { 838 if (!Q && !F && !j && // eslint-disable-next-line unicorn/prefer-includes 839 o.indexOf("<") === -1) 840 return L && Ot ? J(o) : o; 841 if (e = xe(o), !e) 842 return Q ? null : Ot ? B : ""; 843 } 844 e && Yt && z(e.firstChild); 845 const m = u ? o : e; 846 try { 847 const D = ve(m); 848 for (; a = D.nextNode(); ) 849 Fe(a, m), Ge(a), rt(a.content) && Ct(a.content); 850 } catch (D) { 851 throw u && (Dt(o), V(i.removed, (w) => { 852 w.element && wt(w.element); 853 })), D; 854 } 855 if (u) 856 return V(i.removed, (D) => { 857 D.element && wt(D.element); 858 }), F && Jt(o), o; 859 if (Q) { 860 if (F && Jt(e), bt) 861 for (l = pn.call(e.ownerDocument); e.firstChild; ) 862 l.appendChild(e.firstChild); 863 else 864 l = e; 865 return (_.shadowroot || _.shadowrootmode) && (l = dn.call(c, l, !0)), l; 866 } 867 let g = j ? e.outerHTML : e.innerHTML; 868 return j && h["!doctype"] && e.ownerDocument && e.ownerDocument.doctype && e.ownerDocument.doctype.name && O(uo, e.ownerDocument.doctype.name) && (g = "<!DOCTYPE " + e.ownerDocument.doctype.name + `> 869` + g), F && (g = It(g)), L && Ot ? J(g) : g; 870 }, i.setConfig = function() { 871 let o = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}; 872 Zt(o), Bt = !0, yt = h, St = _; 873 }, i.clearConfig = function() { 874 ot = null, Bt = !1, yt = null, St = null, L = Ft, B = ""; 875 }, i.isValidAttribute = function(o, t, e) { 876 ot || Zt({}); 877 const n = E(o), a = E(t); 878 return ze(n, a, e); 879 }, i.addHook = function(o, t) { 880 typeof t == "function" && I(T, o) && dt(T[o], t); 881 }, i.removeHook = function(o, t) { 882 if (I(T, o)) { 883 if (t !== void 0) { 884 const e = $n(T[o], t); 885 return e === -1 ? void 0 : Xn(T[o], e, 1)[0]; 886 } 887 return Ye(T[o]); 888 } 889 }, i.removeHooks = function(o) { 890 I(T, o) && (T[o] = []); 891 }, i.removeAllHooks = function() { 892 T = nn(); 893 }, i; 894} 895var Eo = sn(); 896export { 897 Eo as default 898};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.