A better Rust ATProto crate
at lifetimes 5.2 kB view raw
1// @generated by jacquard-lexicon. DO NOT EDIT. 2// 3// Lexicon: sh.weaver.actor.defs 4// 5// This file was automatically generated from Lexicon schemas. 6// Any manual changes will be overwritten on the next regeneration. 7 8pub mod get_profile; 9pub mod profile; 10 11///A single author in a Weaver notebook. 12#[jacquard_derive::lexicon] 13#[derive( 14 serde::Serialize, 15 serde::Deserialize, 16 Debug, 17 Clone, 18 PartialEq, 19 Eq, 20 jacquard_derive::IntoStatic 21)] 22#[serde(rename_all = "camelCase")] 23pub struct Author<'a> { 24 #[serde(borrow)] 25 pub did: jacquard_common::types::string::Did<'a>, 26 #[serde(skip_serializing_if = "std::option::Option::is_none")] 27 #[serde(borrow)] 28 pub display_name: std::option::Option<jacquard_common::CowStr<'a>>, 29 #[serde(skip_serializing_if = "std::option::Option::is_none")] 30 #[serde(borrow)] 31 pub handle: std::option::Option<jacquard_common::types::string::Handle<'a>>, 32} 33 34#[jacquard_derive::lexicon] 35#[derive( 36 serde::Serialize, 37 serde::Deserialize, 38 Debug, 39 Clone, 40 PartialEq, 41 Eq, 42 jacquard_derive::IntoStatic 43)] 44#[serde(rename_all = "camelCase")] 45pub struct ProfileDataView<'a> { 46 #[serde(borrow)] 47 pub inner: ProfileDataViewRecordInner<'a>, 48} 49 50#[jacquard_derive::open_union] 51#[derive( 52 serde::Serialize, 53 serde::Deserialize, 54 Debug, 55 Clone, 56 PartialEq, 57 Eq, 58 jacquard_derive::IntoStatic 59)] 60#[serde(tag = "$type")] 61#[serde(bound(deserialize = "'de: 'a"))] 62pub enum ProfileDataViewRecordInner<'a> { 63 #[serde(rename = "sh.weaver.actor.defs#profileView")] 64 DefsProfileView(Box<crate::sh_weaver::actor::ProfileView<'a>>), 65 #[serde(rename = "app.bsky.actor.defs#profileViewDetailed")] 66 DefsProfileViewDetailed(Box<crate::app_bsky::actor::ProfileViewDetailed<'a>>), 67} 68 69#[jacquard_derive::lexicon] 70#[derive( 71 serde::Serialize, 72 serde::Deserialize, 73 Debug, 74 Clone, 75 PartialEq, 76 Eq, 77 jacquard_derive::IntoStatic 78)] 79#[serde(rename_all = "camelCase")] 80pub struct ProfileView<'a> { 81 #[serde(skip_serializing_if = "std::option::Option::is_none")] 82 #[serde(borrow)] 83 pub avatar: std::option::Option<jacquard_common::types::string::Uri<'a>>, 84 #[serde(skip_serializing_if = "std::option::Option::is_none")] 85 pub created_at: std::option::Option<jacquard_common::types::string::Datetime>, 86 #[serde(skip_serializing_if = "std::option::Option::is_none")] 87 #[serde(borrow)] 88 pub description: std::option::Option<jacquard_common::CowStr<'a>>, 89 #[serde(borrow)] 90 pub did: jacquard_common::types::string::Did<'a>, 91 #[serde(skip_serializing_if = "std::option::Option::is_none")] 92 #[serde(borrow)] 93 pub display_name: std::option::Option<jacquard_common::CowStr<'a>>, 94 #[serde(borrow)] 95 pub handle: jacquard_common::types::string::Handle<'a>, 96 #[serde(skip_serializing_if = "std::option::Option::is_none")] 97 pub indexed_at: std::option::Option<jacquard_common::types::string::Datetime>, 98 #[serde(skip_serializing_if = "std::option::Option::is_none")] 99 #[serde(borrow)] 100 pub labels: std::option::Option<Vec<crate::com_atproto::label::Label<'a>>>, 101 #[serde(skip_serializing_if = "std::option::Option::is_none")] 102 #[serde(borrow)] 103 pub links: std::option::Option<Vec<jacquard_common::types::string::Uri<'a>>>, 104 ///Free-form location text. 105 #[serde(skip_serializing_if = "std::option::Option::is_none")] 106 #[serde(borrow)] 107 pub location: std::option::Option<jacquard_common::CowStr<'a>>, 108 ///Pronouns to use in user-generated content. 109 #[serde(skip_serializing_if = "std::option::Option::is_none")] 110 #[serde(borrow)] 111 pub pronouns: std::option::Option< 112 crate::sh_weaver::actor::profile::PronounsList<'a>, 113 >, 114} 115 116#[jacquard_derive::lexicon] 117#[derive( 118 serde::Serialize, 119 serde::Deserialize, 120 Debug, 121 Clone, 122 PartialEq, 123 Eq, 124 jacquard_derive::IntoStatic 125)] 126#[serde(rename_all = "camelCase")] 127pub struct TangledProfileView<'a> { 128 ///Include link to this account on Bluesky. 129 pub bluesky: bool, 130 ///Free-form profile description text. 131 #[serde(skip_serializing_if = "std::option::Option::is_none")] 132 #[serde(borrow)] 133 pub description: std::option::Option<jacquard_common::CowStr<'a>>, 134 #[serde(borrow)] 135 pub did: jacquard_common::types::string::Did<'a>, 136 #[serde(borrow)] 137 pub handle: jacquard_common::types::string::Handle<'a>, 138 #[serde(skip_serializing_if = "std::option::Option::is_none")] 139 #[serde(borrow)] 140 pub links: std::option::Option<Vec<jacquard_common::types::string::Uri<'a>>>, 141 ///Free-form location text. 142 #[serde(skip_serializing_if = "std::option::Option::is_none")] 143 #[serde(borrow)] 144 pub location: std::option::Option<jacquard_common::CowStr<'a>>, 145 ///Any ATURI, it is up to appviews to validate these fields. 146 #[serde(skip_serializing_if = "std::option::Option::is_none")] 147 #[serde(borrow)] 148 pub pinned_repositories: std::option::Option< 149 Vec<jacquard_common::types::string::AtUri<'a>>, 150 >, 151 #[serde(skip_serializing_if = "std::option::Option::is_none")] 152 #[serde(borrow)] 153 pub stats: std::option::Option<Vec<jacquard_common::CowStr<'a>>>, 154}