Announcing XState v5 beta
Анонс бетки XState 5
XState пытается упростить кривую обучению. А именно, упрощает терминологию (уменьшая её), уменьшает количество API, описывает кучу примеров использования, предоставляет интерактивную документацюи и всячески стремиться к тому, чтобы применять XState было проще
Что нового ожидается
Вместо кучи разных сущностей для реализации логику теперь будут акторы. Акторы - единая сущность для логики в xstate. Акторы можно создать из промисов, функций, обсерваблов и тд. Также можно создавать акторы из чего угодно, написав соответствующие хелперы.
Раньше акторы могли быть сохранены и загружены, но это не работало для внутренних акторов (актор А, вызывает акток Б). Теперь же сохраняется и загружаются все связанные акторы.
Т.к. акторы могут запускать друг друга, то они естественным образом создают иерархию. Иерархия акторов - это система. В рамках одной системы акторы могут общаться друг с другом через специальное API.
Упрощена передача данных в акторы.
Также из интересных фич: добавили возможность применение partial wildcards для подписки на события. Раньше надо было выбирать - либо явно описывать все события. либо подписываться на все разом. Теперь можно подписаться по шаблону, например `pointer.*`
Сейчас идет активная работа над хорошей интеграцией с TypeScript