jacquard_api/pub_leaflet/blocks/
unordered_list.rs

1// @generated by jacquard-lexicon. DO NOT EDIT.
2//
3// Lexicon: pub.leaflet.blocks.unorderedList
4//
5// This file was automatically generated from Lexicon schemas.
6// Any manual changes will be overwritten on the next regeneration.
7
8#[jacquard_derive::lexicon]
9#[derive(
10    serde::Serialize,
11    serde::Deserialize,
12    Debug,
13    Clone,
14    PartialEq,
15    Eq,
16    jacquard_derive::IntoStatic,
17    bon::Builder
18)]
19#[serde(rename_all = "camelCase")]
20pub struct ListItem<'a> {
21    #[serde(skip_serializing_if = "std::option::Option::is_none")]
22    #[builder(into)]
23    #[serde(borrow)]
24    pub children: Option<Vec<crate::pub_leaflet::blocks::unordered_list::ListItem<'a>>>,
25    #[serde(borrow)]
26    pub content: ListItemContent<'a>,
27}
28
29#[jacquard_derive::open_union]
30#[derive(
31    serde::Serialize,
32    serde::Deserialize,
33    Debug,
34    Clone,
35    PartialEq,
36    Eq,
37    jacquard_derive::IntoStatic
38)]
39#[serde(tag = "$type")]
40#[serde(bound(deserialize = "'de: 'a"))]
41pub enum ListItemContent<'a> {
42    #[serde(rename = "pub.leaflet.blocks.text")]
43    Text(Box<crate::pub_leaflet::blocks::text::Text<'a>>),
44    #[serde(rename = "pub.leaflet.blocks.header")]
45    Header(Box<crate::pub_leaflet::blocks::header::Header<'a>>),
46    #[serde(rename = "pub.leaflet.blocks.image")]
47    Image(Box<crate::pub_leaflet::blocks::image::Image<'a>>),
48}
49
50#[jacquard_derive::lexicon]
51#[derive(
52    serde::Serialize,
53    serde::Deserialize,
54    Debug,
55    Clone,
56    PartialEq,
57    Eq,
58    jacquard_derive::IntoStatic,
59    bon::Builder
60)]
61#[serde(rename_all = "camelCase")]
62pub struct UnorderedList<'a> {
63    #[serde(borrow)]
64    pub children: Vec<crate::pub_leaflet::blocks::unordered_list::ListItem<'a>>,
65}