xstate 5.0.0-beta.7 → 5.0.0-beta.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/actions/dist/xstate-actions.cjs.d.mts +2 -0
  2. package/actions/dist/xstate-actions.cjs.d.mts.map +1 -0
  3. package/actions/dist/xstate-actions.cjs.d.ts +1 -0
  4. package/actions/dist/xstate-actions.cjs.d.ts.map +1 -0
  5. package/actions/dist/xstate-actions.cjs.dev.js +2 -1
  6. package/actions/dist/xstate-actions.cjs.mjs +25 -0
  7. package/actions/dist/xstate-actions.cjs.prod.js +3 -2
  8. package/actions/dist/xstate-actions.esm.js +1 -1
  9. package/actions/dist/xstate-actions.umd.min.js +1 -1
  10. package/actions/dist/xstate-actions.umd.min.js.map +1 -1
  11. package/actors/dist/xstate-actors.cjs.d.mts +2 -0
  12. package/actors/dist/xstate-actors.cjs.d.mts.map +1 -0
  13. package/actors/dist/xstate-actors.cjs.d.ts +1 -0
  14. package/actors/dist/xstate-actors.cjs.d.ts.map +1 -0
  15. package/actors/dist/xstate-actors.cjs.dev.js +2 -1
  16. package/actors/dist/xstate-actors.cjs.mjs +15 -0
  17. package/actors/dist/xstate-actors.cjs.prod.js +3 -2
  18. package/actors/dist/xstate-actors.esm.js +1 -1
  19. package/actors/dist/xstate-actors.umd.min.js +1 -1
  20. package/actors/dist/xstate-actors.umd.min.js.map +1 -1
  21. package/dev/dist/xstate-dev.cjs.d.mts +2 -0
  22. package/dev/dist/xstate-dev.cjs.d.mts.map +1 -0
  23. package/dev/dist/xstate-dev.cjs.d.ts +1 -0
  24. package/dev/dist/xstate-dev.cjs.d.ts.map +1 -0
  25. package/dev/dist/xstate-dev.cjs.mjs +5 -0
  26. package/dev/dist/xstate-dev.cjs.prod.js +6 -43
  27. package/dev/dist/xstate-dev.umd.min.js.map +1 -1
  28. package/dist/{actions-0fcf4fd9.cjs.dev.js → actions-b6357569.cjs.dev.js} +252 -157
  29. package/dist/{actions-a1a641d3.cjs.prod.js → actions-bd4a184d.cjs.prod.js} +279 -160
  30. package/dist/{actions-b334e916.esm.js → actions-de434a04.esm.js} +208 -147
  31. package/dist/declarations/src/StateMachine.d.ts +2 -2
  32. package/dist/declarations/src/actions.d.ts +1 -0
  33. package/dist/declarations/src/actors/index.d.ts +2 -1
  34. package/dist/declarations/src/actors/observable.d.ts +1 -2
  35. package/dist/declarations/src/actors/promise.d.ts +1 -2
  36. package/dist/declarations/src/index.d.ts +12 -28
  37. package/dist/declarations/src/interpreter.d.ts +3 -2
  38. package/dist/declarations/src/typegenTypes.d.ts +7 -1
  39. package/dist/declarations/src/types.d.ts +5 -4
  40. package/dist/declarations/src/waitFor.d.ts +33 -0
  41. package/dist/index-0f3fdf0c.cjs.prod.js +52 -0
  42. package/dist/xstate.cjs.d.mts +2 -0
  43. package/dist/xstate.cjs.d.mts.map +1 -0
  44. package/dist/xstate.cjs.d.ts +1 -0
  45. package/dist/xstate.cjs.d.ts.map +1 -0
  46. package/dist/xstate.cjs.dev.js +97 -68
  47. package/dist/xstate.cjs.mjs +39 -0
  48. package/dist/xstate.cjs.prod.js +95 -69
  49. package/dist/xstate.esm.js +80 -57
  50. package/dist/xstate.umd.min.js +1 -1
  51. package/dist/xstate.umd.min.js.map +1 -1
  52. package/guards/dist/xstate-guards.cjs.d.mts +2 -0
  53. package/guards/dist/xstate-guards.cjs.d.mts.map +1 -0
  54. package/guards/dist/xstate-guards.cjs.d.ts +1 -0
  55. package/guards/dist/xstate-guards.cjs.d.ts.map +1 -0
  56. package/guards/dist/xstate-guards.cjs.dev.js +1 -1
  57. package/guards/dist/xstate-guards.cjs.mjs +8 -0
  58. package/guards/dist/xstate-guards.cjs.prod.js +2 -2
  59. package/guards/dist/xstate-guards.esm.js +1 -1
  60. package/guards/dist/xstate-guards.umd.min.js.map +1 -1
  61. package/package.json +7 -1
  62. package/dist/declarations/src/schema.d.ts +0 -2
@@ -1,8 +1,40 @@
1
1
  'use strict';
2
2
 
3
- var dev_dist_xstateDev = require('../dev/dist/xstate-dev.cjs.prod.js');
3
+ var dev_dist_xstateDev = require('./index-0f3fdf0c.cjs.prod.js');
4
4
 
5
5
  // https://github.com/microsoft/TypeScript/issues/23182#issuecomment-379091887
6
+
7
+ // TODO: replace in v5 with:
8
+ // export type IndexByType<T extends { type: string }> = { [E in T as E['type']]: E; };
9
+
10
+ /**
11
+ * The full definition of an event, with a string `type`.
12
+ */
13
+
14
+ // TODO: do not accept machines without all implementations
15
+ // we should also accept a raw machine as a behavior here
16
+ // or just make machine a behavior
17
+
18
+ // TODO: narrow this to behaviors from machine
19
+
20
+ // TODO: fix last param
21
+
22
+ /**
23
+ * Extracts action objects that have no extra properties.
24
+ */
25
+
26
+ /**
27
+ * The string or object representing the state value relative to the parent state node.
28
+ *
29
+ * - For a child atomic state node, this is a string, e.g., `"pending"`.
30
+ * - For complex state nodes, this is an object, e.g., `{ success: "someChildState" }`.
31
+ */
32
+
33
+ // TODO: remove once TS fixes this type-widening issue
34
+
35
+ // TODO: possibly refactor this somehow, use even a simpler type, and maybe even make `machine.options` private or something
36
+
37
+ exports.ActionTypes = void 0;
6
38
  (function (ActionTypes) {
7
39
  ActionTypes["Stop"] = "xstate.stop";
8
40
  ActionTypes["Raise"] = "xstate.raise";
@@ -22,45 +54,46 @@ var dev_dist_xstateDev = require('../dev/dist/xstate-dev.cjs.prod.js');
22
54
  ActionTypes["Pure"] = "xstate.pure";
23
55
  ActionTypes["Choose"] = "xstate.choose";
24
56
  })(exports.ActionTypes || (exports.ActionTypes = {}));
