electron_sys/interface/
load_url_options.rs

1use crate::interface::Referrer;
2use js_sys::JsString;
3use wasm_bindgen::prelude::*;
4
5#[wasm_bindgen]
6#[derive(Clone, Debug, PartialEq)]
7pub struct LoadUrlOptions {
8    base_url_for_data_url: Option<JsString>,
9    extra_headers: Option<JsString>,
10    http_referrer: Referrer,
11    post_data: Box<[JsValue]>,
12    user_agent: Option<JsString>,
13}
14
15#[wasm_bindgen]
16impl LoadUrlOptions {
17    #[wasm_bindgen(constructor)]
18    pub fn new(
19        base_url_for_data_url: Option<JsString>,
20        extra_headers: Option<JsString>,
21        http_referrer: Referrer,
22        post_data: Box<[JsValue]>,
23        user_agent: Option<JsString>,
24    ) -> LoadUrlOptions {
25        LoadUrlOptions {
26            base_url_for_data_url,
27            extra_headers,
28            http_referrer,
29            post_data,
30            user_agent,
31        }
32    }
33
34    #[wasm_bindgen(getter, js_name = "baseURLForDataURL")]
35    pub fn base_url_for_data_url(&self) -> Option<JsString> {
36        self.base_url_for_data_url.clone()
37    }
38
39    #[wasm_bindgen(setter)]
40    pub fn set_base_url_for_data_url(&mut self, value: Option<JsString>) {
41        self.base_url_for_data_url = value;
42    }
43
44    #[wasm_bindgen(getter, js_name = "extraHeader")]
45    pub fn extra_headers(&self) -> Option<JsString> {
46        self.extra_headers.clone()
47    }
48
49    #[wasm_bindgen(setter)]
50    pub fn set_extra_headers(&mut self, value: Option<JsString>) {
51        self.extra_headers = value;
52    }
53
54    #[wasm_bindgen(getter, js_name = "httpReferrer")]
55    pub fn http_referrer(&self) -> Referrer {
56        self.http_referrer.clone()
57    }
58
59    #[wasm_bindgen(setter)]
60    pub fn set_http_referrer(&mut self, value: Referrer) {
61        self.http_referrer = value;
62    }
63
64    #[wasm_bindgen(getter, js_name = "postData")]
65    pub fn post_data(&self) -> Box<[JsValue]> {
66        self.post_data.clone()
67    }
68
69    #[wasm_bindgen(setter)]
70    pub fn set_post_data(&mut self, value: Box<[JsValue]>) {
71        self.post_data = value;
72    }
73
74    #[wasm_bindgen(getter, js_name = "userAgent")]
75    pub fn user_agent(&self) -> Option<JsString> {
76        self.user_agent.clone()
77    }
78
79    #[wasm_bindgen(setter)]
80    pub fn set_user_agent(&mut self, value: Option<JsString>) {
81        self.user_agent = value;
82    }
83}