exlab_wizard.ui.components.sync_rollup#
Folder/run-level sync-status rollup (two-icon presence model, 2026-05-30).
When a run row (left tree) or a folder (metadata pane) is summarised, it carries a single “worst-of” rollup icon reduced from its children’s per-file sync discriminators. This module owns that reduction as a pure, NiceGUI-free function so the severity ordering is testable in isolation.
The reduction is over FileSyncView (the UI presentation view), not the
schema-committed SyncStatus enum: severity is a presentation concern, so it
lives here beside its only consumer rather than on the wire enum.
Functions
|
Reduce per-file sync discriminators to a single worst-of view value. |
- exlab_wizard.ui.components.sync_rollup.sync_rollup(statuses)[source]#
Reduce per-file sync discriminators to a single worst-of view value.
Returns the highest-severity recognised view’s value string (
missing > upload_failed > blocked > local_only > synced > on_nas), orNonewhen there is nothing to roll up (empty, or onlyNone/ unrecognised values map toFileSyncView.NONE, which is ignored).