rustenium_bidi_commands/log/
types.rs1use serde::{Serialize, Deserialize};
4use crate::script::types::RemoteValue;
5use crate::script::types::Source;
6use crate::script::types::StackTrace;
7
8#[derive(Debug, Clone, Serialize, Deserialize)]
9pub enum Level {
10 #[serde(rename = "debug")]
11 Debug,
12 #[serde(rename = "info")]
13 Info,
14 #[serde(rename = "warn")]
15 Warn,
16 #[serde(rename = "error")]
17 Error,
18}
19
20#[derive(Debug, Clone, Serialize, Deserialize)]
21pub struct BaseLogEntry {
22 #[serde(rename = "level")]
23 pub level: Level,
24 #[serde(rename = "source")]
25 pub source: Source,
26 #[serde(rename = "text")]
27 pub text: Option<String>,
28 #[serde(rename = "timestamp")]
29 pub timestamp: u64,
30 #[serde(rename = "stackTrace")]
31 #[serde(skip_serializing_if = "Option::is_none")]
32 pub stack_trace: Option<StackTrace>,
33}
34
35#[derive(Debug, Clone, Serialize, Deserialize)]
36pub struct GenericLogEntry {
37 #[serde(flatten)]
38 pub base_log_entry: BaseLogEntry,
39 #[serde(rename = "type")]
40 pub r#type: String,
41}
42
43#[derive(Debug, Clone, Serialize, Deserialize)]
44pub enum ConsoleEnum {
45 #[serde(rename = "console")]
46 Console,
47}
48
49#[derive(Debug, Clone, Serialize, Deserialize)]
50pub struct ConsoleLogEntry {
51 #[serde(flatten)]
52 pub base_log_entry: BaseLogEntry,
53 #[serde(rename = "type")]
54 pub r#type: ConsoleEnum,
55 #[serde(rename = "method")]
56 pub method: String,
57 #[serde(rename = "args")]
58 pub args: Vec<RemoteValue>,
59}
60
61#[derive(Debug, Clone, Serialize, Deserialize)]
62pub enum JavascriptEnum {
63 #[serde(rename = "javascript")]
64 Javascript,
65}
66
67#[derive(Debug, Clone, Serialize, Deserialize)]
68pub struct JavascriptLogEntry {
69 #[serde(flatten)]
70 pub base_log_entry: BaseLogEntry,
71 #[serde(rename = "type")]
72 pub r#type: JavascriptEnum,
73}
74
75#[derive(Debug, Clone, Serialize, Deserialize)]
76#[serde(untagged)]
77pub enum Entry {
78 GenericLogEntry(GenericLogEntry),
79 ConsoleLogEntry(ConsoleLogEntry),
80 JavascriptLogEntry(JavascriptLogEntry),
81}
82