getPrAttributionData function
Future<AttributionData?>
getPrAttributionData(
- AttributionAppState appState, {
- required Future<
AttributionData?> calculateCommitAttribution(),
Get full attribution data from the provided AppState's attribution state. Uses ALL tracked files from the attribution state (not just staged files) because for PR attribution, files may not be staged yet. Returns null if no attribution data is available.
Implementation
Future<AttributionData?> getPrAttributionData(
AttributionAppState appState, {
required Future<AttributionData?> Function(
List<AttributionState>,
List<String>,
)
calculateCommitAttribution,
}) async {
final attribution = appState.attribution;
if (attribution == null) {
return null;
}
final trackedFiles = attribution.trackedFiles;
if (trackedFiles.isEmpty) {
return null;
}
try {
return await calculateCommitAttribution([attribution], trackedFiles);
} catch (e) {
// Log error but don't throw.
return null;
}
}