Now that SwiftUI is in better shape, this PR introduces new enhancements that are apart of the original goal of the library. It also removes excess code and APIs developed during the original SwiftUI beta.
Deprecated
MappedDispatch should be replaced with @Environment(.\actionDisaptcher) to be consistent with Apple's usage.
MappedState should be replaced with ConnectableView or Connector.
StateType and IdentifiableState are deprecated in favor of having applications define their own protocol to adhere to. Instead of requiring an opinionated state type, the library uses conditional protocol adherences when necessary.
onAction(perform:) view modifier is deprecated in favor of using middleware.
Changes
macOS 11.0 is now required.
Connector's internal publishing logic has been moved to StateStorable, so it may be reused elsewhere.
Added
Added StateStorable protocol so that there's a shared way to extend the Store<_> and StoreProxy<_> types.
Added StateStorable.publish(_:) method as a single place to receive an updatable state object.
Now that SwiftUI is in better shape, this PR introduces new enhancements that are apart of the original goal of the library. It also removes excess code and APIs developed during the original SwiftUI beta.
Deprecated
MappedDispatch
should be replaced with@Environment(.\actionDisaptcher)
to be consistent with Apple's usage.MappedState
should be replaced withConnectableView
orConnector
.StateType
andIdentifiableState
are deprecated in favor of having applications define their own protocol to adhere to. Instead of requiring an opinionated state type, the library uses conditional protocol adherences when necessary.onAction(perform:)
view modifier is deprecated in favor of using middleware.Changes
Connector
's internal publishing logic has been moved toStateStorable
, so it may be reused elsewhere.Added
StateStorable
protocol so that there's a shared way to extend the Store<_> and StoreProxy<_> types.StateStorable.publish(_:)
method as a single place to receive an updatable state object.Fixed
onAppear(dispatch:)
.