kanban-tui 0.9.0

Terminal user interface for the kanban project management tool
Documentation
#[derive(Default)]
pub struct PersistenceState {
    pub save_file: Option<String>,
    pub file_change_rx: Option<tokio::sync::broadcast::Receiver<kanban_persistence::ChangeEvent>>,
    pub file_watcher: Option<kanban_persistence::FileWatcher>,
    pub save_worker_handle: Option<tokio::task::JoinHandle<()>>,
    pub save_completion_rx: Option<tokio::sync::mpsc::UnboundedReceiver<()>>,
    pub save_error_rx: Option<tokio::sync::mpsc::UnboundedReceiver<String>>,
}

impl PersistenceState {
    pub fn new(
        save_file: Option<String>,
        save_completion_rx: Option<tokio::sync::mpsc::UnboundedReceiver<()>>,
    ) -> Self {
        Self {
            save_file,
            file_change_rx: None,
            file_watcher: None,
            save_worker_handle: None,
            save_completion_rx,
            save_error_rx: None,
        }
    }
}