stream-markdown-parser 0.0.85 → 0.0.86

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/index.d.ts CHANGED
@@ -419,6 +419,7 @@ declare function convertHtmlPropValue(value: string, key: string): any;
419
419
  declare function convertHtmlAttrsToProps(attrs: Record<string, string>): Record<string, any>;
420
420
  declare function tokenizeHtml(html: string): HtmlToken[];
421
421
  declare function hasCustomHtmlComponents(content: string, customComponents: Record<string, unknown>): boolean;
422
+ declare function sanitizeHtmlContent(content: string): string;
422
423
  //#endregion
423
424
  //#region src/htmlTags.d.ts
424
425
  declare const VOID_HTML_TAG_NAMES: readonly ["area", "base", "br", "col", "embed", "hr", "img", "input", "link", "meta", "param", "source", "track", "wbr"];
@@ -471,5 +472,5 @@ interface GetMarkdownOptions extends FactoryOptions {
471
472
  }
472
473
  declare function getMarkdown(msgId?: string, options?: GetMarkdownOptions): MarkdownIt;
473
474
  //#endregion
474
- export { AdmonitionNode, BLOCKED_HTML_TAGS, BLOCKED_HTML_TAG_NAMES, BLOCK_HTML_TAG_NAMES, BaseNode, BlockquoteNode, CheckboxInputNode, CheckboxNode, CodeBlockNode, CustomComponentAttrs, CustomComponentNode, CustomComponents, DANGEROUS_HTML_ATTRS, DANGEROUS_HTML_ATTR_NAMES, DefinitionItemNode, DefinitionListNode, ESCAPED_TEX_BRACE_COMMANDS, EXTENDED_STANDARD_HTML_TAGS, EXTENDED_STANDARD_HTML_TAG_NAMES, EmojiNode, EmphasisNode, FootnoteAnchorNode, FootnoteNode, FootnoteReferenceNode, GetMarkdownOptions, HardBreakNode, HeadingNode, HighlightNode, HtmlBlockNode, HtmlInlineNode, HtmlToken, INLINE_HTML_TAG_NAMES, ImageNode, InlineCodeNode, InlineNode, InsertNode, KATEX_COMMANDS, LinkNode, ListItemNode, ListNode, type MarkdownIt, MarkdownRender, MarkdownToken, MarkdownTokenLite, MathBlockNode, MathInlineNode, type MathOptions, MermaidBlockNode, NON_STRUCTURING_HTML_TAGS, NON_STRUCTURING_HTML_TAG_NAMES, ParagraphNode, ParseOptions, ParsedNode, PostTransformNodesHook, ReferenceNode, STANDARD_BLOCK_HTML_TAGS, STANDARD_HTML_TAGS, SVG_HTML_TAG_NAMES, StrikethroughNode, StrongNode, SubscriptNode, SuperscriptNode, TEX_BRACE_COMMANDS, TableCellNode, TableNode, TableRowNode, TextNode, ThematicBreakNode, TransformTokensHook, URL_HTML_ATTRS, URL_HTML_ATTR_NAMES, UnknownNode, VOID_HTML_TAGS, VOID_HTML_TAG_NAMES, VmrContainerNode, applyContainers, applyMath, clearRegisteredMarkdownPlugins, convertHtmlAttrsToProps, convertHtmlPropValue, findMatchingClose, getHtmlTagFromContent, getMarkdown, hasCompleteHtmlTagContent, hasCustomHtmlComponents, isCustomHtmlComponentTag, isHtmlLikeTagName, isMathLike, isUnsafeHtmlUrl, mergeCustomHtmlTags, normalizeCustomHtmlTagName, normalizeCustomHtmlTags, normalizeStandaloneBackslashT, parseFenceToken, parseInlineTokens, parseMarkdownToStructure, processTokens, registerMarkdownPlugin, resolveCustomHtmlTags, sanitizeHtmlAttrs, sanitizeHtmlTokenAttrs, setDefaultMathOptions, shouldRenderUnknownHtmlTagAsText, stripCustomHtmlWrapper, stripHtmlControlAndWhitespace, tokenAttrsToRecord, tokenizeHtml };
475
+ export { AdmonitionNode, BLOCKED_HTML_TAGS, BLOCKED_HTML_TAG_NAMES, BLOCK_HTML_TAG_NAMES, BaseNode, BlockquoteNode, CheckboxInputNode, CheckboxNode, CodeBlockNode, CustomComponentAttrs, CustomComponentNode, CustomComponents, DANGEROUS_HTML_ATTRS, DANGEROUS_HTML_ATTR_NAMES, DefinitionItemNode, DefinitionListNode, ESCAPED_TEX_BRACE_COMMANDS, EXTENDED_STANDARD_HTML_TAGS, EXTENDED_STANDARD_HTML_TAG_NAMES, EmojiNode, EmphasisNode, FootnoteAnchorNode, FootnoteNode, FootnoteReferenceNode, GetMarkdownOptions, HardBreakNode, HeadingNode, HighlightNode, HtmlBlockNode, HtmlInlineNode, HtmlToken, INLINE_HTML_TAG_NAMES, ImageNode, InlineCodeNode, InlineNode, InsertNode, KATEX_COMMANDS, LinkNode, ListItemNode, ListNode, type MarkdownIt, MarkdownRender, MarkdownToken, MarkdownTokenLite, MathBlockNode, MathInlineNode, type MathOptions, MermaidBlockNode, NON_STRUCTURING_HTML_TAGS, NON_STRUCTURING_HTML_TAG_NAMES, ParagraphNode, ParseOptions, ParsedNode, PostTransformNodesHook, ReferenceNode, STANDARD_BLOCK_HTML_TAGS, STANDARD_HTML_TAGS, SVG_HTML_TAG_NAMES, StrikethroughNode, StrongNode, SubscriptNode, SuperscriptNode, TEX_BRACE_COMMANDS, TableCellNode, TableNode, TableRowNode, TextNode, ThematicBreakNode, TransformTokensHook, URL_HTML_ATTRS, URL_HTML_ATTR_NAMES, UnknownNode, VOID_HTML_TAGS, VOID_HTML_TAG_NAMES, VmrContainerNode, applyContainers, applyMath, clearRegisteredMarkdownPlugins, convertHtmlAttrsToProps, convertHtmlPropValue, findMatchingClose, getHtmlTagFromContent, getMarkdown, hasCompleteHtmlTagContent, hasCustomHtmlComponents, isCustomHtmlComponentTag, isHtmlLikeTagName, isMathLike, isUnsafeHtmlUrl, mergeCustomHtmlTags, normalizeCustomHtmlTagName, normalizeCustomHtmlTags, normalizeStandaloneBackslashT, parseFenceToken, parseInlineTokens, parseMarkdownToStructure, processTokens, registerMarkdownPlugin, resolveCustomHtmlTags, sanitizeHtmlAttrs, sanitizeHtmlContent, sanitizeHtmlTokenAttrs, setDefaultMathOptions, shouldRenderUnknownHtmlTagAsText, stripCustomHtmlWrapper, stripHtmlControlAndWhitespace, tokenAttrsToRecord, tokenizeHtml };
475
476
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../src/factory.ts","../src/types.ts","../src/parser/inline-parsers/index.ts","../src/parser/index.ts","../src/config.ts","../src/customHtmlTags.ts","../src/findMatchingClose.ts","../src/htmlRenderUtils.ts","../src/htmlTags.ts","../src/parser/inline-parsers/fence-parser.ts","../src/plugins/containers.ts","../src/plugins/isMathLike.ts","../src/plugins/math.ts","../src/index.ts"],"sourcesContent":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../src/factory.ts","../src/types.ts","../src/parser/inline-parsers/index.ts","../src/parser/index.ts","../src/config.ts","../src/customHtmlTags.ts","../src/findMatchingClose.ts","../src/htmlRenderUtils.ts","../src/htmlTags.ts","../src/parser/inline-parsers/fence-parser.ts","../src/plugins/containers.ts","../src/plugins/isMathLike.ts","../src/plugins/math.ts","../src/index.ts"],"sourcesContent":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -6308,7 +6308,7 @@ function replaceUnsafeChar(ch) {
6308
6308
  /**
6309
6309
  * Escape HTML characters to prevent XSS
6310
6310
  */
6311
- function escapeHtml(str) {
6311
+ function escapeHtml$2(str) {
6312
6312
  if (str.length === 0) return "";
6313
6313
  if (str.length < 32) {
6314
6314
  if (HTML_ESCAPE_TEST_RE.test(str)) return str.replace(HTML_ESCAPE_REPLACE_RE, replaceUnsafeChar);
@@ -6362,16 +6362,16 @@ function renderAttrName(name) {
6362
6362
  case "style":
6363
6363
  case "target":
6364
6364
  case "title": return name;
6365
- default: return escapeHtml(name);
6365
+ default: return escapeHtml$2(name);
6366
6366
  }
6367
6367
  }
6368
6368
  function renderAttrsFromList(attrs) {
6369
6369
  if (!attrs || attrs.length === 0) return "";
6370
6370
  const firstAttr = attrs[0];
6371
- let result = ` ${renderAttrName(firstAttr[0])}="${escapeHtml(firstAttr[1])}"`;
6371
+ let result = ` ${renderAttrName(firstAttr[0])}="${escapeHtml$2(firstAttr[1])}"`;
6372
6372
  for (let i = 1; i < attrs.length; i++) {
6373
6373
  const attr = attrs[i];
6374
- result += ` ${renderAttrName(attr[0])}="${escapeHtml(attr[1])}"`;
6374
+ result += ` ${renderAttrName(attr[0])}="${escapeHtml$2(attr[1])}"`;
6375
6375
  }
6376
6376
  return result;
6377
6377
  }
@@ -6404,7 +6404,7 @@ function parseFenceInfo(info) {
6404
6404
  function renderFence(token, highlighted, info, langName, options) {
6405
6405
  if (highlighted.indexOf("<pre") === 0) return `${highlighted}\n`;
6406
6406
  if (info) {
6407
- if (!token.attrs || token.attrs.length === 0) return `<pre><code class="${escapeHtml(`${options.langPrefix ?? "language-"}${langName}`)}">${highlighted}</code></pre>\n`;
6407
+ if (!token.attrs || token.attrs.length === 0) return `<pre><code class="${escapeHtml$2(`${options.langPrefix ?? "language-"}${langName}`)}">${highlighted}</code></pre>\n`;
6408
6408
  const classIndex = token.attrIndex("class");
6409
6409
  const tmpAttrs = token.attrs ? token.attrs.slice() : [];
6410
6410
  const langClass = `${options.langPrefix ?? "language-"}${langName}`;
@@ -6418,11 +6418,11 @@ function renderFence(token, highlighted, info, langName, options) {
6418
6418
  return `<pre><code${renderAttrsFromList(token.attrs)}>${highlighted}</code></pre>\n`;
6419
6419
  }
6420
6420
  function renderCodeInlineToken(token) {
6421
- if (!token.attrs || token.attrs.length === 0) return `<code>${escapeHtml(token.content)}</code>`;
6422
- return `<code${renderAttrsFromList(token.attrs)}>${escapeHtml(token.content)}</code>`;
6421
+ if (!token.attrs || token.attrs.length === 0) return `<code>${escapeHtml$2(token.content)}</code>`;
6422
+ return `<code${renderAttrsFromList(token.attrs)}>${escapeHtml$2(token.content)}</code>`;
6423
6423
  }
6424
6424
  function renderCodeBlockToken(token) {
6425
- const content = escapeHtml(token.content);
6425
+ const content = escapeHtml$2(token.content);
6426
6426
  if (!token.attrs) return `<pre><code>${content}</code></pre>\n`;
6427
6427
  return `<pre${renderAttrsFromList(token.attrs)}><code>${content}</code></pre>\n`;
6428
6428
  }
@@ -6436,16 +6436,16 @@ function renderFastBlockOpenWithInline(token, prefix) {
6436
6436
  default: return null;
6437
6437
  }
6438
6438
  if (attrs.length === 1 && attrs[0][0] === "style") {
6439
- if (token.type === "td_open") return `${prefix}<td style="${escapeHtml(attrs[0][1])}">`;
6440
- if (token.type === "th_open") return `${prefix}<th style="${escapeHtml(attrs[0][1])}">`;
6439
+ if (token.type === "td_open") return `${prefix}<td style="${escapeHtml$2(attrs[0][1])}">`;
6440
+ if (token.type === "th_open") return `${prefix}<th style="${escapeHtml$2(attrs[0][1])}">`;
6441
6441
  }
6442
6442
  return null;
6443
6443
  }
6444
6444
  function renderLinkOpenToken(token) {
6445
6445
  const attrs = token.attrs;
6446
6446
  if (!attrs || attrs.length === 0) return "<a>";
6447
- if (attrs.length === 1) return `<a ${renderAttrName(attrs[0][0])}="${escapeHtml(attrs[0][1])}">`;
6448
- if (attrs.length === 2) return `<a ${renderAttrName(attrs[0][0])}="${escapeHtml(attrs[0][1])}" ${renderAttrName(attrs[1][0])}="${escapeHtml(attrs[1][1])}">`;
6447
+ if (attrs.length === 1) return `<a ${renderAttrName(attrs[0][0])}="${escapeHtml$2(attrs[0][1])}">`;
6448
+ if (attrs.length === 2) return `<a ${renderAttrName(attrs[0][0])}="${escapeHtml$2(attrs[0][1])}" ${renderAttrName(attrs[1][0])}="${escapeHtml$2(attrs[1][1])}">`;
6449
6449
  return `<a${renderAttrsFromList(attrs)}>`;
6450
6450
  }
6451
6451
  function canUseLinkInlineFastPath(token) {
@@ -6502,7 +6502,7 @@ const defaultRules = {
6502
6502
  const info = token.info ? unescapeAll(token.info).trim() : "";
6503
6503
  const { langName, langAttrs } = parseFenceInfo(info);
6504
6504
  const highlight = options.highlight;
6505
- const fallback = escapeHtml(token.content);
6505
+ const fallback = escapeHtml$2(token.content);
6506
6506
  if (!highlight) return renderFence(token, fallback, info, langName, options);
6507
6507
  const highlighted = highlight(token.content, langName, langAttrs);
6508
6508
  if (isPromiseLike(highlighted)) return highlighted.then((res) => renderFence(token, res || fallback, info, langName, options));
@@ -6524,10 +6524,10 @@ const defaultRules = {
6524
6524
  return options.breaks ? options.xhtmlOut ? "<br />\n" : "<br>\n" : "\n";
6525
6525
  },
6526
6526
  text(tokens, idx) {
6527
- return escapeHtml(tokens[idx].content);
6527
+ return escapeHtml$2(tokens[idx].content);
6528
6528
  },
6529
6529
  text_special(tokens, idx) {
6530
- return escapeHtml(tokens[idx].content);
6530
+ return escapeHtml$2(tokens[idx].content);
6531
6531
  },
6532
6532
  html_block(tokens, idx) {
6533
6533
  return tokens[idx].content;
@@ -6540,7 +6540,7 @@ function renderFenceSyncToken(token, options, _self) {
6540
6540
  const info = token.info ? unescapeAll(token.info).trim() : "";
6541
6541
  const { langName, langAttrs } = parseFenceInfo(info);
6542
6542
  const highlight = options.highlight;
6543
- const fallback = escapeHtml(token.content);
6543
+ const fallback = escapeHtml$2(token.content);
6544
6544
  if (!highlight) return renderFence(token, fallback, info, langName, options);
6545
6545
  const highlighted = highlight(token.content, langName, langAttrs);
6546
6546
  if (isPromiseLike(highlighted)) throw new TypeError("Renderer rule \"fence\" returned a Promise. Use renderAsync() instead.");
@@ -6550,10 +6550,10 @@ function renderSingleInlineTokenSync(tokens, options, env, self, rules, inlineBr
6550
6550
  const token = tokens[0];
6551
6551
  switch (token.type) {
6552
6552
  case "text":
6553
- if (rules.text === defaultRules.text) return token.content.length === 0 ? "" : escapeHtml(token.content);
6553
+ if (rules.text === defaultRules.text) return token.content.length === 0 ? "" : escapeHtml$2(token.content);
6554
6554
  break;
6555
6555
  case "text_special":
6556
- if (rules.text_special === defaultRules.text_special) return token.content.length === 0 ? "" : escapeHtml(token.content);
6556
+ if (rules.text_special === defaultRules.text_special) return token.content.length === 0 ? "" : escapeHtml$2(token.content);
6557
6557
  break;
6558
6558
  case "softbreak":
6559
6559
  if (rules.softbreak === defaultRules.softbreak) return softbreak;
@@ -6653,13 +6653,13 @@ var Renderer = class {
6653
6653
  switch (child.type) {
6654
6654
  case "text":
6655
6655
  if (textRule === defaultRules.text) {
6656
- result += escapeHtml(child.content);
6656
+ result += escapeHtml$2(child.content);
6657
6657
  continue;
6658
6658
  }
6659
6659
  break;
6660
6660
  case "text_special":
6661
6661
  if (textSpecialRule === defaultRules.text_special) {
6662
- result += escapeHtml(child.content);
6662
+ result += escapeHtml$2(child.content);
6663
6663
  continue;
6664
6664
  }
6665
6665
  break;
@@ -6780,15 +6780,15 @@ var Renderer = class {
6780
6780
  else if (attrs.length === 1) {
6781
6781
  const attr = attrs[0];
6782
6782
  if (type === "ordered_list_open" && attr[0] === "start") {
6783
- result += `${prefix}<ol start="${escapeHtml(attr[1])}">\n`;
6783
+ result += `${prefix}<ol start="${escapeHtml$2(attr[1])}">\n`;
6784
6784
  continue;
6785
6785
  }
6786
6786
  if (type === "td_open" && attr[0] === "style") {
6787
- result += `${prefix}<td style="${escapeHtml(attr[1])}">`;
6787
+ result += `${prefix}<td style="${escapeHtml$2(attr[1])}">`;
6788
6788
  continue;
6789
6789
  }
6790
6790
  if (type === "th_open" && attr[0] === "style") {
6791
- result += `${prefix}<th style="${escapeHtml(attr[1])}">`;
6791
+ result += `${prefix}<th style="${escapeHtml$2(attr[1])}">`;
6792
6792
  continue;
6793
6793
  }
6794
6794
  }
@@ -6987,7 +6987,7 @@ var Renderer = class {
6987
6987
  switch (token.type) {
6988
6988
  case "text":
6989
6989
  if (textRule === defaultRules.text) {
6990
- const escaped = token.content.length === 0 ? "" : escapeHtml(token.content);
6990
+ const escaped = token.content.length === 0 ? "" : escapeHtml$2(token.content);
6991
6991
  if (htmlInlineRule === defaultRules.html_inline && i + 1 < tokens.length && tokens[i + 1].type === "html_inline") {
6992
6992
  result += escaped + tokens[++i].content;
6993
6993
  while (i + 1 < tokens.length && tokens[i + 1].type === "html_inline") result += tokens[++i].content;
@@ -6999,7 +6999,7 @@ var Renderer = class {
6999
6999
  break;
7000
7000
  case "text_special":
7001
7001
  if (textSpecialRule === defaultRules.text_special) {
7002
- if (token.content.length !== 0) result += escapeHtml(token.content);
7002
+ if (token.content.length !== 0) result += escapeHtml$2(token.content);
7003
7003
  continue;
7004
7004
  }
7005
7005
  break;
@@ -15300,7 +15300,7 @@ function normalizeIndentedSourceForLookup(value) {
15300
15300
  }
15301
15301
  function canFindNodeRawAfterSourceIndex(source, startIndex, nodeRaw) {
15302
15302
  if (!nodeRaw) return false;
15303
- if (source.indexOf(nodeRaw, startIndex) !== -1) return true;
15303
+ if (source.includes(nodeRaw, startIndex)) return true;
15304
15304
  return normalizeIndentedSourceForLookup(source.slice(Math.max(0, startIndex))).includes(normalizeIndentedSourceForLookup(nodeRaw));
15305
15305
  }
15306
15306
  function extendHtmlBlockCloseToLineEnding(source, startIndex) {
@@ -15352,7 +15352,7 @@ const STRUCTURED_HTML_WRAPPER_BLOCK_TYPES = new Set([
15352
15352
  "table",
15353
15353
  "thematic_break"
15354
15354
  ]);
15355
- const STRUCTURED_HTML_WRAPPER_MARKER_RE = /(?:^|\n)(?:\s{0,3}(?:#{1,6}\s+\S|[-+*]\s+\S|\d+[.)]\s+\S|>\s*\S|(?:`{3,}|~{3,})|(?:\*{3,}|-{3,}|_{3,})(?:\s|$)|\|.*\|))/m;
15355
+ const STRUCTURED_HTML_WRAPPER_MARKER_RE = /(?:^|\n)\s{0,3}(?:#{1,6}\s+\S|[-+*]\s+\S|\d+[.)]\s+\S|>\s*\S|`{3,}|~{3,}|(?:\*{3,}|-{3,}|_{3,})(?:\s|$)|\|.*\|)/m;
15356
15356
  function hasStructuredHtmlWrapperMarkers(fragment) {
15357
15357
  return /\n\s*\n/.test(fragment) || STRUCTURED_HTML_WRAPPER_MARKER_RE.test(fragment);
15358
15358
  }
@@ -16501,6 +16501,38 @@ const CUSTOM_TAG_REGEX = /<([a-z][a-z0-9-]*)\b[^>]*>/gi;
16501
16501
  function hasOwn(obj, key) {
16502
16502
  return Object.prototype.hasOwnProperty.call(obj, key);
16503
16503
  }
16504
+ function getString(value) {
16505
+ return typeof value === "string" ? value : value == null ? "" : String(value);
16506
+ }
16507
+ function isSafeAttrName(value) {
16508
+ return /^[^\s"'<>`=]+$/.test(value) && !/^on/i.test(value);
16509
+ }
16510
+ function escapeHtml(value) {
16511
+ return getString(value).replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#39;");
16512
+ }
16513
+ function escapeAttr(value) {
16514
+ return escapeHtml(value).replace(/`/g, "&#96;");
16515
+ }
16516
+ function normalizeTagName(tagName) {
16517
+ return String(tagName ?? "").trim().toLowerCase();
16518
+ }
16519
+ function serializeAttrs(attrs) {
16520
+ const pairs = Object.entries(attrs);
16521
+ if (pairs.length === 0) return "";
16522
+ return pairs.map(([name, value]) => value === "" ? ` ${name}` : ` ${name}="${escapeAttr(value)}"`).join("");
16523
+ }
16524
+ function sanitizeHtmlContentAttrs(attrs) {
16525
+ const clean = {};
16526
+ for (const [key, value] of Object.entries(attrs)) {
16527
+ const safeName = key.trim();
16528
+ const lowerKey = safeName.toLowerCase();
16529
+ if (!safeName || !isSafeAttrName(safeName)) continue;
16530
+ if (DANGEROUS_HTML_ATTRS.has(lowerKey)) continue;
16531
+ if (URL_HTML_ATTRS.has(lowerKey) && value && isUnsafeHtmlUrl(value)) continue;
16532
+ clean[safeName] = value;
16533
+ }
16534
+ return clean;
16535
+ }
16504
16536
  function isCustomHtmlComponentTag(tagName, customComponents) {
16505
16537
  const lowerTag = tagName.toLowerCase();
16506
16538
  if (EXTENDED_STANDARD_HTML_TAGS.has(lowerTag)) return false;
@@ -16654,6 +16686,95 @@ function tokenizeHtml(html) {
16654
16686
  }
16655
16687
  return tokens;
16656
16688
  }
16689
+ function tokenizeHtmlPreservingText(html) {
16690
+ const tokens = [];
16691
+ let pos = 0;
16692
+ while (pos < html.length) {
16693
+ if (html.startsWith("<!--", pos)) {
16694
+ const commentEnd = html.indexOf("-->", pos);
16695
+ if (commentEnd !== -1) {
16696
+ pos = commentEnd + 3;
16697
+ continue;
16698
+ }
16699
+ break;
16700
+ }
16701
+ const tagStart = html.indexOf("<", pos);
16702
+ if (tagStart === -1) {
16703
+ if (pos < html.length) tokens.push({
16704
+ type: "text",
16705
+ content: html.slice(pos)
16706
+ });
16707
+ break;
16708
+ }
16709
+ if (tagStart > pos) tokens.push({
16710
+ type: "text",
16711
+ content: html.slice(pos, tagStart)
16712
+ });
16713
+ if (html.startsWith("![CDATA[", tagStart + 1)) {
16714
+ const cdataEnd = html.indexOf("]]>", tagStart);
16715
+ if (cdataEnd !== -1) {
16716
+ tokens.push({
16717
+ type: "text",
16718
+ content: html.slice(tagStart, cdataEnd + 3)
16719
+ });
16720
+ pos = cdataEnd + 3;
16721
+ continue;
16722
+ }
16723
+ break;
16724
+ }
16725
+ if (html.startsWith("!", tagStart + 1)) {
16726
+ const specialEnd = html.indexOf(">", tagStart);
16727
+ if (specialEnd !== -1) {
16728
+ pos = specialEnd + 1;
16729
+ continue;
16730
+ }
16731
+ break;
16732
+ }
16733
+ const tagEnd = html.indexOf(">", tagStart);
16734
+ if (tagEnd === -1) break;
16735
+ const tagContent = html.slice(tagStart + 1, tagEnd).trim();
16736
+ if (!tagContent) {
16737
+ pos = tagEnd + 1;
16738
+ continue;
16739
+ }
16740
+ const isClosingTag$1 = tagContent.startsWith("/");
16741
+ const isSelfClosing$1 = tagContent.endsWith("/");
16742
+ if (isClosingTag$1) {
16743
+ const tagName$1 = tagContent.slice(1).trim();
16744
+ tokens.push({
16745
+ type: "tag_close",
16746
+ tagName: tagName$1
16747
+ });
16748
+ pos = tagEnd + 1;
16749
+ continue;
16750
+ }
16751
+ const spaceIndex = tagContent.indexOf(" ");
16752
+ let tagName = "";
16753
+ let attrsStr = "";
16754
+ if (spaceIndex === -1) tagName = isSelfClosing$1 ? tagContent.slice(0, -1).trim() : tagContent.trim();
16755
+ else {
16756
+ tagName = tagContent.slice(0, spaceIndex).trim();
16757
+ attrsStr = tagContent.slice(spaceIndex + 1);
16758
+ }
16759
+ const attrs = {};
16760
+ if (attrsStr) {
16761
+ const attrRegex = /([^\s=]+)(?:=(?:"([^"]*)"|'([^']*)'|(\S*)))?/g;
16762
+ let attrMatch;
16763
+ while ((attrMatch = attrRegex.exec(attrsStr)) !== null) {
16764
+ const name = attrMatch[1];
16765
+ const value = attrMatch[2] ?? attrMatch[3] ?? attrMatch[4] ?? "";
16766
+ if (name && !name.endsWith("/")) attrs[name] = value;
16767
+ }
16768
+ }
16769
+ tokens.push({
16770
+ type: isSelfClosing$1 || VOID_HTML_TAGS.has(tagName.toLowerCase()) ? "self_closing" : "tag_open",
16771
+ tagName,
16772
+ attrs
16773
+ });
16774
+ pos = tagEnd + 1;
16775
+ }
16776
+ return tokens;
16777
+ }
16657
16778
  function hasCustomHtmlComponents(content, customComponents) {
16658
16779
  if (!content || !content.includes("<")) return false;
16659
16780
  if (!customComponents || Object.keys(customComponents).length === 0) return false;
@@ -16662,6 +16783,49 @@ function hasCustomHtmlComponents(content, customComponents) {
16662
16783
  while ((match = CUSTOM_TAG_REGEX.exec(content)) !== null) if (isCustomHtmlComponentTag(match[1], customComponents)) return true;
16663
16784
  return false;
16664
16785
  }
16786
+ function sanitizeHtmlContent(content) {
16787
+ if (!content) return "";
16788
+ const tokens = tokenizeHtmlPreservingText(content);
16789
+ const stack = [];
16790
+ const output = [];
16791
+ let blockedDepth = 0;
16792
+ for (const token of tokens) {
16793
+ if (token.type === "text") {
16794
+ if (blockedDepth === 0) output.push(escapeHtml(token.content ?? ""));
16795
+ continue;
16796
+ }
16797
+ const tagName = normalizeTagName(token.tagName);
16798
+ if (!tagName) continue;
16799
+ if (BLOCKED_HTML_TAGS.has(tagName)) {
16800
+ if (token.type === "tag_open") blockedDepth += 1;
16801
+ else if (token.type === "tag_close" && blockedDepth > 0) blockedDepth -= 1;
16802
+ continue;
16803
+ }
16804
+ if (blockedDepth > 0) continue;
16805
+ if (token.type === "self_closing") {
16806
+ output.push(`<${tagName}${serializeAttrs(sanitizeHtmlContentAttrs(token.attrs ?? {}))}>`);
16807
+ continue;
16808
+ }
16809
+ if (token.type === "tag_open") {
16810
+ output.push(`<${tagName}${serializeAttrs(sanitizeHtmlContentAttrs(token.attrs ?? {}))}>`);
16811
+ if (!VOID_HTML_TAGS.has(tagName)) stack.push(tagName);
16812
+ continue;
16813
+ }
16814
+ const matchedIndex = stack.lastIndexOf(tagName);
16815
+ if (matchedIndex === -1) continue;
16816
+ while (stack.length > matchedIndex + 1) {
16817
+ const danglingTag = stack.pop();
16818
+ if (danglingTag) output.push(`</${danglingTag}>`);
16819
+ }
16820
+ const closingTag = stack.pop();
16821
+ if (closingTag) output.push(`</${closingTag}>`);
16822
+ }
16823
+ while (stack.length > 0) {
16824
+ const danglingTag = stack.pop();
16825
+ if (danglingTag) output.push(`</${danglingTag}>`);
16826
+ }
16827
+ return output.join("");
16828
+ }
16665
16829
 
16666
16830
  //#endregion
16667
16831
  //#region src/index.ts
@@ -16804,5 +16968,5 @@ function getMarkdown(msgId = `editor-${Date.now()}`, options = {}) {
16804
16968
  }
16805
16969
 
16806
16970
  //#endregion
16807
- export { BLOCKED_HTML_TAGS, BLOCKED_HTML_TAG_NAMES, BLOCK_HTML_TAG_NAMES, DANGEROUS_HTML_ATTRS, DANGEROUS_HTML_ATTR_NAMES, ESCAPED_TEX_BRACE_COMMANDS, EXTENDED_STANDARD_HTML_TAGS, EXTENDED_STANDARD_HTML_TAG_NAMES, INLINE_HTML_TAG_NAMES, KATEX_COMMANDS, NON_STRUCTURING_HTML_TAGS, NON_STRUCTURING_HTML_TAG_NAMES, STANDARD_BLOCK_HTML_TAGS, STANDARD_HTML_TAGS, SVG_HTML_TAG_NAMES, TEX_BRACE_COMMANDS, URL_HTML_ATTRS, URL_HTML_ATTR_NAMES, VOID_HTML_TAGS, VOID_HTML_TAG_NAMES, applyContainers, applyMath, clearRegisteredMarkdownPlugins, convertHtmlAttrsToProps, convertHtmlPropValue, findMatchingClose, getHtmlTagFromContent, getMarkdown, hasCompleteHtmlTagContent, hasCustomHtmlComponents, isCustomHtmlComponentTag, isHtmlLikeTagName, isMathLike, isUnsafeHtmlUrl, mergeCustomHtmlTags, normalizeCustomHtmlTagName, normalizeCustomHtmlTags, normalizeStandaloneBackslashT, parseFenceToken, parseInlineTokens, parseMarkdownToStructure, processTokens, registerMarkdownPlugin, resolveCustomHtmlTags, sanitizeHtmlAttrs, sanitizeHtmlTokenAttrs, setDefaultMathOptions, shouldRenderUnknownHtmlTagAsText, stripCustomHtmlWrapper, stripHtmlControlAndWhitespace, tokenAttrsToRecord, tokenizeHtml };
16971
+ export { BLOCKED_HTML_TAGS, BLOCKED_HTML_TAG_NAMES, BLOCK_HTML_TAG_NAMES, DANGEROUS_HTML_ATTRS, DANGEROUS_HTML_ATTR_NAMES, ESCAPED_TEX_BRACE_COMMANDS, EXTENDED_STANDARD_HTML_TAGS, EXTENDED_STANDARD_HTML_TAG_NAMES, INLINE_HTML_TAG_NAMES, KATEX_COMMANDS, NON_STRUCTURING_HTML_TAGS, NON_STRUCTURING_HTML_TAG_NAMES, STANDARD_BLOCK_HTML_TAGS, STANDARD_HTML_TAGS, SVG_HTML_TAG_NAMES, TEX_BRACE_COMMANDS, URL_HTML_ATTRS, URL_HTML_ATTR_NAMES, VOID_HTML_TAGS, VOID_HTML_TAG_NAMES, applyContainers, applyMath, clearRegisteredMarkdownPlugins, convertHtmlAttrsToProps, convertHtmlPropValue, findMatchingClose, getHtmlTagFromContent, getMarkdown, hasCompleteHtmlTagContent, hasCustomHtmlComponents, isCustomHtmlComponentTag, isHtmlLikeTagName, isMathLike, isUnsafeHtmlUrl, mergeCustomHtmlTags, normalizeCustomHtmlTagName, normalizeCustomHtmlTags, normalizeStandaloneBackslashT, parseFenceToken, parseInlineTokens, parseMarkdownToStructure, processTokens, registerMarkdownPlugin, resolveCustomHtmlTags, sanitizeHtmlAttrs, sanitizeHtmlContent, sanitizeHtmlTokenAttrs, setDefaultMathOptions, shouldRenderUnknownHtmlTagAsText, stripCustomHtmlWrapper, stripHtmlControlAndWhitespace, tokenAttrsToRecord, tokenizeHtml };
16808
16972
  //# sourceMappingURL=index.js.map