feat: with schema

Signed-off-by: kjuulh <contact@kjuulh.io>
This commit is contained in:
2023-07-02 00:47:14 +02:00
parent 6a82e0c10a
commit 12bd424f18
8 changed files with 164 additions and 23 deletions

View File

@@ -14,11 +14,21 @@ pub struct CuddleShellScriptArgEnv {
pub key: String,
}
#[derive(Debug, Clone, PartialEq, Deserialize)]
pub struct CuddleShellScriptArgFlag {
pub name: String,
pub description: Option<String>,
pub required: Option<bool>,
pub default_value: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Deserialize)]
#[serde(tag = "type")]
pub enum CuddleShellScriptArg {
#[serde(alias = "env")]
Env(CuddleShellScriptArgEnv),
#[serde(alias = "flag")]
Flag(CuddleShellScriptArgFlag),
}
#[derive(Debug, Clone, PartialEq, Deserialize)]