A better Rust ATProto crate
1// @generated by jacquard-lexicon. DO NOT EDIT. 2// 3// Lexicon: sh.weaver.embed.records 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)] 18#[serde(rename_all = "camelCase")] 19pub struct Records<'a> { 20 #[serde(borrow)] 21 pub records: Vec<crate::com_atproto::repo::strong_ref::StrongRef<'a>>, 22} 23 24#[jacquard_derive::lexicon] 25#[derive( 26 serde::Serialize, 27 serde::Deserialize, 28 Debug, 29 Clone, 30 PartialEq, 31 Eq, 32 jacquard_derive::IntoStatic 33)] 34#[serde(rename_all = "camelCase")] 35pub struct View<'a> { 36 #[serde(borrow)] 37 pub record: ViewUnionRecord<'a>, 38} 39 40#[jacquard_derive::open_union] 41#[derive( 42 serde::Serialize, 43 serde::Deserialize, 44 Debug, 45 Clone, 46 PartialEq, 47 Eq, 48 jacquard_derive::IntoStatic 49)] 50#[serde(tag = "$type")] 51#[serde(bound(deserialize = "'de: 'a"))] 52pub enum ViewUnionRecord<'a> { 53 #[serde(rename = "sh.weaver.embed.records#viewRecord")] 54 ViewRecord(Box<crate::sh_weaver::embed::records::ViewRecord<'a>>), 55 #[serde(rename = "sh.weaver.embed.records#viewNotFound")] 56 ViewNotFound(Box<crate::sh_weaver::embed::records::ViewNotFound<'a>>), 57 #[serde(rename = "sh.weaver.embed.records#viewBlocked")] 58 ViewBlocked(Box<crate::sh_weaver::embed::records::ViewBlocked<'a>>), 59 #[serde(rename = "sh.weaver.embed.records#viewDetached")] 60 ViewDetached(Box<crate::sh_weaver::embed::records::ViewDetached<'a>>), 61 #[serde(rename = "app.bsky.feed.defs#generatorView")] 62 GeneratorView(Box<crate::app_bsky::feed::GeneratorView<'a>>), 63 #[serde(rename = "app.bsky.graph.defs#listView")] 64 ListView(Box<crate::app_bsky::graph::ListView<'a>>), 65 #[serde(rename = "app.bsky.labeler.defs#labelerView")] 66 LabelerView(Box<crate::app_bsky::labeler::LabelerView<'a>>), 67 #[serde(rename = "app.bsky.graph.defs#starterPackViewBasic")] 68 StarterPackViewBasic(Box<crate::app_bsky::graph::StarterPackViewBasic<'a>>), 69} 70 71#[jacquard_derive::lexicon] 72#[derive( 73 serde::Serialize, 74 serde::Deserialize, 75 Debug, 76 Clone, 77 PartialEq, 78 Eq, 79 jacquard_derive::IntoStatic 80)] 81#[serde(rename_all = "camelCase")] 82pub struct ViewBlocked<'a> { 83 #[serde(borrow)] 84 pub author: crate::app_bsky::feed::BlockedAuthor<'a>, 85 pub blocked: bool, 86 #[serde(borrow)] 87 pub uri: jacquard_common::types::string::AtUri<'a>, 88} 89 90#[jacquard_derive::lexicon] 91#[derive( 92 serde::Serialize, 93 serde::Deserialize, 94 Debug, 95 Clone, 96 PartialEq, 97 Eq, 98 jacquard_derive::IntoStatic 99)] 100#[serde(rename_all = "camelCase")] 101pub struct ViewDetached<'a> { 102 pub detached: bool, 103 #[serde(borrow)] 104 pub uri: jacquard_common::types::string::AtUri<'a>, 105} 106 107#[jacquard_derive::lexicon] 108#[derive( 109 serde::Serialize, 110 serde::Deserialize, 111 Debug, 112 Clone, 113 PartialEq, 114 Eq, 115 jacquard_derive::IntoStatic 116)] 117#[serde(rename_all = "camelCase")] 118pub struct ViewNotFound<'a> { 119 pub not_found: bool, 120 #[serde(borrow)] 121 pub uri: jacquard_common::types::string::AtUri<'a>, 122} 123 124#[jacquard_derive::lexicon] 125#[derive( 126 serde::Serialize, 127 serde::Deserialize, 128 Debug, 129 Clone, 130 PartialEq, 131 Eq, 132 jacquard_derive::IntoStatic 133)] 134#[serde(rename_all = "camelCase")] 135pub struct ViewRecord<'a> { 136 #[serde(borrow)] 137 pub author: crate::app_bsky::actor::ProfileViewBasic<'a>, 138 #[serde(borrow)] 139 pub cid: jacquard_common::types::string::Cid<'a>, 140 #[serde(skip_serializing_if = "std::option::Option::is_none")] 141 #[serde(borrow)] 142 pub embeds: std::option::Option<Vec<ViewRecordEmbedsItem<'a>>>, 143 pub indexed_at: jacquard_common::types::string::Datetime, 144 #[serde(skip_serializing_if = "std::option::Option::is_none")] 145 #[serde(borrow)] 146 pub labels: std::option::Option<Vec<crate::com_atproto::label::Label<'a>>>, 147 #[serde(skip_serializing_if = "std::option::Option::is_none")] 148 pub like_count: std::option::Option<i64>, 149 #[serde(skip_serializing_if = "std::option::Option::is_none")] 150 pub quote_count: std::option::Option<i64>, 151 #[serde(skip_serializing_if = "std::option::Option::is_none")] 152 pub reply_count: std::option::Option<i64>, 153 #[serde(skip_serializing_if = "std::option::Option::is_none")] 154 pub repost_count: std::option::Option<i64>, 155 #[serde(borrow)] 156 pub uri: jacquard_common::types::string::AtUri<'a>, 157 ///The record data itself. 158 #[serde(borrow)] 159 pub value: jacquard_common::types::value::Data<'a>, 160} 161 162#[jacquard_derive::open_union] 163#[derive( 164 serde::Serialize, 165 serde::Deserialize, 166 Debug, 167 Clone, 168 PartialEq, 169 Eq, 170 jacquard_derive::IntoStatic 171)] 172#[serde(tag = "$type")] 173#[serde(bound(deserialize = "'de: 'a"))] 174pub enum ViewRecordEmbedsItem<'a> { 175 #[serde(rename = "app.bsky.embed.images#view")] 176 ImagesView(Box<crate::app_bsky::embed::images::View<'a>>), 177 #[serde(rename = "app.bsky.embed.video#view")] 178 VideoView(Box<crate::app_bsky::embed::video::View<'a>>), 179 #[serde(rename = "app.bsky.embed.external#view")] 180 ExternalView(Box<crate::app_bsky::embed::external::View<'a>>), 181 #[serde(rename = "app.bsky.embed.record#view")] 182 RecordView(Box<crate::app_bsky::embed::record::View<'a>>), 183 #[serde(rename = "app.bsky.embed.recordWithMedia#view")] 184 RecordWithMediaView(Box<crate::app_bsky::embed::record_with_media::View<'a>>), 185 #[serde(rename = "sh.weaver.embed.records#view")] 186 View(Box<crate::sh_weaver::embed::records::View<'a>>), 187}