mirror of
https://github.com/asciinema/asciinema.git
synced 2025-12-16 11:48:13 +01:00
Collect full CLI interface in cli module
This commit is contained in:
@@ -1,17 +1,12 @@
|
||||
use super::Command;
|
||||
use crate::api;
|
||||
use crate::asciicast;
|
||||
use crate::cli;
|
||||
use crate::config::Config;
|
||||
use anyhow::Result;
|
||||
use clap::Args;
|
||||
|
||||
#[derive(Debug, Args)]
|
||||
pub struct Cli {
|
||||
/// Filename/path of asciicast to upload
|
||||
filename: String,
|
||||
}
|
||||
|
||||
impl Cli {
|
||||
pub fn run(self, config: &Config) -> Result<()> {
|
||||
impl Command for cli::Upload {
|
||||
fn run(self, config: &Config) -> Result<()> {
|
||||
let _ = asciicast::open_from_path(&self.filename)?;
|
||||
let response = api::upload_asciicast(&self.filename, config)?;
|
||||
println!("{}", response.message.unwrap_or(response.url));
|
||||
|
||||
Reference in New Issue
Block a user