Skip to content

Instantly share code, notes, and snippets.

@Platekun
Created March 30, 2020 19:11
Show Gist options
  • Save Platekun/412e1564e6cc726140eacb4ce4b04dd4 to your computer and use it in GitHub Desktop.
Save Platekun/412e1564e6cc726140eacb4ce4b04dd4 to your computer and use it in GitHub Desktop.
Generated by XState Viz: https://xstate.js.org/viz
Machine({
"id": "Example 1",
"context": {},
"type": "parallel",
"states": {
"routing": {
"initial": "initial",
"states": {
"initial": {
"on": {
"": "cities./cities"
}
},
"index": {
"name": "index",
"initial": "/",
"entry": [],
"exit": [],
"on": {
"CITIES_INDEX_VIEW_ENTERED": "cities./cities",
"NEW_CITIES_VIEW_ENTERED": "cities./cities/new",
"CITIES_SHOW_VIEW_ENTERED": "cities./cities/:cityId",
"CITIES_EDIT_VIEW_ENTERED": "cities./cities/:cityId/edit",
"CITIES_DELETE_VIEW_ENTERED": "cities./cities/:cityId/delete",
"SCHOOLS_INDEX_VIEW_ENTERED": "cities.schools./cities/:cityId/schools",
"NEW_SCHOOLS_VIEW_ENTERED": "cities.schools./cities/:cityId/schools/new",
"SCHOOLS_SHOW_VIEW_ENTERED": "cities.schools./cities/:cityId/schools/:schoolId",
"SCHOOLS_EDIT_VIEW_ENTERED": "cities.schools./cities/:cityId/schools/:schoolId/edit",
"SCHOOLS_DELETE_VIEW_ENTERED": "cities.schools./cities/:cityId/schools/:schoolId/delete",
"NOT-FOUND_VIEW_ENTERED": "not-found.*"
},
"states": {
"/": {
"on": {}
}
}
},
"cities": {
"name": "cities",
"initial": "/cities",
"entry": [],
"exit": [],
"on": {
"INDEX_VIEW_ENTERED": "index./",
"NOT-FOUND_VIEW_ENTERED": "not-found.*"
},
"states": {
"/cities": {
"entry": [],
"exit": [],
"on": {
"NEW_CITIES_VIEW_ENTERED": "/cities/new",
"CITIES_SHOW_VIEW_ENTERED": "/cities/:cityId",
"CITIES_EDIT_VIEW_ENTERED": "/cities/:cityId/edit",
"CITIES_DELETE_VIEW_ENTERED": "/cities/:cityId/delete",
"SCHOOLS_INDEX_VIEW_ENTERED": "schools./cities/:cityId/schools",
"NEW_SCHOOLS_VIEW_ENTERED": "schools./cities/:cityId/schools/new",
"SCHOOLS_SHOW_VIEW_ENTERED": "schools./cities/:cityId/schools/:schoolId",
"SCHOOLS_EDIT_VIEW_ENTERED": "schools./cities/:cityId/schools/:schoolId/edit",
"SCHOOLS_DELETE_VIEW_ENTERED": "schools./cities/:cityId/schools/:schoolId/delete"
}
},
"/cities/new": {
"entry": [],
"exit": [],
"on": {
"CITIES_INDEX_VIEW_ENTERED": "/cities",
"CITIES_SHOW_VIEW_ENTERED": "/cities/:cityId",
"CITIES_EDIT_VIEW_ENTERED": "/cities/:cityId/edit",
"CITIES_DELETE_VIEW_ENTERED": "/cities/:cityId/delete",
"SCHOOLS_INDEX_VIEW_ENTERED": "schools./cities/:cityId/schools",
"NEW_SCHOOLS_VIEW_ENTERED": "schools./cities/:cityId/schools/new",
"SCHOOLS_SHOW_VIEW_ENTERED": "schools./cities/:cityId/schools/:schoolId",
"SCHOOLS_EDIT_VIEW_ENTERED": "schools./cities/:cityId/schools/:schoolId/edit",
"SCHOOLS_DELETE_VIEW_ENTERED": "schools./cities/:cityId/schools/:schoolId/delete"
}
},
"/cities/:cityId": {
"entry": [
"setCityId"
],
"exit": [
"removeCityId"
],
"on": {
"CITIES_INDEX_VIEW_ENTERED": "/cities",
"NEW_CITIES_VIEW_ENTERED": "/cities/new",
"CITIES_EDIT_VIEW_ENTERED": "/cities/:cityId/edit",
"CITIES_DELETE_VIEW_ENTERED": "/cities/:cityId/delete",
"SCHOOLS_INDEX_VIEW_ENTERED": "schools./cities/:cityId/schools",
"NEW_SCHOOLS_VIEW_ENTERED": "schools./cities/:cityId/schools/new",
"SCHOOLS_SHOW_VIEW_ENTERED": "schools./cities/:cityId/schools/:schoolId",
"SCHOOLS_EDIT_VIEW_ENTERED": "schools./cities/:cityId/schools/:schoolId/edit",
"SCHOOLS_DELETE_VIEW_ENTERED": "schools./cities/:cityId/schools/:schoolId/delete"
}
},
"/cities/:cityId/edit": {
"entry": [
"setCityId"
],
"exit": [
"removeCityId"
],
"on": {
"CITIES_INDEX_VIEW_ENTERED": "/cities",
"NEW_CITIES_VIEW_ENTERED": "/cities/new",
"CITIES_SHOW_VIEW_ENTERED": "/cities/:cityId",
"CITIES_DELETE_VIEW_ENTERED": "/cities/:cityId/delete",
"SCHOOLS_INDEX_VIEW_ENTERED": "schools./cities/:cityId/schools",
"NEW_SCHOOLS_VIEW_ENTERED": "schools./cities/:cityId/schools/new",
"SCHOOLS_SHOW_VIEW_ENTERED": "schools./cities/:cityId/schools/:schoolId",
"SCHOOLS_EDIT_VIEW_ENTERED": "schools./cities/:cityId/schools/:schoolId/edit",
"SCHOOLS_DELETE_VIEW_ENTERED": "schools./cities/:cityId/schools/:schoolId/delete"
}
},
"/cities/:cityId/delete": {
"entry": [
"setCityId"
],
"exit": [
"removeCityId"
],
"on": {
"CITIES_INDEX_VIEW_ENTERED": "/cities",
"NEW_CITIES_VIEW_ENTERED": "/cities/new",
"CITIES_SHOW_VIEW_ENTERED": "/cities/:cityId",
"CITIES_EDIT_VIEW_ENTERED": "/cities/:cityId/edit",
"SCHOOLS_INDEX_VIEW_ENTERED": "schools./cities/:cityId/schools",
"NEW_SCHOOLS_VIEW_ENTERED": "schools./cities/:cityId/schools/new",
"SCHOOLS_SHOW_VIEW_ENTERED": "schools./cities/:cityId/schools/:schoolId",
"SCHOOLS_EDIT_VIEW_ENTERED": "schools./cities/:cityId/schools/:schoolId/edit",
"SCHOOLS_DELETE_VIEW_ENTERED": "schools./cities/:cityId/schools/:schoolId/delete"
}
},
"schools": {
"name": "schools",
"initial": "/cities/:cityId/schools",
"entry": [],
"exit": [],
"on": {
"CITIES_INDEX_VIEW_ENTERED": "/cities",
"NEW_CITIES_VIEW_ENTERED": "/cities/new",
"CITIES_SHOW_VIEW_ENTERED": "/cities/:cityId",
"CITIES_EDIT_VIEW_ENTERED": "/cities/:cityId/edit",
"CITIES_DELETE_VIEW_ENTERED": "/cities/:cityId/delete"
},
"states": {
"/cities/:cityId/schools": {
"entry": [],
"exit": [],
"on": {
"NEW_SCHOOLS_VIEW_ENTERED": "/cities/:cityId/schools/new",
"SCHOOLS_SHOW_VIEW_ENTERED": "/cities/:cityId/schools/:schoolId",
"SCHOOLS_EDIT_VIEW_ENTERED": "/cities/:cityId/schools/:schoolId/edit",
"SCHOOLS_DELETE_VIEW_ENTERED": "/cities/:cityId/schools/:schoolId/delete"
}
},
"/cities/:cityId/schools/new": {
"entry": [],
"exit": [],
"on": {
"SCHOOLS_INDEX_VIEW_ENTERED": "/cities/:cityId/schools",
"SCHOOLS_SHOW_VIEW_ENTERED": "/cities/:cityId/schools/:schoolId",
"SCHOOLS_EDIT_VIEW_ENTERED": "/cities/:cityId/schools/:schoolId/edit",
"SCHOOLS_DELETE_VIEW_ENTERED": "/cities/:cityId/schools/:schoolId/delete"
}
},
"/cities/:cityId/schools/:schoolId": {
"entry": [
"setCityId",
"setSchoolId"
],
"exit": [
"removeCityId",
"removeSchoolId"
],
"on": {
"SCHOOLS_INDEX_VIEW_ENTERED": "/cities/:cityId/schools",
"NEW_SCHOOLS_VIEW_ENTERED": "/cities/:cityId/schools/new",
"SCHOOLS_EDIT_VIEW_ENTERED": "/cities/:cityId/schools/:schoolId/edit",
"SCHOOLS_DELETE_VIEW_ENTERED": "/cities/:cityId/schools/:schoolId/delete"
}
},
"/cities/:cityId/schools/:schoolId/edit": {
"entry": [
"setCityId",
"setSchoolId"
],
"exit": [
"removeCityId",
"removeSchoolId"
],
"on": {
"SCHOOLS_INDEX_VIEW_ENTERED": "/cities/:cityId/schools",
"NEW_SCHOOLS_VIEW_ENTERED": "/cities/:cityId/schools/new",
"SCHOOLS_SHOW_VIEW_ENTERED": "/cities/:cityId/schools/:schoolId",
"SCHOOLS_DELETE_VIEW_ENTERED": "/cities/:cityId/schools/:schoolId/delete"
}
},
"/cities/:cityId/schools/:schoolId/delete": {
"entry": [
"setCityId",
"setSchoolId"
],
"exit": [
"removeCityId",
"removeSchoolId"
],
"on": {
"SCHOOLS_INDEX_VIEW_ENTERED": "/cities/:cityId/schools",
"NEW_SCHOOLS_VIEW_ENTERED": "/cities/:cityId/schools/new",
"SCHOOLS_SHOW_VIEW_ENTERED": "/cities/:cityId/schools/:schoolId",
"SCHOOLS_EDIT_VIEW_ENTERED": "/cities/:cityId/schools/:schoolId/edit"
}
}
}
}
}
},
"not-found": {
"name": "not-found",
"initial": "*",
"entry": [],
"exit": [],
"on": {
"INDEX_VIEW_ENTERED": "index./",
"CITIES_INDEX_VIEW_ENTERED": "cities./cities",
"NEW_CITIES_VIEW_ENTERED": "cities./cities/new",
"CITIES_SHOW_VIEW_ENTERED": "cities./cities/:cityId",
"CITIES_EDIT_VIEW_ENTERED": "cities./cities/:cityId/edit",
"CITIES_DELETE_VIEW_ENTERED": "cities./cities/:cityId/delete",
"SCHOOLS_INDEX_VIEW_ENTERED": "cities.schools./cities/:cityId/schools",
"NEW_SCHOOLS_VIEW_ENTERED": "cities.schools./cities/:cityId/schools/new",
"SCHOOLS_SHOW_VIEW_ENTERED": "cities.schools./cities/:cityId/schools/:schoolId",
"SCHOOLS_EDIT_VIEW_ENTERED": "cities.schools./cities/:cityId/schools/:schoolId/edit",
"SCHOOLS_DELETE_VIEW_ENTERED": "cities.schools./cities/:cityId/schools/:schoolId/delete"
},
"states": {
"*": {
"on": {}
}
}
}
}
},
"app": {
"initial": "idle",
"states": {
"idle": {}
}
}
}
})
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment