You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Use defaultActionExecutor (temp)
* Convert entry/exit events
* UnknownAction -> UnknownActionObject
* Use defaultActionExecutor
* Cleanup
* WIP
* Fixing tests
* Add toJSON to built-in actions
* Add docs
* Update packages/core/src/actions/spawnChild.ts
Co-authored-by: Mateusz Burzyński <[email protected]>
* Update packages/core/src/stateUtils.ts
Co-authored-by: Mateusz Burzyński <[email protected]>
* Unify convertAction
* Update packages/core/src/stateUtils.ts
Co-authored-by: Mateusz Burzyński <[email protected]>
* Remove TODO
* Introduce `executeAction`, remove `action.execute()`
* Enqueue actions test
* Fix type error
* Expose `executeAction(…)`
* Provide actor to action
* Fix type issue
* Changeset
* Deprecate getNextSnapshot and getInitialSnapshot
* Update packages/core/src/stateUtils.ts
Co-authored-by: Mateusz Burzyński <[email protected]>
* Restore getNextSnapshot.test.ts file
* function -> exec
* Delayed raise action test
* Getting close
* Update scheduler to handle delayed sendTo actions without an initially resolved target
* Fix types
* WIP
* Remove test code
* Default actor
* Serialization in test
* Revert invoke.test.ts
* Cancel action execution
* WIP
* Update launch.json and jest.config.js
* Proof of concept for invoked actions
* Include resolved input & systemId in spawnChild action
* Refactor action types to use ExecutableActionObject and add startedAt timestamp to raise and send actions
* Add ExecutableActionsFrom
* Clean up types
* Lint
* Lint for real
* Lint lint
* Back to any
* Update packages/core/test/transition.test.ts
Co-authored-by: Mateusz Burzyński <[email protected]>
* use sleep
* remove outdated comment
* add `ExecutableSendToAction` to `SpecialExecutableAction`
* remove `startedAt`
* add failing raise test case
* tweak test title
* add extra cancel tests
* add failing test for invalid event delivery
* Revert test (happens in main)
* Remove invalid test: The <cancel> element is used to cancel a delayed <send> event.
* Fixed tests
* remove unused import
* add warn assertions
* Revert "Remove invalid test: The <cancel> element is used to cancel a delayed <send> event."
This reverts commit ab4bad0.
* make it green, make it green
* add action resolution capabilities to machine.executeAction
* share `resolvedInfo` between branches
* bring back `ExecutableActionObject['exec']`
* add a failing boilerplate for `cancel` execution
* Fix cancel action
* Add SpecialActionResolution type
* Add test for sendTo action
* actorId -> targetId
* Rename
* Add tests for emit and log
* Remove switch statement in executeAction
* Undo
* Remove executeAction for now
* bring back one `toSerializableAction` call
* fix one type issue
* tweak test titles
* remove redundant test
* dont export `getAction`
---------
Co-authored-by: Mateusz Burzyński <[email protected]>
Added a new `transition` function that takes an actor logic, a snapshot, and an event, and returns a tuple containing the next snapshot and the actions to execute. This function is a pure function and does not execute the actions itself. It can be used like this:
Added a new `initialTransition` function that takes an actor logic and an optional input, and returns a tuple containing the initial snapshot and the actions to execute from the initial transition. This function is also a pure function and does not execute the actions itself. It can be used like this:
These new functions provide a way to separate the calculation of the next snapshot and actions from the execution of those actions, allowing for more control and flexibility in the transition process.
| 🤖 `xstate`| Core finite state machine and statecharts library + interpreter |
187
-
|[📉 `@xstate/graph`](https://github.com/statelyai/xstate/tree/main/packages/xstate-graph)| Graph traversal and model-based testing utilities using XState |
188
-
|[⚛️ `@xstate/react`](https://github.com/statelyai/xstate/tree/main/packages/xstate-react)| React hooks and utilities for using XState in React applications |
189
-
|[💚 `@xstate/vue`](https://github.com/statelyai/xstate/tree/main/packages/xstate-vue)| Vue composition functions and utilities for using XState in Vue applications |
190
-
|[🎷 `@xstate/svelte`](https://github.com/statelyai/xstate/tree/main/packages/xstate-svelte)| Svelte utilities for using XState in Svelte applications |
191
-
|[🥏 `@xstate/solid`](https://github.com/statelyai/xstate/tree/main/packages/xstate-solid)| Solid hooks and utilities for using XState in Solid applications |
192
-
|[🔍 `@statelyai/inspect`](https://github.com/statelyai/inspect)| Inspection utilities for XState |
193
-
|[🏪 `@xstate/store`](https://github.com/statelyai/xstate/tree/main/packages/xstate-store)| Small library for simple state management |
| 🤖 `xstate`| Core finite state machine and statecharts library + interpreter |
187
+
|[📉 `@xstate/graph`](https://github.com/statelyai/xstate/tree/main/packages/xstate-graph)| Graph traversal and model-based testing utilities using XState |
188
+
|[⚛️ `@xstate/react`](https://github.com/statelyai/xstate/tree/main/packages/xstate-react)| React hooks and utilities for using XState in React applications |
189
+
|[💚 `@xstate/vue`](https://github.com/statelyai/xstate/tree/main/packages/xstate-vue)| Vue composition functions and utilities for using XState in Vue applications |
190
+
|[🎷 `@xstate/svelte`](https://github.com/statelyai/xstate/tree/main/packages/xstate-svelte)| Svelte utilities for using XState in Svelte applications |
191
+
|[🥏 `@xstate/solid`](https://github.com/statelyai/xstate/tree/main/packages/xstate-solid)| Solid hooks and utilities for using XState in Solid applications |
192
+
|[🔍 `@statelyai/inspect`](https://github.com/statelyai/inspect)| Inspection utilities for XState |
193
+
|[🏪 `@xstate/store`](https://github.com/statelyai/xstate/tree/main/packages/xstate-store)| Small library for simple state management|
0 commit comments