toddrob99 / searcharr

Sonarr & Radarr & Readarr Telegram Bot
MIT License
244 stars 62 forks source link

Extensible commands and abstraction of utility functions #90

Closed jordanella closed 5 months ago

jordanella commented 5 months ago

Abstracted commands outside of the Searcharr class into their own unique modules and implemented dynamic loading and registration of command modules through a command class to allow for easier future extensibility.

Moved _load_language, _xlate, and _strip_entities functions to a util module. The logger was also moved to util. Language and log were relocated to eliminate any requirement of dependency injection of the Searcharr class for use of translation or logging functions in commands and other modules.

The KeyboardInlineButton definitions were moved to a new buttons module to improve readability of _prepare_reponse and _prepare_user_response functions.