%s".formatted(inlineRenderer.render(content)); + public String render(InlineRenderer inlineRenderer, int documentOffset) { + return "
%s".formatted(inlineRenderer.render(content, documentOffset)); } @Override diff --git a/cms-content/src/main/java/com/condation/cms/content/markdown/rules/block/CodeBlockRule.java b/cms-content/src/main/java/com/condation/cms/content/markdown/rules/block/CodeBlockRule.java index 3725dbe9..d09cf24a 100644 --- a/cms-content/src/main/java/com/condation/cms/content/markdown/rules/block/CodeBlockRule.java +++ b/cms-content/src/main/java/com/condation/cms/content/markdown/rules/block/CodeBlockRule.java @@ -25,6 +25,7 @@ import com.condation.cms.content.markdown.Block; import com.condation.cms.content.markdown.BlockElementRule; import com.condation.cms.content.markdown.InlineRenderer; +import com.condation.cms.content.markdown.utils.StringUtils; import com.google.common.html.HtmlEscapers; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -52,15 +53,15 @@ public Block next(final String md) { public static record CodeBlock (int start, int end, String content, String language) implements Block { @Override - public String render(InlineRenderer inlineRenderer) { + public String render(InlineRenderer inlineRenderer, int documentOffset) { if (language == null || "".equals(language)) { return "
%s".formatted(escape(content));
}
return "%s".formatted(language, escape(content));
}
- private String escape (String html) {
- return HtmlEscapers.htmlEscaper().escape(html);
+ private String escape(String html) {
+ return StringUtils.escapeToEntities(HtmlEscapers.htmlEscaper().escape(html));
}
}
diff --git a/cms-content/src/main/java/com/condation/cms/content/markdown/rules/block/DefinitionListBlockRule.java b/cms-content/src/main/java/com/condation/cms/content/markdown/rules/block/DefinitionListBlockRule.java
index 7f5c414f..3872e847 100644
--- a/cms-content/src/main/java/com/condation/cms/content/markdown/rules/block/DefinitionListBlockRule.java
+++ b/cms-content/src/main/java/com/condation/cms/content/markdown/rules/block/DefinitionListBlockRule.java
@@ -92,15 +92,15 @@ static record DefinitionList(String title, List%s
".formatted(inlineRenderer.render(content)); + public String render(InlineRenderer inlineRenderer, int documentOffset) { + return "%s
".formatted(inlineRenderer.render(content, documentOffset)); } } diff --git a/cms-content/src/main/java/com/condation/cms/content/markdown/rules/block/TableBlockRule.java b/cms-content/src/main/java/com/condation/cms/content/markdown/rules/block/TableBlockRule.java index eada9201..142036ea 100644 --- a/cms-content/src/main/java/com/condation/cms/content/markdown/rules/block/TableBlockRule.java +++ b/cms-content/src/main/java/com/condation/cms/content/markdown/rules/block/TableBlockRule.java @@ -182,7 +182,7 @@ private String renderStyle (int index) { } @Override - public String render(InlineRenderer inlineRenderer) { + public String render(InlineRenderer inlineRenderer, int documentOffset) { StringBuilder sb = new StringBuilder(); sb.append("| "); - sb.append(inlineRenderer.render(header)); + sb.append(inlineRenderer.render(header, documentOffset)); sb.append(" | "); }); @@ -206,7 +206,7 @@ public String render(InlineRenderer inlineRenderer) { sb.append("
|---|
| "); - sb.append(inlineRenderer.render(items)); + sb.append(inlineRenderer.render(items, documentOffset)); sb.append(" | "); }); sb.append("