A better Rust ATProto crate
at main 4.5 kB view raw
1// @generated by jacquard-lexicon. DO NOT EDIT. 2// 3// Lexicon: pub.leaflet.pages.linearDocument 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 Block<'a> { 21 #[serde(skip_serializing_if = "std::option::Option::is_none")] 22 #[builder(into)] 23 #[serde(borrow)] 24 pub alignment: Option<jacquard_common::CowStr<'a>>, 25 #[serde(borrow)] 26 pub block: BlockBlock<'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 BlockBlock<'a> { 42 #[serde(rename = "pub.leaflet.blocks.iframe")] 43 Iframe(Box<crate::pub_leaflet::blocks::iframe::Iframe<'a>>), 44 #[serde(rename = "pub.leaflet.blocks.text")] 45 Text(Box<crate::pub_leaflet::blocks::text::Text<'a>>), 46 #[serde(rename = "pub.leaflet.blocks.blockquote")] 47 Blockquote(Box<crate::pub_leaflet::blocks::blockquote::Blockquote<'a>>), 48 #[serde(rename = "pub.leaflet.blocks.header")] 49 Header(Box<crate::pub_leaflet::blocks::header::Header<'a>>), 50 #[serde(rename = "pub.leaflet.blocks.image")] 51 Image(Box<crate::pub_leaflet::blocks::image::Image<'a>>), 52 #[serde(rename = "pub.leaflet.blocks.unorderedList")] 53 UnorderedList(Box<crate::pub_leaflet::blocks::unordered_list::UnorderedList<'a>>), 54 #[serde(rename = "pub.leaflet.blocks.website")] 55 Website(Box<crate::pub_leaflet::blocks::website::Website<'a>>), 56 #[serde(rename = "pub.leaflet.blocks.math")] 57 Math(Box<crate::pub_leaflet::blocks::math::Math<'a>>), 58 #[serde(rename = "pub.leaflet.blocks.code")] 59 Code(Box<crate::pub_leaflet::blocks::code::Code<'a>>), 60 #[serde(rename = "pub.leaflet.blocks.horizontalRule")] 61 HorizontalRule(Box<crate::pub_leaflet::blocks::horizontal_rule::HorizontalRule<'a>>), 62 #[serde(rename = "pub.leaflet.blocks.bskyPost")] 63 BskyPost(Box<crate::pub_leaflet::blocks::bsky_post::BskyPost<'a>>), 64} 65 66#[jacquard_derive::lexicon] 67#[derive( 68 serde::Serialize, 69 serde::Deserialize, 70 Debug, 71 Clone, 72 PartialEq, 73 Eq, 74 jacquard_derive::IntoStatic, 75 Default 76)] 77#[serde(rename_all = "camelCase")] 78pub struct LinearDocument<'a> { 79 #[serde(skip_serializing_if = "std::option::Option::is_none")] 80 #[serde(borrow)] 81 pub blocks: std::option::Option< 82 Vec<crate::pub_leaflet::pages::linear_document::Block<'a>>, 83 >, 84} 85 86#[jacquard_derive::lexicon] 87#[derive( 88 serde::Serialize, 89 serde::Deserialize, 90 Debug, 91 Clone, 92 PartialEq, 93 Eq, 94 jacquard_derive::IntoStatic, 95 bon::Builder 96)] 97#[serde(rename_all = "camelCase")] 98pub struct Position<'a> { 99 pub block: Vec<i64>, 100 pub offset: i64, 101} 102 103#[jacquard_derive::lexicon] 104#[derive( 105 serde::Serialize, 106 serde::Deserialize, 107 Debug, 108 Clone, 109 PartialEq, 110 Eq, 111 jacquard_derive::IntoStatic, 112 bon::Builder 113)] 114#[serde(rename_all = "camelCase")] 115pub struct Quote<'a> { 116 #[serde(borrow)] 117 pub end: crate::pub_leaflet::pages::linear_document::Position<'a>, 118 #[serde(borrow)] 119 pub start: crate::pub_leaflet::pages::linear_document::Position<'a>, 120} 121 122#[derive( 123 serde::Serialize, 124 serde::Deserialize, 125 Debug, 126 Clone, 127 PartialEq, 128 Eq, 129 Hash, 130 jacquard_derive::IntoStatic 131)] 132pub struct TextAlignCenter; 133impl std::fmt::Display for TextAlignCenter { 134 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 135 write!(f, "textAlignCenter") 136 } 137} 138 139#[derive( 140 serde::Serialize, 141 serde::Deserialize, 142 Debug, 143 Clone, 144 PartialEq, 145 Eq, 146 Hash, 147 jacquard_derive::IntoStatic 148)] 149pub struct TextAlignLeft; 150impl std::fmt::Display for TextAlignLeft { 151 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 152 write!(f, "textAlignLeft") 153 } 154} 155 156#[derive( 157 serde::Serialize, 158 serde::Deserialize, 159 Debug, 160 Clone, 161 PartialEq, 162 Eq, 163 Hash, 164 jacquard_derive::IntoStatic 165)] 166pub struct TextAlignRight; 167impl std::fmt::Display for TextAlignRight { 168 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 169 write!(f, "textAlignRight") 170 } 171}