Skip to content

Instantly share code, notes, and snippets.

@wmcbain
Created April 6, 2020 16:34
Show Gist options
  • Save wmcbain/a9025aa413c68fbc1fa4775d009f1660 to your computer and use it in GitHub Desktop.
Save wmcbain/a9025aa413c68fbc1fa4775d009f1660 to your computer and use it in GitHub Desktop.
Generated by XState Viz: https://xstate.js.org/viz
const fileMachine = Machine({
id: 'fileMachine',
initial: 'checkPackageJsonChanged',
states: {
checkPackageJsonChanged: {
entry: 'checkPackageJsonChanged',
on: {
PACKAGE_JSON_CHANGED: 'checkUniversalPackagesChanged',
PACKAGE_JSON_NOT_CHANGED: 'exit'
}
},
checkUniversalPackagesChanged: {
entry: ['checkAddedPackages', 'checkModifiedPackages'],
on: {
PACKAGES_CHANGED: 'ensureChangedConsistency',
PACKAGES_NOT_CHANGED: 'exit'
}
},
ensureChangedConsistency: {
entry: 'ensureChangedConsistency',
on: {
PACKAGES_CONSISTENT: 'exit',
PACKAGES_NOT_CONSISTENT: 'raiseFailure'
}
},
raiseFailure: {
entry: 'raiseFailure',
on: {
'': 'exit'
}
},
exit: {
type: 'final'
}
}
})
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment