fix(deps): Update dependency @xstate/react to v3 #287
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
^1.2.0
->^3.0.0
Release Notes
statelyai/xstate (@xstate/react)
v3.2.2
Compare Source
Patch Changes
6665f0a32
Thanks @c-w! - Updated the allowed range for theuse-isomorphic-layout-effect
dependency.v3.2.1
Compare Source
Patch Changes
c110c429d
Thanks @Andarist! - Fixed compatibility of the generated TS types forcreateActorContext
with pre-4.7.v3.2.0
Compare Source
Minor Changes
#3814
494203b3d
Thanks @Andarist! - TheProvider
fromcreateActorContext(...)
now accepts theoptions={{...}}
prop that takes the same object as the second argument to theuseMachine(machine, options)
hook.These options are no longer passed as the second argument to the
createActorContext(machine)
function:v3.1.2
Compare Source
Patch Changes
b53856d28
Thanks @farskid! - Interpreter options can now be specified in the second argument of createActorContext(machine, options).v3.1.1
Compare Source
Patch Changes
51d254692
Thanks @Andarist! - Fixed an issue that caused the internally useduseSyncExternalStore
to warn about the computed snapshot not being cached when a not-started machine servive was passed touseActor
.v3.1.0
Compare Source
Minor Changes
#3778
f12248b23
Thanks @davidkpiano! - ThecreateActorContext(...)
helper has been introduced to make global actors easier to use with React. It outputs a React Context object with the following properties:.Provider
- The React Context provider.useActor(...)
- A hook that can be used to get the current state and send events to the actor.useSelector(...)
- A hook that can be used to select some derived state from the actor's state.useActorRef()
- A hook that can be used to get a reference to the actor that can be passed to other componentsUsage:
v3.0.2
Compare Source
Patch Changes
4190c3fd6
Thanks @davidkpiano! - Computing the initial state is now consistent withuseMachine
anduseActor
, avoiding stale initial state problems with nested machinesv3.0.1
Compare Source
Patch Changes
#3456
131d429ab
Thanks @davidkpiano! - AddshallowEqual
helper comparator function.#3500
0dfc6d92f
Thanks @Andarist! - Fixed an issue withuseSelector
always computing fresh snapshots internally for uninitialized services. This avoids the internaluseSyncExternalStore
from warning about the snapshot value not being cached properly.v3.0.0
Compare Source
Major Changes
#2939
360e85462
Thanks @Andarist! - This package now accepts React 18 as a peer dep and the implementation has been rewritten to useuse-sync-external-store
package. This doesn't break compatibility with older versions of React since we are using the shim to keep compatibility with those older versions.#2939
360e85462
Thanks @Andarist! -asEffect
andasLayoutEffect
action creators were removed. They were not fitting the React model that well and could lead to issues as their existence suggested that they are easy to use.To execute actions at those exact times you can always either just call your stuff directly from those effects or send events to the machine from those effects and execute explicit actions in response to said events.
#2939
360e85462
Thanks @Andarist! - The signatures ofuseMachine
anduseService
integrating with@xstate/fsm
were changed. They now only accept a single generic each (TMachine
andTService
respectively). This has been done to match their signatures with the related hooks that integrate withxstate
itself.Patch Changes
#2939
360e85462
Thanks @Andarist! - In v2 we have changed signatures ofuseMachine
anduseInterpret
. Instead of accepting a list of generics they now only support a single generic:TMachine
. This change, erroneously, was only introduced to types targeting [email protected] but the types targeting previous TS releases were still using the older signatures. This has now been fixed and users of older TS versions should now be able to leverage typegen with@xstate/react
.#2939
360e85462
Thanks @Andarist! -useMachine
forxstate
now correctly rerenders with the initial state when the internal service is being restarted. This might happen during Fast Refresh and now you shouldn't be able to observe this stale state that didn't match the actual state of the service.#2939
360e85462
Thanks @Andarist! -useMachine
for@xstate/fsm
now starts the service in an effect. This avoids side-effects in render and improves the compatibility withStrictMode
.#2939
360e85462
Thanks @Andarist! - Implementations given touseMachine
targeting@xstate/fsm
are now updated in a layout effect. This avoid some stale closure problems for actions that are executed in response to events sent from layout effects.Updated dependencies [
360e85462
,360e85462
]:v2.0.1
Compare Source
Patch Changes
862697e29
Thanks @Andarist! - Fixed compatibility with Skypack by exporting some shared utilities from root entry of XState and consuming them directly in other packages (this avoids accessing those things using deep imports and thus it avoids creating those compatibility problems).v2.0.0
Compare Source
Major Changes
eeadb7121
Thanks @TkDodo! - - Replaceuse-sync-external-store/shim
withuseSyncExternalStore
from React.getSnapshot
inuseSyncExternalStore
.getServerSnapshot
inuseSyncExternalStore
.store
to always be defined inuseSelector
Configuration
📅 Schedule: Branch creation - "before 3am on Monday" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate using a curated preset maintained by . View repository job log here