use super::PluginKind;
pub struct PluginSpec {
pub name: String,
pub kind: PluginKind,
}
#[derive(Clone, Copy, PartialEq)]
pub enum DepForm {
Registry,
GitTag,
Workspace,
}
#[derive(Clone, Copy)]
pub struct FeatureSet {
pub standalone: bool,
}
#[derive(Clone)]
pub struct VendorInfo {
pub name: String,
pub id: String,
}
impl VendorInfo {
#[must_use]
pub fn placeholder() -> Self {
Self {
name: "My Company".into(),
id: "com.mycompany".into(),
}
}
#[must_use]
pub fn derive_from_workspace_name(workspace_name: &str) -> Self {
Self {
name: super::case::to_pascal_case(workspace_name),
id: format!("com.{}", workspace_name.replace('-', "")),
}
}
}