diff --git a/my/pinboard.py b/my/pinboard.py new file mode 100644 index 0000000..6f6e737 --- /dev/null +++ b/my/pinboard.py @@ -0,0 +1,22 @@ +from functools import lru_cache +from pathlib import Path + +from . import paths + +@lru_cache() +def pinbexport(): + from .common import import_file + return import_file(Path(paths.pinbexport.repo) / 'model.py') + +# TODO would be nice to make interfaces available for mypy... +Bookmark = pinbexport().Bookmark + +def get_model(): + export_dir = Path(paths.pinbexport.export_dir) + sources = list(sorted(export_dir.glob('*.json'))) + model = pinbexport().Model(sources) + return model + + +def get_bookmarks(): + return get_model().bookmarks()