57
+ exports.SpecialTargets = void 0;
25
58
  (function (SpecialTargets) {
26
59
  SpecialTargets["Parent"] = "#_parent";
27
60
  SpecialTargets["Internal"] = "#_internal";
28
61
  })(exports.SpecialTargets || (exports.SpecialTargets = {}));
29
62
 
30
63
  // xstate-specific action types
31
- var stop = exports.ActionTypes.Stop;
32
- var raise = exports.ActionTypes.Raise;
33
- var send = exports.ActionTypes.Send;
34
- var cancel = exports.ActionTypes.Cancel;
35
- var assign = exports.ActionTypes.Assign;
36
- var after = exports.ActionTypes.After;
64
+ var stop$1 = exports.ActionTypes.Stop;
65
+ var raise$1 = exports.ActionTypes.Raise;
66
+ var send$1 = exports.ActionTypes.Send;
67
+ var cancel$1 = exports.ActionTypes.Cancel;
68
+ var assign$1 = exports.ActionTypes.Assign;
69
+ var after$1 = exports.ActionTypes.After;
37
70
  var doneState = exports.ActionTypes.DoneState;
38
- var log = exports.ActionTypes.Log;
71
+ var log$1 = exports.ActionTypes.Log;
39
72
  var init = exports.ActionTypes.Init;
40
- var invoke = exports.ActionTypes.Invoke;
73
+ var invoke$1 = exports.ActionTypes.Invoke;
41
74
  var errorExecution = exports.ActionTypes.ErrorExecution;
42
75
  var errorPlatform = exports.ActionTypes.ErrorPlatform;
43
- var error = exports.ActionTypes.ErrorCustom;
44
- var choose = exports.ActionTypes.Choose;
45
- var pure = exports.ActionTypes.Pure;
76
+ var error$1 = exports.ActionTypes.ErrorCustom;
77
+ var choose$1 = exports.ActionTypes.Choose;
78
+ var pure$1 = exports.ActionTypes.Pure;
46
79
 
47
80
  var actionTypes = /*#__PURE__*/Object.freeze({
48
81
  __proto__: null,
49
- stop: stop,
50
- raise: raise,
51
- send: send,
52
- cancel: cancel,
53
- assign: assign,
54
- after: after,
82
+ stop: stop$1,
83
+ raise: raise$1,
84
+ send: send$1,
85
+ cancel: cancel$1,
86
+ assign: assign$1,
87
+ after: after$1,
55
88
  doneState: doneState,
56
- log: log,
89
+ log: log$1,
57
90
  init: init,
58
- invoke: invoke,
91
+ invoke: invoke$1,
59
92
  errorExecution: errorExecution,
60
93
  errorPlatform: errorPlatform,
61
- error: error,
62
- choose: choose,
63
- pure: pure
94
+ error: error$1,
95
+ choose: choose$1,
96
+ pure: pure$1
64
97
  });
65
98
 
