exlab_wizard.ui.components.operations_modal#
In-flight operations panel (Frontend Spec §9.5).
A modal reachable from the Sync segment of the bottom status bar (when
any session is suspended in INPUT_REQUIRED) and from a toolbar
[Operations...] button. Backed by GET /api/v1/operations
(Backend §4.6.1).
Functions
Column definitions for the NiceGUI table (Frontend §9.5). |
|
|
Build the operations modal. |
|
Suspended rows first (oldest first), then running, then completed. |
|
Map an operation state to its NiceGUI icon name. |
Classes
|
A single row in the operations panel. |
- class exlab_wizard.ui.components.operations_modal.OperationRow(operation_id, state, started_at, equipment, project, run, plugin=None)[source]#
Bases:
objectA single row in the operations panel.
- Parameters:
- exlab_wizard.ui.components.operations_modal.operation_columns()[source]#
Column definitions for the NiceGUI table (Frontend §9.5).
- exlab_wizard.ui.components.operations_modal.operations_modal(rows, *, on_resume, on_cancel, on_view_log)[source]#
Build the operations modal.
- exlab_wizard.ui.components.operations_modal.sort_rows(rows)[source]#
Suspended rows first (oldest first), then running, then completed.
Per Frontend §9.5: suspended-row default-sort is by Started-at oldest first so the operator clears the longest-pending input first.
- Parameters:
rows (
list[OperationRow])- Return type: