@juspay/svelte-ui-components 4.11.4 → 4.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist-wc/index.js CHANGED
@@ -32662,7 +32662,7 @@ function Y(e, t) {
32662
32662
  for (; i < n.length; i++) n[i] = n[i].trim().replace(m.slashPipe, "|");
32663
32663
  return n;
32664
32664
  }
32665
- function $(e, t, n) {
32665
+ function $$1(e, t, n) {
32666
32666
  let i = e.length;
32667
32667
  if (i === 0) return "";
32668
32668
  let a = 0;
@@ -32911,12 +32911,12 @@ var T, _, Te, m, Oe, we, ye, B, Pe, j, oe, ae, Se, F, $e, U, Le, _e, H, K, ze, l
32911
32911
  if (t) {
32912
32912
  let e = t[2].trim();
32913
32913
  if (this.rules.other.endingHash.test(e)) {
32914
- let t = $(e, "#");
32914
+ let t = $$1(e, "#");
32915
32915
  (this.options.pedantic || !t || this.rules.other.endingSpaceChar.test(t)) && (e = t.trim());
32916
32916
  }
32917
32917
  return {
32918
32918
  type: "heading",
32919
- raw: $(t[0], "\n"),
32919
+ raw: $$1(t[0], "\n"),
32920
32920
  depth: t[1].length,
32921
32921
  text: e,
32922
32922
  tokens: this.lexer.inline(e)
@@ -32927,13 +32927,13 @@ var T, _, Te, m, Oe, we, ye, B, Pe, j, oe, ae, Se, F, $e, U, Le, _e, H, K, ze, l
32927
32927
  let t = this.rules.block.hr.exec(e);
32928
32928
  if (t) return {
32929
32929
  type: "hr",
32930
- raw: $(t[0], "\n")
32930
+ raw: $$1(t[0], "\n")
32931
32931
  };
32932
32932
  }
32933
32933
  blockquote(e) {
32934
32934
  let t = this.rules.block.blockquote.exec(e);
32935
32935
  if (t) {
32936
- let e = $(t[0], "\n").split("\n"), n = "", i = "", a = [];
32936
+ let e = $$1(t[0], "\n").split("\n"), n = "", i = "", a = [];
32937
32937
  for (; e.length > 0;) {
32938
32938
  let t = !1, o = [], s;
32939
32939
  for (s = 0; s < e.length; s++) if (this.rules.other.blockquoteStart.test(e[s])) o.push(e[s]), t = !0;
@@ -33066,7 +33066,7 @@ ${l}` : l;
33066
33066
  return {
33067
33067
  type: "def",
33068
33068
  tag: e,
33069
- raw: $(t[0], "\n"),
33069
+ raw: $$1(t[0], "\n"),
33070
33070
  href: n,
33071
33071
  title: i
33072
33072
  };
@@ -33077,7 +33077,7 @@ ${l}` : l;
33077
33077
  if (!t || !this.rules.other.tableDelimiter.test(t[2])) return;
33078
33078
  let n = Y(t[1]), i = t[2].replace(this.rules.other.tableAlignChars, "").split("|"), a = t[3]?.trim() ? t[3].replace(this.rules.other.tableRowBlankLine, "").split("\n") : [], o = {
33079
33079
  type: "table",
33080
- raw: $(t[0], "\n"),
33080
+ raw: $$1(t[0], "\n"),
33081
33081
  header: [],
33082
33082
  align: [],
33083
33083
  rows: []
@@ -33105,7 +33105,7 @@ ${l}` : l;
33105
33105
  let e = t[1].trim();
33106
33106
  return {
33107
33107
  type: "heading",
33108
- raw: $(t[0], "\n"),
33108
+ raw: $$1(t[0], "\n"),
33109
33109
  depth: t[2].charAt(0) === "=" ? 1 : 2,
33110
33110
  text: e,
33111
33111
  tokens: this.lexer.inline(e)
@@ -33158,7 +33158,7 @@ ${l}` : l;
33158
33158
  let e = t[2].trim();
33159
33159
  if (!this.options.pedantic && this.rules.other.startAngleBracket.test(e)) {
33160
33160
  if (!this.rules.other.endAngleBracket.test(e)) return;
33161
- let t = $(e.slice(0, -1), "\\");
33161
+ let t = $$1(e.slice(0, -1), "\\");
33162
33162
  if ((e.length - t.length) % 2 == 0) return;
33163
33163
  } else {
33164
33164
  let e = fe(t[2], "()");
@@ -34051,6 +34051,4657 @@ ${e}</tr>
34051
34051
  }, g.walkTokens = function(e, t) {
34052
34052
  return z.walkTokens(e, t);
34053
34053
  }, g.parseInline = z.parseInline, g.Parser = b, g.parser = b.parse, g.Renderer = y, g.TextRenderer = L, g.Lexer = x, g.lexer = x.lex, g.Tokenizer = w, g.Hooks = P, g.parse = g, g.options, g.setOptions, g.use, g.walkTokens, g.parseInline, b.parse, x.lex;
34054
+ }));
34055
+ //#endregion
34056
+ //#region node_modules/.pnpm/parse5@8.0.1/node_modules/parse5/dist/common/unicode.js
34057
+ function isSurrogate(e) {
34058
+ return e >= 55296 && e <= 57343;
34059
+ }
34060
+ function isSurrogatePair(e) {
34061
+ return e >= 56320 && e <= 57343;
34062
+ }
34063
+ function getSurrogatePairCodePoint(e, t) {
34064
+ return (e - 55296) * 1024 + 9216 + t;
34065
+ }
34066
+ function isControlCodePoint(e) {
34067
+ return e !== 32 && e !== 10 && e !== 13 && e !== 9 && e !== 12 && e >= 1 && e <= 31 || e >= 127 && e <= 159;
34068
+ }
34069
+ function isUndefinedCodePoint(e) {
34070
+ return e >= 64976 && e <= 65007 || UNDEFINED_CODE_POINTS.has(e);
34071
+ }
34072
+ var UNDEFINED_CODE_POINTS, REPLACEMENT_CHARACTER, CODE_POINTS, SEQUENCES, init_unicode = __esmMin((() => {
34073
+ UNDEFINED_CODE_POINTS = new Set([
34074
+ 65534,
34075
+ 65535,
34076
+ 131070,
34077
+ 131071,
34078
+ 196606,
34079
+ 196607,
34080
+ 262142,
34081
+ 262143,
34082
+ 327678,
34083
+ 327679,
34084
+ 393214,
34085
+ 393215,
34086
+ 458750,
34087
+ 458751,
34088
+ 524286,
34089
+ 524287,
34090
+ 589822,
34091
+ 589823,
34092
+ 655358,
34093
+ 655359,
34094
+ 720894,
34095
+ 720895,
34096
+ 786430,
34097
+ 786431,
34098
+ 851966,
34099
+ 851967,
34100
+ 917502,
34101
+ 917503,
34102
+ 983038,
34103
+ 983039,
34104
+ 1048574,
34105
+ 1048575,
34106
+ 1114110,
34107
+ 1114111
34108
+ ]), (function(e) {
34109
+ e[e.EOF = -1] = "EOF", e[e.NULL = 0] = "NULL", e[e.TABULATION = 9] = "TABULATION", e[e.CARRIAGE_RETURN = 13] = "CARRIAGE_RETURN", e[e.LINE_FEED = 10] = "LINE_FEED", e[e.FORM_FEED = 12] = "FORM_FEED", e[e.SPACE = 32] = "SPACE", e[e.EXCLAMATION_MARK = 33] = "EXCLAMATION_MARK", e[e.QUOTATION_MARK = 34] = "QUOTATION_MARK", e[e.AMPERSAND = 38] = "AMPERSAND", e[e.APOSTROPHE = 39] = "APOSTROPHE", e[e.HYPHEN_MINUS = 45] = "HYPHEN_MINUS", e[e.SOLIDUS = 47] = "SOLIDUS", e[e.DIGIT_0 = 48] = "DIGIT_0", e[e.DIGIT_9 = 57] = "DIGIT_9", e[e.SEMICOLON = 59] = "SEMICOLON", e[e.LESS_THAN_SIGN = 60] = "LESS_THAN_SIGN", e[e.EQUALS_SIGN = 61] = "EQUALS_SIGN", e[e.GREATER_THAN_SIGN = 62] = "GREATER_THAN_SIGN", e[e.QUESTION_MARK = 63] = "QUESTION_MARK", e[e.LATIN_CAPITAL_A = 65] = "LATIN_CAPITAL_A", e[e.LATIN_CAPITAL_Z = 90] = "LATIN_CAPITAL_Z", e[e.RIGHT_SQUARE_BRACKET = 93] = "RIGHT_SQUARE_BRACKET", e[e.GRAVE_ACCENT = 96] = "GRAVE_ACCENT", e[e.LATIN_SMALL_A = 97] = "LATIN_SMALL_A", e[e.LATIN_SMALL_Z = 122] = "LATIN_SMALL_Z";
34110
+ })(CODE_POINTS ||= {}), SEQUENCES = {
34111
+ DASH_DASH: "--",
34112
+ CDATA_START: "[CDATA[",
34113
+ DOCTYPE: "doctype",
34114
+ SCRIPT: "script",
34115
+ PUBLIC: "public",
34116
+ SYSTEM: "system"
34117
+ };
34118
+ })), ERR, init_error_codes = __esmMin((() => {
34119
+ (function(e) {
34120
+ e.controlCharacterInInputStream = "control-character-in-input-stream", e.noncharacterInInputStream = "noncharacter-in-input-stream", e.surrogateInInputStream = "surrogate-in-input-stream", e.nonVoidHtmlElementStartTagWithTrailingSolidus = "non-void-html-element-start-tag-with-trailing-solidus", e.endTagWithAttributes = "end-tag-with-attributes", e.endTagWithTrailingSolidus = "end-tag-with-trailing-solidus", e.unexpectedSolidusInTag = "unexpected-solidus-in-tag", e.unexpectedNullCharacter = "unexpected-null-character", e.unexpectedQuestionMarkInsteadOfTagName = "unexpected-question-mark-instead-of-tag-name", e.invalidFirstCharacterOfTagName = "invalid-first-character-of-tag-name", e.unexpectedEqualsSignBeforeAttributeName = "unexpected-equals-sign-before-attribute-name", e.missingEndTagName = "missing-end-tag-name", e.unexpectedCharacterInAttributeName = "unexpected-character-in-attribute-name", e.unknownNamedCharacterReference = "unknown-named-character-reference", e.missingSemicolonAfterCharacterReference = "missing-semicolon-after-character-reference", e.unexpectedCharacterAfterDoctypeSystemIdentifier = "unexpected-character-after-doctype-system-identifier", e.unexpectedCharacterInUnquotedAttributeValue = "unexpected-character-in-unquoted-attribute-value", e.eofBeforeTagName = "eof-before-tag-name", e.eofInTag = "eof-in-tag", e.missingAttributeValue = "missing-attribute-value", e.missingWhitespaceBetweenAttributes = "missing-whitespace-between-attributes", e.missingWhitespaceAfterDoctypePublicKeyword = "missing-whitespace-after-doctype-public-keyword", e.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers = "missing-whitespace-between-doctype-public-and-system-identifiers", e.missingWhitespaceAfterDoctypeSystemKeyword = "missing-whitespace-after-doctype-system-keyword", e.missingQuoteBeforeDoctypePublicIdentifier = "missing-quote-before-doctype-public-identifier", e.missingQuoteBeforeDoctypeSystemIdentifier = "missing-quote-before-doctype-system-identifier", e.missingDoctypePublicIdentifier = "missing-doctype-public-identifier", e.missingDoctypeSystemIdentifier = "missing-doctype-system-identifier", e.abruptDoctypePublicIdentifier = "abrupt-doctype-public-identifier", e.abruptDoctypeSystemIdentifier = "abrupt-doctype-system-identifier", e.cdataInHtmlContent = "cdata-in-html-content", e.incorrectlyOpenedComment = "incorrectly-opened-comment", e.eofInScriptHtmlCommentLikeText = "eof-in-script-html-comment-like-text", e.eofInDoctype = "eof-in-doctype", e.nestedComment = "nested-comment", e.abruptClosingOfEmptyComment = "abrupt-closing-of-empty-comment", e.eofInComment = "eof-in-comment", e.incorrectlyClosedComment = "incorrectly-closed-comment", e.eofInCdata = "eof-in-cdata", e.absenceOfDigitsInNumericCharacterReference = "absence-of-digits-in-numeric-character-reference", e.nullCharacterReference = "null-character-reference", e.surrogateCharacterReference = "surrogate-character-reference", e.characterReferenceOutsideUnicodeRange = "character-reference-outside-unicode-range", e.controlCharacterReference = "control-character-reference", e.noncharacterCharacterReference = "noncharacter-character-reference", e.missingWhitespaceBeforeDoctypeName = "missing-whitespace-before-doctype-name", e.missingDoctypeName = "missing-doctype-name", e.invalidCharacterSequenceAfterDoctypeName = "invalid-character-sequence-after-doctype-name", e.duplicateAttribute = "duplicate-attribute", e.nonConformingDoctype = "non-conforming-doctype", e.missingDoctype = "missing-doctype", e.misplacedDoctype = "misplaced-doctype", e.endTagWithoutMatchingOpenElement = "end-tag-without-matching-open-element", e.closingOfElementWithOpenChildElements = "closing-of-element-with-open-child-elements", e.disallowedContentInNoscriptInHead = "disallowed-content-in-noscript-in-head", e.openElementsLeftAfterEof = "open-elements-left-after-eof", e.abandonedHeadElementChild = "abandoned-head-element-child", e.misplacedStartTagForHeadElement = "misplaced-start-tag-for-head-element", e.nestedNoscriptInHead = "nested-noscript-in-head", e.eofInElementThatCanContainOnlyText = "eof-in-element-that-can-contain-only-text";
34121
+ })(ERR ||= {});
34122
+ })), DEFAULT_BUFFER_WATERLINE, Preprocessor, init_preprocessor = __esmMin((() => {
34123
+ init_unicode(), init_error_codes(), DEFAULT_BUFFER_WATERLINE = 65536, Preprocessor = class {
34124
+ constructor(e) {
34125
+ this.handler = e, this.html = "", this.pos = -1, this.lastGapPos = -2, this.gapStack = [], this.skipNextNewLine = !1, this.lastChunkWritten = !1, this.endOfChunkHit = !1, this.bufferWaterline = DEFAULT_BUFFER_WATERLINE, this.isEol = !1, this.lineStartPos = 0, this.droppedBufferSize = 0, this.line = 1, this.lastErrOffset = -1;
34126
+ }
34127
+ get col() {
34128
+ return this.pos - this.lineStartPos + Number(this.lastGapPos !== this.pos);
34129
+ }
34130
+ get offset() {
34131
+ return this.droppedBufferSize + this.pos;
34132
+ }
34133
+ getError(e, t) {
34134
+ let { line: n, col: i, offset: a } = this, o = i + t, s = a + t;
34135
+ return {
34136
+ code: e,
34137
+ startLine: n,
34138
+ endLine: n,
34139
+ startCol: o,
34140
+ endCol: o,
34141
+ startOffset: s,
34142
+ endOffset: s
34143
+ };
34144
+ }
34145
+ _err(e) {
34146
+ this.handler.onParseError && this.lastErrOffset !== this.offset && (this.lastErrOffset = this.offset, this.handler.onParseError(this.getError(e, 0)));
34147
+ }
34148
+ _addGap() {
34149
+ this.gapStack.push(this.lastGapPos), this.lastGapPos = this.pos;
34150
+ }
34151
+ _processSurrogate(e) {
34152
+ if (this.pos !== this.html.length - 1) {
34153
+ let t = this.html.charCodeAt(this.pos + 1);
34154
+ if (isSurrogatePair(t)) return this.pos++, this._addGap(), getSurrogatePairCodePoint(e, t);
34155
+ } else if (!this.lastChunkWritten) return this.endOfChunkHit = !0, CODE_POINTS.EOF;
34156
+ return this._err(ERR.surrogateInInputStream), e;
34157
+ }
34158
+ willDropParsedChunk() {
34159
+ return this.pos > this.bufferWaterline;
34160
+ }
34161
+ dropParsedChunk() {
34162
+ this.willDropParsedChunk() && (this.html = this.html.substring(this.pos), this.lineStartPos -= this.pos, this.droppedBufferSize += this.pos, this.pos = 0, this.lastGapPos = -2, this.gapStack.length = 0);
34163
+ }
34164
+ write(e, t) {
34165
+ this.html.length > 0 ? this.html += e : this.html = e, this.endOfChunkHit = !1, this.lastChunkWritten = t;
34166
+ }
34167
+ insertHtmlAtCurrentPos(e) {
34168
+ this.html = this.html.substring(0, this.pos + 1) + e + this.html.substring(this.pos + 1), this.endOfChunkHit = !1;
34169
+ }
34170
+ startsWith(e, t) {
34171
+ if (this.pos + e.length > this.html.length) return this.endOfChunkHit = !this.lastChunkWritten, !1;
34172
+ if (t) return this.html.startsWith(e, this.pos);
34173
+ for (let t = 0; t < e.length; t++) if ((this.html.charCodeAt(this.pos + t) | 32) !== e.charCodeAt(t)) return !1;
34174
+ return !0;
34175
+ }
34176
+ peek(e) {
34177
+ let t = this.pos + e;
34178
+ if (t >= this.html.length) return this.endOfChunkHit = !this.lastChunkWritten, CODE_POINTS.EOF;
34179
+ let n = this.html.charCodeAt(t);
34180
+ return n === CODE_POINTS.CARRIAGE_RETURN ? CODE_POINTS.LINE_FEED : n;
34181
+ }
34182
+ advance() {
34183
+ if (this.pos++, this.isEol && (this.isEol = !1, this.line++, this.lineStartPos = this.pos), this.pos >= this.html.length) return this.endOfChunkHit = !this.lastChunkWritten, CODE_POINTS.EOF;
34184
+ let e = this.html.charCodeAt(this.pos);
34185
+ return e === CODE_POINTS.CARRIAGE_RETURN ? (this.isEol = !0, this.skipNextNewLine = !0, CODE_POINTS.LINE_FEED) : e === CODE_POINTS.LINE_FEED && (this.isEol = !0, this.skipNextNewLine) ? (this.line--, this.skipNextNewLine = !1, this._addGap(), this.advance()) : (this.skipNextNewLine = !1, isSurrogate(e) && (e = this._processSurrogate(e)), this.handler.onParseError === null || e > 31 && e < 127 || e === CODE_POINTS.LINE_FEED || e === CODE_POINTS.CARRIAGE_RETURN || e > 159 && e < 64976 || this._checkForProblematicCharacters(e), e);
34186
+ }
34187
+ _checkForProblematicCharacters(e) {
34188
+ isControlCodePoint(e) ? this._err(ERR.controlCharacterInInputStream) : isUndefinedCodePoint(e) && this._err(ERR.noncharacterInInputStream);
34189
+ }
34190
+ retreat(e) {
34191
+ for (this.pos -= e; this.pos < this.lastGapPos;) this.lastGapPos = this.gapStack.pop(), this.pos--;
34192
+ this.isEol = !1;
34193
+ }
34194
+ };
34195
+ }));
34196
+ //#endregion
34197
+ //#region node_modules/.pnpm/parse5@8.0.1/node_modules/parse5/dist/common/token.js
34198
+ function getTokenAttr(e, t) {
34199
+ for (let n = e.attrs.length - 1; n >= 0; n--) if (e.attrs[n].name === t) return e.attrs[n].value;
34200
+ return null;
34201
+ }
34202
+ var TokenType, init_token = __esmMin((() => {
34203
+ (function(e) {
34204
+ e[e.CHARACTER = 0] = "CHARACTER", e[e.NULL_CHARACTER = 1] = "NULL_CHARACTER", e[e.WHITESPACE_CHARACTER = 2] = "WHITESPACE_CHARACTER", e[e.START_TAG = 3] = "START_TAG", e[e.END_TAG = 4] = "END_TAG", e[e.COMMENT = 5] = "COMMENT", e[e.DOCTYPE = 6] = "DOCTYPE", e[e.EOF = 7] = "EOF", e[e.HIBERNATION = 8] = "HIBERNATION";
34205
+ })(TokenType ||= {});
34206
+ }));
34207
+ //#endregion
34208
+ //#region node_modules/.pnpm/entities@8.0.0/node_modules/entities/dist/decode-codepoint.js
34209
+ function replaceCodePoint(e) {
34210
+ return e >= 55296 && e <= 57343 || e > 1114111 ? 65533 : decodeMap.get(e) ?? e;
34211
+ }
34212
+ var decodeMap, init_decode_codepoint = __esmMin((() => {
34213
+ decodeMap = new Map([
34214
+ [0, 65533],
34215
+ [128, 8364],
34216
+ [130, 8218],
34217
+ [131, 402],
34218
+ [132, 8222],
34219
+ [133, 8230],
34220
+ [134, 8224],
34221
+ [135, 8225],
34222
+ [136, 710],
34223
+ [137, 8240],
34224
+ [138, 352],
34225
+ [139, 8249],
34226
+ [140, 338],
34227
+ [142, 381],
34228
+ [145, 8216],
34229
+ [146, 8217],
34230
+ [147, 8220],
34231
+ [148, 8221],
34232
+ [149, 8226],
34233
+ [150, 8211],
34234
+ [151, 8212],
34235
+ [152, 732],
34236
+ [153, 8482],
34237
+ [154, 353],
34238
+ [155, 8250],
34239
+ [156, 339],
34240
+ [158, 382],
34241
+ [159, 376]
34242
+ ]);
34243
+ }));
34244
+ //#endregion
34245
+ //#region node_modules/.pnpm/entities@8.0.0/node_modules/entities/dist/internal/decode-shared.js
34246
+ function decodeBase64(e) {
34247
+ let t = atob(e), n = t.length & -2, i = new Uint16Array(n / 2);
34248
+ for (let e = 0, a = 0; e < n; e += 2) {
34249
+ let n = t.charCodeAt(e), o = t.charCodeAt(e + 1);
34250
+ i[a++] = n | o << 8;
34251
+ }
34252
+ return i;
34253
+ }
34254
+ var init_decode_shared = __esmMin((() => {})), htmlDecodeTree, init_decode_data_html = __esmMin((() => {
34255
+ init_decode_shared(), htmlDecodeTree = /* #__PURE__ */ decodeBase64("QR08ALkAAgH6AYsDNQR2BO0EPgXZBQEGLAbdBxMISQrvCmQLfQurDKQNLw4fD4YPpA+6D/IPAAAAAAAAAAAAAAAAKhBMEY8TmxUWF2EYLBkxGuAa3RsJHDscWR8YIC8jSCSIJcMl6ie3Ku8rEC0CLjoupS7kLgAIRU1hYmNmZ2xtbm9wcnN0dVQAWgBeAGUAaQBzAHcAfgCBAIQAhwCSAJoAoACsALMAbABpAGcAO4DGAMZAUAA7gCYAJkBjAHUAdABlADuAwQDBQHIiZXZlAAJhAAFpeW0AcgByAGMAO4DCAMJAEGRyAADgNdgE3XIAYQB2AGUAO4DAAMBA8CFoYZFj4SFjcgBhZAAAoFMqAAFncIsAjgBvAG4ABGFmAADgNdg43fAlbHlGdW5jdGlvbgCgYSBpAG4AZwA7gMUAxUAAAWNzpACoAHIAAOA12Jzc6SFnbgCgVCJpAGwAZABlADuAwwDDQG0AbAA7gMQAxEAABGFjZWZvcnN1xQDYANoA7QDxAPYA+QD8AAABY3LJAM8AayNzbGFzaAAAoBYidgHTANUAAKDnKmUAZAAAoAYjeQARZIABY3J0AOAA5QDrAGEidXNlAACgNSLuI291bGxpcwCgLCFhAJJjcgAA4DXYBd1wAGYAAOA12Dnd5SF2ZdhiYwDyAOoAbSJwZXEAAKBOIgAHSE9hY2RlZmhpbG9yc3UXARoBHwE6AVIBVQFiAWQBZgGCAakB6QHtAfIBYwB5ACdkUABZADuAqQCpQIABY3B5ACUBKAE1AfUhdGUGYWmg0iJ0KGFsRGlmZmVyZW50aWFsRAAAoEUhbCJleXMAAKAtIQACYWVpb0EBRAFKAU0B8iFvbgxhZABpAGwAO4DHAMdAcgBjAAhhbiJpbnQAAKAwIm8AdAAKYQABZG5ZAV0BaSJsbGEAuGB0I2VyRG90ALdg8gA5AWkAp2NyImNsZQAAAkRNUFRwAXQBeQF9AW8AdAAAoJkiaSJudXMAAKCWIuwhdXMAoJUiaSJtZXMAAKCXIm8AAAFjc4cBlAFrKndpc2VDb250b3VySW50ZWdyYWwAAKAyImUjQ3VybHkAAAFEUZwBpAFvJXVibGVRdW90ZQAAoB0gdSJvdGUAAKAZIAACbG5wdbABtgHNAdgBbwBuAGWgNyIAoHQqgAFnaXQAvAHBAcUB8iJ1ZW50AKBhIm4AdAAAoC8i7yV1ckludGVncmFsAKAuIgABZnLRAdMBAKACIe8iZHVjdACgECJuLnRlckNsb2Nrd2lzZUNvbnRvdXJJbnRlZ3JhbAAAoDMi7yFzcwCgLypjAHIAAOA12J7ccABDoNMiYQBwAACgTSKABURKU1phY2VmaW9zAAsCEgIVAhgCGwIsAjQCOQI9AnMCfwNvoEUh9CJyYWhkAKARKWMAeQACZGMAeQAFZGMAeQAPZIABZ3JzACECJQIoAuchZXIAoCEgcgAAoKEhaAB2AACg5CoAAWF5MAIzAvIhb24OYRRkbAB0oAciYQCUY3IAAOA12AfdAAFhZkECawIAAWNtRQJnAvIjaXRpY2FsAAJBREdUUAJUAl8CYwJjInV0ZQC0YG8AdAFZAloC2WJiJGxlQWN1dGUA3WJyImF2ZQBgYGkibGRlANxi7yFuZACgxCJmJWVyZW50aWFsRAAAoEYhcAR9AgAAAAAAAIECjgIAABoDZgAA4DXYO91EoagAhQKJAm8AdAAAoNwgcSJ1YWwAAKBQIuIhbGUAA0NETFJVVpkCqAK1Au8C/wIRA28AbgB0AG8AdQByAEkAbgB0AGUAZwByAGEA7ADEAW8AdAKvAgAAAACwAqhgbiNBcnJvdwAAoNMhAAFlb7kC0AJmAHQAgAFBUlQAwQLGAs0CciJyb3cAAKDQIekkZ2h0QXJyb3cAoNQhZQDlACsCbgBnAAABTFLWAugC5SFmdAABQVLcAuECciJyb3cAAKD4J+kkZ2h0QXJyb3cAoPon6SRnaHRBcnJvdwCg+SdpImdodAAAAUFU9gL7AnIicm93AACg0iFlAGUAAKCoInAAQQIGAwAAAAALA3Iicm93AACg0SFvJHduQXJyb3cAAKDVIWUlcnRpY2FsQmFyAACgJSJuAAADQUJMUlRhJAM2AzoDWgNxA3oDciJyb3cAAKGTIUJVLAMwA2EAcgAAoBMpcCNBcnJvdwAAoPUhciJldmUAEWPlIWZ00gJDAwAASwMAAFIDaSVnaHRWZWN0b3IAAKBQKWUkZVZlY3RvcgAAoF4p5SJjdG9yQqC9IWEAcgAAoFYpaSJnaHQA1AFiAwAAaQNlJGVWZWN0b3IAAKBfKeUiY3RvckKgwSFhAHIAAKBXKWUAZQBBoKQiciJyb3cAAKCnIXIAcgBvAPcAtAIAAWN0gwOHA3IA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YwAAoN8i4SFycnCgtiEAoD0pgKIqImJjZG9zACsVMBU6FT4VQRVyImNhcAAAoEgqAAFhdTQVNxVwAACgRipwAACgSipvAHQAAKCNInIAAKBFKgDgKiIA/gACYWxydksVURVuFXMVcgByAG2gtyEAoDwpeQCAAWV2dwBYFWUVaRVxAHACXxUAAAAAYxVyAGUA4wAXFXUA4wAZFWUAZQAAoM4iZSJkZ2UAAKDPImUAbgA7gKQApEBlI2Fycm93AAABbHJ7FX8V5SFmdACgtiFpImdodAAAoLchZQDkAG0VAAFjaYsVkRVvAG4AaQBuAPQAkwFuAHQAAKAxImwiY3R5AACgLSOACUFIYWJjZGVmaGlqbG9yc3R1d3oAuBW7Fb8V1RXgFegV+RUKFhUWHxZUFlcWZRbFFtsW7xb7FgUXChdyAPIAtAJhAHIAAKBlKQACZ2xyc8YVyhXOFdAV5yFlcgCgICDlIXRoAKA4IfIA9QxoAHagECAAoKMiawHZFd4VYSJyb3cAAKAPKWEA4wBfAgABYXnkFecV8iFvbg9hNGQAoUYhYW/tFfQVAAFnciEC8RVyAACgyiF0InNlcQAAoHcqgAFnbG0A/xUCFgUWO4CwALBAdABhALRjcCJ0eXYAAKCxKQABaXIOFhIW8yFodACgfykA4DXYId1hAHIAAAFschsWHRYAoMMhAKDCIYACYWVnc3YAKBauAjYWOhY+Fm0AAKHEIm9zLhY0Fm4AZABzoMQi9SFpdACgZiZhIm1tYQDdY2kAbgAAoPIiAKH3AGlvQxZRFmQAZQAAgfcAO29KFksW90BuI3RpbWVzAACgxyJuAPgAUBZjAHkAUmRjAG8CXhYAAAAAYhZyAG4AAKAeI28AcAAAoA0jgAJscHR1dwBuFnEWdRaSFp4W7CFhciRgZgAA4DXYVd0AotkCZW1wc30WhBaJFo0WcQBkoFAibwB0AACgUSJpIm51cwAAoDgi7CF1cwCgFCLxInVhcmUAoKEiYgBsAGUAYgBhAHIAdwBlAGQAZwDlANcAbgCAAWFkaAClFqoWtBZyAHIAbwD3APUMbwB3AG4AYQByAHIAbwB3APMA8xVhI3Jwb29uAAABbHK8FsAWZQBmAPQAHBZpAGcAaAD0AB4WYgHJFs8WawBhAHIAbwD3AJILbwLUFgAAAADYFnIAbgAAoB8jbwBwAACgDCOAAWNvdADhFukW7BYAAXJ55RboFgDgNdi53FVkbAAAoPYp8iFvaxFhAAFkcvMW9xZvAHQAAKDxImkA5qC/JVsSAAFhaP8WAhdyAPIANQNhAPIA1wvhIm5nbGUAoKYpAAFjaQ4XEBd5AF9k5yJyYXJyAKD/JwAJRGFjZGVmZ2xtbm9wcXJzdHV4MRc4F0YXWxcyBF4XaRd5F40XrBe0F78X2RcVGCEYLRg1GEAYAAFEbzUXgRZvAPQA+BUAAWNzPBdCF3UAdABlADuA6QDpQPQhZXIAoG4qAAJhaW95TRdQF1YXWhfyIW9uG2FyAGOgViI7gOoA6kDsIW9uAKBVIk1kbwB0ABdhAAFEcmIXZhdvAHQAAKBSIgDgNdgi3XKhmipuF3QXYQB2AGUAO4DoAOhAZKCWKm8AdAAAoJgqgKGZKmlscwCAF4UXhxfuInRlcnMAoOcjAKATIWSglSpvAHQAAKCXKoABYXBzAJMXlheiF2MAcgATYXQAeQBzogUinxcAAAAAoRdlAHQAAKAFInAAMaADIDMBqRerFwCgBCAAoAUgAAFnc7AXsRdLYXAAAKACIAABZ3C4F7sXbwBuABlhZgAA4DXYVt2AAWFscwDFF8sXzxdyAHOg1SJsAACg4yl1AHMAAKBxKmkAAKG1A2x21RfYF28AbgC1Y/VjAAJjc3V24BfoF/0XEBgAAWlv5BdWF3IAYwAAoFYiaQLuFwAAAADwF+0ADQThIW50AAFnbPUX+Rd0AHIAAKCWKuUhc3MAoJUqgAFhZWkAAxgGGAoYbABzAD1gcwB0AACgXyJ2AESgYSJEAACgeCrwImFyc2wAoOUpAAFEYRkYHRhvAHQAAKBTInIAcgAAoHEpgAFjZGkAJxgqGO0XcgAAoC8hbwD0AIwCAAFhaDEYMhi3YzuA8ADwQAABbXI5GD0YbAA7gOsA60BvAACgrCCAAWNpcABGGEgYSxhsACFgcwD0ACwEAAFlb08YVxhjAHQAYQB0AGkAbwDuABoEbgBlAG4AdABpAGEAbADlADME4Ql1GAAAgRgAAIMYiBgAAAAAoRilGAAAqhgAALsYvhjRGAAA1xgnGWwAbABpAG4AZwBkAG8AdABzAGUA8QBlF3kARGRtImFsZQAAoEAmgAFpbHIAjRiRGJ0Y7CFpZwCgA/tpApcYAAAAAJoYZwAAoAD7aQBnAACgBPsA4DXYI93sIWlnAKAB++whaWcA4GYAagCAAWFsdACvGLIYthh0AACgbSZpAGcAAKAC+24AcwAAoLElbwBmAJJh8AHCGAAAxhhmAADgNdhX3QABYWvJGMwYbADsAGsEdqDUIgCg2SphI3J0aW50AACgDSoAAWFv2hgiGQABY3PeGB8ZsQPnGP0YBRkSGRUZAAAdGbID7xjyGPQY9xj5GAAA+xg7gL0AvUAAoFMhO4C8ALxAAKBVIQCgWSEAoFshswEBGQAAAxkAoFQhAKBWIbQCCxkOGQAAAAAQGTuAvgC+QACgVyEAoFwhNQAAoFghtgEZGQAAGxkAoFohAKBdITgAAKBeIWwAAKBEIHcAbgAAoCIjYwByAADgNdi73IAIRWFiY2RlZmdpamxub3JzdHYARhlKGVoZXhlmGWkZkhmWGZkZnRmgGa0ZxhnLGc8Z4BkjGmygZyIAoIwqgAFjbXAAUBlTGVgZ9SF0ZfVhbQBhAOSgswM6FgCghipyImV2ZQAfYQABaXliGWUZcgBjAB1hM2RvAHQAIWGAoWUibHFzAMYEcBl6GfGhZSLOBAAAdhlsAGEAbgD0AN8EgKF+KmNkbACBGYQZjBljAACgqSpvAHQAb6CAKmyggioAoIQqZeDbIgD+cwAAoJQqcgAA4DXYJN3noGsirATtIWVsAKA3IWMAeQBTZIChdyJFYWoApxmpGasZAKCSKgCgpSoAoKQqAAJFYWVztBm2Gb0ZwhkAoGkicABwoIoq8iFveACgiipxoIgq8aCIKrUZaQBtAACg5yJwAGYAAOA12FjdYQB2AOUAYwIAAWNp0xnWGXIAAKAKIW0AAKFzImVs3BneGQCgjioAoJAqAIM+ADtjZGxxco0E6xn0GfgZ/BkBGgABY2nvGfEZAKCnKnIAAKB6Km8AdAAAoNci0CFhcgCglSl1ImVzdAAAoHwqgAJhZGVscwAKGvQZFhrVBCAa8AEPGgAAFBpwAHIAbwD4AFkZcgAAoHgpcQAAAWxxxAQbGmwAZQBzAPMASRlpAO0A5AQAAWVuJxouGnIjdG5lcXEAAOBpIgD+xQAsGgAFQWFiY2Vma29zeUAaQxpmGmoabRqDGocalhrCGtMacgDyAMwCAAJpbG1yShpOGlAaVBpyAHMA8ABxD2YAvWBpAGwA9AASBQABZHJYGlsaYwB5AEpkAKGUIWN3YBpkGmkAcgAAoEgpAKCtIWEAcgAAoA8h6SFyYyVhgAFhbHIAcxp7Gn8a8iF0c3WgZSZpAHQAAKBlJuwhaXAAoCYg4yFvbgCguSJyAADgNdgl3XMAAAFld4wakRphInJvdwAAoCUpYSJyb3cAAKAmKYACYW1vcHIAnxqjGqcauhq+GnIAcgAAoP8h9CFodACgOyJrAAABbHKsGrMaZSRmdGFycm93AACgqSHpJGdodGFycm93AKCqIWYAAOA12Fnd4iFhcgCgFSCAAWNsdADIGswa0BpyAADgNdi93GEAcwDoAGka8iFvaydhAAFicNca2xr1IWxsAKBDIOghZW4AoBAg4Qr2GgAA/RoAAAgbExsaGwAAIRs7GwAAAAA+G2IbmRuVG6sbAACyG80b0htjAHUAdABlADuA7QDtQAChYyBpeQEbBhtyAGMAO4DuAO5AOGQAAWN4CxsNG3kANWRjAGwAO4ChAKFAAAFmcssCFhsA4DXYJt1yAGEAdgBlADuA7ADsQIChSCFpbm8AJxsyGzYbAAFpbisbLxtuAHQAAKAMKnQAAKAtIuYhaW4AoNwpdABhAACgKSHsIWlnM2GAAWFvcABDG1sbXhuAAWNndABJG0sbWRtyACthgAFlbHAAcQVRG1UbaQBuAOUAyAVhAHIA9AByBWgAMWFmAACgtyJlAGQAtWEAoggiY2ZvdGkbbRt1G3kb4SFyZQCgBSFpAG4AdKAeImkAZQAAoN0pZABvAPQAWxsAoisiY2VscIEbhRuPG5QbYQBsAACguiIAAWdyiRuNG2UAcgDzACMQ4wCCG2EicmhrAACgFyryIW9kAKA8KgACY2dwdJ8boRukG6gbeQBRZG8AbgAvYWYAAOA12FrdYQC5Y3UAZQBzAHQAO4C/AL9AAAFjabUbuRtyAADgNdi+3G4AAKIIIkVkc3bCG8QbyBvQAwCg+SJvAHQAAKD1Inag9CIAoPMiaaBiIOwhZGUpYesB1hsAANkbYwB5AFZkbAA7gO8A70AAA2NmbW9zdeYb7hvyG/Ub+hsFHAABaXnqG+0bcgBjADVhOWRyAADgNdgn3eEhdGg3YnAAZgAA4DXYW93jAf8bAAADHHIAAOA12L/c8iFjeVhk6yFjeVRkAARhY2ZnaGpvcxUcGhwiHCYcKhwtHDAcNRzwIXBhdqC6A/BjAAFleR4cIRzkIWls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ZmdobG1vcHJzdHV3CiwNLBEsHSwnLDEsQCxLLFIsYix6LIQsjyzLLOgs7Sz/LAotcgDyAAkDYQByAACgYykAAWNyFSwbLHUAdABlADuA+gD6QPIACQ1yAOMBIywAACUseQBeZHYAZQBtYQABaXkrLDAscgBjADuA+wD7QENkgAFhYmgANyw6LD0scgDyANEO7CFhY3FhYQDyAOAOAAFpckQsSCzzIWh0AKB+KQDgNdgy3XIAYQB2AGUAO4D5APlAYQFWLF8scgAAAWxyWixcLACgvyEAoL4hbABrAACggCUAAWN0Zix2LG8CbCwAAAAAcyxyAG4AZaAcI3IAAKAcI28AcAAAoA8jcgBpAACg+CUAAWFsfiyBLGMAcgBrYTuAqACoQAABZ3CILIssbwBuAHNhZgAA4DXYZt0AA2FkaGxzdZksniynLLgsuyzFLHIAcgBvAPcACQ1vAHcAbgBhAHIAcgBvAPcA2A5hI3Jwb29uAAABbHKvLLMsZQBmAPQAWyxpAGcAaAD0AF0sdQDzAKYOaQAAocUDaGzBLMIs0mNvAG4AxWPwI2Fycm93cwCgyCGAAWNpdADRLOEs5CxvAtcsAAAAAN4scgBuAGWgHSNyAACgHSNvAHAAAKAOI24AZwBvYXIAaQAAoPklYwByAADgNdjK3IABZGlyAPMs9yz6LG8AdAAAoPAi7CFkZWlhaQBmoLUlAKC0JQABYW0DLQYtcgDyAMosbAA7gPwA/EDhIm5nbGUAoKcpgAdBQkRhY2RlZmxub3Byc3oAJy0qLTAtNC2bLZ0toS2/LcMtxy3TLdgt3C3gLfwtcgDyABADYQByAHag6CoAoOkqYQBzAOgA/gIAAW5yOC08LechcnQAoJwpgANla25wcnN0AJkpSC1NLVQtXi1iLYItYQBwAHAA4QAaHG8AdABoAGkAbgDnAKEXgAFoaXIAoSmzJFotbwBwAPQAdCVooJUh7wD4JgABaXVmLWotZwBtAOEAuygAAWJwbi14LXMjZXRuZXEAceCKIgD+AODLKgD+cyNldG5lcQBx4IsiAP4A4MwqAP4AAWhyhi2KLWUAdADhABIraSNhbmdsZQAAAWxyki2WLeUhZnQAoLIiaSJnaHQAAKCzInkAMmThIXNoAKCiIoABZWxyAKcttC24LWKiKCKuLQAAAACyLWEAcgAAoLsicQAAoFoi7CFpcACg7iIAAWJ0vC1eD2EA8gBfD3IAAOA12DPddAByAOkAlS1zAHUAAAFicM0t0C0A4IIi0iAA4IMi0iBwAGYAAOA12GfdcgBvAPAAWQt0AHIA6QCaLQABY3XkLegtcgAA4DXYy9wAAWJw7C30LW4AAAFFZXUt8S0A4IoiAP5uAAABRWV/LfktAOCLIgD+6SJnemFnAKCaKYADY2Vmb3BycwANLhAuJS4pLiMuLi40LukhcmN1YQABZGkULiEuAAFiZxguHC5hAHIAAKBfKmUAcaAnIgCgWSLlIXJwAKAYIXIAAOA12DTdcABmAADgNdho3WWgQCJhAHQA6ABqD2MAcgAA4DXYzNzjCuQRUC4AAFQuAABYLmIuAAAAAGMubS5wLnQuAAAAAIguki4AAJouJxIqEnQAcgDpAB0ScgAA4DXYNd0AAUFhWy5eLnIA8gDnAnIA8gCTB75jAAFBYWYuaS5yAPIA4AJyAPIAjAdhAPAAeh5pAHMAAKD7IoABZHB0APgReS6DLgABZmx9LoAuAOA12GnddQDzAP8RaQBtAOUABBIAAUFhiy6OLnIA8gDuAnIA8gCaBwABY3GVLgoScgAA4DXYzdwAAXB0nS6hLmwAdQDzACUScgDpACASAARhY2VmaW9zdbEuvC7ELsguzC7PLtQu2S5jAAABdXm2LrsudABlADuA/QD9QE9kAAFpecAuwy5yAGMAd2FLZG4AO4ClAKVAcgAA4DXYNt1jAHkAV2RwAGYAAOA12GrdYwByAADgNdjO3AABY23dLt8ueQBOZGwAO4D/AP9AAAVhY2RlZmhpb3N38y73Lv8uAi8MLxAvEy8YLx0vIi9jInV0ZQB6YQABYXn7Lv4u8iFvbn5hN2RvAHQAfGEAAWV0Bi8KL3QAcgDmAB8QYQC2Y3IAAOA12DfdYwB5ADZk5yJyYXJyAKDdIXAAZgAA4DXYa91jAHIAAOA12M/cAAFqbiYvKC8AoA0gagAAoAwg");
34256
+ })), BinTrieFlags, init_bin_trie_flags = __esmMin((() => {
34257
+ (function(e) {
34258
+ e[e.VALUE_LENGTH = 49152] = "VALUE_LENGTH", e[e.FLAG13 = 8192] = "FLAG13", e[e.BRANCH_LENGTH = 8064] = "BRANCH_LENGTH", e[e.JUMP_TABLE = 127] = "JUMP_TABLE";
34259
+ })(BinTrieFlags ||= {});
34260
+ }));
34261
+ //#endregion
34262
+ //#region node_modules/.pnpm/entities@8.0.0/node_modules/entities/dist/decode.js
34263
+ function isNumber(e) {
34264
+ return e >= CharCodes.ZERO && e <= CharCodes.NINE;
34265
+ }
34266
+ function isHexadecimalCharacter(e) {
34267
+ return e >= CharCodes.UPPER_A && e <= CharCodes.UPPER_F || e >= CharCodes.LOWER_A && e <= CharCodes.LOWER_F;
34268
+ }
34269
+ function isAsciiAlphaNumeric$1(e) {
34270
+ return e >= CharCodes.UPPER_A && e <= CharCodes.UPPER_Z || e >= CharCodes.LOWER_A && e <= CharCodes.LOWER_Z || isNumber(e);
34271
+ }
34272
+ function isEntityInAttributeInvalidEnd(e) {
34273
+ return e === CharCodes.EQUALS || isAsciiAlphaNumeric$1(e);
34274
+ }
34275
+ function determineBranch(e, t, n, i) {
34276
+ let a = (t & BinTrieFlags.BRANCH_LENGTH) >> 7, o = t & BinTrieFlags.JUMP_TABLE;
34277
+ if (a === 0) return o !== 0 && i === o ? n : -1;
34278
+ if (o) {
34279
+ let t = i - o;
34280
+ return t < 0 || t >= a ? -1 : e[n + t] - 1;
34281
+ }
34282
+ let s = a + 1 >> 1, c = 0, l = a - 1;
34283
+ for (; c <= l;) {
34284
+ let t = c + l >>> 1, a = e[n + (t >> 1)] >> (t & 1) * 8 & 255;
34285
+ if (a < i) c = t + 1;
34286
+ else if (a > i) l = t - 1;
34287
+ else return e[n + s + t];
34288
+ }
34289
+ return -1;
34290
+ }
34291
+ var CharCodes, TO_LOWER_BIT, EntityDecoderState, DecodingMode, EntityDecoder, init_decode = __esmMin((() => {
34292
+ init_decode_codepoint(), init_bin_trie_flags(), init_decode_data_html(), init_decode_shared(), (function(e) {
34293
+ e[e.NUM = 35] = "NUM", e[e.SEMI = 59] = "SEMI", e[e.EQUALS = 61] = "EQUALS", e[e.ZERO = 48] = "ZERO", e[e.NINE = 57] = "NINE", e[e.LOWER_A = 97] = "LOWER_A", e[e.LOWER_F = 102] = "LOWER_F", e[e.LOWER_X = 120] = "LOWER_X", e[e.LOWER_Z = 122] = "LOWER_Z", e[e.UPPER_A = 65] = "UPPER_A", e[e.UPPER_F = 70] = "UPPER_F", e[e.UPPER_Z = 90] = "UPPER_Z";
34294
+ })(CharCodes ||= {}), TO_LOWER_BIT = 32, (function(e) {
34295
+ e[e.EntityStart = 0] = "EntityStart", e[e.NumericStart = 1] = "NumericStart", e[e.NumericDecimal = 2] = "NumericDecimal", e[e.NumericHex = 3] = "NumericHex", e[e.NamedEntity = 4] = "NamedEntity";
34296
+ })(EntityDecoderState ||= {}), (function(e) {
34297
+ e[e.Legacy = 0] = "Legacy", e[e.Strict = 1] = "Strict", e[e.Attribute = 2] = "Attribute";
34298
+ })(DecodingMode ||= {}), EntityDecoder = class {
34299
+ decodeTree;
34300
+ emitCodePoint;
34301
+ errors;
34302
+ constructor(e, t, n) {
34303
+ this.decodeTree = e, this.emitCodePoint = t, this.errors = n;
34304
+ }
34305
+ state = EntityDecoderState.EntityStart;
34306
+ consumed = 1;
34307
+ result = 0;
34308
+ treeIndex = 0;
34309
+ excess = 1;
34310
+ decodeMode = DecodingMode.Strict;
34311
+ runConsumed = 0;
34312
+ startEntity(e) {
34313
+ this.decodeMode = e, this.state = EntityDecoderState.EntityStart, this.result = 0, this.treeIndex = 0, this.excess = 1, this.consumed = 1, this.runConsumed = 0;
34314
+ }
34315
+ write(e, t) {
34316
+ switch (this.state) {
34317
+ case EntityDecoderState.EntityStart: return e.charCodeAt(t) === CharCodes.NUM ? (this.state = EntityDecoderState.NumericStart, this.consumed += 1, this.stateNumericStart(e, t + 1)) : (this.state = EntityDecoderState.NamedEntity, this.stateNamedEntity(e, t));
34318
+ case EntityDecoderState.NumericStart: return this.stateNumericStart(e, t);
34319
+ case EntityDecoderState.NumericDecimal: return this.stateNumericDecimal(e, t);
34320
+ case EntityDecoderState.NumericHex: return this.stateNumericHex(e, t);
34321
+ case EntityDecoderState.NamedEntity: return this.stateNamedEntity(e, t);
34322
+ }
34323
+ }
34324
+ stateNumericStart(e, t) {
34325
+ return t >= e.length ? -1 : (e.charCodeAt(t) | TO_LOWER_BIT) === CharCodes.LOWER_X ? (this.state = EntityDecoderState.NumericHex, this.consumed += 1, this.stateNumericHex(e, t + 1)) : (this.state = EntityDecoderState.NumericDecimal, this.stateNumericDecimal(e, t));
34326
+ }
34327
+ stateNumericHex(e, t) {
34328
+ for (; t < e.length;) {
34329
+ let n = e.charCodeAt(t);
34330
+ if (isNumber(n) || isHexadecimalCharacter(n)) {
34331
+ let e = n <= CharCodes.NINE ? n - CharCodes.ZERO : (n | TO_LOWER_BIT) - CharCodes.LOWER_A + 10;
34332
+ this.result = this.result * 16 + e, this.consumed++, t++;
34333
+ } else return this.emitNumericEntity(n, 3);
34334
+ }
34335
+ return -1;
34336
+ }
34337
+ stateNumericDecimal(e, t) {
34338
+ for (; t < e.length;) {
34339
+ let n = e.charCodeAt(t);
34340
+ if (isNumber(n)) this.result = this.result * 10 + (n - CharCodes.ZERO), this.consumed++, t++;
34341
+ else return this.emitNumericEntity(n, 2);
34342
+ }
34343
+ return -1;
34344
+ }
34345
+ emitNumericEntity(e, t) {
34346
+ if (this.consumed <= t) return this.errors?.absenceOfDigitsInNumericCharacterReference(this.consumed), 0;
34347
+ if (e === CharCodes.SEMI) this.consumed += 1;
34348
+ else if (this.decodeMode === DecodingMode.Strict) return 0;
34349
+ return this.emitCodePoint(replaceCodePoint(this.result), this.consumed), this.errors && (e !== CharCodes.SEMI && this.errors.missingSemicolonAfterCharacterReference(), this.errors.validateNumericCharacterReference(this.result)), this.consumed;
34350
+ }
34351
+ stateNamedEntity(e, t) {
34352
+ let { decodeTree: n } = this, i = n[this.treeIndex], a = (i & BinTrieFlags.VALUE_LENGTH) >> 14;
34353
+ for (; t < e.length;) {
34354
+ if (a === 0 && (i & BinTrieFlags.FLAG13) !== 0) {
34355
+ let o = (i & BinTrieFlags.BRANCH_LENGTH) >> 7;
34356
+ if (this.runConsumed === 0) {
34357
+ let n = i & BinTrieFlags.JUMP_TABLE;
34358
+ if (e.charCodeAt(t) !== n) return this.result === 0 ? 0 : this.emitNotTerminatedNamedEntity();
34359
+ t++, this.excess++, this.runConsumed++;
34360
+ }
34361
+ for (; this.runConsumed < o;) {
34362
+ if (t >= e.length) return -1;
34363
+ let i = this.runConsumed - 1, a = n[this.treeIndex + 1 + (i >> 1)], o = i % 2 == 0 ? a & 255 : a >> 8 & 255;
34364
+ if (e.charCodeAt(t) !== o) return this.runConsumed = 0, this.result === 0 ? 0 : this.emitNotTerminatedNamedEntity();
34365
+ t++, this.excess++, this.runConsumed++;
34366
+ }
34367
+ this.runConsumed = 0, this.treeIndex += 1 + (o >> 1), i = n[this.treeIndex], a = (i & BinTrieFlags.VALUE_LENGTH) >> 14;
34368
+ }
34369
+ if (t >= e.length) break;
34370
+ let o = e.charCodeAt(t);
34371
+ if (o === CharCodes.SEMI && a !== 0 && (i & BinTrieFlags.FLAG13) !== 0) return this.emitNamedEntityData(this.treeIndex, a, this.consumed + this.excess);
34372
+ if (this.treeIndex = determineBranch(n, i, this.treeIndex + Math.max(1, a), o), this.treeIndex < 0) return this.result === 0 || this.decodeMode === DecodingMode.Attribute && (a === 0 || isEntityInAttributeInvalidEnd(o)) ? 0 : this.emitNotTerminatedNamedEntity();
34373
+ if (i = n[this.treeIndex], a = (i & BinTrieFlags.VALUE_LENGTH) >> 14, a !== 0) {
34374
+ if (o === CharCodes.SEMI) return this.emitNamedEntityData(this.treeIndex, a, this.consumed + this.excess);
34375
+ this.decodeMode !== DecodingMode.Strict && (i & BinTrieFlags.FLAG13) === 0 && (this.result = this.treeIndex, this.consumed += this.excess, this.excess = 0);
34376
+ }
34377
+ t++, this.excess++;
34378
+ }
34379
+ return -1;
34380
+ }
34381
+ emitNotTerminatedNamedEntity() {
34382
+ let { result: e, decodeTree: t } = this, n = (t[e] & BinTrieFlags.VALUE_LENGTH) >> 14;
34383
+ return this.emitNamedEntityData(e, n, this.consumed), this.errors?.missingSemicolonAfterCharacterReference(), this.consumed;
34384
+ }
34385
+ emitNamedEntityData(e, t, n) {
34386
+ let { decodeTree: i } = this;
34387
+ return this.emitCodePoint(t === 1 ? i[e] & ~(BinTrieFlags.VALUE_LENGTH | BinTrieFlags.FLAG13) : i[e + 1], n), t === 3 && this.emitCodePoint(i[e + 2], n), n;
34388
+ }
34389
+ end() {
34390
+ switch (this.state) {
34391
+ case EntityDecoderState.NamedEntity: return this.result !== 0 && (this.decodeMode !== DecodingMode.Attribute || this.result === this.treeIndex) ? this.emitNotTerminatedNamedEntity() : 0;
34392
+ case EntityDecoderState.NumericDecimal: return this.emitNumericEntity(0, 2);
34393
+ case EntityDecoderState.NumericHex: return this.emitNumericEntity(0, 3);
34394
+ case EntityDecoderState.NumericStart: return this.errors?.absenceOfDigitsInNumericCharacterReference(this.consumed), 0;
34395
+ case EntityDecoderState.EntityStart: return 0;
34396
+ }
34397
+ }
34398
+ };
34399
+ }));
34400
+ //#endregion
34401
+ //#region node_modules/.pnpm/parse5@8.0.1/node_modules/parse5/dist/common/html.js
34402
+ function getTagID(e) {
34403
+ var t;
34404
+ return TAG_NAME_TO_ID.get(e) ?? TAG_ID.UNKNOWN;
34405
+ }
34406
+ var NS, ATTRS, DOCUMENT_MODE, TAG_NAMES, TAG_ID, TAG_NAME_TO_ID, $, SPECIAL_ELEMENTS, NUMBERED_HEADERS, UNESCAPED_TEXT, init_html = __esmMin((() => {
34407
+ (function(e) {
34408
+ e.HTML = "http://www.w3.org/1999/xhtml", e.MATHML = "http://www.w3.org/1998/Math/MathML", e.SVG = "http://www.w3.org/2000/svg", e.XLINK = "http://www.w3.org/1999/xlink", e.XML = "http://www.w3.org/XML/1998/namespace", e.XMLNS = "http://www.w3.org/2000/xmlns/";
34409
+ })(NS ||= {}), (function(e) {
34410
+ e.TYPE = "type", e.ACTION = "action", e.ENCODING = "encoding", e.PROMPT = "prompt", e.NAME = "name", e.COLOR = "color", e.FACE = "face", e.SIZE = "size";
34411
+ })(ATTRS ||= {}), (function(e) {
34412
+ e.NO_QUIRKS = "no-quirks", e.QUIRKS = "quirks", e.LIMITED_QUIRKS = "limited-quirks";
34413
+ })(DOCUMENT_MODE ||= {}), (function(e) {
34414
+ e.A = "a", e.ADDRESS = "address", e.ANNOTATION_XML = "annotation-xml", e.APPLET = "applet", e.AREA = "area", e.ARTICLE = "article", e.ASIDE = "aside", e.B = "b", e.BASE = "base", e.BASEFONT = "basefont", e.BGSOUND = "bgsound", e.BIG = "big", e.BLOCKQUOTE = "blockquote", e.BODY = "body", e.BR = "br", e.BUTTON = "button", e.CAPTION = "caption", e.CENTER = "center", e.CODE = "code", e.COL = "col", e.COLGROUP = "colgroup", e.DD = "dd", e.DESC = "desc", e.DETAILS = "details", e.DIALOG = "dialog", e.DIR = "dir", e.DIV = "div", e.DL = "dl", e.DT = "dt", e.EM = "em", e.EMBED = "embed", e.FIELDSET = "fieldset", e.FIGCAPTION = "figcaption", e.FIGURE = "figure", e.FONT = "font", e.FOOTER = "footer", e.FOREIGN_OBJECT = "foreignObject", e.FORM = "form", e.FRAME = "frame", e.FRAMESET = "frameset", e.H1 = "h1", e.H2 = "h2", e.H3 = "h3", e.H4 = "h4", e.H5 = "h5", e.H6 = "h6", e.HEAD = "head", e.HEADER = "header", e.HGROUP = "hgroup", e.HR = "hr", e.HTML = "html", e.I = "i", e.IMG = "img", e.IMAGE = "image", e.INPUT = "input", e.IFRAME = "iframe", e.KEYGEN = "keygen", e.LABEL = "label", e.LI = "li", e.LINK = "link", e.LISTING = "listing", e.MAIN = "main", e.MALIGNMARK = "malignmark", e.MARQUEE = "marquee", e.MATH = "math", e.MENU = "menu", e.META = "meta", e.MGLYPH = "mglyph", e.MI = "mi", e.MO = "mo", e.MN = "mn", e.MS = "ms", e.MTEXT = "mtext", e.NAV = "nav", e.NOBR = "nobr", e.NOFRAMES = "noframes", e.NOEMBED = "noembed", e.NOSCRIPT = "noscript", e.OBJECT = "object", e.OL = "ol", e.OPTGROUP = "optgroup", e.OPTION = "option", e.P = "p", e.PARAM = "param", e.PLAINTEXT = "plaintext", e.PRE = "pre", e.RB = "rb", e.RP = "rp", e.RT = "rt", e.RTC = "rtc", e.RUBY = "ruby", e.S = "s", e.SCRIPT = "script", e.SEARCH = "search", e.SECTION = "section", e.SELECT = "select", e.SOURCE = "source", e.SMALL = "small", e.SPAN = "span", e.STRIKE = "strike", e.STRONG = "strong", e.STYLE = "style", e.SUB = "sub", e.SUMMARY = "summary", e.SUP = "sup", e.TABLE = "table", e.TBODY = "tbody", e.TEMPLATE = "template", e.TEXTAREA = "textarea", e.TFOOT = "tfoot", e.TD = "td", e.TH = "th", e.THEAD = "thead", e.TITLE = "title", e.TR = "tr", e.TRACK = "track", e.TT = "tt", e.U = "u", e.UL = "ul", e.SVG = "svg", e.VAR = "var", e.WBR = "wbr", e.XMP = "xmp";
34415
+ })(TAG_NAMES ||= {}), (function(e) {
34416
+ e[e.UNKNOWN = 0] = "UNKNOWN", e[e.A = 1] = "A", e[e.ADDRESS = 2] = "ADDRESS", e[e.ANNOTATION_XML = 3] = "ANNOTATION_XML", e[e.APPLET = 4] = "APPLET", e[e.AREA = 5] = "AREA", e[e.ARTICLE = 6] = "ARTICLE", e[e.ASIDE = 7] = "ASIDE", e[e.B = 8] = "B", e[e.BASE = 9] = "BASE", e[e.BASEFONT = 10] = "BASEFONT", e[e.BGSOUND = 11] = "BGSOUND", e[e.BIG = 12] = "BIG", e[e.BLOCKQUOTE = 13] = "BLOCKQUOTE", e[e.BODY = 14] = "BODY", e[e.BR = 15] = "BR", e[e.BUTTON = 16] = "BUTTON", e[e.CAPTION = 17] = "CAPTION", e[e.CENTER = 18] = "CENTER", e[e.CODE = 19] = "CODE", e[e.COL = 20] = "COL", e[e.COLGROUP = 21] = "COLGROUP", e[e.DD = 22] = "DD", e[e.DESC = 23] = "DESC", e[e.DETAILS = 24] = "DETAILS", e[e.DIALOG = 25] = "DIALOG", e[e.DIR = 26] = "DIR", e[e.DIV = 27] = "DIV", e[e.DL = 28] = "DL", e[e.DT = 29] = "DT", e[e.EM = 30] = "EM", e[e.EMBED = 31] = "EMBED", e[e.FIELDSET = 32] = "FIELDSET", e[e.FIGCAPTION = 33] = "FIGCAPTION", e[e.FIGURE = 34] = "FIGURE", e[e.FONT = 35] = "FONT", e[e.FOOTER = 36] = "FOOTER", e[e.FOREIGN_OBJECT = 37] = "FOREIGN_OBJECT", e[e.FORM = 38] = "FORM", e[e.FRAME = 39] = "FRAME", e[e.FRAMESET = 40] = "FRAMESET", e[e.H1 = 41] = "H1", e[e.H2 = 42] = "H2", e[e.H3 = 43] = "H3", e[e.H4 = 44] = "H4", e[e.H5 = 45] = "H5", e[e.H6 = 46] = "H6", e[e.HEAD = 47] = "HEAD", e[e.HEADER = 48] = "HEADER", e[e.HGROUP = 49] = "HGROUP", e[e.HR = 50] = "HR", e[e.HTML = 51] = "HTML", e[e.I = 52] = "I", e[e.IMG = 53] = "IMG", e[e.IMAGE = 54] = "IMAGE", e[e.INPUT = 55] = "INPUT", e[e.IFRAME = 56] = "IFRAME", e[e.KEYGEN = 57] = "KEYGEN", e[e.LABEL = 58] = "LABEL", e[e.LI = 59] = "LI", e[e.LINK = 60] = "LINK", e[e.LISTING = 61] = "LISTING", e[e.MAIN = 62] = "MAIN", e[e.MALIGNMARK = 63] = "MALIGNMARK", e[e.MARQUEE = 64] = "MARQUEE", e[e.MATH = 65] = "MATH", e[e.MENU = 66] = "MENU", e[e.META = 67] = "META", e[e.MGLYPH = 68] = "MGLYPH", e[e.MI = 69] = "MI", e[e.MO = 70] = "MO", e[e.MN = 71] = "MN", e[e.MS = 72] = "MS", e[e.MTEXT = 73] = "MTEXT", e[e.NAV = 74] = "NAV", e[e.NOBR = 75] = "NOBR", e[e.NOFRAMES = 76] = "NOFRAMES", e[e.NOEMBED = 77] = "NOEMBED", e[e.NOSCRIPT = 78] = "NOSCRIPT", e[e.OBJECT = 79] = "OBJECT", e[e.OL = 80] = "OL", e[e.OPTGROUP = 81] = "OPTGROUP", e[e.OPTION = 82] = "OPTION", e[e.P = 83] = "P", e[e.PARAM = 84] = "PARAM", e[e.PLAINTEXT = 85] = "PLAINTEXT", e[e.PRE = 86] = "PRE", e[e.RB = 87] = "RB", e[e.RP = 88] = "RP", e[e.RT = 89] = "RT", e[e.RTC = 90] = "RTC", e[e.RUBY = 91] = "RUBY", e[e.S = 92] = "S", e[e.SCRIPT = 93] = "SCRIPT", e[e.SEARCH = 94] = "SEARCH", e[e.SECTION = 95] = "SECTION", e[e.SELECT = 96] = "SELECT", e[e.SOURCE = 97] = "SOURCE", e[e.SMALL = 98] = "SMALL", e[e.SPAN = 99] = "SPAN", e[e.STRIKE = 100] = "STRIKE", e[e.STRONG = 101] = "STRONG", e[e.STYLE = 102] = "STYLE", e[e.SUB = 103] = "SUB", e[e.SUMMARY = 104] = "SUMMARY", e[e.SUP = 105] = "SUP", e[e.TABLE = 106] = "TABLE", e[e.TBODY = 107] = "TBODY", e[e.TEMPLATE = 108] = "TEMPLATE", e[e.TEXTAREA = 109] = "TEXTAREA", e[e.TFOOT = 110] = "TFOOT", e[e.TD = 111] = "TD", e[e.TH = 112] = "TH", e[e.THEAD = 113] = "THEAD", e[e.TITLE = 114] = "TITLE", e[e.TR = 115] = "TR", e[e.TRACK = 116] = "TRACK", e[e.TT = 117] = "TT", e[e.U = 118] = "U", e[e.UL = 119] = "UL", e[e.SVG = 120] = "SVG", e[e.VAR = 121] = "VAR", e[e.WBR = 122] = "WBR", e[e.XMP = 123] = "XMP";
34417
+ })(TAG_ID ||= {}), TAG_NAME_TO_ID = new Map([
34418
+ [TAG_NAMES.A, TAG_ID.A],
34419
+ [TAG_NAMES.ADDRESS, TAG_ID.ADDRESS],
34420
+ [TAG_NAMES.ANNOTATION_XML, TAG_ID.ANNOTATION_XML],
34421
+ [TAG_NAMES.APPLET, TAG_ID.APPLET],
34422
+ [TAG_NAMES.AREA, TAG_ID.AREA],
34423
+ [TAG_NAMES.ARTICLE, TAG_ID.ARTICLE],
34424
+ [TAG_NAMES.ASIDE, TAG_ID.ASIDE],
34425
+ [TAG_NAMES.B, TAG_ID.B],
34426
+ [TAG_NAMES.BASE, TAG_ID.BASE],
34427
+ [TAG_NAMES.BASEFONT, TAG_ID.BASEFONT],
34428
+ [TAG_NAMES.BGSOUND, TAG_ID.BGSOUND],
34429
+ [TAG_NAMES.BIG, TAG_ID.BIG],
34430
+ [TAG_NAMES.BLOCKQUOTE, TAG_ID.BLOCKQUOTE],
34431
+ [TAG_NAMES.BODY, TAG_ID.BODY],
34432
+ [TAG_NAMES.BR, TAG_ID.BR],
34433
+ [TAG_NAMES.BUTTON, TAG_ID.BUTTON],
34434
+ [TAG_NAMES.CAPTION, TAG_ID.CAPTION],
34435
+ [TAG_NAMES.CENTER, TAG_ID.CENTER],
34436
+ [TAG_NAMES.CODE, TAG_ID.CODE],
34437
+ [TAG_NAMES.COL, TAG_ID.COL],
34438
+ [TAG_NAMES.COLGROUP, TAG_ID.COLGROUP],
34439
+ [TAG_NAMES.DD, TAG_ID.DD],
34440
+ [TAG_NAMES.DESC, TAG_ID.DESC],
34441
+ [TAG_NAMES.DETAILS, TAG_ID.DETAILS],
34442
+ [TAG_NAMES.DIALOG, TAG_ID.DIALOG],
34443
+ [TAG_NAMES.DIR, TAG_ID.DIR],
34444
+ [TAG_NAMES.DIV, TAG_ID.DIV],
34445
+ [TAG_NAMES.DL, TAG_ID.DL],
34446
+ [TAG_NAMES.DT, TAG_ID.DT],
34447
+ [TAG_NAMES.EM, TAG_ID.EM],
34448
+ [TAG_NAMES.EMBED, TAG_ID.EMBED],
34449
+ [TAG_NAMES.FIELDSET, TAG_ID.FIELDSET],
34450
+ [TAG_NAMES.FIGCAPTION, TAG_ID.FIGCAPTION],
34451
+ [TAG_NAMES.FIGURE, TAG_ID.FIGURE],
34452
+ [TAG_NAMES.FONT, TAG_ID.FONT],
34453
+ [TAG_NAMES.FOOTER, TAG_ID.FOOTER],
34454
+ [TAG_NAMES.FOREIGN_OBJECT, TAG_ID.FOREIGN_OBJECT],
34455
+ [TAG_NAMES.FORM, TAG_ID.FORM],
34456
+ [TAG_NAMES.FRAME, TAG_ID.FRAME],
34457
+ [TAG_NAMES.FRAMESET, TAG_ID.FRAMESET],
34458
+ [TAG_NAMES.H1, TAG_ID.H1],
34459
+ [TAG_NAMES.H2, TAG_ID.H2],
34460
+ [TAG_NAMES.H3, TAG_ID.H3],
34461
+ [TAG_NAMES.H4, TAG_ID.H4],
34462
+ [TAG_NAMES.H5, TAG_ID.H5],
34463
+ [TAG_NAMES.H6, TAG_ID.H6],
34464
+ [TAG_NAMES.HEAD, TAG_ID.HEAD],
34465
+ [TAG_NAMES.HEADER, TAG_ID.HEADER],
34466
+ [TAG_NAMES.HGROUP, TAG_ID.HGROUP],
34467
+ [TAG_NAMES.HR, TAG_ID.HR],
34468
+ [TAG_NAMES.HTML, TAG_ID.HTML],
34469
+ [TAG_NAMES.I, TAG_ID.I],
34470
+ [TAG_NAMES.IMG, TAG_ID.IMG],
34471
+ [TAG_NAMES.IMAGE, TAG_ID.IMAGE],
34472
+ [TAG_NAMES.INPUT, TAG_ID.INPUT],
34473
+ [TAG_NAMES.IFRAME, TAG_ID.IFRAME],
34474
+ [TAG_NAMES.KEYGEN, TAG_ID.KEYGEN],
34475
+ [TAG_NAMES.LABEL, TAG_ID.LABEL],
34476
+ [TAG_NAMES.LI, TAG_ID.LI],
34477
+ [TAG_NAMES.LINK, TAG_ID.LINK],
34478
+ [TAG_NAMES.LISTING, TAG_ID.LISTING],
34479
+ [TAG_NAMES.MAIN, TAG_ID.MAIN],
34480
+ [TAG_NAMES.MALIGNMARK, TAG_ID.MALIGNMARK],
34481
+ [TAG_NAMES.MARQUEE, TAG_ID.MARQUEE],
34482
+ [TAG_NAMES.MATH, TAG_ID.MATH],
34483
+ [TAG_NAMES.MENU, TAG_ID.MENU],
34484
+ [TAG_NAMES.META, TAG_ID.META],
34485
+ [TAG_NAMES.MGLYPH, TAG_ID.MGLYPH],
34486
+ [TAG_NAMES.MI, TAG_ID.MI],
34487
+ [TAG_NAMES.MO, TAG_ID.MO],
34488
+ [TAG_NAMES.MN, TAG_ID.MN],
34489
+ [TAG_NAMES.MS, TAG_ID.MS],
34490
+ [TAG_NAMES.MTEXT, TAG_ID.MTEXT],
34491
+ [TAG_NAMES.NAV, TAG_ID.NAV],
34492
+ [TAG_NAMES.NOBR, TAG_ID.NOBR],
34493
+ [TAG_NAMES.NOFRAMES, TAG_ID.NOFRAMES],
34494
+ [TAG_NAMES.NOEMBED, TAG_ID.NOEMBED],
34495
+ [TAG_NAMES.NOSCRIPT, TAG_ID.NOSCRIPT],
34496
+ [TAG_NAMES.OBJECT, TAG_ID.OBJECT],
34497
+ [TAG_NAMES.OL, TAG_ID.OL],
34498
+ [TAG_NAMES.OPTGROUP, TAG_ID.OPTGROUP],
34499
+ [TAG_NAMES.OPTION, TAG_ID.OPTION],
34500
+ [TAG_NAMES.P, TAG_ID.P],
34501
+ [TAG_NAMES.PARAM, TAG_ID.PARAM],
34502
+ [TAG_NAMES.PLAINTEXT, TAG_ID.PLAINTEXT],
34503
+ [TAG_NAMES.PRE, TAG_ID.PRE],
34504
+ [TAG_NAMES.RB, TAG_ID.RB],
34505
+ [TAG_NAMES.RP, TAG_ID.RP],
34506
+ [TAG_NAMES.RT, TAG_ID.RT],
34507
+ [TAG_NAMES.RTC, TAG_ID.RTC],
34508
+ [TAG_NAMES.RUBY, TAG_ID.RUBY],
34509
+ [TAG_NAMES.S, TAG_ID.S],
34510
+ [TAG_NAMES.SCRIPT, TAG_ID.SCRIPT],
34511
+ [TAG_NAMES.SEARCH, TAG_ID.SEARCH],
34512
+ [TAG_NAMES.SECTION, TAG_ID.SECTION],
34513
+ [TAG_NAMES.SELECT, TAG_ID.SELECT],
34514
+ [TAG_NAMES.SOURCE, TAG_ID.SOURCE],
34515
+ [TAG_NAMES.SMALL, TAG_ID.SMALL],
34516
+ [TAG_NAMES.SPAN, TAG_ID.SPAN],
34517
+ [TAG_NAMES.STRIKE, TAG_ID.STRIKE],
34518
+ [TAG_NAMES.STRONG, TAG_ID.STRONG],
34519
+ [TAG_NAMES.STYLE, TAG_ID.STYLE],
34520
+ [TAG_NAMES.SUB, TAG_ID.SUB],
34521
+ [TAG_NAMES.SUMMARY, TAG_ID.SUMMARY],
34522
+ [TAG_NAMES.SUP, TAG_ID.SUP],
34523
+ [TAG_NAMES.TABLE, TAG_ID.TABLE],
34524
+ [TAG_NAMES.TBODY, TAG_ID.TBODY],
34525
+ [TAG_NAMES.TEMPLATE, TAG_ID.TEMPLATE],
34526
+ [TAG_NAMES.TEXTAREA, TAG_ID.TEXTAREA],
34527
+ [TAG_NAMES.TFOOT, TAG_ID.TFOOT],
34528
+ [TAG_NAMES.TD, TAG_ID.TD],
34529
+ [TAG_NAMES.TH, TAG_ID.TH],
34530
+ [TAG_NAMES.THEAD, TAG_ID.THEAD],
34531
+ [TAG_NAMES.TITLE, TAG_ID.TITLE],
34532
+ [TAG_NAMES.TR, TAG_ID.TR],
34533
+ [TAG_NAMES.TRACK, TAG_ID.TRACK],
34534
+ [TAG_NAMES.TT, TAG_ID.TT],
34535
+ [TAG_NAMES.U, TAG_ID.U],
34536
+ [TAG_NAMES.UL, TAG_ID.UL],
34537
+ [TAG_NAMES.SVG, TAG_ID.SVG],
34538
+ [TAG_NAMES.VAR, TAG_ID.VAR],
34539
+ [TAG_NAMES.WBR, TAG_ID.WBR],
34540
+ [TAG_NAMES.XMP, TAG_ID.XMP]
34541
+ ]), $ = TAG_ID, SPECIAL_ELEMENTS = {
34542
+ [NS.HTML]: new Set([
34543
+ $.ADDRESS,
34544
+ $.APPLET,
34545
+ $.AREA,
34546
+ $.ARTICLE,
34547
+ $.ASIDE,
34548
+ $.BASE,
34549
+ $.BASEFONT,
34550
+ $.BGSOUND,
34551
+ $.BLOCKQUOTE,
34552
+ $.BODY,
34553
+ $.BR,
34554
+ $.BUTTON,
34555
+ $.CAPTION,
34556
+ $.CENTER,
34557
+ $.COL,
34558
+ $.COLGROUP,
34559
+ $.DD,
34560
+ $.DETAILS,
34561
+ $.DIR,
34562
+ $.DIV,
34563
+ $.DL,
34564
+ $.DT,
34565
+ $.EMBED,
34566
+ $.FIELDSET,
34567
+ $.FIGCAPTION,
34568
+ $.FIGURE,
34569
+ $.FOOTER,
34570
+ $.FORM,
34571
+ $.FRAME,
34572
+ $.FRAMESET,
34573
+ $.H1,
34574
+ $.H2,
34575
+ $.H3,
34576
+ $.H4,
34577
+ $.H5,
34578
+ $.H6,
34579
+ $.HEAD,
34580
+ $.HEADER,
34581
+ $.HGROUP,
34582
+ $.HR,
34583
+ $.HTML,
34584
+ $.IFRAME,
34585
+ $.IMG,
34586
+ $.INPUT,
34587
+ $.LI,
34588
+ $.LINK,
34589
+ $.LISTING,
34590
+ $.MAIN,
34591
+ $.MARQUEE,
34592
+ $.MENU,
34593
+ $.META,
34594
+ $.NAV,
34595
+ $.NOEMBED,
34596
+ $.NOFRAMES,
34597
+ $.NOSCRIPT,
34598
+ $.OBJECT,
34599
+ $.OL,
34600
+ $.P,
34601
+ $.PARAM,
34602
+ $.PLAINTEXT,
34603
+ $.PRE,
34604
+ $.SCRIPT,
34605
+ $.SECTION,
34606
+ $.SELECT,
34607
+ $.SOURCE,
34608
+ $.STYLE,
34609
+ $.SUMMARY,
34610
+ $.TABLE,
34611
+ $.TBODY,
34612
+ $.TD,
34613
+ $.TEMPLATE,
34614
+ $.TEXTAREA,
34615
+ $.TFOOT,
34616
+ $.TH,
34617
+ $.THEAD,
34618
+ $.TITLE,
34619
+ $.TR,
34620
+ $.TRACK,
34621
+ $.UL,
34622
+ $.WBR,
34623
+ $.XMP
34624
+ ]),
34625
+ [NS.MATHML]: new Set([
34626
+ $.MI,
34627
+ $.MO,
34628
+ $.MN,
34629
+ $.MS,
34630
+ $.MTEXT,
34631
+ $.ANNOTATION_XML
34632
+ ]),
34633
+ [NS.SVG]: new Set([
34634
+ $.TITLE,
34635
+ $.FOREIGN_OBJECT,
34636
+ $.DESC
34637
+ ]),
34638
+ [NS.XLINK]: /* @__PURE__ */ new Set(),
34639
+ [NS.XML]: /* @__PURE__ */ new Set(),
34640
+ [NS.XMLNS]: /* @__PURE__ */ new Set()
34641
+ }, NUMBERED_HEADERS = new Set([
34642
+ $.H1,
34643
+ $.H2,
34644
+ $.H3,
34645
+ $.H4,
34646
+ $.H5,
34647
+ $.H6
34648
+ ]), new Set([
34649
+ TAG_NAMES.STYLE,
34650
+ TAG_NAMES.SCRIPT,
34651
+ TAG_NAMES.XMP,
34652
+ TAG_NAMES.IFRAME,
34653
+ TAG_NAMES.NOEMBED,
34654
+ TAG_NAMES.NOFRAMES,
34655
+ TAG_NAMES.PLAINTEXT
34656
+ ]);
34657
+ }));
34658
+ //#endregion
34659
+ //#region node_modules/.pnpm/parse5@8.0.1/node_modules/parse5/dist/tokenizer/index.js
34660
+ function isAsciiDigit(e) {
34661
+ return e >= CODE_POINTS.DIGIT_0 && e <= CODE_POINTS.DIGIT_9;
34662
+ }
34663
+ function isAsciiUpper(e) {
34664
+ return e >= CODE_POINTS.LATIN_CAPITAL_A && e <= CODE_POINTS.LATIN_CAPITAL_Z;
34665
+ }
34666
+ function isAsciiLower(e) {
34667
+ return e >= CODE_POINTS.LATIN_SMALL_A && e <= CODE_POINTS.LATIN_SMALL_Z;
34668
+ }
34669
+ function isAsciiLetter(e) {
34670
+ return isAsciiLower(e) || isAsciiUpper(e);
34671
+ }
34672
+ function isAsciiAlphaNumeric(e) {
34673
+ return isAsciiLetter(e) || isAsciiDigit(e);
34674
+ }
34675
+ function toAsciiLower(e) {
34676
+ return e + 32;
34677
+ }
34678
+ function isWhitespace(e) {
34679
+ return e === CODE_POINTS.SPACE || e === CODE_POINTS.LINE_FEED || e === CODE_POINTS.TABULATION || e === CODE_POINTS.FORM_FEED;
34680
+ }
34681
+ function isScriptDataDoubleEscapeSequenceEnd(e) {
34682
+ return isWhitespace(e) || e === CODE_POINTS.SOLIDUS || e === CODE_POINTS.GREATER_THAN_SIGN;
34683
+ }
34684
+ function getErrorForNumericCharacterReference(e) {
34685
+ return e === CODE_POINTS.NULL ? ERR.nullCharacterReference : e > 1114111 ? ERR.characterReferenceOutsideUnicodeRange : isSurrogate(e) ? ERR.surrogateCharacterReference : isUndefinedCodePoint(e) ? ERR.noncharacterCharacterReference : isControlCodePoint(e) || e === CODE_POINTS.CARRIAGE_RETURN ? ERR.controlCharacterReference : null;
34686
+ }
34687
+ var State, TokenizerMode, Tokenizer, init_tokenizer = __esmMin((() => {
34688
+ init_preprocessor(), init_unicode(), init_token(), init_decode(), init_error_codes(), init_html(), (function(e) {
34689
+ e[e.DATA = 0] = "DATA", e[e.RCDATA = 1] = "RCDATA", e[e.RAWTEXT = 2] = "RAWTEXT", e[e.SCRIPT_DATA = 3] = "SCRIPT_DATA", e[e.PLAINTEXT = 4] = "PLAINTEXT", e[e.TAG_OPEN = 5] = "TAG_OPEN", e[e.END_TAG_OPEN = 6] = "END_TAG_OPEN", e[e.TAG_NAME = 7] = "TAG_NAME", e[e.RCDATA_LESS_THAN_SIGN = 8] = "RCDATA_LESS_THAN_SIGN", e[e.RCDATA_END_TAG_OPEN = 9] = "RCDATA_END_TAG_OPEN", e[e.RCDATA_END_TAG_NAME = 10] = "RCDATA_END_TAG_NAME", e[e.RAWTEXT_LESS_THAN_SIGN = 11] = "RAWTEXT_LESS_THAN_SIGN", e[e.RAWTEXT_END_TAG_OPEN = 12] = "RAWTEXT_END_TAG_OPEN", e[e.RAWTEXT_END_TAG_NAME = 13] = "RAWTEXT_END_TAG_NAME", e[e.SCRIPT_DATA_LESS_THAN_SIGN = 14] = "SCRIPT_DATA_LESS_THAN_SIGN", e[e.SCRIPT_DATA_END_TAG_OPEN = 15] = "SCRIPT_DATA_END_TAG_OPEN", e[e.SCRIPT_DATA_END_TAG_NAME = 16] = "SCRIPT_DATA_END_TAG_NAME", e[e.SCRIPT_DATA_ESCAPE_START = 17] = "SCRIPT_DATA_ESCAPE_START", e[e.SCRIPT_DATA_ESCAPE_START_DASH = 18] = "SCRIPT_DATA_ESCAPE_START_DASH", e[e.SCRIPT_DATA_ESCAPED = 19] = "SCRIPT_DATA_ESCAPED", e[e.SCRIPT_DATA_ESCAPED_DASH = 20] = "SCRIPT_DATA_ESCAPED_DASH", e[e.SCRIPT_DATA_ESCAPED_DASH_DASH = 21] = "SCRIPT_DATA_ESCAPED_DASH_DASH", e[e.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN = 22] = "SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN", e[e.SCRIPT_DATA_ESCAPED_END_TAG_OPEN = 23] = "SCRIPT_DATA_ESCAPED_END_TAG_OPEN", e[e.SCRIPT_DATA_ESCAPED_END_TAG_NAME = 24] = "SCRIPT_DATA_ESCAPED_END_TAG_NAME", e[e.SCRIPT_DATA_DOUBLE_ESCAPE_START = 25] = "SCRIPT_DATA_DOUBLE_ESCAPE_START", e[e.SCRIPT_DATA_DOUBLE_ESCAPED = 26] = "SCRIPT_DATA_DOUBLE_ESCAPED", e[e.SCRIPT_DATA_DOUBLE_ESCAPED_DASH = 27] = "SCRIPT_DATA_DOUBLE_ESCAPED_DASH", e[e.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH = 28] = "SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH", e[e.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN = 29] = "SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN", e[e.SCRIPT_DATA_DOUBLE_ESCAPE_END = 30] = "SCRIPT_DATA_DOUBLE_ESCAPE_END", e[e.BEFORE_ATTRIBUTE_NAME = 31] = "BEFORE_ATTRIBUTE_NAME", e[e.ATTRIBUTE_NAME = 32] = "ATTRIBUTE_NAME", e[e.AFTER_ATTRIBUTE_NAME = 33] = "AFTER_ATTRIBUTE_NAME", e[e.BEFORE_ATTRIBUTE_VALUE = 34] = "BEFORE_ATTRIBUTE_VALUE", e[e.ATTRIBUTE_VALUE_DOUBLE_QUOTED = 35] = "ATTRIBUTE_VALUE_DOUBLE_QUOTED", e[e.ATTRIBUTE_VALUE_SINGLE_QUOTED = 36] = "ATTRIBUTE_VALUE_SINGLE_QUOTED", e[e.ATTRIBUTE_VALUE_UNQUOTED = 37] = "ATTRIBUTE_VALUE_UNQUOTED", e[e.AFTER_ATTRIBUTE_VALUE_QUOTED = 38] = "AFTER_ATTRIBUTE_VALUE_QUOTED", e[e.SELF_CLOSING_START_TAG = 39] = "SELF_CLOSING_START_TAG", e[e.BOGUS_COMMENT = 40] = "BOGUS_COMMENT", e[e.MARKUP_DECLARATION_OPEN = 41] = "MARKUP_DECLARATION_OPEN", e[e.COMMENT_START = 42] = "COMMENT_START", e[e.COMMENT_START_DASH = 43] = "COMMENT_START_DASH", e[e.COMMENT = 44] = "COMMENT", e[e.COMMENT_LESS_THAN_SIGN = 45] = "COMMENT_LESS_THAN_SIGN", e[e.COMMENT_LESS_THAN_SIGN_BANG = 46] = "COMMENT_LESS_THAN_SIGN_BANG", e[e.COMMENT_LESS_THAN_SIGN_BANG_DASH = 47] = "COMMENT_LESS_THAN_SIGN_BANG_DASH", e[e.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH = 48] = "COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH", e[e.COMMENT_END_DASH = 49] = "COMMENT_END_DASH", e[e.COMMENT_END = 50] = "COMMENT_END", e[e.COMMENT_END_BANG = 51] = "COMMENT_END_BANG", e[e.DOCTYPE = 52] = "DOCTYPE", e[e.BEFORE_DOCTYPE_NAME = 53] = "BEFORE_DOCTYPE_NAME", e[e.DOCTYPE_NAME = 54] = "DOCTYPE_NAME", e[e.AFTER_DOCTYPE_NAME = 55] = "AFTER_DOCTYPE_NAME", e[e.AFTER_DOCTYPE_PUBLIC_KEYWORD = 56] = "AFTER_DOCTYPE_PUBLIC_KEYWORD", e[e.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER = 57] = "BEFORE_DOCTYPE_PUBLIC_IDENTIFIER", e[e.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED = 58] = "DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED", e[e.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED = 59] = "DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED", e[e.AFTER_DOCTYPE_PUBLIC_IDENTIFIER = 60] = "AFTER_DOCTYPE_PUBLIC_IDENTIFIER", e[e.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS = 61] = "BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS", e[e.AFTER_DOCTYPE_SYSTEM_KEYWORD = 62] = "AFTER_DOCTYPE_SYSTEM_KEYWORD", e[e.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER = 63] = "BEFORE_DOCTYPE_SYSTEM_IDENTIFIER", e[e.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED = 64] = "DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED", e[e.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED = 65] = "DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED", e[e.AFTER_DOCTYPE_SYSTEM_IDENTIFIER = 66] = "AFTER_DOCTYPE_SYSTEM_IDENTIFIER", e[e.BOGUS_DOCTYPE = 67] = "BOGUS_DOCTYPE", e[e.CDATA_SECTION = 68] = "CDATA_SECTION", e[e.CDATA_SECTION_BRACKET = 69] = "CDATA_SECTION_BRACKET", e[e.CDATA_SECTION_END = 70] = "CDATA_SECTION_END", e[e.CHARACTER_REFERENCE = 71] = "CHARACTER_REFERENCE", e[e.AMBIGUOUS_AMPERSAND = 72] = "AMBIGUOUS_AMPERSAND";
34690
+ })(State ||= {}), TokenizerMode = {
34691
+ DATA: State.DATA,
34692
+ RCDATA: State.RCDATA,
34693
+ RAWTEXT: State.RAWTEXT,
34694
+ SCRIPT_DATA: State.SCRIPT_DATA,
34695
+ PLAINTEXT: State.PLAINTEXT,
34696
+ CDATA_SECTION: State.CDATA_SECTION
34697
+ }, Tokenizer = class {
34698
+ constructor(e, t) {
34699
+ this.options = e, this.handler = t, this.paused = !1, this.inLoop = !1, this.inForeignNode = !1, this.lastStartTagName = "", this.active = !1, this.state = State.DATA, this.returnState = State.DATA, this.entityStartPos = 0, this.consumedAfterSnapshot = -1, this.currentCharacterToken = null, this.currentToken = null, this.currentAttr = {
34700
+ name: "",
34701
+ value: ""
34702
+ }, this.preprocessor = new Preprocessor(t), this.currentLocation = this.getCurrentLocation(-1), this.entityDecoder = new EntityDecoder(htmlDecodeTree, (e, t) => {
34703
+ this.preprocessor.pos = this.entityStartPos + t - 1, this._flushCodePointConsumedAsCharacterReference(e);
34704
+ }, t.onParseError ? {
34705
+ missingSemicolonAfterCharacterReference: () => {
34706
+ this._err(ERR.missingSemicolonAfterCharacterReference, 1);
34707
+ },
34708
+ absenceOfDigitsInNumericCharacterReference: (e) => {
34709
+ this._err(ERR.absenceOfDigitsInNumericCharacterReference, this.entityStartPos - this.preprocessor.pos + e);
34710
+ },
34711
+ validateNumericCharacterReference: (e) => {
34712
+ let t = getErrorForNumericCharacterReference(e);
34713
+ t && this._err(t, 1);
34714
+ }
34715
+ } : void 0);
34716
+ }
34717
+ _err(e, t = 0) {
34718
+ var n, i;
34719
+ (i = (n = this.handler).onParseError) == null || i.call(n, this.preprocessor.getError(e, t));
34720
+ }
34721
+ getCurrentLocation(e) {
34722
+ return this.options.sourceCodeLocationInfo ? {
34723
+ startLine: this.preprocessor.line,
34724
+ startCol: this.preprocessor.col - e,
34725
+ startOffset: this.preprocessor.offset - e,
34726
+ endLine: -1,
34727
+ endCol: -1,
34728
+ endOffset: -1
34729
+ } : null;
34730
+ }
34731
+ _runParsingLoop() {
34732
+ if (!this.inLoop) {
34733
+ for (this.inLoop = !0; this.active && !this.paused;) {
34734
+ this.consumedAfterSnapshot = 0;
34735
+ let e = this._consume();
34736
+ this._ensureHibernation() || this._callState(e);
34737
+ }
34738
+ this.inLoop = !1;
34739
+ }
34740
+ }
34741
+ pause() {
34742
+ this.paused = !0;
34743
+ }
34744
+ resume(e) {
34745
+ if (!this.paused) throw Error("Parser was already resumed");
34746
+ this.paused = !1, !this.inLoop && (this._runParsingLoop(), this.paused || e?.());
34747
+ }
34748
+ write(e, t, n) {
34749
+ this.active = !0, this.preprocessor.write(e, t), this._runParsingLoop(), this.paused || n?.();
34750
+ }
34751
+ insertHtmlAtCurrentPos(e) {
34752
+ this.active = !0, this.preprocessor.insertHtmlAtCurrentPos(e), this._runParsingLoop();
34753
+ }
34754
+ _ensureHibernation() {
34755
+ return this.preprocessor.endOfChunkHit ? (this.preprocessor.retreat(this.consumedAfterSnapshot), this.consumedAfterSnapshot = 0, this.active = !1, !0) : !1;
34756
+ }
34757
+ _consume() {
34758
+ return this.consumedAfterSnapshot++, this.preprocessor.advance();
34759
+ }
34760
+ _advanceBy(e) {
34761
+ this.consumedAfterSnapshot += e;
34762
+ for (let t = 0; t < e; t++) this.preprocessor.advance();
34763
+ }
34764
+ _consumeSequenceIfMatch(e, t) {
34765
+ return this.preprocessor.startsWith(e, t) ? (this._advanceBy(e.length - 1), !0) : !1;
34766
+ }
34767
+ _createStartTagToken() {
34768
+ this.currentToken = {
34769
+ type: TokenType.START_TAG,
34770
+ tagName: "",
34771
+ tagID: TAG_ID.UNKNOWN,
34772
+ selfClosing: !1,
34773
+ ackSelfClosing: !1,
34774
+ attrs: [],
34775
+ location: this.getCurrentLocation(1)
34776
+ };
34777
+ }
34778
+ _createEndTagToken() {
34779
+ this.currentToken = {
34780
+ type: TokenType.END_TAG,
34781
+ tagName: "",
34782
+ tagID: TAG_ID.UNKNOWN,
34783
+ selfClosing: !1,
34784
+ ackSelfClosing: !1,
34785
+ attrs: [],
34786
+ location: this.getCurrentLocation(2)
34787
+ };
34788
+ }
34789
+ _createCommentToken(e) {
34790
+ this.currentToken = {
34791
+ type: TokenType.COMMENT,
34792
+ data: "",
34793
+ location: this.getCurrentLocation(e)
34794
+ };
34795
+ }
34796
+ _createDoctypeToken(e) {
34797
+ this.currentToken = {
34798
+ type: TokenType.DOCTYPE,
34799
+ name: e,
34800
+ forceQuirks: !1,
34801
+ publicId: null,
34802
+ systemId: null,
34803
+ location: this.currentLocation
34804
+ };
34805
+ }
34806
+ _createCharacterToken(e, t) {
34807
+ this.currentCharacterToken = {
34808
+ type: e,
34809
+ chars: t,
34810
+ location: this.currentLocation
34811
+ };
34812
+ }
34813
+ _createAttr(e) {
34814
+ this.currentAttr = {
34815
+ name: e,
34816
+ value: ""
34817
+ }, this.currentLocation = this.getCurrentLocation(0);
34818
+ }
34819
+ _leaveAttrName() {
34820
+ var e, t;
34821
+ let n = this.currentToken;
34822
+ if (getTokenAttr(n, this.currentAttr.name) === null) {
34823
+ if (n.attrs.push(this.currentAttr), n.location && this.currentLocation) {
34824
+ let e = (t = n.location).attrs ?? (t.attrs = Object.create(null));
34825
+ e[this.currentAttr.name] = this.currentLocation, this._leaveAttrValue();
34826
+ }
34827
+ } else this._err(ERR.duplicateAttribute);
34828
+ }
34829
+ _leaveAttrValue() {
34830
+ this.currentLocation && (this.currentLocation.endLine = this.preprocessor.line, this.currentLocation.endCol = this.preprocessor.col, this.currentLocation.endOffset = this.preprocessor.offset);
34831
+ }
34832
+ prepareToken(e) {
34833
+ this._emitCurrentCharacterToken(e.location), this.currentToken = null, e.location && (e.location.endLine = this.preprocessor.line, e.location.endCol = this.preprocessor.col + 1, e.location.endOffset = this.preprocessor.offset + 1), this.currentLocation = this.getCurrentLocation(-1);
34834
+ }
34835
+ emitCurrentTagToken() {
34836
+ let e = this.currentToken;
34837
+ this.prepareToken(e), e.tagID = getTagID(e.tagName), e.type === TokenType.START_TAG ? (this.lastStartTagName = e.tagName, this.handler.onStartTag(e)) : (e.attrs.length > 0 && this._err(ERR.endTagWithAttributes), e.selfClosing && this._err(ERR.endTagWithTrailingSolidus), this.handler.onEndTag(e)), this.preprocessor.dropParsedChunk();
34838
+ }
34839
+ emitCurrentComment(e) {
34840
+ this.prepareToken(e), this.handler.onComment(e), this.preprocessor.dropParsedChunk();
34841
+ }
34842
+ emitCurrentDoctype(e) {
34843
+ this.prepareToken(e), this.handler.onDoctype(e), this.preprocessor.dropParsedChunk();
34844
+ }
34845
+ _emitCurrentCharacterToken(e) {
34846
+ if (this.currentCharacterToken) {
34847
+ switch (e && this.currentCharacterToken.location && (this.currentCharacterToken.location.endLine = e.startLine, this.currentCharacterToken.location.endCol = e.startCol, this.currentCharacterToken.location.endOffset = e.startOffset), this.currentCharacterToken.type) {
34848
+ case TokenType.CHARACTER:
34849
+ this.handler.onCharacter(this.currentCharacterToken);
34850
+ break;
34851
+ case TokenType.NULL_CHARACTER:
34852
+ this.handler.onNullCharacter(this.currentCharacterToken);
34853
+ break;
34854
+ case TokenType.WHITESPACE_CHARACTER:
34855
+ this.handler.onWhitespaceCharacter(this.currentCharacterToken);
34856
+ break;
34857
+ }
34858
+ this.currentCharacterToken = null;
34859
+ }
34860
+ }
34861
+ _emitEOFToken() {
34862
+ let e = this.getCurrentLocation(0);
34863
+ e && (e.endLine = e.startLine, e.endCol = e.startCol, e.endOffset = e.startOffset), this._emitCurrentCharacterToken(e), this.handler.onEof({
34864
+ type: TokenType.EOF,
34865
+ location: e
34866
+ }), this.active = !1;
34867
+ }
34868
+ _appendCharToCurrentCharacterToken(e, t) {
34869
+ if (this.currentCharacterToken) if (this.currentCharacterToken.type === e) {
34870
+ this.currentCharacterToken.chars += t;
34871
+ return;
34872
+ } else this.currentLocation = this.getCurrentLocation(0), this._emitCurrentCharacterToken(this.currentLocation), this.preprocessor.dropParsedChunk();
34873
+ this._createCharacterToken(e, t);
34874
+ }
34875
+ _emitCodePoint(e) {
34876
+ let t = isWhitespace(e) ? TokenType.WHITESPACE_CHARACTER : e === CODE_POINTS.NULL ? TokenType.NULL_CHARACTER : TokenType.CHARACTER;
34877
+ this._appendCharToCurrentCharacterToken(t, e < 65536 ? String.fromCharCode(e) : String.fromCodePoint(e));
34878
+ }
34879
+ _emitChars(e) {
34880
+ this._appendCharToCurrentCharacterToken(TokenType.CHARACTER, e);
34881
+ }
34882
+ _startCharacterReference() {
34883
+ this.returnState = this.state, this.state = State.CHARACTER_REFERENCE, this.entityStartPos = this.preprocessor.pos, this.entityDecoder.startEntity(this._isCharacterReferenceInAttribute() ? DecodingMode.Attribute : DecodingMode.Legacy);
34884
+ }
34885
+ _isCharacterReferenceInAttribute() {
34886
+ return this.returnState === State.ATTRIBUTE_VALUE_DOUBLE_QUOTED || this.returnState === State.ATTRIBUTE_VALUE_SINGLE_QUOTED || this.returnState === State.ATTRIBUTE_VALUE_UNQUOTED;
34887
+ }
34888
+ _flushCodePointConsumedAsCharacterReference(e) {
34889
+ this._isCharacterReferenceInAttribute() ? this.currentAttr.value += String.fromCodePoint(e) : this._emitCodePoint(e);
34890
+ }
34891
+ _callState(e) {
34892
+ switch (this.state) {
34893
+ case State.DATA:
34894
+ this._stateData(e);
34895
+ break;
34896
+ case State.RCDATA:
34897
+ this._stateRcdata(e);
34898
+ break;
34899
+ case State.RAWTEXT:
34900
+ this._stateRawtext(e);
34901
+ break;
34902
+ case State.SCRIPT_DATA:
34903
+ this._stateScriptData(e);
34904
+ break;
34905
+ case State.PLAINTEXT:
34906
+ this._statePlaintext(e);
34907
+ break;
34908
+ case State.TAG_OPEN:
34909
+ this._stateTagOpen(e);
34910
+ break;
34911
+ case State.END_TAG_OPEN:
34912
+ this._stateEndTagOpen(e);
34913
+ break;
34914
+ case State.TAG_NAME:
34915
+ this._stateTagName(e);
34916
+ break;
34917
+ case State.RCDATA_LESS_THAN_SIGN:
34918
+ this._stateRcdataLessThanSign(e);
34919
+ break;
34920
+ case State.RCDATA_END_TAG_OPEN:
34921
+ this._stateRcdataEndTagOpen(e);
34922
+ break;
34923
+ case State.RCDATA_END_TAG_NAME:
34924
+ this._stateRcdataEndTagName(e);
34925
+ break;
34926
+ case State.RAWTEXT_LESS_THAN_SIGN:
34927
+ this._stateRawtextLessThanSign(e);
34928
+ break;
34929
+ case State.RAWTEXT_END_TAG_OPEN:
34930
+ this._stateRawtextEndTagOpen(e);
34931
+ break;
34932
+ case State.RAWTEXT_END_TAG_NAME:
34933
+ this._stateRawtextEndTagName(e);
34934
+ break;
34935
+ case State.SCRIPT_DATA_LESS_THAN_SIGN:
34936
+ this._stateScriptDataLessThanSign(e);
34937
+ break;
34938
+ case State.SCRIPT_DATA_END_TAG_OPEN:
34939
+ this._stateScriptDataEndTagOpen(e);
34940
+ break;
34941
+ case State.SCRIPT_DATA_END_TAG_NAME:
34942
+ this._stateScriptDataEndTagName(e);
34943
+ break;
34944
+ case State.SCRIPT_DATA_ESCAPE_START:
34945
+ this._stateScriptDataEscapeStart(e);
34946
+ break;
34947
+ case State.SCRIPT_DATA_ESCAPE_START_DASH:
34948
+ this._stateScriptDataEscapeStartDash(e);
34949
+ break;
34950
+ case State.SCRIPT_DATA_ESCAPED:
34951
+ this._stateScriptDataEscaped(e);
34952
+ break;
34953
+ case State.SCRIPT_DATA_ESCAPED_DASH:
34954
+ this._stateScriptDataEscapedDash(e);
34955
+ break;
34956
+ case State.SCRIPT_DATA_ESCAPED_DASH_DASH:
34957
+ this._stateScriptDataEscapedDashDash(e);
34958
+ break;
34959
+ case State.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN:
34960
+ this._stateScriptDataEscapedLessThanSign(e);
34961
+ break;
34962
+ case State.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:
34963
+ this._stateScriptDataEscapedEndTagOpen(e);
34964
+ break;
34965
+ case State.SCRIPT_DATA_ESCAPED_END_TAG_NAME:
34966
+ this._stateScriptDataEscapedEndTagName(e);
34967
+ break;
34968
+ case State.SCRIPT_DATA_DOUBLE_ESCAPE_START:
34969
+ this._stateScriptDataDoubleEscapeStart(e);
34970
+ break;
34971
+ case State.SCRIPT_DATA_DOUBLE_ESCAPED:
34972
+ this._stateScriptDataDoubleEscaped(e);
34973
+ break;
34974
+ case State.SCRIPT_DATA_DOUBLE_ESCAPED_DASH:
34975
+ this._stateScriptDataDoubleEscapedDash(e);
34976
+ break;
34977
+ case State.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH:
34978
+ this._stateScriptDataDoubleEscapedDashDash(e);
34979
+ break;
34980
+ case State.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN:
34981
+ this._stateScriptDataDoubleEscapedLessThanSign(e);
34982
+ break;
34983
+ case State.SCRIPT_DATA_DOUBLE_ESCAPE_END:
34984
+ this._stateScriptDataDoubleEscapeEnd(e);
34985
+ break;
34986
+ case State.BEFORE_ATTRIBUTE_NAME:
34987
+ this._stateBeforeAttributeName(e);
34988
+ break;
34989
+ case State.ATTRIBUTE_NAME:
34990
+ this._stateAttributeName(e);
34991
+ break;
34992
+ case State.AFTER_ATTRIBUTE_NAME:
34993
+ this._stateAfterAttributeName(e);
34994
+ break;
34995
+ case State.BEFORE_ATTRIBUTE_VALUE:
34996
+ this._stateBeforeAttributeValue(e);
34997
+ break;
34998
+ case State.ATTRIBUTE_VALUE_DOUBLE_QUOTED:
34999
+ this._stateAttributeValueDoubleQuoted(e);
35000
+ break;
35001
+ case State.ATTRIBUTE_VALUE_SINGLE_QUOTED:
35002
+ this._stateAttributeValueSingleQuoted(e);
35003
+ break;
35004
+ case State.ATTRIBUTE_VALUE_UNQUOTED:
35005
+ this._stateAttributeValueUnquoted(e);
35006
+ break;
35007
+ case State.AFTER_ATTRIBUTE_VALUE_QUOTED:
35008
+ this._stateAfterAttributeValueQuoted(e);
35009
+ break;
35010
+ case State.SELF_CLOSING_START_TAG:
35011
+ this._stateSelfClosingStartTag(e);
35012
+ break;
35013
+ case State.BOGUS_COMMENT:
35014
+ this._stateBogusComment(e);
35015
+ break;
35016
+ case State.MARKUP_DECLARATION_OPEN:
35017
+ this._stateMarkupDeclarationOpen(e);
35018
+ break;
35019
+ case State.COMMENT_START:
35020
+ this._stateCommentStart(e);
35021
+ break;
35022
+ case State.COMMENT_START_DASH:
35023
+ this._stateCommentStartDash(e);
35024
+ break;
35025
+ case State.COMMENT:
35026
+ this._stateComment(e);
35027
+ break;
35028
+ case State.COMMENT_LESS_THAN_SIGN:
35029
+ this._stateCommentLessThanSign(e);
35030
+ break;
35031
+ case State.COMMENT_LESS_THAN_SIGN_BANG:
35032
+ this._stateCommentLessThanSignBang(e);
35033
+ break;
35034
+ case State.COMMENT_LESS_THAN_SIGN_BANG_DASH:
35035
+ this._stateCommentLessThanSignBangDash(e);
35036
+ break;
35037
+ case State.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:
35038
+ this._stateCommentLessThanSignBangDashDash(e);
35039
+ break;
35040
+ case State.COMMENT_END_DASH:
35041
+ this._stateCommentEndDash(e);
35042
+ break;
35043
+ case State.COMMENT_END:
35044
+ this._stateCommentEnd(e);
35045
+ break;
35046
+ case State.COMMENT_END_BANG:
35047
+ this._stateCommentEndBang(e);
35048
+ break;
35049
+ case State.DOCTYPE:
35050
+ this._stateDoctype(e);
35051
+ break;
35052
+ case State.BEFORE_DOCTYPE_NAME:
35053
+ this._stateBeforeDoctypeName(e);
35054
+ break;
35055
+ case State.DOCTYPE_NAME:
35056
+ this._stateDoctypeName(e);
35057
+ break;
35058
+ case State.AFTER_DOCTYPE_NAME:
35059
+ this._stateAfterDoctypeName(e);
35060
+ break;
35061
+ case State.AFTER_DOCTYPE_PUBLIC_KEYWORD:
35062
+ this._stateAfterDoctypePublicKeyword(e);
35063
+ break;
35064
+ case State.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER:
35065
+ this._stateBeforeDoctypePublicIdentifier(e);
35066
+ break;
35067
+ case State.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED:
35068
+ this._stateDoctypePublicIdentifierDoubleQuoted(e);
35069
+ break;
35070
+ case State.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED:
35071
+ this._stateDoctypePublicIdentifierSingleQuoted(e);
35072
+ break;
35073
+ case State.AFTER_DOCTYPE_PUBLIC_IDENTIFIER:
35074
+ this._stateAfterDoctypePublicIdentifier(e);
35075
+ break;
35076
+ case State.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS:
35077
+ this._stateBetweenDoctypePublicAndSystemIdentifiers(e);
35078
+ break;
35079
+ case State.AFTER_DOCTYPE_SYSTEM_KEYWORD:
35080
+ this._stateAfterDoctypeSystemKeyword(e);
35081
+ break;
35082
+ case State.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER:
35083
+ this._stateBeforeDoctypeSystemIdentifier(e);
35084
+ break;
35085
+ case State.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED:
35086
+ this._stateDoctypeSystemIdentifierDoubleQuoted(e);
35087
+ break;
35088
+ case State.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED:
35089
+ this._stateDoctypeSystemIdentifierSingleQuoted(e);
35090
+ break;
35091
+ case State.AFTER_DOCTYPE_SYSTEM_IDENTIFIER:
35092
+ this._stateAfterDoctypeSystemIdentifier(e);
35093
+ break;
35094
+ case State.BOGUS_DOCTYPE:
35095
+ this._stateBogusDoctype(e);
35096
+ break;
35097
+ case State.CDATA_SECTION:
35098
+ this._stateCdataSection(e);
35099
+ break;
35100
+ case State.CDATA_SECTION_BRACKET:
35101
+ this._stateCdataSectionBracket(e);
35102
+ break;
35103
+ case State.CDATA_SECTION_END:
35104
+ this._stateCdataSectionEnd(e);
35105
+ break;
35106
+ case State.CHARACTER_REFERENCE:
35107
+ this._stateCharacterReference();
35108
+ break;
35109
+ case State.AMBIGUOUS_AMPERSAND:
35110
+ this._stateAmbiguousAmpersand(e);
35111
+ break;
35112
+ default: throw Error("Unknown state");
35113
+ }
35114
+ }
35115
+ _stateData(e) {
35116
+ switch (e) {
35117
+ case CODE_POINTS.LESS_THAN_SIGN:
35118
+ this.state = State.TAG_OPEN;
35119
+ break;
35120
+ case CODE_POINTS.AMPERSAND:
35121
+ this._startCharacterReference();
35122
+ break;
35123
+ case CODE_POINTS.NULL:
35124
+ this._err(ERR.unexpectedNullCharacter), this._emitCodePoint(e);
35125
+ break;
35126
+ case CODE_POINTS.EOF:
35127
+ this._emitEOFToken();
35128
+ break;
35129
+ default: this._emitCodePoint(e);
35130
+ }
35131
+ }
35132
+ _stateRcdata(e) {
35133
+ switch (e) {
35134
+ case CODE_POINTS.AMPERSAND:
35135
+ this._startCharacterReference();
35136
+ break;
35137
+ case CODE_POINTS.LESS_THAN_SIGN:
35138
+ this.state = State.RCDATA_LESS_THAN_SIGN;
35139
+ break;
35140
+ case CODE_POINTS.NULL:
35141
+ this._err(ERR.unexpectedNullCharacter), this._emitChars("�");
35142
+ break;
35143
+ case CODE_POINTS.EOF:
35144
+ this._emitEOFToken();
35145
+ break;
35146
+ default: this._emitCodePoint(e);
35147
+ }
35148
+ }
35149
+ _stateRawtext(e) {
35150
+ switch (e) {
35151
+ case CODE_POINTS.LESS_THAN_SIGN:
35152
+ this.state = State.RAWTEXT_LESS_THAN_SIGN;
35153
+ break;
35154
+ case CODE_POINTS.NULL:
35155
+ this._err(ERR.unexpectedNullCharacter), this._emitChars("�");
35156
+ break;
35157
+ case CODE_POINTS.EOF:
35158
+ this._emitEOFToken();
35159
+ break;
35160
+ default: this._emitCodePoint(e);
35161
+ }
35162
+ }
35163
+ _stateScriptData(e) {
35164
+ switch (e) {
35165
+ case CODE_POINTS.LESS_THAN_SIGN:
35166
+ this.state = State.SCRIPT_DATA_LESS_THAN_SIGN;
35167
+ break;
35168
+ case CODE_POINTS.NULL:
35169
+ this._err(ERR.unexpectedNullCharacter), this._emitChars("�");
35170
+ break;
35171
+ case CODE_POINTS.EOF:
35172
+ this._emitEOFToken();
35173
+ break;
35174
+ default: this._emitCodePoint(e);
35175
+ }
35176
+ }
35177
+ _statePlaintext(e) {
35178
+ switch (e) {
35179
+ case CODE_POINTS.NULL:
35180
+ this._err(ERR.unexpectedNullCharacter), this._emitChars("�");
35181
+ break;
35182
+ case CODE_POINTS.EOF:
35183
+ this._emitEOFToken();
35184
+ break;
35185
+ default: this._emitCodePoint(e);
35186
+ }
35187
+ }
35188
+ _stateTagOpen(e) {
35189
+ if (isAsciiLetter(e)) this._createStartTagToken(), this.state = State.TAG_NAME, this._stateTagName(e);
35190
+ else switch (e) {
35191
+ case CODE_POINTS.EXCLAMATION_MARK:
35192
+ this.state = State.MARKUP_DECLARATION_OPEN;
35193
+ break;
35194
+ case CODE_POINTS.SOLIDUS:
35195
+ this.state = State.END_TAG_OPEN;
35196
+ break;
35197
+ case CODE_POINTS.QUESTION_MARK:
35198
+ this._err(ERR.unexpectedQuestionMarkInsteadOfTagName), this._createCommentToken(1), this.state = State.BOGUS_COMMENT, this._stateBogusComment(e);
35199
+ break;
35200
+ case CODE_POINTS.EOF:
35201
+ this._err(ERR.eofBeforeTagName), this._emitChars("<"), this._emitEOFToken();
35202
+ break;
35203
+ default: this._err(ERR.invalidFirstCharacterOfTagName), this._emitChars("<"), this.state = State.DATA, this._stateData(e);
35204
+ }
35205
+ }
35206
+ _stateEndTagOpen(e) {
35207
+ if (isAsciiLetter(e)) this._createEndTagToken(), this.state = State.TAG_NAME, this._stateTagName(e);
35208
+ else switch (e) {
35209
+ case CODE_POINTS.GREATER_THAN_SIGN:
35210
+ this._err(ERR.missingEndTagName), this.state = State.DATA;
35211
+ break;
35212
+ case CODE_POINTS.EOF:
35213
+ this._err(ERR.eofBeforeTagName), this._emitChars("</"), this._emitEOFToken();
35214
+ break;
35215
+ default: this._err(ERR.invalidFirstCharacterOfTagName), this._createCommentToken(2), this.state = State.BOGUS_COMMENT, this._stateBogusComment(e);
35216
+ }
35217
+ }
35218
+ _stateTagName(e) {
35219
+ let t = this.currentToken;
35220
+ switch (e) {
35221
+ case CODE_POINTS.SPACE:
35222
+ case CODE_POINTS.LINE_FEED:
35223
+ case CODE_POINTS.TABULATION:
35224
+ case CODE_POINTS.FORM_FEED:
35225
+ this.state = State.BEFORE_ATTRIBUTE_NAME;
35226
+ break;
35227
+ case CODE_POINTS.SOLIDUS:
35228
+ this.state = State.SELF_CLOSING_START_TAG;
35229
+ break;
35230
+ case CODE_POINTS.GREATER_THAN_SIGN:
35231
+ this.state = State.DATA, this.emitCurrentTagToken();
35232
+ break;
35233
+ case CODE_POINTS.NULL:
35234
+ this._err(ERR.unexpectedNullCharacter), t.tagName += "�";
35235
+ break;
35236
+ case CODE_POINTS.EOF:
35237
+ this._err(ERR.eofInTag), this._emitEOFToken();
35238
+ break;
35239
+ default: t.tagName += String.fromCodePoint(isAsciiUpper(e) ? toAsciiLower(e) : e);
35240
+ }
35241
+ }
35242
+ _stateRcdataLessThanSign(e) {
35243
+ e === CODE_POINTS.SOLIDUS ? this.state = State.RCDATA_END_TAG_OPEN : (this._emitChars("<"), this.state = State.RCDATA, this._stateRcdata(e));
35244
+ }
35245
+ _stateRcdataEndTagOpen(e) {
35246
+ isAsciiLetter(e) ? (this.state = State.RCDATA_END_TAG_NAME, this._stateRcdataEndTagName(e)) : (this._emitChars("</"), this.state = State.RCDATA, this._stateRcdata(e));
35247
+ }
35248
+ handleSpecialEndTag(e) {
35249
+ if (!this.preprocessor.startsWith(this.lastStartTagName, !1)) return !this._ensureHibernation();
35250
+ this._createEndTagToken();
35251
+ let t = this.currentToken;
35252
+ switch (t.tagName = this.lastStartTagName, this.preprocessor.peek(this.lastStartTagName.length)) {
35253
+ case CODE_POINTS.SPACE:
35254
+ case CODE_POINTS.LINE_FEED:
35255
+ case CODE_POINTS.TABULATION:
35256
+ case CODE_POINTS.FORM_FEED: return this._advanceBy(this.lastStartTagName.length), this.state = State.BEFORE_ATTRIBUTE_NAME, !1;
35257
+ case CODE_POINTS.SOLIDUS: return this._advanceBy(this.lastStartTagName.length), this.state = State.SELF_CLOSING_START_TAG, !1;
35258
+ case CODE_POINTS.GREATER_THAN_SIGN: return this._advanceBy(this.lastStartTagName.length), this.emitCurrentTagToken(), this.state = State.DATA, !1;
35259
+ default: return !this._ensureHibernation();
35260
+ }
35261
+ }
35262
+ _stateRcdataEndTagName(e) {
35263
+ this.handleSpecialEndTag(e) && (this._emitChars("</"), this.state = State.RCDATA, this._stateRcdata(e));
35264
+ }
35265
+ _stateRawtextLessThanSign(e) {
35266
+ e === CODE_POINTS.SOLIDUS ? this.state = State.RAWTEXT_END_TAG_OPEN : (this._emitChars("<"), this.state = State.RAWTEXT, this._stateRawtext(e));
35267
+ }
35268
+ _stateRawtextEndTagOpen(e) {
35269
+ isAsciiLetter(e) ? (this.state = State.RAWTEXT_END_TAG_NAME, this._stateRawtextEndTagName(e)) : (this._emitChars("</"), this.state = State.RAWTEXT, this._stateRawtext(e));
35270
+ }
35271
+ _stateRawtextEndTagName(e) {
35272
+ this.handleSpecialEndTag(e) && (this._emitChars("</"), this.state = State.RAWTEXT, this._stateRawtext(e));
35273
+ }
35274
+ _stateScriptDataLessThanSign(e) {
35275
+ switch (e) {
35276
+ case CODE_POINTS.SOLIDUS:
35277
+ this.state = State.SCRIPT_DATA_END_TAG_OPEN;
35278
+ break;
35279
+ case CODE_POINTS.EXCLAMATION_MARK:
35280
+ this.state = State.SCRIPT_DATA_ESCAPE_START, this._emitChars("<!");
35281
+ break;
35282
+ default: this._emitChars("<"), this.state = State.SCRIPT_DATA, this._stateScriptData(e);
35283
+ }
35284
+ }
35285
+ _stateScriptDataEndTagOpen(e) {
35286
+ isAsciiLetter(e) ? (this.state = State.SCRIPT_DATA_END_TAG_NAME, this._stateScriptDataEndTagName(e)) : (this._emitChars("</"), this.state = State.SCRIPT_DATA, this._stateScriptData(e));
35287
+ }
35288
+ _stateScriptDataEndTagName(e) {
35289
+ this.handleSpecialEndTag(e) && (this._emitChars("</"), this.state = State.SCRIPT_DATA, this._stateScriptData(e));
35290
+ }
35291
+ _stateScriptDataEscapeStart(e) {
35292
+ e === CODE_POINTS.HYPHEN_MINUS ? (this.state = State.SCRIPT_DATA_ESCAPE_START_DASH, this._emitChars("-")) : (this.state = State.SCRIPT_DATA, this._stateScriptData(e));
35293
+ }
35294
+ _stateScriptDataEscapeStartDash(e) {
35295
+ e === CODE_POINTS.HYPHEN_MINUS ? (this.state = State.SCRIPT_DATA_ESCAPED_DASH_DASH, this._emitChars("-")) : (this.state = State.SCRIPT_DATA, this._stateScriptData(e));
35296
+ }
35297
+ _stateScriptDataEscaped(e) {
35298
+ switch (e) {
35299
+ case CODE_POINTS.HYPHEN_MINUS:
35300
+ this.state = State.SCRIPT_DATA_ESCAPED_DASH, this._emitChars("-");
35301
+ break;
35302
+ case CODE_POINTS.LESS_THAN_SIGN:
35303
+ this.state = State.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;
35304
+ break;
35305
+ case CODE_POINTS.NULL:
35306
+ this._err(ERR.unexpectedNullCharacter), this._emitChars("�");
35307
+ break;
35308
+ case CODE_POINTS.EOF:
35309
+ this._err(ERR.eofInScriptHtmlCommentLikeText), this._emitEOFToken();
35310
+ break;
35311
+ default: this._emitCodePoint(e);
35312
+ }
35313
+ }
35314
+ _stateScriptDataEscapedDash(e) {
35315
+ switch (e) {
35316
+ case CODE_POINTS.HYPHEN_MINUS:
35317
+ this.state = State.SCRIPT_DATA_ESCAPED_DASH_DASH, this._emitChars("-");
35318
+ break;
35319
+ case CODE_POINTS.LESS_THAN_SIGN:
35320
+ this.state = State.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;
35321
+ break;
35322
+ case CODE_POINTS.NULL:
35323
+ this._err(ERR.unexpectedNullCharacter), this.state = State.SCRIPT_DATA_ESCAPED, this._emitChars("�");
35324
+ break;
35325
+ case CODE_POINTS.EOF:
35326
+ this._err(ERR.eofInScriptHtmlCommentLikeText), this._emitEOFToken();
35327
+ break;
35328
+ default: this.state = State.SCRIPT_DATA_ESCAPED, this._emitCodePoint(e);
35329
+ }
35330
+ }
35331
+ _stateScriptDataEscapedDashDash(e) {
35332
+ switch (e) {
35333
+ case CODE_POINTS.HYPHEN_MINUS:
35334
+ this._emitChars("-");
35335
+ break;
35336
+ case CODE_POINTS.LESS_THAN_SIGN:
35337
+ this.state = State.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;
35338
+ break;
35339
+ case CODE_POINTS.GREATER_THAN_SIGN:
35340
+ this.state = State.SCRIPT_DATA, this._emitChars(">");
35341
+ break;
35342
+ case CODE_POINTS.NULL:
35343
+ this._err(ERR.unexpectedNullCharacter), this.state = State.SCRIPT_DATA_ESCAPED, this._emitChars("�");
35344
+ break;
35345
+ case CODE_POINTS.EOF:
35346
+ this._err(ERR.eofInScriptHtmlCommentLikeText), this._emitEOFToken();
35347
+ break;
35348
+ default: this.state = State.SCRIPT_DATA_ESCAPED, this._emitCodePoint(e);
35349
+ }
35350
+ }
35351
+ _stateScriptDataEscapedLessThanSign(e) {
35352
+ e === CODE_POINTS.SOLIDUS ? this.state = State.SCRIPT_DATA_ESCAPED_END_TAG_OPEN : isAsciiLetter(e) ? (this._emitChars("<"), this.state = State.SCRIPT_DATA_DOUBLE_ESCAPE_START, this._stateScriptDataDoubleEscapeStart(e)) : (this._emitChars("<"), this.state = State.SCRIPT_DATA_ESCAPED, this._stateScriptDataEscaped(e));
35353
+ }
35354
+ _stateScriptDataEscapedEndTagOpen(e) {
35355
+ isAsciiLetter(e) ? (this.state = State.SCRIPT_DATA_ESCAPED_END_TAG_NAME, this._stateScriptDataEscapedEndTagName(e)) : (this._emitChars("</"), this.state = State.SCRIPT_DATA_ESCAPED, this._stateScriptDataEscaped(e));
35356
+ }
35357
+ _stateScriptDataEscapedEndTagName(e) {
35358
+ this.handleSpecialEndTag(e) && (this._emitChars("</"), this.state = State.SCRIPT_DATA_ESCAPED, this._stateScriptDataEscaped(e));
35359
+ }
35360
+ _stateScriptDataDoubleEscapeStart(e) {
35361
+ if (this.preprocessor.startsWith(SEQUENCES.SCRIPT, !1) && isScriptDataDoubleEscapeSequenceEnd(this.preprocessor.peek(SEQUENCES.SCRIPT.length))) {
35362
+ this._emitCodePoint(e);
35363
+ for (let e = 0; e < SEQUENCES.SCRIPT.length; e++) this._emitCodePoint(this._consume());
35364
+ this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED;
35365
+ } else this._ensureHibernation() || (this.state = State.SCRIPT_DATA_ESCAPED, this._stateScriptDataEscaped(e));
35366
+ }
35367
+ _stateScriptDataDoubleEscaped(e) {
35368
+ switch (e) {
35369
+ case CODE_POINTS.HYPHEN_MINUS:
35370
+ this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED_DASH, this._emitChars("-");
35371
+ break;
35372
+ case CODE_POINTS.LESS_THAN_SIGN:
35373
+ this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN, this._emitChars("<");
35374
+ break;
35375
+ case CODE_POINTS.NULL:
35376
+ this._err(ERR.unexpectedNullCharacter), this._emitChars("�");
35377
+ break;
35378
+ case CODE_POINTS.EOF:
35379
+ this._err(ERR.eofInScriptHtmlCommentLikeText), this._emitEOFToken();
35380
+ break;
35381
+ default: this._emitCodePoint(e);
35382
+ }
35383
+ }
35384
+ _stateScriptDataDoubleEscapedDash(e) {
35385
+ switch (e) {
35386
+ case CODE_POINTS.HYPHEN_MINUS:
35387
+ this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH, this._emitChars("-");
35388
+ break;
35389
+ case CODE_POINTS.LESS_THAN_SIGN:
35390
+ this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN, this._emitChars("<");
35391
+ break;
35392
+ case CODE_POINTS.NULL:
35393
+ this._err(ERR.unexpectedNullCharacter), this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED, this._emitChars("�");
35394
+ break;
35395
+ case CODE_POINTS.EOF:
35396
+ this._err(ERR.eofInScriptHtmlCommentLikeText), this._emitEOFToken();
35397
+ break;
35398
+ default: this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED, this._emitCodePoint(e);
35399
+ }
35400
+ }
35401
+ _stateScriptDataDoubleEscapedDashDash(e) {
35402
+ switch (e) {
35403
+ case CODE_POINTS.HYPHEN_MINUS:
35404
+ this._emitChars("-");
35405
+ break;
35406
+ case CODE_POINTS.LESS_THAN_SIGN:
35407
+ this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN, this._emitChars("<");
35408
+ break;
35409
+ case CODE_POINTS.GREATER_THAN_SIGN:
35410
+ this.state = State.SCRIPT_DATA, this._emitChars(">");
35411
+ break;
35412
+ case CODE_POINTS.NULL:
35413
+ this._err(ERR.unexpectedNullCharacter), this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED, this._emitChars("�");
35414
+ break;
35415
+ case CODE_POINTS.EOF:
35416
+ this._err(ERR.eofInScriptHtmlCommentLikeText), this._emitEOFToken();
35417
+ break;
35418
+ default: this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED, this._emitCodePoint(e);
35419
+ }
35420
+ }
35421
+ _stateScriptDataDoubleEscapedLessThanSign(e) {
35422
+ e === CODE_POINTS.SOLIDUS ? (this.state = State.SCRIPT_DATA_DOUBLE_ESCAPE_END, this._emitChars("/")) : (this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED, this._stateScriptDataDoubleEscaped(e));
35423
+ }
35424
+ _stateScriptDataDoubleEscapeEnd(e) {
35425
+ if (this.preprocessor.startsWith(SEQUENCES.SCRIPT, !1) && isScriptDataDoubleEscapeSequenceEnd(this.preprocessor.peek(SEQUENCES.SCRIPT.length))) {
35426
+ this._emitCodePoint(e);
35427
+ for (let e = 0; e < SEQUENCES.SCRIPT.length; e++) this._emitCodePoint(this._consume());
35428
+ this.state = State.SCRIPT_DATA_ESCAPED;
35429
+ } else this._ensureHibernation() || (this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED, this._stateScriptDataDoubleEscaped(e));
35430
+ }
35431
+ _stateBeforeAttributeName(e) {
35432
+ switch (e) {
35433
+ case CODE_POINTS.SPACE:
35434
+ case CODE_POINTS.LINE_FEED:
35435
+ case CODE_POINTS.TABULATION:
35436
+ case CODE_POINTS.FORM_FEED: break;
35437
+ case CODE_POINTS.SOLIDUS:
35438
+ case CODE_POINTS.GREATER_THAN_SIGN:
35439
+ case CODE_POINTS.EOF:
35440
+ this.state = State.AFTER_ATTRIBUTE_NAME, this._stateAfterAttributeName(e);
35441
+ break;
35442
+ case CODE_POINTS.EQUALS_SIGN:
35443
+ this._err(ERR.unexpectedEqualsSignBeforeAttributeName), this._createAttr("="), this.state = State.ATTRIBUTE_NAME;
35444
+ break;
35445
+ default: this._createAttr(""), this.state = State.ATTRIBUTE_NAME, this._stateAttributeName(e);
35446
+ }
35447
+ }
35448
+ _stateAttributeName(e) {
35449
+ switch (e) {
35450
+ case CODE_POINTS.SPACE:
35451
+ case CODE_POINTS.LINE_FEED:
35452
+ case CODE_POINTS.TABULATION:
35453
+ case CODE_POINTS.FORM_FEED:
35454
+ case CODE_POINTS.SOLIDUS:
35455
+ case CODE_POINTS.GREATER_THAN_SIGN:
35456
+ case CODE_POINTS.EOF:
35457
+ this._leaveAttrName(), this.state = State.AFTER_ATTRIBUTE_NAME, this._stateAfterAttributeName(e);
35458
+ break;
35459
+ case CODE_POINTS.EQUALS_SIGN:
35460
+ this._leaveAttrName(), this.state = State.BEFORE_ATTRIBUTE_VALUE;
35461
+ break;
35462
+ case CODE_POINTS.QUOTATION_MARK:
35463
+ case CODE_POINTS.APOSTROPHE:
35464
+ case CODE_POINTS.LESS_THAN_SIGN:
35465
+ this._err(ERR.unexpectedCharacterInAttributeName), this.currentAttr.name += String.fromCodePoint(e);
35466
+ break;
35467
+ case CODE_POINTS.NULL:
35468
+ this._err(ERR.unexpectedNullCharacter), this.currentAttr.name += "�";
35469
+ break;
35470
+ default: this.currentAttr.name += String.fromCodePoint(isAsciiUpper(e) ? toAsciiLower(e) : e);
35471
+ }
35472
+ }
35473
+ _stateAfterAttributeName(e) {
35474
+ switch (e) {
35475
+ case CODE_POINTS.SPACE:
35476
+ case CODE_POINTS.LINE_FEED:
35477
+ case CODE_POINTS.TABULATION:
35478
+ case CODE_POINTS.FORM_FEED: break;
35479
+ case CODE_POINTS.SOLIDUS:
35480
+ this.state = State.SELF_CLOSING_START_TAG;
35481
+ break;
35482
+ case CODE_POINTS.EQUALS_SIGN:
35483
+ this.state = State.BEFORE_ATTRIBUTE_VALUE;
35484
+ break;
35485
+ case CODE_POINTS.GREATER_THAN_SIGN:
35486
+ this.state = State.DATA, this.emitCurrentTagToken();
35487
+ break;
35488
+ case CODE_POINTS.EOF:
35489
+ this._err(ERR.eofInTag), this._emitEOFToken();
35490
+ break;
35491
+ default: this._createAttr(""), this.state = State.ATTRIBUTE_NAME, this._stateAttributeName(e);
35492
+ }
35493
+ }
35494
+ _stateBeforeAttributeValue(e) {
35495
+ switch (e) {
35496
+ case CODE_POINTS.SPACE:
35497
+ case CODE_POINTS.LINE_FEED:
35498
+ case CODE_POINTS.TABULATION:
35499
+ case CODE_POINTS.FORM_FEED: break;
35500
+ case CODE_POINTS.QUOTATION_MARK:
35501
+ this.state = State.ATTRIBUTE_VALUE_DOUBLE_QUOTED;
35502
+ break;
35503
+ case CODE_POINTS.APOSTROPHE:
35504
+ this.state = State.ATTRIBUTE_VALUE_SINGLE_QUOTED;
35505
+ break;
35506
+ case CODE_POINTS.GREATER_THAN_SIGN:
35507
+ this._err(ERR.missingAttributeValue), this.state = State.DATA, this.emitCurrentTagToken();
35508
+ break;
35509
+ default: this.state = State.ATTRIBUTE_VALUE_UNQUOTED, this._stateAttributeValueUnquoted(e);
35510
+ }
35511
+ }
35512
+ _stateAttributeValueDoubleQuoted(e) {
35513
+ switch (e) {
35514
+ case CODE_POINTS.QUOTATION_MARK:
35515
+ this.state = State.AFTER_ATTRIBUTE_VALUE_QUOTED;
35516
+ break;
35517
+ case CODE_POINTS.AMPERSAND:
35518
+ this._startCharacterReference();
35519
+ break;
35520
+ case CODE_POINTS.NULL:
35521
+ this._err(ERR.unexpectedNullCharacter), this.currentAttr.value += "�";
35522
+ break;
35523
+ case CODE_POINTS.EOF:
35524
+ this._err(ERR.eofInTag), this._emitEOFToken();
35525
+ break;
35526
+ default: this.currentAttr.value += String.fromCodePoint(e);
35527
+ }
35528
+ }
35529
+ _stateAttributeValueSingleQuoted(e) {
35530
+ switch (e) {
35531
+ case CODE_POINTS.APOSTROPHE:
35532
+ this.state = State.AFTER_ATTRIBUTE_VALUE_QUOTED;
35533
+ break;
35534
+ case CODE_POINTS.AMPERSAND:
35535
+ this._startCharacterReference();
35536
+ break;
35537
+ case CODE_POINTS.NULL:
35538
+ this._err(ERR.unexpectedNullCharacter), this.currentAttr.value += "�";
35539
+ break;
35540
+ case CODE_POINTS.EOF:
35541
+ this._err(ERR.eofInTag), this._emitEOFToken();
35542
+ break;
35543
+ default: this.currentAttr.value += String.fromCodePoint(e);
35544
+ }
35545
+ }
35546
+ _stateAttributeValueUnquoted(e) {
35547
+ switch (e) {
35548
+ case CODE_POINTS.SPACE:
35549
+ case CODE_POINTS.LINE_FEED:
35550
+ case CODE_POINTS.TABULATION:
35551
+ case CODE_POINTS.FORM_FEED:
35552
+ this._leaveAttrValue(), this.state = State.BEFORE_ATTRIBUTE_NAME;
35553
+ break;
35554
+ case CODE_POINTS.AMPERSAND:
35555
+ this._startCharacterReference();
35556
+ break;
35557
+ case CODE_POINTS.GREATER_THAN_SIGN:
35558
+ this._leaveAttrValue(), this.state = State.DATA, this.emitCurrentTagToken();
35559
+ break;
35560
+ case CODE_POINTS.NULL:
35561
+ this._err(ERR.unexpectedNullCharacter), this.currentAttr.value += "�";
35562
+ break;
35563
+ case CODE_POINTS.QUOTATION_MARK:
35564
+ case CODE_POINTS.APOSTROPHE:
35565
+ case CODE_POINTS.LESS_THAN_SIGN:
35566
+ case CODE_POINTS.EQUALS_SIGN:
35567
+ case CODE_POINTS.GRAVE_ACCENT:
35568
+ this._err(ERR.unexpectedCharacterInUnquotedAttributeValue), this.currentAttr.value += String.fromCodePoint(e);
35569
+ break;
35570
+ case CODE_POINTS.EOF:
35571
+ this._err(ERR.eofInTag), this._emitEOFToken();
35572
+ break;
35573
+ default: this.currentAttr.value += String.fromCodePoint(e);
35574
+ }
35575
+ }
35576
+ _stateAfterAttributeValueQuoted(e) {
35577
+ switch (e) {
35578
+ case CODE_POINTS.SPACE:
35579
+ case CODE_POINTS.LINE_FEED:
35580
+ case CODE_POINTS.TABULATION:
35581
+ case CODE_POINTS.FORM_FEED:
35582
+ this._leaveAttrValue(), this.state = State.BEFORE_ATTRIBUTE_NAME;
35583
+ break;
35584
+ case CODE_POINTS.SOLIDUS:
35585
+ this._leaveAttrValue(), this.state = State.SELF_CLOSING_START_TAG;
35586
+ break;
35587
+ case CODE_POINTS.GREATER_THAN_SIGN:
35588
+ this._leaveAttrValue(), this.state = State.DATA, this.emitCurrentTagToken();
35589
+ break;
35590
+ case CODE_POINTS.EOF:
35591
+ this._err(ERR.eofInTag), this._emitEOFToken();
35592
+ break;
35593
+ default: this._err(ERR.missingWhitespaceBetweenAttributes), this.state = State.BEFORE_ATTRIBUTE_NAME, this._stateBeforeAttributeName(e);
35594
+ }
35595
+ }
35596
+ _stateSelfClosingStartTag(e) {
35597
+ switch (e) {
35598
+ case CODE_POINTS.GREATER_THAN_SIGN: {
35599
+ let e = this.currentToken;
35600
+ e.selfClosing = !0, this.state = State.DATA, this.emitCurrentTagToken();
35601
+ break;
35602
+ }
35603
+ case CODE_POINTS.EOF:
35604
+ this._err(ERR.eofInTag), this._emitEOFToken();
35605
+ break;
35606
+ default: this._err(ERR.unexpectedSolidusInTag), this.state = State.BEFORE_ATTRIBUTE_NAME, this._stateBeforeAttributeName(e);
35607
+ }
35608
+ }
35609
+ _stateBogusComment(e) {
35610
+ let t = this.currentToken;
35611
+ switch (e) {
35612
+ case CODE_POINTS.GREATER_THAN_SIGN:
35613
+ this.state = State.DATA, this.emitCurrentComment(t);
35614
+ break;
35615
+ case CODE_POINTS.EOF:
35616
+ this.emitCurrentComment(t), this._emitEOFToken();
35617
+ break;
35618
+ case CODE_POINTS.NULL:
35619
+ this._err(ERR.unexpectedNullCharacter), t.data += "�";
35620
+ break;
35621
+ default: t.data += String.fromCodePoint(e);
35622
+ }
35623
+ }
35624
+ _stateMarkupDeclarationOpen(e) {
35625
+ this._consumeSequenceIfMatch(SEQUENCES.DASH_DASH, !0) ? (this._createCommentToken(SEQUENCES.DASH_DASH.length + 1), this.state = State.COMMENT_START) : this._consumeSequenceIfMatch(SEQUENCES.DOCTYPE, !1) ? (this.currentLocation = this.getCurrentLocation(SEQUENCES.DOCTYPE.length + 1), this.state = State.DOCTYPE) : this._consumeSequenceIfMatch(SEQUENCES.CDATA_START, !0) ? this.inForeignNode ? this.state = State.CDATA_SECTION : (this._err(ERR.cdataInHtmlContent), this._createCommentToken(SEQUENCES.CDATA_START.length + 1), this.currentToken.data = "[CDATA[", this.state = State.BOGUS_COMMENT) : this._ensureHibernation() || (this._err(ERR.incorrectlyOpenedComment), this._createCommentToken(2), this.state = State.BOGUS_COMMENT, this._stateBogusComment(e));
35626
+ }
35627
+ _stateCommentStart(e) {
35628
+ switch (e) {
35629
+ case CODE_POINTS.HYPHEN_MINUS:
35630
+ this.state = State.COMMENT_START_DASH;
35631
+ break;
35632
+ case CODE_POINTS.GREATER_THAN_SIGN: {
35633
+ this._err(ERR.abruptClosingOfEmptyComment), this.state = State.DATA;
35634
+ let e = this.currentToken;
35635
+ this.emitCurrentComment(e);
35636
+ break;
35637
+ }
35638
+ default: this.state = State.COMMENT, this._stateComment(e);
35639
+ }
35640
+ }
35641
+ _stateCommentStartDash(e) {
35642
+ let t = this.currentToken;
35643
+ switch (e) {
35644
+ case CODE_POINTS.HYPHEN_MINUS:
35645
+ this.state = State.COMMENT_END;
35646
+ break;
35647
+ case CODE_POINTS.GREATER_THAN_SIGN:
35648
+ this._err(ERR.abruptClosingOfEmptyComment), this.state = State.DATA, this.emitCurrentComment(t);
35649
+ break;
35650
+ case CODE_POINTS.EOF:
35651
+ this._err(ERR.eofInComment), this.emitCurrentComment(t), this._emitEOFToken();
35652
+ break;
35653
+ default: t.data += "-", this.state = State.COMMENT, this._stateComment(e);
35654
+ }
35655
+ }
35656
+ _stateComment(e) {
35657
+ let t = this.currentToken;
35658
+ switch (e) {
35659
+ case CODE_POINTS.HYPHEN_MINUS:
35660
+ this.state = State.COMMENT_END_DASH;
35661
+ break;
35662
+ case CODE_POINTS.LESS_THAN_SIGN:
35663
+ t.data += "<", this.state = State.COMMENT_LESS_THAN_SIGN;
35664
+ break;
35665
+ case CODE_POINTS.NULL:
35666
+ this._err(ERR.unexpectedNullCharacter), t.data += "�";
35667
+ break;
35668
+ case CODE_POINTS.EOF:
35669
+ this._err(ERR.eofInComment), this.emitCurrentComment(t), this._emitEOFToken();
35670
+ break;
35671
+ default: t.data += String.fromCodePoint(e);
35672
+ }
35673
+ }
35674
+ _stateCommentLessThanSign(e) {
35675
+ let t = this.currentToken;
35676
+ switch (e) {
35677
+ case CODE_POINTS.EXCLAMATION_MARK:
35678
+ t.data += "!", this.state = State.COMMENT_LESS_THAN_SIGN_BANG;
35679
+ break;
35680
+ case CODE_POINTS.LESS_THAN_SIGN:
35681
+ t.data += "<";
35682
+ break;
35683
+ default: this.state = State.COMMENT, this._stateComment(e);
35684
+ }
35685
+ }
35686
+ _stateCommentLessThanSignBang(e) {
35687
+ e === CODE_POINTS.HYPHEN_MINUS ? this.state = State.COMMENT_LESS_THAN_SIGN_BANG_DASH : (this.state = State.COMMENT, this._stateComment(e));
35688
+ }
35689
+ _stateCommentLessThanSignBangDash(e) {
35690
+ e === CODE_POINTS.HYPHEN_MINUS ? this.state = State.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH : (this.state = State.COMMENT_END_DASH, this._stateCommentEndDash(e));
35691
+ }
35692
+ _stateCommentLessThanSignBangDashDash(e) {
35693
+ e !== CODE_POINTS.GREATER_THAN_SIGN && e !== CODE_POINTS.EOF && this._err(ERR.nestedComment), this.state = State.COMMENT_END, this._stateCommentEnd(e);
35694
+ }
35695
+ _stateCommentEndDash(e) {
35696
+ let t = this.currentToken;
35697
+ switch (e) {
35698
+ case CODE_POINTS.HYPHEN_MINUS:
35699
+ this.state = State.COMMENT_END;
35700
+ break;
35701
+ case CODE_POINTS.EOF:
35702
+ this._err(ERR.eofInComment), this.emitCurrentComment(t), this._emitEOFToken();
35703
+ break;
35704
+ default: t.data += "-", this.state = State.COMMENT, this._stateComment(e);
35705
+ }
35706
+ }
35707
+ _stateCommentEnd(e) {
35708
+ let t = this.currentToken;
35709
+ switch (e) {
35710
+ case CODE_POINTS.GREATER_THAN_SIGN:
35711
+ this.state = State.DATA, this.emitCurrentComment(t);
35712
+ break;
35713
+ case CODE_POINTS.EXCLAMATION_MARK:
35714
+ this.state = State.COMMENT_END_BANG;
35715
+ break;
35716
+ case CODE_POINTS.HYPHEN_MINUS:
35717
+ t.data += "-";
35718
+ break;
35719
+ case CODE_POINTS.EOF:
35720
+ this._err(ERR.eofInComment), this.emitCurrentComment(t), this._emitEOFToken();
35721
+ break;
35722
+ default: t.data += "--", this.state = State.COMMENT, this._stateComment(e);
35723
+ }
35724
+ }
35725
+ _stateCommentEndBang(e) {
35726
+ let t = this.currentToken;
35727
+ switch (e) {
35728
+ case CODE_POINTS.HYPHEN_MINUS:
35729
+ t.data += "--!", this.state = State.COMMENT_END_DASH;
35730
+ break;
35731
+ case CODE_POINTS.GREATER_THAN_SIGN:
35732
+ this._err(ERR.incorrectlyClosedComment), this.state = State.DATA, this.emitCurrentComment(t);
35733
+ break;
35734
+ case CODE_POINTS.EOF:
35735
+ this._err(ERR.eofInComment), this.emitCurrentComment(t), this._emitEOFToken();
35736
+ break;
35737
+ default: t.data += "--!", this.state = State.COMMENT, this._stateComment(e);
35738
+ }
35739
+ }
35740
+ _stateDoctype(e) {
35741
+ switch (e) {
35742
+ case CODE_POINTS.SPACE:
35743
+ case CODE_POINTS.LINE_FEED:
35744
+ case CODE_POINTS.TABULATION:
35745
+ case CODE_POINTS.FORM_FEED:
35746
+ this.state = State.BEFORE_DOCTYPE_NAME;
35747
+ break;
35748
+ case CODE_POINTS.GREATER_THAN_SIGN:
35749
+ this.state = State.BEFORE_DOCTYPE_NAME, this._stateBeforeDoctypeName(e);
35750
+ break;
35751
+ case CODE_POINTS.EOF: {
35752
+ this._err(ERR.eofInDoctype), this._createDoctypeToken(null);
35753
+ let e = this.currentToken;
35754
+ e.forceQuirks = !0, this.emitCurrentDoctype(e), this._emitEOFToken();
35755
+ break;
35756
+ }
35757
+ default: this._err(ERR.missingWhitespaceBeforeDoctypeName), this.state = State.BEFORE_DOCTYPE_NAME, this._stateBeforeDoctypeName(e);
35758
+ }
35759
+ }
35760
+ _stateBeforeDoctypeName(e) {
35761
+ if (isAsciiUpper(e)) this._createDoctypeToken(String.fromCharCode(toAsciiLower(e))), this.state = State.DOCTYPE_NAME;
35762
+ else switch (e) {
35763
+ case CODE_POINTS.SPACE:
35764
+ case CODE_POINTS.LINE_FEED:
35765
+ case CODE_POINTS.TABULATION:
35766
+ case CODE_POINTS.FORM_FEED: break;
35767
+ case CODE_POINTS.NULL:
35768
+ this._err(ERR.unexpectedNullCharacter), this._createDoctypeToken("�"), this.state = State.DOCTYPE_NAME;
35769
+ break;
35770
+ case CODE_POINTS.GREATER_THAN_SIGN: {
35771
+ this._err(ERR.missingDoctypeName), this._createDoctypeToken(null);
35772
+ let e = this.currentToken;
35773
+ e.forceQuirks = !0, this.emitCurrentDoctype(e), this.state = State.DATA;
35774
+ break;
35775
+ }
35776
+ case CODE_POINTS.EOF: {
35777
+ this._err(ERR.eofInDoctype), this._createDoctypeToken(null);
35778
+ let e = this.currentToken;
35779
+ e.forceQuirks = !0, this.emitCurrentDoctype(e), this._emitEOFToken();
35780
+ break;
35781
+ }
35782
+ default: this._createDoctypeToken(String.fromCodePoint(e)), this.state = State.DOCTYPE_NAME;
35783
+ }
35784
+ }
35785
+ _stateDoctypeName(e) {
35786
+ let t = this.currentToken;
35787
+ switch (e) {
35788
+ case CODE_POINTS.SPACE:
35789
+ case CODE_POINTS.LINE_FEED:
35790
+ case CODE_POINTS.TABULATION:
35791
+ case CODE_POINTS.FORM_FEED:
35792
+ this.state = State.AFTER_DOCTYPE_NAME;
35793
+ break;
35794
+ case CODE_POINTS.GREATER_THAN_SIGN:
35795
+ this.state = State.DATA, this.emitCurrentDoctype(t);
35796
+ break;
35797
+ case CODE_POINTS.NULL:
35798
+ this._err(ERR.unexpectedNullCharacter), t.name += "�";
35799
+ break;
35800
+ case CODE_POINTS.EOF:
35801
+ this._err(ERR.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken();
35802
+ break;
35803
+ default: t.name += String.fromCodePoint(isAsciiUpper(e) ? toAsciiLower(e) : e);
35804
+ }
35805
+ }
35806
+ _stateAfterDoctypeName(e) {
35807
+ let t = this.currentToken;
35808
+ switch (e) {
35809
+ case CODE_POINTS.SPACE:
35810
+ case CODE_POINTS.LINE_FEED:
35811
+ case CODE_POINTS.TABULATION:
35812
+ case CODE_POINTS.FORM_FEED: break;
35813
+ case CODE_POINTS.GREATER_THAN_SIGN:
35814
+ this.state = State.DATA, this.emitCurrentDoctype(t);
35815
+ break;
35816
+ case CODE_POINTS.EOF:
35817
+ this._err(ERR.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken();
35818
+ break;
35819
+ default: this._consumeSequenceIfMatch(SEQUENCES.PUBLIC, !1) ? this.state = State.AFTER_DOCTYPE_PUBLIC_KEYWORD : this._consumeSequenceIfMatch(SEQUENCES.SYSTEM, !1) ? this.state = State.AFTER_DOCTYPE_SYSTEM_KEYWORD : this._ensureHibernation() || (this._err(ERR.invalidCharacterSequenceAfterDoctypeName), t.forceQuirks = !0, this.state = State.BOGUS_DOCTYPE, this._stateBogusDoctype(e));
35820
+ }
35821
+ }
35822
+ _stateAfterDoctypePublicKeyword(e) {
35823
+ let t = this.currentToken;
35824
+ switch (e) {
35825
+ case CODE_POINTS.SPACE:
35826
+ case CODE_POINTS.LINE_FEED:
35827
+ case CODE_POINTS.TABULATION:
35828
+ case CODE_POINTS.FORM_FEED:
35829
+ this.state = State.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER;
35830
+ break;
35831
+ case CODE_POINTS.QUOTATION_MARK:
35832
+ this._err(ERR.missingWhitespaceAfterDoctypePublicKeyword), t.publicId = "", this.state = State.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;
35833
+ break;
35834
+ case CODE_POINTS.APOSTROPHE:
35835
+ this._err(ERR.missingWhitespaceAfterDoctypePublicKeyword), t.publicId = "", this.state = State.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;
35836
+ break;
35837
+ case CODE_POINTS.GREATER_THAN_SIGN:
35838
+ this._err(ERR.missingDoctypePublicIdentifier), t.forceQuirks = !0, this.state = State.DATA, this.emitCurrentDoctype(t);
35839
+ break;
35840
+ case CODE_POINTS.EOF:
35841
+ this._err(ERR.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken();
35842
+ break;
35843
+ default: this._err(ERR.missingQuoteBeforeDoctypePublicIdentifier), t.forceQuirks = !0, this.state = State.BOGUS_DOCTYPE, this._stateBogusDoctype(e);
35844
+ }
35845
+ }
35846
+ _stateBeforeDoctypePublicIdentifier(e) {
35847
+ let t = this.currentToken;
35848
+ switch (e) {
35849
+ case CODE_POINTS.SPACE:
35850
+ case CODE_POINTS.LINE_FEED:
35851
+ case CODE_POINTS.TABULATION:
35852
+ case CODE_POINTS.FORM_FEED: break;
35853
+ case CODE_POINTS.QUOTATION_MARK:
35854
+ t.publicId = "", this.state = State.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;
35855
+ break;
35856
+ case CODE_POINTS.APOSTROPHE:
35857
+ t.publicId = "", this.state = State.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;
35858
+ break;
35859
+ case CODE_POINTS.GREATER_THAN_SIGN:
35860
+ this._err(ERR.missingDoctypePublicIdentifier), t.forceQuirks = !0, this.state = State.DATA, this.emitCurrentDoctype(t);
35861
+ break;
35862
+ case CODE_POINTS.EOF:
35863
+ this._err(ERR.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken();
35864
+ break;
35865
+ default: this._err(ERR.missingQuoteBeforeDoctypePublicIdentifier), t.forceQuirks = !0, this.state = State.BOGUS_DOCTYPE, this._stateBogusDoctype(e);
35866
+ }
35867
+ }
35868
+ _stateDoctypePublicIdentifierDoubleQuoted(e) {
35869
+ let t = this.currentToken;
35870
+ switch (e) {
35871
+ case CODE_POINTS.QUOTATION_MARK:
35872
+ this.state = State.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;
35873
+ break;
35874
+ case CODE_POINTS.NULL:
35875
+ this._err(ERR.unexpectedNullCharacter), t.publicId += "�";
35876
+ break;
35877
+ case CODE_POINTS.GREATER_THAN_SIGN:
35878
+ this._err(ERR.abruptDoctypePublicIdentifier), t.forceQuirks = !0, this.emitCurrentDoctype(t), this.state = State.DATA;
35879
+ break;
35880
+ case CODE_POINTS.EOF:
35881
+ this._err(ERR.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken();
35882
+ break;
35883
+ default: t.publicId += String.fromCodePoint(e);
35884
+ }
35885
+ }
35886
+ _stateDoctypePublicIdentifierSingleQuoted(e) {
35887
+ let t = this.currentToken;
35888
+ switch (e) {
35889
+ case CODE_POINTS.APOSTROPHE:
35890
+ this.state = State.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;
35891
+ break;
35892
+ case CODE_POINTS.NULL:
35893
+ this._err(ERR.unexpectedNullCharacter), t.publicId += "�";
35894
+ break;
35895
+ case CODE_POINTS.GREATER_THAN_SIGN:
35896
+ this._err(ERR.abruptDoctypePublicIdentifier), t.forceQuirks = !0, this.emitCurrentDoctype(t), this.state = State.DATA;
35897
+ break;
35898
+ case CODE_POINTS.EOF:
35899
+ this._err(ERR.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken();
35900
+ break;
35901
+ default: t.publicId += String.fromCodePoint(e);
35902
+ }
35903
+ }
35904
+ _stateAfterDoctypePublicIdentifier(e) {
35905
+ let t = this.currentToken;
35906
+ switch (e) {
35907
+ case CODE_POINTS.SPACE:
35908
+ case CODE_POINTS.LINE_FEED:
35909
+ case CODE_POINTS.TABULATION:
35910
+ case CODE_POINTS.FORM_FEED:
35911
+ this.state = State.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS;
35912
+ break;
35913
+ case CODE_POINTS.GREATER_THAN_SIGN:
35914
+ this.state = State.DATA, this.emitCurrentDoctype(t);
35915
+ break;
35916
+ case CODE_POINTS.QUOTATION_MARK:
35917
+ this._err(ERR.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers), t.systemId = "", this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;
35918
+ break;
35919
+ case CODE_POINTS.APOSTROPHE:
35920
+ this._err(ERR.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers), t.systemId = "", this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;
35921
+ break;
35922
+ case CODE_POINTS.EOF:
35923
+ this._err(ERR.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken();
35924
+ break;
35925
+ default: this._err(ERR.missingQuoteBeforeDoctypeSystemIdentifier), t.forceQuirks = !0, this.state = State.BOGUS_DOCTYPE, this._stateBogusDoctype(e);
35926
+ }
35927
+ }
35928
+ _stateBetweenDoctypePublicAndSystemIdentifiers(e) {
35929
+ let t = this.currentToken;
35930
+ switch (e) {
35931
+ case CODE_POINTS.SPACE:
35932
+ case CODE_POINTS.LINE_FEED:
35933
+ case CODE_POINTS.TABULATION:
35934
+ case CODE_POINTS.FORM_FEED: break;
35935
+ case CODE_POINTS.GREATER_THAN_SIGN:
35936
+ this.emitCurrentDoctype(t), this.state = State.DATA;
35937
+ break;
35938
+ case CODE_POINTS.QUOTATION_MARK:
35939
+ t.systemId = "", this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;
35940
+ break;
35941
+ case CODE_POINTS.APOSTROPHE:
35942
+ t.systemId = "", this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;
35943
+ break;
35944
+ case CODE_POINTS.EOF:
35945
+ this._err(ERR.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken();
35946
+ break;
35947
+ default: this._err(ERR.missingQuoteBeforeDoctypeSystemIdentifier), t.forceQuirks = !0, this.state = State.BOGUS_DOCTYPE, this._stateBogusDoctype(e);
35948
+ }
35949
+ }
35950
+ _stateAfterDoctypeSystemKeyword(e) {
35951
+ let t = this.currentToken;
35952
+ switch (e) {
35953
+ case CODE_POINTS.SPACE:
35954
+ case CODE_POINTS.LINE_FEED:
35955
+ case CODE_POINTS.TABULATION:
35956
+ case CODE_POINTS.FORM_FEED:
35957
+ this.state = State.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER;
35958
+ break;
35959
+ case CODE_POINTS.QUOTATION_MARK:
35960
+ this._err(ERR.missingWhitespaceAfterDoctypeSystemKeyword), t.systemId = "", this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;
35961
+ break;
35962
+ case CODE_POINTS.APOSTROPHE:
35963
+ this._err(ERR.missingWhitespaceAfterDoctypeSystemKeyword), t.systemId = "", this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;
35964
+ break;
35965
+ case CODE_POINTS.GREATER_THAN_SIGN:
35966
+ this._err(ERR.missingDoctypeSystemIdentifier), t.forceQuirks = !0, this.state = State.DATA, this.emitCurrentDoctype(t);
35967
+ break;
35968
+ case CODE_POINTS.EOF:
35969
+ this._err(ERR.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken();
35970
+ break;
35971
+ default: this._err(ERR.missingQuoteBeforeDoctypeSystemIdentifier), t.forceQuirks = !0, this.state = State.BOGUS_DOCTYPE, this._stateBogusDoctype(e);
35972
+ }
35973
+ }
35974
+ _stateBeforeDoctypeSystemIdentifier(e) {
35975
+ let t = this.currentToken;
35976
+ switch (e) {
35977
+ case CODE_POINTS.SPACE:
35978
+ case CODE_POINTS.LINE_FEED:
35979
+ case CODE_POINTS.TABULATION:
35980
+ case CODE_POINTS.FORM_FEED: break;
35981
+ case CODE_POINTS.QUOTATION_MARK:
35982
+ t.systemId = "", this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;
35983
+ break;
35984
+ case CODE_POINTS.APOSTROPHE:
35985
+ t.systemId = "", this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;
35986
+ break;
35987
+ case CODE_POINTS.GREATER_THAN_SIGN:
35988
+ this._err(ERR.missingDoctypeSystemIdentifier), t.forceQuirks = !0, this.state = State.DATA, this.emitCurrentDoctype(t);
35989
+ break;
35990
+ case CODE_POINTS.EOF:
35991
+ this._err(ERR.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken();
35992
+ break;
35993
+ default: this._err(ERR.missingQuoteBeforeDoctypeSystemIdentifier), t.forceQuirks = !0, this.state = State.BOGUS_DOCTYPE, this._stateBogusDoctype(e);
35994
+ }
35995
+ }
35996
+ _stateDoctypeSystemIdentifierDoubleQuoted(e) {
35997
+ let t = this.currentToken;
35998
+ switch (e) {
35999
+ case CODE_POINTS.QUOTATION_MARK:
36000
+ this.state = State.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;
36001
+ break;
36002
+ case CODE_POINTS.NULL:
36003
+ this._err(ERR.unexpectedNullCharacter), t.systemId += "�";
36004
+ break;
36005
+ case CODE_POINTS.GREATER_THAN_SIGN:
36006
+ this._err(ERR.abruptDoctypeSystemIdentifier), t.forceQuirks = !0, this.emitCurrentDoctype(t), this.state = State.DATA;
36007
+ break;
36008
+ case CODE_POINTS.EOF:
36009
+ this._err(ERR.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken();
36010
+ break;
36011
+ default: t.systemId += String.fromCodePoint(e);
36012
+ }
36013
+ }
36014
+ _stateDoctypeSystemIdentifierSingleQuoted(e) {
36015
+ let t = this.currentToken;
36016
+ switch (e) {
36017
+ case CODE_POINTS.APOSTROPHE:
36018
+ this.state = State.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;
36019
+ break;
36020
+ case CODE_POINTS.NULL:
36021
+ this._err(ERR.unexpectedNullCharacter), t.systemId += "�";
36022
+ break;
36023
+ case CODE_POINTS.GREATER_THAN_SIGN:
36024
+ this._err(ERR.abruptDoctypeSystemIdentifier), t.forceQuirks = !0, this.emitCurrentDoctype(t), this.state = State.DATA;
36025
+ break;
36026
+ case CODE_POINTS.EOF:
36027
+ this._err(ERR.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken();
36028
+ break;
36029
+ default: t.systemId += String.fromCodePoint(e);
36030
+ }
36031
+ }
36032
+ _stateAfterDoctypeSystemIdentifier(e) {
36033
+ let t = this.currentToken;
36034
+ switch (e) {
36035
+ case CODE_POINTS.SPACE:
36036
+ case CODE_POINTS.LINE_FEED:
36037
+ case CODE_POINTS.TABULATION:
36038
+ case CODE_POINTS.FORM_FEED: break;
36039
+ case CODE_POINTS.GREATER_THAN_SIGN:
36040
+ this.emitCurrentDoctype(t), this.state = State.DATA;
36041
+ break;
36042
+ case CODE_POINTS.EOF:
36043
+ this._err(ERR.eofInDoctype), t.forceQuirks = !0, this.emitCurrentDoctype(t), this._emitEOFToken();
36044
+ break;
36045
+ default: this._err(ERR.unexpectedCharacterAfterDoctypeSystemIdentifier), this.state = State.BOGUS_DOCTYPE, this._stateBogusDoctype(e);
36046
+ }
36047
+ }
36048
+ _stateBogusDoctype(e) {
36049
+ let t = this.currentToken;
36050
+ switch (e) {
36051
+ case CODE_POINTS.GREATER_THAN_SIGN:
36052
+ this.emitCurrentDoctype(t), this.state = State.DATA;
36053
+ break;
36054
+ case CODE_POINTS.NULL:
36055
+ this._err(ERR.unexpectedNullCharacter);
36056
+ break;
36057
+ case CODE_POINTS.EOF:
36058
+ this.emitCurrentDoctype(t), this._emitEOFToken();
36059
+ break;
36060
+ default:
36061
+ }
36062
+ }
36063
+ _stateCdataSection(e) {
36064
+ switch (e) {
36065
+ case CODE_POINTS.RIGHT_SQUARE_BRACKET:
36066
+ this.state = State.CDATA_SECTION_BRACKET;
36067
+ break;
36068
+ case CODE_POINTS.EOF:
36069
+ this._err(ERR.eofInCdata), this._emitEOFToken();
36070
+ break;
36071
+ default: this._emitCodePoint(e);
36072
+ }
36073
+ }
36074
+ _stateCdataSectionBracket(e) {
36075
+ e === CODE_POINTS.RIGHT_SQUARE_BRACKET ? this.state = State.CDATA_SECTION_END : (this._emitChars("]"), this.state = State.CDATA_SECTION, this._stateCdataSection(e));
36076
+ }
36077
+ _stateCdataSectionEnd(e) {
36078
+ switch (e) {
36079
+ case CODE_POINTS.GREATER_THAN_SIGN:
36080
+ this.state = State.DATA;
36081
+ break;
36082
+ case CODE_POINTS.RIGHT_SQUARE_BRACKET:
36083
+ this._emitChars("]");
36084
+ break;
36085
+ default: this._emitChars("]]"), this.state = State.CDATA_SECTION, this._stateCdataSection(e);
36086
+ }
36087
+ }
36088
+ _stateCharacterReference() {
36089
+ let e = this.entityDecoder.write(this.preprocessor.html, this.preprocessor.pos);
36090
+ if (e < 0) if (this.preprocessor.lastChunkWritten) e = this.entityDecoder.end();
36091
+ else {
36092
+ this.active = !1, this.preprocessor.pos = this.preprocessor.html.length - 1, this.consumedAfterSnapshot = 0, this.preprocessor.endOfChunkHit = !0;
36093
+ return;
36094
+ }
36095
+ e === 0 ? (this.preprocessor.pos = this.entityStartPos, this._flushCodePointConsumedAsCharacterReference(CODE_POINTS.AMPERSAND), this.state = !this._isCharacterReferenceInAttribute() && isAsciiAlphaNumeric(this.preprocessor.peek(1)) ? State.AMBIGUOUS_AMPERSAND : this.returnState) : this.state = this.returnState;
36096
+ }
36097
+ _stateAmbiguousAmpersand(e) {
36098
+ isAsciiAlphaNumeric(e) ? this._flushCodePointConsumedAsCharacterReference(e) : (e === CODE_POINTS.SEMICOLON && this._err(ERR.unknownNamedCharacterReference), this.state = this.returnState, this._callState(e));
36099
+ }
36100
+ };
36101
+ })), IMPLICIT_END_TAG_REQUIRED, IMPLICIT_END_TAG_REQUIRED_THOROUGHLY, SCOPING_ELEMENTS_HTML, SCOPING_ELEMENTS_HTML_LIST, SCOPING_ELEMENTS_HTML_BUTTON, SCOPING_ELEMENTS_MATHML, SCOPING_ELEMENTS_SVG, TABLE_ROW_CONTEXT, TABLE_BODY_CONTEXT, TABLE_CONTEXT, TABLE_CELLS, OpenElementStack, init_open_element_stack = __esmMin((() => {
36102
+ init_html(), IMPLICIT_END_TAG_REQUIRED = new Set([
36103
+ TAG_ID.DD,
36104
+ TAG_ID.DT,
36105
+ TAG_ID.LI,
36106
+ TAG_ID.OPTGROUP,
36107
+ TAG_ID.OPTION,
36108
+ TAG_ID.P,
36109
+ TAG_ID.RB,
36110
+ TAG_ID.RP,
36111
+ TAG_ID.RT,
36112
+ TAG_ID.RTC
36113
+ ]), IMPLICIT_END_TAG_REQUIRED_THOROUGHLY = new Set([
36114
+ ...IMPLICIT_END_TAG_REQUIRED,
36115
+ TAG_ID.CAPTION,
36116
+ TAG_ID.COLGROUP,
36117
+ TAG_ID.TBODY,
36118
+ TAG_ID.TD,
36119
+ TAG_ID.TFOOT,
36120
+ TAG_ID.TH,
36121
+ TAG_ID.THEAD,
36122
+ TAG_ID.TR
36123
+ ]), SCOPING_ELEMENTS_HTML = new Set([
36124
+ TAG_ID.APPLET,
36125
+ TAG_ID.CAPTION,
36126
+ TAG_ID.HTML,
36127
+ TAG_ID.MARQUEE,
36128
+ TAG_ID.OBJECT,
36129
+ TAG_ID.TABLE,
36130
+ TAG_ID.TD,
36131
+ TAG_ID.TEMPLATE,
36132
+ TAG_ID.TH
36133
+ ]), SCOPING_ELEMENTS_HTML_LIST = new Set([
36134
+ ...SCOPING_ELEMENTS_HTML,
36135
+ TAG_ID.OL,
36136
+ TAG_ID.UL
36137
+ ]), SCOPING_ELEMENTS_HTML_BUTTON = new Set([...SCOPING_ELEMENTS_HTML, TAG_ID.BUTTON]), SCOPING_ELEMENTS_MATHML = new Set([
36138
+ TAG_ID.ANNOTATION_XML,
36139
+ TAG_ID.MI,
36140
+ TAG_ID.MN,
36141
+ TAG_ID.MO,
36142
+ TAG_ID.MS,
36143
+ TAG_ID.MTEXT
36144
+ ]), SCOPING_ELEMENTS_SVG = new Set([
36145
+ TAG_ID.DESC,
36146
+ TAG_ID.FOREIGN_OBJECT,
36147
+ TAG_ID.TITLE
36148
+ ]), TABLE_ROW_CONTEXT = new Set([
36149
+ TAG_ID.TR,
36150
+ TAG_ID.TEMPLATE,
36151
+ TAG_ID.HTML
36152
+ ]), TABLE_BODY_CONTEXT = new Set([
36153
+ TAG_ID.TBODY,
36154
+ TAG_ID.TFOOT,
36155
+ TAG_ID.THEAD,
36156
+ TAG_ID.TEMPLATE,
36157
+ TAG_ID.HTML
36158
+ ]), TABLE_CONTEXT = new Set([
36159
+ TAG_ID.TABLE,
36160
+ TAG_ID.TEMPLATE,
36161
+ TAG_ID.HTML
36162
+ ]), TABLE_CELLS = new Set([TAG_ID.TD, TAG_ID.TH]), OpenElementStack = class {
36163
+ get currentTmplContentOrNode() {
36164
+ return this._isInTemplate() ? this.treeAdapter.getTemplateContent(this.current) : this.current;
36165
+ }
36166
+ constructor(e, t, n) {
36167
+ this.treeAdapter = t, this.handler = n, this.items = [], this.tagIDs = [], this.stackTop = -1, this.tmplCount = 0, this.currentTagId = TAG_ID.UNKNOWN, this.current = e;
36168
+ }
36169
+ _indexOf(e) {
36170
+ return this.items.lastIndexOf(e, this.stackTop);
36171
+ }
36172
+ _isInTemplate() {
36173
+ return this.currentTagId === TAG_ID.TEMPLATE && this.treeAdapter.getNamespaceURI(this.current) === NS.HTML;
36174
+ }
36175
+ _updateCurrentElement() {
36176
+ this.current = this.items[this.stackTop], this.currentTagId = this.tagIDs[this.stackTop];
36177
+ }
36178
+ push(e, t) {
36179
+ this.stackTop++, this.items[this.stackTop] = e, this.current = e, this.tagIDs[this.stackTop] = t, this.currentTagId = t, this._isInTemplate() && this.tmplCount++, this.handler.onItemPush(e, t, !0);
36180
+ }
36181
+ pop() {
36182
+ let e = this.current;
36183
+ this.tmplCount > 0 && this._isInTemplate() && this.tmplCount--, this.stackTop--, this._updateCurrentElement(), this.handler.onItemPop(e, !0);
36184
+ }
36185
+ replace(e, t) {
36186
+ let n = this._indexOf(e);
36187
+ this.items[n] = t, n === this.stackTop && (this.current = t);
36188
+ }
36189
+ insertAfter(e, t, n) {
36190
+ let i = this._indexOf(e) + 1;
36191
+ this.items.splice(i, 0, t), this.tagIDs.splice(i, 0, n), this.stackTop++, i === this.stackTop && this._updateCurrentElement(), this.current && this.currentTagId !== void 0 && this.handler.onItemPush(this.current, this.currentTagId, i === this.stackTop);
36192
+ }
36193
+ popUntilTagNamePopped(e) {
36194
+ let t = this.stackTop + 1;
36195
+ do
36196
+ t = this.tagIDs.lastIndexOf(e, t - 1);
36197
+ while (t > 0 && this.treeAdapter.getNamespaceURI(this.items[t]) !== NS.HTML);
36198
+ this.shortenToLength(Math.max(t, 0));
36199
+ }
36200
+ shortenToLength(e) {
36201
+ for (; this.stackTop >= e;) {
36202
+ let t = this.current;
36203
+ this.tmplCount > 0 && this._isInTemplate() && --this.tmplCount, this.stackTop--, this._updateCurrentElement(), this.handler.onItemPop(t, this.stackTop < e);
36204
+ }
36205
+ }
36206
+ popUntilElementPopped(e) {
36207
+ let t = this._indexOf(e);
36208
+ this.shortenToLength(Math.max(t, 0));
36209
+ }
36210
+ popUntilPopped(e, t) {
36211
+ let n = this._indexOfTagNames(e, t);
36212
+ this.shortenToLength(Math.max(n, 0));
36213
+ }
36214
+ popUntilNumberedHeaderPopped() {
36215
+ this.popUntilPopped(NUMBERED_HEADERS, NS.HTML);
36216
+ }
36217
+ popUntilTableCellPopped() {
36218
+ this.popUntilPopped(TABLE_CELLS, NS.HTML);
36219
+ }
36220
+ popAllUpToHtmlElement() {
36221
+ this.tmplCount = 0, this.shortenToLength(1);
36222
+ }
36223
+ _indexOfTagNames(e, t) {
36224
+ for (let n = this.stackTop; n >= 0; n--) if (e.has(this.tagIDs[n]) && this.treeAdapter.getNamespaceURI(this.items[n]) === t) return n;
36225
+ return -1;
36226
+ }
36227
+ clearBackTo(e, t) {
36228
+ let n = this._indexOfTagNames(e, t);
36229
+ this.shortenToLength(n + 1);
36230
+ }
36231
+ clearBackToTableContext() {
36232
+ this.clearBackTo(TABLE_CONTEXT, NS.HTML);
36233
+ }
36234
+ clearBackToTableBodyContext() {
36235
+ this.clearBackTo(TABLE_BODY_CONTEXT, NS.HTML);
36236
+ }
36237
+ clearBackToTableRowContext() {
36238
+ this.clearBackTo(TABLE_ROW_CONTEXT, NS.HTML);
36239
+ }
36240
+ remove(e) {
36241
+ let t = this._indexOf(e);
36242
+ t >= 0 && (t === this.stackTop ? this.pop() : (this.items.splice(t, 1), this.tagIDs.splice(t, 1), this.stackTop--, this._updateCurrentElement(), this.handler.onItemPop(e, !1)));
36243
+ }
36244
+ tryPeekProperlyNestedBodyElement() {
36245
+ return this.stackTop >= 1 && this.tagIDs[1] === TAG_ID.BODY ? this.items[1] : null;
36246
+ }
36247
+ contains(e) {
36248
+ return this._indexOf(e) > -1;
36249
+ }
36250
+ getCommonAncestor(e) {
36251
+ let t = this._indexOf(e) - 1;
36252
+ return t >= 0 ? this.items[t] : null;
36253
+ }
36254
+ isRootHtmlElementCurrent() {
36255
+ return this.stackTop === 0 && this.tagIDs[0] === TAG_ID.HTML;
36256
+ }
36257
+ hasInDynamicScope(e, t) {
36258
+ for (let n = this.stackTop; n >= 0; n--) {
36259
+ let i = this.tagIDs[n];
36260
+ switch (this.treeAdapter.getNamespaceURI(this.items[n])) {
36261
+ case NS.HTML:
36262
+ if (i === e) return !0;
36263
+ if (t.has(i)) return !1;
36264
+ break;
36265
+ case NS.SVG:
36266
+ if (SCOPING_ELEMENTS_SVG.has(i)) return !1;
36267
+ break;
36268
+ case NS.MATHML:
36269
+ if (SCOPING_ELEMENTS_MATHML.has(i)) return !1;
36270
+ break;
36271
+ }
36272
+ }
36273
+ return !0;
36274
+ }
36275
+ hasInScope(e) {
36276
+ return this.hasInDynamicScope(e, SCOPING_ELEMENTS_HTML);
36277
+ }
36278
+ hasInListItemScope(e) {
36279
+ return this.hasInDynamicScope(e, SCOPING_ELEMENTS_HTML_LIST);
36280
+ }
36281
+ hasInButtonScope(e) {
36282
+ return this.hasInDynamicScope(e, SCOPING_ELEMENTS_HTML_BUTTON);
36283
+ }
36284
+ hasNumberedHeaderInScope() {
36285
+ for (let e = this.stackTop; e >= 0; e--) {
36286
+ let t = this.tagIDs[e];
36287
+ switch (this.treeAdapter.getNamespaceURI(this.items[e])) {
36288
+ case NS.HTML:
36289
+ if (NUMBERED_HEADERS.has(t)) return !0;
36290
+ if (SCOPING_ELEMENTS_HTML.has(t)) return !1;
36291
+ break;
36292
+ case NS.SVG:
36293
+ if (SCOPING_ELEMENTS_SVG.has(t)) return !1;
36294
+ break;
36295
+ case NS.MATHML:
36296
+ if (SCOPING_ELEMENTS_MATHML.has(t)) return !1;
36297
+ break;
36298
+ }
36299
+ }
36300
+ return !0;
36301
+ }
36302
+ hasInTableScope(e) {
36303
+ for (let t = this.stackTop; t >= 0; t--) if (this.treeAdapter.getNamespaceURI(this.items[t]) === NS.HTML) switch (this.tagIDs[t]) {
36304
+ case e: return !0;
36305
+ case TAG_ID.TABLE:
36306
+ case TAG_ID.HTML: return !1;
36307
+ }
36308
+ return !0;
36309
+ }
36310
+ hasTableBodyContextInTableScope() {
36311
+ for (let e = this.stackTop; e >= 0; e--) if (this.treeAdapter.getNamespaceURI(this.items[e]) === NS.HTML) switch (this.tagIDs[e]) {
36312
+ case TAG_ID.TBODY:
36313
+ case TAG_ID.THEAD:
36314
+ case TAG_ID.TFOOT: return !0;
36315
+ case TAG_ID.TABLE:
36316
+ case TAG_ID.HTML: return !1;
36317
+ }
36318
+ return !0;
36319
+ }
36320
+ hasInSelectScope(e) {
36321
+ for (let t = this.stackTop; t >= 0; t--) if (this.treeAdapter.getNamespaceURI(this.items[t]) === NS.HTML) switch (this.tagIDs[t]) {
36322
+ case e: return !0;
36323
+ case TAG_ID.OPTION:
36324
+ case TAG_ID.OPTGROUP: break;
36325
+ default: return !1;
36326
+ }
36327
+ return !0;
36328
+ }
36329
+ generateImpliedEndTags() {
36330
+ for (; this.currentTagId !== void 0 && IMPLICIT_END_TAG_REQUIRED.has(this.currentTagId);) this.pop();
36331
+ }
36332
+ generateImpliedEndTagsThoroughly() {
36333
+ for (; this.currentTagId !== void 0 && IMPLICIT_END_TAG_REQUIRED_THOROUGHLY.has(this.currentTagId);) this.pop();
36334
+ }
36335
+ generateImpliedEndTagsWithExclusion(e) {
36336
+ for (; this.currentTagId !== void 0 && this.currentTagId !== e && IMPLICIT_END_TAG_REQUIRED_THOROUGHLY.has(this.currentTagId);) this.pop();
36337
+ }
36338
+ };
36339
+ })), NOAH_ARK_CAPACITY, EntryType, MARKER, FormattingElementList, init_formatting_element_list = __esmMin((() => {
36340
+ NOAH_ARK_CAPACITY = 3, (function(e) {
36341
+ e[e.Marker = 0] = "Marker", e[e.Element = 1] = "Element";
36342
+ })(EntryType ||= {}), MARKER = { type: EntryType.Marker }, FormattingElementList = class {
36343
+ constructor(e) {
36344
+ this.treeAdapter = e, this.entries = [], this.bookmark = null;
36345
+ }
36346
+ _getNoahArkConditionCandidates(e, t) {
36347
+ let n = [], i = t.length, a = this.treeAdapter.getTagName(e), o = this.treeAdapter.getNamespaceURI(e);
36348
+ for (let e = 0; e < this.entries.length; e++) {
36349
+ let t = this.entries[e];
36350
+ if (t.type === EntryType.Marker) break;
36351
+ let { element: s } = t;
36352
+ if (this.treeAdapter.getTagName(s) === a && this.treeAdapter.getNamespaceURI(s) === o) {
36353
+ let t = this.treeAdapter.getAttrList(s);
36354
+ t.length === i && n.push({
36355
+ idx: e,
36356
+ attrs: t
36357
+ });
36358
+ }
36359
+ }
36360
+ return n;
36361
+ }
36362
+ _ensureNoahArkCondition(e) {
36363
+ if (this.entries.length < NOAH_ARK_CAPACITY) return;
36364
+ let t = this.treeAdapter.getAttrList(e), n = this._getNoahArkConditionCandidates(e, t);
36365
+ if (n.length < NOAH_ARK_CAPACITY) return;
36366
+ let i = new Map(t.map((e) => [e.name, e.value])), a = 0;
36367
+ for (let e = 0; e < n.length; e++) {
36368
+ let t = n[e];
36369
+ t.attrs.every((e) => i.get(e.name) === e.value) && (a += 1, a >= NOAH_ARK_CAPACITY && this.entries.splice(t.idx, 1));
36370
+ }
36371
+ }
36372
+ insertMarker() {
36373
+ this.entries.unshift(MARKER);
36374
+ }
36375
+ pushElement(e, t) {
36376
+ this._ensureNoahArkCondition(e), this.entries.unshift({
36377
+ type: EntryType.Element,
36378
+ element: e,
36379
+ token: t
36380
+ });
36381
+ }
36382
+ insertElementAfterBookmark(e, t) {
36383
+ let n = this.entries.indexOf(this.bookmark);
36384
+ this.entries.splice(n, 0, {
36385
+ type: EntryType.Element,
36386
+ element: e,
36387
+ token: t
36388
+ });
36389
+ }
36390
+ removeEntry(e) {
36391
+ let t = this.entries.indexOf(e);
36392
+ t !== -1 && this.entries.splice(t, 1);
36393
+ }
36394
+ clearToLastMarker() {
36395
+ let e = this.entries.indexOf(MARKER);
36396
+ e === -1 ? this.entries.length = 0 : this.entries.splice(0, e + 1);
36397
+ }
36398
+ getElementEntryInScopeWithTagName(e) {
36399
+ let t = this.entries.find((t) => t.type === EntryType.Marker || this.treeAdapter.getTagName(t.element) === e);
36400
+ return t && t.type === EntryType.Element ? t : null;
36401
+ }
36402
+ getElementEntry(e) {
36403
+ return this.entries.find((t) => t.type === EntryType.Element && t.element === e);
36404
+ }
36405
+ };
36406
+ })), defaultTreeAdapter, init_default = __esmMin((() => {
36407
+ init_html(), defaultTreeAdapter = {
36408
+ createDocument() {
36409
+ return {
36410
+ nodeName: "#document",
36411
+ mode: DOCUMENT_MODE.NO_QUIRKS,
36412
+ childNodes: []
36413
+ };
36414
+ },
36415
+ createDocumentFragment() {
36416
+ return {
36417
+ nodeName: "#document-fragment",
36418
+ childNodes: []
36419
+ };
36420
+ },
36421
+ createElement(e, t, n) {
36422
+ return {
36423
+ nodeName: e,
36424
+ tagName: e,
36425
+ attrs: n,
36426
+ namespaceURI: t,
36427
+ childNodes: [],
36428
+ parentNode: null
36429
+ };
36430
+ },
36431
+ createCommentNode(e) {
36432
+ return {
36433
+ nodeName: "#comment",
36434
+ data: e,
36435
+ parentNode: null
36436
+ };
36437
+ },
36438
+ createTextNode(e) {
36439
+ return {
36440
+ nodeName: "#text",
36441
+ value: e,
36442
+ parentNode: null
36443
+ };
36444
+ },
36445
+ appendChild(e, t) {
36446
+ e.childNodes.push(t), t.parentNode = e;
36447
+ },
36448
+ insertBefore(e, t, n) {
36449
+ let i = e.childNodes.indexOf(n);
36450
+ e.childNodes.splice(i, 0, t), t.parentNode = e;
36451
+ },
36452
+ setTemplateContent(e, t) {
36453
+ e.content = t;
36454
+ },
36455
+ getTemplateContent(e) {
36456
+ return e.content;
36457
+ },
36458
+ setDocumentType(e, t, n, i) {
36459
+ let a = e.childNodes.find((e) => e.nodeName === "#documentType");
36460
+ if (a) a.name = t, a.publicId = n, a.systemId = i;
36461
+ else {
36462
+ let a = {
36463
+ nodeName: "#documentType",
36464
+ name: t,
36465
+ publicId: n,
36466
+ systemId: i,
36467
+ parentNode: null
36468
+ };
36469
+ defaultTreeAdapter.appendChild(e, a);
36470
+ }
36471
+ },
36472
+ setDocumentMode(e, t) {
36473
+ e.mode = t;
36474
+ },
36475
+ getDocumentMode(e) {
36476
+ return e.mode;
36477
+ },
36478
+ detachNode(e) {
36479
+ if (e.parentNode) {
36480
+ let t = e.parentNode.childNodes.indexOf(e);
36481
+ e.parentNode.childNodes.splice(t, 1), e.parentNode = null;
36482
+ }
36483
+ },
36484
+ insertText(e, t) {
36485
+ if (e.childNodes.length > 0) {
36486
+ let n = e.childNodes[e.childNodes.length - 1];
36487
+ if (defaultTreeAdapter.isTextNode(n)) {
36488
+ n.value += t;
36489
+ return;
36490
+ }
36491
+ }
36492
+ defaultTreeAdapter.appendChild(e, defaultTreeAdapter.createTextNode(t));
36493
+ },
36494
+ insertTextBefore(e, t, n) {
36495
+ let i = e.childNodes[e.childNodes.indexOf(n) - 1];
36496
+ i && defaultTreeAdapter.isTextNode(i) ? i.value += t : defaultTreeAdapter.insertBefore(e, defaultTreeAdapter.createTextNode(t), n);
36497
+ },
36498
+ adoptAttributes(e, t) {
36499
+ let n = new Set(e.attrs.map((e) => e.name));
36500
+ for (let i = 0; i < t.length; i++) n.has(t[i].name) || e.attrs.push(t[i]);
36501
+ },
36502
+ getFirstChild(e) {
36503
+ return e.childNodes[0];
36504
+ },
36505
+ getChildNodes(e) {
36506
+ return e.childNodes;
36507
+ },
36508
+ getParentNode(e) {
36509
+ return e.parentNode;
36510
+ },
36511
+ getAttrList(e) {
36512
+ return e.attrs;
36513
+ },
36514
+ getTagName(e) {
36515
+ return e.tagName;
36516
+ },
36517
+ getNamespaceURI(e) {
36518
+ return e.namespaceURI;
36519
+ },
36520
+ getTextNodeContent(e) {
36521
+ return e.value;
36522
+ },
36523
+ getCommentNodeContent(e) {
36524
+ return e.data;
36525
+ },
36526
+ getDocumentTypeNodeName(e) {
36527
+ return e.name;
36528
+ },
36529
+ getDocumentTypeNodePublicId(e) {
36530
+ return e.publicId;
36531
+ },
36532
+ getDocumentTypeNodeSystemId(e) {
36533
+ return e.systemId;
36534
+ },
36535
+ isTextNode(e) {
36536
+ return e.nodeName === "#text";
36537
+ },
36538
+ isCommentNode(e) {
36539
+ return e.nodeName === "#comment";
36540
+ },
36541
+ isDocumentTypeNode(e) {
36542
+ return e.nodeName === "#documentType";
36543
+ },
36544
+ isElementNode(e) {
36545
+ return Object.prototype.hasOwnProperty.call(e, "tagName");
36546
+ },
36547
+ setNodeSourceCodeLocation(e, t) {
36548
+ e.sourceCodeLocation = t;
36549
+ },
36550
+ getNodeSourceCodeLocation(e) {
36551
+ return e.sourceCodeLocation;
36552
+ },
36553
+ updateNodeSourceCodeLocation(e, t) {
36554
+ e.sourceCodeLocation = {
36555
+ ...e.sourceCodeLocation,
36556
+ ...t
36557
+ };
36558
+ }
36559
+ };
36560
+ }));
36561
+ //#endregion
36562
+ //#region node_modules/.pnpm/parse5@8.0.1/node_modules/parse5/dist/common/doctype.js
36563
+ function hasPrefix(e, t) {
36564
+ return t.some((t) => e.startsWith(t));
36565
+ }
36566
+ function isConforming(e) {
36567
+ return e.name === VALID_DOCTYPE_NAME && e.publicId === null && (e.systemId === null || e.systemId === VALID_SYSTEM_ID);
36568
+ }
36569
+ function getDocumentMode(e) {
36570
+ if (e.name !== VALID_DOCTYPE_NAME) return DOCUMENT_MODE.QUIRKS;
36571
+ let { systemId: t } = e;
36572
+ if (t && t.toLowerCase() === QUIRKS_MODE_SYSTEM_ID) return DOCUMENT_MODE.QUIRKS;
36573
+ let { publicId: n } = e;
36574
+ if (n !== null) {
36575
+ if (n = n.toLowerCase(), QUIRKS_MODE_PUBLIC_IDS.has(n)) return DOCUMENT_MODE.QUIRKS;
36576
+ let e = t === null ? QUIRKS_MODE_NO_SYSTEM_ID_PUBLIC_ID_PREFIXES : QUIRKS_MODE_PUBLIC_ID_PREFIXES;
36577
+ if (hasPrefix(n, e)) return DOCUMENT_MODE.QUIRKS;
36578
+ if (e = t === null ? LIMITED_QUIRKS_PUBLIC_ID_PREFIXES : LIMITED_QUIRKS_WITH_SYSTEM_ID_PUBLIC_ID_PREFIXES, hasPrefix(n, e)) return DOCUMENT_MODE.LIMITED_QUIRKS;
36579
+ }
36580
+ return DOCUMENT_MODE.NO_QUIRKS;
36581
+ }
36582
+ var VALID_DOCTYPE_NAME, VALID_SYSTEM_ID, QUIRKS_MODE_SYSTEM_ID, QUIRKS_MODE_PUBLIC_ID_PREFIXES, QUIRKS_MODE_NO_SYSTEM_ID_PUBLIC_ID_PREFIXES, QUIRKS_MODE_PUBLIC_IDS, LIMITED_QUIRKS_PUBLIC_ID_PREFIXES, LIMITED_QUIRKS_WITH_SYSTEM_ID_PUBLIC_ID_PREFIXES, init_doctype = __esmMin((() => {
36583
+ init_html(), VALID_DOCTYPE_NAME = "html", VALID_SYSTEM_ID = "about:legacy-compat", QUIRKS_MODE_SYSTEM_ID = "http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd", QUIRKS_MODE_PUBLIC_ID_PREFIXES = /* @__PURE__ */ "+//silmaril//dtd html pro v0r11 19970101//,-//as//dtd html 3.0 aswedit + extensions//,-//advasoft ltd//dtd html 3.0 aswedit + extensions//,-//ietf//dtd html 2.0 level 1//,-//ietf//dtd html 2.0 level 2//,-//ietf//dtd html 2.0 strict level 1//,-//ietf//dtd html 2.0 strict level 2//,-//ietf//dtd html 2.0 strict//,-//ietf//dtd html 2.0//,-//ietf//dtd html 2.1e//,-//ietf//dtd html 3.0//,-//ietf//dtd html 3.2 final//,-//ietf//dtd html 3.2//,-//ietf//dtd html 3//,-//ietf//dtd html level 0//,-//ietf//dtd html level 1//,-//ietf//dtd html level 2//,-//ietf//dtd html level 3//,-//ietf//dtd html strict level 0//,-//ietf//dtd html strict level 1//,-//ietf//dtd html strict level 2//,-//ietf//dtd html strict level 3//,-//ietf//dtd html strict//,-//ietf//dtd html//,-//metrius//dtd metrius presentational//,-//microsoft//dtd internet explorer 2.0 html strict//,-//microsoft//dtd internet explorer 2.0 html//,-//microsoft//dtd internet explorer 2.0 tables//,-//microsoft//dtd internet explorer 3.0 html strict//,-//microsoft//dtd internet explorer 3.0 html//,-//microsoft//dtd internet explorer 3.0 tables//,-//netscape comm. corp.//dtd html//,-//netscape comm. corp.//dtd strict html//,-//o'reilly and associates//dtd html 2.0//,-//o'reilly and associates//dtd html extended 1.0//,-//o'reilly and associates//dtd html extended relaxed 1.0//,-//sq//dtd html 2.0 hotmetal + extensions//,-//softquad software//dtd hotmetal pro 6.0::19990601::extensions to html 4.0//,-//softquad//dtd hotmetal pro 4.0::19971010::extensions to html 4.0//,-//spyglass//dtd html 2.0 extended//,-//sun microsystems corp.//dtd hotjava html//,-//sun microsystems corp.//dtd hotjava strict html//,-//w3c//dtd html 3 1995-03-24//,-//w3c//dtd html 3.2 draft//,-//w3c//dtd html 3.2 final//,-//w3c//dtd html 3.2//,-//w3c//dtd html 3.2s draft//,-//w3c//dtd html 4.0 frameset//,-//w3c//dtd html 4.0 transitional//,-//w3c//dtd html experimental 19960712//,-//w3c//dtd html experimental 970421//,-//w3c//dtd w3 html//,-//w3o//dtd w3 html 3.0//,-//webtechs//dtd mozilla html 2.0//,-//webtechs//dtd mozilla html//".split(","), QUIRKS_MODE_NO_SYSTEM_ID_PUBLIC_ID_PREFIXES = [
36584
+ ...QUIRKS_MODE_PUBLIC_ID_PREFIXES,
36585
+ "-//w3c//dtd html 4.01 frameset//",
36586
+ "-//w3c//dtd html 4.01 transitional//"
36587
+ ], QUIRKS_MODE_PUBLIC_IDS = new Set([
36588
+ "-//w3o//dtd w3 html strict 3.0//en//",
36589
+ "-/w3c/dtd html 4.0 transitional/en",
36590
+ "html"
36591
+ ]), LIMITED_QUIRKS_PUBLIC_ID_PREFIXES = ["-//w3c//dtd xhtml 1.0 frameset//", "-//w3c//dtd xhtml 1.0 transitional//"], LIMITED_QUIRKS_WITH_SYSTEM_ID_PUBLIC_ID_PREFIXES = [
36592
+ ...LIMITED_QUIRKS_PUBLIC_ID_PREFIXES,
36593
+ "-//w3c//dtd html 4.01 frameset//",
36594
+ "-//w3c//dtd html 4.01 transitional//"
36595
+ ];
36596
+ }));
36597
+ //#endregion
36598
+ //#region node_modules/.pnpm/parse5@8.0.1/node_modules/parse5/dist/common/foreign-content.js
36599
+ function causesExit(e) {
36600
+ let t = e.tagID;
36601
+ return t === TAG_ID.FONT && e.attrs.some(({ name: e }) => e === ATTRS.COLOR || e === ATTRS.SIZE || e === ATTRS.FACE) || EXITS_FOREIGN_CONTENT.has(t);
36602
+ }
36603
+ function adjustTokenMathMLAttrs(e) {
36604
+ for (let t = 0; t < e.attrs.length; t++) if (e.attrs[t].name === DEFINITION_URL_ATTR) {
36605
+ e.attrs[t].name = ADJUSTED_DEFINITION_URL_ATTR;
36606
+ break;
36607
+ }
36608
+ }
36609
+ function adjustTokenSVGAttrs(e) {
36610
+ for (let t = 0; t < e.attrs.length; t++) {
36611
+ let n = SVG_ATTRS_ADJUSTMENT_MAP.get(e.attrs[t].name);
36612
+ n != null && (e.attrs[t].name = n);
36613
+ }
36614
+ }
36615
+ function adjustTokenXMLAttrs(e) {
36616
+ for (let t = 0; t < e.attrs.length; t++) {
36617
+ let n = XML_ATTRS_ADJUSTMENT_MAP.get(e.attrs[t].name);
36618
+ n && (e.attrs[t].prefix = n.prefix, e.attrs[t].name = n.name, e.attrs[t].namespace = n.namespace);
36619
+ }
36620
+ }
36621
+ function adjustTokenSVGTagName(e) {
36622
+ let t = SVG_TAG_NAMES_ADJUSTMENT_MAP.get(e.tagName);
36623
+ t != null && (e.tagName = t, e.tagID = getTagID(e.tagName));
36624
+ }
36625
+ function isMathMLTextIntegrationPoint(e, t) {
36626
+ return t === NS.MATHML && (e === TAG_ID.MI || e === TAG_ID.MO || e === TAG_ID.MN || e === TAG_ID.MS || e === TAG_ID.MTEXT);
36627
+ }
36628
+ function isHtmlIntegrationPoint(e, t, n) {
36629
+ if (t === NS.MATHML && e === TAG_ID.ANNOTATION_XML) {
36630
+ for (let e = 0; e < n.length; e++) if (n[e].name === ATTRS.ENCODING) {
36631
+ let t = n[e].value.toLowerCase();
36632
+ return t === MIME_TYPES.TEXT_HTML || t === MIME_TYPES.APPLICATION_XML;
36633
+ }
36634
+ }
36635
+ return t === NS.SVG && (e === TAG_ID.FOREIGN_OBJECT || e === TAG_ID.DESC || e === TAG_ID.TITLE);
36636
+ }
36637
+ function isIntegrationPoint(e, t, n, i) {
36638
+ return (!i || i === NS.HTML) && isHtmlIntegrationPoint(e, t, n) || (!i || i === NS.MATHML) && isMathMLTextIntegrationPoint(e, t);
36639
+ }
36640
+ var MIME_TYPES, DEFINITION_URL_ATTR, ADJUSTED_DEFINITION_URL_ATTR, SVG_ATTRS_ADJUSTMENT_MAP, XML_ATTRS_ADJUSTMENT_MAP, SVG_TAG_NAMES_ADJUSTMENT_MAP, EXITS_FOREIGN_CONTENT, init_foreign_content = __esmMin((() => {
36641
+ init_html(), MIME_TYPES = {
36642
+ TEXT_HTML: "text/html",
36643
+ APPLICATION_XML: "application/xhtml+xml"
36644
+ }, DEFINITION_URL_ATTR = "definitionurl", ADJUSTED_DEFINITION_URL_ATTR = "definitionURL", SVG_ATTRS_ADJUSTMENT_MAP = new Map((/* @__PURE__ */ "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".split(".")).map((e) => [e.toLowerCase(), e])), XML_ATTRS_ADJUSTMENT_MAP = new Map([
36645
+ ["xlink:actuate", {
36646
+ prefix: "xlink",
36647
+ name: "actuate",
36648
+ namespace: NS.XLINK
36649
+ }],
36650
+ ["xlink:arcrole", {
36651
+ prefix: "xlink",
36652
+ name: "arcrole",
36653
+ namespace: NS.XLINK
36654
+ }],
36655
+ ["xlink:href", {
36656
+ prefix: "xlink",
36657
+ name: "href",
36658
+ namespace: NS.XLINK
36659
+ }],
36660
+ ["xlink:role", {
36661
+ prefix: "xlink",
36662
+ name: "role",
36663
+ namespace: NS.XLINK
36664
+ }],
36665
+ ["xlink:show", {
36666
+ prefix: "xlink",
36667
+ name: "show",
36668
+ namespace: NS.XLINK
36669
+ }],
36670
+ ["xlink:title", {
36671
+ prefix: "xlink",
36672
+ name: "title",
36673
+ namespace: NS.XLINK
36674
+ }],
36675
+ ["xlink:type", {
36676
+ prefix: "xlink",
36677
+ name: "type",
36678
+ namespace: NS.XLINK
36679
+ }],
36680
+ ["xml:lang", {
36681
+ prefix: "xml",
36682
+ name: "lang",
36683
+ namespace: NS.XML
36684
+ }],
36685
+ ["xml:space", {
36686
+ prefix: "xml",
36687
+ name: "space",
36688
+ namespace: NS.XML
36689
+ }],
36690
+ ["xmlns", {
36691
+ prefix: "",
36692
+ name: "xmlns",
36693
+ namespace: NS.XMLNS
36694
+ }],
36695
+ ["xmlns:xlink", {
36696
+ prefix: "xmlns",
36697
+ name: "xlink",
36698
+ namespace: NS.XMLNS
36699
+ }]
36700
+ ]), SVG_TAG_NAMES_ADJUSTMENT_MAP = new Map((/* @__PURE__ */ "altGlyph.altGlyphDef.altGlyphItem.animateColor.animateMotion.animateTransform.clipPath.feBlend.feColorMatrix.feComponentTransfer.feComposite.feConvolveMatrix.feDiffuseLighting.feDisplacementMap.feDistantLight.feFlood.feFuncA.feFuncB.feFuncG.feFuncR.feGaussianBlur.feImage.feMerge.feMergeNode.feMorphology.feOffset.fePointLight.feSpecularLighting.feSpotLight.feTile.feTurbulence.foreignObject.glyphRef.linearGradient.radialGradient.textPath".split(".")).map((e) => [e.toLowerCase(), e])), EXITS_FOREIGN_CONTENT = new Set([
36701
+ TAG_ID.B,
36702
+ TAG_ID.BIG,
36703
+ TAG_ID.BLOCKQUOTE,
36704
+ TAG_ID.BODY,
36705
+ TAG_ID.BR,
36706
+ TAG_ID.CENTER,
36707
+ TAG_ID.CODE,
36708
+ TAG_ID.DD,
36709
+ TAG_ID.DIV,
36710
+ TAG_ID.DL,
36711
+ TAG_ID.DT,
36712
+ TAG_ID.EM,
36713
+ TAG_ID.EMBED,
36714
+ TAG_ID.H1,
36715
+ TAG_ID.H2,
36716
+ TAG_ID.H3,
36717
+ TAG_ID.H4,
36718
+ TAG_ID.H5,
36719
+ TAG_ID.H6,
36720
+ TAG_ID.HEAD,
36721
+ TAG_ID.HR,
36722
+ TAG_ID.I,
36723
+ TAG_ID.IMG,
36724
+ TAG_ID.LI,
36725
+ TAG_ID.LISTING,
36726
+ TAG_ID.MENU,
36727
+ TAG_ID.META,
36728
+ TAG_ID.NOBR,
36729
+ TAG_ID.OL,
36730
+ TAG_ID.P,
36731
+ TAG_ID.PRE,
36732
+ TAG_ID.RUBY,
36733
+ TAG_ID.S,
36734
+ TAG_ID.SMALL,
36735
+ TAG_ID.SPAN,
36736
+ TAG_ID.STRONG,
36737
+ TAG_ID.STRIKE,
36738
+ TAG_ID.SUB,
36739
+ TAG_ID.SUP,
36740
+ TAG_ID.TABLE,
36741
+ TAG_ID.TT,
36742
+ TAG_ID.U,
36743
+ TAG_ID.UL,
36744
+ TAG_ID.VAR
36745
+ ]);
36746
+ }));
36747
+ //#endregion
36748
+ //#region node_modules/.pnpm/parse5@8.0.1/node_modules/parse5/dist/parser/index.js
36749
+ function aaObtainFormattingElementEntry(e, t) {
36750
+ let n = e.activeFormattingElements.getElementEntryInScopeWithTagName(t.tagName);
36751
+ return n ? e.openElements.contains(n.element) ? e.openElements.hasInScope(t.tagID) || (n = null) : (e.activeFormattingElements.removeEntry(n), n = null) : genericEndTagInBody(e, t), n;
36752
+ }
36753
+ function aaObtainFurthestBlock(e, t) {
36754
+ let n = null, i = e.openElements.stackTop;
36755
+ for (; i >= 0; i--) {
36756
+ let a = e.openElements.items[i];
36757
+ if (a === t.element) break;
36758
+ e._isSpecialElement(a, e.openElements.tagIDs[i]) && (n = a);
36759
+ }
36760
+ return n || (e.openElements.shortenToLength(Math.max(i, 0)), e.activeFormattingElements.removeEntry(t)), n;
36761
+ }
36762
+ function aaInnerLoop(e, t, n) {
36763
+ let i = t, a = e.openElements.getCommonAncestor(t);
36764
+ for (let o = 0, s = a; s !== n; o++, s = a) {
36765
+ a = e.openElements.getCommonAncestor(s);
36766
+ let n = e.activeFormattingElements.getElementEntry(s), c = n && o >= AA_INNER_LOOP_ITER;
36767
+ !n || c ? (c && e.activeFormattingElements.removeEntry(n), e.openElements.remove(s)) : (s = aaRecreateElementFromEntry(e, n), i === t && (e.activeFormattingElements.bookmark = n), e.treeAdapter.detachNode(i), e.treeAdapter.appendChild(s, i), i = s);
36768
+ }
36769
+ return i;
36770
+ }
36771
+ function aaRecreateElementFromEntry(e, t) {
36772
+ let n = e.treeAdapter.getNamespaceURI(t.element), i = e.treeAdapter.createElement(t.token.tagName, n, t.token.attrs);
36773
+ return e.openElements.replace(t.element, i), t.element = i, i;
36774
+ }
36775
+ function aaInsertLastNodeInCommonAncestor(e, t, n) {
36776
+ let i = getTagID(e.treeAdapter.getTagName(t));
36777
+ if (e._isElementCausesFosterParenting(i)) e._fosterParentElement(n);
36778
+ else {
36779
+ let a = e.treeAdapter.getNamespaceURI(t);
36780
+ i === TAG_ID.TEMPLATE && a === NS.HTML && (t = e.treeAdapter.getTemplateContent(t)), e.treeAdapter.appendChild(t, n);
36781
+ }
36782
+ }
36783
+ function aaReplaceFormattingElement(e, t, n) {
36784
+ let i = e.treeAdapter.getNamespaceURI(n.element), { token: a } = n, o = e.treeAdapter.createElement(a.tagName, i, a.attrs);
36785
+ e._adoptNodes(t, o), e.treeAdapter.appendChild(t, o), e.activeFormattingElements.insertElementAfterBookmark(o, a), e.activeFormattingElements.removeEntry(n), e.openElements.remove(n.element), e.openElements.insertAfter(t, o, a.tagID);
36786
+ }
36787
+ function callAdoptionAgency(e, t) {
36788
+ for (let n = 0; n < AA_OUTER_LOOP_ITER; n++) {
36789
+ let n = aaObtainFormattingElementEntry(e, t);
36790
+ if (!n) break;
36791
+ let i = aaObtainFurthestBlock(e, n);
36792
+ if (!i) break;
36793
+ e.activeFormattingElements.bookmark = n;
36794
+ let a = aaInnerLoop(e, i, n.element), o = e.openElements.getCommonAncestor(n.element);
36795
+ e.treeAdapter.detachNode(a), o && aaInsertLastNodeInCommonAncestor(e, o, a), aaReplaceFormattingElement(e, i, n);
36796
+ }
36797
+ }
36798
+ function appendComment(e, t) {
36799
+ e._appendCommentNode(t, e.openElements.currentTmplContentOrNode);
36800
+ }
36801
+ function appendCommentToRootHtmlElement(e, t) {
36802
+ e._appendCommentNode(t, e.openElements.items[0]);
36803
+ }
36804
+ function appendCommentToDocument(e, t) {
36805
+ e._appendCommentNode(t, e.document);
36806
+ }
36807
+ function stopParsing(e, t) {
36808
+ if (e.stopped = !0, t.location) {
36809
+ let n = e.fragmentContext ? 0 : 2;
36810
+ for (let i = e.openElements.stackTop; i >= n; i--) e._setEndLocation(e.openElements.items[i], t);
36811
+ if (!e.fragmentContext && e.openElements.stackTop >= 0) {
36812
+ let n = e.openElements.items[0], i = e.treeAdapter.getNodeSourceCodeLocation(n);
36813
+ if (i && !i.endTag && (e._setEndLocation(n, t), e.openElements.stackTop >= 1)) {
36814
+ let n = e.openElements.items[1], i = e.treeAdapter.getNodeSourceCodeLocation(n);
36815
+ i && !i.endTag && e._setEndLocation(n, t);
36816
+ }
36817
+ }
36818
+ }
36819
+ }
36820
+ function doctypeInInitialMode(e, t) {
36821
+ e._setDocumentType(t);
36822
+ let n = t.forceQuirks ? DOCUMENT_MODE.QUIRKS : getDocumentMode(t);
36823
+ isConforming(t) || e._err(t, ERR.nonConformingDoctype), e.treeAdapter.setDocumentMode(e.document, n), e.insertionMode = InsertionMode.BEFORE_HTML;
36824
+ }
36825
+ function tokenInInitialMode(e, t) {
36826
+ e._err(t, ERR.missingDoctype, !0), e.treeAdapter.setDocumentMode(e.document, DOCUMENT_MODE.QUIRKS), e.insertionMode = InsertionMode.BEFORE_HTML, e._processToken(t);
36827
+ }
36828
+ function startTagBeforeHtml(e, t) {
36829
+ t.tagID === TAG_ID.HTML ? (e._insertElement(t, NS.HTML), e.insertionMode = InsertionMode.BEFORE_HEAD) : tokenBeforeHtml(e, t);
36830
+ }
36831
+ function endTagBeforeHtml(e, t) {
36832
+ let n = t.tagID;
36833
+ (n === TAG_ID.HTML || n === TAG_ID.HEAD || n === TAG_ID.BODY || n === TAG_ID.BR) && tokenBeforeHtml(e, t);
36834
+ }
36835
+ function tokenBeforeHtml(e, t) {
36836
+ e._insertFakeRootElement(), e.insertionMode = InsertionMode.BEFORE_HEAD, e._processToken(t);
36837
+ }
36838
+ function startTagBeforeHead(e, t) {
36839
+ switch (t.tagID) {
36840
+ case TAG_ID.HTML:
36841
+ startTagInBody(e, t);
36842
+ break;
36843
+ case TAG_ID.HEAD:
36844
+ e._insertElement(t, NS.HTML), e.headElement = e.openElements.current, e.insertionMode = InsertionMode.IN_HEAD;
36845
+ break;
36846
+ default: tokenBeforeHead(e, t);
36847
+ }
36848
+ }
36849
+ function endTagBeforeHead(e, t) {
36850
+ let n = t.tagID;
36851
+ n === TAG_ID.HEAD || n === TAG_ID.BODY || n === TAG_ID.HTML || n === TAG_ID.BR ? tokenBeforeHead(e, t) : e._err(t, ERR.endTagWithoutMatchingOpenElement);
36852
+ }
36853
+ function tokenBeforeHead(e, t) {
36854
+ e._insertFakeElement(TAG_NAMES.HEAD, TAG_ID.HEAD), e.headElement = e.openElements.current, e.insertionMode = InsertionMode.IN_HEAD, e._processToken(t);
36855
+ }
36856
+ function startTagInHead(e, t) {
36857
+ switch (t.tagID) {
36858
+ case TAG_ID.HTML:
36859
+ startTagInBody(e, t);
36860
+ break;
36861
+ case TAG_ID.BASE:
36862
+ case TAG_ID.BASEFONT:
36863
+ case TAG_ID.BGSOUND:
36864
+ case TAG_ID.LINK:
36865
+ case TAG_ID.META:
36866
+ e._appendElement(t, NS.HTML), t.ackSelfClosing = !0;
36867
+ break;
36868
+ case TAG_ID.TITLE:
36869
+ e._switchToTextParsing(t, TokenizerMode.RCDATA);
36870
+ break;
36871
+ case TAG_ID.NOSCRIPT:
36872
+ e.options.scriptingEnabled ? e._switchToTextParsing(t, TokenizerMode.RAWTEXT) : (e._insertElement(t, NS.HTML), e.insertionMode = InsertionMode.IN_HEAD_NO_SCRIPT);
36873
+ break;
36874
+ case TAG_ID.NOFRAMES:
36875
+ case TAG_ID.STYLE:
36876
+ e._switchToTextParsing(t, TokenizerMode.RAWTEXT);
36877
+ break;
36878
+ case TAG_ID.SCRIPT:
36879
+ e._switchToTextParsing(t, TokenizerMode.SCRIPT_DATA);
36880
+ break;
36881
+ case TAG_ID.TEMPLATE:
36882
+ e._insertTemplate(t), e.activeFormattingElements.insertMarker(), e.framesetOk = !1, e.insertionMode = InsertionMode.IN_TEMPLATE, e.tmplInsertionModeStack.unshift(InsertionMode.IN_TEMPLATE);
36883
+ break;
36884
+ case TAG_ID.HEAD:
36885
+ e._err(t, ERR.misplacedStartTagForHeadElement);
36886
+ break;
36887
+ default: tokenInHead(e, t);
36888
+ }
36889
+ }
36890
+ function endTagInHead(e, t) {
36891
+ switch (t.tagID) {
36892
+ case TAG_ID.HEAD:
36893
+ e.openElements.pop(), e.insertionMode = InsertionMode.AFTER_HEAD;
36894
+ break;
36895
+ case TAG_ID.BODY:
36896
+ case TAG_ID.BR:
36897
+ case TAG_ID.HTML:
36898
+ tokenInHead(e, t);
36899
+ break;
36900
+ case TAG_ID.TEMPLATE:
36901
+ templateEndTagInHead(e, t);
36902
+ break;
36903
+ default: e._err(t, ERR.endTagWithoutMatchingOpenElement);
36904
+ }
36905
+ }
36906
+ function templateEndTagInHead(e, t) {
36907
+ e.openElements.tmplCount > 0 ? (e.openElements.generateImpliedEndTagsThoroughly(), e.openElements.currentTagId !== TAG_ID.TEMPLATE && e._err(t, ERR.closingOfElementWithOpenChildElements), e.openElements.popUntilTagNamePopped(TAG_ID.TEMPLATE), e.activeFormattingElements.clearToLastMarker(), e.tmplInsertionModeStack.shift(), e._resetInsertionMode()) : e._err(t, ERR.endTagWithoutMatchingOpenElement);
36908
+ }
36909
+ function tokenInHead(e, t) {
36910
+ e.openElements.pop(), e.insertionMode = InsertionMode.AFTER_HEAD, e._processToken(t);
36911
+ }
36912
+ function startTagInHeadNoScript(e, t) {
36913
+ switch (t.tagID) {
36914
+ case TAG_ID.HTML:
36915
+ startTagInBody(e, t);
36916
+ break;
36917
+ case TAG_ID.BASEFONT:
36918
+ case TAG_ID.BGSOUND:
36919
+ case TAG_ID.HEAD:
36920
+ case TAG_ID.LINK:
36921
+ case TAG_ID.META:
36922
+ case TAG_ID.NOFRAMES:
36923
+ case TAG_ID.STYLE:
36924
+ startTagInHead(e, t);
36925
+ break;
36926
+ case TAG_ID.NOSCRIPT:
36927
+ e._err(t, ERR.nestedNoscriptInHead);
36928
+ break;
36929
+ default: tokenInHeadNoScript(e, t);
36930
+ }
36931
+ }
36932
+ function endTagInHeadNoScript(e, t) {
36933
+ switch (t.tagID) {
36934
+ case TAG_ID.NOSCRIPT:
36935
+ e.openElements.pop(), e.insertionMode = InsertionMode.IN_HEAD;
36936
+ break;
36937
+ case TAG_ID.BR:
36938
+ tokenInHeadNoScript(e, t);
36939
+ break;
36940
+ default: e._err(t, ERR.endTagWithoutMatchingOpenElement);
36941
+ }
36942
+ }
36943
+ function tokenInHeadNoScript(e, t) {
36944
+ let n = t.type === TokenType.EOF ? ERR.openElementsLeftAfterEof : ERR.disallowedContentInNoscriptInHead;
36945
+ e._err(t, n), e.openElements.pop(), e.insertionMode = InsertionMode.IN_HEAD, e._processToken(t);
36946
+ }
36947
+ function startTagAfterHead(e, t) {
36948
+ switch (t.tagID) {
36949
+ case TAG_ID.HTML:
36950
+ startTagInBody(e, t);
36951
+ break;
36952
+ case TAG_ID.BODY:
36953
+ e._insertElement(t, NS.HTML), e.framesetOk = !1, e.insertionMode = InsertionMode.IN_BODY;
36954
+ break;
36955
+ case TAG_ID.FRAMESET:
36956
+ e._insertElement(t, NS.HTML), e.insertionMode = InsertionMode.IN_FRAMESET;
36957
+ break;
36958
+ case TAG_ID.BASE:
36959
+ case TAG_ID.BASEFONT:
36960
+ case TAG_ID.BGSOUND:
36961
+ case TAG_ID.LINK:
36962
+ case TAG_ID.META:
36963
+ case TAG_ID.NOFRAMES:
36964
+ case TAG_ID.SCRIPT:
36965
+ case TAG_ID.STYLE:
36966
+ case TAG_ID.TEMPLATE:
36967
+ case TAG_ID.TITLE:
36968
+ e._err(t, ERR.abandonedHeadElementChild), e.openElements.push(e.headElement, TAG_ID.HEAD), startTagInHead(e, t), e.openElements.remove(e.headElement);
36969
+ break;
36970
+ case TAG_ID.HEAD:
36971
+ e._err(t, ERR.misplacedStartTagForHeadElement);
36972
+ break;
36973
+ default: tokenAfterHead(e, t);
36974
+ }
36975
+ }
36976
+ function endTagAfterHead(e, t) {
36977
+ switch (t.tagID) {
36978
+ case TAG_ID.BODY:
36979
+ case TAG_ID.HTML:
36980
+ case TAG_ID.BR:
36981
+ tokenAfterHead(e, t);
36982
+ break;
36983
+ case TAG_ID.TEMPLATE:
36984
+ templateEndTagInHead(e, t);
36985
+ break;
36986
+ default: e._err(t, ERR.endTagWithoutMatchingOpenElement);
36987
+ }
36988
+ }
36989
+ function tokenAfterHead(e, t) {
36990
+ e._insertFakeElement(TAG_NAMES.BODY, TAG_ID.BODY), e.insertionMode = InsertionMode.IN_BODY, modeInBody(e, t);
36991
+ }
36992
+ function modeInBody(e, t) {
36993
+ switch (t.type) {
36994
+ case TokenType.CHARACTER:
36995
+ characterInBody(e, t);
36996
+ break;
36997
+ case TokenType.WHITESPACE_CHARACTER:
36998
+ whitespaceCharacterInBody(e, t);
36999
+ break;
37000
+ case TokenType.COMMENT:
37001
+ appendComment(e, t);
37002
+ break;
37003
+ case TokenType.START_TAG:
37004
+ startTagInBody(e, t);
37005
+ break;
37006
+ case TokenType.END_TAG:
37007
+ endTagInBody(e, t);
37008
+ break;
37009
+ case TokenType.EOF:
37010
+ eofInBody(e, t);
37011
+ break;
37012
+ default:
37013
+ }
37014
+ }
37015
+ function whitespaceCharacterInBody(e, t) {
37016
+ e._reconstructActiveFormattingElements(), e._insertCharacters(t);
37017
+ }
37018
+ function characterInBody(e, t) {
37019
+ e._reconstructActiveFormattingElements(), e._insertCharacters(t), e.framesetOk = !1;
37020
+ }
37021
+ function htmlStartTagInBody(e, t) {
37022
+ e.openElements.tmplCount === 0 && e.treeAdapter.adoptAttributes(e.openElements.items[0], t.attrs);
37023
+ }
37024
+ function bodyStartTagInBody(e, t) {
37025
+ let n = e.openElements.tryPeekProperlyNestedBodyElement();
37026
+ n && e.openElements.tmplCount === 0 && (e.framesetOk = !1, e.treeAdapter.adoptAttributes(n, t.attrs));
37027
+ }
37028
+ function framesetStartTagInBody(e, t) {
37029
+ let n = e.openElements.tryPeekProperlyNestedBodyElement();
37030
+ e.framesetOk && n && (e.treeAdapter.detachNode(n), e.openElements.popAllUpToHtmlElement(), e._insertElement(t, NS.HTML), e.insertionMode = InsertionMode.IN_FRAMESET);
37031
+ }
37032
+ function addressStartTagInBody(e, t) {
37033
+ e.openElements.hasInButtonScope(TAG_ID.P) && e._closePElement(), e._insertElement(t, NS.HTML);
37034
+ }
37035
+ function numberedHeaderStartTagInBody(e, t) {
37036
+ e.openElements.hasInButtonScope(TAG_ID.P) && e._closePElement(), e.openElements.currentTagId !== void 0 && NUMBERED_HEADERS.has(e.openElements.currentTagId) && e.openElements.pop(), e._insertElement(t, NS.HTML);
37037
+ }
37038
+ function preStartTagInBody(e, t) {
37039
+ e.openElements.hasInButtonScope(TAG_ID.P) && e._closePElement(), e._insertElement(t, NS.HTML), e.skipNextNewLine = !0, e.framesetOk = !1;
37040
+ }
37041
+ function formStartTagInBody(e, t) {
37042
+ let n = e.openElements.tmplCount > 0;
37043
+ (!e.formElement || n) && (e.openElements.hasInButtonScope(TAG_ID.P) && e._closePElement(), e._insertElement(t, NS.HTML), n || (e.formElement = e.openElements.current));
37044
+ }
37045
+ function listItemStartTagInBody(e, t) {
37046
+ e.framesetOk = !1;
37047
+ let n = t.tagID;
37048
+ for (let t = e.openElements.stackTop; t >= 0; t--) {
37049
+ let i = e.openElements.tagIDs[t];
37050
+ if (n === TAG_ID.LI && i === TAG_ID.LI || (n === TAG_ID.DD || n === TAG_ID.DT) && (i === TAG_ID.DD || i === TAG_ID.DT)) {
37051
+ e.openElements.generateImpliedEndTagsWithExclusion(i), e.openElements.popUntilTagNamePopped(i);
37052
+ break;
37053
+ }
37054
+ if (i !== TAG_ID.ADDRESS && i !== TAG_ID.DIV && i !== TAG_ID.P && e._isSpecialElement(e.openElements.items[t], i)) break;
37055
+ }
37056
+ e.openElements.hasInButtonScope(TAG_ID.P) && e._closePElement(), e._insertElement(t, NS.HTML);
37057
+ }
37058
+ function plaintextStartTagInBody(e, t) {
37059
+ e.openElements.hasInButtonScope(TAG_ID.P) && e._closePElement(), e._insertElement(t, NS.HTML), e.tokenizer.state = TokenizerMode.PLAINTEXT;
37060
+ }
37061
+ function buttonStartTagInBody(e, t) {
37062
+ e.openElements.hasInScope(TAG_ID.BUTTON) && (e.openElements.generateImpliedEndTags(), e.openElements.popUntilTagNamePopped(TAG_ID.BUTTON)), e._reconstructActiveFormattingElements(), e._insertElement(t, NS.HTML), e.framesetOk = !1;
37063
+ }
37064
+ function aStartTagInBody(e, t) {
37065
+ let n = e.activeFormattingElements.getElementEntryInScopeWithTagName(TAG_NAMES.A);
37066
+ n && (callAdoptionAgency(e, t), e.openElements.remove(n.element), e.activeFormattingElements.removeEntry(n)), e._reconstructActiveFormattingElements(), e._insertElement(t, NS.HTML), e.activeFormattingElements.pushElement(e.openElements.current, t);
37067
+ }
37068
+ function bStartTagInBody(e, t) {
37069
+ e._reconstructActiveFormattingElements(), e._insertElement(t, NS.HTML), e.activeFormattingElements.pushElement(e.openElements.current, t);
37070
+ }
37071
+ function nobrStartTagInBody(e, t) {
37072
+ e._reconstructActiveFormattingElements(), e.openElements.hasInScope(TAG_ID.NOBR) && (callAdoptionAgency(e, t), e._reconstructActiveFormattingElements()), e._insertElement(t, NS.HTML), e.activeFormattingElements.pushElement(e.openElements.current, t);
37073
+ }
37074
+ function appletStartTagInBody(e, t) {
37075
+ e._reconstructActiveFormattingElements(), e._insertElement(t, NS.HTML), e.activeFormattingElements.insertMarker(), e.framesetOk = !1;
37076
+ }
37077
+ function tableStartTagInBody(e, t) {
37078
+ e.treeAdapter.getDocumentMode(e.document) !== DOCUMENT_MODE.QUIRKS && e.openElements.hasInButtonScope(TAG_ID.P) && e._closePElement(), e._insertElement(t, NS.HTML), e.framesetOk = !1, e.insertionMode = InsertionMode.IN_TABLE;
37079
+ }
37080
+ function areaStartTagInBody(e, t) {
37081
+ e._reconstructActiveFormattingElements(), e._appendElement(t, NS.HTML), e.framesetOk = !1, t.ackSelfClosing = !0;
37082
+ }
37083
+ function isHiddenInput(e) {
37084
+ let t = getTokenAttr(e, ATTRS.TYPE);
37085
+ return t != null && t.toLowerCase() === HIDDEN_INPUT_TYPE;
37086
+ }
37087
+ function inputStartTagInBody(e, t) {
37088
+ e._reconstructActiveFormattingElements(), e._appendElement(t, NS.HTML), isHiddenInput(t) || (e.framesetOk = !1), t.ackSelfClosing = !0;
37089
+ }
37090
+ function paramStartTagInBody(e, t) {
37091
+ e._appendElement(t, NS.HTML), t.ackSelfClosing = !0;
37092
+ }
37093
+ function hrStartTagInBody(e, t) {
37094
+ e.openElements.hasInButtonScope(TAG_ID.P) && e._closePElement(), e._appendElement(t, NS.HTML), e.framesetOk = !1, t.ackSelfClosing = !0;
37095
+ }
37096
+ function imageStartTagInBody(e, t) {
37097
+ t.tagName = TAG_NAMES.IMG, t.tagID = TAG_ID.IMG, areaStartTagInBody(e, t);
37098
+ }
37099
+ function textareaStartTagInBody(e, t) {
37100
+ e._insertElement(t, NS.HTML), e.skipNextNewLine = !0, e.tokenizer.state = TokenizerMode.RCDATA, e.originalInsertionMode = e.insertionMode, e.framesetOk = !1, e.insertionMode = InsertionMode.TEXT;
37101
+ }
37102
+ function xmpStartTagInBody(e, t) {
37103
+ e.openElements.hasInButtonScope(TAG_ID.P) && e._closePElement(), e._reconstructActiveFormattingElements(), e.framesetOk = !1, e._switchToTextParsing(t, TokenizerMode.RAWTEXT);
37104
+ }
37105
+ function iframeStartTagInBody(e, t) {
37106
+ e.framesetOk = !1, e._switchToTextParsing(t, TokenizerMode.RAWTEXT);
37107
+ }
37108
+ function rawTextStartTagInBody(e, t) {
37109
+ e._switchToTextParsing(t, TokenizerMode.RAWTEXT);
37110
+ }
37111
+ function selectStartTagInBody(e, t) {
37112
+ e._reconstructActiveFormattingElements(), e._insertElement(t, NS.HTML), e.framesetOk = !1, e.insertionMode = e.insertionMode === InsertionMode.IN_TABLE || e.insertionMode === InsertionMode.IN_CAPTION || e.insertionMode === InsertionMode.IN_TABLE_BODY || e.insertionMode === InsertionMode.IN_ROW || e.insertionMode === InsertionMode.IN_CELL ? InsertionMode.IN_SELECT_IN_TABLE : InsertionMode.IN_SELECT;
37113
+ }
37114
+ function optgroupStartTagInBody(e, t) {
37115
+ e.openElements.currentTagId === TAG_ID.OPTION && e.openElements.pop(), e._reconstructActiveFormattingElements(), e._insertElement(t, NS.HTML);
37116
+ }
37117
+ function rbStartTagInBody(e, t) {
37118
+ e.openElements.hasInScope(TAG_ID.RUBY) && e.openElements.generateImpliedEndTags(), e._insertElement(t, NS.HTML);
37119
+ }
37120
+ function rtStartTagInBody(e, t) {
37121
+ e.openElements.hasInScope(TAG_ID.RUBY) && e.openElements.generateImpliedEndTagsWithExclusion(TAG_ID.RTC), e._insertElement(t, NS.HTML);
37122
+ }
37123
+ function mathStartTagInBody(e, t) {
37124
+ e._reconstructActiveFormattingElements(), adjustTokenMathMLAttrs(t), adjustTokenXMLAttrs(t), t.selfClosing ? e._appendElement(t, NS.MATHML) : e._insertElement(t, NS.MATHML), t.ackSelfClosing = !0;
37125
+ }
37126
+ function svgStartTagInBody(e, t) {
37127
+ e._reconstructActiveFormattingElements(), adjustTokenSVGAttrs(t), adjustTokenXMLAttrs(t), t.selfClosing ? e._appendElement(t, NS.SVG) : e._insertElement(t, NS.SVG), t.ackSelfClosing = !0;
37128
+ }
37129
+ function genericStartTagInBody(e, t) {
37130
+ e._reconstructActiveFormattingElements(), e._insertElement(t, NS.HTML);
37131
+ }
37132
+ function startTagInBody(e, t) {
37133
+ switch (t.tagID) {
37134
+ case TAG_ID.I:
37135
+ case TAG_ID.S:
37136
+ case TAG_ID.B:
37137
+ case TAG_ID.U:
37138
+ case TAG_ID.EM:
37139
+ case TAG_ID.TT:
37140
+ case TAG_ID.BIG:
37141
+ case TAG_ID.CODE:
37142
+ case TAG_ID.FONT:
37143
+ case TAG_ID.SMALL:
37144
+ case TAG_ID.STRIKE:
37145
+ case TAG_ID.STRONG:
37146
+ bStartTagInBody(e, t);
37147
+ break;
37148
+ case TAG_ID.A:
37149
+ aStartTagInBody(e, t);
37150
+ break;
37151
+ case TAG_ID.H1:
37152
+ case TAG_ID.H2:
37153
+ case TAG_ID.H3:
37154
+ case TAG_ID.H4:
37155
+ case TAG_ID.H5:
37156
+ case TAG_ID.H6:
37157
+ numberedHeaderStartTagInBody(e, t);
37158
+ break;
37159
+ case TAG_ID.P:
37160
+ case TAG_ID.DL:
37161
+ case TAG_ID.OL:
37162
+ case TAG_ID.UL:
37163
+ case TAG_ID.DIV:
37164
+ case TAG_ID.DIR:
37165
+ case TAG_ID.NAV:
37166
+ case TAG_ID.MAIN:
37167
+ case TAG_ID.MENU:
37168
+ case TAG_ID.ASIDE:
37169
+ case TAG_ID.CENTER:
37170
+ case TAG_ID.FIGURE:
37171
+ case TAG_ID.FOOTER:
37172
+ case TAG_ID.HEADER:
37173
+ case TAG_ID.HGROUP:
37174
+ case TAG_ID.DIALOG:
37175
+ case TAG_ID.DETAILS:
37176
+ case TAG_ID.ADDRESS:
37177
+ case TAG_ID.ARTICLE:
37178
+ case TAG_ID.SEARCH:
37179
+ case TAG_ID.SECTION:
37180
+ case TAG_ID.SUMMARY:
37181
+ case TAG_ID.FIELDSET:
37182
+ case TAG_ID.BLOCKQUOTE:
37183
+ case TAG_ID.FIGCAPTION:
37184
+ addressStartTagInBody(e, t);
37185
+ break;
37186
+ case TAG_ID.LI:
37187
+ case TAG_ID.DD:
37188
+ case TAG_ID.DT:
37189
+ listItemStartTagInBody(e, t);
37190
+ break;
37191
+ case TAG_ID.BR:
37192
+ case TAG_ID.IMG:
37193
+ case TAG_ID.WBR:
37194
+ case TAG_ID.AREA:
37195
+ case TAG_ID.EMBED:
37196
+ case TAG_ID.KEYGEN:
37197
+ areaStartTagInBody(e, t);
37198
+ break;
37199
+ case TAG_ID.HR:
37200
+ hrStartTagInBody(e, t);
37201
+ break;
37202
+ case TAG_ID.RB:
37203
+ case TAG_ID.RTC:
37204
+ rbStartTagInBody(e, t);
37205
+ break;
37206
+ case TAG_ID.RT:
37207
+ case TAG_ID.RP:
37208
+ rtStartTagInBody(e, t);
37209
+ break;
37210
+ case TAG_ID.PRE:
37211
+ case TAG_ID.LISTING:
37212
+ preStartTagInBody(e, t);
37213
+ break;
37214
+ case TAG_ID.XMP:
37215
+ xmpStartTagInBody(e, t);
37216
+ break;
37217
+ case TAG_ID.SVG:
37218
+ svgStartTagInBody(e, t);
37219
+ break;
37220
+ case TAG_ID.HTML:
37221
+ htmlStartTagInBody(e, t);
37222
+ break;
37223
+ case TAG_ID.BASE:
37224
+ case TAG_ID.LINK:
37225
+ case TAG_ID.META:
37226
+ case TAG_ID.STYLE:
37227
+ case TAG_ID.TITLE:
37228
+ case TAG_ID.SCRIPT:
37229
+ case TAG_ID.BGSOUND:
37230
+ case TAG_ID.BASEFONT:
37231
+ case TAG_ID.TEMPLATE:
37232
+ startTagInHead(e, t);
37233
+ break;
37234
+ case TAG_ID.BODY:
37235
+ bodyStartTagInBody(e, t);
37236
+ break;
37237
+ case TAG_ID.FORM:
37238
+ formStartTagInBody(e, t);
37239
+ break;
37240
+ case TAG_ID.NOBR:
37241
+ nobrStartTagInBody(e, t);
37242
+ break;
37243
+ case TAG_ID.MATH:
37244
+ mathStartTagInBody(e, t);
37245
+ break;
37246
+ case TAG_ID.TABLE:
37247
+ tableStartTagInBody(e, t);
37248
+ break;
37249
+ case TAG_ID.INPUT:
37250
+ inputStartTagInBody(e, t);
37251
+ break;
37252
+ case TAG_ID.PARAM:
37253
+ case TAG_ID.TRACK:
37254
+ case TAG_ID.SOURCE:
37255
+ paramStartTagInBody(e, t);
37256
+ break;
37257
+ case TAG_ID.IMAGE:
37258
+ imageStartTagInBody(e, t);
37259
+ break;
37260
+ case TAG_ID.BUTTON:
37261
+ buttonStartTagInBody(e, t);
37262
+ break;
37263
+ case TAG_ID.APPLET:
37264
+ case TAG_ID.OBJECT:
37265
+ case TAG_ID.MARQUEE:
37266
+ appletStartTagInBody(e, t);
37267
+ break;
37268
+ case TAG_ID.IFRAME:
37269
+ iframeStartTagInBody(e, t);
37270
+ break;
37271
+ case TAG_ID.SELECT:
37272
+ selectStartTagInBody(e, t);
37273
+ break;
37274
+ case TAG_ID.OPTION:
37275
+ case TAG_ID.OPTGROUP:
37276
+ optgroupStartTagInBody(e, t);
37277
+ break;
37278
+ case TAG_ID.NOEMBED:
37279
+ case TAG_ID.NOFRAMES:
37280
+ rawTextStartTagInBody(e, t);
37281
+ break;
37282
+ case TAG_ID.FRAMESET:
37283
+ framesetStartTagInBody(e, t);
37284
+ break;
37285
+ case TAG_ID.TEXTAREA:
37286
+ textareaStartTagInBody(e, t);
37287
+ break;
37288
+ case TAG_ID.NOSCRIPT:
37289
+ e.options.scriptingEnabled ? rawTextStartTagInBody(e, t) : genericStartTagInBody(e, t);
37290
+ break;
37291
+ case TAG_ID.PLAINTEXT:
37292
+ plaintextStartTagInBody(e, t);
37293
+ break;
37294
+ case TAG_ID.COL:
37295
+ case TAG_ID.TH:
37296
+ case TAG_ID.TD:
37297
+ case TAG_ID.TR:
37298
+ case TAG_ID.HEAD:
37299
+ case TAG_ID.FRAME:
37300
+ case TAG_ID.TBODY:
37301
+ case TAG_ID.TFOOT:
37302
+ case TAG_ID.THEAD:
37303
+ case TAG_ID.CAPTION:
37304
+ case TAG_ID.COLGROUP: break;
37305
+ default: genericStartTagInBody(e, t);
37306
+ }
37307
+ }
37308
+ function bodyEndTagInBody(e, t) {
37309
+ if (e.openElements.hasInScope(TAG_ID.BODY) && (e.insertionMode = InsertionMode.AFTER_BODY, e.options.sourceCodeLocationInfo)) {
37310
+ let n = e.openElements.tryPeekProperlyNestedBodyElement();
37311
+ n && e._setEndLocation(n, t);
37312
+ }
37313
+ }
37314
+ function htmlEndTagInBody(e, t) {
37315
+ e.openElements.hasInScope(TAG_ID.BODY) && (e.insertionMode = InsertionMode.AFTER_BODY, endTagAfterBody(e, t));
37316
+ }
37317
+ function addressEndTagInBody(e, t) {
37318
+ let n = t.tagID;
37319
+ e.openElements.hasInScope(n) && (e.openElements.generateImpliedEndTags(), e.openElements.popUntilTagNamePopped(n));
37320
+ }
37321
+ function formEndTagInBody(e) {
37322
+ let t = e.openElements.tmplCount > 0, { formElement: n } = e;
37323
+ t || (e.formElement = null), (n || t) && e.openElements.hasInScope(TAG_ID.FORM) && (e.openElements.generateImpliedEndTags(), t ? e.openElements.popUntilTagNamePopped(TAG_ID.FORM) : n && e.openElements.remove(n));
37324
+ }
37325
+ function pEndTagInBody(e) {
37326
+ e.openElements.hasInButtonScope(TAG_ID.P) || e._insertFakeElement(TAG_NAMES.P, TAG_ID.P), e._closePElement();
37327
+ }
37328
+ function liEndTagInBody(e) {
37329
+ e.openElements.hasInListItemScope(TAG_ID.LI) && (e.openElements.generateImpliedEndTagsWithExclusion(TAG_ID.LI), e.openElements.popUntilTagNamePopped(TAG_ID.LI));
37330
+ }
37331
+ function ddEndTagInBody(e, t) {
37332
+ let n = t.tagID;
37333
+ e.openElements.hasInScope(n) && (e.openElements.generateImpliedEndTagsWithExclusion(n), e.openElements.popUntilTagNamePopped(n));
37334
+ }
37335
+ function numberedHeaderEndTagInBody(e) {
37336
+ e.openElements.hasNumberedHeaderInScope() && (e.openElements.generateImpliedEndTags(), e.openElements.popUntilNumberedHeaderPopped());
37337
+ }
37338
+ function appletEndTagInBody(e, t) {
37339
+ let n = t.tagID;
37340
+ e.openElements.hasInScope(n) && (e.openElements.generateImpliedEndTags(), e.openElements.popUntilTagNamePopped(n), e.activeFormattingElements.clearToLastMarker());
37341
+ }
37342
+ function brEndTagInBody(e) {
37343
+ e._reconstructActiveFormattingElements(), e._insertFakeElement(TAG_NAMES.BR, TAG_ID.BR), e.openElements.pop(), e.framesetOk = !1;
37344
+ }
37345
+ function genericEndTagInBody(e, t) {
37346
+ let n = t.tagName, i = t.tagID;
37347
+ for (let t = e.openElements.stackTop; t > 0; t--) {
37348
+ let a = e.openElements.items[t], o = e.openElements.tagIDs[t];
37349
+ if (i === o && (i !== TAG_ID.UNKNOWN || e.treeAdapter.getTagName(a) === n)) {
37350
+ e.openElements.generateImpliedEndTagsWithExclusion(i), e.openElements.stackTop >= t && e.openElements.shortenToLength(t);
37351
+ break;
37352
+ }
37353
+ if (e._isSpecialElement(a, o)) break;
37354
+ }
37355
+ }
37356
+ function endTagInBody(e, t) {
37357
+ switch (t.tagID) {
37358
+ case TAG_ID.A:
37359
+ case TAG_ID.B:
37360
+ case TAG_ID.I:
37361
+ case TAG_ID.S:
37362
+ case TAG_ID.U:
37363
+ case TAG_ID.EM:
37364
+ case TAG_ID.TT:
37365
+ case TAG_ID.BIG:
37366
+ case TAG_ID.CODE:
37367
+ case TAG_ID.FONT:
37368
+ case TAG_ID.NOBR:
37369
+ case TAG_ID.SMALL:
37370
+ case TAG_ID.STRIKE:
37371
+ case TAG_ID.STRONG:
37372
+ callAdoptionAgency(e, t);
37373
+ break;
37374
+ case TAG_ID.P:
37375
+ pEndTagInBody(e);
37376
+ break;
37377
+ case TAG_ID.DL:
37378
+ case TAG_ID.UL:
37379
+ case TAG_ID.OL:
37380
+ case TAG_ID.DIR:
37381
+ case TAG_ID.DIV:
37382
+ case TAG_ID.NAV:
37383
+ case TAG_ID.PRE:
37384
+ case TAG_ID.MAIN:
37385
+ case TAG_ID.MENU:
37386
+ case TAG_ID.ASIDE:
37387
+ case TAG_ID.BUTTON:
37388
+ case TAG_ID.CENTER:
37389
+ case TAG_ID.FIGURE:
37390
+ case TAG_ID.FOOTER:
37391
+ case TAG_ID.HEADER:
37392
+ case TAG_ID.HGROUP:
37393
+ case TAG_ID.DIALOG:
37394
+ case TAG_ID.ADDRESS:
37395
+ case TAG_ID.ARTICLE:
37396
+ case TAG_ID.DETAILS:
37397
+ case TAG_ID.SEARCH:
37398
+ case TAG_ID.SECTION:
37399
+ case TAG_ID.SUMMARY:
37400
+ case TAG_ID.LISTING:
37401
+ case TAG_ID.FIELDSET:
37402
+ case TAG_ID.BLOCKQUOTE:
37403
+ case TAG_ID.FIGCAPTION:
37404
+ addressEndTagInBody(e, t);
37405
+ break;
37406
+ case TAG_ID.LI:
37407
+ liEndTagInBody(e);
37408
+ break;
37409
+ case TAG_ID.DD:
37410
+ case TAG_ID.DT:
37411
+ ddEndTagInBody(e, t);
37412
+ break;
37413
+ case TAG_ID.H1:
37414
+ case TAG_ID.H2:
37415
+ case TAG_ID.H3:
37416
+ case TAG_ID.H4:
37417
+ case TAG_ID.H5:
37418
+ case TAG_ID.H6:
37419
+ numberedHeaderEndTagInBody(e);
37420
+ break;
37421
+ case TAG_ID.BR:
37422
+ brEndTagInBody(e);
37423
+ break;
37424
+ case TAG_ID.BODY:
37425
+ bodyEndTagInBody(e, t);
37426
+ break;
37427
+ case TAG_ID.HTML:
37428
+ htmlEndTagInBody(e, t);
37429
+ break;
37430
+ case TAG_ID.FORM:
37431
+ formEndTagInBody(e);
37432
+ break;
37433
+ case TAG_ID.APPLET:
37434
+ case TAG_ID.OBJECT:
37435
+ case TAG_ID.MARQUEE:
37436
+ appletEndTagInBody(e, t);
37437
+ break;
37438
+ case TAG_ID.TEMPLATE:
37439
+ templateEndTagInHead(e, t);
37440
+ break;
37441
+ default: genericEndTagInBody(e, t);
37442
+ }
37443
+ }
37444
+ function eofInBody(e, t) {
37445
+ e.tmplInsertionModeStack.length > 0 ? eofInTemplate(e, t) : stopParsing(e, t);
37446
+ }
37447
+ function endTagInText(e, t) {
37448
+ var n;
37449
+ t.tagID === TAG_ID.SCRIPT && ((n = e.scriptHandler) == null || n.call(e, e.openElements.current)), e.openElements.pop(), e.insertionMode = e.originalInsertionMode;
37450
+ }
37451
+ function eofInText(e, t) {
37452
+ e._err(t, ERR.eofInElementThatCanContainOnlyText), e.openElements.pop(), e.insertionMode = e.originalInsertionMode, e.onEof(t);
37453
+ }
37454
+ function characterInTable(e, t) {
37455
+ if (e.openElements.currentTagId !== void 0 && TABLE_STRUCTURE_TAGS.has(e.openElements.currentTagId)) switch (e.pendingCharacterTokens.length = 0, e.hasNonWhitespacePendingCharacterToken = !1, e.originalInsertionMode = e.insertionMode, e.insertionMode = InsertionMode.IN_TABLE_TEXT, t.type) {
37456
+ case TokenType.CHARACTER:
37457
+ characterInTableText(e, t);
37458
+ break;
37459
+ case TokenType.WHITESPACE_CHARACTER:
37460
+ whitespaceCharacterInTableText(e, t);
37461
+ break;
37462
+ }
37463
+ else tokenInTable(e, t);
37464
+ }
37465
+ function captionStartTagInTable(e, t) {
37466
+ e.openElements.clearBackToTableContext(), e.activeFormattingElements.insertMarker(), e._insertElement(t, NS.HTML), e.insertionMode = InsertionMode.IN_CAPTION;
37467
+ }
37468
+ function colgroupStartTagInTable(e, t) {
37469
+ e.openElements.clearBackToTableContext(), e._insertElement(t, NS.HTML), e.insertionMode = InsertionMode.IN_COLUMN_GROUP;
37470
+ }
37471
+ function colStartTagInTable(e, t) {
37472
+ e.openElements.clearBackToTableContext(), e._insertFakeElement(TAG_NAMES.COLGROUP, TAG_ID.COLGROUP), e.insertionMode = InsertionMode.IN_COLUMN_GROUP, startTagInColumnGroup(e, t);
37473
+ }
37474
+ function tbodyStartTagInTable(e, t) {
37475
+ e.openElements.clearBackToTableContext(), e._insertElement(t, NS.HTML), e.insertionMode = InsertionMode.IN_TABLE_BODY;
37476
+ }
37477
+ function tdStartTagInTable(e, t) {
37478
+ e.openElements.clearBackToTableContext(), e._insertFakeElement(TAG_NAMES.TBODY, TAG_ID.TBODY), e.insertionMode = InsertionMode.IN_TABLE_BODY, startTagInTableBody(e, t);
37479
+ }
37480
+ function tableStartTagInTable(e, t) {
37481
+ e.openElements.hasInTableScope(TAG_ID.TABLE) && (e.openElements.popUntilTagNamePopped(TAG_ID.TABLE), e._resetInsertionMode(), e._processStartTag(t));
37482
+ }
37483
+ function inputStartTagInTable(e, t) {
37484
+ isHiddenInput(t) ? e._appendElement(t, NS.HTML) : tokenInTable(e, t), t.ackSelfClosing = !0;
37485
+ }
37486
+ function formStartTagInTable(e, t) {
37487
+ !e.formElement && e.openElements.tmplCount === 0 && (e._insertElement(t, NS.HTML), e.formElement = e.openElements.current, e.openElements.pop());
37488
+ }
37489
+ function startTagInTable(e, t) {
37490
+ switch (t.tagID) {
37491
+ case TAG_ID.TD:
37492
+ case TAG_ID.TH:
37493
+ case TAG_ID.TR:
37494
+ tdStartTagInTable(e, t);
37495
+ break;
37496
+ case TAG_ID.STYLE:
37497
+ case TAG_ID.SCRIPT:
37498
+ case TAG_ID.TEMPLATE:
37499
+ startTagInHead(e, t);
37500
+ break;
37501
+ case TAG_ID.COL:
37502
+ colStartTagInTable(e, t);
37503
+ break;
37504
+ case TAG_ID.FORM:
37505
+ formStartTagInTable(e, t);
37506
+ break;
37507
+ case TAG_ID.TABLE:
37508
+ tableStartTagInTable(e, t);
37509
+ break;
37510
+ case TAG_ID.TBODY:
37511
+ case TAG_ID.TFOOT:
37512
+ case TAG_ID.THEAD:
37513
+ tbodyStartTagInTable(e, t);
37514
+ break;
37515
+ case TAG_ID.INPUT:
37516
+ inputStartTagInTable(e, t);
37517
+ break;
37518
+ case TAG_ID.CAPTION:
37519
+ captionStartTagInTable(e, t);
37520
+ break;
37521
+ case TAG_ID.COLGROUP:
37522
+ colgroupStartTagInTable(e, t);
37523
+ break;
37524
+ default: tokenInTable(e, t);
37525
+ }
37526
+ }
37527
+ function endTagInTable(e, t) {
37528
+ switch (t.tagID) {
37529
+ case TAG_ID.TABLE:
37530
+ e.openElements.hasInTableScope(TAG_ID.TABLE) && (e.openElements.popUntilTagNamePopped(TAG_ID.TABLE), e._resetInsertionMode());
37531
+ break;
37532
+ case TAG_ID.TEMPLATE:
37533
+ templateEndTagInHead(e, t);
37534
+ break;
37535
+ case TAG_ID.BODY:
37536
+ case TAG_ID.CAPTION:
37537
+ case TAG_ID.COL:
37538
+ case TAG_ID.COLGROUP:
37539
+ case TAG_ID.HTML:
37540
+ case TAG_ID.TBODY:
37541
+ case TAG_ID.TD:
37542
+ case TAG_ID.TFOOT:
37543
+ case TAG_ID.TH:
37544
+ case TAG_ID.THEAD:
37545
+ case TAG_ID.TR: break;
37546
+ default: tokenInTable(e, t);
37547
+ }
37548
+ }
37549
+ function tokenInTable(e, t) {
37550
+ let n = e.fosterParentingEnabled;
37551
+ e.fosterParentingEnabled = !0, modeInBody(e, t), e.fosterParentingEnabled = n;
37552
+ }
37553
+ function whitespaceCharacterInTableText(e, t) {
37554
+ e.pendingCharacterTokens.push(t);
37555
+ }
37556
+ function characterInTableText(e, t) {
37557
+ e.pendingCharacterTokens.push(t), e.hasNonWhitespacePendingCharacterToken = !0;
37558
+ }
37559
+ function tokenInTableText(e, t) {
37560
+ let n = 0;
37561
+ if (e.hasNonWhitespacePendingCharacterToken) for (; n < e.pendingCharacterTokens.length; n++) tokenInTable(e, e.pendingCharacterTokens[n]);
37562
+ else for (; n < e.pendingCharacterTokens.length; n++) e._insertCharacters(e.pendingCharacterTokens[n]);
37563
+ e.insertionMode = e.originalInsertionMode, e._processToken(t);
37564
+ }
37565
+ function startTagInCaption(e, t) {
37566
+ let n = t.tagID;
37567
+ TABLE_VOID_ELEMENTS.has(n) ? e.openElements.hasInTableScope(TAG_ID.CAPTION) && (e.openElements.generateImpliedEndTags(), e.openElements.popUntilTagNamePopped(TAG_ID.CAPTION), e.activeFormattingElements.clearToLastMarker(), e.insertionMode = InsertionMode.IN_TABLE, startTagInTable(e, t)) : startTagInBody(e, t);
37568
+ }
37569
+ function endTagInCaption(e, t) {
37570
+ let n = t.tagID;
37571
+ switch (n) {
37572
+ case TAG_ID.CAPTION:
37573
+ case TAG_ID.TABLE:
37574
+ e.openElements.hasInTableScope(TAG_ID.CAPTION) && (e.openElements.generateImpliedEndTags(), e.openElements.popUntilTagNamePopped(TAG_ID.CAPTION), e.activeFormattingElements.clearToLastMarker(), e.insertionMode = InsertionMode.IN_TABLE, n === TAG_ID.TABLE && endTagInTable(e, t));
37575
+ break;
37576
+ case TAG_ID.BODY:
37577
+ case TAG_ID.COL:
37578
+ case TAG_ID.COLGROUP:
37579
+ case TAG_ID.HTML:
37580
+ case TAG_ID.TBODY:
37581
+ case TAG_ID.TD:
37582
+ case TAG_ID.TFOOT:
37583
+ case TAG_ID.TH:
37584
+ case TAG_ID.THEAD:
37585
+ case TAG_ID.TR: break;
37586
+ default: endTagInBody(e, t);
37587
+ }
37588
+ }
37589
+ function startTagInColumnGroup(e, t) {
37590
+ switch (t.tagID) {
37591
+ case TAG_ID.HTML:
37592
+ startTagInBody(e, t);
37593
+ break;
37594
+ case TAG_ID.COL:
37595
+ e._appendElement(t, NS.HTML), t.ackSelfClosing = !0;
37596
+ break;
37597
+ case TAG_ID.TEMPLATE:
37598
+ startTagInHead(e, t);
37599
+ break;
37600
+ default: tokenInColumnGroup(e, t);
37601
+ }
37602
+ }
37603
+ function endTagInColumnGroup(e, t) {
37604
+ switch (t.tagID) {
37605
+ case TAG_ID.COLGROUP:
37606
+ e.openElements.currentTagId === TAG_ID.COLGROUP && (e.openElements.pop(), e.insertionMode = InsertionMode.IN_TABLE);
37607
+ break;
37608
+ case TAG_ID.TEMPLATE:
37609
+ templateEndTagInHead(e, t);
37610
+ break;
37611
+ case TAG_ID.COL: break;
37612
+ default: tokenInColumnGroup(e, t);
37613
+ }
37614
+ }
37615
+ function tokenInColumnGroup(e, t) {
37616
+ e.openElements.currentTagId === TAG_ID.COLGROUP && (e.openElements.pop(), e.insertionMode = InsertionMode.IN_TABLE, e._processToken(t));
37617
+ }
37618
+ function startTagInTableBody(e, t) {
37619
+ switch (t.tagID) {
37620
+ case TAG_ID.TR:
37621
+ e.openElements.clearBackToTableBodyContext(), e._insertElement(t, NS.HTML), e.insertionMode = InsertionMode.IN_ROW;
37622
+ break;
37623
+ case TAG_ID.TH:
37624
+ case TAG_ID.TD:
37625
+ e.openElements.clearBackToTableBodyContext(), e._insertFakeElement(TAG_NAMES.TR, TAG_ID.TR), e.insertionMode = InsertionMode.IN_ROW, startTagInRow(e, t);
37626
+ break;
37627
+ case TAG_ID.CAPTION:
37628
+ case TAG_ID.COL:
37629
+ case TAG_ID.COLGROUP:
37630
+ case TAG_ID.TBODY:
37631
+ case TAG_ID.TFOOT:
37632
+ case TAG_ID.THEAD:
37633
+ e.openElements.hasTableBodyContextInTableScope() && (e.openElements.clearBackToTableBodyContext(), e.openElements.pop(), e.insertionMode = InsertionMode.IN_TABLE, startTagInTable(e, t));
37634
+ break;
37635
+ default: startTagInTable(e, t);
37636
+ }
37637
+ }
37638
+ function endTagInTableBody(e, t) {
37639
+ let n = t.tagID;
37640
+ switch (t.tagID) {
37641
+ case TAG_ID.TBODY:
37642
+ case TAG_ID.TFOOT:
37643
+ case TAG_ID.THEAD:
37644
+ e.openElements.hasInTableScope(n) && (e.openElements.clearBackToTableBodyContext(), e.openElements.pop(), e.insertionMode = InsertionMode.IN_TABLE);
37645
+ break;
37646
+ case TAG_ID.TABLE:
37647
+ e.openElements.hasTableBodyContextInTableScope() && (e.openElements.clearBackToTableBodyContext(), e.openElements.pop(), e.insertionMode = InsertionMode.IN_TABLE, endTagInTable(e, t));
37648
+ break;
37649
+ case TAG_ID.BODY:
37650
+ case TAG_ID.CAPTION:
37651
+ case TAG_ID.COL:
37652
+ case TAG_ID.COLGROUP:
37653
+ case TAG_ID.HTML:
37654
+ case TAG_ID.TD:
37655
+ case TAG_ID.TH:
37656
+ case TAG_ID.TR: break;
37657
+ default: endTagInTable(e, t);
37658
+ }
37659
+ }
37660
+ function startTagInRow(e, t) {
37661
+ switch (t.tagID) {
37662
+ case TAG_ID.TH:
37663
+ case TAG_ID.TD:
37664
+ e.openElements.clearBackToTableRowContext(), e._insertElement(t, NS.HTML), e.insertionMode = InsertionMode.IN_CELL, e.activeFormattingElements.insertMarker();
37665
+ break;
37666
+ case TAG_ID.CAPTION:
37667
+ case TAG_ID.COL:
37668
+ case TAG_ID.COLGROUP:
37669
+ case TAG_ID.TBODY:
37670
+ case TAG_ID.TFOOT:
37671
+ case TAG_ID.THEAD:
37672
+ case TAG_ID.TR:
37673
+ e.openElements.hasInTableScope(TAG_ID.TR) && (e.openElements.clearBackToTableRowContext(), e.openElements.pop(), e.insertionMode = InsertionMode.IN_TABLE_BODY, startTagInTableBody(e, t));
37674
+ break;
37675
+ default: startTagInTable(e, t);
37676
+ }
37677
+ }
37678
+ function endTagInRow(e, t) {
37679
+ switch (t.tagID) {
37680
+ case TAG_ID.TR:
37681
+ e.openElements.hasInTableScope(TAG_ID.TR) && (e.openElements.clearBackToTableRowContext(), e.openElements.pop(), e.insertionMode = InsertionMode.IN_TABLE_BODY);
37682
+ break;
37683
+ case TAG_ID.TABLE:
37684
+ e.openElements.hasInTableScope(TAG_ID.TR) && (e.openElements.clearBackToTableRowContext(), e.openElements.pop(), e.insertionMode = InsertionMode.IN_TABLE_BODY, endTagInTableBody(e, t));
37685
+ break;
37686
+ case TAG_ID.TBODY:
37687
+ case TAG_ID.TFOOT:
37688
+ case TAG_ID.THEAD:
37689
+ (e.openElements.hasInTableScope(t.tagID) || e.openElements.hasInTableScope(TAG_ID.TR)) && (e.openElements.clearBackToTableRowContext(), e.openElements.pop(), e.insertionMode = InsertionMode.IN_TABLE_BODY, endTagInTableBody(e, t));
37690
+ break;
37691
+ case TAG_ID.BODY:
37692
+ case TAG_ID.CAPTION:
37693
+ case TAG_ID.COL:
37694
+ case TAG_ID.COLGROUP:
37695
+ case TAG_ID.HTML:
37696
+ case TAG_ID.TD:
37697
+ case TAG_ID.TH: break;
37698
+ default: endTagInTable(e, t);
37699
+ }
37700
+ }
37701
+ function startTagInCell(e, t) {
37702
+ let n = t.tagID;
37703
+ TABLE_VOID_ELEMENTS.has(n) ? (e.openElements.hasInTableScope(TAG_ID.TD) || e.openElements.hasInTableScope(TAG_ID.TH)) && (e._closeTableCell(), startTagInRow(e, t)) : startTagInBody(e, t);
37704
+ }
37705
+ function endTagInCell(e, t) {
37706
+ let n = t.tagID;
37707
+ switch (n) {
37708
+ case TAG_ID.TD:
37709
+ case TAG_ID.TH:
37710
+ e.openElements.hasInTableScope(n) && (e.openElements.generateImpliedEndTags(), e.openElements.popUntilTagNamePopped(n), e.activeFormattingElements.clearToLastMarker(), e.insertionMode = InsertionMode.IN_ROW);
37711
+ break;
37712
+ case TAG_ID.TABLE:
37713
+ case TAG_ID.TBODY:
37714
+ case TAG_ID.TFOOT:
37715
+ case TAG_ID.THEAD:
37716
+ case TAG_ID.TR:
37717
+ e.openElements.hasInTableScope(n) && (e._closeTableCell(), endTagInRow(e, t));
37718
+ break;
37719
+ case TAG_ID.BODY:
37720
+ case TAG_ID.CAPTION:
37721
+ case TAG_ID.COL:
37722
+ case TAG_ID.COLGROUP:
37723
+ case TAG_ID.HTML: break;
37724
+ default: endTagInBody(e, t);
37725
+ }
37726
+ }
37727
+ function startTagInSelect(e, t) {
37728
+ switch (t.tagID) {
37729
+ case TAG_ID.HTML:
37730
+ startTagInBody(e, t);
37731
+ break;
37732
+ case TAG_ID.OPTION:
37733
+ e.openElements.currentTagId === TAG_ID.OPTION && e.openElements.pop(), e._insertElement(t, NS.HTML);
37734
+ break;
37735
+ case TAG_ID.OPTGROUP:
37736
+ e.openElements.currentTagId === TAG_ID.OPTION && e.openElements.pop(), e.openElements.currentTagId === TAG_ID.OPTGROUP && e.openElements.pop(), e._insertElement(t, NS.HTML);
37737
+ break;
37738
+ case TAG_ID.HR:
37739
+ e.openElements.currentTagId === TAG_ID.OPTION && e.openElements.pop(), e.openElements.currentTagId === TAG_ID.OPTGROUP && e.openElements.pop(), e._appendElement(t, NS.HTML), t.ackSelfClosing = !0;
37740
+ break;
37741
+ case TAG_ID.INPUT:
37742
+ case TAG_ID.KEYGEN:
37743
+ case TAG_ID.TEXTAREA:
37744
+ case TAG_ID.SELECT:
37745
+ e.openElements.hasInSelectScope(TAG_ID.SELECT) && (e.openElements.popUntilTagNamePopped(TAG_ID.SELECT), e._resetInsertionMode(), t.tagID !== TAG_ID.SELECT && e._processStartTag(t));
37746
+ break;
37747
+ case TAG_ID.SCRIPT:
37748
+ case TAG_ID.TEMPLATE:
37749
+ startTagInHead(e, t);
37750
+ break;
37751
+ default:
37752
+ }
37753
+ }
37754
+ function endTagInSelect(e, t) {
37755
+ switch (t.tagID) {
37756
+ case TAG_ID.OPTGROUP:
37757
+ e.openElements.stackTop > 0 && e.openElements.currentTagId === TAG_ID.OPTION && e.openElements.tagIDs[e.openElements.stackTop - 1] === TAG_ID.OPTGROUP && e.openElements.pop(), e.openElements.currentTagId === TAG_ID.OPTGROUP && e.openElements.pop();
37758
+ break;
37759
+ case TAG_ID.OPTION:
37760
+ e.openElements.currentTagId === TAG_ID.OPTION && e.openElements.pop();
37761
+ break;
37762
+ case TAG_ID.SELECT:
37763
+ e.openElements.hasInSelectScope(TAG_ID.SELECT) && (e.openElements.popUntilTagNamePopped(TAG_ID.SELECT), e._resetInsertionMode());
37764
+ break;
37765
+ case TAG_ID.TEMPLATE:
37766
+ templateEndTagInHead(e, t);
37767
+ break;
37768
+ default:
37769
+ }
37770
+ }
37771
+ function startTagInSelectInTable(e, t) {
37772
+ let n = t.tagID;
37773
+ n === TAG_ID.CAPTION || n === TAG_ID.TABLE || n === TAG_ID.TBODY || n === TAG_ID.TFOOT || n === TAG_ID.THEAD || n === TAG_ID.TR || n === TAG_ID.TD || n === TAG_ID.TH ? (e.openElements.popUntilTagNamePopped(TAG_ID.SELECT), e._resetInsertionMode(), e._processStartTag(t)) : startTagInSelect(e, t);
37774
+ }
37775
+ function endTagInSelectInTable(e, t) {
37776
+ let n = t.tagID;
37777
+ n === TAG_ID.CAPTION || n === TAG_ID.TABLE || n === TAG_ID.TBODY || n === TAG_ID.TFOOT || n === TAG_ID.THEAD || n === TAG_ID.TR || n === TAG_ID.TD || n === TAG_ID.TH ? e.openElements.hasInTableScope(n) && (e.openElements.popUntilTagNamePopped(TAG_ID.SELECT), e._resetInsertionMode(), e.onEndTag(t)) : endTagInSelect(e, t);
37778
+ }
37779
+ function startTagInTemplate(e, t) {
37780
+ switch (t.tagID) {
37781
+ case TAG_ID.BASE:
37782
+ case TAG_ID.BASEFONT:
37783
+ case TAG_ID.BGSOUND:
37784
+ case TAG_ID.LINK:
37785
+ case TAG_ID.META:
37786
+ case TAG_ID.NOFRAMES:
37787
+ case TAG_ID.SCRIPT:
37788
+ case TAG_ID.STYLE:
37789
+ case TAG_ID.TEMPLATE:
37790
+ case TAG_ID.TITLE:
37791
+ startTagInHead(e, t);
37792
+ break;
37793
+ case TAG_ID.CAPTION:
37794
+ case TAG_ID.COLGROUP:
37795
+ case TAG_ID.TBODY:
37796
+ case TAG_ID.TFOOT:
37797
+ case TAG_ID.THEAD:
37798
+ e.tmplInsertionModeStack[0] = InsertionMode.IN_TABLE, e.insertionMode = InsertionMode.IN_TABLE, startTagInTable(e, t);
37799
+ break;
37800
+ case TAG_ID.COL:
37801
+ e.tmplInsertionModeStack[0] = InsertionMode.IN_COLUMN_GROUP, e.insertionMode = InsertionMode.IN_COLUMN_GROUP, startTagInColumnGroup(e, t);
37802
+ break;
37803
+ case TAG_ID.TR:
37804
+ e.tmplInsertionModeStack[0] = InsertionMode.IN_TABLE_BODY, e.insertionMode = InsertionMode.IN_TABLE_BODY, startTagInTableBody(e, t);
37805
+ break;
37806
+ case TAG_ID.TD:
37807
+ case TAG_ID.TH:
37808
+ e.tmplInsertionModeStack[0] = InsertionMode.IN_ROW, e.insertionMode = InsertionMode.IN_ROW, startTagInRow(e, t);
37809
+ break;
37810
+ default: e.tmplInsertionModeStack[0] = InsertionMode.IN_BODY, e.insertionMode = InsertionMode.IN_BODY, startTagInBody(e, t);
37811
+ }
37812
+ }
37813
+ function endTagInTemplate(e, t) {
37814
+ t.tagID === TAG_ID.TEMPLATE && templateEndTagInHead(e, t);
37815
+ }
37816
+ function eofInTemplate(e, t) {
37817
+ e.openElements.tmplCount > 0 ? (e.openElements.popUntilTagNamePopped(TAG_ID.TEMPLATE), e.activeFormattingElements.clearToLastMarker(), e.tmplInsertionModeStack.shift(), e._resetInsertionMode(), e.onEof(t)) : stopParsing(e, t);
37818
+ }
37819
+ function startTagAfterBody(e, t) {
37820
+ t.tagID === TAG_ID.HTML ? startTagInBody(e, t) : tokenAfterBody(e, t);
37821
+ }
37822
+ function endTagAfterBody(e, t) {
37823
+ var n;
37824
+ if (t.tagID === TAG_ID.HTML) {
37825
+ if (e.fragmentContext || (e.insertionMode = InsertionMode.AFTER_AFTER_BODY), e.options.sourceCodeLocationInfo && e.openElements.tagIDs[0] === TAG_ID.HTML) {
37826
+ e._setEndLocation(e.openElements.items[0], t);
37827
+ let n = e.openElements.items[1];
37828
+ n && !e.treeAdapter.getNodeSourceCodeLocation(n)?.endTag && e._setEndLocation(n, t);
37829
+ }
37830
+ } else tokenAfterBody(e, t);
37831
+ }
37832
+ function tokenAfterBody(e, t) {
37833
+ e.insertionMode = InsertionMode.IN_BODY, modeInBody(e, t);
37834
+ }
37835
+ function startTagInFrameset(e, t) {
37836
+ switch (t.tagID) {
37837
+ case TAG_ID.HTML:
37838
+ startTagInBody(e, t);
37839
+ break;
37840
+ case TAG_ID.FRAMESET:
37841
+ e._insertElement(t, NS.HTML);
37842
+ break;
37843
+ case TAG_ID.FRAME:
37844
+ e._appendElement(t, NS.HTML), t.ackSelfClosing = !0;
37845
+ break;
37846
+ case TAG_ID.NOFRAMES:
37847
+ startTagInHead(e, t);
37848
+ break;
37849
+ default:
37850
+ }
37851
+ }
37852
+ function endTagInFrameset(e, t) {
37853
+ t.tagID === TAG_ID.FRAMESET && !e.openElements.isRootHtmlElementCurrent() && (e.openElements.pop(), !e.fragmentContext && e.openElements.currentTagId !== TAG_ID.FRAMESET && (e.insertionMode = InsertionMode.AFTER_FRAMESET));
37854
+ }
37855
+ function startTagAfterFrameset(e, t) {
37856
+ switch (t.tagID) {
37857
+ case TAG_ID.HTML:
37858
+ startTagInBody(e, t);
37859
+ break;
37860
+ case TAG_ID.NOFRAMES:
37861
+ startTagInHead(e, t);
37862
+ break;
37863
+ default:
37864
+ }
37865
+ }
37866
+ function endTagAfterFrameset(e, t) {
37867
+ t.tagID === TAG_ID.HTML && (e.insertionMode = InsertionMode.AFTER_AFTER_FRAMESET);
37868
+ }
37869
+ function startTagAfterAfterBody(e, t) {
37870
+ t.tagID === TAG_ID.HTML ? startTagInBody(e, t) : tokenAfterAfterBody(e, t);
37871
+ }
37872
+ function tokenAfterAfterBody(e, t) {
37873
+ e.insertionMode = InsertionMode.IN_BODY, modeInBody(e, t);
37874
+ }
37875
+ function startTagAfterAfterFrameset(e, t) {
37876
+ switch (t.tagID) {
37877
+ case TAG_ID.HTML:
37878
+ startTagInBody(e, t);
37879
+ break;
37880
+ case TAG_ID.NOFRAMES:
37881
+ startTagInHead(e, t);
37882
+ break;
37883
+ default:
37884
+ }
37885
+ }
37886
+ function nullCharacterInForeignContent(e, t) {
37887
+ t.chars = "�", e._insertCharacters(t);
37888
+ }
37889
+ function characterInForeignContent(e, t) {
37890
+ e._insertCharacters(t), e.framesetOk = !1;
37891
+ }
37892
+ function popUntilHtmlOrIntegrationPoint(e) {
37893
+ for (; e.treeAdapter.getNamespaceURI(e.openElements.current) !== NS.HTML && e.openElements.currentTagId !== void 0 && !e._isIntegrationPoint(e.openElements.currentTagId, e.openElements.current);) e.openElements.pop();
37894
+ }
37895
+ function startTagInForeignContent(e, t) {
37896
+ if (causesExit(t)) popUntilHtmlOrIntegrationPoint(e), e._startTagOutsideForeignContent(t);
37897
+ else {
37898
+ let n = e._getAdjustedCurrentElement(), i = e.treeAdapter.getNamespaceURI(n);
37899
+ i === NS.MATHML ? adjustTokenMathMLAttrs(t) : i === NS.SVG && (adjustTokenSVGTagName(t), adjustTokenSVGAttrs(t)), adjustTokenXMLAttrs(t), t.selfClosing ? e._appendElement(t, i) : e._insertElement(t, i), t.ackSelfClosing = !0;
37900
+ }
37901
+ }
37902
+ function endTagInForeignContent(e, t) {
37903
+ if (t.tagID === TAG_ID.P || t.tagID === TAG_ID.BR) {
37904
+ popUntilHtmlOrIntegrationPoint(e), e._endTagOutsideForeignContent(t);
37905
+ return;
37906
+ }
37907
+ for (let n = e.openElements.stackTop; n > 0; n--) {
37908
+ let i = e.openElements.items[n];
37909
+ if (e.treeAdapter.getNamespaceURI(i) === NS.HTML) {
37910
+ e._endTagOutsideForeignContent(t);
37911
+ break;
37912
+ }
37913
+ let a = e.treeAdapter.getTagName(i);
37914
+ if (a.toLowerCase() === t.tagName) {
37915
+ t.tagName = a, e.openElements.shortenToLength(n);
37916
+ break;
37917
+ }
37918
+ }
37919
+ }
37920
+ var HIDDEN_INPUT_TYPE, AA_OUTER_LOOP_ITER, AA_INNER_LOOP_ITER, InsertionMode, BASE_LOC, TABLE_STRUCTURE_TAGS, defaultParserOptions, Parser, TABLE_VOID_ELEMENTS, init_parser = __esmMin((() => {
37921
+ init_tokenizer(), init_open_element_stack(), init_formatting_element_list(), init_default(), init_doctype(), init_foreign_content(), init_error_codes(), init_unicode(), init_html(), init_token(), HIDDEN_INPUT_TYPE = "hidden", AA_OUTER_LOOP_ITER = 8, AA_INNER_LOOP_ITER = 3, (function(e) {
37922
+ e[e.INITIAL = 0] = "INITIAL", e[e.BEFORE_HTML = 1] = "BEFORE_HTML", e[e.BEFORE_HEAD = 2] = "BEFORE_HEAD", e[e.IN_HEAD = 3] = "IN_HEAD", e[e.IN_HEAD_NO_SCRIPT = 4] = "IN_HEAD_NO_SCRIPT", e[e.AFTER_HEAD = 5] = "AFTER_HEAD", e[e.IN_BODY = 6] = "IN_BODY", e[e.TEXT = 7] = "TEXT", e[e.IN_TABLE = 8] = "IN_TABLE", e[e.IN_TABLE_TEXT = 9] = "IN_TABLE_TEXT", e[e.IN_CAPTION = 10] = "IN_CAPTION", e[e.IN_COLUMN_GROUP = 11] = "IN_COLUMN_GROUP", e[e.IN_TABLE_BODY = 12] = "IN_TABLE_BODY", e[e.IN_ROW = 13] = "IN_ROW", e[e.IN_CELL = 14] = "IN_CELL", e[e.IN_SELECT = 15] = "IN_SELECT", e[e.IN_SELECT_IN_TABLE = 16] = "IN_SELECT_IN_TABLE", e[e.IN_TEMPLATE = 17] = "IN_TEMPLATE", e[e.AFTER_BODY = 18] = "AFTER_BODY", e[e.IN_FRAMESET = 19] = "IN_FRAMESET", e[e.AFTER_FRAMESET = 20] = "AFTER_FRAMESET", e[e.AFTER_AFTER_BODY = 21] = "AFTER_AFTER_BODY", e[e.AFTER_AFTER_FRAMESET = 22] = "AFTER_AFTER_FRAMESET";
37923
+ })(InsertionMode ||= {}), BASE_LOC = {
37924
+ startLine: -1,
37925
+ startCol: -1,
37926
+ startOffset: -1,
37927
+ endLine: -1,
37928
+ endCol: -1,
37929
+ endOffset: -1
37930
+ }, TABLE_STRUCTURE_TAGS = new Set([
37931
+ TAG_ID.TABLE,
37932
+ TAG_ID.TBODY,
37933
+ TAG_ID.TFOOT,
37934
+ TAG_ID.THEAD,
37935
+ TAG_ID.TR
37936
+ ]), defaultParserOptions = {
37937
+ scriptingEnabled: !0,
37938
+ sourceCodeLocationInfo: !1,
37939
+ treeAdapter: defaultTreeAdapter,
37940
+ onParseError: null
37941
+ }, Parser = class {
37942
+ constructor(e, t, n = null, i = null) {
37943
+ this.fragmentContext = n, this.scriptHandler = i, this.currentToken = null, this.stopped = !1, this.insertionMode = InsertionMode.INITIAL, this.originalInsertionMode = InsertionMode.INITIAL, this.headElement = null, this.formElement = null, this.currentNotInHTML = !1, this.tmplInsertionModeStack = [], this.pendingCharacterTokens = [], this.hasNonWhitespacePendingCharacterToken = !1, this.framesetOk = !0, this.skipNextNewLine = !1, this.fosterParentingEnabled = !1, this.options = {
37944
+ ...defaultParserOptions,
37945
+ ...e
37946
+ }, this.treeAdapter = this.options.treeAdapter, this.onParseError = this.options.onParseError, this.onParseError && (this.options.sourceCodeLocationInfo = !0), this.document = t ?? this.treeAdapter.createDocument(), this.tokenizer = new Tokenizer(this.options, this), this.activeFormattingElements = new FormattingElementList(this.treeAdapter), this.fragmentContextID = n ? getTagID(this.treeAdapter.getTagName(n)) : TAG_ID.UNKNOWN, this._setContextModes(n ?? this.document, this.fragmentContextID), this.openElements = new OpenElementStack(this.document, this.treeAdapter, this);
37947
+ }
37948
+ static parse(e, t) {
37949
+ let n = new this(t);
37950
+ return n.tokenizer.write(e, !0), n.document;
37951
+ }
37952
+ static getFragmentParser(e, t) {
37953
+ let n = {
37954
+ ...defaultParserOptions,
37955
+ ...t
37956
+ };
37957
+ e ??= n.treeAdapter.createElement(TAG_NAMES.TEMPLATE, NS.HTML, []);
37958
+ let i = n.treeAdapter.createElement("documentmock", NS.HTML, []), a = new this(n, i, e);
37959
+ return a.fragmentContextID === TAG_ID.TEMPLATE && a.tmplInsertionModeStack.unshift(InsertionMode.IN_TEMPLATE), a._initTokenizerForFragmentParsing(), a._insertFakeRootElement(), a._resetInsertionMode(), a._findFormInFragmentContext(), a;
37960
+ }
37961
+ getFragment() {
37962
+ let e = this.treeAdapter.getFirstChild(this.document), t = this.treeAdapter.createDocumentFragment();
37963
+ return this._adoptNodes(e, t), t;
37964
+ }
37965
+ _err(e, t, n) {
37966
+ var i;
37967
+ if (!this.onParseError) return;
37968
+ let a = e.location ?? BASE_LOC, o = {
37969
+ code: t,
37970
+ startLine: a.startLine,
37971
+ startCol: a.startCol,
37972
+ startOffset: a.startOffset,
37973
+ endLine: n ? a.startLine : a.endLine,
37974
+ endCol: n ? a.startCol : a.endCol,
37975
+ endOffset: n ? a.startOffset : a.endOffset
37976
+ };
37977
+ this.onParseError(o);
37978
+ }
37979
+ onItemPush(e, t, n) {
37980
+ var i, a;
37981
+ (a = (i = this.treeAdapter).onItemPush) == null || a.call(i, e), n && this.openElements.stackTop > 0 && this._setContextModes(e, t);
37982
+ }
37983
+ onItemPop(e, t) {
37984
+ var n, i;
37985
+ if (this.options.sourceCodeLocationInfo && this._setEndLocation(e, this.currentToken), (i = (n = this.treeAdapter).onItemPop) == null || i.call(n, e, this.openElements.current), t) {
37986
+ let e, t;
37987
+ this.openElements.stackTop === 0 && this.fragmentContext ? (e = this.fragmentContext, t = this.fragmentContextID) : {current: e, currentTagId: t} = this.openElements, this._setContextModes(e, t);
37988
+ }
37989
+ }
37990
+ _setContextModes(e, t) {
37991
+ let n = e === this.document || e && this.treeAdapter.getNamespaceURI(e) === NS.HTML;
37992
+ this.currentNotInHTML = !n, this.tokenizer.inForeignNode = !n && e !== void 0 && t !== void 0 && !this._isIntegrationPoint(t, e);
37993
+ }
37994
+ _switchToTextParsing(e, t) {
37995
+ this._insertElement(e, NS.HTML), this.tokenizer.state = t, this.originalInsertionMode = this.insertionMode, this.insertionMode = InsertionMode.TEXT;
37996
+ }
37997
+ switchToPlaintextParsing() {
37998
+ this.insertionMode = InsertionMode.TEXT, this.originalInsertionMode = InsertionMode.IN_BODY, this.tokenizer.state = TokenizerMode.PLAINTEXT;
37999
+ }
38000
+ _getAdjustedCurrentElement() {
38001
+ return this.openElements.stackTop === 0 && this.fragmentContext ? this.fragmentContext : this.openElements.current;
38002
+ }
38003
+ _findFormInFragmentContext() {
38004
+ let e = this.fragmentContext;
38005
+ for (; e;) {
38006
+ if (this.treeAdapter.getTagName(e) === TAG_NAMES.FORM) {
38007
+ this.formElement = e;
38008
+ break;
38009
+ }
38010
+ e = this.treeAdapter.getParentNode(e);
38011
+ }
38012
+ }
38013
+ _initTokenizerForFragmentParsing() {
38014
+ if (!(!this.fragmentContext || this.treeAdapter.getNamespaceURI(this.fragmentContext) !== NS.HTML)) switch (this.fragmentContextID) {
38015
+ case TAG_ID.TITLE:
38016
+ case TAG_ID.TEXTAREA:
38017
+ this.tokenizer.state = TokenizerMode.RCDATA;
38018
+ break;
38019
+ case TAG_ID.STYLE:
38020
+ case TAG_ID.XMP:
38021
+ case TAG_ID.IFRAME:
38022
+ case TAG_ID.NOEMBED:
38023
+ case TAG_ID.NOFRAMES:
38024
+ case TAG_ID.NOSCRIPT:
38025
+ this.tokenizer.state = TokenizerMode.RAWTEXT;
38026
+ break;
38027
+ case TAG_ID.SCRIPT:
38028
+ this.tokenizer.state = TokenizerMode.SCRIPT_DATA;
38029
+ break;
38030
+ case TAG_ID.PLAINTEXT:
38031
+ this.tokenizer.state = TokenizerMode.PLAINTEXT;
38032
+ break;
38033
+ default:
38034
+ }
38035
+ }
38036
+ _setDocumentType(e) {
38037
+ let t = e.name || "", n = e.publicId || "", i = e.systemId || "";
38038
+ if (this.treeAdapter.setDocumentType(this.document, t, n, i), e.location) {
38039
+ let t = this.treeAdapter.getChildNodes(this.document).find((e) => this.treeAdapter.isDocumentTypeNode(e));
38040
+ t && this.treeAdapter.setNodeSourceCodeLocation(t, e.location);
38041
+ }
38042
+ }
38043
+ _attachElementToTree(e, t) {
38044
+ if (this.options.sourceCodeLocationInfo) {
38045
+ let n = t && {
38046
+ ...t,
38047
+ startTag: t
38048
+ };
38049
+ this.treeAdapter.setNodeSourceCodeLocation(e, n);
38050
+ }
38051
+ if (this._shouldFosterParentOnInsertion()) this._fosterParentElement(e);
38052
+ else {
38053
+ let t = this.openElements.currentTmplContentOrNode;
38054
+ this.treeAdapter.appendChild(t ?? this.document, e);
38055
+ }
38056
+ }
38057
+ _appendElement(e, t) {
38058
+ let n = this.treeAdapter.createElement(e.tagName, t, e.attrs);
38059
+ this._attachElementToTree(n, e.location);
38060
+ }
38061
+ _insertElement(e, t) {
38062
+ let n = this.treeAdapter.createElement(e.tagName, t, e.attrs);
38063
+ this._attachElementToTree(n, e.location), this.openElements.push(n, e.tagID);
38064
+ }
38065
+ _insertFakeElement(e, t) {
38066
+ let n = this.treeAdapter.createElement(e, NS.HTML, []);
38067
+ this._attachElementToTree(n, null), this.openElements.push(n, t);
38068
+ }
38069
+ _insertTemplate(e) {
38070
+ let t = this.treeAdapter.createElement(e.tagName, NS.HTML, e.attrs), n = this.treeAdapter.createDocumentFragment();
38071
+ this.treeAdapter.setTemplateContent(t, n), this._attachElementToTree(t, e.location), this.openElements.push(t, e.tagID), this.options.sourceCodeLocationInfo && this.treeAdapter.setNodeSourceCodeLocation(n, null);
38072
+ }
38073
+ _insertFakeRootElement() {
38074
+ let e = this.treeAdapter.createElement(TAG_NAMES.HTML, NS.HTML, []);
38075
+ this.options.sourceCodeLocationInfo && this.treeAdapter.setNodeSourceCodeLocation(e, null), this.treeAdapter.appendChild(this.openElements.current, e), this.openElements.push(e, TAG_ID.HTML);
38076
+ }
38077
+ _appendCommentNode(e, t) {
38078
+ let n = this.treeAdapter.createCommentNode(e.data);
38079
+ this.treeAdapter.appendChild(t, n), this.options.sourceCodeLocationInfo && this.treeAdapter.setNodeSourceCodeLocation(n, e.location);
38080
+ }
38081
+ _insertCharacters(e) {
38082
+ let t, n;
38083
+ if (this._shouldFosterParentOnInsertion() ? ({parent: t, beforeElement: n} = this._findFosterParentingLocation(), n ? this.treeAdapter.insertTextBefore(t, e.chars, n) : this.treeAdapter.insertText(t, e.chars)) : (t = this.openElements.currentTmplContentOrNode, this.treeAdapter.insertText(t, e.chars)), !e.location) return;
38084
+ let i = this.treeAdapter.getChildNodes(t), a = i[(n ? i.lastIndexOf(n) : i.length) - 1];
38085
+ if (this.treeAdapter.getNodeSourceCodeLocation(a)) {
38086
+ let { endLine: t, endCol: n, endOffset: i } = e.location;
38087
+ this.treeAdapter.updateNodeSourceCodeLocation(a, {
38088
+ endLine: t,
38089
+ endCol: n,
38090
+ endOffset: i
38091
+ });
38092
+ } else this.options.sourceCodeLocationInfo && this.treeAdapter.setNodeSourceCodeLocation(a, e.location);
38093
+ }
38094
+ _adoptNodes(e, t) {
38095
+ for (let n = this.treeAdapter.getFirstChild(e); n; n = this.treeAdapter.getFirstChild(e)) this.treeAdapter.detachNode(n), this.treeAdapter.appendChild(t, n);
38096
+ }
38097
+ _setEndLocation(e, t) {
38098
+ if (this.treeAdapter.getNodeSourceCodeLocation(e) && t.location) {
38099
+ let n = t.location, i = this.treeAdapter.getTagName(e), a = t.type === TokenType.END_TAG && i === t.tagName ? {
38100
+ endTag: { ...n },
38101
+ endLine: n.endLine,
38102
+ endCol: n.endCol,
38103
+ endOffset: n.endOffset
38104
+ } : {
38105
+ endLine: n.startLine,
38106
+ endCol: n.startCol,
38107
+ endOffset: n.startOffset
38108
+ };
38109
+ this.treeAdapter.updateNodeSourceCodeLocation(e, a);
38110
+ }
38111
+ }
38112
+ shouldProcessStartTagTokenInForeignContent(e) {
38113
+ if (!this.currentNotInHTML) return !1;
38114
+ let t, n;
38115
+ return this.openElements.stackTop === 0 && this.fragmentContext ? (t = this.fragmentContext, n = this.fragmentContextID) : {current: t, currentTagId: n} = this.openElements, e.tagID === TAG_ID.SVG && this.treeAdapter.getTagName(t) === TAG_NAMES.ANNOTATION_XML && this.treeAdapter.getNamespaceURI(t) === NS.MATHML ? !1 : this.tokenizer.inForeignNode || (e.tagID === TAG_ID.MGLYPH || e.tagID === TAG_ID.MALIGNMARK) && n !== void 0 && !this._isIntegrationPoint(n, t, NS.HTML);
38116
+ }
38117
+ _processToken(e) {
38118
+ switch (e.type) {
38119
+ case TokenType.CHARACTER:
38120
+ this.onCharacter(e);
38121
+ break;
38122
+ case TokenType.NULL_CHARACTER:
38123
+ this.onNullCharacter(e);
38124
+ break;
38125
+ case TokenType.COMMENT:
38126
+ this.onComment(e);
38127
+ break;
38128
+ case TokenType.DOCTYPE:
38129
+ this.onDoctype(e);
38130
+ break;
38131
+ case TokenType.START_TAG:
38132
+ this._processStartTag(e);
38133
+ break;
38134
+ case TokenType.END_TAG:
38135
+ this.onEndTag(e);
38136
+ break;
38137
+ case TokenType.EOF:
38138
+ this.onEof(e);
38139
+ break;
38140
+ case TokenType.WHITESPACE_CHARACTER:
38141
+ this.onWhitespaceCharacter(e);
38142
+ break;
38143
+ }
38144
+ }
38145
+ _isIntegrationPoint(e, t, n) {
38146
+ return isIntegrationPoint(e, this.treeAdapter.getNamespaceURI(t), this.treeAdapter.getAttrList(t), n);
38147
+ }
38148
+ _reconstructActiveFormattingElements() {
38149
+ let e = this.activeFormattingElements.entries.length;
38150
+ if (e) {
38151
+ let t = this.activeFormattingElements.entries.findIndex((e) => e.type === EntryType.Marker || this.openElements.contains(e.element)), n = t === -1 ? e - 1 : t - 1;
38152
+ for (let e = n; e >= 0; e--) {
38153
+ let t = this.activeFormattingElements.entries[e];
38154
+ this._insertElement(t.token, this.treeAdapter.getNamespaceURI(t.element)), t.element = this.openElements.current;
38155
+ }
38156
+ }
38157
+ }
38158
+ _closeTableCell() {
38159
+ this.openElements.generateImpliedEndTags(), this.openElements.popUntilTableCellPopped(), this.activeFormattingElements.clearToLastMarker(), this.insertionMode = InsertionMode.IN_ROW;
38160
+ }
38161
+ _closePElement() {
38162
+ this.openElements.generateImpliedEndTagsWithExclusion(TAG_ID.P), this.openElements.popUntilTagNamePopped(TAG_ID.P);
38163
+ }
38164
+ _resetInsertionMode() {
38165
+ for (let e = this.openElements.stackTop; e >= 0; e--) switch (e === 0 && this.fragmentContext ? this.fragmentContextID : this.openElements.tagIDs[e]) {
38166
+ case TAG_ID.TR:
38167
+ this.insertionMode = InsertionMode.IN_ROW;
38168
+ return;
38169
+ case TAG_ID.TBODY:
38170
+ case TAG_ID.THEAD:
38171
+ case TAG_ID.TFOOT:
38172
+ this.insertionMode = InsertionMode.IN_TABLE_BODY;
38173
+ return;
38174
+ case TAG_ID.CAPTION:
38175
+ this.insertionMode = InsertionMode.IN_CAPTION;
38176
+ return;
38177
+ case TAG_ID.COLGROUP:
38178
+ this.insertionMode = InsertionMode.IN_COLUMN_GROUP;
38179
+ return;
38180
+ case TAG_ID.TABLE:
38181
+ this.insertionMode = InsertionMode.IN_TABLE;
38182
+ return;
38183
+ case TAG_ID.BODY:
38184
+ this.insertionMode = InsertionMode.IN_BODY;
38185
+ return;
38186
+ case TAG_ID.FRAMESET:
38187
+ this.insertionMode = InsertionMode.IN_FRAMESET;
38188
+ return;
38189
+ case TAG_ID.SELECT:
38190
+ this._resetInsertionModeForSelect(e);
38191
+ return;
38192
+ case TAG_ID.TEMPLATE:
38193
+ this.insertionMode = this.tmplInsertionModeStack[0];
38194
+ return;
38195
+ case TAG_ID.HTML:
38196
+ this.insertionMode = this.headElement ? InsertionMode.AFTER_HEAD : InsertionMode.BEFORE_HEAD;
38197
+ return;
38198
+ case TAG_ID.TD:
38199
+ case TAG_ID.TH:
38200
+ if (e > 0) {
38201
+ this.insertionMode = InsertionMode.IN_CELL;
38202
+ return;
38203
+ }
38204
+ break;
38205
+ case TAG_ID.HEAD:
38206
+ if (e > 0) {
38207
+ this.insertionMode = InsertionMode.IN_HEAD;
38208
+ return;
38209
+ }
38210
+ break;
38211
+ }
38212
+ this.insertionMode = InsertionMode.IN_BODY;
38213
+ }
38214
+ _resetInsertionModeForSelect(e) {
38215
+ if (e > 0) for (let t = e - 1; t > 0; t--) {
38216
+ let e = this.openElements.tagIDs[t];
38217
+ if (e === TAG_ID.TEMPLATE) break;
38218
+ if (e === TAG_ID.TABLE) {
38219
+ this.insertionMode = InsertionMode.IN_SELECT_IN_TABLE;
38220
+ return;
38221
+ }
38222
+ }
38223
+ this.insertionMode = InsertionMode.IN_SELECT;
38224
+ }
38225
+ _isElementCausesFosterParenting(e) {
38226
+ return TABLE_STRUCTURE_TAGS.has(e);
38227
+ }
38228
+ _shouldFosterParentOnInsertion() {
38229
+ return this.fosterParentingEnabled && this.openElements.currentTagId !== void 0 && this._isElementCausesFosterParenting(this.openElements.currentTagId);
38230
+ }
38231
+ _findFosterParentingLocation() {
38232
+ for (let e = this.openElements.stackTop; e >= 0; e--) {
38233
+ let t = this.openElements.items[e];
38234
+ switch (this.openElements.tagIDs[e]) {
38235
+ case TAG_ID.TEMPLATE:
38236
+ if (this.treeAdapter.getNamespaceURI(t) === NS.HTML) return {
38237
+ parent: this.treeAdapter.getTemplateContent(t),
38238
+ beforeElement: null
38239
+ };
38240
+ break;
38241
+ case TAG_ID.TABLE: {
38242
+ let n = this.treeAdapter.getParentNode(t);
38243
+ return n ? {
38244
+ parent: n,
38245
+ beforeElement: t
38246
+ } : {
38247
+ parent: this.openElements.items[e - 1],
38248
+ beforeElement: null
38249
+ };
38250
+ }
38251
+ default:
38252
+ }
38253
+ }
38254
+ return {
38255
+ parent: this.openElements.items[0],
38256
+ beforeElement: null
38257
+ };
38258
+ }
38259
+ _fosterParentElement(e) {
38260
+ let t = this._findFosterParentingLocation();
38261
+ t.beforeElement ? this.treeAdapter.insertBefore(t.parent, e, t.beforeElement) : this.treeAdapter.appendChild(t.parent, e);
38262
+ }
38263
+ _isSpecialElement(e, t) {
38264
+ return SPECIAL_ELEMENTS[this.treeAdapter.getNamespaceURI(e)].has(t);
38265
+ }
38266
+ onCharacter(e) {
38267
+ if (this.skipNextNewLine = !1, this.tokenizer.inForeignNode) {
38268
+ characterInForeignContent(this, e);
38269
+ return;
38270
+ }
38271
+ switch (this.insertionMode) {
38272
+ case InsertionMode.INITIAL:
38273
+ tokenInInitialMode(this, e);
38274
+ break;
38275
+ case InsertionMode.BEFORE_HTML:
38276
+ tokenBeforeHtml(this, e);
38277
+ break;
38278
+ case InsertionMode.BEFORE_HEAD:
38279
+ tokenBeforeHead(this, e);
38280
+ break;
38281
+ case InsertionMode.IN_HEAD:
38282
+ tokenInHead(this, e);
38283
+ break;
38284
+ case InsertionMode.IN_HEAD_NO_SCRIPT:
38285
+ tokenInHeadNoScript(this, e);
38286
+ break;
38287
+ case InsertionMode.AFTER_HEAD:
38288
+ tokenAfterHead(this, e);
38289
+ break;
38290
+ case InsertionMode.IN_BODY:
38291
+ case InsertionMode.IN_CAPTION:
38292
+ case InsertionMode.IN_CELL:
38293
+ case InsertionMode.IN_TEMPLATE:
38294
+ characterInBody(this, e);
38295
+ break;
38296
+ case InsertionMode.TEXT:
38297
+ case InsertionMode.IN_SELECT:
38298
+ case InsertionMode.IN_SELECT_IN_TABLE:
38299
+ this._insertCharacters(e);
38300
+ break;
38301
+ case InsertionMode.IN_TABLE:
38302
+ case InsertionMode.IN_TABLE_BODY:
38303
+ case InsertionMode.IN_ROW:
38304
+ characterInTable(this, e);
38305
+ break;
38306
+ case InsertionMode.IN_TABLE_TEXT:
38307
+ characterInTableText(this, e);
38308
+ break;
38309
+ case InsertionMode.IN_COLUMN_GROUP:
38310
+ tokenInColumnGroup(this, e);
38311
+ break;
38312
+ case InsertionMode.AFTER_BODY:
38313
+ tokenAfterBody(this, e);
38314
+ break;
38315
+ case InsertionMode.AFTER_AFTER_BODY:
38316
+ tokenAfterAfterBody(this, e);
38317
+ break;
38318
+ default:
38319
+ }
38320
+ }
38321
+ onNullCharacter(e) {
38322
+ if (this.skipNextNewLine = !1, this.tokenizer.inForeignNode) {
38323
+ nullCharacterInForeignContent(this, e);
38324
+ return;
38325
+ }
38326
+ switch (this.insertionMode) {
38327
+ case InsertionMode.INITIAL:
38328
+ tokenInInitialMode(this, e);
38329
+ break;
38330
+ case InsertionMode.BEFORE_HTML:
38331
+ tokenBeforeHtml(this, e);
38332
+ break;
38333
+ case InsertionMode.BEFORE_HEAD:
38334
+ tokenBeforeHead(this, e);
38335
+ break;
38336
+ case InsertionMode.IN_HEAD:
38337
+ tokenInHead(this, e);
38338
+ break;
38339
+ case InsertionMode.IN_HEAD_NO_SCRIPT:
38340
+ tokenInHeadNoScript(this, e);
38341
+ break;
38342
+ case InsertionMode.AFTER_HEAD:
38343
+ tokenAfterHead(this, e);
38344
+ break;
38345
+ case InsertionMode.TEXT:
38346
+ this._insertCharacters(e);
38347
+ break;
38348
+ case InsertionMode.IN_TABLE:
38349
+ case InsertionMode.IN_TABLE_BODY:
38350
+ case InsertionMode.IN_ROW:
38351
+ characterInTable(this, e);
38352
+ break;
38353
+ case InsertionMode.IN_COLUMN_GROUP:
38354
+ tokenInColumnGroup(this, e);
38355
+ break;
38356
+ case InsertionMode.AFTER_BODY:
38357
+ tokenAfterBody(this, e);
38358
+ break;
38359
+ case InsertionMode.AFTER_AFTER_BODY:
38360
+ tokenAfterAfterBody(this, e);
38361
+ break;
38362
+ default:
38363
+ }
38364
+ }
38365
+ onComment(e) {
38366
+ if (this.skipNextNewLine = !1, this.currentNotInHTML) {
38367
+ appendComment(this, e);
38368
+ return;
38369
+ }
38370
+ switch (this.insertionMode) {
38371
+ case InsertionMode.INITIAL:
38372
+ case InsertionMode.BEFORE_HTML:
38373
+ case InsertionMode.BEFORE_HEAD:
38374
+ case InsertionMode.IN_HEAD:
38375
+ case InsertionMode.IN_HEAD_NO_SCRIPT:
38376
+ case InsertionMode.AFTER_HEAD:
38377
+ case InsertionMode.IN_BODY:
38378
+ case InsertionMode.IN_TABLE:
38379
+ case InsertionMode.IN_CAPTION:
38380
+ case InsertionMode.IN_COLUMN_GROUP:
38381
+ case InsertionMode.IN_TABLE_BODY:
38382
+ case InsertionMode.IN_ROW:
38383
+ case InsertionMode.IN_CELL:
38384
+ case InsertionMode.IN_SELECT:
38385
+ case InsertionMode.IN_SELECT_IN_TABLE:
38386
+ case InsertionMode.IN_TEMPLATE:
38387
+ case InsertionMode.IN_FRAMESET:
38388
+ case InsertionMode.AFTER_FRAMESET:
38389
+ appendComment(this, e);
38390
+ break;
38391
+ case InsertionMode.IN_TABLE_TEXT:
38392
+ tokenInTableText(this, e);
38393
+ break;
38394
+ case InsertionMode.AFTER_BODY:
38395
+ appendCommentToRootHtmlElement(this, e);
38396
+ break;
38397
+ case InsertionMode.AFTER_AFTER_BODY:
38398
+ case InsertionMode.AFTER_AFTER_FRAMESET:
38399
+ appendCommentToDocument(this, e);
38400
+ break;
38401
+ default:
38402
+ }
38403
+ }
38404
+ onDoctype(e) {
38405
+ switch (this.skipNextNewLine = !1, this.insertionMode) {
38406
+ case InsertionMode.INITIAL:
38407
+ doctypeInInitialMode(this, e);
38408
+ break;
38409
+ case InsertionMode.BEFORE_HEAD:
38410
+ case InsertionMode.IN_HEAD:
38411
+ case InsertionMode.IN_HEAD_NO_SCRIPT:
38412
+ case InsertionMode.AFTER_HEAD:
38413
+ this._err(e, ERR.misplacedDoctype);
38414
+ break;
38415
+ case InsertionMode.IN_TABLE_TEXT:
38416
+ tokenInTableText(this, e);
38417
+ break;
38418
+ default:
38419
+ }
38420
+ }
38421
+ onStartTag(e) {
38422
+ this.skipNextNewLine = !1, this.currentToken = e, this._processStartTag(e), e.selfClosing && !e.ackSelfClosing && this._err(e, ERR.nonVoidHtmlElementStartTagWithTrailingSolidus);
38423
+ }
38424
+ _processStartTag(e) {
38425
+ this.shouldProcessStartTagTokenInForeignContent(e) ? startTagInForeignContent(this, e) : this._startTagOutsideForeignContent(e);
38426
+ }
38427
+ _startTagOutsideForeignContent(e) {
38428
+ switch (this.insertionMode) {
38429
+ case InsertionMode.INITIAL:
38430
+ tokenInInitialMode(this, e);
38431
+ break;
38432
+ case InsertionMode.BEFORE_HTML:
38433
+ startTagBeforeHtml(this, e);
38434
+ break;
38435
+ case InsertionMode.BEFORE_HEAD:
38436
+ startTagBeforeHead(this, e);
38437
+ break;
38438
+ case InsertionMode.IN_HEAD:
38439
+ startTagInHead(this, e);
38440
+ break;
38441
+ case InsertionMode.IN_HEAD_NO_SCRIPT:
38442
+ startTagInHeadNoScript(this, e);
38443
+ break;
38444
+ case InsertionMode.AFTER_HEAD:
38445
+ startTagAfterHead(this, e);
38446
+ break;
38447
+ case InsertionMode.IN_BODY:
38448
+ startTagInBody(this, e);
38449
+ break;
38450
+ case InsertionMode.IN_TABLE:
38451
+ startTagInTable(this, e);
38452
+ break;
38453
+ case InsertionMode.IN_TABLE_TEXT:
38454
+ tokenInTableText(this, e);
38455
+ break;
38456
+ case InsertionMode.IN_CAPTION:
38457
+ startTagInCaption(this, e);
38458
+ break;
38459
+ case InsertionMode.IN_COLUMN_GROUP:
38460
+ startTagInColumnGroup(this, e);
38461
+ break;
38462
+ case InsertionMode.IN_TABLE_BODY:
38463
+ startTagInTableBody(this, e);
38464
+ break;
38465
+ case InsertionMode.IN_ROW:
38466
+ startTagInRow(this, e);
38467
+ break;
38468
+ case InsertionMode.IN_CELL:
38469
+ startTagInCell(this, e);
38470
+ break;
38471
+ case InsertionMode.IN_SELECT:
38472
+ startTagInSelect(this, e);
38473
+ break;
38474
+ case InsertionMode.IN_SELECT_IN_TABLE:
38475
+ startTagInSelectInTable(this, e);
38476
+ break;
38477
+ case InsertionMode.IN_TEMPLATE:
38478
+ startTagInTemplate(this, e);
38479
+ break;
38480
+ case InsertionMode.AFTER_BODY:
38481
+ startTagAfterBody(this, e);
38482
+ break;
38483
+ case InsertionMode.IN_FRAMESET:
38484
+ startTagInFrameset(this, e);
38485
+ break;
38486
+ case InsertionMode.AFTER_FRAMESET:
38487
+ startTagAfterFrameset(this, e);
38488
+ break;
38489
+ case InsertionMode.AFTER_AFTER_BODY:
38490
+ startTagAfterAfterBody(this, e);
38491
+ break;
38492
+ case InsertionMode.AFTER_AFTER_FRAMESET:
38493
+ startTagAfterAfterFrameset(this, e);
38494
+ break;
38495
+ default:
38496
+ }
38497
+ }
38498
+ onEndTag(e) {
38499
+ this.skipNextNewLine = !1, this.currentToken = e, this.currentNotInHTML ? endTagInForeignContent(this, e) : this._endTagOutsideForeignContent(e);
38500
+ }
38501
+ _endTagOutsideForeignContent(e) {
38502
+ switch (this.insertionMode) {
38503
+ case InsertionMode.INITIAL:
38504
+ tokenInInitialMode(this, e);
38505
+ break;
38506
+ case InsertionMode.BEFORE_HTML:
38507
+ endTagBeforeHtml(this, e);
38508
+ break;
38509
+ case InsertionMode.BEFORE_HEAD:
38510
+ endTagBeforeHead(this, e);
38511
+ break;
38512
+ case InsertionMode.IN_HEAD:
38513
+ endTagInHead(this, e);
38514
+ break;
38515
+ case InsertionMode.IN_HEAD_NO_SCRIPT:
38516
+ endTagInHeadNoScript(this, e);
38517
+ break;
38518
+ case InsertionMode.AFTER_HEAD:
38519
+ endTagAfterHead(this, e);
38520
+ break;
38521
+ case InsertionMode.IN_BODY:
38522
+ endTagInBody(this, e);
38523
+ break;
38524
+ case InsertionMode.TEXT:
38525
+ endTagInText(this, e);
38526
+ break;
38527
+ case InsertionMode.IN_TABLE:
38528
+ endTagInTable(this, e);
38529
+ break;
38530
+ case InsertionMode.IN_TABLE_TEXT:
38531
+ tokenInTableText(this, e);
38532
+ break;
38533
+ case InsertionMode.IN_CAPTION:
38534
+ endTagInCaption(this, e);
38535
+ break;
38536
+ case InsertionMode.IN_COLUMN_GROUP:
38537
+ endTagInColumnGroup(this, e);
38538
+ break;
38539
+ case InsertionMode.IN_TABLE_BODY:
38540
+ endTagInTableBody(this, e);
38541
+ break;
38542
+ case InsertionMode.IN_ROW:
38543
+ endTagInRow(this, e);
38544
+ break;
38545
+ case InsertionMode.IN_CELL:
38546
+ endTagInCell(this, e);
38547
+ break;
38548
+ case InsertionMode.IN_SELECT:
38549
+ endTagInSelect(this, e);
38550
+ break;
38551
+ case InsertionMode.IN_SELECT_IN_TABLE:
38552
+ endTagInSelectInTable(this, e);
38553
+ break;
38554
+ case InsertionMode.IN_TEMPLATE:
38555
+ endTagInTemplate(this, e);
38556
+ break;
38557
+ case InsertionMode.AFTER_BODY:
38558
+ endTagAfterBody(this, e);
38559
+ break;
38560
+ case InsertionMode.IN_FRAMESET:
38561
+ endTagInFrameset(this, e);
38562
+ break;
38563
+ case InsertionMode.AFTER_FRAMESET:
38564
+ endTagAfterFrameset(this, e);
38565
+ break;
38566
+ case InsertionMode.AFTER_AFTER_BODY:
38567
+ tokenAfterAfterBody(this, e);
38568
+ break;
38569
+ default:
38570
+ }
38571
+ }
38572
+ onEof(e) {
38573
+ switch (this.insertionMode) {
38574
+ case InsertionMode.INITIAL:
38575
+ tokenInInitialMode(this, e);
38576
+ break;
38577
+ case InsertionMode.BEFORE_HTML:
38578
+ tokenBeforeHtml(this, e);
38579
+ break;
38580
+ case InsertionMode.BEFORE_HEAD:
38581
+ tokenBeforeHead(this, e);
38582
+ break;
38583
+ case InsertionMode.IN_HEAD:
38584
+ tokenInHead(this, e);
38585
+ break;
38586
+ case InsertionMode.IN_HEAD_NO_SCRIPT:
38587
+ tokenInHeadNoScript(this, e);
38588
+ break;
38589
+ case InsertionMode.AFTER_HEAD:
38590
+ tokenAfterHead(this, e);
38591
+ break;
38592
+ case InsertionMode.IN_BODY:
38593
+ case InsertionMode.IN_TABLE:
38594
+ case InsertionMode.IN_CAPTION:
38595
+ case InsertionMode.IN_COLUMN_GROUP:
38596
+ case InsertionMode.IN_TABLE_BODY:
38597
+ case InsertionMode.IN_ROW:
38598
+ case InsertionMode.IN_CELL:
38599
+ case InsertionMode.IN_SELECT:
38600
+ case InsertionMode.IN_SELECT_IN_TABLE:
38601
+ eofInBody(this, e);
38602
+ break;
38603
+ case InsertionMode.TEXT:
38604
+ eofInText(this, e);
38605
+ break;
38606
+ case InsertionMode.IN_TABLE_TEXT:
38607
+ tokenInTableText(this, e);
38608
+ break;
38609
+ case InsertionMode.IN_TEMPLATE:
38610
+ eofInTemplate(this, e);
38611
+ break;
38612
+ case InsertionMode.AFTER_BODY:
38613
+ case InsertionMode.IN_FRAMESET:
38614
+ case InsertionMode.AFTER_FRAMESET:
38615
+ case InsertionMode.AFTER_AFTER_BODY:
38616
+ case InsertionMode.AFTER_AFTER_FRAMESET:
38617
+ stopParsing(this, e);
38618
+ break;
38619
+ default:
38620
+ }
38621
+ }
38622
+ onWhitespaceCharacter(e) {
38623
+ if (this.skipNextNewLine && (this.skipNextNewLine = !1, e.chars.charCodeAt(0) === CODE_POINTS.LINE_FEED)) {
38624
+ if (e.chars.length === 1) return;
38625
+ e.chars = e.chars.substr(1);
38626
+ }
38627
+ if (this.tokenizer.inForeignNode) {
38628
+ this._insertCharacters(e);
38629
+ return;
38630
+ }
38631
+ switch (this.insertionMode) {
38632
+ case InsertionMode.IN_HEAD:
38633
+ case InsertionMode.IN_HEAD_NO_SCRIPT:
38634
+ case InsertionMode.AFTER_HEAD:
38635
+ case InsertionMode.TEXT:
38636
+ case InsertionMode.IN_COLUMN_GROUP:
38637
+ case InsertionMode.IN_SELECT:
38638
+ case InsertionMode.IN_SELECT_IN_TABLE:
38639
+ case InsertionMode.IN_FRAMESET:
38640
+ case InsertionMode.AFTER_FRAMESET:
38641
+ this._insertCharacters(e);
38642
+ break;
38643
+ case InsertionMode.IN_BODY:
38644
+ case InsertionMode.IN_CAPTION:
38645
+ case InsertionMode.IN_CELL:
38646
+ case InsertionMode.IN_TEMPLATE:
38647
+ case InsertionMode.AFTER_BODY:
38648
+ case InsertionMode.AFTER_AFTER_BODY:
38649
+ case InsertionMode.AFTER_AFTER_FRAMESET:
38650
+ whitespaceCharacterInBody(this, e);
38651
+ break;
38652
+ case InsertionMode.IN_TABLE:
38653
+ case InsertionMode.IN_TABLE_BODY:
38654
+ case InsertionMode.IN_ROW:
38655
+ characterInTable(this, e);
38656
+ break;
38657
+ case InsertionMode.IN_TABLE_TEXT:
38658
+ whitespaceCharacterInTableText(this, e);
38659
+ break;
38660
+ default:
38661
+ }
38662
+ }
38663
+ }, TABLE_VOID_ELEMENTS = new Set([
38664
+ TAG_ID.CAPTION,
38665
+ TAG_ID.COL,
38666
+ TAG_ID.COLGROUP,
38667
+ TAG_ID.TBODY,
38668
+ TAG_ID.TD,
38669
+ TAG_ID.TFOOT,
38670
+ TAG_ID.TH,
38671
+ TAG_ID.THEAD,
38672
+ TAG_ID.TR
38673
+ ]);
38674
+ })), VOID_ELEMENTS, init_serializer = __esmMin((() => {
38675
+ init_html(), init_default(), new Set([
38676
+ TAG_NAMES.AREA,
38677
+ TAG_NAMES.BASE,
38678
+ TAG_NAMES.BASEFONT,
38679
+ TAG_NAMES.BGSOUND,
38680
+ TAG_NAMES.BR,
38681
+ TAG_NAMES.COL,
38682
+ TAG_NAMES.EMBED,
38683
+ TAG_NAMES.FRAME,
38684
+ TAG_NAMES.HR,
38685
+ TAG_NAMES.IMG,
38686
+ TAG_NAMES.INPUT,
38687
+ TAG_NAMES.KEYGEN,
38688
+ TAG_NAMES.LINK,
38689
+ TAG_NAMES.META,
38690
+ TAG_NAMES.PARAM,
38691
+ TAG_NAMES.SOURCE,
38692
+ TAG_NAMES.TRACK,
38693
+ TAG_NAMES.WBR
38694
+ ]);
38695
+ }));
38696
+ //#endregion
38697
+ //#region node_modules/.pnpm/parse5@8.0.1/node_modules/parse5/dist/index.js
38698
+ function parseFragment(e, t, n) {
38699
+ typeof e == "string" && (n = t, t = e, e = null);
38700
+ let i = Parser.getFragmentParser(e, n);
38701
+ return i.tokenizer.write(t, !0), i.getFragment();
38702
+ }
38703
+ var init_dist = __esmMin((() => {
38704
+ init_parser(), init_default(), init_serializer(), init_error_codes(), init_foreign_content(), init_html(), init_token(), init_tokenizer();
34054
38705
  })), markdown_exports = /* @__PURE__ */ __exportAll({ renderMarkdown: () => renderMarkdown });
34055
38706
  function normaliseForProtocolCheck(e) {
34056
38707
  return e.replace(NUMERIC_REFERENCE, (e, t) => String.fromCodePoint(t[0].toLowerCase() === "x" ? parseInt(t.slice(1), 16) : parseInt(t, 10))).replace(NAMED_WHITESPACE_REFERENCE, " ").replace(STRIPPED_BY_URL_PARSER, "");
@@ -34082,10 +38733,16 @@ function resolveTagAllowList(e) {
34082
38733
  function tagAllowed(e, t) {
34083
38734
  return e === null || e.has(t);
34084
38735
  }
34085
- function createSanitizingRenderer(e, t, n) {
38736
+ function resolveRawHtmlMode(e) {
38737
+ return e === "strip" ? "strip" : "escape";
38738
+ }
38739
+ function rawHtmlText(e) {
38740
+ return "value" in e ? escapeHtml(e.value) : "content" in e ? rawHtmlText(e.content) : "childNodes" in e ? e.childNodes.map(rawHtmlText).join("") : "";
38741
+ }
38742
+ function createSanitizingRenderer(e, t, n, i) {
34086
38743
  return {
34087
38744
  html(e) {
34088
- return escapeHtml(e.text);
38745
+ return i === "strip" ? rawHtmlText(parseFragment(e.text)) : escapeHtml(e.text);
34089
38746
  },
34090
38747
  link(n) {
34091
38748
  return hasSafeProtocol(n.href, e.links) && tagAllowed(t, "a") ? !1 : escapeHtml(n.text);
@@ -34138,18 +38795,19 @@ function wrapTables(e, t) {
34138
38795
  return e.replace(TABLE_OPEN, `${n}<table>`).replace(TABLE_CLOSE, "</table></div>");
34139
38796
  }
34140
38797
  function instanceFor(e) {
34141
- let t = e.breaks === !0, n = resolveProtocolSets(e.sanitize), i = resolveTagAllowList(e.sanitize?.allowedTags), a = e.sanitize?.disableTaskLists === !0, o = [
38798
+ let t = e.breaks === !0, n = resolveProtocolSets(e.sanitize), i = resolveTagAllowList(e.sanitize?.allowedTags), a = e.sanitize?.disableTaskLists === !0, o = resolveRawHtmlMode(e.sanitize?.rawHtml), s = [
34142
38799
  t ? "breaks" : "default",
34143
38800
  [...n.links].sort().join(","),
34144
38801
  [...n.images].sort().join(","),
34145
38802
  i ? [...i].sort().join(",") : "*",
34146
- a ? "no-tasks" : "tasks"
34147
- ].join("|"), s = instances.get(o);
34148
- return s || (s = new q({
38803
+ a ? "no-tasks" : "tasks",
38804
+ o
38805
+ ].join("|"), c = instances.get(s);
38806
+ return c || (c = new q({
34149
38807
  gfm: !0,
34150
38808
  breaks: t,
34151
- renderer: createSanitizingRenderer(n, i, a)
34152
- }), instances.set(o, s)), s;
38809
+ renderer: createSanitizingRenderer(n, i, a, o)
38810
+ }), instances.set(s, c)), c;
34153
38811
  }
34154
38812
  function renderMarkdown(e, t = {}) {
34155
38813
  let n = instanceFor(t), i = t.inline === !0 ? n.parseInline(e) : n.parse(e);
@@ -34158,7 +38816,7 @@ function renderMarkdown(e, t = {}) {
34158
38816
  return t.inline === !0 ? a : wrapTables(a, t.tableLabel);
34159
38817
  }
34160
38818
  var SAFE_LINK_PROTOCOLS, SAFE_IMAGE_PROTOCOLS, NUMERIC_REFERENCE, NAMED_WHITESPACE_REFERENCE, STRIPPED_BY_URL_PARSER, instances, EXTERNAL_ANCHOR_PATTERN, TABLE_OPEN, TABLE_CLOSE, init_markdown = __esmMin((() => {
34161
- init_marked_esm(), SAFE_LINK_PROTOCOLS = new Set([
38819
+ init_marked_esm(), init_dist(), SAFE_LINK_PROTOCOLS = new Set([
34162
38820
  "http:",
34163
38821
  "https:",
34164
38822
  "mailto:",