buildDslPatternPromotionDecisionJson function

Map<String, dynamic> buildDslPatternPromotionDecisionJson(
  1. FFProject project, {
  2. required String signature,
  3. required String componentName,
})

Builds a repeated-pattern promotion decision snapshot for one signature.

Implementation

Map<String, dynamic> buildDslPatternPromotionDecisionJson(
  FFProject project, {
  required String signature,
  required String componentName,
}) {
  final candidate = _findRepeatedPatternCandidates(
    project,
  ).cast<Map<String, dynamic>>().firstWhere(
    (entry) => entry['signature'] == signature,
    orElse: () => <String, dynamic>{},
  );
  return <String, dynamic>{
    'kind': 'flash_dsl_pattern_promotion_decision',
    'componentName': componentName,
    'signature': signature,
    'found': candidate.isNotEmpty,
    if (candidate.isNotEmpty) 'candidate': candidate,
  };
}