From 20148c5de67d60e81a096a4d5db7687c1ca4fec2 Mon Sep 17 00:00:00 2001 From: Joshua Kifer Date: Fri, 25 Mar 2022 08:37:02 -0600 Subject: [PATCH] Allow package configuration --- src/config.rs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/config.rs b/src/config.rs index 9d2bfb870..a74f02735 100644 --- a/src/config.rs +++ b/src/config.rs @@ -34,6 +34,7 @@ impl Default for DioxusConfig { default_platform: "web".to_string(), out_dir: Some(PathBuf::from("dist")), asset_dir: Some(PathBuf::from("public")), + package: None, }, web: WebConfig { app: WebAppConfing { @@ -62,6 +63,7 @@ pub struct ApplicationConfig { pub default_platform: String, pub out_dir: Option, pub asset_dir: Option, + pub package: Option, } #[derive(Debug, Clone, Serialize, Deserialize)] @@ -119,7 +121,11 @@ impl CrateConfig { pub fn new() -> Result { let dioxus_config = DioxusConfig::load()?; - let crate_dir = crate::cargo::crate_root()?; + let crate_dir = if let Some(package) = &dioxus_config.application.package { + crate::cargo::crate_root()?.join(package) + } else { + crate::cargo::crate_root()? + }; let meta = crate::cargo::Metadata::get()?; let workspace_dir = meta.workspace_root; let target_dir = meta.target_directory;