66
99
  function _toPrimitive(input, hint) {
@@ -380,6 +413,22 @@ function isPromiseLike(value) {
380
413
 
381
414
  // tslint:disable-next-line:no-empty
382
415
  var warn = function warn() {};
416
+ if (!dev_dist_xstateDev.IS_PRODUCTION) {
417
+ warn = function warn(condition, message) {
418
+ var error = condition instanceof Error ? condition : undefined;
419
+ if (!error && condition) {
420
+ return;
421
+ }
422
+ if (console !== undefined) {
423
+ var args = ["Warning: ".concat(message)];
424
+ if (error) {
425
+ args.push(error);
426
+ }
427
+ // tslint:disable-next-line:no-console
428
+ console.warn.apply(console, args);
429
+ }
430
+ };
431
+ }
383
432
  function isArray(value) {
384
433
  return Array.isArray(value);
385
434
  }
@@ -488,9 +537,9 @@ function isDynamicAction(action) {
488
537
  * - `delay` - The number of milliseconds to delay the sending of the event.
489
538
  * - `to` - The target of this event (by default, the machine the event was sent from).
490
539
  */
491
- function send$1(eventOrExpr, options) {
540
+ function send(eventOrExpr, options) {
492
541
  return createDynamicAction({
493
- type: send,
542
+ type: send$1,
494
543
  params: {
495
544
  to: options ? options.to : undefined,
496
545
  delay: options ? options.delay : undefined,
@@ -519,6 +568,9 @@ function send$1(eventOrExpr, options) {
519
568
  var delaysMap = state.machine.options.delays;
520
569
 
521
570
  // TODO: helper function for resolving Expr
571
+ if (typeof eventOrExpr === 'string') {
572
+ throw new Error("Only event objects may be used with sendTo; use sendTo({ type: \"".concat(eventOrExpr, "\" }) instead"));
573
+ }
522
574
  var resolvedEvent = toSCXMLEvent(isFunction(eventOrExpr) ? eventOrExpr(args) : eventOrExpr);
523
575
  var resolvedDelay;
524
576
  if (isString(params.delay)) {
@@ -548,7 +600,7 @@ function send$1(eventOrExpr, options) {
548
600
  targetActorRef = resolvedTarget || (actorContext === null || actorContext === void 0 ? void 0 : actorContext.self);
549
601
  }
550
602
  var resolvedAction = {
551
- type: send,
603
+ type: send$1,
552
604
  params: _objectSpread2(_objectSpread2({}, params), {}, {
553
605
  to: targetActorRef,
554
606
  _event: resolvedEvent,
@@ -567,7 +619,7 @@ function send$1(eventOrExpr, options) {
567
619
  actorCtx.defer(function () {
568
620
  var origin = actorCtx.self;
569
621
  var resolvedEvent = _objectSpread2(_objectSpread2({}, _event2), {}, {
570
- name: _event2.name === error ? "".concat(error$1(origin.id)) : _event2.name,
622
+ name: _event2.name === error$1 ? "".concat(error(origin.id)) : _event2.name,
571
623
  origin: origin
572
624
  });
573
625
  target.send(resolvedEvent);
@@ -586,7 +638,7 @@ function send$1(eventOrExpr, options) {
586
638
  * @param options Options to pass into the send event.
587
639
  */
588
640
  function sendParent(event, options) {
589
- return send$1(event, _objectSpread2(_objectSpread2({}, options), {}, {
641
+ return send(event, _objectSpread2(_objectSpread2({}, options), {}, {
590
642
  to: exports.SpecialTargets.Parent
591
643
  }));
592
644
  }
@@ -598,7 +650,7 @@ function sendParent(event, options) {
598
650
  * @param options Options to pass into the send event
599
651
  */
600
652
  function respond(event, options) {
601
- return send$1(event, _objectSpread2(_objectSpread2({}, options), {}, {
653
+ return send(event, _objectSpread2(_objectSpread2({}, options), {}, {
602
654
  to: function to(_ref2) {
603
655
  var _event = _ref2._event;
604
656
  return _event.origin; // TODO: handle when _event.origin is undefined
@@ -623,7 +675,7 @@ function forwardTo(target, options) {
623
675
  return resolvedTarget;
624
676
  };
625
677
  }
626
- return send$1(function (_ref3) {
678
+ return send(function (_ref3) {
627
679
  var event = _ref3.event;
628
680
  return event;
629
681
  }, _objectSpread2(_objectSpread2({}, options), {}, {
@@ -641,7 +693,7 @@ function forwardTo(target, options) {
641
693
  function escalate(errorData, options) {
642
694
  return sendParent(function (arg) {
643
695
  return {
644
- type: error,
696
+ type: error$1,
645
697
  data: isFunction(errorData) ? errorData(arg) : errorData
646
698
  };
647
699
  }, _objectSpread2(_objectSpread2({}, options), {}, {
@@ -658,7 +710,7 @@ function escalate(errorData, options) {
658
710
  * @returns An XState send action object
659
711
  */
660
712
  function sendTo(actor, event, options) {
661
- return send$1(event, _objectSpread2(_objectSpread2({}, options), {}, {
713
+ return send(event, _objectSpread2(_objectSpread2({}, options), {}, {
662
714
  to: actor
663
715
  }));
664
716
  }
@@ -816,25 +868,28 @@ promiseCreator) {
816
868
  var behavior = {
817
869
  transition: function transition(state, event) {
818
870
  var _event = toSCXMLEvent(event);
819
- if (state.canceled) {
871
+ if (state.status !== 'active') {
820
872
  return state;
821
873
  }
822
874
  var eventObject = _event.data;
823
875
  switch (_event.name) {
824
876
  case resolveEventType:
825
- state.status = 'done';
826
- state.data = eventObject.data;
827
- delete state.input;
828
- return state;
877
+ return _objectSpread2(_objectSpread2({}, state), {}, {
878
+ status: 'done',
879
+ data: eventObject.data,
880
+ input: undefined
881
+ });
829
882
  case rejectEventType:
830
- state.status = 'error';
831
- state.data = eventObject.data;
832
- delete state.input;
833
- return state;
883
+ return _objectSpread2(_objectSpread2({}, state), {}, {
884
+ status: 'error',
885
+ data: eventObject.data,
886
+ input: undefined
887
+ });
834
888
  case stopSignalType:
835
- state.canceled = true;
836
- delete state.input;
837
- return state;
889
+ return _objectSpread2(_objectSpread2({}, state), {}, {
890
+ status: 'canceled',
891
+ input: undefined
892
+ });
838
893
  default:
839
894
  return state;
840
895
  }
@@ -850,11 +905,19 @@ promiseCreator) {
850
905
  input: state.input
851
906
  }));
852
907
  resolvedPromise.then(function (response) {
908
+ // TODO: remove this condition once dead letter queue lands
909
+ if (self._state.status !== 'active') {
910
+ return;
911
+ }
853
912
  self.send({
854
913
  type: resolveEventType,
855
914
  data: response
856
915
  });
857
916
  }, function (errorData) {
917
+ // TODO: remove this condition once dead letter queue lands
918
+ if (self._state.status !== 'active') {
919
+ return;
920
+ }
858
921
  self.send({
859
922
  type: rejectEventType,
860
923
  data: errorData
@@ -863,7 +926,6 @@ promiseCreator) {
863
926
  },
864
927
  getInitialState: function getInitialState(_, input) {
865
928
  return {
866
- canceled: false,
867
929
  status: 'active',
868
930
  data: undefined,
869
931
  input: input
@@ -898,12 +960,11 @@ function fromObservable(observableCreator) {
898
960
  id = _ref.id,
899
961
  defer = _ref.defer;
900
962
  var _event = toSCXMLEvent(event);
901
- if (state.canceled) {
963
+ if (state.status !== 'active') {
902
964
  return state;
903
965
  }
904
966
  switch (_event.name) {
905
967
  case nextEventType:
906
- state.data = event.data.data;
907
968
  // match the exact timing of events sent by machines
908
969
  // send actions are not executed immediately
909
970
  defer(function () {
@@ -915,21 +976,29 @@ function fromObservable(observableCreator) {
915
976
  origin: self
916
977
  }));
917
978
  });
918
- return state;
979
+ return _objectSpread2(_objectSpread2({}, state), {}, {
980
+ data: event.data.data
981
+ });
919
982
  case errorEventType:
920
- state.status = 'error';
921
- delete state.input;
922
- state.data = _event.data.data;
923
- return state;
983
+ return _objectSpread2(_objectSpread2({}, state), {}, {
984
+ status: 'error',
985
+ input: undefined,
986
+ data: _event.data.data,
987
+ subscription: undefined
988
+ });
924
989
  case completeEventType:
925
- state.status = 'done';
926
- delete state.input;
927
- return state;
990
+ return _objectSpread2(_objectSpread2({}, state), {}, {
991
+ status: 'done',
992
+ input: undefined,
993
+ subscription: undefined
994
+ });
928
995
  case stopSignalType:
929
- state.canceled = true;
930
- delete state.input;
931
996
  state.subscription.unsubscribe();
932
- return state;
997
+ return _objectSpread2(_objectSpread2({}, state), {}, {
998
+ status: 'canceled',
999
+ input: undefined,
1000
+ subscription: undefined
1001
+ });
933
1002
  default:
934
1003
  return state;
935
1004
  }
@@ -937,7 +1006,6 @@ function fromObservable(observableCreator) {
937
1006
  getInitialState: function getInitialState(_, input) {
938
1007
  return {
939
1008
  subscription: undefined,
940
- canceled: false,
941
1009
  status: 'active',
942
1010
  data: undefined,
943
1011
  input: input
@@ -975,12 +1043,10 @@ function fromObservable(observableCreator) {
975
1043
  return state.data;
976
1044
  },
977
1045
  getPersistedState: function getPersistedState(_ref3) {
978
- var canceled = _ref3.canceled,
979
- status = _ref3.status,
1046
+ var status = _ref3.status,
980
1047
  data = _ref3.data,
981
1048
  input = _ref3.input;
982
1049
  return {
983
- canceled: canceled,
984
1050
  status: status,
985
1051
  data: data,
986
1052
  input: input
@@ -1015,24 +1081,30 @@ function fromEventObservable(lazyObservable) {
1015
1081
  var behavior = {
1016
1082
  transition: function transition(state, event) {
1017
1083
  var _event = toSCXMLEvent(event);
1018
- if (state.canceled) {
1084
+ if (state.status !== 'active') {
1019
1085
  return state;
1020
1086
  }
1021
1087
  switch (_event.name) {
1022
1088
  case errorEventType:
1023
- state.status = 'error';
1024
- delete state.input;
1025
- state.data = _event.data.data;
1026
- return state;
1089
+ return _objectSpread2(_objectSpread2({}, state), {}, {
1090
+ status: 'error',
1091
+ input: undefined,
1092
+ data: _event.data.data,
1093
+ subscription: undefined
1094
+ });
1027
1095
  case completeEventType:
1028
- state.status = 'done';
1029
- delete state.input;
1030
- return state;
1096
+ return _objectSpread2(_objectSpread2({}, state), {}, {
1097
+ status: 'done',
1098
+ input: undefined,
1099
+ subscription: undefined
1100
+ });
1031
1101
  case stopSignalType:
1032
- state.canceled = true;
1033
- delete state.input;
1034
1102
  state.subscription.unsubscribe();
1035
- return state;
1103
+ return _objectSpread2(_objectSpread2({}, state), {}, {
1104
+ status: 'canceled',
1105
+ input: undefined,
1106
+ subscription: undefined
1107
+ });
1036
1108
  default:
1037
1109
  return state;
1038
1110
  }
@@ -1040,7 +1112,6 @@ function fromEventObservable(lazyObservable) {
1040
1112
  getInitialState: function getInitialState() {
1041
1113
  return {
1042
1114
  subscription: undefined,
1043
- canceled: false,
1044
1115
  status: 'active',
1045
1116
  data: undefined
1046
1117
  };
@@ -1077,12 +1148,10 @@ function fromEventObservable(lazyObservable) {
1077
1148
  return undefined;
1078
1149
  },
1079
1150
  getPersistedState: function getPersistedState(_ref5) {
1080
- var canceled = _ref5.canceled,
1081
- status = _ref5.status,
1151
+ var status = _ref5.status,
1082
1152
  data = _ref5.data,
1083
1153
  input = _ref5.input;
1084
1154
  return {
1085
- canceled: canceled,
1086
1155
  status: status,
1087
1156
  data: data,
1088
1157
  input: input
@@ -1116,7 +1185,7 @@ function fromCallback(invokeCallback) {
1116
1185
  var sender = function sender(eventForParent) {
1117
1186
  var _self$_parent;
1118
1187
  if (state.canceled) {
1119
- return state;
1188
+ return;
1120
1189
  }
1121
1190
  (_self$_parent = self._parent) === null || _self$_parent === void 0 ? void 0 : _self$_parent.send(toSCXMLEvent(eventForParent, {
1122
1191
  origin: self
@@ -1137,7 +1206,7 @@ function fromCallback(invokeCallback) {
1137
1206
  state.canceled = true;
1138
1207
  }, function (errorData) {
1139
1208
  var _self$_parent3;
1140
- var errorEvent = error$1(id, errorData);
1209
+ var errorEvent = error(id, errorData);
1141
1210
  (_self$_parent3 = self._parent) === null || _self$_parent3 === void 0 ? void 0 : _self$_parent3.send(toSCXMLEvent(errorEvent, {
1142
1211
  origin: self
1143
1212
  }));
@@ -1231,6 +1300,12 @@ function toActorRef(actorRefLike) {
1231
1300
  return void 0;
1232
1301
  }), _objectSpread2$1), actorRefLike);
1233
1302
  }
1303
+ var emptyBehavior = fromTransition(function (_) {
1304
+ return undefined;
1305
+ }, undefined);
1306
+ function createEmptyActor() {
1307
+ return interpret(emptyBehavior);
1308
+ }
1234
1309
 
1235
1310
  function createSystem() {
1236
1311
  var sessionIdCounter = 0;
@@ -1268,6 +1343,7 @@ function createSystem() {
1268
1343
  return system;
1269
1344
  }
1270
1345
 
1346
+ exports.ActorStatus = void 0;
1271
1347
  (function (ActorStatus) {
1272
1348
  ActorStatus[ActorStatus["NotStarted"] = 0] = "NotStarted";
1273
1349
  ActorStatus[ActorStatus["Running"] = 1] = "Running";
@@ -1423,9 +1499,9 @@ var Interpreter = /*#__PURE__*/function () {
1423
1499
  _step;
1424
1500
  try {
1425
1501
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
1426
- var _observer2$next;
1427
- var _observer2 = _step.value;
1428
- (_observer2$next = _observer2.next) === null || _observer2$next === void 0 ? void 0 : _observer2$next.call(_observer2, snapshot);
1502
+ var _observer$next;
1503
+ var _observer = _step.value;
1504
+ (_observer$next = _observer.next) === null || _observer$next === void 0 ? void 0 : _observer$next.call(_observer, snapshot);
1429
1505
  }
1430
1506
  } catch (err) {
1431
1507
  _iterator.e(err);
@@ -1435,30 +1511,20 @@ var Interpreter = /*#__PURE__*/function () {
1435
1511
  var status = (_this$behavior$getSta = (_this$behavior = this.behavior).getStatus) === null || _this$behavior$getSta === void 0 ? void 0 : _this$behavior$getSta.call(_this$behavior, state);
1436
1512
  switch (status === null || status === void 0 ? void 0 : status.status) {
1437
1513
  case 'done':
1514
+ this._stopProcedure();
1438
1515
  this._doneEvent = doneInvoke(this.id, status.data);
1439
1516
  (_this$_parent = this._parent) === null || _this$_parent === void 0 ? void 0 : _this$_parent.send(toSCXMLEvent(this._doneEvent, {
1440
1517
  origin: this,
1441
1518
  invokeid: this.id
1442
1519
  }));
1443
- this._stopProcedure();
1520
+ this._complete();
1444
1521
  break;
1445
1522
  case 'error':
1446
- (_this$_parent2 = this._parent) === null || _this$_parent2 === void 0 ? void 0 : _this$_parent2.send(toSCXMLEvent(error$1(this.id, status.data), {
1523
+ this._stopProcedure();
1524
+ (_this$_parent2 = this._parent) === null || _this$_parent2 === void 0 ? void 0 : _this$_parent2.send(toSCXMLEvent(error(this.id, status.data), {
1447
1525
  origin: this
1448
1526
  }));
1449
- var _iterator2 = _createForOfIteratorHelper(this.observers),
1450
- _step2;
1451
- try {
1452
- for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
1453
- var _observer$error;
1454
- var _observer = _step2.value;
1455
- (_observer$error = _observer.error) === null || _observer$error === void 0 ? void 0 : _observer$error.call(_observer, status.data);
1456
- }
1457
- } catch (err) {
1458
- _iterator2.e(err);
1459
- } finally {
1460
- _iterator2.f();
1461
- }
1527
+ this._error(status.data);
1462
1528
  break;
1463
1529
  }
1464
1530
  }
@@ -1539,13 +1605,14 @@ var Interpreter = /*#__PURE__*/function () {
1539
1605
  this.update(nextState);
1540
1606
  if (event.name === stopSignalType) {
1541
1607
  this._stopProcedure();
1608
+ this._complete();
1542
1609
  }
1543
1610
  } catch (err) {
1544
1611
  // TODO: properly handle errors
1545
1612
  if (this.observers.size > 0) {
1546
1613
  this.observers.forEach(function (observer) {
1547
- var _observer$error2;
1548
- (_observer$error2 = observer.error) === null || _observer$error2 === void 0 ? void 0 : _observer$error2.call(observer, err);
1614
+ var _observer$error;
1615
+ (_observer$error = observer.error) === null || _observer$error === void 0 ? void 0 : _observer$error.call(observer, err);
1549
1616
  });
1550
1617
  this.stop();
1551
1618
  } else {
@@ -1584,13 +1651,31 @@ var Interpreter = /*#__PURE__*/function () {
1584
1651
  }, {
1585
1652
  key: "_complete",
1586
1653
  value: function _complete() {
1654
+ var _iterator2 = _createForOfIteratorHelper(this.observers),
1655
+ _step2;
1656
+ try {
1657
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
1658
+ var _observer2$complete;
1659
+ var _observer2 = _step2.value;
1660
+ (_observer2$complete = _observer2.complete) === null || _observer2$complete === void 0 ? void 0 : _observer2$complete.call(_observer2);
1661
+ }
1662
+ } catch (err) {
1663
+ _iterator2.e(err);
1664
+ } finally {
1665
+ _iterator2.f();
1666
+ }
1667
+ this.observers.clear();
1668
+ }
1669
+ }, {
1670
+ key: "_error",
1671
+ value: function _error(data) {
1587
1672
  var _iterator3 = _createForOfIteratorHelper(this.observers),
1588
1673
  _step3;
1589
1674
  try {
1590
1675
  for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
1591
- var _observer3$complete;
1676
+ var _observer3$error;
1592
1677
  var _observer3 = _step3.value;
1593
- (_observer3$complete = _observer3.complete) === null || _observer3$complete === void 0 ? void 0 : _observer3$complete.call(_observer3);
1678
+ (_observer3$error = _observer3.error) === null || _observer3$error === void 0 ? void 0 : _observer3$error.call(_observer3, data);
1594
1679
  }
1595
1680
  } catch (err) {
1596
1681
  _iterator3.e(err);
@@ -1602,7 +1687,6 @@ var Interpreter = /*#__PURE__*/function () {
1602
1687
  }, {
1603
1688
  key: "_stopProcedure",
1604
1689
  value: function _stopProcedure() {
1605
- this._complete();
1606
1690
  if (this.status !== exports.ActorStatus.Running) {
1607
1691
  // Interpreter already stopped; do nothing
1608
1692
  return this;
@@ -1634,8 +1718,16 @@ var Interpreter = /*#__PURE__*/function () {
1634
1718
  }, {
1635
1719
  key: "send",
1636
1720
  value: function send(event) {
1721
+ if (typeof event === 'string') {
1722
+ throw new Error("Only event objects may be sent to actors; use .send({ type: \"".concat(event, "\" }) instead"));
1723
+ }
1637
1724
  var _event = toSCXMLEvent(event);
1638
1725
  if (this.status === exports.ActorStatus.Stopped) {
1726
+ // do nothing
1727
+ if (!dev_dist_xstateDev.IS_PRODUCTION) {
1728
+ var eventString = JSON.stringify(_event.data);
1729
+ warn(false, "Event \"".concat(_event.name.toString(), "\" was sent to stopped actor \"").concat(this.id, " (").concat(this.sessionId, ")\". This actor has already reached its final state, and will not transition.\nEvent: ").concat(eventString));
1730
+ }
1639
1731
  return;
1640
1732
  }
1641
1733
  if (this.status !== exports.ActorStatus.Running && !this.options.deferEvents) {
@@ -1721,10 +1813,10 @@ function interpret(behavior, options) {
1721
1813
  * @param actorRef The actor to stop.
1722
1814
  */
1723
1815
 
1724
- function stop$1(actorRef) {
1816
+ function stop(actorRef) {
1725
1817
  var actor = actorRef;
1726
1818
  return createDynamicAction({
1727
- type: stop,
1819
+ type: stop$1,
1728
1820
  params: {
1729
1821
  actor: actor
1730
1822
  }
@@ -1774,11 +1866,11 @@ var defaultLogExpr = function defaultLogExpr(_ref) {
1774
1866
  * @param label The label to give to the logged expression.
1775
1867
  */
1776
1868
 
1777
- function log$1() {
1869
+ function log() {
1778
1870
  var expr = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : defaultLogExpr;
1779
1871
  var label = arguments.length > 1 ? arguments[1] : undefined;
1780
1872
  return createDynamicAction({
1781
- type: log,
1873
+ type: log$1,
1782
1874
  params: {
1783
1875
  label: label,
1784
1876
  expr: expr
@@ -1821,9 +1913,9 @@ function log$1() {
1821
1913
  * @param sendId The `id` of the `send(...)` action to cancel.
1822
1914
  */
1823
1915
 
1824
- function cancel$1(sendId) {
1916
+ function cancel(sendId) {
1825
1917
  return createDynamicAction({
1826
- type: cancel,
1918
+ type: cancel$1,
1827
1919
  params: {
1828
1920
  sendId: sendId
1829
1921
  }
@@ -2228,13 +2320,13 @@ function getDelayedTransitions(stateNode) {
2228
2320
  }
2229
2321
  var mutateEntryExit = function mutateEntryExit(delay, i) {
2230
2322
  var delayRef = isFunction(delay) ? "".concat(stateNode.id, ":delay[").concat(i, "]") : delay;
2231
- var eventType = after$1(delayRef, stateNode.id);
2232
- stateNode.entry.push(send$1({
2323
+ var eventType = after(delayRef, stateNode.id);
2324
+ stateNode.entry.push(raise({
2233
2325
  type: eventType
2234
2326
  }, {
2235
2327
  delay: delay
2236
2328
  }));
2237
- stateNode.exit.push(cancel$1(eventType));
2329
+ stateNode.exit.push(cancel(eventType));
2238
2330
  return eventType;
2239
2331
  };
2240
2332
  var delayedTransitions = isArray(afterConfig) ? afterConfig.map(function (transition, i) {
@@ -2880,12 +2972,12 @@ function setChildren(currentState, nonRaisedActions) {
2880
2972
  try {
2881
2973
  for (_iterator21.s(); !(_step21 = _iterator21.n()).done;) {
2882
2974
  var action = _step21.value;
2883
- if (action.type === invoke && action.params.ref) {
2975
+ if (action.type === invoke$1 && action.params.ref) {
2884
2976
  var ref = action.params.ref;
2885
2977
  if (ref) {
2886
2978
  children[ref.id] = ref;
2887
2979
  }
2888
- } else if (action.type === stop) {
2980
+ } else if (action.type === stop$1) {
2889
2981
  var _ref = action.params.actor;
2890
2982
  if (_ref) {
2891
2983
  delete children[_ref.id];
@@ -2984,7 +3076,7 @@ function enterStates(filteredTransitions, mutConfiguration, actions, internalQue
2984
3076
  try {
2985
3077
  for (_iterator23.s(); !(_step23 = _iterator23.n()).done;) {
2986
3078
  var invokeDef = _step23.value;
2987
- actions.push(invoke$1(invokeDef));
3079
+ actions.push(invoke(invokeDef));
2988
3080
  }
2989
3081
 
2990
3082
  // Add entry actions
@@ -3294,7 +3386,7 @@ function exitStates(transitions, mutConfiguration, historyValue, actions) {
3294
3386
  for (_iterator40.s(); !(_step40 = _iterator40.n()).done;) {
3295
3387
  var s = _step40.value;
3296
3388
  actions.push.apply(actions, _toConsumableArray(s.exit.flat()).concat(_toConsumableArray(s.invoke.map(function (def) {
3297
- return stop$1(def.id);
3389
+ return stop(def.id);
3298
3390
  }))));
3299
3391
  mutConfiguration["delete"](s);
3300
3392
  }
@@ -3332,12 +3424,12 @@ function resolveActionsAndContext(actions, scxmlEvent, currentState, actorCtx) {
3332
3424
  resolvedAction = _executableActionObje2[1];
3333
3425
  var matchedActions = (_resolvedAction$param = resolvedAction.params) === null || _resolvedAction$param === void 0 ? void 0 : _resolvedAction$param.actions;
3334
3426
  intermediateState = nextState;
3335
- if ((resolvedAction.type === raise || resolvedAction.type === send && resolvedAction.params.internal) && typeof resolvedAction.params.delay !== 'number') {
3427
+ if ((resolvedAction.type === raise$1 || resolvedAction.type === send$1 && resolvedAction.params.internal) && typeof resolvedAction.params.delay !== 'number') {
3336
3428
  raiseActions.push(resolvedAction);
3337
3429
  }
3338
3430
 
3339
3431
  // TODO: remove the check; just handleAction
3340
- if (resolvedAction.type !== pure) {
3432
+ if (resolvedAction.type !== pure$1) {
3341
3433
  handleAction(resolvedAction);
3342
3434
  }
3343
3435
  toActionObjects(matchedActions).forEach(resolveAction);
@@ -3367,6 +3459,9 @@ function resolveActionsAndContext(actions, scxmlEvent, currentState, actorCtx) {
3367
3459
  };
3368
3460
  }
3369
3461
  function macrostep(state, scxmlEvent, actorCtx) {
3462
+ if (!dev_dist_xstateDev.IS_PRODUCTION && scxmlEvent.name === WILDCARD) {
3463
+ throw new Error("An event cannot have the wildcard type ('".concat(WILDCARD, "')"));
3464
+ }
3370
3465
  var nextState = state;
3371
3466
  var states = [];
3372
3467
 
@@ -3448,7 +3543,7 @@ function stopStep(scxmlEvent, nextState, actorCtx) {
3448
3543
  }
3449
3544
  for (var _i4 = 0, _Object$values = Object.values(nextState.children); _i4 < _Object$values.length; _i4++) {
3450
3545
  var child = _Object$values[_i4];
3451
- actions.push(stop$1(child));
3546
+ actions.push(stop(child));
3452
3547
  }
3453
3548
  var _resolveActionsAndCon2 = resolveActionsAndContext(actions, scxmlEvent, nextState, actorCtx),
3454
3549
  stoppedState = _resolveActionsAndCon2.nextState;
@@ -3621,11 +3716,11 @@ var State = /*#__PURE__*/function () {
3621
3716
  }, {
3622
3717
  key: "toJSON",
3623
3718
  value: function toJSON() {
3624
- var configuration = this.configuration,
3625
- transitions = this.transitions,
3626
- tags = this.tags,
3627
- machine = this.machine,
3628
- jsonValues = _objectWithoutProperties(this, _excluded);
3719
+ this.configuration;
3720
+ this.transitions;
3721
+ var tags = this.tags;
3722
+ this.machine;
3723
+ var jsonValues = _objectWithoutProperties(this, _excluded);
3629
3724
  return _objectSpread2(_objectSpread2({}, jsonValues), {}, {
3630
3725
  tags: Array.from(tags),
3631
3726
  meta: this.meta
@@ -3663,8 +3758,8 @@ var State = /*#__PURE__*/function () {
3663
3758
  }, {
3664
3759
  key: "can",
3665
3760
  value: function can(event) {
3666
- {
3667
- warn(!!this.machine);
3761
+ if (dev_dist_xstateDev.IS_PRODUCTION) {
3762
+ warn(!!this.machine, "state.can(...) used outside of a machine-created State object; this will always return false.");
3668
3763
  }
3669
3764
  var transitionData = this.machine.getTransitionData(this, toSCXMLEvent(event));
3670
3765
  return !!(transitionData !== null && transitionData !== void 0 && transitionData.length) &&
@@ -3776,11 +3871,11 @@ function cloneState(state) {
3776
3871
  return new State(_objectSpread2(_objectSpread2({}, state), config), state.machine);
3777
3872
  }
3778
3873
  function getPersistedState(state) {
3779
- var configuration = state.configuration,
3780
- transitions = state.transitions,
3781
- tags = state.tags,
3782
- machine = state.machine,
3783
- children = state.children,
3874
+ state.configuration;
3875
+ state.transitions;
3876
+ state.tags;
3877
+ state.machine;
3878
+ var children = state.children,
3784
3879
  jsonValues = _objectWithoutProperties(state, _excluded2);
3785
3880
  var childrenJson = {};
3786
3881
  for (var id in children) {
@@ -3795,14 +3890,14 @@ function getPersistedState(state) {
3795
3890
  });
3796
3891
  }
3797
3892
 
3798
- function invoke$1(invokeDef) {
3893
+ function invoke(invokeDef) {
3799
3894
  return createDynamicAction({
3800
- type: invoke,
3895
+ type: invoke$1,
3801
3896
  params: invokeDef
3802
3897
  }, function (_event, _ref) {
3803
3898
  var state = _ref.state,
3804
3899
  actorContext = _ref.actorContext;
3805
- var type = invoke;
3900
+ var type = invoke$1;
3806
3901
  var id = invokeDef.id,
3807
3902
  src = invokeDef.src;
3808
3903
  var resolvedInvokeAction;
@@ -3861,7 +3956,7 @@ function invoke$1(invokeDef) {
3861
3956
  var _actorRef$start;
3862
3957
  (_actorRef$start = actorRef.start) === null || _actorRef$start === void 0 ? void 0 : _actorRef$start.call(actorRef);
3863
3958
  } catch (err) {
3864
- parent.send(error$1(id, err));
3959
+ parent.send(error(id, err));
3865
3960
  return;
3866
3961
  }
3867
3962
  });
@@ -3890,7 +3985,7 @@ function createSpawner(self, machine, context, _event, mutCapturedActions) {
3890
3985
  self: self
3891
3986
  }) : input
3892
3987
  });
3893
- mutCapturedActions.push(invoke$1({
3988
+ mutCapturedActions.push(invoke({
3894
3989
  id: actorRef.id,
3895
3990
  // @ts-ignore TODO: fix types
3896
3991
  src: actorRef,
@@ -3911,7 +4006,7 @@ function createSpawner(self, machine, context, _event, mutCapturedActions) {
3911
4006
  parent: self,
3912
4007
  input: options.input
3913
4008
  });
3914
- mutCapturedActions.push(invoke$1({
4009
+ mutCapturedActions.push(invoke({
3915
4010
  // @ts-ignore TODO: fix types
3916
4011
  src: _actorRef,
3917
4012
  ref: _actorRef,
@@ -3929,9 +4024,9 @@ function createSpawner(self, machine, context, _event, mutCapturedActions) {
3929
4024
  *
3930
4025
  * @param assignment An object that represents the partial context to update.
3931
4026
  */
3932
- function assign$1(assignment) {
4027
+ function assign(assignment) {
3933
4028
  return createDynamicAction({
3934
- type: assign,
4029
+ type: assign$1,
3935
4030
  params: {
3936
4031
  assignment: assignment
3937
4032
  }
@@ -3967,7 +4062,7 @@ function assign$1(assignment) {
3967
4062
  return [cloneState(state, {
3968
4063
  context: updatedContext
3969
4064
  }), {
3970
- type: assign,
4065
+ type: assign$1,
3971
4066
  params: {
3972
4067
  context: updatedContext,
3973
4068
  actions: capturedActions
@@ -3983,9 +4078,9 @@ function assign$1(assignment) {
3983
4078
  * @param eventType The event to raise.
3984
4079
  */
3985
4080
 
3986
- function raise$1(eventOrExpr, options) {
4081
+ function raise(eventOrExpr, options) {
3987
4082
  return createDynamicAction({
3988
- type: raise,
4083
+ type: raise$1,
3989
4084
  params: {
3990
4085
  delay: options ? options.delay : undefined,
3991
4086
  event: eventOrExpr,
@@ -4010,6 +4105,9 @@ function raise$1(eventOrExpr, options) {
4010
4105
  var delaysMap = state.machine.options.delays;
4011
4106
 
4012
4107
  // TODO: helper function for resolving Expr
4108
+ if (typeof eventOrExpr === 'string') {
4109
+ throw new Error("Only event objects may be used with raise; use raise({ type: \"".concat(eventOrExpr, "\" }) instead"));
4110
+ }
4013
4111
  var resolvedEvent = toSCXMLEvent(typeof eventOrExpr === 'function' ? eventOrExpr(args) : eventOrExpr);
4014
4112
  var resolvedDelay;
4015
4113
  if (typeof params.delay === 'string') {
@@ -4019,7 +4117,7 @@ function raise$1(eventOrExpr, options) {
4019
4117
  resolvedDelay = typeof params.delay === 'function' ? params.delay(args) : params.delay;
4020
4118
  }
4021
4119
  var resolvedAction = {
4022
- type: raise,
4120
+ type: raise$1,
4023
4121
  params: _objectSpread2(_objectSpread2({}, params), {}, {
4024
4122
  _event: resolvedEvent,
4025
4123
  event: resolvedEvent.data,
@@ -4036,9 +4134,9 @@ function raise$1(eventOrExpr, options) {
4036
4134
  });
4037
4135
  }
4038
4136
 
4039
- function choose$1(guards) {
4137
+ function choose(guards) {
4040
4138
  return createDynamicAction({
4041
- type: choose,
4139
+ type: choose$1,
4042
4140
  params: {
4043
4141
  guards: guards
4044
4142
  }
@@ -4052,7 +4150,7 @@ function choose$1(guards) {
4052
4150
  return !guard || evaluateGuard(guard, state.context, _event, state);
4053
4151
  })) === null || _guards$find === void 0 ? void 0 : _guards$find.actions;
4054
4152
  return [state, {
4055
- type: choose,
4153
+ type: choose$1,
4056
4154
  params: {
4057
4155
  actions: toActionObjects(matchedActions)
4058
4156
  }
@@ -4060,6 +4158,27 @@ function choose$1(guards) {
4060
4158
  });
4061
4159
  }
4062
4160
 
4161
+ function pure(getActions) {
4162
+ return createDynamicAction({
4163
+ type: pure$1,
4164
+ params: {
4165
+ get: getActions
4166
+ }
4167
+ }, function (_event, _ref) {
4168
+ var _toArray;
4169
+ var state = _ref.state;
4170
+ return [state, {
4171
+ type: pure$1,
4172
+ params: {
4173
+ actions: (_toArray = toArray(toActionObjects(getActions({
4174
+ context: state.context,
4175
+ event: _event.data
4176
+ })))) !== null && _toArray !== void 0 ? _toArray : []
4177
+ }
4178
+ }];
4179
+ });
4180
+ }
4181
+
4063
4182
  var initEvent = toSCXMLEvent({
4064
4183
  type: init
4065
4184
  });
@@ -4081,9 +4200,9 @@ function resolveActionObject(actionObject, actionFunctionMap) {
4081
4200
  execute: function execute(actorCtx) {
4082
4201
  return dereferencedAction({
4083
4202
  context: state.context,
4084
- event: state.event,
4203
+ event: _event.data,
4085
4204
  action: a,
4086
- _event: state._event,
4205
+ _event: _event,
4087
4206
  system: actorCtx.system,
4088
4207
  self: actorCtx.self
4089
4208
  });
@@ -4152,7 +4271,7 @@ var toActionObjects = function toActionObjects(action) {
4152
4271
  * @param delayRef The delay in milliseconds
4153
4272
  * @param id The state node ID where this event is handled
4154
4273
  */
4155
- function after$1(delayRef, id) {
4274
+ function after(delayRef, id) {
4156
4275
  var idSuffix = id ? "#".concat(id) : '';
4157
4276
  return "".concat(exports.ActionTypes.After, "(").concat(delayRef, ")").concat(idSuffix);
4158
4277
  }
@@ -4196,7 +4315,7 @@ function doneInvoke(invokeId, output) {
4196
4315
  };
4197
4316
  return eventObject;
4198
4317
  }
4199
- function error$1(id, data) {
4318
+ function error(id, data) {
4200
4319
  var type = "".concat(exports.ActionTypes.ErrorPlatform, ".").concat(id);
4201
4320
  var eventObject = {
4202
4321
  type: type,
@@ -4227,18 +4346,18 @@ exports._objectWithoutProperties = _objectWithoutProperties;
4227
4346
  exports._slicedToArray = _slicedToArray;
4228
4347
  exports._toConsumableArray = _toConsumableArray;
4229
4348
  exports.actionTypes = actionTypes;
4230
- exports.after = after$1;
4349
+ exports.after = after;
4231
4350
  exports.and = and;
4232
- exports.assign = assign$1;
4233
- exports.cancel = cancel$1;
4234
- exports.choose = choose$1;
4235
- exports.createDynamicAction = createDynamicAction;
4351
+ exports.assign = assign;
4352
+ exports.cancel = cancel;
4353
+ exports.choose = choose;
4354
+ exports.createEmptyActor = createEmptyActor;
4236
4355
  exports.createInitEvent = createInitEvent;
4237
4356
  exports.createInvokeId = createInvokeId;
4238
4357
  exports.createSpawner = createSpawner;
4239
4358
  exports.done = done;
4240
4359
  exports.doneInvoke = doneInvoke;
4241
- exports.error = error$1;
4360
+ exports.error = error;
4242
4361
  exports.escalate = escalate;
4243
4362
  exports.evaluateGuard = evaluateGuard;
4244
4363
  exports.flatten = flatten;
@@ -4260,14 +4379,14 @@ exports.getStateNodeByPath = getStateNodeByPath;
4260
4379
  exports.getStateNodes = getStateNodes;
4261
4380
  exports.initEvent = initEvent;
4262
4381
  exports.interpret = interpret;
4263
- exports.invoke = invoke;
4382
+ exports.invoke = invoke$1;
4264
4383
  exports.isActorRef = isActorRef;
4265
4384
  exports.isInFinalState = isInFinalState;
4266
4385
  exports.isSCXMLErrorEvent = isSCXMLErrorEvent;
4267
4386
  exports.isSignal = isSignal;
4268
4387
  exports.isStateId = isStateId;
4269
4388
  exports.isString = isString;
4270
- exports.log = log$1;
4389
+ exports.log = log;
4271
4390
  exports.macrostep = macrostep;
4272
4391
  exports.mapValues = mapValues;
4273
4392
  exports.matchesState = matchesState;
@@ -4277,19 +4396,19 @@ exports.not = not;
4277
4396
  exports.or = or;
4278
4397
  exports.pathToStateValue = pathToStateValue;
4279
4398
  exports.pure = pure;
4280
- exports.raise = raise$1;
4399
+ exports.raise = raise;
4281
4400
  exports.resolveActionObject = resolveActionObject;
4282
4401
  exports.resolveActionsAndContext = resolveActionsAndContext;
4283
4402
  exports.resolveReferencedActor = resolveReferencedActor;
4284
4403
  exports.resolveStateValue = resolveStateValue;
4285
4404
  exports.respond = respond;
4286
- exports.send = send$1;
4405
+ exports.send = send;
4287
4406
  exports.sendParent = sendParent;
4288
4407
  exports.sendTo = sendTo;
4289
4408
  exports.startSignal = startSignal;
4290
4409
  exports.startSignalType = startSignalType;
4291
4410
  exports.stateIn = stateIn;
4292
- exports.stop = stop$1;
4411
+ exports.stop = stop;
4293
4412
  exports.stopSignal = stopSignal;
4294
4413
  exports.stopSignalType = stopSignalType;
4295
4414
  exports.toActionObject = toActionObject;