use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct DeviceInput {
#[serde(rename = "browserLanguage", skip_serializing_if = "Option::is_none")]
pub browser_language: Option<String>,
#[serde(rename = "browserName", skip_serializing_if = "Option::is_none")]
pub browser_name: Option<String>,
#[serde(rename = "browserVersion", skip_serializing_if = "Option::is_none")]
pub browser_version: Option<String>,
#[serde(rename = "deviceBrand", skip_serializing_if = "Option::is_none")]
pub device_brand: Option<String>,
#[serde(rename = "deviceConcurrency", skip_serializing_if = "Option::is_none")]
pub device_concurrency: Option<i32>,
#[serde(rename = "deviceMemory", skip_serializing_if = "Option::is_none")]
pub device_memory: Option<f64>,
#[serde(rename = "deviceName", skip_serializing_if = "Option::is_none")]
pub device_name: Option<String>,
#[serde(rename = "gpu", skip_serializing_if = "Option::is_none")]
pub gpu: Option<String>,
#[serde(rename = "id", skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
#[serde(rename = "networkBandwidth", skip_serializing_if = "Option::is_none")]
pub network_bandwidth: Option<f64>,
#[serde(rename = "networkConnection", skip_serializing_if = "Option::is_none")]
pub network_connection: Option<String>,
#[serde(rename = "networkRtt", skip_serializing_if = "Option::is_none")]
pub network_rtt: Option<f64>,
#[serde(rename = "platformName", skip_serializing_if = "Option::is_none")]
pub platform_name: Option<String>,
#[serde(rename = "platformVersion", skip_serializing_if = "Option::is_none")]
pub platform_version: Option<String>,
#[serde(rename = "screenHeight", skip_serializing_if = "Option::is_none")]
pub screen_height: Option<f64>,
#[serde(rename = "screenRatio", skip_serializing_if = "Option::is_none")]
pub screen_ratio: Option<f64>,
#[serde(rename = "screenWidth", skip_serializing_if = "Option::is_none")]
pub screen_width: Option<f64>,
#[serde(rename = "touchScreen", skip_serializing_if = "Option::is_none")]
pub touch_screen: Option<bool>,
}
impl DeviceInput {
pub fn new() -> DeviceInput {
DeviceInput {
browser_language: None,
browser_name: None,
browser_version: None,
device_brand: None,
device_concurrency: None,
device_memory: None,
device_name: None,
gpu: None,
id: None,
network_bandwidth: None,
network_connection: None,
network_rtt: None,
platform_name: None,
platform_version: None,
screen_height: None,
screen_ratio: None,
screen_width: None,
touch_screen: None,
}
}
}