kirillzyusko / react-native-keyboard-controller

Keyboard manager which works in identical way on both iOS and Android
https://kirillzyusko.github.io/react-native-keyboard-controller/
MIT License
1.38k stars 55 forks source link

refactor: reorganize ios extensions #493

Closed kirillzyusko closed 2 days ago

kirillzyusko commented 3 days ago

📜 Description

Moved extensions to its own files.

💡 Motivation and Context

To follow S in SOLID we need to have a defined scope of file. Extensions file has too generic purpose and it can be modified for many reasons. To have more focused scope I decided to split extensions by classes to which they belong. Something similar I did 1.5 year ago for Android in https://github.com/kirillzyusko/react-native-keyboard-controller/pull/106 and I liked the new File System structure (it simplified many things a lot).

So in this PR I added new files for each class that Extensions.swift had before.

Also KeyboardControllerNative re-linked extensions files (since generic Extensions.swift doesn't exist anymore).

📢 Changelog

iOS

🤔 How Has This Been Tested?

Tested on CI.

📝 Checklist

github-actions[bot] commented 3 days ago

📊 Package size report

Current size Target Size Difference
145090 bytes 144894 bytes 196 bytes 📈