Reorganises context interfaces & further splits them into "data" interfaces which only expose data and "functionality" interfaces, which only expose methods. This allows us to be more specific about where and where not code is allowed to interact with contexts and where it should only read data.
This also unblocks #52 and allows for more new features in the future.
Updates converters & checks to only allow reading from contexts and not responding to them.
Type of change
[x] New feature (non-breaking change which adds functionality)
[x] Breaking change (fix or feature that would cause existing functionality to not work as expected)
Checklist:
[x] Ran dart analyze .
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[ ] I have added tests that prove my fix is effective or that my feature works
Description
Reorganises context interfaces & further splits them into "data" interfaces which only expose data and "functionality" interfaces, which only expose methods. This allows us to be more specific about where and where not code is allowed to interact with contexts and where it should only read data.
This also unblocks #52 and allows for more new features in the future.
Updates converters & checks to only allow reading from contexts and not responding to them.
Type of change
Checklist:
dart analyze .