From 30934f400a0561fad96567146a4ef5280d1ab55c Mon Sep 17 00:00:00 2001 From: hunteraraujo Date: Wed, 13 Sep 2023 17:32:23 -0700 Subject: [PATCH] Enhance SkillTreeNode Model to Include Additional Attributes This commit extends the SkillTreeNode class to incorporate new attributes such as 'data', 'label', and 'shape', making the model more comprehensive. The JSON deserialization is also updated to handle optional or missing fields by providing default values, improving the robustness of the model. --- .../models/skill_tree/skill_tree_node.dart | 23 +++++++++++++------ 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/frontend/lib/models/skill_tree/skill_tree_node.dart b/frontend/lib/models/skill_tree/skill_tree_node.dart index 6b94995c..5d007739 100644 --- a/frontend/lib/models/skill_tree/skill_tree_node.dart +++ b/frontend/lib/models/skill_tree/skill_tree_node.dart @@ -1,18 +1,27 @@ import 'package:auto_gpt_flutter_client/models/skill_tree/skill_node_data.dart'; -// TODO: Update this with actual data class SkillTreeNode { final String color; - final int id; + final SkillNodeData data; + final String id; + final String label; + final String shape; - // final SkillNodeData data; - - SkillTreeNode({required this.color, required this.id}); + SkillTreeNode({ + required this.color, + required this.data, + required this.id, + required this.label, + required this.shape, + }); factory SkillTreeNode.fromJson(Map json) { return SkillTreeNode( - color: json['color'], - id: json['id'], + color: json['color'] ?? "", + data: SkillNodeData.fromJson(json['data'] ?? {}), + id: json['id'] ?? "", + label: json['label'] ?? "", + shape: json['shape'] ?? "", ); } }