add subscribe method to interpreter
This commit is contained in:
@@ -46,6 +46,7 @@ export interface Interpreter_T<C> {
|
||||
isTransitioning: boolean;
|
||||
isPaused: boolean;
|
||||
start: ()=>Interpreter_T<C>;
|
||||
subscribe: (callback:SubscriptionCallbackFunction_T<C>)=>Interpreter_T<C>;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -62,6 +63,7 @@ export function Interpreter<C>(machine:Machine_T<C>, initialContext:any, initial
|
||||
//@ts-expect-error
|
||||
const interpreter : Interpreter_T<C> = {machine, state: initialStateName, context:initialContext, eventQueue:[], isTransitioning:false, subscriptions: {}, isPaused: true};
|
||||
interpreter.start = ()=>{ start(interpreter); return interpreter; }
|
||||
interpreter.subscribe = (callback)=>{ subscribe(interpreter,callback); return interpreter; }
|
||||
send(interpreter, ['entry', null] );
|
||||
return interpreter;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user