Skip to main content

actr_cli/templates/swift/
empty.rs

1use crate::error::Result;
2use crate::templates::ProjectTemplate;
3use std::collections::HashMap;
4use std::path::Path;
5
6pub fn load(files: &mut HashMap<String, String>) -> 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    ProjectTemplate::load_file(
15        &fixtures_root.join("swift/empty/manifest.toml.hbs"),
16        files,
17        "manifest.toml",
18    )?;
19    ProjectTemplate::load_file(
20        &fixtures_root.join("swift/manifest.lock.toml.hbs"),
21        files,
22        "manifest.lock.toml",
23    )?;
24    ProjectTemplate::load_file(
25        &fixtures_root.join("swift/gitignore.hbs"),
26        files,
27        ".gitignore",
28    )?;
29    ProjectTemplate::load_file(
30        &fixtures_root.join("swift/dist.keep.hbs"),
31        files,
32        "dist/.keep",
33    )?;
34    ProjectTemplate::load_file(
35        &fixtures_root.join("swift/empty/README.md.hbs"),
36        files,
37        "README.md",
38    )?;
39    ProjectTemplate::load_file(
40        &fixtures_root.join("swift/Info.plist.hbs"),
41        files,
42        "{{PROJECT_NAME_PASCAL}}/Info.plist",
43    )?;
44    ProjectTemplate::load_file(
45        &fixtures_root.join("swift/App.swift.hbs"),
46        files,
47        "{{PROJECT_NAME_PASCAL}}/{{PROJECT_NAME_PASCAL}}.swift",
48    )?;
49    ProjectTemplate::load_file(
50        &fixtures_root.join("swift/empty/ContentView.swift.hbs"),
51        files,
52        "{{PROJECT_NAME_PASCAL}}/ContentView.swift",
53    )?;
54    ProjectTemplate::load_file(
55        &fixtures_root.join("swift/Assets.xcassets/Contents.json"),
56        files,
57        "{{PROJECT_NAME_PASCAL}}/Assets.xcassets/Contents.json",
58    )?;
59    ProjectTemplate::load_file(
60        &fixtures_root.join("swift/Assets.xcassets/AccentColor.colorset/Contents.json"),
61        files,
62        "{{PROJECT_NAME_PASCAL}}/Assets.xcassets/AccentColor.colorset/Contents.json",
63    )?;
64    ProjectTemplate::load_file(
65        &fixtures_root.join("swift/Assets.xcassets/AppIcon.appiconset/Contents.json"),
66        files,
67        "{{PROJECT_NAME_PASCAL}}/Assets.xcassets/AppIcon.appiconset/Contents.json",
68    )?;
69
70    Ok(())
71}