use qframe::prelude::*;
use qframe::runtime::UpdateCheck;
use qframe::storage::Ecosystem;
use super::{Msg, QCli};
use crate::config::{APP, UpdateFolders};
impl QCli {
#[must_use]
pub fn update_notice(mut self, folders: Option<UpdateFolders>) -> Self {
self.updates = folders;
self
}
pub(super) fn ask_for_update(&self) -> Command<Msg> {
let Some(folders) = &self.updates else { return Command::none() };
if !Ecosystem::QUVYTA.update_notice_in(&folders.config) {
return Command::none();
}
let check = UpdateCheck::new(
Ecosystem::QUVYTA,
APP,
env!("CARGO_PKG_NAME"),
env!("CARGO_PKG_VERSION"),
Msg::NewVersion,
)
.in_folders(folders.config.clone(), folders.state.clone());
Command::check_for_update(check)
}
}