jacquard_api/pub_leaflet/
comment.rs

1// @generated by jacquard-lexicon. DO NOT EDIT.
2//
3// Lexicon: pub.leaflet.comment
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 LinearDocumentQuote<'a> {
20    #[serde(borrow)]
21    pub document: jacquard_common::types::string::AtUri<'a>,
22    #[serde(borrow)]
23    pub quote: crate::pub_leaflet::pages::linear_document::Quote<'a>,
24}
25
26///Record containing a comment
27#[jacquard_derive::lexicon]
28#[derive(
29    serde::Serialize,
30    serde::Deserialize,
31    Debug,
32    Clone,
33    PartialEq,
34    Eq,
35    jacquard_derive::IntoStatic
36)]
37#[serde(rename_all = "camelCase")]
38pub struct Comment<'a> {
39    #[serde(skip_serializing_if = "std::option::Option::is_none")]
40    #[serde(borrow)]
41    pub attachment: std::option::Option<CommentRecordAttachment<'a>>,
42    pub created_at: jacquard_common::types::string::Datetime,
43    #[serde(skip_serializing_if = "std::option::Option::is_none")]
44    #[serde(borrow)]
45    pub facets: std::option::Option<Vec<crate::pub_leaflet::richtext::facet::Facet<'a>>>,
46    #[serde(borrow)]
47    pub plaintext: jacquard_common::CowStr<'a>,
48    #[serde(skip_serializing_if = "std::option::Option::is_none")]
49    #[serde(borrow)]
50    pub reply: std::option::Option<crate::pub_leaflet::comment::ReplyRef<'a>>,
51    #[serde(borrow)]
52    pub subject: jacquard_common::types::string::AtUri<'a>,
53}
54
55#[jacquard_derive::open_union]
56#[derive(
57    serde::Serialize,
58    serde::Deserialize,
59    Debug,
60    Clone,
61    PartialEq,
62    Eq,
63    jacquard_derive::IntoStatic
64)]
65#[serde(tag = "$type")]
66#[serde(bound(deserialize = "'de: 'a"))]
67pub enum CommentRecordAttachment<'a> {}
68impl jacquard_common::types::collection::Collection for Comment<'_> {
69    const NSID: &'static str = "pub.leaflet.comment";
70}
71
72#[jacquard_derive::lexicon]
73#[derive(
74    serde::Serialize,
75    serde::Deserialize,
76    Debug,
77    Clone,
78    PartialEq,
79    Eq,
80    jacquard_derive::IntoStatic
81)]
82#[serde(rename_all = "camelCase")]
83pub struct ReplyRef<'a> {
84    #[serde(borrow)]
85    pub parent: jacquard_common::types::string::AtUri<'a>,
86}