allPartsById property
A helper getter to provide a flattened map of all body parts, keyed by their ID.
Implementation
@JsonKey(includeFromJson: false, includeToJson: false)
Map<String, BodyPart> get allPartsById {
final map = <String, BodyPart>{};
void traverse(BodyPart part) {
map[part.id] = part;
for (final child in part.children) {
traverse(child);
}
}
for (final part in parts) {
traverse(part);
}
return map;
}