From 244daa82823a75b889e8fe619f92f8cc435804a2 Mon Sep 17 00:00:00 2001 From: Fredrik Date: Fri, 18 Mar 2022 14:26:15 +0100 Subject: [PATCH 1/4] Make Container techn optional This change makes the `techn` argument to `Container` and friends optional, similar to how it is optional in `Rel`. I am not very familiar with this project or plantuml in general, so please review carefully. --- C4_Container.puml | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/C4_Container.puml b/C4_Container.puml index b020232b..b3850287 100644 --- a/C4_Container.puml +++ b/C4_Container.puml @@ -53,18 +53,18 @@ endlegend ' ################################## !function $getContainer($label, $techn, $descr, $sprite) -!if ($descr == "") && ($sprite == "") -!return '=='+$label+'\n//['+$techn+']//' -!endif -!if ($descr == "") && ($sprite != "") -!return $getSprite($sprite)+'\n=='+$label+'\n//['+$techn+']//' -!endif -!if ($descr != "") && ($sprite == "") -!return '=='+$label+'\n//['+$techn+']//\n\n '+$descr -!endif -!if ($descr != "") && ($sprite != "") -!return $getSprite($sprite)+'\n=='+$label+'\n//['+$techn+']//\n\n '+$descr -!endif + !$container = "" + !if ($sprite != "") + !$container = $container + $getSprite($sprite)+'\n' + !endif + !$container = $container + '=='+$label + !if ($techn != "") + !$container = $container + '\n//['+$techn+']//' + !endif + !if ($descr != "") + !$container = $container + '\n\n '+$descr + !endif + !return $container !endfunction !unquoted procedure Container($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="") From 7fdb7cbfb7bbf631c01e5ea8eefd2c219d165c41 Mon Sep 17 00:00:00 2001 From: Fredrik Date: Mon, 21 Mar 2022 09:39:34 +0100 Subject: [PATCH 2/4] Fix formatting --- C4_Container.puml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/C4_Container.puml b/C4_Container.puml index b3850287..ab642a6f 100644 --- a/C4_Container.puml +++ b/C4_Container.puml @@ -55,14 +55,14 @@ endlegend !function $getContainer($label, $techn, $descr, $sprite) !$container = "" !if ($sprite != "") - !$container = $container + $getSprite($sprite)+'\n' + !$container = $container + $getSprite($sprite) + '\n' !endif - !$container = $container + '=='+$label + !$container = $container + '==' + $label !if ($techn != "") - !$container = $container + '\n//['+$techn+']//' + !$container = $container + '\n//[' + $techn + ']//' !endif !if ($descr != "") - !$container = $container + '\n\n '+$descr + !$container = $container + '\n\n' + $descr !endif !return $container !endfunction From 6c9d1c6ee0743ce750ec695f2146969591ccd7f0 Mon Sep 17 00:00:00 2001 From: Fredrik Date: Mon, 21 Mar 2022 09:59:58 +0100 Subject: [PATCH 3/4] Make Component techn optional --- C4_Component.puml | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/C4_Component.puml b/C4_Component.puml index d7550845..0dc7953c 100644 --- a/C4_Component.puml +++ b/C4_Component.puml @@ -58,18 +58,18 @@ endlegend ' ################################## !function $getComponent($label, $techn, $descr, $sprite) -!if ($descr == "") && ($sprite == "") -!return '=='+$label+'\n//['+$techn+']//' -!endif -!if ($descr == "") && ($sprite != "") -!return $getSprite($sprite)+'\n=='+$label+'\n//['+$techn+']//' -!endif -!if ($descr != "") && ($sprite == "") -!return '=='+$label+'\n//['+$techn+']//\n\n '+$descr -!endif -!if ($descr != "") && ($sprite != "") -!return $getSprite($sprite)+'\n=='+$label+'\n//['+$techn+']//\n\n '+$descr -!endif + !$component = "" + !if ($sprite != "") + !$component = $component + $getSprite($sprite) + '\n' + !endif + !$component = $component + '==' + $label + !if ($techn != "") + !$component = $component + '\n//[' + $techn + ']//' + !endif + !if ($descr != "") + !$component = $component + '\n\n' + $descr + !endif + !return $component !endfunction !unquoted procedure Component($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="") From 25808615e014e0ceb2e571ff710fa5db2e830688 Mon Sep 17 00:00:00 2001 From: Fredrik Date: Mon, 21 Mar 2022 10:08:24 +0100 Subject: [PATCH 4/4] Update documentation --- README.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 7bf1ed61..4194b0af 100644 --- a/README.md +++ b/README.md @@ -160,7 +160,6 @@ SHOW_LEGEND() > * `arg`.. argument required (e.g. `alias`) > * `?arg`.. argument optional (e.g. `?descr`) -> * `*techn` .. technology argument is required, but if the technology is defined via $tags then no `techn` argument is required * System Context & System Landscape diagrams * Import: `!include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Context.puml` @@ -180,7 +179,7 @@ SHOW_LEGEND() * Container diagram * Import: `!include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Container.puml` * Additional Macros: - * `Container(alias, label, *techn, ?descr, ?sprite, ?tags, $link)` + * `Container(alias, label, ?techn, ?descr, ?sprite, ?tags, $link)` * `ContainerDb` * `ContainerQueue` * `Container_Ext` @@ -191,7 +190,7 @@ SHOW_LEGEND() * Component diagram * Import: `!include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Component.puml` * Additional Macros: - * `Component(alias, label, *techn, ?descr, ?sprite, ?tags, $link)` + * `Component(alias, label, ?techn, ?descr, ?sprite, ?tags, $link)` * `ComponentDb` * `ComponentQueue` * `Component_Ext`