use std::sync::LazyLock;
use tosho_macros::comptime_b64;
#[derive(Debug, Clone, PartialEq, Eq)]
pub struct Constants {
pub(crate) ua: &'static str,
pub(crate) image_ua: &'static str,
}
pub static WEB_CONSTANTS: LazyLock<Constants> = LazyLock::new(|| Constants {
ua: "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:143.0) Gecko/20100101 Firefox/143.0",
image_ua: "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:143.0) Gecko/20100101 Firefox/143.0",
});
pub const BASE_API: &str = comptime_b64!("aHR0cHM6Ly9td2FwaS5uZW9uaWNoaWJhbi5jb20=");
pub const BASE_IMG: &str = comptime_b64!("aHR0cHM6Ly9hc3NldHMubmVvbmljaGliYW4uY29t");
pub const BASE_WEB: &str = comptime_b64!("aHR0cHM6Ly9uZW9uaWNoaWJhbi5jb20=");
pub const BASE_SECURE_IMG: &str =
comptime_b64!("aHR0cHM6Ly9zZWN1cmUtYXNzZXRzLm5lb25pY2hpYmFuLmNvbQ==");
pub const BASE_HOST: &str = comptime_b64!("bmVvbmljaGliYW4uY29t");
pub const API_HOST: &str = comptime_b64!("bXdhcGkubmVvbmljaGliYW4uY29t");
pub const IMAGE_HOST: &str = comptime_b64!("YXNzZXRzLm5lb25pY2hpYmFuLmNvbQ==");
pub const SECURE_IMAGE_HOST: &str = comptime_b64!("c2VjdXJlLWFzc2V0cy5uZW9uaWNoaWJhbi5jb20=");
pub fn get_constants(device_type: u8) -> &'static Constants {
match device_type {
1 => &WEB_CONSTANTS,
_ => panic!("Invalid device type"),
}
}