actr_cli/templates/swift/
echo.rs1use crate::error::Result;
2use crate::templates::ProjectTemplate;
3use std::collections::HashMap;
4use std::path::Path;
5
6pub fn load(files: &mut HashMap<String, String>, is_service: bool) -> Result<()> {
7 let fixtures_root = Path::new(env!("CARGO_MANIFEST_DIR")).join("fixtures");
8
9 ProjectTemplate::load_file(
10 &fixtures_root.join("swift/project.yml.hbs"),
11 files,
12 "project.yml",
13 )?;
14 if is_service {
15 ProjectTemplate::load_file(
16 &fixtures_root.join("swift/echo/manifest.toml.service.hbs"),
17 files,
18 "manifest.toml",
19 )?;
20 } else {
21 ProjectTemplate::load_file(
22 &fixtures_root.join("swift/echo/manifest.toml.hbs"),
23 files,
24 "manifest.toml",
25 )?;
26 }
27 ProjectTemplate::load_file(
28 &fixtures_root.join("swift/manifest.lock.toml.hbs"),
29 files,
30 "manifest.lock.toml",
31 )?;
32 ProjectTemplate::load_file(
33 &fixtures_root.join("swift/gitignore.hbs"),
34 files,
35 ".gitignore",
36 )?;
37 ProjectTemplate::load_file(
38 &fixtures_root.join("swift/dist.keep.hbs"),
39 files,
40 "dist/.keep",
41 )?;
42 ProjectTemplate::load_file(
43 &fixtures_root.join("swift/echo/README.md.hbs"),
44 files,
45 "README.md",
46 )?;
47 ProjectTemplate::load_file(
48 &fixtures_root.join("swift/echo/README.zh.md.hbs"),
49 files,
50 "README.zh.md",
51 )?;
52 ProjectTemplate::load_file(
53 &fixtures_root.join("swift/Info.plist.hbs"),
54 files,
55 "{{PROJECT_NAME_PASCAL}}/Info.plist",
56 )?;
57 ProjectTemplate::load_file(
58 &fixtures_root.join("swift/App.swift.hbs"),
59 files,
60 "{{PROJECT_NAME_PASCAL}}/{{PROJECT_NAME_PASCAL}}.swift",
61 )?;
62 ProjectTemplate::load_file(
63 &fixtures_root.join("swift/echo/ContentView.swift.hbs"),
64 files,
65 "{{PROJECT_NAME_PASCAL}}/ContentView.swift",
66 )?;
67 ProjectTemplate::load_file(
68 &fixtures_root.join("swift/echo/ActrService.swift.hbs"),
69 files,
70 "{{PROJECT_NAME_PASCAL}}/ActrService.swift",
71 )?;
72 ProjectTemplate::load_file(
73 &fixtures_root.join("swift/Assets.xcassets/Contents.json"),
74 files,
75 "{{PROJECT_NAME_PASCAL}}/Assets.xcassets/Contents.json",
76 )?;
77 ProjectTemplate::load_file(
78 &fixtures_root.join("swift/Assets.xcassets/AccentColor.colorset/Contents.json"),
79 files,
80 "{{PROJECT_NAME_PASCAL}}/Assets.xcassets/AccentColor.colorset/Contents.json",
81 )?;
82 ProjectTemplate::load_file(
83 &fixtures_root.join("swift/Assets.xcassets/AppIcon.appiconset/Contents.json"),
84 files,
85 "{{PROJECT_NAME_PASCAL}}/Assets.xcassets/AppIcon.appiconset/Contents.json",
86 )?;
87
88 Ok(())
89}