twilight_model/channel/message/component/
thumbnail.rs

1use serde::{Deserialize, Serialize};
2
3use super::UnfurledMediaItem;
4
5/// Thumbnail containing a small image. Only usable as a accessory in a [section].
6///
7/// [section]: super::Section
8#[derive(Clone, Debug, Eq, Hash, PartialEq, Deserialize, Serialize)]
9pub struct Thumbnail {
10    /// Optional identifier for component.
11    #[serde(skip_serializing_if = "Option::is_none")]
12    pub id: Option<i32>,
13    /// A unfurled media item containing either a url or attachment.
14    pub media: UnfurledMediaItem,
15    /// Alt text for the media.
16    #[serde(skip_serializing_if = "Option::is_none")]
17    pub description: Option<Option<String>>,
18    /// Whether the thumbnail should be a spoiler (or blurred
19    /// out). Defaults to `false`.
20    #[serde(skip_serializing_if = "Option::is_none")]
21    pub spoiler: Option<bool>,
22}