1use super::network;
3use super::runtime;
4#[allow(unused_imports)]
5use super::types::*;
6#[allow(unused_imports)]
7use serde::{Deserialize, Serialize};
8#[allow(unused_imports)]
9use serde_json::Value as Json;
10#[derive(Deserialize, Serialize, Debug, Clone, PartialEq)]
11pub enum LogEntrySource {
12 #[serde(rename = "xml")]
13 Xml,
14 #[serde(rename = "javascript")]
15 Javascript,
16 #[serde(rename = "network")]
17 Network,
18 #[serde(rename = "storage")]
19 Storage,
20 #[serde(rename = "appcache")]
21 Appcache,
22 #[serde(rename = "rendering")]
23 Rendering,
24 #[serde(rename = "security")]
25 Security,
26 #[serde(rename = "deprecation")]
27 Deprecation,
28 #[serde(rename = "worker")]
29 Worker,
30 #[serde(rename = "violation")]
31 Violation,
32 #[serde(rename = "intervention")]
33 Intervention,
34 #[serde(rename = "recommendation")]
35 Recommendation,
36 #[serde(rename = "other")]
37 Other,
38}
39#[derive(Deserialize, Serialize, Debug, Clone, PartialEq)]
40pub enum LogEntryLevel {
41 #[serde(rename = "verbose")]
42 Verbose,
43 #[serde(rename = "info")]
44 Info,
45 #[serde(rename = "warning")]
46 Warning,
47 #[serde(rename = "error")]
48 Error,
49}
50#[derive(Deserialize, Serialize, Debug, Clone, PartialEq)]
51pub enum LogEntryCategory {
52 #[serde(rename = "cors")]
53 Cors,
54}
55#[derive(Deserialize, Serialize, Debug, Clone, PartialEq)]
56pub enum ViolationSettingName {
57 #[serde(rename = "longTask")]
58 LongTask,
59 #[serde(rename = "longLayout")]
60 LongLayout,
61 #[serde(rename = "blockedEvent")]
62 BlockedEvent,
63 #[serde(rename = "blockedParser")]
64 BlockedParser,
65 #[serde(rename = "discouragedAPIUse")]
66 DiscouragedApiUse,
67 #[serde(rename = "handler")]
68 Handler,
69 #[serde(rename = "recurringHandler")]
70 RecurringHandler,
71}
72#[derive(Deserialize, Serialize, Debug, Clone, PartialEq)]
73pub struct LogEntry {
74 #[serde(rename = "source")]
75 pub source: LogEntrySource,
76 #[serde(rename = "level")]
77 pub level: LogEntryLevel,
78 #[serde(default)]
79 #[serde(rename = "text")]
80 pub text: String,
81 #[serde(skip_serializing_if = "Option::is_none")]
82 #[serde(rename = "category")]
83 pub category: Option<LogEntryCategory>,
84 #[serde(rename = "timestamp")]
85 pub timestamp: runtime::Timestamp,
86 #[serde(skip_serializing_if = "Option::is_none")]
87 #[serde(default)]
88 #[serde(rename = "url")]
89 pub url: Option<String>,
90 #[serde(skip_serializing_if = "Option::is_none")]
91 #[serde(default)]
92 #[serde(rename = "lineNumber")]
93 pub line_number: Option<JsUInt>,
94 #[serde(skip_serializing_if = "Option::is_none")]
95 #[serde(rename = "stackTrace")]
96 pub stack_trace: Option<runtime::StackTrace>,
97 #[serde(skip_serializing_if = "Option::is_none")]
98 #[serde(rename = "networkRequestId")]
99 pub network_request_id: Option<network::RequestId>,
100 #[serde(skip_serializing_if = "Option::is_none")]
101 #[serde(default)]
102 #[serde(rename = "workerId")]
103 pub worker_id: Option<String>,
104 #[serde(skip_serializing_if = "Option::is_none")]
105 #[serde(rename = "args")]
106 pub args: Option<Vec<runtime::RemoteObject>>,
107}
108#[derive(Deserialize, Serialize, Debug, Clone, PartialEq)]
109pub struct ViolationSetting {
110 #[serde(rename = "name")]
111 pub name: ViolationSettingName,
112 #[serde(default)]
113 #[serde(rename = "threshold")]
114 pub threshold: JsFloat,
115}
116#[derive(Deserialize, Serialize, Debug, Clone, PartialEq)]
117#[serde(rename_all = "camelCase")]
118pub struct Clear(pub Option<serde_json::Value>);
119#[derive(Deserialize, Serialize, Debug, Clone, PartialEq)]
120#[serde(rename_all = "camelCase")]
121pub struct Disable(pub Option<serde_json::Value>);
122#[derive(Deserialize, Serialize, Debug, Clone, PartialEq)]
123#[serde(rename_all = "camelCase")]
124pub struct Enable(pub Option<serde_json::Value>);
125#[derive(Deserialize, Serialize, Debug, Clone, PartialEq)]
126pub struct StartViolationsReport {
127 #[serde(rename = "config")]
128 pub config: Vec<ViolationSetting>,
129}
130#[derive(Deserialize, Serialize, Debug, Clone, PartialEq)]
131#[serde(rename_all = "camelCase")]
132pub struct StopViolationsReport(pub Option<serde_json::Value>);
133#[derive(Deserialize, Serialize, Debug, Clone, PartialEq)]
134#[serde(rename_all = "camelCase")]
135pub struct ClearReturnObject {}
136#[derive(Deserialize, Serialize, Debug, Clone, PartialEq)]
137#[serde(rename_all = "camelCase")]
138pub struct DisableReturnObject {}
139#[derive(Deserialize, Serialize, Debug, Clone, PartialEq)]
140#[serde(rename_all = "camelCase")]
141pub struct EnableReturnObject {}
142#[derive(Deserialize, Serialize, Debug, Clone, PartialEq)]
143#[serde(rename_all = "camelCase")]
144pub struct StartViolationsReportReturnObject {}
145#[derive(Deserialize, Serialize, Debug, Clone, PartialEq)]
146#[serde(rename_all = "camelCase")]
147pub struct StopViolationsReportReturnObject {}
148impl Method for Clear {
149 const NAME: &'static str = "Log.clear";
150 type ReturnObject = ClearReturnObject;
151}
152impl Method for Disable {
153 const NAME: &'static str = "Log.disable";
154 type ReturnObject = DisableReturnObject;
155}
156impl Method for Enable {
157 const NAME: &'static str = "Log.enable";
158 type ReturnObject = EnableReturnObject;
159}
160impl Method for StartViolationsReport {
161 const NAME: &'static str = "Log.startViolationsReport";
162 type ReturnObject = StartViolationsReportReturnObject;
163}
164impl Method for StopViolationsReport {
165 const NAME: &'static str = "Log.stopViolationsReport";
166 type ReturnObject = StopViolationsReportReturnObject;
167}
168pub mod events {
169 #[allow(unused_imports)]
170 use super::super::types::*;
171 #[allow(unused_imports)]
172 use serde::{Deserialize, Serialize};
173 #[derive(Deserialize, Serialize, Debug, Clone, PartialEq)]
174 pub struct EntryAddedEvent {
175 pub params: EntryAddedEventParams,
176 }
177 #[derive(Deserialize, Serialize, Debug, Clone, PartialEq)]
178 pub struct EntryAddedEventParams {
179 #[serde(rename = "entry")]
180 pub entry: super::LogEntry,
181 }
182}