use std::collections::HashMap;
use anyhow::Result;
use crate::{PromptStepType, execute_function_by_name};
pub fn handle_spinner(step_type: &PromptStepType, context: &mut HashMap<String, String>) -> Result<bool> {
if let PromptStepType::Spinner { start_text, stop_text, run_fn, output } = step_type {
let spinner = cliclack::spinner();
spinner.start(start_text);
let fn_output = execute_function_by_name(run_fn)?;
spinner.stop(stop_text);
if let Some(output_key) = output {
context.insert(output_key.clone(), fn_output);
}
}
Ok(true)
}