Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[core] Resolve state from a state config object #2892

Merged
merged 8 commits into from
Jan 31, 2022

Conversation

davidkpiano
Copy link
Member

This PR makes it easier to restore state by allowing a state config object to be passed into machine.resolveState(object):

const stateConfig = JSON.parse(localStorage.get('some-state-key'));

const restoredState = someMachine.resolveState(stateConfig); // no need to convert to State instance

@changeset-bot
Copy link

changeset-bot bot commented Dec 24, 2021

🦋 Changeset detected

Latest commit: ddd9c53

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
xstate Minor

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@ghost
Copy link

ghost commented Dec 24, 2021

CodeSee Review Map:

Review these changes using an interactive CodeSee Map

Review in an interactive map

View more CodeSee Maps

Legend

CodeSee Map Legend

): State<TContext, TEvent, TStateSchema, TTypestate> {
const resolvedState =
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This has a somewhat confusing name. I would call the resolvedState what gets returning from this function but this is just an intermediate value. Maybe something like resolvedInput/resolvedArg would make more sense here?

@davidkpiano
Copy link
Member Author

Ready for re-review

@codesandbox-ci
Copy link

codesandbox-ci bot commented Jan 29, 2022

This pull request is automatically built and testable in CodeSandbox.

To see build info of the built libraries, click here or the icon next to each commit SHA.

Latest deployment of this branch, based on commit ddd9c53:

Sandbox Source
XState Example Template Configuration
XState React Template Configuration

@davidkpiano davidkpiano merged commit 3a428b3 into main Jan 31, 2022
@davidkpiano davidkpiano deleted the davidkpiano/restore-state branch January 31, 2022 12:18
@github-actions github-actions bot mentioned this pull request Jan 31, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants