Scribe-iOS
Scribe-iOS copied to clipboard
[Refactor] Refactor Language keyboards objects to follow SOLID principles
Terms
- [X] I have searched open and closed feature requests
- [X] I agree to follow Scribe-iOS' Code of Conduct
Description
The LanguageKeyboards group contains sub-groups for each supported languages by Scribe.
Those sub-groups contains files that exposes app level functions and enums that are all similar but are not following any strict protocol.
The end goals here would be the following:
- Extract all the keyboards related constants into a dedicated package / framework within a common workspace file
- Expose dedicated protocols for language keyboards that exposes the required functions and constants
- Refactor all language keyboards to adhere to the newly created protocols
- Refactor the
Info.plistto move the constants into a single localised file and create customBuild Settingsto exposes the constants to a singleInfo.plistfile (or find another solution) - Extract all the common keys between keyboard to constants to avoid manually hardcoded strings
- Add unit tests to ensure each language keyboard is working has expected
Contribution
No response