import { getLocalizedMetricName, translate } from '../../helpers/l10n'; | import { getLocalizedMetricName, translate } from '../../helpers/l10n'; | ||||
import { | import { | ||||
MEASURES_REDIRECTION, | MEASURES_REDIRECTION, | ||||
areLeakCCTMeasuresComputed, | |||||
areCCTMeasuresComputed, | areCCTMeasuresComputed, | ||||
areLeakCCTMeasuresComputed, | |||||
getCCTMeasureValue, | |||||
getDisplayMetrics, | getDisplayMetrics, | ||||
isDiffMetric, | isDiffMetric, | ||||
getCCTMeasureValue, | |||||
} from '../../helpers/measures'; | } from '../../helpers/measures'; | ||||
import { | import { | ||||
cleanQuery, | cleanQuery, | ||||
'Complexity', | 'Complexity', | ||||
]; | ]; | ||||
const CCT_METRIC_DOMAIN_MAP: Dict<string> = { | |||||
[MetricKey.security_issues]: 'Security', | |||||
[MetricKey.new_security_issues]: 'Security', | |||||
[MetricKey.reliability_issues]: 'Reliability', | |||||
[MetricKey.new_reliability_issues]: 'Reliability', | |||||
[MetricKey.maintainability_issues]: 'Maintainability', | |||||
[MetricKey.new_maintainability_issues]: 'Maintainability', | |||||
}; | |||||
const DEPRECATED_METRICS = [ | const DEPRECATED_METRICS = [ | ||||
MetricKey.blocker_violations, | MetricKey.blocker_violations, | ||||
MetricKey.new_blocker_violations, | MetricKey.new_blocker_violations, | ||||
return { | return { | ||||
...measure, | ...measure, | ||||
metric: { | |||||
...measure.metric, | |||||
domain: CCT_METRIC_DOMAIN_MAP[measure.metric.key] ?? measure.metric.domain, | |||||
}, | |||||
...(!isDiff && { value: calculatedValue }), | |||||
...(isDiff && { leak: calculatedValue }), | |||||
...{ [isDiff ? 'leak' : 'value']: calculatedValue }, | |||||
}; | }; | ||||
}); | }); | ||||
if (areLeakCCTMeasuresComputed(measures)) { | if (areLeakCCTMeasuresComputed(measures)) { | ||||
populatedMeasures = populatedMeasures.filter( | populatedMeasures = populatedMeasures.filter( | ||||
(measure) => !LEAK_OLD_TAXONOMY_METRICS.includes(measure.metric.key as MetricKey), | (measure) => !LEAK_OLD_TAXONOMY_METRICS.includes(measure.metric.key as MetricKey), |
type: 'DATA', | type: 'DATA', | ||||
name: 'Reliability', | name: 'Reliability', | ||||
description: 'Reliability issues', | description: 'Reliability issues', | ||||
domain: 'Reliability', | |||||
direction: 0, | direction: 0, | ||||
qualitative: false, | qualitative: false, | ||||
hidden: false, | hidden: false, | ||||
type: 'DATA', | type: 'DATA', | ||||
name: 'New Reliability', | name: 'New Reliability', | ||||
description: 'New Reliability issues', | description: 'New Reliability issues', | ||||
domain: 'Reliability', | |||||
direction: 0, | direction: 0, | ||||
qualitative: false, | qualitative: false, | ||||
hidden: false, | hidden: false, | ||||
type: 'DATA', | type: 'DATA', | ||||
name: 'Security', | name: 'Security', | ||||
description: 'Security issues', | description: 'Security issues', | ||||
domain: 'Security', | |||||
direction: 0, | direction: 0, | ||||
qualitative: false, | qualitative: false, | ||||
hidden: false, | hidden: false, | ||||
type: 'DATA', | type: 'DATA', | ||||
name: 'Security', | name: 'Security', | ||||
description: 'New Security issues', | description: 'New Security issues', | ||||
domain: 'Issues', | |||||
domain: 'Security', | |||||
direction: 0, | direction: 0, | ||||
qualitative: false, | qualitative: false, | ||||
hidden: false, | hidden: false, | ||||
type: 'DATA', | type: 'DATA', | ||||
name: 'Maintainability', | name: 'Maintainability', | ||||
description: 'Maintainability issues', | description: 'Maintainability issues', | ||||
domain: 'Issues', | |||||
domain: 'Maintainability', | |||||
direction: 0, | direction: 0, | ||||
qualitative: false, | qualitative: false, | ||||
hidden: false, | hidden: false, | ||||
type: 'DATA', | type: 'DATA', | ||||
name: 'Maintainability', | name: 'Maintainability', | ||||
description: 'New Maintainability issues', | description: 'New Maintainability issues', | ||||
domain: 'Issues', | |||||
domain: 'Maintainability', | |||||
direction: 0, | direction: 0, | ||||
qualitative: false, | qualitative: false, | ||||
hidden: false, | hidden: false, |