Source code for piel.visual.json_to_markdown

from piel.types import PathTypes


[docs] def dictionary_to_markdown_str( dictionary: PathTypes, ) -> str: def parse_dictionary(d, level=0): markdown = "" indent = " " * level for key, value in d.items(): if isinstance(value, dict): markdown += f"{indent}- **{key}**:\n" markdown += parse_dictionary(value, level + 1) elif isinstance(value, list): markdown += f"{indent}- **{key}**:\n" markdown += parse_list(value, level + 1) else: markdown += f"{indent}- **{key}**: {value}\n" return markdown def parse_list(lst, level=0): markdown = "" indent = " " * level for item in lst: if isinstance(item, dict): markdown += f"{indent}-\n" markdown += parse_dictionary(item, level + 1) elif isinstance(item, list): markdown += parse_list(item, level + 1) else: markdown += f"{indent}- {item}\n" return markdown markdown_content = parse_dictionary(dictionary) return markdown_content