mirror of
https://github.com/BoostIo/Boostnote
synced 2025-12-12 17:26:17 +00:00
mermaid diagram rendering for dark themes is now fixed
This commit is contained in:
@@ -556,7 +556,7 @@ export default class MarkdownPreview extends React.Component {
|
||||
_.forEach(
|
||||
this.refs.root.contentWindow.document.querySelectorAll('.mermaid'),
|
||||
(el) => {
|
||||
mermaidRender(el, htmlTextHelper.decodeEntities(el.innerHTML))
|
||||
mermaidRender(el, htmlTextHelper.decodeEntities(el.innerHTML), theme)
|
||||
}
|
||||
)
|
||||
}
|
||||
|
||||
@@ -1,5 +1,11 @@
|
||||
import mermaidAPI from 'mermaid'
|
||||
|
||||
// fixes bad styling in the mermaid dark theme
|
||||
const darkThemeStyling = `
|
||||
.loopText tspan {
|
||||
fill: white;
|
||||
}`
|
||||
|
||||
function getRandomInt (min, max) {
|
||||
return Math.floor(Math.random() * (max - min)) + min
|
||||
}
|
||||
@@ -13,8 +19,13 @@ function getId () {
|
||||
return id
|
||||
}
|
||||
|
||||
function render (element, content) {
|
||||
function render (element, content, theme) {
|
||||
try {
|
||||
let isDarkTheme = theme === "dark" || theme === "solarized-dark" || theme === "monokai"
|
||||
mermaidAPI.initialize({
|
||||
theme: isDarkTheme ? "dark" : "default",
|
||||
themeCSS: isDarkTheme ? darkThemeStyling : ""
|
||||
})
|
||||
mermaidAPI.render(getId(), content, (svgGraph) => {
|
||||
element.innerHTML = svgGraph
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user