39 lines
1.2 KiB
Rust
39 lines
1.2 KiB
Rust
// Copyright (C) 2023 Aravinth Manivannan <realaravinth@batsense.net>
|
|
// SPDX-FileCopyrightText: 2023 Aravinth Manivannan <realaravinth@batsense.net>
|
|
//
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
//! Comments associated to an issue or a pull/merge request within the repository of a forge
|
|
//! (Gitea, GitLab, etc.)
|
|
use serde::{Deserialize, Serialize};
|
|
|
|
use crate::Reaction;
|
|
|
|
/// Comments associated to an issue or a pull/merge request within the repository of a forge
|
|
/// (Gitea, GitLab, etc.)
|
|
#[derive(Clone, Debug, Serialize, Deserialize, Default, Eq, PartialEq)]
|
|
pub struct Comment {
|
|
/// Unique identifier of the issue or pull/merge request containing the comment
|
|
pub issue_index: usize,
|
|
|
|
/// Unique identifier of the comment
|
|
pub index: usize,
|
|
|
|
/// Unique identifier of the user who authored the comment
|
|
pub poster_id: usize,
|
|
|
|
// TODO: add validation for format "date-time"
|
|
/// Creating time
|
|
pub created: String,
|
|
|
|
// TODO: add validation for format "date-time"
|
|
/// Last update time
|
|
pub updated: String,
|
|
|
|
/// Multiline content of the comment
|
|
pub content: String,
|
|
|
|
/// Multiline content of the comment
|
|
pub reactions: Option<Vec<Reaction>>,
|
|
}
|