use super::DEFAULT_MARKER;
#[derive(Debug, PartialEq, Eq, Clone)]
pub struct ReviewOptions {
pub action: ReviewAction,
pub summary: String,
pub comments: Vec<ReviewComment>,
pub marker: String,
pub allow_draft: bool,
pub allow_closed: bool,
pub delete_review_comments: bool,
}
impl Default for ReviewOptions {
fn default() -> Self {
Self {
action: ReviewAction::default(),
summary: Default::default(),
comments: Default::default(),
marker: DEFAULT_MARKER.to_string(),
allow_draft: false,
allow_closed: false,
delete_review_comments: false,
}
}
}
#[derive(Debug, PartialEq, Eq, Clone, Default)]
pub enum ReviewAction {
Approve,
RequestChanges,
#[default]
Comment,
}
#[derive(Debug, PartialEq, Eq, Clone, Hash)]
pub struct ReviewComment {
pub line_start: Option<u32>,
pub line_end: u32,
pub comment: String,
pub path: String,
}