-
Notifications
You must be signed in to change notification settings - Fork 46
Roadmap
Seems to be the dialect of react is actions so... also, instead of returning a function mutator, we are simply returning a new state. I.e., the action itself is the mutator.
This will create a trackable flow of information from store to store as well as the possibility for stores to provide data outside of the heirarchy. I.e., stores can send data down the DOM heirarchy but they can also be independent providers that are generated outside the DOM and inject their state into components with their own contexts.
Each action will have access to both state and the actions tree where once they had only access to the actions. The state will be dymanically updated so that when you call an action then (await) then refer to state, the state will have the values from that action in it.
Currently Freactal puts state and effects into props automatically as two named effects. You will have the opportunity to create a reducer function that does this activity, blending and sub-setting state and actions much like the Redux reducer. It will be optional, but for any that have concerns that Freactal may not blend into scenarios where property names are important they will have an opportunity to take the Freactal => props injection into their own hands.
So many times you will be pulling state from REST etc., it makes sense for initialization to be asynchronous too. If the initialization is a function it will be called asynchronously. However for server side etc., you can inject an object directly allowing for immediate execution.
xStream is RxJS in 30k. It is a useful concept for state updates, and blending parent and child states becomes a basic stream sync issue.
Internally it is a much more efficient way to update the DOM tree with state values. Keep in mind, this will be for the internal React tree. Provision will be made for injection of React into the library to prevent duplication of React instances/source.