bitwarden_api_api/models/
device_type.rs1use serde::{Deserialize, Serialize};
12use serde_repr::{Deserialize_repr, Serialize_repr};
13
14use crate::models;
15#[repr(i64)]
17#[derive(
18 Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize_repr, Deserialize_repr,
19)]
20pub enum DeviceType {
21 Android = 0,
22 iOS = 1,
23 ChromeExtension = 2,
24 FirefoxExtension = 3,
25 OperaExtension = 4,
26 EdgeExtension = 5,
27 WindowsDesktop = 6,
28 MacOsDesktop = 7,
29 LinuxDesktop = 8,
30 ChromeBrowser = 9,
31 FirefoxBrowser = 10,
32 OperaBrowser = 11,
33 EdgeBrowser = 12,
34 IEBrowser = 13,
35 UnknownBrowser = 14,
36 AndroidAmazon = 15,
37 UWP = 16,
38 SafariBrowser = 17,
39 VivaldiBrowser = 18,
40 VivaldiExtension = 19,
41 SafariExtension = 20,
42 SDK = 21,
43 Server = 22,
44 WindowsCLI = 23,
45 MacOsCLI = 24,
46 LinuxCLI = 25,
47 DuckDuckGoBrowser = 26,
48}
49
50impl std::fmt::Display for DeviceType {
51 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
52 write!(
53 f,
54 "{}",
55 match self {
56 Self::Android => "0",
57 Self::iOS => "1",
58 Self::ChromeExtension => "2",
59 Self::FirefoxExtension => "3",
60 Self::OperaExtension => "4",
61 Self::EdgeExtension => "5",
62 Self::WindowsDesktop => "6",
63 Self::MacOsDesktop => "7",
64 Self::LinuxDesktop => "8",
65 Self::ChromeBrowser => "9",
66 Self::FirefoxBrowser => "10",
67 Self::OperaBrowser => "11",
68 Self::EdgeBrowser => "12",
69 Self::IEBrowser => "13",
70 Self::UnknownBrowser => "14",
71 Self::AndroidAmazon => "15",
72 Self::UWP => "16",
73 Self::SafariBrowser => "17",
74 Self::VivaldiBrowser => "18",
75 Self::VivaldiExtension => "19",
76 Self::SafariExtension => "20",
77 Self::SDK => "21",
78 Self::Server => "22",
79 Self::WindowsCLI => "23",
80 Self::MacOsCLI => "24",
81 Self::LinuxCLI => "25",
82 Self::DuckDuckGoBrowser => "26",
83 }
84 )
85 }
86}
87impl Default for DeviceType {
88 fn default() -> DeviceType {
89 Self::Android
90 }
91}