Common/SourceControlManagement/DTO/
SourceControlManagementProviderDTO.rs

1//! # SourceControlManagementProviderDTO
2//!
3//! Defines the DTO for an SourceControlManagement provider itself.
4
5use serde::{Deserialize, Serialize};
6use serde_json::Value;
7
8use crate::SourceControlManagement::DTO::SourceControlInputBoxDTO::SourceControlInputBoxDTO;
9
10/// A serializable struct representing the metadata for a source control
11/// provider.
12#[derive(Serialize, Deserialize, Debug, Clone)]
13#[serde(rename_all = "PascalCase")]
14pub struct SourceControlManagementProviderDTO {
15	pub Handle:u32,
16
17	pub Label:String,
18
19	/// The root URI of the repository this provider is managing. Serialized
20	/// `UriComponents`.
21	pub RootURI:Option<Value>,
22
23	/// An optional count of changed resources, often displayed as a badge.
24	#[serde(skip_serializing_if = "Option::is_none")]
25	pub Count:Option<u32>,
26
27	/// The template for the commit message input box.
28	#[serde(skip_serializing_if = "Option::is_none")]
29	pub CommitTemplate:Option<String>,
30
31	/// The state of the SourceControlManagement input box (commit message
32	/// area).
33	#[serde(skip_serializing_if = "Option::is_none")]
34	pub InputBox:Option<SourceControlInputBoxDTO>,
35}