diff options
Diffstat (limited to 'src/args.rs')
-rw-r--r-- | src/args.rs | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/args.rs b/src/args.rs index 841db3a..7667bee 100644 --- a/src/args.rs +++ b/src/args.rs @@ -8,6 +8,13 @@ use crate::auth; use crate::errors::ContextualError; use crate::renderer; +#[derive(clap::ArgEnum, Clone)] +pub enum MediaType { + Image, + Audio, + Video, +} + #[derive(Parser)] #[clap(name = "miniserve", author, about, version)] pub struct CliArgs { @@ -104,6 +111,19 @@ pub struct CliArgs { #[clap(short = 'u', long = "upload-files")] pub file_upload: bool, + /// Specify uploadable media types + #[clap(arg_enum, short = 'm', long = "media-type", requires = "file-upload")] + pub media_type: Option<Vec<MediaType>>, + + /// Directly specify the uploadable media type expression + #[clap( + short = 'M', + long = "raw-media-type", + requires = "file-upload", + conflicts_with = "media-type" + )] + pub media_type_raw: Option<String>, + /// Enable overriding existing files during file upload #[clap(short = 'o', long = "overwrite-files")] pub overwrite_files: bool, |