From e0e38503f09a66d2cd4ef6577542dd43a580ec28 Mon Sep 17 00:00:00 2001 From: Sebastian Kuzminsky Date: Wed, 2 Apr 2025 22:50:56 -0600 Subject: [PATCH] Recipes where action=printed now contain their model & print profile --- .../recipes/peristaltic-pump/print/bearing_hub.toml | 5 +---- .../peristaltic-pump/print/bearing_hub_top.toml | 4 +--- .../print/pump_housing_front_untapped.toml | 5 +---- .../print/pump_housing_rear_untapped.toml | 5 +---- .../recipes/peristaltic-pump/print/tube_support.toml | 5 +---- tools/src/recipe.rs | 10 ++++++++-- tools/src/repo.rs | 4 ++-- tools/src/repos.rs | 4 ++-- 8 files changed, 17 insertions(+), 25 deletions(-) diff --git a/modular-recipes/recipes/peristaltic-pump/print/bearing_hub.toml b/modular-recipes/recipes/peristaltic-pump/print/bearing_hub.toml index 07d32a7..1573048 100644 --- a/modular-recipes/recipes/peristaltic-pump/print/bearing_hub.toml +++ b/modular-recipes/recipes/peristaltic-pump/print/bearing_hub.toml @@ -7,8 +7,5 @@ filament={} [dependencies] tools=["fdm-printer"] -[config] -model="https://github.com/DerSchultze/Peristaltic-Controller@92a4d9b:stl/bearing-hub.STL" - [action] -print={} \ No newline at end of file +print = { model="https://github.com/DerSchultze/Peristaltic-Controller/blob/92a4d9b/stl/bearing-hub.STL", profile="placeholder" } \ No newline at end of file diff --git a/modular-recipes/recipes/peristaltic-pump/print/bearing_hub_top.toml b/modular-recipes/recipes/peristaltic-pump/print/bearing_hub_top.toml index 8933dfd..8d31721 100644 --- a/modular-recipes/recipes/peristaltic-pump/print/bearing_hub_top.toml +++ b/modular-recipes/recipes/peristaltic-pump/print/bearing_hub_top.toml @@ -7,8 +7,6 @@ filament={} [dependencies] tools=["fdm-printer"] -[config] -model="https://github.com/DerSchultze/Peristaltic-Controller@92a4d9b:stl/bearing-hub-top.STL" [action] -print={} \ No newline at end of file +print={ model="https://github.com/DerSchultze/Peristaltic-Controller/blob/92a4d9b/stl/bearing-hub-top.STL", profile="placeholder" } \ No newline at end of file diff --git a/modular-recipes/recipes/peristaltic-pump/print/pump_housing_front_untapped.toml b/modular-recipes/recipes/peristaltic-pump/print/pump_housing_front_untapped.toml index 41a933c..0e81ca8 100644 --- a/modular-recipes/recipes/peristaltic-pump/print/pump_housing_front_untapped.toml +++ b/modular-recipes/recipes/peristaltic-pump/print/pump_housing_front_untapped.toml @@ -7,8 +7,5 @@ filament={} [dependencies] tools=["fdm-printer"] -[config] -model="https://github.com/DerSchultze/Peristaltic-Controller@92a4d9b:stl/pump-top.STL" - [action] -print={} \ No newline at end of file +print={ model="https://github.com/DerSchultze/Peristaltic-Controller/blob/92a4d9b/stl/pump-top.STL", profile="placeholder" } \ No newline at end of file diff --git a/modular-recipes/recipes/peristaltic-pump/print/pump_housing_rear_untapped.toml b/modular-recipes/recipes/peristaltic-pump/print/pump_housing_rear_untapped.toml index f3f3501..752d6fc 100644 --- a/modular-recipes/recipes/peristaltic-pump/print/pump_housing_rear_untapped.toml +++ b/modular-recipes/recipes/peristaltic-pump/print/pump_housing_rear_untapped.toml @@ -7,8 +7,5 @@ filament={} [dependencies] tools=["fdm-printer"] -[config] -model="https://github.com/DerSchultze/Peristaltic-Controller@92a4d9b:stl/CheapPump.STL" - [action] -print={} +print={ model="https://github.com/DerSchultze/Peristaltic-Controller/blob/92a4d9b/stl/CheapPump.STL", profile="placeholder" } diff --git a/modular-recipes/recipes/peristaltic-pump/print/tube_support.toml b/modular-recipes/recipes/peristaltic-pump/print/tube_support.toml index ff6ebbb..5a82915 100644 --- a/modular-recipes/recipes/peristaltic-pump/print/tube_support.toml +++ b/modular-recipes/recipes/peristaltic-pump/print/tube_support.toml @@ -7,8 +7,5 @@ filament={} [dependencies] tools=["fdm-printer"] -[config] -model="https://github.com/DerSchultze/Peristaltic-Controller@92a4d9b:stl/tube-support.STL" - [action] -print={} \ No newline at end of file +print={ model="https://github.com/DerSchultze/Peristaltic-Controller/blob/92a4d9b/stl/tube-support.STL", profile="placeholder" } \ No newline at end of file diff --git a/tools/src/recipe.rs b/tools/src/recipe.rs index 04eaddb..5516d14 100644 --- a/tools/src/recipe.rs +++ b/tools/src/recipe.rs @@ -49,11 +49,17 @@ pub struct Purchase { pub documentation: Option>, } +#[derive(Debug, serde::Deserialize, PartialEq)] +pub struct PrintedPart { + pub model: String, + pub profile: String, +} + #[derive(Debug, serde::Deserialize, PartialEq)] #[allow(non_camel_case_types)] pub enum Action { process(String), - print, + print(PrintedPart), purchase(Purchase), } @@ -150,7 +156,7 @@ impl Recipe { // A "print" is a recipe whose Action is "print". pub fn is_print(&self) -> bool { match self.action { - Action::print => true, + Action::print(_) => true, _ => false, } } diff --git a/tools/src/repo.rs b/tools/src/repo.rs index 0a8b795..1145f6c 100644 --- a/tools/src/repo.rs +++ b/tools/src/repo.rs @@ -195,8 +195,8 @@ impl Repo { crate::recipe::Action::process(process) => { writeln!(puml_file, "{} : {:?}", input_object_name, process)?; } - crate::recipe::Action::print => { - writeln!(puml_file, "{} : print", input_object_name)?; + crate::recipe::Action::print(printed_part) => { + writeln!(puml_file, "{} : {:?}", input_object_name, printed_part)?; } crate::recipe::Action::purchase(_purchase) => { writeln!(puml_file, "{} : buy", input_object_name)?; diff --git a/tools/src/repos.rs b/tools/src/repos.rs index 5088973..3b34fc9 100644 --- a/tools/src/repos.rs +++ b/tools/src/repos.rs @@ -182,8 +182,8 @@ impl Repos { crate::recipe::Action::process(process) => { writeln!(puml_file, "{} : {:?}", input_object_name, process)?; } - crate::recipe::Action::print => { - writeln!(puml_file, "{} : print", input_object_name)?; + crate::recipe::Action::print(printed_part) => { + writeln!(puml_file, "{} : {:?}", input_object_name, printed_part)?; } crate::recipe::Action::purchase(_purchase) => { writeln!(puml_file, "{} : buy", input_object_name)?;