searcharr icon indicating copy to clipboard operation
searcharr copied to clipboard

Extensible commands and abstraction of utility functions

Open jordanella opened this issue 1 year ago • 1 comments

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. The validation of authentication and enabled settings at the beginning of respective action requests has been made into a list for each module.

Moved _load_language, _xlate, and _strip_entities functions to a util module. The logger was also moved to util. Translation and logging functions were relocated to eliminate any requirement of dependency injection of the Searcharr class for their use in commands or other modules. The xlate_aliases function was created to minimize code reuse of command populated messages.

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

jordanella avatar Jan 18 '24 05:01 jordanella

This is awesome and opens a lot of doors for easier expansion in the future. Great stuff.

kevindelaney avatar Jan 24 '24 18:01 kevindelaney

@jordanella is this all still valid? I remember you mentioned you were working on some additional changes, so I was holding off merging.

toddrob99 avatar Oct 26 '24 20:10 toddrob99

Replaced by #100

toddrob99 avatar Mar 16 '25 18:03 toddrob99