MCPcopy Index your code
hub / github.com/statelyai/xstate / createMachineSnapshot

Function createMachineSnapshot

packages/core/src/State.ts:351–389  ·  view source on GitHub ↗
(
  config: StateConfig<TContext, TEvent>,
  machine: AnyStateMachine
)

Source from the content-addressed store, hash-verified

349};
350
351export function createMachineSnapshot<
352 TContext extends MachineContext,
353 TEvent extends EventObject,
354 TChildren extends Record<string, AnyActorRef | undefined>,
355 TStateValue extends StateValue,
356 TTag extends string,
357 TMeta extends MetaObject,
358 TStateSchema extends StateSchema
359>(
360 config: StateConfig<TContext, TEvent>,
361 machine: AnyStateMachine
362): MachineSnapshot<
363 TContext,
364 TEvent,
365 TChildren,
366 TStateValue,
367 TTag,
368 undefined,
369 TMeta,
370 TStateSchema
371> {
372 return {
373 status: config.status as never,
374 output: config.output,
375 error: config.error,
376 machine,
377 context: config.context,
378 _nodes: config._nodes,
379 value: getStateValue(machine.root, config._nodes) as never,
380 tags: new Set(config._nodes.flatMap((sn) => sn.tags)),
381 children: config.children as any,
382 historyValue: config.historyValue || {},
383 matches: machineSnapshotMatches as never,
384 hasTag: machineSnapshotHasTag,
385 can: machineSnapshotCan,
386 getMeta: machineSnapshotGetMeta,
387 toJSON: machineSnapshotToJSON
388 };
389}
390
391export function cloneMachineSnapshot<TState extends AnyMachineSnapshot>(
392 snapshot: TState,

Callers 4

resolveStateMethod · 0.90
_getPreInitialStateMethod · 0.90
restoreSnapshotMethod · 0.90
cloneMachineSnapshotFunction · 0.85

Calls 1

getStateValueFunction · 0.90

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…