diff options
Diffstat (limited to 'blog/feed.py')
-rw-r--r-- | blog/feed.py | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/blog/feed.py b/blog/feed.py index a63ee77..3e5b2e0 100644 --- a/blog/feed.py +++ b/blog/feed.py @@ -1,18 +1,25 @@ import os +from typing import List + +from jinja2 import Template import render +from post import Post class Feed(object): - def __init__(self, template, posts): + template: Template + posts: List[Post] + + def __init__(self, template: Template, posts: List[Post]) -> None: self.template = template self.posts = Feed._remove_drafts(posts) @staticmethod - def _remove_drafts(posts): + def _remove_drafts(posts: List[Post]) -> List[Post]: return list(filter(lambda x: x.metadata.status != "draft", posts)) - def generate(self, basedir): + def generate(self, basedir: str) -> None: index = os.path.join(basedir, "index.html") rendered = self.template.render(posts=self.posts) render.write_file_content(index, rendered) |