Skip to content

Instantly share code, notes, and snippets.

@dstockto
Last active July 9, 2020 19:28
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dstockto/595d044991f8312b4f4abcb2242a0d40 to your computer and use it in GitHub Desktop.
Save dstockto/595d044991f8312b4f4abcb2242a0d40 to your computer and use it in GitHub Desktop.
Generated by XState Viz: https://xstate.js.org/viz
// Available variables:
// - Machine
// - interpret
// - assign
// - send
// - sendParent
// - spawn
// - raise
// - actions
// - XState (all XState exports)
const closeDoor = (context, event) => {
return Promise.resolve();
}
const fetchMachine = Machine({
id: 'fetch',
initial: 'closed',
states: {
closed:{
on: {
OPEN: 'opening',
LOCK: 'locked',
}
},
opening:{
after: {
2000: {
target: 'open'
}
},
invoke: {
src: 'openDoor',
onDone: {target: 'open'}
},
on: {
CLOSE: 'closing',
}
},
closing:{
after: {
2000: {
target: 'closed'
}
},
on: {
OPEN: 'opening',
},
invoke: {
onDone: { target: 'closed' },
src: 'closeDoor'
}
},
open:{
on: {
CLOSE: 'closing'
}
},
locked:{
on :{
UNLOCK: 'closed'
}
}
}
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment