1#[derive(serde::Serialize, serde::Deserialize)]
10#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
11pub struct ComponentData {
12 #[prost(string, tag = "1")]
16 pub template: ::prost::alloc::string::String,
17 #[prost(string, tag = "2")]
22 pub css: ::prost::alloc::string::String,
23 #[prost(string, tag = "3")]
32 pub css_href: ::prost::alloc::string::String,
33}
34#[derive(serde::Serialize, serde::Deserialize)]
35#[derive(Clone, PartialEq, ::prost::Message)]
36pub struct WebUiProtocol {
37 #[prost(map = "string, message", tag = "1")]
38 pub fragments: ::std::collections::HashMap<
39 ::prost::alloc::string::String,
40 FragmentList,
41 >,
42 #[prost(string, repeated, tag = "2")]
46 pub tokens: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
47 #[prost(map = "string, message", tag = "3")]
49 pub components: ::std::collections::HashMap<
50 ::prost::alloc::string::String,
51 ComponentData,
52 >,
53 #[prost(enumeration = "CssStrategy", tag = "4")]
56 pub css_strategy: i32,
57 #[prost(enumeration = "DomStrategy", tag = "5")]
60 pub dom_strategy: i32,
61}
62#[derive(serde::Serialize, serde::Deserialize)]
64#[derive(Clone, PartialEq, ::prost::Message)]
65pub struct FragmentList {
66 #[prost(message, repeated, tag = "1")]
67 pub fragments: ::prost::alloc::vec::Vec<WebUiFragment>,
68}
69#[derive(serde::Serialize, serde::Deserialize)]
71#[derive(Clone, PartialEq, ::prost::Message)]
72pub struct WebUiFragment {
73 #[prost(oneof = "web_ui_fragment::Fragment", tags = "1, 2, 3, 4, 5, 6, 7, 8, 9")]
74 pub fragment: ::core::option::Option<web_ui_fragment::Fragment>,
75}
76pub mod web_ui_fragment {
78 #[derive(serde::Serialize, serde::Deserialize)]
79 #[derive(Clone, PartialEq, ::prost::Oneof)]
80 pub enum Fragment {
81 #[prost(message, tag = "1")]
82 Raw(super::WebUiFragmentRaw),
83 #[prost(message, tag = "2")]
84 Component(super::WebUiFragmentComponent),
85 #[prost(message, tag = "3")]
86 ForLoop(super::WebUiFragmentFor),
87 #[prost(message, tag = "4")]
88 Signal(super::WebUiFragmentSignal),
89 #[prost(message, tag = "5")]
90 IfCond(super::WebUiFragmentIf),
91 #[prost(message, tag = "6")]
92 Attribute(super::WebUiFragmentAttribute),
93 #[prost(message, tag = "7")]
94 Plugin(super::WebUiFragmentPlugin),
95 #[prost(message, tag = "8")]
96 Route(super::WebUiFragmentRoute),
97 #[prost(message, tag = "9")]
98 Outlet(super::WebUiFragmentOutlet),
99 }
100}
101#[derive(serde::Serialize, serde::Deserialize)]
104#[derive(Clone, PartialEq, ::prost::Message)]
105pub struct WebUiFragmentRoute {
106 #[prost(string, tag = "1")]
107 pub path: ::prost::alloc::string::String,
108 #[prost(string, tag = "2")]
109 pub fragment_id: ::prost::alloc::string::String,
110 #[prost(bool, tag = "3")]
111 pub exact: bool,
112 #[prost(message, repeated, tag = "4")]
114 pub children: ::prost::alloc::vec::Vec<WebUiFragmentRoute>,
115 #[prost(string, tag = "5")]
118 pub allowed_query: ::prost::alloc::string::String,
119 #[prost(bool, tag = "6")]
122 pub keep_alive: bool,
123 #[prost(string, repeated, tag = "7")]
126 pub cache_tags: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
127 #[prost(string, repeated, tag = "8")]
131 pub invalidates: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
132 #[prost(string, tag = "9")]
135 pub pending_component: ::prost::alloc::string::String,
136 #[prost(string, tag = "10")]
139 pub error_component: ::prost::alloc::string::String,
140}
141#[derive(serde::Serialize, serde::Deserialize)]
144#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
145pub struct WebUiFragmentOutlet {}
146#[derive(serde::Serialize, serde::Deserialize)]
150#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
151pub struct WebUiFragmentPlugin {
152 #[prost(bytes = "vec", tag = "1")]
153 pub data: ::prost::alloc::vec::Vec<u8>,
154}
155#[derive(serde::Serialize, serde::Deserialize)]
157#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
158pub struct WebUiFragmentRaw {
159 #[prost(string, tag = "1")]
160 pub value: ::prost::alloc::string::String,
161}
162#[derive(serde::Serialize, serde::Deserialize)]
164#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
165pub struct WebUiFragmentComponent {
166 #[prost(string, tag = "1")]
167 pub fragment_id: ::prost::alloc::string::String,
168}
169#[derive(serde::Serialize, serde::Deserialize)]
171#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
172pub struct WebUiFragmentFor {
173 #[prost(string, tag = "1")]
174 pub item: ::prost::alloc::string::String,
175 #[prost(string, tag = "2")]
176 pub collection: ::prost::alloc::string::String,
177 #[prost(string, tag = "3")]
178 pub fragment_id: ::prost::alloc::string::String,
179}
180#[derive(serde::Serialize, serde::Deserialize)]
182#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
183pub struct WebUiFragmentSignal {
184 #[prost(string, tag = "1")]
185 pub value: ::prost::alloc::string::String,
186 #[prost(bool, tag = "2")]
187 pub raw: bool,
188}
189#[derive(serde::Serialize, serde::Deserialize)]
191#[derive(Clone, PartialEq, ::prost::Message)]
192pub struct WebUiFragmentIf {
193 #[prost(message, optional, tag = "1")]
194 pub condition: ::core::option::Option<ConditionExpr>,
195 #[prost(string, tag = "2")]
196 pub fragment_id: ::prost::alloc::string::String,
197}
198#[derive(serde::Serialize, serde::Deserialize)]
200#[derive(Clone, PartialEq, ::prost::Message)]
201pub struct WebUiFragmentAttribute {
202 #[prost(string, tag = "1")]
203 pub name: ::prost::alloc::string::String,
204 #[prost(string, tag = "2")]
206 pub value: ::prost::alloc::string::String,
207 #[prost(string, tag = "3")]
209 pub template: ::prost::alloc::string::String,
210 #[prost(bool, tag = "4")]
212 pub complex: bool,
213 #[prost(bool, tag = "5")]
215 pub attr_start: bool,
216 #[prost(bool, tag = "6")]
218 pub attr_skip: bool,
219 #[prost(bool, tag = "7")]
221 pub raw_value: bool,
222 #[prost(message, optional, tag = "8")]
224 pub condition_tree: ::core::option::Option<ConditionExpr>,
225}
226#[derive(serde::Serialize, serde::Deserialize)]
228#[derive(Clone, PartialEq, ::prost::Message)]
229pub struct ConditionExpr {
230 #[prost(oneof = "condition_expr::Expr", tags = "1, 2, 3, 4")]
231 pub expr: ::core::option::Option<condition_expr::Expr>,
232}
233pub mod condition_expr {
235 #[derive(serde::Serialize, serde::Deserialize)]
236 #[derive(Clone, PartialEq, ::prost::Oneof)]
237 pub enum Expr {
238 #[prost(message, tag = "1")]
239 Predicate(super::Predicate),
240 #[prost(message, tag = "2")]
241 Not(::prost::alloc::boxed::Box<super::NotCondition>),
242 #[prost(message, tag = "3")]
243 Compound(::prost::alloc::boxed::Box<super::CompoundCondition>),
244 #[prost(message, tag = "4")]
245 Identifier(super::IdentifierCondition),
246 }
247}
248#[derive(serde::Serialize, serde::Deserialize)]
250#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
251pub struct Predicate {
252 #[prost(string, tag = "1")]
253 pub left: ::prost::alloc::string::String,
254 #[prost(enumeration = "ComparisonOperator", tag = "2")]
255 pub operator: i32,
256 #[prost(string, tag = "3")]
257 pub right: ::prost::alloc::string::String,
258}
259#[derive(serde::Serialize, serde::Deserialize)]
261#[derive(Clone, PartialEq, ::prost::Message)]
262pub struct NotCondition {
263 #[prost(message, optional, boxed, tag = "1")]
264 pub condition: ::core::option::Option<::prost::alloc::boxed::Box<ConditionExpr>>,
265}
266#[derive(serde::Serialize, serde::Deserialize)]
268#[derive(Clone, PartialEq, ::prost::Message)]
269pub struct CompoundCondition {
270 #[prost(message, optional, boxed, tag = "1")]
271 pub left: ::core::option::Option<::prost::alloc::boxed::Box<ConditionExpr>>,
272 #[prost(enumeration = "LogicalOperator", tag = "2")]
273 pub op: i32,
274 #[prost(message, optional, boxed, tag = "3")]
275 pub right: ::core::option::Option<::prost::alloc::boxed::Box<ConditionExpr>>,
276}
277#[derive(serde::Serialize, serde::Deserialize)]
279#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
280pub struct IdentifierCondition {
281 #[prost(string, tag = "1")]
282 pub value: ::prost::alloc::string::String,
283}
284#[derive(serde::Serialize, serde::Deserialize)]
286#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
287#[repr(i32)]
288pub enum CssStrategy {
289 Link = 0,
290 Style = 1,
291 Module = 2,
292}
293impl CssStrategy {
294 pub fn as_str_name(&self) -> &'static str {
299 match self {
300 Self::Link => "CSS_STRATEGY_LINK",
301 Self::Style => "CSS_STRATEGY_STYLE",
302 Self::Module => "CSS_STRATEGY_MODULE",
303 }
304 }
305 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
307 match value {
308 "CSS_STRATEGY_LINK" => Some(Self::Link),
309 "CSS_STRATEGY_STYLE" => Some(Self::Style),
310 "CSS_STRATEGY_MODULE" => Some(Self::Module),
311 _ => None,
312 }
313 }
314}
315#[derive(serde::Serialize, serde::Deserialize)]
317#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
318#[repr(i32)]
319pub enum DomStrategy {
320 Shadow = 0,
321 Light = 1,
322}
323impl DomStrategy {
324 pub fn as_str_name(&self) -> &'static str {
329 match self {
330 Self::Shadow => "DOM_STRATEGY_SHADOW",
331 Self::Light => "DOM_STRATEGY_LIGHT",
332 }
333 }
334 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
336 match value {
337 "DOM_STRATEGY_SHADOW" => Some(Self::Shadow),
338 "DOM_STRATEGY_LIGHT" => Some(Self::Light),
339 _ => None,
340 }
341 }
342}
343#[derive(serde::Serialize, serde::Deserialize)]
344#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
345#[repr(i32)]
346pub enum LogicalOperator {
347 Unspecified = 0,
348 And = 1,
349 Or = 2,
350}
351impl LogicalOperator {
352 pub fn as_str_name(&self) -> &'static str {
357 match self {
358 Self::Unspecified => "LOGICAL_OPERATOR_UNSPECIFIED",
359 Self::And => "AND",
360 Self::Or => "OR",
361 }
362 }
363 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
365 match value {
366 "LOGICAL_OPERATOR_UNSPECIFIED" => Some(Self::Unspecified),
367 "AND" => Some(Self::And),
368 "OR" => Some(Self::Or),
369 _ => None,
370 }
371 }
372}
373#[derive(serde::Serialize, serde::Deserialize)]
374#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
375#[repr(i32)]
376pub enum ComparisonOperator {
377 Unspecified = 0,
378 GreaterThan = 1,
379 LessThan = 2,
380 Equal = 3,
381 NotEqual = 4,
382 GreaterThanOrEqual = 5,
383 LessThanOrEqual = 6,
384}
385impl ComparisonOperator {
386 pub fn as_str_name(&self) -> &'static str {
391 match self {
392 Self::Unspecified => "COMPARISON_OPERATOR_UNSPECIFIED",
393 Self::GreaterThan => "GREATER_THAN",
394 Self::LessThan => "LESS_THAN",
395 Self::Equal => "EQUAL",
396 Self::NotEqual => "NOT_EQUAL",
397 Self::GreaterThanOrEqual => "GREATER_THAN_OR_EQUAL",
398 Self::LessThanOrEqual => "LESS_THAN_OR_EQUAL",
399 }
400 }
401 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
403 match value {
404 "COMPARISON_OPERATOR_UNSPECIFIED" => Some(Self::Unspecified),
405 "GREATER_THAN" => Some(Self::GreaterThan),
406 "LESS_THAN" => Some(Self::LessThan),
407 "EQUAL" => Some(Self::Equal),
408 "NOT_EQUAL" => Some(Self::NotEqual),
409 "GREATER_THAN_OR_EQUAL" => Some(Self::GreaterThanOrEqual),
410 "LESS_THAN_OR_EQUAL" => Some(Self::LessThanOrEqual),
411 _ => None,
412 }
413 }
414}