1#[derive(serde::Serialize, serde::Deserialize)]
10#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
11pub struct ComponentData {
12 #[prost(string, tag = "1")]
15 pub template: ::prost::alloc::string::String,
16 #[prost(string, tag = "2")]
21 pub css: ::prost::alloc::string::String,
22 #[prost(string, tag = "3")]
31 pub css_href: ::prost::alloc::string::String,
32 #[prost(string, tag = "4")]
36 pub template_json: ::prost::alloc::string::String,
37 #[prost(string, tag = "5")]
40 pub template_functions: ::prost::alloc::string::String,
41}
42#[derive(serde::Serialize, serde::Deserialize)]
43#[derive(Clone, PartialEq, ::prost::Message)]
44pub struct WebUiProtocol {
45 #[prost(map = "string, message", tag = "1")]
46 pub fragments: ::std::collections::HashMap<
47 ::prost::alloc::string::String,
48 FragmentList,
49 >,
50 #[prost(string, repeated, tag = "2")]
54 pub tokens: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
55 #[prost(map = "string, message", tag = "3")]
57 pub components: ::std::collections::HashMap<
58 ::prost::alloc::string::String,
59 ComponentData,
60 >,
61 #[prost(enumeration = "CssStrategy", tag = "4")]
64 pub css_strategy: i32,
65 #[prost(enumeration = "DomStrategy", tag = "5")]
68 pub dom_strategy: i32,
69}
70#[derive(serde::Serialize, serde::Deserialize)]
72#[derive(Clone, PartialEq, ::prost::Message)]
73pub struct FragmentList {
74 #[prost(message, repeated, tag = "1")]
75 pub fragments: ::prost::alloc::vec::Vec<WebUiFragment>,
76}
77#[derive(serde::Serialize, serde::Deserialize)]
79#[derive(Clone, PartialEq, ::prost::Message)]
80pub struct WebUiFragment {
81 #[prost(oneof = "web_ui_fragment::Fragment", tags = "1, 2, 3, 4, 5, 6, 7, 8, 9")]
82 pub fragment: ::core::option::Option<web_ui_fragment::Fragment>,
83}
84pub mod web_ui_fragment {
86 #[derive(serde::Serialize, serde::Deserialize)]
87 #[derive(Clone, PartialEq, ::prost::Oneof)]
88 pub enum Fragment {
89 #[prost(message, tag = "1")]
90 Raw(super::WebUiFragmentRaw),
91 #[prost(message, tag = "2")]
92 Component(super::WebUiFragmentComponent),
93 #[prost(message, tag = "3")]
94 ForLoop(super::WebUiFragmentFor),
95 #[prost(message, tag = "4")]
96 Signal(super::WebUiFragmentSignal),
97 #[prost(message, tag = "5")]
98 IfCond(super::WebUiFragmentIf),
99 #[prost(message, tag = "6")]
100 Attribute(super::WebUiFragmentAttribute),
101 #[prost(message, tag = "7")]
102 Plugin(super::WebUiFragmentPlugin),
103 #[prost(message, tag = "8")]
104 Route(super::WebUiFragmentRoute),
105 #[prost(message, tag = "9")]
106 Outlet(super::WebUiFragmentOutlet),
107 }
108}
109#[derive(serde::Serialize, serde::Deserialize)]
112#[derive(Clone, PartialEq, ::prost::Message)]
113pub struct WebUiFragmentRoute {
114 #[prost(string, tag = "1")]
115 pub path: ::prost::alloc::string::String,
116 #[prost(string, tag = "2")]
117 pub fragment_id: ::prost::alloc::string::String,
118 #[prost(bool, tag = "3")]
119 pub exact: bool,
120 #[prost(message, repeated, tag = "4")]
122 pub children: ::prost::alloc::vec::Vec<WebUiFragmentRoute>,
123 #[prost(string, tag = "5")]
126 pub allowed_query: ::prost::alloc::string::String,
127 #[prost(bool, tag = "6")]
130 pub keep_alive: bool,
131 #[prost(string, repeated, tag = "7")]
134 pub cache_tags: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
135 #[prost(string, repeated, tag = "8")]
139 pub invalidates: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
140 #[prost(string, tag = "9")]
143 pub pending_component: ::prost::alloc::string::String,
144 #[prost(string, tag = "10")]
147 pub error_component: ::prost::alloc::string::String,
148}
149#[derive(serde::Serialize, serde::Deserialize)]
152#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
153pub struct WebUiFragmentOutlet {}
154#[derive(serde::Serialize, serde::Deserialize)]
158#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
159pub struct WebUiFragmentPlugin {
160 #[prost(bytes = "vec", tag = "1")]
161 pub data: ::prost::alloc::vec::Vec<u8>,
162}
163#[derive(serde::Serialize, serde::Deserialize)]
165#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
166pub struct WebUiFragmentRaw {
167 #[prost(string, tag = "1")]
168 pub value: ::prost::alloc::string::String,
169}
170#[derive(serde::Serialize, serde::Deserialize)]
172#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
173pub struct WebUiFragmentComponent {
174 #[prost(string, tag = "1")]
175 pub fragment_id: ::prost::alloc::string::String,
176}
177#[derive(serde::Serialize, serde::Deserialize)]
179#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
180pub struct WebUiFragmentFor {
181 #[prost(string, tag = "1")]
182 pub item: ::prost::alloc::string::String,
183 #[prost(string, tag = "2")]
184 pub collection: ::prost::alloc::string::String,
185 #[prost(string, tag = "3")]
186 pub fragment_id: ::prost::alloc::string::String,
187}
188#[derive(serde::Serialize, serde::Deserialize)]
190#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
191pub struct WebUiFragmentSignal {
192 #[prost(string, tag = "1")]
193 pub value: ::prost::alloc::string::String,
194 #[prost(bool, tag = "2")]
195 pub raw: bool,
196}
197#[derive(serde::Serialize, serde::Deserialize)]
199#[derive(Clone, PartialEq, ::prost::Message)]
200pub struct WebUiFragmentIf {
201 #[prost(message, optional, tag = "1")]
202 pub condition: ::core::option::Option<ConditionExpr>,
203 #[prost(string, tag = "2")]
204 pub fragment_id: ::prost::alloc::string::String,
205}
206#[derive(serde::Serialize, serde::Deserialize)]
208#[derive(Clone, PartialEq, ::prost::Message)]
209pub struct WebUiFragmentAttribute {
210 #[prost(string, tag = "1")]
211 pub name: ::prost::alloc::string::String,
212 #[prost(string, tag = "2")]
214 pub value: ::prost::alloc::string::String,
215 #[prost(string, tag = "3")]
217 pub template: ::prost::alloc::string::String,
218 #[prost(bool, tag = "4")]
220 pub complex: bool,
221 #[prost(bool, tag = "5")]
223 pub attr_start: bool,
224 #[prost(bool, tag = "6")]
226 pub attr_skip: bool,
227 #[prost(bool, tag = "7")]
229 pub raw_value: bool,
230 #[prost(message, optional, tag = "8")]
232 pub condition_tree: ::core::option::Option<ConditionExpr>,
233}
234#[derive(serde::Serialize, serde::Deserialize)]
236#[derive(Clone, PartialEq, ::prost::Message)]
237pub struct ConditionExpr {
238 #[prost(oneof = "condition_expr::Expr", tags = "1, 2, 3, 4")]
239 pub expr: ::core::option::Option<condition_expr::Expr>,
240}
241pub mod condition_expr {
243 #[derive(serde::Serialize, serde::Deserialize)]
244 #[derive(Clone, PartialEq, ::prost::Oneof)]
245 pub enum Expr {
246 #[prost(message, tag = "1")]
247 Predicate(super::Predicate),
248 #[prost(message, tag = "2")]
249 Not(::prost::alloc::boxed::Box<super::NotCondition>),
250 #[prost(message, tag = "3")]
251 Compound(::prost::alloc::boxed::Box<super::CompoundCondition>),
252 #[prost(message, tag = "4")]
253 Identifier(super::IdentifierCondition),
254 }
255}
256#[derive(serde::Serialize, serde::Deserialize)]
258#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
259pub struct Predicate {
260 #[prost(string, tag = "1")]
261 pub left: ::prost::alloc::string::String,
262 #[prost(enumeration = "ComparisonOperator", tag = "2")]
263 pub operator: i32,
264 #[prost(string, tag = "3")]
265 pub right: ::prost::alloc::string::String,
266}
267#[derive(serde::Serialize, serde::Deserialize)]
269#[derive(Clone, PartialEq, ::prost::Message)]
270pub struct NotCondition {
271 #[prost(message, optional, boxed, tag = "1")]
272 pub condition: ::core::option::Option<::prost::alloc::boxed::Box<ConditionExpr>>,
273}
274#[derive(serde::Serialize, serde::Deserialize)]
276#[derive(Clone, PartialEq, ::prost::Message)]
277pub struct CompoundCondition {
278 #[prost(message, optional, boxed, tag = "1")]
279 pub left: ::core::option::Option<::prost::alloc::boxed::Box<ConditionExpr>>,
280 #[prost(enumeration = "LogicalOperator", tag = "2")]
281 pub op: i32,
282 #[prost(message, optional, boxed, tag = "3")]
283 pub right: ::core::option::Option<::prost::alloc::boxed::Box<ConditionExpr>>,
284}
285#[derive(serde::Serialize, serde::Deserialize)]
287#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
288pub struct IdentifierCondition {
289 #[prost(string, tag = "1")]
290 pub value: ::prost::alloc::string::String,
291}
292#[derive(serde::Serialize, serde::Deserialize)]
294#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
295#[repr(i32)]
296pub enum CssStrategy {
297 Link = 0,
298 Style = 1,
299 Module = 2,
300}
301impl CssStrategy {
302 pub fn as_str_name(&self) -> &'static str {
307 match self {
308 Self::Link => "CSS_STRATEGY_LINK",
309 Self::Style => "CSS_STRATEGY_STYLE",
310 Self::Module => "CSS_STRATEGY_MODULE",
311 }
312 }
313 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
315 match value {
316 "CSS_STRATEGY_LINK" => Some(Self::Link),
317 "CSS_STRATEGY_STYLE" => Some(Self::Style),
318 "CSS_STRATEGY_MODULE" => Some(Self::Module),
319 _ => None,
320 }
321 }
322}
323#[derive(serde::Serialize, serde::Deserialize)]
325#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
326#[repr(i32)]
327pub enum DomStrategy {
328 Shadow = 0,
329 Light = 1,
330}
331impl DomStrategy {
332 pub fn as_str_name(&self) -> &'static str {
337 match self {
338 Self::Shadow => "DOM_STRATEGY_SHADOW",
339 Self::Light => "DOM_STRATEGY_LIGHT",
340 }
341 }
342 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
344 match value {
345 "DOM_STRATEGY_SHADOW" => Some(Self::Shadow),
346 "DOM_STRATEGY_LIGHT" => Some(Self::Light),
347 _ => None,
348 }
349 }
350}
351#[derive(serde::Serialize, serde::Deserialize)]
352#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
353#[repr(i32)]
354pub enum LogicalOperator {
355 Unspecified = 0,
356 And = 1,
357 Or = 2,
358}
359impl LogicalOperator {
360 pub fn as_str_name(&self) -> &'static str {
365 match self {
366 Self::Unspecified => "LOGICAL_OPERATOR_UNSPECIFIED",
367 Self::And => "AND",
368 Self::Or => "OR",
369 }
370 }
371 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
373 match value {
374 "LOGICAL_OPERATOR_UNSPECIFIED" => Some(Self::Unspecified),
375 "AND" => Some(Self::And),
376 "OR" => Some(Self::Or),
377 _ => None,
378 }
379 }
380}
381#[derive(serde::Serialize, serde::Deserialize)]
382#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
383#[repr(i32)]
384pub enum ComparisonOperator {
385 Unspecified = 0,
386 GreaterThan = 1,
387 LessThan = 2,
388 Equal = 3,
389 NotEqual = 4,
390 GreaterThanOrEqual = 5,
391 LessThanOrEqual = 6,
392}
393impl ComparisonOperator {
394 pub fn as_str_name(&self) -> &'static str {
399 match self {
400 Self::Unspecified => "COMPARISON_OPERATOR_UNSPECIFIED",
401 Self::GreaterThan => "GREATER_THAN",
402 Self::LessThan => "LESS_THAN",
403 Self::Equal => "EQUAL",
404 Self::NotEqual => "NOT_EQUAL",
405 Self::GreaterThanOrEqual => "GREATER_THAN_OR_EQUAL",
406 Self::LessThanOrEqual => "LESS_THAN_OR_EQUAL",
407 }
408 }
409 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
411 match value {
412 "COMPARISON_OPERATOR_UNSPECIFIED" => Some(Self::Unspecified),
413 "GREATER_THAN" => Some(Self::GreaterThan),
414 "LESS_THAN" => Some(Self::LessThan),
415 "EQUAL" => Some(Self::Equal),
416 "NOT_EQUAL" => Some(Self::NotEqual),
417 "GREATER_THAN_OR_EQUAL" => Some(Self::GreaterThanOrEqual),
418 "LESS_THAN_OR_EQUAL" => Some(Self::LessThanOrEqual),
419 _ => None,
420 }
421 }
422}