Skip to content

Instantly share code, notes, and snippets.

@denisborovikov
Created September 8, 2021 21:58
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 denisborovikov/075af61be0bae5b12e30ce6e34fd7c11 to your computer and use it in GitHub Desktop.
Save denisborovikov/075af61be0bae5b12e30ce6e34fd7c11 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 fetchMachine = Machine({
"id": "formState",
"initial": "personal_details",
"context": {
"currentView": {
"page": 2,
"canDecrement": true
}
},
"states": {
"verify_phone": {
"on": {
"next": {
"target": "personal_details",
"actions": {
"type": "changeView",
"payload": "personal_details"
}
},
"error": {
"target": "error",
"actions": {
"type": "changeView",
"payload": "error"
}
}
}
},
"verify_details": {
"on": {
"next": {
"target": "government_id",
"actions": {
"type": "changeView",
"payload": "government_id"
}
},
"edit": {
"target": "personal_details",
"actions": {
"type": "changeView",
"payload": "personal_details"
}
},
"error": {
"target": "error",
"actions": {
"type": "changeView",
"payload": "error"
}
},
"loading": {
"target": "loading",
"actions": {
"type": "changeView",
"payload": "loading"
}
}
}
},
"personal_details": {
"on": {
"next": {
"target": "address_details",
"actions": {
"type": "changeView",
"payload": "address_details"
}
},
"back": {
"target": "verify_details",
"actions": {
"type": "changeView",
"payload": "verify_details"
}
},
"error": {
"target": "error",
"actions": {
"type": "changeView",
"payload": "error"
}
}
}
},
"address_details": {
"on": {
"next": {
"target": "government_id",
"actions": {
"type": "changeView",
"payload": "government_id"
}
},
"back": {
"target": "personal_details",
"actions": {
"type": "changeView",
"payload": "personal_details"
}
},
"error": {
"target": "error",
"actions": {
"type": "changeView",
"payload": "error"
}
},
"loading": {
"target": "loading",
"actions": {
"type": "changeView",
"payload": "loading"
}
}
}
},
"government_id": {
"on": {
"next": {
"target": "terms_and_conditions",
"actions": {
"type": "changeView",
"payload": "terms_and_conditions"
}
},
"back": {
"target": "verify_details",
"actions": {
"type": "changeView",
"payload": "verify_details"
}
},
"error": {
"target": "error",
"actions": {
"type": "changeView",
"payload": "error"
}
},
"loading": {
"target": "loading",
"actions": {
"type": "changeView",
"payload": "loading"
}
}
}
},
"terms_and_conditions": {
"on": {
"next": {
"target": "complete",
"actions": {
"type": "changeView",
"payload": "complete"
}
},
"back": {
"target": "government_id",
"actions": {
"type": "changeView",
"payload": "government_id"
}
},
"error": {
"target": "error",
"actions": {
"type": "changeView",
"payload": "error"
}
}
}
},
"complete": {
"on": {
"back": {
"target": "terms_and_conditions",
"actions": {
"type": "changeView",
"payload": "terms_and_conditions"
}
}
}
},
"loading": {
"on": {
"done_address_details": {
"target": "address_details"
},
"done_government_id": {
"target": "government_id"
},
"done_verify_details": {
"target": "verify_details"
}
}
},
"error": {}
}
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment