cli: Move sample data for init into single block for extraction.
This commit is contained in:
parent
dda7b5c6fe
commit
7debf0ce21
|
@ -15,6 +15,17 @@ use std::{collections::HashMap, fs::write};
|
|||
pub fn initialize_site(project: Project) -> Result<(), RookeriesError> {
|
||||
header_message("Initializing a new site...");
|
||||
|
||||
// TODO: Make the sample pages happen.
|
||||
let mut sample_pages: HashMap<String, Value> = HashMap::new();
|
||||
sample_pages.insert("index".to_string(), json!({"title": "Welcome"}));
|
||||
sample_pages.insert("demo".to_string(), json!({"title": "Demo"}));
|
||||
sample_pages.insert(
|
||||
"license".to_string(),
|
||||
json!({"title": "License (Apache v2.0)"}),
|
||||
);
|
||||
let sample_title = "New Rookeries Site";
|
||||
let sample_plugins = vec!["hello-world", "dark-mode-switch"];
|
||||
|
||||
// TODO: Add support for an override flag.
|
||||
// Build out the project directory.
|
||||
let project_directory = project.root_dir();
|
||||
|
@ -28,15 +39,6 @@ pub fn initialize_site(project: Project) -> Result<(), RookeriesError> {
|
|||
}
|
||||
let project_directory = build_path(&project_directory, FileType::ProjectRoot)?;
|
||||
|
||||
// TODO: Make the sample pages happen.
|
||||
let mut sample_pages: HashMap<String, Value> = HashMap::new();
|
||||
sample_pages.insert("index".to_string(), json!({"title": "Welcome"}));
|
||||
sample_pages.insert("demo".to_string(), json!({"title": "Demo"}));
|
||||
sample_pages.insert(
|
||||
"license".to_string(),
|
||||
json!({"title": "License (Apache v2.0)"}),
|
||||
);
|
||||
|
||||
// Create a site toml if one is missing.
|
||||
let project_manifest = project_directory.join("site.toml");
|
||||
match &project_manifest.exists() {
|
||||
|
@ -46,7 +48,7 @@ pub fn initialize_site(project: Project) -> Result<(), RookeriesError> {
|
|||
false => {
|
||||
// TODO: Support an interactive setup of the Rookeries site.
|
||||
let mut site = Site::default();
|
||||
site.name = "New Rookeries Site".to_string();
|
||||
site.name = sample_title.into();
|
||||
site.pages = Some(sample_pages.clone());
|
||||
|
||||
let site_toml_content =
|
||||
|
@ -157,7 +159,7 @@ pub fn initialize_site(project: Project) -> Result<(), RookeriesError> {
|
|||
caution_message("Found existing plugins. Skipping.");
|
||||
} else {
|
||||
create_directory(&site_plugins_path, FileType::Plugin)?;
|
||||
let plugin_list = vec!["hello-world", "dark-mode-switch"];
|
||||
let plugin_list = sample_plugins;
|
||||
for plugin in plugin_list {
|
||||
let plugin_file_name = format!("{}-plugin.js", &plugin);
|
||||
copy_file(
|
||||
|
|
Loading…
Reference in New Issue