Map<String, dynamic> toJson() => { 'id': id, 'label': label, 'props': props, 'fields': fields?.map((d) => d.toJson()).toList(), };