use std::sync::OnceLock;
use playit_api_client::api::{AgentVersion, PlayitAgentVersion};
use crate::PROTOCOL_VERSION;
use super::platform::get_platform;
pub static AGENT_VERSION: OnceLock<PlayitAgentVersion> = OnceLock::new();
pub fn register_version(version: PlayitAgentVersion) {
AGENT_VERSION.get_or_init(|| version);
}
pub fn get_version() -> PlayitAgentVersion {
AGENT_VERSION.get_or_init(|| {
PlayitAgentVersion {
version: AgentVersion {
platform: get_platform(),
version: env!("CARGO_PKG_VERSION").to_string(),
has_expired: false,
},
official: true,
details_website: None,
proto_version: PROTOCOL_VERSION,
}
}).clone()
}