viewpoint_cdp/protocol/target_domain/
mod.rs1use serde::{Deserialize, Serialize};
6
7#[derive(Debug, Clone, Deserialize)]
9#[serde(rename_all = "camelCase")]
10pub struct TargetInfo {
11 pub target_id: String,
13 #[serde(rename = "type")]
15 pub target_type: String,
16 pub title: String,
18 pub url: String,
20 pub attached: bool,
22 pub browser_context_id: Option<String>,
24 pub opener_id: Option<String>,
26}
27
28#[derive(Debug, Clone, Serialize, Default)]
30#[serde(rename_all = "camelCase")]
31pub struct CreateBrowserContextParams {
32 #[serde(skip_serializing_if = "Option::is_none")]
34 pub dispose_on_detach: Option<bool>,
35 #[serde(skip_serializing_if = "Option::is_none")]
37 pub proxy_server: Option<String>,
38 #[serde(skip_serializing_if = "Option::is_none")]
40 pub proxy_bypass_list: Option<String>,
41}
42
43#[derive(Debug, Clone, Deserialize)]
45#[serde(rename_all = "camelCase")]
46pub struct CreateBrowserContextResult {
47 pub browser_context_id: String,
49}
50
51#[derive(Debug, Clone, Serialize)]
53#[serde(rename_all = "camelCase")]
54pub struct DisposeBrowserContextParams {
55 pub browser_context_id: String,
57}
58
59#[derive(Debug, Clone, Serialize)]
61#[serde(rename_all = "camelCase")]
62pub struct CreateTargetParams {
63 pub url: String,
65 #[serde(skip_serializing_if = "Option::is_none")]
67 pub width: Option<u32>,
68 #[serde(skip_serializing_if = "Option::is_none")]
70 pub height: Option<u32>,
71 #[serde(skip_serializing_if = "Option::is_none")]
73 pub browser_context_id: Option<String>,
74 #[serde(skip_serializing_if = "Option::is_none")]
76 pub background: Option<bool>,
77 #[serde(skip_serializing_if = "Option::is_none")]
79 pub new_window: Option<bool>,
80}
81
82#[derive(Debug, Clone, Deserialize)]
84#[serde(rename_all = "camelCase")]
85pub struct CreateTargetResult {
86 pub target_id: String,
88}
89
90#[derive(Debug, Clone, Serialize)]
92#[serde(rename_all = "camelCase")]
93pub struct AttachToTargetParams {
94 pub target_id: String,
96 #[serde(skip_serializing_if = "Option::is_none")]
98 pub flatten: Option<bool>,
99}
100
101#[derive(Debug, Clone, Deserialize)]
103#[serde(rename_all = "camelCase")]
104pub struct AttachToTargetResult {
105 pub session_id: String,
107}
108
109#[derive(Debug, Clone, Serialize)]
111#[serde(rename_all = "camelCase")]
112pub struct CloseTargetParams {
113 pub target_id: String,
115}
116
117#[derive(Debug, Clone, Deserialize)]
119pub struct CloseTargetResult {
120 pub success: bool,
122}
123
124#[derive(Debug, Clone, Serialize)]
126#[serde(rename_all = "camelCase")]
127pub struct DetachFromTargetParams {
128 #[serde(skip_serializing_if = "Option::is_none")]
130 pub session_id: Option<String>,
131}
132
133#[derive(Debug, Clone, Serialize, Default)]
135pub struct GetTargetsParams {
136 #[serde(skip_serializing_if = "Option::is_none")]
138 pub filter: Option<Vec<TargetFilter>>,
139}
140
141#[derive(Debug, Clone, Serialize)]
143#[serde(rename_all = "camelCase")]
144pub struct TargetFilter {
145 #[serde(rename = "type", skip_serializing_if = "Option::is_none")]
147 pub target_type: Option<String>,
148 #[serde(skip_serializing_if = "Option::is_none")]
150 pub exclude: Option<bool>,
151}
152
153#[derive(Debug, Clone, Deserialize)]
155#[serde(rename_all = "camelCase")]
156pub struct GetTargetsResult {
157 pub target_infos: Vec<TargetInfo>,
159}
160
161#[derive(Debug, Clone, Deserialize)]
163#[serde(rename_all = "camelCase")]
164pub struct GetBrowserContextsResult {
165 pub browser_context_ids: Vec<String>,
167}
168
169#[derive(Debug, Clone, Deserialize)]
171#[serde(rename_all = "camelCase")]
172pub struct TargetCreatedEvent {
173 pub target_info: TargetInfo,
175}
176
177#[derive(Debug, Clone, Deserialize)]
179#[serde(rename_all = "camelCase")]
180pub struct TargetDestroyedEvent {
181 pub target_id: String,
183}
184
185#[derive(Debug, Clone, Deserialize)]
187#[serde(rename_all = "camelCase")]
188pub struct AttachedToTargetEvent {
189 pub session_id: String,
191 pub target_info: TargetInfo,
193 pub waiting_for_debugger: bool,
195}