fastcomments_sdk/client/src/models/
api_comment_base.rs

1/*
2 * fastcomments
3 *
4 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5 *
6 * The version of the OpenAPI document: 0.0.0
7 * 
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::client::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct ApiCommentBase {
16    #[serde(rename = "_id")]
17    pub _id: String,
18    #[serde(rename = "aiDeterminedSpam", skip_serializing_if = "Option::is_none")]
19    pub ai_determined_spam: Option<bool>,
20    #[serde(rename = "anonUserId", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
21    pub anon_user_id: Option<Option<String>>,
22    #[serde(rename = "approved")]
23    pub approved: bool,
24    #[serde(rename = "avatarSrc", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
25    pub avatar_src: Option<Option<String>>,
26    #[serde(rename = "badges", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
27    pub badges: Option<Option<Vec<models::CommentUserBadgeInfo>>>,
28    #[serde(rename = "comment")]
29    pub comment: String,
30    #[serde(rename = "commentHTML")]
31    pub comment_html: String,
32    #[serde(rename = "commenterEmail", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
33    pub commenter_email: Option<Option<String>>,
34    #[serde(rename = "commenterLink", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
35    pub commenter_link: Option<Option<String>>,
36    #[serde(rename = "commenterName")]
37    pub commenter_name: String,
38    #[serde(rename = "date", deserialize_with = "Option::deserialize")]
39    pub date: Option<String>,
40    #[serde(rename = "displayLabel", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
41    pub display_label: Option<Option<String>>,
42    #[serde(rename = "domain", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
43    pub domain: Option<Option<String>>,
44    #[serde(rename = "externalId", skip_serializing_if = "Option::is_none")]
45    pub external_id: Option<String>,
46    #[serde(rename = "externalParentId", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
47    pub external_parent_id: Option<Option<String>>,
48    #[serde(rename = "expireAt", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
49    pub expire_at: Option<Option<String>>,
50    #[serde(rename = "feedbackIds", skip_serializing_if = "Option::is_none")]
51    pub feedback_ids: Option<Vec<String>>,
52    #[serde(rename = "flagCount", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
53    pub flag_count: Option<Option<i32>>,
54    #[serde(rename = "fromProductId", skip_serializing_if = "Option::is_none")]
55    pub from_product_id: Option<i32>,
56    #[serde(rename = "hasCode", skip_serializing_if = "Option::is_none")]
57    pub has_code: Option<bool>,
58    #[serde(rename = "hasImages", skip_serializing_if = "Option::is_none")]
59    pub has_images: Option<bool>,
60    #[serde(rename = "hasLinks", skip_serializing_if = "Option::is_none")]
61    pub has_links: Option<bool>,
62    #[serde(rename = "hashTags", skip_serializing_if = "Option::is_none")]
63    pub hash_tags: Option<Vec<models::CommentUserHashTagInfo>>,
64    #[serde(rename = "isByAdmin", skip_serializing_if = "Option::is_none")]
65    pub is_by_admin: Option<bool>,
66    #[serde(rename = "isByModerator", skip_serializing_if = "Option::is_none")]
67    pub is_by_moderator: Option<bool>,
68    #[serde(rename = "isDeleted", skip_serializing_if = "Option::is_none")]
69    pub is_deleted: Option<bool>,
70    #[serde(rename = "isDeletedUser", skip_serializing_if = "Option::is_none")]
71    pub is_deleted_user: Option<bool>,
72    #[serde(rename = "isPinned", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
73    pub is_pinned: Option<Option<bool>>,
74    #[serde(rename = "isLocked", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
75    pub is_locked: Option<Option<bool>>,
76    #[serde(rename = "isSpam", skip_serializing_if = "Option::is_none")]
77    pub is_spam: Option<bool>,
78    #[serde(rename = "localDateHours", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
79    pub local_date_hours: Option<Option<i32>>,
80    #[serde(rename = "localDateString", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
81    pub local_date_string: Option<Option<String>>,
82    #[serde(rename = "locale", deserialize_with = "Option::deserialize")]
83    pub locale: Option<String>,
84    #[serde(rename = "mentions", skip_serializing_if = "Option::is_none")]
85    pub mentions: Option<Vec<models::CommentUserMentionInfo>>,
86    #[serde(rename = "meta", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
87    pub meta: Option<Option<models::FCommentMeta>>,
88    #[serde(rename = "moderationGroupIds", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
89    pub moderation_group_ids: Option<Option<Vec<String>>>,
90    #[serde(rename = "notificationSentForParent", skip_serializing_if = "Option::is_none")]
91    pub notification_sent_for_parent: Option<bool>,
92    #[serde(rename = "notificationSentForParentTenant", skip_serializing_if = "Option::is_none")]
93    pub notification_sent_for_parent_tenant: Option<bool>,
94    #[serde(rename = "pageTitle", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
95    pub page_title: Option<Option<String>>,
96    #[serde(rename = "parentId", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
97    pub parent_id: Option<Option<String>>,
98    #[serde(rename = "rating", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
99    pub rating: Option<Option<f64>>,
100    #[serde(rename = "reviewed", skip_serializing_if = "Option::is_none")]
101    pub reviewed: Option<bool>,
102    #[serde(rename = "tenantId")]
103    pub tenant_id: String,
104    #[serde(rename = "url")]
105    pub url: String,
106    #[serde(rename = "urlId")]
107    pub url_id: String,
108    #[serde(rename = "urlIdRaw", skip_serializing_if = "Option::is_none")]
109    pub url_id_raw: Option<String>,
110    #[serde(rename = "userId", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
111    pub user_id: Option<Option<String>>,
112    #[serde(rename = "verified")]
113    pub verified: bool,
114    #[serde(rename = "verifiedDate", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
115    pub verified_date: Option<Option<String>>,
116    #[serde(rename = "votes", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
117    pub votes: Option<Option<i32>>,
118    #[serde(rename = "votesDown", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
119    pub votes_down: Option<Option<i32>>,
120    #[serde(rename = "votesUp", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
121    pub votes_up: Option<Option<i32>>,
122}
123
124impl ApiCommentBase {
125    pub fn new(_id: String, approved: bool, comment: String, comment_html: String, commenter_name: String, date: Option<String>, locale: Option<String>, tenant_id: String, url: String, url_id: String, verified: bool) -> ApiCommentBase {
126        ApiCommentBase {
127            _id,
128            ai_determined_spam: None,
129            anon_user_id: None,
130            approved,
131            avatar_src: None,
132            badges: None,
133            comment,
134            comment_html,
135            commenter_email: None,
136            commenter_link: None,
137            commenter_name,
138            date,
139            display_label: None,
140            domain: None,
141            external_id: None,
142            external_parent_id: None,
143            expire_at: None,
144            feedback_ids: None,
145            flag_count: None,
146            from_product_id: None,
147            has_code: None,
148            has_images: None,
149            has_links: None,
150            hash_tags: None,
151            is_by_admin: None,
152            is_by_moderator: None,
153            is_deleted: None,
154            is_deleted_user: None,
155            is_pinned: None,
156            is_locked: None,
157            is_spam: None,
158            local_date_hours: None,
159            local_date_string: None,
160            locale,
161            mentions: None,
162            meta: None,
163            moderation_group_ids: None,
164            notification_sent_for_parent: None,
165            notification_sent_for_parent_tenant: None,
166            page_title: None,
167            parent_id: None,
168            rating: None,
169            reviewed: None,
170            tenant_id,
171            url,
172            url_id,
173            url_id_raw: None,
174            user_id: None,
175            verified,
176            verified_date: None,
177            votes: None,
178            votes_down: None,
179            votes_up: None,
180        }
181    }
182}
183