Skip to content

Commit d2acd5f

Browse files
committed
Change class/method names
1 parent 3cb32df commit d2acd5f

File tree

2 files changed

+20
-19
lines changed

2 files changed

+20
-19
lines changed
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
"""Markdown Mermaid Data URI extension."""
22

3-
from .extension import MermaidDataURIExtension, makeExtension
3+
from .extension import MermaidExtension, makeExtension
44

5-
__all__ = ['MermaidDataURIExtension', 'makeExtension']
5+
__all__ = ['MermaidExtension', 'makeExtension']

src/markdown_mermaid_data_uri/extension.py

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,16 @@
1212
from markdown.preprocessors import Preprocessor
1313

1414

15-
class MermaidDataURIPreprocessor(Preprocessor):
16-
"""Preprocessor to convert mermaid code blocks to SVG/PNG images."""
15+
class MermaidProcessor(Preprocessor):
16+
"""Preprocessor to convert mermaid code blocks to SVG/PNG image Data URIs."""
1717

1818
KROKI_URL = 'https://kroki.io'
1919

20+
MIME_TYPES = {
21+
'svg': 'image/svg+xml',
22+
'png': 'image/png',
23+
}
24+
2025
def __init__(self, md, config):
2126
super().__init__(md)
2227
self.kroki_url = config.get('kroki_url', self.KROKI_URL)
@@ -52,13 +57,10 @@ def run(self, lines: List[str]) -> List[str]:
5257
else:
5358
image_type = 'svg'
5459

55-
base64image = self._mermaid2base64image(mermaid_code, image_type)
60+
base64image = self._get_base64image(mermaid_code, image_type)
5661
if base64image:
5762
# Build the <img> tag with extracted options
58-
if image_type == 'svg':
59-
img_tag = f'<img src="data:image/svg+xml;base64,{base64image}"'
60-
else:
61-
img_tag = f'<img src="data:image/png;base64,{base64image}"'
63+
img_tag = f'<img src="data:{self.MIME_TYPES[image_type]};base64,{base64image}"'
6264
for key, value in option_dict.items():
6365
img_tag += f' {key}={value}'
6466
img_tag += ' />'
@@ -76,15 +78,14 @@ def run(self, lines: List[str]) -> List[str]:
7678

7779
return new_lines
7880

79-
def _mermaid2base64image(self, mermaid_code: str, image_type: str) -> str:
81+
def _get_base64image(self, mermaid_code: str, image_type: str) -> str:
8082
"""Convert mermaid code to SVG/PNG."""
81-
# Use Kroki or mmdc (Mermaid CLI) to convert mermaid code to image
8283
if not self.mermaid_cli:
83-
return self._mermaid2base64image_kroki(mermaid_code, image_type)
84+
return self._get_base64image_kroki(mermaid_code, image_type)
8485
else:
85-
return self._mermaid2base64image_mmdc(mermaid_code, image_type)
86+
return self._get_base64image_mmdc(mermaid_code, image_type)
8687

87-
def _mermaid2base64image_kroki(self, mermaid_code: str, image_type: str) -> str:
88+
def _get_base64image_kroki(self, mermaid_code: str, image_type: str) -> str:
8889
"""Convert mermaid code to SVG/PNG using Kroki."""
8990
kroki_url = f'{self.kroki_url}/mermaid/{image_type}'
9091
headers = {'Content-Type': 'text/plain'}
@@ -100,7 +101,7 @@ def _mermaid2base64image_kroki(self, mermaid_code: str, image_type: str) -> str:
100101
return base64image
101102
return ''
102103

103-
def _mermaid2base64image_mmdc(self, mermaid_code: str, image_type: str) -> str:
104+
def _get_base64image_mmdc(self, mermaid_code: str, image_type: str) -> str:
104105
"""Convert mermaid code to SVG/PNG using mmdc (Mermaid CLI)."""
105106
with tempfile.NamedTemporaryFile(mode='w', suffix='.mmd', delete=False) as tmp_mmd:
106107
tmp_mmd.write(mermaid_code)
@@ -147,7 +148,7 @@ def _mermaid2base64image_mmdc(self, mermaid_code: str, image_type: str) -> str:
147148
return base64image
148149

149150

150-
class MermaidDataURIExtension(Extension):
151+
class MermaidExtension(Extension):
151152
"""Markdown Extension to support Mermaid diagrams."""
152153

153154
def __init__(self, **kwargs):
@@ -161,11 +162,11 @@ def __init__(self, **kwargs):
161162
def extendMarkdown(self, md):
162163
config = self.getConfigs()
163164
final_config = {**config, **self.extension_configs}
164-
mermaid_preprocessor = MermaidDataURIPreprocessor(md, final_config)
165+
mermaid_preprocessor = MermaidProcessor(md, final_config)
165166
md.preprocessors.register(mermaid_preprocessor, 'markdown_mermaid_data_udi', 50)
166167

167168

168169
# pylint: disable=C0103
169170
def makeExtension(**kwargs):
170-
"""Create an instance of the MermaidDataURIExtension."""
171-
return MermaidDataURIExtension(**kwargs)
171+
"""Create an instance of the MermaidExtension."""
172+
return MermaidExtension(**kwargs)

0 commit comments

Comments
 (0)