use glacier_ui::GlacierDaemon;
pub(crate) fn run() -> iced::Result {
let sessao_agente = crate::agent::SharedSession::default();
let ui_agente = glacier_ui::external::sender();
let daemon = GlacierDaemon::new()
.main_template("views/app.gvb")
.lua_extension(crate::manifest_zip::install)
.on_message({
let sessao = sessao_agente.clone();
let ui = ui_agente.clone();
move |_msg, motor| {
crate::agent::spawn(sessao.clone(), ui.clone());
sessao.sync_from_context(motor.context());
}
});
#[cfg(not(debug_assertions))]
let daemon = daemon.assets(std::sync::Arc::new(crate::embedded::EmbeddedAssets));
let resultado = daemon.run();
crate::agent::cleanup();
resultado
}