Skip to main content

actr_cli/templates/typescript/
mod.rs

1pub mod echo;
2
3use super::{LangTemplate, ProjectTemplateName, TemplateContext};
4use crate::error::Result;
5use std::collections::HashMap;
6
7pub struct TypeScriptTemplate;
8
9impl LangTemplate for TypeScriptTemplate {
10    fn load_files(
11        &self,
12        template_name: ProjectTemplateName,
13        context: &TemplateContext,
14    ) -> Result<HashMap<String, String>> {
15        let mut files = HashMap::new();
16
17        match template_name {
18            ProjectTemplateName::Echo => {
19                echo::load(&mut files, context.is_service)?;
20            }
21            ProjectTemplateName::DataStream => {
22                return Err(crate::error::ActrCliError::Unsupported(
23                    "DataStream template is not supported for TypeScript yet".to_string(),
24                ));
25            }
26        }
27
28        Ok(files)
29    }
30}