This epics maps an
ExecuteAllCells action to multiple
ExecuteCell actions for each cell.
This epic maps an
ExecuteFocusedCell action to an
This epic is triggered the first time an
ExecuteCell action is dispatched. If there is no kernel connected to the notebook, this epic will launch a kernel.
This epic does one of two things when an
ExecuteCell action is dispatched.
- If we are connected to a kernel, it immediately dispatches a
- If there is no kernel connected, it stores the execution in the queue.
This epic works alongside the
lazyLaunchKernelEpic. When a kernel has been successfully launched, it dispatches a
SendExecuteRequest action for each execution that is stored in the execution queue.
This epic listens to
SEND_EXECUTE_REQUESTS and creates a new Observable that manages sending the execution request to the kernel and processing the responses. The Observable is unique per cell, so each cell will have its own Observable where requests and responses are processed.
This epic subsribes to messages coming in from a kernel when it is launched. If one of the messages is of the
update_display_data message type, it dispatches an
This epic processes sending response to
stdin requests sent by the kernel. It listens to
SEND_INPUT_REPLY actions which should be dispatched when a user provides a response to a
stdin request in the UI.