SessionZero-Client/sessionzero-client/scripts/models/schema/dataset_entry.gd

33 lines
750 B
GDScript

class_name DatasetEntry
extends RefCounted
var id: String
var name: String
var description: String
var icon: String
var top_level_fields: Dictionary[String, DataFieldValue]
var groups: Array[DatasetGroup]
func to_dict() -> Dictionary:
var groups_array: Array = []
for g in groups:
groups_array.append(g.to_json())
var top_level_fields_dict: Dictionary = {}
if top_level_fields:
for key in top_level_fields.keys():
var dfv: DataFieldValue = top_level_fields[key]
if dfv != null:
top_level_fields_dict[key] = dfv.to_dict()
else:
top_level_fields_dict[key] = null
return {
"id": id,
"name": name,
"description": description,
"icon": icon,
"top_level_fields": top_level_fields_dict,
"groups": groups_array
}