From c346ce4a5e9412ce7db9a2765fb808976ca56fc3 Mon Sep 17 00:00:00 2001 From: Timothy Clem Date: Mon, 18 Nov 2019 14:48:24 -0800 Subject: [PATCH] Try not to loose existing children --- cli/src/generate/node_types.rs | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/cli/src/generate/node_types.rs b/cli/src/generate/node_types.rs index 1db65511..b76df3a4 100644 --- a/cli/src/generate/node_types.rs +++ b/cli/src/generate/node_types.rs @@ -615,12 +615,20 @@ pub(crate) fn generate_node_types_json( .iter() .map(child_type_to_node_type) .collect::>(); + let mut multiple = info.children_without_fields.quantity.multiple; + let mut required = info.children_without_fields.quantity.required; + if let Some(children) = &mut node_type_json.children { + println!("children: {:?}", children); + children_types.append(&mut children.types); + multiple |= children.multiple; + required |= children.required; + } if children_types.len() > 0 { children_types.sort_unstable(); children_types.dedup(); node_type_json.children = Some(FieldInfoJSON { - multiple: info.children_without_fields.quantity.multiple, - required: info.children_without_fields.quantity.required, + multiple: multiple, + required: required, types: children_types, }); }