tmp.py


Feeds class

None

Feeds source
class Feeds:
    def __init__(self, markata, feeds):
        self._feeds = feeds
        self.m = markata

        for name, feed in feeds.items():
            self.__setattr__(name, feed)

    def _dict_panel(self, config):
        msg = ""
        for key, value in config.items():
            msg = msg + f"[grey46]{key}[/][magenta3]:[/] [grey66]{value}[/]\n"
        return msg

    def __rich__(self):
        from rich.table import Table

        table = Table(title=f"Feeds {len(self._feeds)}")

        table.add_column("Feed", justify="right", style="cyan", no_wrap=True)
        table.add_column("posts", justify="left", style="green")
        table.add_column("config", style="magenta")

        for name, feed in self._feeds.items():
            table.add_row(
                name, str(len(feed)), self._dict_panel(m.config["feeds"][name])
            )

        # table.add_row("Dec 20, 2019", "Star Wars: The Rise of Skywalker", "$952,110,690")
        # table.add_row("May 25, 2018", "Solo: A Star Wars Story", "$393,151,347")
        # table.add_row("Dec 15, 2017", "Star Wars Ep. V111: The Last Jedi", "$1,332,539,889")
        # table.add_row("Dec 16, 2016", "Rogue One: A Star Wars Story", "$1,332,439,889")
        return table

init method

None

init source
def __init__(self, markata, feeds):
        self._feeds = feeds
        self.m = markata

        for name, feed in feeds.items():
            self.__setattr__(name, feed)

_dict_panel method

None

_dict_panel source
def _dict_panel(self, config):
        msg = ""
        for key, value in config.items():
            msg = msg + f"[grey46]{key}[/][magenta3]:[/] [grey66]{value}[/]\n"
        return msg

rich method

None

rich source
def __rich__(self):
        from rich.table import Table

        table = Table(title=f"Feeds {len(self._feeds)}")

        table.add_column("Feed", justify="right", style="cyan", no_wrap=True)
        table.add_column("posts", justify="left", style="green")
        table.add_column("config", style="magenta")

        for name, feed in self._feeds.items():
            table.add_row(
                name, str(len(feed)), self._dict_panel(m.config["feeds"][name])
            )

        # table.add_row("Dec 20, 2019", "Star Wars: The Rise of Skywalker", "$952,110,690")
        # table.add_row("May 25, 2018", "Solo: A Star Wars Story", "$393,151,347")
        # table.add_row("Dec 15, 2017", "Star Wars Ep. V111: The Last Jedi", "$1,332,539,889")
        # table.add_row("Dec 16, 2016", "Rogue One: A Star Wars Story", "$1,332,439,889")
        return table