getParentSrc method
Returns the parent source of a file.
This is used to get the main file of a part file.
it returns fileId if the file is not a part.
Implementation
@override
String getParentSrc(String fileId) {
final List<dynamic>? partOf = partOfOf(fileId);
if (partOf == null) return fileId;
final int type = partOf[GraphIndex.directiveType];
if (type == DirectiveStatement.partOf) {
return partOf[GraphIndex.directiveSrc];
} else if (type == DirectiveStatement.partOfLibrary) {
for (final MapEntry<String, List<dynamic>> asset in assets.entries) {
if (asset.value.length > GraphIndex.assetLibraryName &&
asset.value[GraphIndex.assetLibraryName] == partOf[GraphIndex.directiveStringUri]) {
return asset.key;
}
}
return fileId;
}
return fileId;
}