Зачем

Часто в приложении нажатие одной и той же по смыслу кнопки на разных экранах вызывает один и тот же action

Подобная кнопка может находиться на сотне экранов и таких кнопок может быть несколько, добавление всех связей вручную требует трудозатрат

Решение

Общая концепция переходов

Любой переход, в том числе глобальный, должен выражаться в actions_process

Особенность перехода определяется выбраным action

Любая родительская нода может иметь свои actions_process

Для копии ноды также создаются свои записи в actions_process

Способ копирования actions_process определяется в зависимости от выбранного action

Приложению все переходы, привязанные к конкретному элементу экрана, передаются в массиве events для этого элемента

Глобальные переходы

Глобальные переходы не нарушают общую концепцию.

Для работы глобального перехода обозначаются глобальный вход и глобальный выход, связь выхода и входа определяется именем перехода в рамках процесса.

Логическая связь выходов и входов является связью многие-к-одному

Входы

Для создания глобальной точки входа (экрана, на который будут переходы из множества мест), необходимо добавить на данный экран action такого типа:

action.**globalEnter**(globalTransitionName)

globalTransitionName - название данного перехода (если будут требоваться дополнительные настройки, можно будет отсылать в будущем на универсальную таблицу). Может содержать любые знаки, кроме , и {{}}