Source code for pkglts.option.doc.badge

from dataclasses import dataclass

from url_normalize import url_normalize


[docs] @dataclass class Badge: name: str url: str url_img: str text: str = "" def __post_init__(self): self.url = url_normalize(self.url) self.url_img = url_normalize(self.url_img)
[docs] def format(self, doc_fmt): """Produce valid img hyperlink. Args: doc_fmt (str): doc format either 'rst' or 'md' Returns: (str) """ if self.text == "": txt = self.name else: txt = self.text if doc_fmt == 'rst': return ("\n" f".. image:: {self.url_img}\n" f" :alt: {txt}\n" f" :target: {self.url}\n" ) if doc_fmt == 'md': return f"[![{txt}]({self.url_img})]({self.url})" raise UserWarning(f"Unknown format '{doc_fmt}'")