Merge pull request #1564 from voidking/main

bugfix: #1547 Make sure the SVG element exists before calling serializeToString
This commit is contained in:
Alexander Wu 2024-11-01 13:59:23 +08:00 committed by GitHub
commit 3e626f48de
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -81,10 +81,13 @@ async def mermaid_to_file(mermaid_code, output_file_without_suffix, width=2048,
if "svg" in suffixes:
svg_xml = await page.evaluate(
"""() => {
const svg = document.querySelector('svg');
const xmlSerializer = new XMLSerializer();
return xmlSerializer.serializeToString(svg);
}"""
const svg = document.querySelector('svg');
if (!svg) {
throw new Error('SVG element not found');
}
const xmlSerializer = new XMLSerializer();
return xmlSerializer.serializeToString(svg);
}"""
)
logger.info(f"Generating {output_file_without_suffix}.svg..")
with open(f"{output_file_without_suffix}.svg", "wb") as f: