diff --git a/.changeset/slow-pants-applaud.md b/.changeset/slow-pants-applaud.md new file mode 100644 index 00000000..8877a071 --- /dev/null +++ b/.changeset/slow-pants-applaud.md @@ -0,0 +1,5 @@ +--- +'xstate-viz-app': minor +--- + +Reset the machine visualization when the inspector source gets disconnected diff --git a/src/simulationMachine.tsx b/src/simulationMachine.tsx index 438675c5..06aedeb1 100644 --- a/src/simulationMachine.tsx +++ b/src/simulationMachine.tsx @@ -138,6 +138,9 @@ export const simulationMachine = simModel.createMachine( }), ); break; + case 'xstate.disconnect' as any: + sendBack(simModel.events['MACHINES.RESET']()); + break; case 'service.state': sendBack( simModel.events['SERVICE.STATE']( @@ -155,6 +158,11 @@ export const simulationMachine = simModel.createMachine( }).unsubscribe; }, }, + on: { + 'MACHINES.RESET': { + actions: ['resetVisualizationState'], + }, + }, }, visualizing: { tags: 'visualizing',