]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-22049 Align MetricKey, MetricType
authorViktor Vorona <viktor.vorona@sonarsource.com>
Thu, 25 Apr 2024 14:15:10 +0000 (16:15 +0200)
committerMatteo Mara <matteo.mara@sonarsource.com>
Tue, 30 Apr 2024 08:59:04 +0000 (10:59 +0200)
143 files changed:
server/sonar-web/src/main/js/api/mocks/MeasuresServiceMock.ts
server/sonar-web/src/main/js/api/mocks/QualityGatesServiceMock.ts
server/sonar-web/src/main/js/api/mocks/TimeMachineServiceMock.ts
server/sonar-web/src/main/js/api/mocks/data/measures.ts
server/sonar-web/src/main/js/api/time-machine.ts
server/sonar-web/src/main/js/app/components/metrics/__tests__/MetricsContextProvider-test.tsx
server/sonar-web/src/main/js/app/components/nav/component/branch-like/QualityGateStatus.tsx
server/sonar-web/src/main/js/apps/account/projects/ProjectCard.tsx
server/sonar-web/src/main/js/apps/code/__tests__/Code-it.ts
server/sonar-web/src/main/js/apps/code/components/ComponentMeasure.tsx
server/sonar-web/src/main/js/apps/code/components/ComponentsHeader.tsx
server/sonar-web/src/main/js/apps/code/utils.ts
server/sonar-web/src/main/js/apps/coding-rules/components/BulkChangeModal.tsx
server/sonar-web/src/main/js/apps/coding-rules/components/Facet.tsx
server/sonar-web/src/main/js/apps/coding-rules/components/RuleDetailsIssues.tsx
server/sonar-web/src/main/js/apps/component-measures/__tests__/ComponentMeasures-it.tsx
server/sonar-web/src/main/js/apps/component-measures/__tests__/utils-test.ts
server/sonar-web/src/main/js/apps/component-measures/components/ComponentMeasuresApp.tsx
server/sonar-web/src/main/js/apps/component-measures/components/MeasureContent.tsx
server/sonar-web/src/main/js/apps/component-measures/components/MeasureHeader.tsx
server/sonar-web/src/main/js/apps/component-measures/config/bubbles.ts
server/sonar-web/src/main/js/apps/component-measures/config/complementary.ts
server/sonar-web/src/main/js/apps/component-measures/config/domains.ts
server/sonar-web/src/main/js/apps/component-measures/drilldown/BubbleChartView.tsx
server/sonar-web/src/main/js/apps/component-measures/drilldown/ColorRatingsLegend.tsx
server/sonar-web/src/main/js/apps/component-measures/drilldown/ComponentCell.tsx
server/sonar-web/src/main/js/apps/component-measures/drilldown/FilesView.tsx
server/sonar-web/src/main/js/apps/component-measures/drilldown/MeasureCell.tsx
server/sonar-web/src/main/js/apps/component-measures/drilldown/TreeMapView.tsx
server/sonar-web/src/main/js/apps/component-measures/sidebar/SubnavigationMeasureValue.tsx
server/sonar-web/src/main/js/apps/component-measures/utils.ts
server/sonar-web/src/main/js/apps/issues/sidebar/CreationDateFacet.tsx
server/sonar-web/src/main/js/apps/issues/sidebar/DirectoryFacet.tsx
server/sonar-web/src/main/js/apps/issues/sidebar/FileFacet.tsx
server/sonar-web/src/main/js/apps/issues/sidebar/ListStyleFacet.tsx
server/sonar-web/src/main/js/apps/issues/sidebar/ListStyleFacetFooter.tsx
server/sonar-web/src/main/js/apps/issues/sidebar/ProjectFacet.tsx
server/sonar-web/src/main/js/apps/issues/utils.ts
server/sonar-web/src/main/js/apps/overview/branches/ActivityPanel.tsx
server/sonar-web/src/main/js/apps/overview/branches/AnalysisVariations.tsx
server/sonar-web/src/main/js/apps/overview/branches/BranchMetaTopBar.tsx
server/sonar-web/src/main/js/apps/overview/branches/BranchOverview.tsx
server/sonar-web/src/main/js/apps/overview/branches/MeasuresPanelPercentCards.tsx
server/sonar-web/src/main/js/apps/overview/branches/NewCodeMeasuresPanel.tsx
server/sonar-web/src/main/js/apps/overview/branches/NoCodeWarning.tsx
server/sonar-web/src/main/js/apps/overview/branches/OverallCodeMeasuresPanel.tsx
server/sonar-web/src/main/js/apps/overview/branches/QualityGateCondition.tsx
server/sonar-web/src/main/js/apps/overview/branches/QualityGateConditions.tsx
server/sonar-web/src/main/js/apps/overview/branches/QualityGateSimplifiedCondition.tsx
server/sonar-web/src/main/js/apps/overview/branches/SoftwareImpactMeasureBreakdownCard.tsx
server/sonar-web/src/main/js/apps/overview/branches/SoftwareImpactMeasureCard.tsx
server/sonar-web/src/main/js/apps/overview/branches/SonarLintPromotion.tsx
server/sonar-web/src/main/js/apps/overview/branches/__tests__/ActivityPanel-it.tsx
server/sonar-web/src/main/js/apps/overview/branches/__tests__/BranchOverview-it.tsx
server/sonar-web/src/main/js/apps/overview/branches/__tests__/QualityGateCondition-test.tsx
server/sonar-web/src/main/js/apps/overview/branches/__tests__/QualityGatePanelSection-test.tsx
server/sonar-web/src/main/js/apps/overview/branches/__tests__/QualityGateSimplifiedCondition-test.tsx
server/sonar-web/src/main/js/apps/overview/branches/__tests__/SonarLintPromotion-test.tsx
server/sonar-web/src/main/js/apps/overview/components/IssueMeasuresCardInner.tsx
server/sonar-web/src/main/js/apps/overview/components/MeasuresCard.tsx
server/sonar-web/src/main/js/apps/overview/components/MeasuresCardNumber.tsx
server/sonar-web/src/main/js/apps/overview/components/MeasuresCardPercent.tsx
server/sonar-web/src/main/js/apps/overview/pullRequests/BranchQualityGateConditions.tsx
server/sonar-web/src/main/js/apps/overview/pullRequests/IssueMeasuresCard.tsx
server/sonar-web/src/main/js/apps/overview/pullRequests/MeasuresCardPanel.tsx
server/sonar-web/src/main/js/apps/overview/pullRequests/PullRequestMetaTopBar.tsx
server/sonar-web/src/main/js/apps/overview/pullRequests/__tests__/BranchQualityGate-it.tsx
server/sonar-web/src/main/js/apps/overview/pullRequests/__tests__/PullRequestOverview-it.tsx
server/sonar-web/src/main/js/apps/overview/utils.tsx
server/sonar-web/src/main/js/apps/projectActivity/components/ProjectActivityApp.tsx
server/sonar-web/src/main/js/apps/projectActivity/components/__tests__/ProjectActivityApp-it.tsx
server/sonar-web/src/main/js/apps/projectActivity/utils.ts
server/sonar-web/src/main/js/apps/projectInformation/ProjectInformationApp.tsx
server/sonar-web/src/main/js/apps/projectInformation/__tests__/ProjectInformationApp-it.tsx
server/sonar-web/src/main/js/apps/projectInformation/about/components/MetaSize.tsx
server/sonar-web/src/main/js/apps/projectInformation/badges/ProjectBadges.tsx
server/sonar-web/src/main/js/apps/projectInformation/badges/__tests__/ProjectBadges-test.tsx
server/sonar-web/src/main/js/apps/projects/components/AllProjects.tsx
server/sonar-web/src/main/js/apps/projects/components/__tests__/AllProjects-test.tsx
server/sonar-web/src/main/js/apps/projects/components/project-card/ProjectCard.tsx
server/sonar-web/src/main/js/apps/projects/components/project-card/ProjectCardMeasures.tsx
server/sonar-web/src/main/js/apps/projects/components/project-card/__tests__/ProjectCard-test.tsx
server/sonar-web/src/main/js/apps/projects/components/project-card/__tests__/ProjectCardMeasures-test.tsx
server/sonar-web/src/main/js/apps/projects/filters/CoverageFilter.tsx
server/sonar-web/src/main/js/apps/projects/filters/NewCoverageFilter.tsx
server/sonar-web/src/main/js/apps/projects/filters/NewLinesFilter.tsx
server/sonar-web/src/main/js/apps/projects/filters/RatingFacet.tsx
server/sonar-web/src/main/js/apps/projects/filters/SecurityReviewFilter.tsx
server/sonar-web/src/main/js/apps/projects/utils.ts
server/sonar-web/src/main/js/apps/quality-gates/__tests__/utils-test.ts
server/sonar-web/src/main/js/apps/quality-gates/components/CaycCondition.tsx
server/sonar-web/src/main/js/apps/quality-gates/components/ConditionValueDescription.tsx
server/sonar-web/src/main/js/apps/quality-gates/components/Conditions.tsx
server/sonar-web/src/main/js/apps/quality-gates/utils.ts
server/sonar-web/src/main/js/apps/quality-profiles/details/ProfileRulesRow.tsx
server/sonar-web/src/main/js/apps/quality-profiles/home/EvolutionRules.tsx
server/sonar-web/src/main/js/apps/security-hotspots/SecurityHotspotsApp.tsx
server/sonar-web/src/main/js/apps/security-hotspots/SecurityHotspotsAppRenderer.tsx
server/sonar-web/src/main/js/apps/security-hotspots/__tests__/SecurityHotspotsApp-it.tsx
server/sonar-web/src/main/js/apps/security-hotspots/components/HotspotSidebarHeader.tsx
server/sonar-web/src/main/js/components/SourceViewer/SourceViewerCode.tsx
server/sonar-web/src/main/js/components/SourceViewer/SourceViewerHeader.tsx
server/sonar-web/src/main/js/components/SourceViewer/__tests__/SourceViewer-it.tsx
server/sonar-web/src/main/js/components/activity-graph/AddGraphMetric.tsx
server/sonar-web/src/main/js/components/activity-graph/AddGraphMetricPopup.tsx
server/sonar-web/src/main/js/components/activity-graph/GraphsLegendItem.tsx
server/sonar-web/src/main/js/components/activity-graph/GraphsTooltipsContentCoverage.tsx
server/sonar-web/src/main/js/components/activity-graph/GraphsTooltipsContentDuplication.tsx
server/sonar-web/src/main/js/components/activity-graph/__tests__/ActivityGraph-it.tsx
server/sonar-web/src/main/js/components/activity-graph/__tests__/DataTableModal-it.tsx
server/sonar-web/src/main/js/components/activity-graph/__tests__/GraphsTooltips-it.tsx
server/sonar-web/src/main/js/components/activity-graph/__tests__/utils-test.ts
server/sonar-web/src/main/js/components/activity-graph/utils.ts
server/sonar-web/src/main/js/components/charts/AdvancedTimeline.tsx
server/sonar-web/src/main/js/components/charts/LanguageDistribution.tsx
server/sonar-web/src/main/js/components/charts/ZoomTimeLine.tsx
server/sonar-web/src/main/js/components/charts/__tests__/AdvancedTimeline-test.tsx
server/sonar-web/src/main/js/components/common/PageCounter.tsx
server/sonar-web/src/main/js/components/controls/ListFooter.tsx
server/sonar-web/src/main/js/components/measure/Measure.tsx
server/sonar-web/src/main/js/components/measure/MeasureIndicator.tsx
server/sonar-web/src/main/js/components/measure/RatingTooltipContent.tsx
server/sonar-web/src/main/js/components/measure/__tests__/MeasureIndicator-test.tsx
server/sonar-web/src/main/js/components/shared/__tests__/utils-test.ts
server/sonar-web/src/main/js/components/shared/utils.ts
server/sonar-web/src/main/js/components/ui/FilesCounter.tsx
server/sonar-web/src/main/js/components/ui/Rating.tsx
server/sonar-web/src/main/js/helpers/__tests__/measures-test.ts
server/sonar-web/src/main/js/helpers/constants.ts
server/sonar-web/src/main/js/helpers/issues.ts
server/sonar-web/src/main/js/helpers/measures.ts
server/sonar-web/src/main/js/helpers/mocks/component.ts
server/sonar-web/src/main/js/helpers/mocks/project-activity.ts
server/sonar-web/src/main/js/helpers/mocks/quality-gates.ts
server/sonar-web/src/main/js/helpers/qualityGates.ts
server/sonar-web/src/main/js/helpers/testMocks.ts
server/sonar-web/src/main/js/queries/badges.ts
server/sonar-web/src/main/js/sonar-aligned/helpers/__tests__/measures-test.ts
server/sonar-web/src/main/js/sonar-aligned/helpers/measures.ts
server/sonar-web/src/main/js/sonar-aligned/types/metrics.ts [new file with mode: 0644]
server/sonar-web/src/main/js/types/metrics.ts [deleted file]
server/sonar-web/src/main/js/types/project-activity.ts
server/sonar-web/src/main/js/types/quality-gates.ts

index fbe372e58d3c022790ccba57500324ff797158d7..6c9fb99a6c2be7965bfa323034cf30130d0c47cb 100644 (file)
@@ -19,8 +19,8 @@
  */
 import { cloneDeep } from 'lodash';
 import { BranchParameters } from '~sonar-aligned/types/branch-like';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { mockMetric, mockPeriod } from '../../helpers/testMocks';
-import { MetricKey } from '../../types/metrics';
 import { Metric, Period } from '../../types/types';
 import { getMeasures, getMeasuresWithPeriod, getMeasuresWithPeriodAndMetrics } from '../measures';
 import { ComponentTree, mockFullComponentTree } from './data/components';
index bcc72982f3e99b3bd1c8bac07c2c395cadd4b218..84ca1fd02edf699c99a864589118ad70f025ed79 100644 (file)
@@ -18,6 +18,7 @@
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
 import { cloneDeep, flatten, omit, remove } from 'lodash';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { Project } from '../../apps/quality-gates/components/Projects';
 import {
   mockQualityGate,
@@ -26,7 +27,6 @@ import {
 } from '../../helpers/mocks/quality-gates';
 import { mockUserBase } from '../../helpers/mocks/users';
 import { mockCondition, mockGroup } from '../../helpers/testMocks';
-import { MetricKey } from '../../types/metrics';
 import {
   QualityGateApplicationStatus,
   QualityGateProjectStatus,
index 9c1249a1516f3afec8a74a6c67986232d6cf737c..d5a29963f7edae80b7a565f603bf9103ca3ed1ba 100644 (file)
@@ -19,9 +19,9 @@
  */
 import { chunk, cloneDeep, times } from 'lodash';
 import { BranchParameters } from '~sonar-aligned/types/branch-like';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { parseDate } from '../../helpers/dates';
 import { mockHistoryItem, mockMeasureHistory } from '../../helpers/mocks/project-activity';
-import { MetricKey } from '../../types/metrics';
 import { MeasureHistory } from '../../types/project-activity';
 import { TimeMachineResponse, getAllTimeMachineData, getTimeMachineData } from '../time-machine';
 
index 91f1480c84a10d23d48fc217be54769d3af82674..5d85c59f327a78b63feaaf6e89a126af65f8656e 100644 (file)
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
 import { keyBy } from 'lodash';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import { isDiffMetric } from '../../../helpers/measures';
 import { mockMeasure } from '../../../helpers/testMocks';
 import { SoftwareImpactSeverity } from '../../../types/clean-code-taxonomy';
 import { IssueDeprecatedStatus, IssueType, RawIssue } from '../../../types/issues';
-import { MetricKey, MetricType } from '../../../types/metrics';
 import { Measure } from '../../../types/types';
 import { ComponentTree } from './components';
 import { IssueData } from './issues';
index 1941bcdca8c6feaf12821c0acdb36390b4c8c597..d080224310ec471fdcd3846cb3ccecb9d033d3fd 100644 (file)
@@ -20,7 +20,7 @@
 import { throwGlobalError } from '~sonar-aligned/helpers/error';
 import { getJSON } from '~sonar-aligned/helpers/request';
 import { BranchParameters } from '~sonar-aligned/types/branch-like';
-import { MetricKey } from '../types/metrics';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { Paging } from '../types/types';
 
 export interface TimeMachineResponse {
index 7700e011a8df27246767af45d99e984ea6bdc383..b5e34cece78a20d8601cff9e3d1122b27c16516e 100644 (file)
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
 import * as React from 'react';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { getAllMetrics } from '../../../../api/metrics';
 import { mockMetric } from '../../../../helpers/testMocks';
 import { renderComponent } from '../../../../helpers/testReactTestingUtils';
 import { byRole } from '../../../../helpers/testSelector';
-import { MetricKey } from '../../../../types/metrics';
 import { MetricsContext } from '../MetricsContext';
 import MetricsContextProvider from '../MetricsContextProvider';
 
index 8d2aa27811c14046dccd13bb38ba9c3c8ae07d2b..65ab4beedbfb9a11b378fea1f4eeda2768831861 100644 (file)
@@ -21,9 +21,9 @@ import classNames from 'classnames';
 import { QualityGateIndicator } from 'design-system';
 import React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import { translateWithParameters } from '../../../../../helpers/l10n';
 import { BranchLike } from '../../../../../types/branch-like';
-import { MetricType } from '../../../../../types/metrics';
 
 interface Props {
   branchLike: BranchLike;
index c314f388849406c884e13f9dbc46be4c2eeec142..b655713b167e4f439841e17a46c0c08827fe7150 100644 (file)
@@ -28,13 +28,13 @@ import {
 } from 'design-system';
 import * as React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import MetaLink from '../../../components/common/MetaLink';
 import Tooltip from '../../../components/controls/Tooltip';
 import DateFromNow from '../../../components/intl/DateFromNow';
 import { translate, translateWithParameters } from '../../../helpers/l10n';
 import { orderLinks } from '../../../helpers/projectLinks';
 import { getProjectUrl } from '../../../helpers/urls';
-import { MetricType } from '../../../types/metrics';
 import { MyProject, ProjectLink, Status } from '../../../types/types';
 
 interface Props {
index 0b47121cad72302ff96b341821321671468eeb18..69f25326f11fb557c64fb02bee5fd74073fd924d 100644 (file)
@@ -22,6 +22,7 @@ import userEvent from '@testing-library/user-event';
 import { UserEvent } from '@testing-library/user-event/dist/types/setup/setup';
 import { keyBy, omit, times } from 'lodash';
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import BranchesServiceMock from '../../../api/mocks/BranchesServiceMock';
 import ComponentsServiceMock from '../../../api/mocks/ComponentsServiceMock';
 import IssuesServiceMock from '../../../api/mocks/IssuesServiceMock';
@@ -31,7 +32,6 @@ import { mockComponent } from '../../../helpers/mocks/component';
 import { mockMeasure } from '../../../helpers/testMocks';
 import { renderAppWithComponentContext } from '../../../helpers/testReactTestingUtils';
 import { QuerySelector, byLabelText, byRole, byText } from '../../../helpers/testSelector';
-import { MetricKey } from '../../../types/metrics';
 import { Component } from '../../../types/types';
 import routes from '../routes';
 
index 6092b1081fcfa5042e9a57d25b3968a506e32713..98f076fbee3091f3c132003a10e06e8d9b059001 100644 (file)
@@ -27,6 +27,7 @@ import {
 } from 'design-system';
 import * as React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import Measure from '../../../components/measure/Measure';
 import { getLeakValue } from '../../../components/measure/utils';
 import {
@@ -39,7 +40,6 @@ import {
   isDiffMetric,
 } from '../../../helpers/measures';
 import { isApplication, isProject } from '../../../types/component';
-import { MetricKey, MetricType } from '../../../types/metrics';
 import { Metric, Status, ComponentMeasure as TypeComponentMeasure } from '../../../types/types';
 
 interface Props {
index c0ffe39b973d4f8b284b85114d1e328f07bc2d10..7c5f749e51256aa16c98ee96b9f4f810e468f7a4 100644 (file)
  */
 import { ContentCell, NumericalCell, RatingCell } from 'design-system';
 import * as React from 'react';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import {
   CCT_SOFTWARE_QUALITY_METRICS,
   OLD_TO_NEW_TAXONOMY_METRICS_MAP,
 } from '../../../helpers/constants';
 import { translate } from '../../../helpers/l10n';
 import { isPortfolioLike } from '../../../types/component';
-import { MetricKey } from '../../../types/metrics';
 import { ComponentMeasure } from '../../../types/types';
 
 interface ComponentsHeaderProps {
index 89d9333d7c117e632b4ff68f89c7f389dbd81c89..60a43d3cd4b0d97cdf8af7815f30dcf35619292c 100644 (file)
  */
 import { getBranchLikeQuery } from '~sonar-aligned/helpers/branch-like';
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { getBreadcrumbs, getChildren, getComponent, getComponentData } from '../../api/components';
 import { isPullRequest } from '../../helpers/branch-like';
 import { CCT_SOFTWARE_QUALITY_METRICS, OLD_TAXONOMY_METRICS } from '../../helpers/constants';
 import { BranchLike } from '../../types/branch-like';
 import { isPortfolioLike } from '../../types/component';
-import { MetricKey } from '../../types/metrics';
 import { Breadcrumb, ComponentMeasure } from '../../types/types';
 import {
   addComponent,
index de69a9319e93dbe72103026be2463c20534c313c..d1d0a55ad19669e77fb5a6f698183619d36b776f 100644 (file)
 import { ButtonPrimary, FlagMessage, FormField, Modal, Spinner } from 'design-system';
 import * as React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import { Profile, bulkActivateRules, bulkDeactivateRules } from '../../../api/quality-profiles';
 import withLanguagesContext from '../../../app/components/languages/withLanguagesContext';
 import { translate, translateWithParameters } from '../../../helpers/l10n';
 import { Languages } from '../../../types/languages';
-import { MetricType } from '../../../types/metrics';
 import { Dict } from '../../../types/types';
 import { Query, serializeQuery } from '../query';
 import { QualityProfileSelector } from './QualityProfileSelector';
index cabaca830404c95282ae8e04868d723413331d83..eb4d06aba2ffff80ad0a991bbc930cafcc0adc1a 100644 (file)
@@ -22,9 +22,9 @@ import { FacetBox, FacetItem } from 'design-system';
 import { orderBy, sortBy, without } from 'lodash';
 import * as React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import Tooltip from '../../../components/controls/Tooltip';
 import { translate } from '../../../helpers/l10n';
-import { MetricType } from '../../../types/metrics';
 import { Dict } from '../../../types/types';
 import { FacetItemsList } from '../../issues/sidebar/FacetItemsList';
 import { MultipleSelectionHint } from '../../issues/sidebar/MultipleSelectionHint';
index 2813d2bf9c6ce2ce4aa2c2bfe466f29744d6e279..c09f2c8b9c01ab0b683d94ed56e9f0863b53bbf8 100644 (file)
@@ -22,6 +22,7 @@ import { keyBy } from 'lodash';
 import * as React from 'react';
 import { FormattedMessage } from 'react-intl';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import { getComponentData } from '../../../api/components';
 import { getFacet } from '../../../api/issues';
 import withAvailableFeatures, {
@@ -33,7 +34,6 @@ import { translate } from '../../../helpers/l10n';
 import { getIssuesUrl } from '../../../helpers/urls';
 import { Feature } from '../../../types/features';
 import { FacetName } from '../../../types/issues';
-import { MetricType } from '../../../types/metrics';
 import { Dict, RuleDetails } from '../../../types/types';
 
 interface Props extends WithAvailableFeaturesProps {
index 3bd91c2e7639ffefdf9fd4d0232ca00d7f2a7015..622cdbe9b28449a0bed33636fa7f59cb6c4692e7 100644 (file)
@@ -22,6 +22,7 @@ import userEvent from '@testing-library/user-event';
 import { times } from 'lodash';
 import selectEvent from 'react-select-event';
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import BranchesServiceMock from '../../../api/mocks/BranchesServiceMock';
 import ComponentsServiceMock from '../../../api/mocks/ComponentsServiceMock';
 import IssuesServiceMock from '../../../api/mocks/IssuesServiceMock';
@@ -32,7 +33,6 @@ import { renderAppWithComponentContext } from '../../../helpers/testReactTesting
 import { byLabelText, byRole, byTestId, byText } from '../../../helpers/testSelector';
 import { ComponentContextShape } from '../../../types/component';
 import { Feature } from '../../../types/features';
-import { MetricKey } from '../../../types/metrics';
 import routes from '../routes';
 
 jest.mock('lodash', () => ({
index 23eca5a2f0d2fb4b66a2f26d5bb934695c4bf29c..fac4fe99f9c51e2a41e2b1a11db07eabd7b6a4a9 100644 (file)
@@ -18,8 +18,8 @@
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import { MeasurePageView } from '../../../types/measures';
-import { MetricKey, MetricType } from '../../../types/metrics';
 import { ComponentMeasure } from '../../../types/types';
 import * as utils from '../utils';
 
index 80ad48f8a8f6cd90cd3978f0664b88d0b385588a..a699e6a12cb26c4e9f5e241686b3f0ade3580e5d 100644 (file)
@@ -35,6 +35,7 @@ import HelpTooltip from '~sonar-aligned/components/controls/HelpTooltip';
 import { withRouter } from '~sonar-aligned/components/hoc/withRouter';
 import { getBranchLikeQuery } from '~sonar-aligned/helpers/branch-like';
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { Location, Router } from '~sonar-aligned/types/router';
 import { getMeasuresWithPeriod } from '../../../api/measures';
 import { getAllMetrics } from '../../../api/metrics';
@@ -49,7 +50,6 @@ import { areLeakAndOverallCCTMeasuresComputed } from '../../../helpers/measures'
 import { WithBranchLikesProps, useBranchesQuery } from '../../../queries/branch';
 import { isPortfolioLike } from '../../../types/component';
 import { MeasurePageView } from '../../../types/measures';
-import { MetricKey } from '../../../types/metrics';
 import { ComponentMeasure, Dict, MeasureEnhanced, Metric, Period } from '../../../types/types';
 import Sidebar from '../sidebar/Sidebar';
 import {
index 2d217fc8a1c13c2f2c738e95d035daa76bbe0fae..51ed61698e431714697ca70ae9cae5bc07a28ee2 100644 (file)
@@ -20,6 +20,7 @@
 import { Highlight, KeyboardHint } from 'design-system';
 import * as React from 'react';
 import { getBranchLikeQuery } from '~sonar-aligned/helpers/branch-like';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { Router } from '~sonar-aligned/types/router';
 import { getComponentTree } from '../../../api/components';
 import { getMeasures } from '../../../api/measures';
@@ -37,7 +38,6 @@ import { getProjectUrl } from '../../../helpers/urls';
 import { BranchLike } from '../../../types/branch-like';
 import { isApplication, isFile, isView } from '../../../types/component';
 import { MeasurePageView } from '../../../types/measures';
-import { MetricKey } from '../../../types/metrics';
 import {
   ComponentMeasure,
   ComponentMeasureEnhanced,
index 7f87036451aaf360b275e7eea8795a5fd2cdde6b..c0ee151f811c9b2f968076bac529cadf914d812b 100644 (file)
@@ -23,6 +23,7 @@ import { MetricsRatingBadge, RatingLabel } from 'design-system';
 import * as React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import LanguageDistribution from '../../../components/charts/LanguageDistribution';
 import Tooltip from '../../../components/controls/Tooltip';
 import Measure from '../../../components/measure/Measure';
@@ -30,7 +31,6 @@ import { getLocalizedMetricName, translate, translateWithParameters } from '../.
 import { isDiffMetric } from '../../../helpers/measures';
 import { getMeasureHistoryUrl } from '../../../helpers/urls';
 import { BranchLike } from '../../../types/branch-like';
-import { MetricKey, MetricType } from '../../../types/metrics';
 import { ComponentMeasure, Metric, Period, Measure as TypeMeasure } from '../../../types/types';
 import { getMetricSubnavigationName, hasFullMeasures } from '../utils';
 import LeakPeriodLegend from './LeakPeriodLegend';
index e6cb99ca83312c5f16fa28039375c58d70dc35d9..1f0eeb1771ae529118ef1ba72eb03841b92ab832 100644 (file)
@@ -17,7 +17,7 @@
  * along with this program; if not, write to the Free Software Foundation,
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
-import { MetricKey } from '../../../types/metrics';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 
 export const bubbles: {
   [domain: string]: {
index b47adbdc3eb05b2a108c8bb40676f6eacb42050f..bd6c430b8c5c54cdaec922e434e4cb4942b79b06 100644 (file)
@@ -17,7 +17,7 @@
  * along with this program; if not, write to the Free Software Foundation,
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
-import { MetricKey } from '../../../types/metrics';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { Dict } from '../../../types/types';
 
 export const complementary: Dict<MetricKey[]> = {
index b9c6fcd8f3e11788c9ad0c0df8ca8e306b5236f3..6eb98c969f22b7720bbd9e7fdb84d81f6dbb4da8 100644 (file)
@@ -17,7 +17,7 @@
  * along with this program; if not, write to the Free Software Foundation,
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
-import { MetricKey } from '../../../types/metrics';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 
 interface Domains {
   [domain: string]: { categories?: string[]; order: string[] };
index cc448a7e4776c11a6793dde7a78dc31293550423..a635695ddb7e6277aaed63766de2b1dbff489ee2 100644 (file)
@@ -29,6 +29,7 @@ import {
 import * as React from 'react';
 import HelpTooltip from '~sonar-aligned/components/controls/HelpTooltip';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import {
   getLocalizedMetricDomain,
   getLocalizedMetricName,
@@ -40,7 +41,6 @@ import { isDefined } from '../../../helpers/types';
 import { getComponentDrilldownUrl } from '../../../helpers/urls';
 import { BranchLike } from '../../../types/branch-like';
 import { isProject, isView } from '../../../types/component';
-import { MetricKey } from '../../../types/metrics';
 import {
   ComponentMeasureEnhanced,
   ComponentMeasure as ComponentMeasureI,
index 9d01b8d4ba71098d88ea7455f5bdcce3678dc6fb..7633c1cdf0ca5000433c7bf36e0e4e8881f1324f 100644 (file)
@@ -20,8 +20,8 @@
 import { ColorFilterOption, ColorsLegend } from 'design-system';
 import * as React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import { translateWithParameters } from '../../../helpers/l10n';
-import { MetricType } from '../../../types/metrics';
 
 export interface ColorRatingsLegendProps {
   className?: string;
index fab3b2edecbfa29af0bc0f5293788276e9979ab2..28563b0124e8878b9ae1b8b70c8d674fc6479e89 100644 (file)
@@ -21,13 +21,13 @@ import { ContentCell, HoverLink, Note, QualifierIcon } from 'design-system';
 import * as React from 'react';
 import { To } from 'react-router-dom';
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { fillBranchLike } from '../../../helpers/branch-like';
 import { limitComponentName, splitPath } from '../../../helpers/path';
 import { getComponentDrilldownUrlWithSelection, getProjectUrl } from '../../../helpers/urls';
 import { BranchLike } from '../../../types/branch-like';
 import { isApplication, isProject } from '../../../types/component';
 import { MeasurePageView } from '../../../types/measures';
-import { MetricKey } from '../../../types/metrics';
 import { ComponentMeasure, ComponentMeasureEnhanced, Metric } from '../../../types/types';
 
 export interface ComponentCellProps {
index a3820b9ceda7c01f4a269ea6ee4c1b7e3d35a54a..227d382a3a1bcd857dd88e624435da53be4d8eb8 100644 (file)
@@ -21,6 +21,7 @@ import { ButtonSecondary, FlagMessage } from 'design-system';
 import { throttle } from 'lodash';
 import * as React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import ListFooter from '../../../components/controls/ListFooter';
 import { isInput, isShortcut } from '../../../helpers/keyboardEventHelpers';
 import { KeyboardKeys } from '../../../helpers/keycodes';
@@ -28,7 +29,6 @@ import { translate, translateWithParameters } from '../../../helpers/l10n';
 import { isDiffMetric, isPeriodBestValue } from '../../../helpers/measures';
 import { BranchLike } from '../../../types/branch-like';
 import { MeasurePageView } from '../../../types/measures';
-import { MetricType } from '../../../types/metrics';
 import {
   ComponentMeasure,
   ComponentMeasureEnhanced,
index d167cce21dfa2817637dbd43b5bf180f9b93d687..11518a5c49018e0a0676cae44da6c397c03398c8 100644 (file)
 import { MetricsRatingBadge, NumericalCell, RatingLabel } from 'design-system';
 import * as React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import Measure from '../../../components/measure/Measure';
 import { translate, translateWithParameters } from '../../../helpers/l10n';
 import { getCCTMeasureValue, isDiffMetric } from '../../../helpers/measures';
-import { MetricType } from '../../../types/metrics';
 import { ComponentMeasureEnhanced, MeasureEnhanced, Metric } from '../../../types/types';
 
 interface Props {
index b33746cd45a9f8e7e5a6fe217be193832cfc85f1..365eac7dba82dc752f526da6ed2a5f949965dbe6 100644 (file)
@@ -33,13 +33,13 @@ import { isEmpty } from 'lodash';
 import * as React from 'react';
 import { AutoSizer } from 'react-virtualized/dist/commonjs/AutoSizer';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import ColorBoxLegend from '../../../components/charts/ColorBoxLegend';
 import ColorGradientLegend from '../../../components/charts/ColorGradientLegend';
 import { getComponentMeasureUniqueKey } from '../../../helpers/component';
 import { getLocalizedMetricName, translate } from '../../../helpers/l10n';
 import { isDiffMetric } from '../../../helpers/measures';
 import { isDefined } from '../../../helpers/types';
-import { MetricKey, MetricType } from '../../../types/metrics';
 import { ComponentMeasureEnhanced, ComponentMeasureIntern, Metric } from '../../../types/types';
 import EmptyResult from './EmptyResult';
 
index 30f140b329ad898f77639ed4970652c62aa935f0..f287b316657f7e14cbc735c8302b6609118ecb7a 100644 (file)
 import { MetricsRatingBadge, Note, RatingLabel } from 'design-system';
 import React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import Measure from '../../../components/measure/Measure';
 import { translate, translateWithParameters } from '../../../helpers/l10n';
 import { isDiffMetric } from '../../../helpers/measures';
-import { MetricType } from '../../../types/metrics';
 import { MeasureEnhanced } from '../../../types/types';
 
 interface Props {
index bbd182854a8f128641b6e7ce936c81ccd14eef8d..13c90589ca9c757ef543bf6af4cee505f0ea3a7f 100644 (file)
@@ -20,6 +20,7 @@
 import { groupBy, memoize, sortBy, toPairs } from 'lodash';
 import { isBranch } from '~sonar-aligned/helpers/branch-like';
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import { RawQuery } from '~sonar-aligned/types/router';
 import { enhanceMeasure } from '../../components/measure/utils';
 import { isPullRequest } from '../../helpers/branch-like';
@@ -47,7 +48,6 @@ import {
 } from '../../helpers/query';
 import { BranchLike } from '../../types/branch-like';
 import { Domain, MeasurePageView } from '../../types/measures';
-import { MetricKey, MetricType } from '../../types/metrics';
 import {
   ComponentMeasure,
   ComponentMeasureEnhanced,
index a33ce6f4f66d1ecbf43761805e479aa6b51bece6..df8ff0d7feacdc3e28ee0c869e0c885baabe8e7d 100644 (file)
@@ -23,12 +23,12 @@ import { isEmpty, max } from 'lodash';
 import * as React from 'react';
 import { WrappedComponentProps, injectIntl } from 'react-intl';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import { longFormatterOption } from '../../../components/intl/DateFormatter';
 import DateFromNow from '../../../components/intl/DateFromNow';
 import DateTimeFormatter from '../../../components/intl/DateTimeFormatter';
 import { parseDate } from '../../../helpers/dates';
 import { translate, translateWithParameters } from '../../../helpers/l10n';
-import { MetricType } from '../../../types/metrics';
 import { Component, Dict } from '../../../types/types';
 import { Query } from '../utils';
 
index fe188f13811911a977603df6e60eeb4520714b11..90b5e8136a49cff3d46bebb386cc921e8a1e71e3 100644 (file)
@@ -21,6 +21,7 @@ import { QualifierIcon } from 'design-system';
 import { omit } from 'lodash';
 import * as React from 'react';
 import { getBranchLikeQuery } from '~sonar-aligned/helpers/branch-like';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { getDirectories } from '../../../api/components';
 import { translate } from '../../../helpers/l10n';
 import { collapsePath } from '../../../helpers/path';
@@ -28,7 +29,6 @@ import { highlightTerm } from '../../../helpers/search';
 import { BranchLike } from '../../../types/branch-like';
 import { TreeComponentWithPath } from '../../../types/component';
 import { Facet } from '../../../types/issues';
-import { MetricKey } from '../../../types/metrics';
 import { Query } from '../utils';
 import { ListStyleFacet } from './ListStyleFacet';
 
index 43f6a9ae587861426190af82947c997634872e1e..f04e435833450822a9c76dc3ff107a8ef0724931 100644 (file)
@@ -21,6 +21,7 @@ import { QualifierIcon } from 'design-system';
 import { omit } from 'lodash';
 import * as React from 'react';
 import { getBranchLikeQuery } from '~sonar-aligned/helpers/branch-like';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { getFiles } from '../../../api/components';
 import { translate } from '../../../helpers/l10n';
 import { collapsePath, splitPath } from '../../../helpers/path';
@@ -29,7 +30,6 @@ import { isDefined } from '../../../helpers/types';
 import { BranchLike } from '../../../types/branch-like';
 import { TreeComponentWithPath } from '../../../types/component';
 import { Facet } from '../../../types/issues';
-import { MetricKey } from '../../../types/metrics';
 import { Query } from '../utils';
 import { ListStyleFacet } from './ListStyleFacet';
 
index 0053437ec14923ef6ba93b8546c62060bf5df6b4..3e87f1065e32f28ade592a9a98afa9eb33fbf857 100644 (file)
@@ -21,13 +21,13 @@ import { FacetBox, FacetItem, FlagMessage, InputSearch, Note } from 'design-syst
 import { max, sortBy, values, without } from 'lodash';
 import * as React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import { RawQuery } from '~sonar-aligned/types/router';
 import ListFooter from '../../../components/controls/ListFooter';
 import Tooltip from '../../../components/controls/Tooltip';
 import { translate, translateWithParameters } from '../../../helpers/l10n';
 import { queriesEqual } from '../../../helpers/query';
 import { isDefined } from '../../../helpers/types';
-import { MetricType } from '../../../types/metrics';
 import { Dict, Paging } from '../../../types/types';
 import { FacetItemsList } from './FacetItemsList';
 import { ListStyleFacetFooter } from './ListStyleFacetFooter';
index 787a45cc3aea2689d54035d11bc16b7284e55670..05f264ca5724b542ea58566b479c440703a3a536 100644 (file)
@@ -21,8 +21,8 @@ import { useTheme } from '@emotion/react';
 import { DiscreetLink, Theme, themeColor } from 'design-system';
 import * as React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import { translate, translateWithParameters } from '../../../helpers/l10n';
-import { MetricType } from '../../../types/metrics';
 
 export interface Props {
   nbShown: number;
index 3321eb714bee718ee85993b26a85340a7f4b0441..52b10e6cf96cb46990a3ba6d66d518c204207cfa 100644 (file)
@@ -22,12 +22,12 @@ import { IconProject, Spinner } from '@sonarsource/echoes-react';
 import { omit } from 'lodash';
 import * as React from 'react';
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { getTree, searchProjects } from '../../../api/components';
 import { translate } from '../../../helpers/l10n';
 import { highlightTerm } from '../../../helpers/search';
 import { useProjectQuery } from '../../../queries/projects';
 import { Facet, ReferencedComponent } from '../../../types/issues';
-import { MetricKey } from '../../../types/metrics';
 import { Component, Dict, Paging } from '../../../types/types';
 import { Query } from '../utils';
 import { ListStyleFacet } from './ListStyleFacet';
index d5c3eb316c119a868847417155357b4e2c5693d8..dc9698525e2af5c2e65b3629b476505f89e336a0 100644 (file)
@@ -19,6 +19,7 @@
  */
 import { intersection, isArray, uniq } from 'lodash';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import { RawQuery } from '~sonar-aligned/types/router';
 import { getUsers } from '../../api/users';
 import { DEFAULT_ISSUES_QUERY } from '../../components/shared/utils';
@@ -48,7 +49,6 @@ import {
   IssueStatus,
   RawFacet,
 } from '../../types/issues';
-import { MetricType } from '../../types/metrics';
 import { SecurityStandard } from '../../types/security';
 import { Dict, Flow, FlowType, Issue, Paging } from '../../types/types';
 import { RestUser } from '../../types/users';
index 9e859ff1f2a375c1428e6a5aaca2917314803624..03124fdb5e6d6b2a9679c0a0430685fcb7dfc3e2 100644 (file)
@@ -20,6 +20,7 @@
 import styled from '@emotion/styled';
 import { BasicSeparator, Card, Spinner, TextSubdued, themeColor } from 'design-system';
 import * as React from 'react';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import GraphsHeader from '../../../components/activity-graph/GraphsHeader';
 import GraphsHistory from '../../../components/activity-graph/GraphsHistory';
 import {
@@ -33,7 +34,6 @@ import { parseDate } from '../../../helpers/dates';
 import { translate, translateWithParameters } from '../../../helpers/l10n';
 import { localizeMetric } from '../../../helpers/measures';
 import { BranchLike } from '../../../types/branch-like';
-import { MetricKey } from '../../../types/metrics';
 import {
   Analysis as AnalysisType,
   GraphType,
index 2e5b80ad650746f6092027d3cfaec79805354eb0..728f59ee6e17929142deaa80e20b1cf56791ad2a 100644 (file)
@@ -22,7 +22,7 @@ import { TrendDirection, TrendIcon, TrendType, themeColor } from 'design-system'
 import React from 'react';
 import { FormattedMessage } from 'react-intl';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
-import { MetricType } from '../../../types/metrics';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import { AnalysisMeasuresVariations } from '../../../types/project-activity';
 
 interface AnalysisVariationsProps {
index 053293a9a5902684abd651cfdf59c58adfdac6ab..a3ec7989032f8b1b97a0c933a73524549a993af6 100644 (file)
@@ -21,12 +21,12 @@ import { SeparatorCircleIcon } from 'design-system';
 import React from 'react';
 import { useIntl } from 'react-intl';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import { getCurrentPage } from '../../../app/components/nav/component/utils';
 import ComponentReportActions from '../../../components/controls/ComponentReportActions';
 import HomePageSelect from '../../../components/controls/HomePageSelect';
 import { findMeasure } from '../../../helpers/measures';
 import { Branch } from '../../../types/branch-like';
-import { MetricKey, MetricType } from '../../../types/metrics';
 import { Component, MeasureEnhanced } from '../../../types/types';
 import { HomePage } from '../../../types/users';
 
index 03471874a376c3eaa275d3465b395717d25c6a8b..42c2e80fee06a0e36b61dce46b9ef119f07ae561 100644 (file)
@@ -21,6 +21,7 @@ import { sortBy, uniq } from 'lodash';
 import * as React from 'react';
 import { getBranchLikeQuery, isMainBranch } from '~sonar-aligned/helpers/branch-like';
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { getApplicationDetails, getApplicationLeak } from '../../../api/application';
 import { getMeasuresWithPeriodAndMetrics } from '../../../api/measures';
 import { getProjectActivity } from '../../../api/projectActivity';
@@ -46,7 +47,6 @@ import {
 import { isDefined } from '../../../helpers/types';
 import { ApplicationPeriod } from '../../../types/application';
 import { Branch, BranchLike } from '../../../types/branch-like';
-import { MetricKey } from '../../../types/metrics';
 import { Analysis, GraphType, MeasureHistory } from '../../../types/project-activity';
 import { QualityGateStatus, QualityGateStatusCondition } from '../../../types/quality-gates';
 import { Component, MeasureEnhanced, Metric, Period, QualityGate } from '../../../types/types';
index 17d5cdc852064518f1484c77a0ab5b893b5c35ca..5086dfc64c4e0bd41d49439e146e8cfabedc209b 100644 (file)
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
 import * as React from 'react';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { getComponentDrilldownUrl } from '../../../helpers/urls';
 import { BranchLike } from '../../../types/branch-like';
 import { isApplication } from '../../../types/component';
-import { MetricKey } from '../../../types/metrics';
 import { QualityGateStatusConditionEnhanced } from '../../../types/quality-gates';
 import { Component, MeasureEnhanced } from '../../../types/types';
 import MeasuresCardPercent from '../components/MeasuresCardPercent';
index 0b5dfd81be2290e0f3f61c22b263801a03dbab60..9d86007dc2f8be8e2fdfc5e1d7f34b189a254f34 100644 (file)
@@ -38,6 +38,7 @@ import {
   getComponentIssuesUrl,
   getComponentSecurityHotspotsUrl,
 } from '~sonar-aligned/helpers/urls';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import { getLeakValue } from '../../../components/measure/utils';
 import { DEFAULT_ISSUES_QUERY } from '../../../components/shared/utils';
 import { findMeasure, formatRating } from '../../../helpers/measures';
@@ -45,7 +46,6 @@ import { CodeScope } from '../../../helpers/urls';
 import { Branch } from '../../../types/branch-like';
 import { isApplication } from '../../../types/component';
 import { IssueStatus } from '../../../types/issues';
-import { MetricKey, MetricType } from '../../../types/metrics';
 import { QualityGateStatus } from '../../../types/quality-gates';
 import { Component, MeasureEnhanced } from '../../../types/types';
 import { IssueMeasuresCardInner } from '../components/IssueMeasuresCardInner';
index 4befd866b66bfdc57282bab37f6c77800332c474..e9821ae8010f842f254fb22ded49499d33853da5 100644 (file)
@@ -21,10 +21,10 @@ import { FlagMessage } from 'design-system';
 import * as React from 'react';
 import { isMainBranch } from '~sonar-aligned/helpers/branch-like';
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { getBranchLikeDisplayName } from '../../../helpers/branch-like';
 import { translate, translateWithParameters } from '../../../helpers/l10n';
 import { BranchLike } from '../../../types/branch-like';
-import { MetricKey } from '../../../types/metrics';
 import { Component, MeasureEnhanced } from '../../../types/types';
 
 interface Props {
index a888c3eec4928e2c1d861b5381c1063ea05c944c..9bd22123d3555ee9bf9752da47978d6a831bafbe 100644 (file)
@@ -32,13 +32,13 @@ import {
   getComponentIssuesUrl,
   getComponentSecurityHotspotsUrl,
 } from '~sonar-aligned/helpers/urls';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import { findMeasure, formatRating } from '../../../helpers/measures';
 import { CodeScope } from '../../../helpers/urls';
 import { Branch } from '../../../types/branch-like';
 import { SoftwareQuality } from '../../../types/clean-code-taxonomy';
 import { isApplication } from '../../../types/component';
 import { IssueStatus } from '../../../types/issues';
-import { MetricKey, MetricType } from '../../../types/metrics';
 import { QualityGateStatus } from '../../../types/quality-gates';
 import { Component, MeasureEnhanced } from '../../../types/types';
 import MeasuresCard from '../components/MeasuresCard';
index 96d5bd9e22de83979ac43d20ba8c022beee52c6e..6183e718db5e9ff9e072215722a6388008ca24e3 100644 (file)
@@ -26,6 +26,7 @@ import {
   getComponentIssuesUrl,
   getComponentSecurityHotspotsUrl,
 } from '~sonar-aligned/helpers/urls';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import IssueTypeIcon from '../../../components/icon-mappers/IssueTypeIcon';
 import MeasureIndicator from '../../../components/measure/MeasureIndicator';
 import {
@@ -39,7 +40,6 @@ import { getOperatorLabel } from '../../../helpers/qualityGates';
 import { getComponentDrilldownUrl } from '../../../helpers/urls';
 import { BranchLike } from '../../../types/branch-like';
 import { IssueType } from '../../../types/issues';
-import { MetricKey, MetricType } from '../../../types/metrics';
 import { QualityGateStatusConditionEnhanced } from '../../../types/quality-gates';
 import { Component, Dict } from '../../../types/types';
 import { RATING_TO_SEVERITIES_MAPPING } from '../utils';
index 6b0f86f3659628acddca25b8540c2c587fdabcc5..7e17d21f8d12f59df91c7d47cd33202b21d3b786 100644 (file)
@@ -20,9 +20,9 @@
 import { BasicSeparator, Link } from 'design-system';
 import { sortBy } from 'lodash';
 import * as React from 'react';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { translate } from '../../../helpers/l10n';
 import { BranchLike } from '../../../types/branch-like';
-import { MetricKey } from '../../../types/metrics';
 import { QualityGateStatusConditionEnhanced } from '../../../types/quality-gates';
 import { Component } from '../../../types/types';
 import { CAYC_CONDITION_ORDER_PRIORITIES } from '../../quality-gates/utils';
index 97008214a91aa180446745a7bda230eb8a356bf9..4a12c8adeb850cfbc37a74819e36b41f9d89e362 100644 (file)
@@ -22,11 +22,11 @@ import * as React from 'react';
 import { getBranchLikeQuery } from '~sonar-aligned/helpers/branch-like';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
 import { getComponentIssuesUrl } from '~sonar-aligned/helpers/urls';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import { propsToIssueParams } from '../../../components/shared/utils';
 import { translate } from '../../../helpers/l10n';
 import { isDiffMetric, localizeMetric } from '../../../helpers/measures';
 import { BranchLike } from '../../../types/branch-like';
-import { MetricKey, MetricType } from '../../../types/metrics';
 import { QualityGateStatusConditionEnhanced } from '../../../types/quality-gates';
 import { Component } from '../../../types/types';
 
index 0e3de3af596f86aa2bc7f59e4725a7fda2c4764d..97a2b330269ab6eda421dffe48954ee5a6b52ce9 100644 (file)
@@ -24,10 +24,10 @@ import * as React from 'react';
 import { useIntl } from 'react-intl';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
 import { getComponentIssuesUrl } from '~sonar-aligned/helpers/urls';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import { DEFAULT_ISSUES_QUERY } from '../../../components/shared/utils';
 import { Branch } from '../../../types/branch-like';
 import { SoftwareImpactSeverity, SoftwareQuality } from '../../../types/clean-code-taxonomy';
-import { MetricType } from '../../../types/metrics';
 import { Component } from '../../../types/types';
 
 export interface SoftwareImpactMeasureBreakdownCardProps {
index 09767f1ab1f8834a1e58bd71908b363740605a3d..0586663c04d27c313ca3b0729ddd3f05ad8edf9e 100644 (file)
@@ -24,6 +24,7 @@ import * as React from 'react';
 import { FormattedMessage, useIntl } from 'react-intl';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
 import { getComponentIssuesUrl } from '~sonar-aligned/helpers/urls';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import Tooltip from '../../../components/controls/Tooltip';
 import { DEFAULT_ISSUES_QUERY } from '../../../components/shared/utils';
 import {
@@ -37,7 +38,6 @@ import {
   SoftwareImpactSeverity,
   SoftwareQuality,
 } from '../../../types/clean-code-taxonomy';
-import { MetricKey, MetricType } from '../../../types/metrics';
 import { QualityGateStatusConditionEnhanced } from '../../../types/quality-gates';
 import { Component, MeasureEnhanced } from '../../../types/types';
 import { Status, softwareQualityToMeasure } from '../utils';
index 359543f422c9c71c4575ceb3d3c6ec182ae3f7cf..09e34fa2359ca7a6b246a145aaff7f6845f7a8a2 100644 (file)
 import { Card, DiscreetLink } from 'design-system';
 import * as React from 'react';
 import { FormattedMessage } from 'react-intl';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import withCurrentUserContext from '../../../app/components/current-user/withCurrentUserContext';
 import { SonarLintLogo } from '../../../components/logos/SonarLintLogo';
 import { translate } from '../../../helpers/l10n';
-import { MetricKey } from '../../../types/metrics';
 import { QualityGateStatusCondition } from '../../../types/quality-gates';
 import { CurrentUser } from '../../../types/users';
 
index 45dddc7b81e85d727096ad2399c58b22498b674b..abbf0824c967030722ca720be2b274ef24f3a226 100644 (file)
@@ -30,9 +30,9 @@ import { mockMetric } from '../../../../helpers/testMocks';
 
 import userEvent from '@testing-library/user-event';
 import { Route, useSearchParams } from 'react-router-dom';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { parseDate } from '../../../../helpers/dates';
 import { renderAppRoutes } from '../../../../helpers/testReactTestingUtils';
-import { MetricKey } from '../../../../types/metrics';
 import {
   ApplicationAnalysisEventCategory,
   DefinitionChangeType,
index 5095400d6fadaec95fee87a80e88887b117f68ee..12a1185546081acae48da5d3cb1e8c003dd58b7c 100644 (file)
@@ -20,6 +20,7 @@
 import { screen, waitFor } from '@testing-library/react';
 import * as React from 'react';
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import AlmSettingsServiceMock from '../../../../api/mocks/AlmSettingsServiceMock';
 import ApplicationServiceMock from '../../../../api/mocks/ApplicationServiceMock';
 import BranchesServiceMock from '../../../../api/mocks/BranchesServiceMock';
@@ -40,7 +41,6 @@ import { mockLoggedInUser, mockMeasure, mockPaging } from '../../../../helpers/t
 import { renderComponent } from '../../../../helpers/testReactTestingUtils';
 import { byRole, byText } from '../../../../helpers/testSelector';
 import { SoftwareImpactSeverity, SoftwareQuality } from '../../../../types/clean-code-taxonomy';
-import { MetricKey } from '../../../../types/metrics';
 import { ProjectAnalysisEventCategory } from '../../../../types/project-activity';
 import { CaycStatus } from '../../../../types/types';
 import BranchOverview, { NO_CI_DETECTED } from '../BranchOverview';
index 85d384bbae96e07216d6c35b802130c063af4399..baebe48e457d7c3af0b0c2833cd571d45e02aa55 100644 (file)
  */
 import { screen } from '@testing-library/react';
 import * as React from 'react';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import { mockBranch } from '../../../../helpers/mocks/branch-like';
 import { mockQualityGateStatusConditionEnhanced } from '../../../../helpers/mocks/quality-gates';
 import { mockMetric } from '../../../../helpers/testMocks';
 import { renderComponent } from '../../../../helpers/testReactTestingUtils';
-import { MetricKey, MetricType } from '../../../../types/metrics';
 import { QualityGateStatusConditionEnhanced } from '../../../../types/quality-gates';
 import QualityGateCondition from '../QualityGateCondition';
 
index 3453dfdc0dfe0db25396c468e1110249fc258780..3bfb3a9d3de98d48c014db5e931d1e12f7f9a98f 100644 (file)
  */
 import { screen } from '@testing-library/react';
 import * as React from 'react';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import CurrentUserContextProvider from '../../../../app/components/current-user/CurrentUserContextProvider';
 import { mockQualityGate, mockQualityGateStatus } from '../../../../helpers/mocks/quality-gates';
 import { mockLoggedInUser } from '../../../../helpers/testMocks';
 import { renderComponent } from '../../../../helpers/testReactTestingUtils';
 import { byRole } from '../../../../helpers/testSelector';
-import { MetricKey } from '../../../../types/metrics';
 import { CaycStatus, Status } from '../../../../types/types';
 import { CurrentUser, NoticeType } from '../../../../types/users';
 import QualityGatePanelSection, { QualityGatePanelSectionProps } from '../QualityGatePanelSection';
index fffc444c8d43f020ac73111b6cf4efc0bfe5b9ee..f02ac27c32ba57c0f10e94c90c3789c3f71625a5 100644 (file)
  */
 import { screen } from '@testing-library/react';
 import React from 'react';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import { mockQualityGateStatusConditionEnhanced } from '../../../../helpers/mocks/quality-gates';
 import { mockMetric } from '../../../../helpers/testMocks';
 import { renderComponent } from '../../../../helpers/testReactTestingUtils';
-import { MetricKey, MetricType } from '../../../../types/metrics';
 import { QualityGateStatusConditionEnhanced } from '../../../../types/quality-gates';
 import QualityGateCondition from '../QualityGateCondition';
 import QualityGateSimplifiedCondition from '../QualityGateSimplifiedCondition';
index 25f8906e358c71af80549abe7b58b476e9bd287e..4dcd3f55b635b42a7ec3264daaa9eca15b301f53 100644 (file)
  */
 import { screen } from '@testing-library/react';
 import * as React from 'react';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { mockQualityGateStatusCondition } from '../../../../helpers/mocks/quality-gates';
 import { mockCurrentUser } from '../../../../helpers/testMocks';
 import { renderComponent } from '../../../../helpers/testReactTestingUtils';
-import { MetricKey } from '../../../../types/metrics';
 import { SonarLintPromotion, SonarLintPromotionProps } from '../SonarLintPromotion';
 
 it('should render correctly', () => {
index d72e6635d5dafdd901225c9e004266149485a8fc..00c7fa270d299384069f42ef841ec16b160ca210 100644 (file)
@@ -23,9 +23,9 @@ import classNames from 'classnames';
 import { Badge, NoDataIcon, themeColor } from 'design-system';
 import * as React from 'react';
 import { Path } from 'react-router-dom';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { translate, translateWithParameters } from '../../../helpers/l10n';
 import { localizeMetric } from '../../../helpers/measures';
-import { MetricKey } from '../../../types/metrics';
 
 interface IssueMeasuresCardInnerProps extends React.HTMLAttributes<HTMLDivElement> {
   metric: MetricKey;
index d5c99f626735dc95f0cacb48d719fa5a7b81f546..f5ae6d20830d30f7cb9f66e3bdf344e9e6198110 100644 (file)
@@ -22,9 +22,9 @@ import { LinkHighlight, LinkStandalone } from '@sonarsource/echoes-react';
 import { Badge, Card, themeBorder, themeColor } from 'design-system';
 import * as React from 'react';
 import { To } from 'react-router-dom';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { translate, translateWithParameters } from '../../../helpers/l10n';
 import { localizeMetric } from '../../../helpers/measures';
-import { MetricKey } from '../../../types/metrics';
 
 export interface MeasuresCardProps {
   url: To;
index c8629cdcd8b8da0001d96acceef4a3ed4fc345d3..78d2b7ba17adaf4b4dd71bae41e381cee103a963 100644 (file)
@@ -22,7 +22,7 @@ import * as React from 'react';
 import { useIntl } from 'react-intl';
 import { To } from 'react-router-dom';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
-import { MetricKey, MetricType } from '../../../types/metrics';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import { QualityGateStatusConditionEnhanced } from '../../../types/quality-gates';
 import { Status, getConditionRequiredLabel } from '../utils';
 import MeasuresCard, { MeasuresCardProps } from './MeasuresCard';
index 8f86c1c487b201673972add1aa092f21b3d343a0..a225ca5dfa77b16a44566d1836b1e8c70d01db45 100644 (file)
@@ -29,12 +29,12 @@ import * as React from 'react';
 import { FormattedMessage, useIntl } from 'react-intl';
 import { To } from 'react-router-dom';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import { duplicationRatingConverter, getLeakValue } from '../../../components/measure/utils';
 import { translate, translateWithParameters } from '../../../helpers/l10n';
 import { findMeasure, localizeMetric } from '../../../helpers/measures';
 import { getComponentDrilldownUrl } from '../../../helpers/urls';
 import { BranchLike } from '../../../types/branch-like';
-import { MetricKey, MetricType } from '../../../types/metrics';
 import { QualityGateStatusConditionEnhanced } from '../../../types/quality-gates';
 import { MeasureEnhanced } from '../../../types/types';
 import {
index b8efbefac42f55db77512808cc70fa0e98c5bd72..b04f9a478ffbd2d622a5f70b3efe43ab3ebdfe54 100644 (file)
@@ -27,6 +27,7 @@ import {
   getComponentIssuesUrl,
   getComponentSecurityHotspotsUrl,
 } from '~sonar-aligned/helpers/urls';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import {
   DEFAULT_ISSUES_QUERY,
   isIssueMeasure,
@@ -37,7 +38,6 @@ import { getShortType, isDiffMetric } from '../../../helpers/measures';
 import { getComponentDrilldownUrl } from '../../../helpers/urls';
 import { BranchLike } from '../../../types/branch-like';
 import { IssueType } from '../../../types/issues';
-import { MetricType } from '../../../types/metrics';
 import { QualityGateStatusConditionEnhanced } from '../../../types/quality-gates';
 import { Component } from '../../../types/types';
 import {
index 3d44d54c7ed7a7a389b02e7ff19834032a8145e6..6dc229906c6d95bfc0b696ed6a69d7736fcd8c11 100644 (file)
@@ -36,11 +36,11 @@ import { useIntl } from 'react-intl';
 import { getBranchLikeQuery } from '~sonar-aligned/helpers/branch-like';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
 import { getComponentIssuesUrl } from '~sonar-aligned/helpers/urls';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import { getLeakValue } from '../../../components/measure/utils';
 import { DEFAULT_ISSUES_QUERY } from '../../../components/shared/utils';
 import { findMeasure } from '../../../helpers/measures';
 import { PullRequest } from '../../../types/branch-like';
-import { MetricKey, MetricType } from '../../../types/metrics';
 import { QualityGateStatusConditionEnhanced } from '../../../types/quality-gates';
 import { Component, MeasureEnhanced } from '../../../types/types';
 import { IssueMeasuresCardInner } from '../components/IssueMeasuresCardInner';
index d2119340bc2a524113547bc8564606cc091e4120..e1780472c0fc4363b2e7741b6838623e9846b498 100644 (file)
 import classNames from 'classnames';
 import * as React from 'react';
 import { getComponentSecurityHotspotsUrl } from '~sonar-aligned/helpers/urls';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { getLeakValue } from '../../../components/measure/utils';
 import { findMeasure } from '../../../helpers/measures';
 import { getComponentDrilldownUrl } from '../../../helpers/urls';
 import { PullRequest } from '../../../types/branch-like';
-import { MetricKey } from '../../../types/metrics';
 import { QualityGateStatusConditionEnhanced } from '../../../types/quality-gates';
 import { Component, MeasureEnhanced } from '../../../types/types';
 import MeasuresCardNumber from '../components/MeasuresCardNumber';
index 1a248f659835fc50bfd52e1ed49fabd380a4f58f..5efdb69559943f33e943eb009f8d70df6dd4a226 100644 (file)
@@ -21,11 +21,11 @@ import { SeparatorCircleIcon } from 'design-system';
 import React from 'react';
 import { useIntl } from 'react-intl';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import CurrentBranchLikeMergeInformation from '../../../app/components/nav/component/branch-like/CurrentBranchLikeMergeInformation';
 import { getLeakValue } from '../../../components/measure/utils';
 import { findMeasure } from '../../../helpers/measures';
 import { PullRequest } from '../../../types/branch-like';
-import { MetricKey, MetricType } from '../../../types/metrics';
 import { MeasureEnhanced } from '../../../types/types';
 import LastAnalysisLabel from '../components/LastAnalysisLabel';
 
index a841f4d4436bdb271ba69e666a0f53d71a47af19..ecde065a0a0d3d7fa3177d80496c2210674bf7cb 100644 (file)
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
 import * as React from 'react';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import { mockPullRequest } from '../../../../helpers/mocks/branch-like';
 import { mockComponent } from '../../../../helpers/mocks/component';
 import { mockQualityGateStatusConditionEnhanced } from '../../../../helpers/mocks/quality-gates';
 import { mockMeasureEnhanced, mockMetric } from '../../../../helpers/testMocks';
 import { renderComponent } from '../../../../helpers/testReactTestingUtils';
 import { byLabelText, byRole } from '../../../../helpers/testSelector';
-import { MetricKey, MetricType } from '../../../../types/metrics';
 import { FCProps } from '../../../../types/misc';
 import { Status } from '../../utils';
 import BranchQualityGate from '../BranchQualityGate';
index aa2ab4fa4ed65b42ec9c0382b1703b90aa62d95d..959e5d274aa822661160ad00395c2f7a461e6014 100644 (file)
@@ -21,6 +21,7 @@ import { screen, waitFor } from '@testing-library/react';
 import userEvent from '@testing-library/user-event';
 import * as React from 'react';
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import BranchesServiceMock from '../../../../api/mocks/BranchesServiceMock';
 import { fetchQualityGate, getQualityGateProjectStatus } from '../../../../api/quality-gates';
 import CurrentUserContextProvider from '../../../../app/components/current-user/CurrentUserContextProvider';
@@ -34,14 +35,13 @@ import { mockLoggedInUser, mockMeasure, mockMetric } from '../../../../helpers/t
 import { renderComponent } from '../../../../helpers/testReactTestingUtils';
 import { byLabelText, byRole } from '../../../../helpers/testSelector';
 import { ComponentPropsType } from '../../../../helpers/testUtils';
-import { MetricKey, MetricType } from '../../../../types/metrics';
 import { CaycStatus } from '../../../../types/types';
 import { NoticeType } from '../../../../types/users';
 import PullRequestOverview from '../PullRequestOverview';
 
 jest.mock('../../../../api/measures', () => {
   return {
-    ...jest.requireActual('../../../../types/metrics'),
+    ...jest.requireActual('../../../../sonar-aligned/types/metrics'),
     getMeasuresWithMetrics: jest.fn().mockResolvedValue({
       component: {
         key: '',
@@ -83,7 +83,7 @@ jest.mock('../../../../api/measures', () => {
 jest.mock('../../../../api/quality-gates', () => {
   const { mockQualityGateProjectStatus, mockQualityGateApplicationStatus, mockQualityGate } =
     jest.requireActual('../../../../helpers/mocks/quality-gates');
-  const { MetricKey } = jest.requireActual('../../../../types/metrics');
+  const { MetricKey } = jest.requireActual('../../../../sonar-aligned/types/metrics');
   return {
     getQualityGateProjectStatus: jest.fn().mockResolvedValue(
       mockQualityGateProjectStatus({
index 211f0e76ed06a29ae05fe063cc1a121c8042fe79..34ed343f9609937cb1bb95bd2fe96463d0ce83a3 100644 (file)
@@ -21,13 +21,13 @@ import { memoize } from 'lodash';
 import React from 'react';
 import { IntlShape } from 'react-intl';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import { RawQuery } from '~sonar-aligned/types/router';
 import { ISSUETYPE_METRIC_KEYS_MAP } from '../../helpers/issues';
 import { translate } from '../../helpers/l10n';
 import { parseAsString } from '../../helpers/query';
 import { SoftwareQuality } from '../../types/clean-code-taxonomy';
 import { IssueType } from '../../types/issues';
-import { MetricKey, MetricType } from '../../types/metrics';
 import { AnalysisMeasuresVariations, MeasureHistory } from '../../types/project-activity';
 import { QualityGateStatusConditionEnhanced } from '../../types/quality-gates';
 import { Dict } from '../../types/types';
index 1b5f437449a6e6a39652961ecd02b45b7253addc..54097f3488cd77f2de0f4cfc9dd90030a53893d3 100644 (file)
@@ -20,6 +20,7 @@
 import React from 'react';
 import { useLocation, useRouter } from '~sonar-aligned/components/hoc/withRouter';
 import { getBranchLikeQuery } from '~sonar-aligned/helpers/branch-like';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import {
   useComponent,
   useTopLevelComponentKey,
@@ -37,7 +38,6 @@ import { useBranchesQuery } from '../../../queries/branch';
 import { useAllMeasuresHistoryQuery } from '../../../queries/measures';
 import { useAllProjectAnalysesQuery } from '../../../queries/project-analyses';
 import { isApplication, isPortfolioLike, isProject } from '../../../types/component';
-import { MetricKey } from '../../../types/metrics';
 import { MeasureHistory, ParsedAnalysis } from '../../../types/project-activity';
 import { Query, parseQuery, serializeUrlQuery } from '../utils';
 import ProjectActivityAppRenderer from './ProjectActivityAppRenderer';
index d3c150434c0707e4dd2fa2c72b849e2afccbecb8..c9201c16af21da134e3639cde5647946d6199e56 100644 (file)
@@ -23,6 +23,7 @@ import { keyBy, times } from 'lodash';
 import React from 'react';
 import { Route } from 'react-router-dom';
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import ApplicationServiceMock from '../../../../api/mocks/ApplicationServiceMock';
 import { ProjectActivityServiceMock } from '../../../../api/mocks/ProjectActivityServiceMock';
 import { TimeMachineServiceMock } from '../../../../api/mocks/TimeMachineServiceMock';
@@ -39,7 +40,6 @@ import { get } from '../../../../helpers/storage';
 import { mockMetric } from '../../../../helpers/testMocks';
 import { renderAppWithComponentContext } from '../../../../helpers/testReactTestingUtils';
 import { byLabelText, byRole, byTestId, byText } from '../../../../helpers/testSelector';
-import { MetricKey, MetricType } from '../../../../types/metrics';
 import {
   ApplicationAnalysisEventCategory,
   GraphType,
index 214e03221467601f776b99bcd7303bdaf246f0a1..c64d34fa0fbe91454be20afdec9f1ca14a7d33c2 100644 (file)
@@ -19,6 +19,7 @@
  */
 import { startOfDay } from 'date-fns';
 import { isEqual, uniq } from 'lodash';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { RawQuery } from '~sonar-aligned/types/router';
 import { DEFAULT_GRAPH } from '../../components/activity-graph/utils';
 import { parseDate } from '../../helpers/dates';
@@ -32,7 +33,6 @@ import {
   serializeString,
   serializeStringArray,
 } from '../../helpers/query';
-import { MetricKey } from '../../types/metrics';
 import { GraphType, ParsedAnalysis } from '../../types/project-activity';
 import { Dict } from '../../types/types';
 
index 7f369064c0101f7bb8225afb3d28ccca233cc67a..3e7def28b8a9781d7b8974b49129c99485e75d46 100644 (file)
@@ -19,6 +19,7 @@
  */
 import { Card, LargeCenteredLayout, PageContentFontWrapper, Title } from 'design-system';
 import React, { useEffect, useState } from 'react';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { getMeasures } from '../../api/measures';
 import withAvailableFeatures, {
   WithAvailableFeaturesProps,
@@ -30,7 +31,6 @@ import { translate } from '../../helpers/l10n';
 import { BranchLike } from '../../types/branch-like';
 import { isApplication, isProject } from '../../types/component';
 import { Feature } from '../../types/features';
-import { MetricKey } from '../../types/metrics';
 import { Component, Dict, Measure, Metric } from '../../types/types';
 import { CurrentUser, isLoggedIn } from '../../types/users';
 import AboutProject from './about/AboutProject';
index 60a00c4c931fff08a1c80477be63b4116de1e406..dabdddeda8ffbdd8f6ad996610643e5d23c7136c 100644 (file)
@@ -19,6 +19,7 @@
  */
 import { screen } from '@testing-library/react';
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import BranchesServiceMock from '../../../api/mocks/BranchesServiceMock';
 import CodingRulesServiceMock from '../../../api/mocks/CodingRulesServiceMock';
 import ComponentsServiceMock from '../../../api/mocks/ComponentsServiceMock';
@@ -31,7 +32,6 @@ import { mockCurrentUser, mockLoggedInUser, mockMeasure } from '../../../helpers
 import { renderAppWithComponentContext } from '../../../helpers/testReactTestingUtils';
 import { byRole } from '../../../helpers/testSelector';
 import { Visibility } from '../../../types/component';
-import { MetricKey } from '../../../types/metrics';
 import { Component } from '../../../types/types';
 import { CurrentUser } from '../../../types/users';
 import routes from '../routes';
index 485d2f1e86bc14e45fe96d18933a4be9073c028e..e454123201991d7597243110d1da500259fdce37 100644 (file)
@@ -21,10 +21,10 @@ import { DrilldownLink, Note, SizeIndicator, SubHeading } from 'design-system';
 import * as React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import { translate, translateWithParameters } from '../../../../helpers/l10n';
 import { localizeMetric } from '../../../../helpers/measures';
 import { getComponentDrilldownUrl } from '../../../../helpers/urls';
-import { MetricKey, MetricType } from '../../../../types/metrics';
 import { Component, Measure } from '../../../../types/types';
 
 interface MetaSizeProps {
index 7ff2e3f10997a9b47cb3bf3c7ad8ff0098a24abf..5e9ef2178ee4f022e77d06a5280ee397cf2ea2ed 100644 (file)
@@ -34,6 +34,7 @@ import { isEmpty } from 'lodash';
 import * as React from 'react';
 import { useState } from 'react';
 import { getBranchLikeQuery } from '~sonar-aligned/helpers/branch-like';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { Image } from '../../../components/common/Image';
 import { translate, translateWithParameters } from '../../../helpers/l10n';
 import { localizeMetric } from '../../../helpers/measures';
@@ -44,7 +45,6 @@ import {
   useRenewBagdeTokenMutation,
 } from '../../../queries/badges';
 import { BranchLike } from '../../../types/branch-like';
-import { MetricKey } from '../../../types/metrics';
 import { Component } from '../../../types/types';
 import { BadgeFormats, BadgeOptions, BadgeType, getBadgeSnippet, getBadgeUrl } from './utils';
 
index cf5ac70200851910e55529f620646e1b07e687e1..554a9cf5817aba59ee43f9de8c8b4cb885fbcf38 100644 (file)
@@ -22,12 +22,12 @@ import userEvent from '@testing-library/user-event';
 import * as React from 'react';
 import selectEvent from 'react-select-event';
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { getProjectBadgesToken } from '../../../../api/project-badges';
 import { mockBranch } from '../../../../helpers/mocks/branch-like';
 import { mockComponent } from '../../../../helpers/mocks/component';
 import { renderComponent } from '../../../../helpers/testReactTestingUtils';
 import { Location } from '../../../../helpers/urls';
-import { MetricKey } from '../../../../types/metrics';
 import ProjectBadges, { ProjectBadgesProps } from '../ProjectBadges';
 import { BadgeType } from '../utils';
 
index 4858fda67d6f3bd2842b372678cded73ca5307cc..6b920b73e1123f6759d8d7b3b8f013db5fa97305 100644 (file)
@@ -33,6 +33,7 @@ import { Helmet } from 'react-helmet-async';
 import { useSearchParams } from 'react-router-dom';
 import { withRouter } from '~sonar-aligned/components/hoc/withRouter';
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { Location, RawQuery, Router } from '~sonar-aligned/types/router';
 import { searchProjects } from '../../../api/components';
 import withAppStateContext from '../../../app/components/app-state/withAppStateContext';
@@ -46,7 +47,6 @@ import { translate } from '../../../helpers/l10n';
 import { get, save } from '../../../helpers/storage';
 import { isDefined } from '../../../helpers/types';
 import { AppState } from '../../../types/appstate';
-import { MetricKey } from '../../../types/metrics';
 import { CurrentUser, isLoggedIn } from '../../../types/users';
 import { Query, hasFilterParams, parseUrlQuery } from '../query';
 import '../styles.css';
index 764553be846f9faf68a4f225532e2a1de06fb4ab..a9c64c430b24313146a6a54183d9d90fdc774f07 100644 (file)
@@ -22,12 +22,12 @@ import userEvent from '@testing-library/user-event';
 import * as React from 'react';
 import { AutoSizerProps } from 'react-virtualized';
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { ProjectsServiceMock } from '../../../../api/mocks/ProjectsServiceMock';
 import { save } from '../../../../helpers/storage';
 import { mockAppState, mockLoggedInUser } from '../../../../helpers/testMocks';
 import { renderAppRoutes } from '../../../../helpers/testReactTestingUtils';
 import { byLabelText, byRole, byText } from '../../../../helpers/testSelector';
-import { MetricKey } from '../../../../types/metrics';
 import { Dict } from '../../../../types/types';
 import projectRoutes from '../../routes';
 import { LS_PROJECTS_SORT, LS_PROJECTS_VIEW } from '../AllProjects';
index b2e6a415f2561cea7e52ac339a3c3adea087f7ef..5039b6ad228bb23fdad57a6235056e2c20d54224 100644 (file)
@@ -39,6 +39,7 @@ import * as React from 'react';
 import { FormattedMessage } from 'react-intl';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import Favorite from '../../../../components/controls/Favorite';
 import Tooltip from '../../../../components/controls/Tooltip';
 import DateFromNow from '../../../../components/intl/DateFromNow';
@@ -47,7 +48,6 @@ import Measure from '../../../../components/measure/Measure';
 import { translate, translateWithParameters } from '../../../../helpers/l10n';
 import { isDefined } from '../../../../helpers/types';
 import { getProjectUrl } from '../../../../helpers/urls';
-import { MetricKey, MetricType } from '../../../../types/metrics';
 import { Status } from '../../../../types/types';
 import { CurrentUser, isLoggedIn } from '../../../../types/users';
 import { Project } from '../../types';
index 420e38cd77bf9c0a522971cc1dfbc87599a90ffd..c8f9896b5c3e772d36378902be17f91c85a8d7f7 100644 (file)
@@ -27,12 +27,12 @@ import {
 } from 'design-system';
 import * as React from 'react';
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import Measure from '../../../../components/measure/Measure';
 import { duplicationRatingConverter } from '../../../../components/measure/utils';
 import { translate } from '../../../../helpers/l10n';
 import { formatRating } from '../../../../helpers/measures';
 import { isDefined } from '../../../../helpers/types';
-import { MetricKey, MetricType } from '../../../../types/metrics';
 import { Dict } from '../../../../types/types';
 import ProjectCardMeasure from './ProjectCardMeasure';
 
index fdcdaf6af55f1ef6e614a165f6d89b0967f401d5..1f5cfda2ca2422be65d98b77df84c05132ddcffe 100644 (file)
 import { screen } from '@testing-library/react';
 import React from 'react';
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { mockCurrentUser, mockLoggedInUser } from '../../../../../helpers/testMocks';
 import { renderComponent } from '../../../../../helpers/testReactTestingUtils';
 import { Visibility } from '../../../../../types/component';
-import { MetricKey } from '../../../../../types/metrics';
 import { CurrentUser } from '../../../../../types/users';
 import { Project } from '../../../types';
 import ProjectCard from '../ProjectCard';
index 10513b0e7437fb2112380e2042a18d698fd23391..c2bc48d9936756049c6e8d812378776629383f59 100644 (file)
@@ -21,8 +21,8 @@ import { screen } from '@testing-library/react';
 import * as React from 'react';
 
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { renderComponent } from '../../../../../helpers/testReactTestingUtils';
-import { MetricKey } from '../../../../../types/metrics';
 import { Dict } from '../../../../../types/types';
 import ProjectCardMeasures, { ProjectCardMeasuresProps } from '../ProjectCardMeasures';
 
index 73f4796e5a103fb6928118a65b7795a549cba75b..ff6a45eb73f5d56896c24334564f9703074d34ec 100644 (file)
  */
 import { CoverageIndicator } from 'design-system';
 import * as React from 'react';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { RawQuery } from '~sonar-aligned/types/router';
 import { translate, translateWithParameters } from '../../../helpers/l10n';
 import { getCoverageRatingAverageValue, getCoverageRatingLabel } from '../../../helpers/ratings';
-import { MetricKey } from '../../../types/metrics';
 import { Facet } from '../types';
 import RangeFacetBase from './RangeFacetBase';
 
index 53c75838acec1dafa8cba23b9e618404bc6868c9..e46860a1b62c44b41265b137096483244f9dd354 100644 (file)
@@ -18,7 +18,7 @@
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
 import * as React from 'react';
-import { MetricKey } from '../../../types/metrics';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import CoverageFilter, { Props } from './CoverageFilter';
 
 export default function NewCoverageFilter(props: Props) {
index 4bc25a02e0fcab799c3c8223a6a44b2f2d0ac8ee..a3f3ae1366e698f1780a546df09e5150ac28eaa3 100644 (file)
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
 import * as React from 'react';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { RawQuery } from '~sonar-aligned/types/router';
 import { translate } from '../../../helpers/l10n';
 import { getSizeRatingLabel } from '../../../helpers/ratings';
-import { MetricKey } from '../../../types/metrics';
 import { Facet } from '../types';
 import RangeFacetBase from './RangeFacetBase';
 
index fe816e6f24f32d86e34f726cd9633be900b3323e..9b8df67e781f4fcf22cbf3aea7e5f696c7050bad 100644 (file)
@@ -20,9 +20,9 @@
 import { MetricsRatingBadge, RatingEnum } from 'design-system';
 import * as React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import { RawQuery } from '~sonar-aligned/types/router';
 import { translate, translateWithParameters } from '../../../helpers/l10n';
-import { MetricType } from '../../../types/metrics';
 import { Facet } from '../types';
 import RangeFacetBase from './RangeFacetBase';
 
index 45350adbac8c8b75ce992f8d93fdabb11ce5968f..dde1c3b270725849dc1e9728c02a30d20530e255 100644 (file)
@@ -20,9 +20,9 @@
 import { MetricsRatingBadge, RatingEnum } from 'design-system';
 import * as React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import { RawQuery } from '~sonar-aligned/types/router';
 import { translate, translateWithParameters } from '../../../helpers/l10n';
-import { MetricType } from '../../../types/metrics';
 import { Dict } from '../../../types/types';
 import { Facet } from '../types';
 import RangeFacetBase from './RangeFacetBase';
index c31270fc0ee94e96a9efd1ea5cbebe86e043e046..a59ea6ea7b9ecdc814ccc90d7c06a7f5c53b4b1f 100644 (file)
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
 import { invert } from 'lodash';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { Facet, getScannableProjects, searchProjects } from '../../api/components';
 import { getMeasuresForProjects } from '../../api/measures';
 import { translate, translateWithParameters } from '../../helpers/l10n';
 import { isDiffMetric } from '../../helpers/measures';
 import { RequestData } from '../../helpers/request';
-import { MetricKey } from '../../types/metrics';
 import { Dict } from '../../types/types';
 import { Query, convertToFilter } from './query';
 
index a4196c179802e7fc102c5e9891c3cc3c6f64250c..ff393111b1bf8f784cbce01351cf3dc5afec3140 100644 (file)
@@ -17,8 +17,8 @@
  * along with this program; if not, write to the Free Software Foundation,
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { mockCondition, mockMetric } from '../../../helpers/testMocks';
-import { MetricKey } from '../../../types/metrics';
 import { Condition } from '../../../types/types';
 import { getLocalizedMetricNameNoDiffMetric, groupAndSortByPriorityConditions } from '../utils';
 
index f4e083e8cd3306e4c7b6e10df952ebd0466e2805..05cef46084208c81ffe237d2598b785e2fefe3a8 100644 (file)
@@ -23,9 +23,9 @@ import React from 'react';
 import { FormattedMessage } from 'react-intl';
 import DocHelpTooltip from '~sonar-aligned/components/controls/DocHelpTooltip';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import withMetricsContext from '../../../app/components/metrics/withMetricsContext';
 import { translate } from '../../../helpers/l10n';
-import { MetricKey } from '../../../types/metrics';
 import { Condition, Dict, Metric } from '../../../types/types';
 import { getCaycConditionMetadata, getLocalizedMetricNameNoDiffMetric } from '../utils';
 
index 77a22d47fd1e9c4a852b59abae7e14732f1fb5ca..4f0bf6c5542a257dd6b98b99fc8a5e7c47a6c8f7 100644 (file)
@@ -19,8 +19,8 @@
  */
 import * as React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { translate } from '../../../helpers/l10n';
-import { MetricKey } from '../../../types/metrics';
 import { Condition, Metric } from '../../../types/types';
 import { GreenColorText } from './ConditionValue';
 
index 4d5d1252b385a276e287b8135d8fe0e6432bae2d..2db45668ea6ee5ca6316621eaa524ce16ba1340d 100644 (file)
@@ -34,6 +34,7 @@ import { differenceWith, map, uniqBy } from 'lodash';
 import * as React from 'react';
 import { FormattedMessage } from 'react-intl';
 import DocHelpTooltip from '~sonar-aligned/components/controls/DocHelpTooltip';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { useAvailableFeatures } from '../../../app/components/available-features/withAvailableFeatures';
 import { useMetrics } from '../../../app/components/metrics/withMetricsContext';
 import DocumentationLink from '../../../components/common/DocumentationLink';
@@ -41,7 +42,6 @@ import ModalButton, { ModalProps } from '../../../components/controls/ModalButto
 import { useDocUrl } from '../../../helpers/docs';
 import { getLocalizedMetricName, translate } from '../../../helpers/l10n';
 import { Feature } from '../../../types/features';
-import { MetricKey } from '../../../types/metrics';
 import { CaycStatus, Condition as ConditionType, QualityGate } from '../../../types/types';
 import { groupAndSortByPriorityConditions, isQualityGateOptimized } from '../utils';
 import AddConditionModal from './AddConditionModal';
index 34353e50a9e0ccd4e53528c70cf6c978ad30f40c..cb37ff4039abfbe9c772edfbd5b21532b6be2910 100644 (file)
@@ -18,9 +18,9 @@
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
 import { sortBy } from 'lodash';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { getLocalizedMetricName } from '../../helpers/l10n';
 import { isDiffMetric } from '../../helpers/measures';
-import { MetricKey } from '../../types/metrics';
 import { CaycStatus, Condition, Dict, Metric, QualityGate } from '../../types/types';
 
 interface GroupedByMetricConditions {
index 9fd13ab2f10ae9f634006ce9d7dd16ee2307ef78..ef2d3973ec217e54f34aaf55df206787b6349e8d 100644 (file)
 import { ContentCell, Link, Note, NumericalCell, TableRow } from 'design-system';
 import * as React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import { translateWithParameters } from '../../../helpers/l10n';
 import { isDefined } from '../../../helpers/types';
 import { getRulesUrl } from '../../../helpers/urls';
-import { MetricType } from '../../../types/metrics';
 import { RulesFacetName } from '../../../types/rules';
 
 interface Props {
index 4cdcd65ede0642094c7b60a144a5be000944ec58..125155c9f42ec5f19c0b70dc6a68cacae81206a2 100644 (file)
@@ -22,11 +22,11 @@ import { noop, sortBy } from 'lodash';
 import * as React from 'react';
 import { useIntl } from 'react-intl';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import { listRules } from '../../../api/rules';
 import { toShortISO8601String } from '../../../helpers/dates';
 import { translateWithParameters } from '../../../helpers/l10n';
 import { getRulesUrl } from '../../../helpers/urls';
-import { MetricType } from '../../../types/metrics';
 import { Rule, RuleActivation } from '../../../types/types';
 
 const RULES_LIMIT = 10;
index 408950cba1a4eb8b0218050e0f7fe6aa1c2abd49..34c7fd9c73688cf186c96dcc827d0f5e46213829 100644 (file)
@@ -23,6 +23,7 @@ import * as React from 'react';
 import { withRouter } from '~sonar-aligned/components/hoc/withRouter';
 import { getBranchLikeQuery } from '~sonar-aligned/helpers/branch-like';
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { Location, Router } from '~sonar-aligned/types/router';
 import { getMeasures } from '../../api/measures';
 import { getSecurityHotspotList, getSecurityHotspots } from '../../api/security-hotspots';
@@ -36,7 +37,6 @@ import { KeyboardKeys } from '../../helpers/keycodes';
 import { getStandards } from '../../helpers/security-standard';
 import { withBranchLikes } from '../../queries/branch';
 import { BranchLike } from '../../types/branch-like';
-import { MetricKey } from '../../types/metrics';
 import { SecurityStandard, Standards } from '../../types/security';
 import {
   HotspotFilters,
index 64efe95a09d57419d10237470e2d15f70e29da5d..fd56756bc52552d7ec60199e35771ab569e2d45e 100644 (file)
@@ -33,12 +33,12 @@ import * as React from 'react';
 import { Helmet } from 'react-helmet-async';
 import { isBranch } from '~sonar-aligned/helpers/branch-like';
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import A11ySkipTarget from '../../components/a11y/A11ySkipTarget';
 import Suggestions from '../../components/embed-docs-modal/Suggestions';
 import { translate } from '../../helpers/l10n';
 import useFollowScroll from '../../hooks/useFollowScroll';
 import { BranchLike } from '../../types/branch-like';
-import { MetricKey } from '../../types/metrics';
 import { SecurityStandard, Standards } from '../../types/security';
 import { HotspotFilters, HotspotStatusFilter, RawHotspot } from '../../types/security-hotspots';
 import { Component, StandardSecurityCategories } from '../../types/types';
index d25e5890ff9cdb6a972c9cedb8f1bdf770fd42d4..1db2b03ae9cd07d9ff8fe882e1f9bd51ded0997b 100644 (file)
@@ -21,6 +21,7 @@ import { screen, waitFor } from '@testing-library/react';
 import userEvent from '@testing-library/user-event';
 import React from 'react';
 import { Route } from 'react-router-dom';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import BranchesServiceMock from '../../../api/mocks/BranchesServiceMock';
 import CodingRulesServiceMock from '../../../api/mocks/CodingRulesServiceMock';
 import SecurityHotspotServiceMock from '../../../api/mocks/SecurityHotspotServiceMock';
@@ -33,7 +34,6 @@ import { mockLoggedInUser } from '../../../helpers/testMocks';
 import { renderAppWithComponentContext } from '../../../helpers/testReactTestingUtils';
 import { byDisplayValue, byRole, byTestId, byText } from '../../../helpers/testSelector';
 import { ComponentContextShape } from '../../../types/component';
-import { MetricKey } from '../../../types/metrics';
 import SecurityHotspotsApp from '../SecurityHotspotsApp';
 import useStickyDetection from '../hooks/useStickyDetection';
 
index 743b3ab14b136a714a6efcd4ac7a54d4ad26d8ab..eda6457439b4f572e363724a656caf0a85a36f33 100644 (file)
@@ -33,6 +33,7 @@ import {
 import * as React from 'react';
 import HelpTooltip from '~sonar-aligned/components/controls/HelpTooltip';
 import { isBranch } from '~sonar-aligned/helpers/branch-like';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import withComponentContext from '../../../app/components/componentContext/withComponentContext';
 import withCurrentUserContext from '../../../app/components/current-user/withCurrentUserContext';
 import Tooltip from '../../../components/controls/Tooltip';
@@ -41,7 +42,6 @@ import { PopupPlacement } from '../../../components/ui/popups';
 import { translate } from '../../../helpers/l10n';
 import { BranchLike } from '../../../types/branch-like';
 import { ComponentContextShape } from '../../../types/component';
-import { MetricKey, MetricType } from '../../../types/metrics';
 import { HotspotFilters } from '../../../types/security-hotspots';
 import { CurrentUser, isLoggedIn } from '../../../types/users';
 import { HotspotDisabledFilterTooltip } from './HotspotDisabledFilterTooltip';
index ab46faa738fc3844b3465796668e7682bd967e01..be701bad8bb0e237cc37a07aac3e93e6d9def61e 100644 (file)
  */
 import { ButtonSecondary, LightLabel, SonarCodeColorizer, Spinner } from 'design-system';
 import * as React from 'react';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { decorateWithUnderlineFlags } from '../../helpers/code-viewer';
 import { translate } from '../../helpers/l10n';
 import { BranchLike } from '../../types/branch-like';
-import { MetricKey } from '../../types/metrics';
 import {
   Duplication,
   FlowLocation,
index a160a53f1720b2a28f7c32a3b05575449a04c1ea..088129627c2a09c580c9df91f3513ec1ff9e63d6 100644 (file)
@@ -45,6 +45,7 @@ import {
   getComponentSecurityHotspotsUrl,
 } from '~sonar-aligned/helpers/urls';
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import { SOFTWARE_QUALITIES } from '../../helpers/constants';
 import {
   ISSUETYPE_METRIC_KEYS_MAP,
@@ -59,7 +60,6 @@ import { isDefined } from '../../helpers/types';
 import { getBranchLikeUrl, getCodeUrl } from '../../helpers/urls';
 import type { BranchLike } from '../../types/branch-like';
 import { IssueType } from '../../types/issues';
-import { MetricKey, MetricType } from '../../types/metrics';
 import type { Measure, SourceViewerFile } from '../../types/types';
 import { DEFAULT_ISSUES_QUERY } from '../shared/utils';
 import type { WorkspaceContextShape } from '../workspace/context';
index dd75fad448a216b0c69d694449d5b7050a37b38f..aaa6d54b6c896c909be91a5b118d7c926f7996be 100644 (file)
@@ -20,6 +20,7 @@
 import { queryHelpers, screen, within } from '@testing-library/react';
 import userEvent from '@testing-library/user-event';
 import * as React from 'react';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import ComponentsServiceMock from '../../../api/mocks/ComponentsServiceMock';
 import IssuesServiceMock from '../../../api/mocks/IssuesServiceMock';
 import UsersServiceMock from '../../../api/mocks/UsersServiceMock';
@@ -29,7 +30,6 @@ import { HttpStatus } from '../../../helpers/request';
 import { mockIssue, mockLoggedInUser, mockMeasure } from '../../../helpers/testMocks';
 import { renderComponent } from '../../../helpers/testReactTestingUtils';
 import { byLabelText } from '../../../helpers/testSelector';
-import { MetricKey } from '../../../types/metrics';
 import { RestUserDetailed } from '../../../types/users';
 import SourceViewer, { Props } from '../SourceViewer';
 import loadIssues from '../helpers/loadIssues';
index 6f26ed427352191e3bcc2d2bb879d0dc34aae9d3..6af52bfce2f0b8da087caa643350784103de20ff 100644 (file)
 import { ButtonSecondary, ChevronDownIcon, Dropdown, TextMuted } from 'design-system';
 import { sortBy } from 'lodash';
 import * as React from 'react';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import { CCT_SOFTWARE_QUALITY_METRICS, HIDDEN_METRICS } from '../../helpers/constants';
 import { getLocalizedMetricName, translate } from '../../helpers/l10n';
 import { isDiffMetric } from '../../helpers/measures';
-import { MetricKey, MetricType } from '../../types/metrics';
 import { Metric } from '../../types/types';
 import AddGraphMetricPopup from './AddGraphMetricPopup';
 
index bbe99af8257c972cad80c8eb009fb09af262143c..48b5b1be8746e7583085cdd9d55db4508bb7cc4d 100644 (file)
@@ -20,9 +20,9 @@
 import { Badge, FlagMessage, MultiSelectMenu } from 'design-system';
 import * as React from 'react';
 import { FormattedMessage, useIntl } from 'react-intl';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { DEPRECATED_ACTIVITY_METRICS } from '../../helpers/constants';
 import { getLocalizedMetricName, translate, translateWithParameters } from '../../helpers/l10n';
-import { MetricKey } from '../../types/metrics';
 import { getDeprecatedTranslationKeyForTooltip } from './utils';
 
 export interface AddGraphMetricPopupProps {
index f94bb480484a0d475d0bc149baa56e0d1a9f083c..8035becb36dc16899b3e065da5775dc72b087c0f 100644 (file)
@@ -31,9 +31,9 @@ import {
 } from 'design-system';
 import * as React from 'react';
 import { FormattedMessage, useIntl } from 'react-intl';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { DEPRECATED_ACTIVITY_METRICS } from '../../helpers/constants';
 import { translateWithParameters } from '../../helpers/l10n';
-import { MetricKey } from '../../types/metrics';
 import Tooltip from '../controls/Tooltip';
 import { ChartLegend } from './ChartLegend';
 import { getDeprecatedTranslationKeyForTooltip } from './utils';
index 0e020cb42301e1aed65b1895a5291bcc1ac2ef8c..97f6ab7cff28357859b5f3090446cfa64776f57c 100644 (file)
@@ -20,8 +20,8 @@
 import { TableSeparator } from 'design-system';
 import * as React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import { translate } from '../../helpers/l10n';
-import { MetricKey, MetricType } from '../../types/metrics';
 import { MeasureHistory } from '../../types/project-activity';
 
 export interface GraphsTooltipsContentCoverageProps {
index 3c1b26f88d1cf6eefa077c3169032f4878249666..48e6fd9dc7a40e32b4cf024b21144b9c371657fc 100644 (file)
@@ -20,8 +20,8 @@
 import { TableSeparator } from 'design-system';
 import * as React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import { translate } from '../../helpers/l10n';
-import { MetricKey, MetricType } from '../../types/metrics';
 import { MeasureHistory } from '../../types/project-activity';
 
 export interface GraphsTooltipsContentDuplicationProps {
index 06eb0fa41af367923046f60f7e332edf46bfdd35..43017bb1a4ae60e9577b5642109b71b2e8608c45 100644 (file)
@@ -21,6 +21,7 @@ import { screen } from '@testing-library/react';
 import userEvent from '@testing-library/user-event';
 import { times } from 'lodash';
 import * as React from 'react';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import { CCT_SOFTWARE_QUALITY_METRICS } from '../../../helpers/constants';
 import { parseDate } from '../../../helpers/dates';
 import { mockHistoryItem, mockMeasureHistory } from '../../../helpers/mocks/project-activity';
@@ -28,7 +29,6 @@ import { mockMetric } from '../../../helpers/testMocks';
 import { renderComponent } from '../../../helpers/testReactTestingUtils';
 import { byLabelText, byPlaceholderText, byRole, byText } from '../../../helpers/testSelector';
 import { ComponentPropsType } from '../../../helpers/testUtils';
-import { MetricKey, MetricType } from '../../../types/metrics';
 import { GraphType, MeasureHistory } from '../../../types/project-activity';
 import { Metric } from '../../../types/types';
 import GraphsHeader from '../GraphsHeader';
index fc8e03c87a37bfc786d70140f0853c6b37e6cd15..de33267920c161a9abee5bdc829af3cba5835e4c 100644 (file)
@@ -20,6 +20,7 @@
 import { screen } from '@testing-library/react';
 import { times } from 'lodash';
 import * as React from 'react';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { parseDate } from '../../../helpers/dates';
 import {
   mockAnalysisEvent,
@@ -29,7 +30,6 @@ import {
 } from '../../../helpers/mocks/project-activity';
 import { mockMetric } from '../../../helpers/testMocks';
 import { renderComponent } from '../../../helpers/testReactTestingUtils';
-import { MetricKey } from '../../../types/metrics';
 import {
   GraphType,
   MeasureHistory,
index e490c142813d9a99f8fa23cfb6fc7548fc0e6a2a..21457641806e72e98c6805086e6c666ed35f610f 100644 (file)
@@ -19,6 +19,7 @@
  */
 import { screen } from '@testing-library/react';
 import * as React from 'react';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { parseDate } from '../../../helpers/dates';
 import {
   mockAnalysisEvent,
@@ -27,7 +28,6 @@ import {
 } from '../../../helpers/mocks/project-activity';
 import { mockMetric } from '../../../helpers/testMocks';
 import { renderComponent } from '../../../helpers/testReactTestingUtils';
-import { MetricKey } from '../../../types/metrics';
 import { GraphType, MeasureHistory } from '../../../types/project-activity';
 import { Metric } from '../../../types/types';
 import { GraphsTooltips, Props } from '../GraphsTooltips';
index 1117a9bd16245d2c8972b1ca28f0c4827085635f..4cfdf423674c0b67c208bee76f041473e3a14bab 100644 (file)
  * along with this program; if not, write to the Free Software Foundation,
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import * as dates from '../../../helpers/dates';
 import { mockMeasureHistory, mockSerie } from '../../../helpers/mocks/project-activity';
 import { get, save } from '../../../helpers/storage';
 import { mockMetric } from '../../../helpers/testMocks';
-import { MetricKey, MetricType } from '../../../types/metrics';
 import { GraphType } from '../../../types/project-activity';
 import * as utils from '../utils';
 
index 68c0e577df959543ce1221a388e46be29975ecc2..2f769d4e58b70f2f402d4200c64b298fe008db47 100644 (file)
@@ -18,6 +18,7 @@
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
 import { chunk, flatMap, groupBy, sortBy } from 'lodash';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import {
   CCT_SOFTWARE_QUALITY_METRICS,
   OLD_TO_NEW_TAXONOMY_METRICS_MAP,
@@ -25,7 +26,6 @@ import {
 import { getLocalizedMetricName, translate } from '../../helpers/l10n';
 import { localizeMetric } from '../../helpers/measures';
 import { get, save } from '../../helpers/storage';
-import { MetricKey, MetricType } from '../../types/metrics';
 import { GraphType, MeasureHistory, ParsedAnalysis, Serie } from '../../types/project-activity';
 import { Dict, Metric } from '../../types/types';
 
index 6f60e1fc7945a58c6eda3e2e544faf8d827f1c5a..0c9bc7a15a0fba6972a5b3bb6e7dcb9877765447 100644 (file)
@@ -33,8 +33,8 @@ import { area, curveBasis, line as d3Line } from 'd3-shape';
 import { CSSColor, ThemeProp, themeColor, withTheme } from 'design-system';
 import { flatten, isEqual, sortBy, throttle, uniq } from 'lodash';
 import * as React from 'react';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import { isDefined } from '../../helpers/types';
-import { MetricType } from '../../types/metrics';
 import { Chart } from '../../types/types';
 import { LINE_CHART_DASHES } from '../activity-graph/utils';
 import './AdvancedTimeline.css';
index 97d3ebfdaf8412e6404c0e9fd7ba8387dd959024..c8a60bbf556af6d7f2fb4cad8668487a0204c7b1 100644 (file)
@@ -21,10 +21,10 @@ import { Histogram } from 'design-system';
 import { sortBy } from 'lodash';
 import * as React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import withLanguagesContext from '../../app/components/languages/withLanguagesContext';
 import { translate } from '../../helpers/l10n';
 import { Languages } from '../../types/languages';
-import { MetricType } from '../../types/metrics';
 
 export interface LanguageDistributionProps {
   distribution: string;
index 5e63ae9a97abe2d0be2cc8f7a9ae44fcfd27ce65..d4a023a72398104a40bd24847c0a1f4b9c9f3738 100644 (file)
@@ -25,7 +25,7 @@ import { CSSColor, DraggableIcon, themeColor } from 'design-system';
 import { flatten, sortBy, throttle } from 'lodash';
 import * as React from 'react';
 import Draggable, { DraggableBounds, DraggableCore, DraggableData } from 'react-draggable';
-import { MetricType } from '../../types/metrics';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import { Chart } from '../../types/types';
 import { LINE_CHART_DASHES } from '../activity-graph/utils';
 
index 400b86be8e68ba2b99b216aecc8e9a2880a8b339..857ea92689477c602311d271dc3f703c2fe20d76 100644 (file)
@@ -19,7 +19,7 @@
  */
 import { render } from '@testing-library/react';
 import * as React from 'react';
-import { MetricType } from '../../../types/metrics';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import { AdvancedTimeline, PropsWithoutTheme } from '../AdvancedTimeline';
 
 // Replace scaleTime with scaleUtc to avoid timezone-dependent snapshots
index de07d049fc596f7828a0f7db706057ab25a56875..1e6878b9e68542a3a53d9e72f13293a373ed27a6 100644 (file)
@@ -19,7 +19,7 @@
  */
 import * as React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
-import { MetricType } from '../../types/metrics';
+import { MetricType } from '~sonar-aligned/types/metrics';
 
 export interface PageCounterProps {
   className?: string;
index 1f4a791fe3be882586b590a0a854f00ba6640d85..8ba6e18feb60e6ff0472d8838773d9fe4b1f53a4 100644 (file)
@@ -22,8 +22,8 @@ import classNames from 'classnames';
 import { ButtonSecondary, Spinner, themeColor } from 'design-system';
 import * as React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import { translate, translateWithParameters } from '../../helpers/l10n';
-import { MetricType } from '../../types/metrics';
 
 export interface ListFooterProps {
   loadMoreAriaLabel?: string;
index 57d43c5a78102772890f8370f5560c360e48a0ee..4c7c6c4388b70a8b7f486dfe97abe74ae089edb0 100644 (file)
@@ -20,9 +20,9 @@
 import { MetricsRatingBadge, QualityGateIndicator, RatingLabel } from 'design-system';
 import * as React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import Tooltip from '../../components/controls/Tooltip';
 import { translate, translateWithParameters } from '../../helpers/l10n';
-import { MetricType } from '../../types/metrics';
 import { Status } from '../../types/types';
 import RatingTooltipContent from './RatingTooltipContent';
 
index 1c1c9ed17076fb13fbf22cc6354028fdcbd3709c..19e60b39226667762600ac1524a36809209e2672 100644 (file)
@@ -25,7 +25,7 @@ import {
 } from 'design-system';
 import * as React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
-import { MetricKey, MetricType } from '../../types/metrics';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import Measure from './Measure';
 import { duplicationRatingConverter } from './utils';
 
index e73de8ef2330baff6a5c111223467459d267277e..e64ede3682bcf92dbf51b98c33e27739d6e1c1ba 100644 (file)
@@ -19,6 +19,7 @@
  */
 import * as React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import withAppStateContext from '../../app/components/app-state/withAppStateContext';
 import { translate, translateWithParameters } from '../../helpers/l10n';
 import { isDiffMetric } from '../../helpers/measures';
@@ -29,7 +30,6 @@ import {
   getMaintainabilityGrid,
 } from '../../helpers/ratings';
 import { AppState } from '../../types/appstate';
-import { MetricKey, MetricType } from '../../types/metrics';
 import { GlobalSettingKeys } from '../../types/settings';
 import { KNOWN_RATINGS } from './utils';
 
index 621cf364c11cc3a4432bf8ef59b2c27bf357ca67..766acf472e09d3bac50bcfbf3315dab050e8c80e 100644 (file)
@@ -19,8 +19,8 @@
  */
 import { render, screen } from '@testing-library/react';
 import * as React from 'react';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import { Status } from '../../../apps/overview/utils';
-import { MetricKey, MetricType } from '../../../types/metrics';
 import MeasureIndicator from '../MeasureIndicator';
 
 it('renders correctly for coverage', () => {
index 970357bd5a279ad2328714ab466c9b077e3319e0..f28c1d35718d860b22f0b010b693e70f4450bc0e 100644 (file)
@@ -17,7 +17,7 @@
  * along with this program; if not, write to the Free Software Foundation,
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
-import { MetricKey } from '../../../types/metrics';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { propsToIssueParams } from '../utils';
 
 describe('propsToIssueParams', () => {
index 655423c07f039a100f305b55486e2119f55c6e7d..954d74cf7e2191e9f3b686a2fb7866004d6855f6 100644 (file)
@@ -17,8 +17,8 @@
  * along with this program; if not, write to the Free Software Foundation,
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { IssueStatus } from '../../types/issues';
-import { MetricKey } from '../../types/metrics';
 import { Dict } from '../../types/types';
 
 const ISSUE_MEASURES = [
index 3d4aa63509286bee573cbb5739fe0a292c779fd9..c92f9b9d1f4a441aea97ba6300f885e32b31ee07 100644 (file)
@@ -22,9 +22,9 @@ import classNames from 'classnames';
 import { Note, themeColor } from 'design-system';
 import React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import { translate } from '../../helpers/l10n';
 import { isDefined } from '../../helpers/types';
-import { MetricType } from '../../types/metrics';
 
 interface Props {
   className?: string;
index f21335fbadc494075f34732ea2a3ea5eb7854b09..e1f7b038233b2835a0e1c359195bc536b1fb01c5 100644 (file)
@@ -20,8 +20,8 @@
 import classNames from 'classnames';
 import * as React from 'react';
 import { formatMeasure } from '~sonar-aligned/helpers/measures';
+import { MetricType } from '~sonar-aligned/types/metrics';
 import { translate, translateWithParameters } from '../../helpers/l10n';
-import { MetricType } from '../../types/metrics';
 import './Rating.css';
 
 interface Props extends React.AriaAttributes {
index 06083a1ee2324296fa306ee10db23d366c88e19c..7b5d60a4cf2d9a56f1d95450477b9e197c81fb2e 100644 (file)
@@ -17,7 +17,7 @@
  * along with this program; if not, write to the Free Software Foundation,
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
-import { MetricKey } from '../../types/metrics';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { CCT_SOFTWARE_QUALITY_METRICS } from '../constants';
 import {
   areCCTMeasuresComputed,
index 76ddb1094848e1de247677092ebd205da3b90ebc..1d236dad89cbd8cb631dcf1fb6f73337ee245159 100644 (file)
@@ -18,6 +18,7 @@
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { colors } from '../app/theme';
 import { AlmKeys } from '../types/alm-settings';
 import {
@@ -33,7 +34,6 @@ import {
   IssueStatus,
   IssueType,
 } from '../types/issues';
-import { MetricKey } from '../types/metrics';
 import { RuleType } from '../types/types';
 
 export const SEVERITIES = Object.values(IssueSeverity);
index 204a54d606bc5a0b0db1ef978f6a9ca99463e1e7..a86bed577dd180d047bab55c2fa47939a06ac18b 100644 (file)
@@ -19,9 +19,9 @@
  */
 import { BugIcon, CodeSmellIcon, SecurityHotspotIcon, VulnerabilityIcon } from 'design-system';
 import { flatten, sortBy } from 'lodash';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { SoftwareQuality } from '../types/clean-code-taxonomy';
 import { IssueType, RawIssue } from '../types/issues';
-import { MetricKey } from '../types/metrics';
 import { Dict, Flow, FlowLocation, FlowType, Issue, TextRange } from '../types/types';
 import { UserBase } from '../types/users';
 import { ISSUE_TYPES } from './constants';
index 2ac1984bf76aff242b52e64c9ea60ea9d930bee3..4a3e774ded7fbb9bd736d70e5ca09ea792848791 100644 (file)
@@ -17,7 +17,7 @@
  * along with this program; if not, write to the Free Software Foundation,
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
-import { MetricKey, MetricType } from '../types/metrics';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import {
   QualityGateStatusCondition,
   QualityGateStatusConditionEnhanced,
index d3fec7e4e20357bdfad30cb25cf93325bb7c4bcc..13b07c99188ba33ae8b0b844df19fd643386304f 100644 (file)
@@ -18,8 +18,8 @@
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { TreeComponent, Visibility } from '../../types/component';
-import { MetricKey } from '../../types/metrics';
 import { Component, ComponentMeasure, ComponentMeasureEnhanced } from '../../types/types';
 import { mockMeasureEnhanced } from '../testMocks';
 
index 854d0deeaeb1acfbc3a7f97fc12f55a6c70aeb91..f6720c67d7a2015f47c0190f6975a7cbb70f1a6d 100644 (file)
@@ -17,7 +17,7 @@
  * along with this program; if not, write to the Free Software Foundation,
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
-import { MetricKey, MetricType } from '../../types/metrics';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import {
   Analysis,
   AnalysisEvent,
index f44e2396b24a996d0dcbf9860bd6910bb4bc13cd..9549e5e00d366f685fa594392508a7434c835c9b 100644 (file)
@@ -17,7 +17,7 @@
  * along with this program; if not, write to the Free Software Foundation,
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
-import { MetricKey } from '../../types/metrics';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import {
   QualityGateApplicationStatus,
   QualityGateProjectStatus,
index 19c8e161ed7657fd21723257ddf71e2d159a56bd..0ba8ff5727008bc09b3559814d386dea8ccd7776 100644 (file)
@@ -17,7 +17,7 @@
  * along with this program; if not, write to the Free Software Foundation,
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
-import { MetricKey, MetricType } from '../types/metrics';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import {
   QualityGateApplicationStatusChildProject,
   QualityGateProjectStatus,
index b2ae3877adc71dd8e21d3d395cce2056ca3dbe00..21b8974f9b1488f5d282ee261c4d7f98c014e5ea 100644 (file)
@@ -20,6 +20,7 @@
 import { omit } from 'lodash';
 import { To } from 'react-router-dom';
 import { ComponentQualifier } from '~sonar-aligned/types/component';
+import { MetricKey, MetricType } from '~sonar-aligned/types/metrics';
 import { Location, Router } from '~sonar-aligned/types/router';
 import { CompareResponse } from '../api/quality-profiles';
 import { RuleDescriptionSections } from '../apps/coding-rules/rule';
@@ -44,7 +45,6 @@ import {
   RawIssue,
 } from '../types/issues';
 import { Language } from '../types/languages';
-import { MetricKey, MetricType } from '../types/metrics';
 import { Notification } from '../types/notifications';
 import { DumpStatus, DumpTask } from '../types/project-dump';
 import { TaskStatuses } from '../types/tasks';
index 914ee8167aa5e6e609ba6634aa3a577a1b6288d3..810b330225e6db4b5f412b40702d587e6242e369 100644 (file)
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
 import { useMutation, useQuery, useQueryClient } from '@tanstack/react-query';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { getProjectBadgesToken, renewProjectBadgesToken } from '../api/project-badges';
 import { translate } from '../helpers/l10n';
 import { localizeMetric } from '../helpers/measures';
-import { MetricKey } from '../types/metrics';
 import { useWebApiQuery } from './web-api';
 
 export function useRenewBagdeTokenMutation() {
index 8680dbb6a236e081f1955ac349ca769deacb3765..5e6273f5f71e04a0ae346ea083b791b9de4575e9 100644 (file)
@@ -17,8 +17,8 @@
  * along with this program; if not, write to the Free Software Foundation,
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
+import { MetricType } from '~sonar-aligned/types/metrics';
 import { getMessages } from '../../../helpers/l10nBundle';
-import { MetricType } from '../../../types/metrics';
 import { Dict } from '../../../types/types';
 import { formatMeasure } from '../measures';
 
index 1969f3da1d1fd90f5b253190d19802399f18166c..5632bb16be7eb8bfd8b616780cccc233a730216e 100644 (file)
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
 
+import { MetricType } from '~sonar-aligned/types/metrics';
 import { ONE_SECOND } from '../../helpers/constants';
 import { translate, translateWithParameters } from '../../helpers/l10n';
 import { getCurrentLocale } from '../../helpers/l10nBundle';
-import { MetricType } from '../../types/metrics';
 
 import { Dict } from '../../types/types';
 
diff --git a/server/sonar-web/src/main/js/sonar-aligned/types/metrics.ts b/server/sonar-web/src/main/js/sonar-aligned/types/metrics.ts
new file mode 100644 (file)
index 0000000..a98e6d0
--- /dev/null
@@ -0,0 +1,184 @@
+/*
+ * SonarQube
+ * Copyright (C) 2009-2024 SonarSource SA
+ * mailto:info AT sonarsource DOT com
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
+ */
+export enum MetricKey {
+  accepted_issues = 'accepted_issues',
+  alert_status = 'alert_status',
+  blocker_violations = 'blocker_violations',
+  branch_coverage = 'branch_coverage',
+  bugs = 'bugs',
+  burned_budget = 'burned_budget',
+  business_value = 'business_value',
+  class_complexity = 'class_complexity',
+  classes = 'classes',
+  code_smells = 'code_smells',
+  cognitive_complexity = 'cognitive_complexity',
+  comment_lines = 'comment_lines',
+  comment_lines_data = 'comment_lines_data',
+  comment_lines_density = 'comment_lines_density',
+  complexity = 'complexity',
+  complexity_in_classes = 'complexity_in_classes',
+  complexity_in_functions = 'complexity_in_functions',
+  conditions_to_cover = 'conditions_to_cover',
+  confirmed_issues = 'confirmed_issues',
+  coverage = 'coverage',
+  critical_violations = 'critical_violations',
+  development_cost = 'development_cost',
+  directories = 'directories',
+  duplicated_blocks = 'duplicated_blocks',
+  duplicated_files = 'duplicated_files',
+  duplicated_lines = 'duplicated_lines',
+  duplicated_lines_density = 'duplicated_lines_density',
+  duplications_data = 'duplications_data',
+  effort_to_reach_maintainability_rating_a = 'effort_to_reach_maintainability_rating_a',
+  executable_lines_data = 'executable_lines_data',
+  false_positive_issues = 'false_positive_issues',
+  file_complexity = 'file_complexity',
+  file_complexity_distribution = 'file_complexity_distribution',
+  filename_size = 'filename_size',
+  filename_size_rating = 'filename_size_rating',
+  files = 'files',
+  function_complexity = 'function_complexity',
+  function_complexity_distribution = 'function_complexity_distribution',
+  functions = 'functions',
+  generated_lines = 'generated_lines',
+  generated_ncloc = 'generated_ncloc',
+  high_impact_accepted_issues = 'high_impact_accepted_issues',
+  info_violations = 'info_violations',
+  issues = 'issues',
+  last_change_on_maintainability_rating = 'last_change_on_maintainability_rating',
+  last_change_on_releasability_rating = 'last_change_on_releasability_rating',
+  last_change_on_reliability_rating = 'last_change_on_reliability_rating',
+  last_change_on_security_rating = 'last_change_on_security_rating',
+  last_change_on_security_review_rating = 'last_change_on_security_review_rating',
+  last_commit_date = 'last_commit_date',
+  leak_projects = 'leak_projects',
+  line_coverage = 'line_coverage',
+  lines = 'lines',
+  lines_to_cover = 'lines_to_cover',
+  maintainability_issues = 'maintainability_issues',
+  maintainability_rating_distribution = 'maintainability_rating_distribution',
+  maintainability_rating_effort = 'maintainability_rating_effort',
+  major_violations = 'major_violations',
+  minor_violations = 'minor_violations',
+  ncloc = 'ncloc',
+  ncloc_data = 'ncloc_data',
+  ncloc_language_distribution = 'ncloc_language_distribution',
+  new_accepted_issues = 'new_accepted_issues',
+  new_blocker_violations = 'new_blocker_violations',
+  new_branch_coverage = 'new_branch_coverage',
+  new_bugs = 'new_bugs',
+  new_code_smells = 'new_code_smells',
+  new_conditions_to_cover = 'new_conditions_to_cover',
+  new_coverage = 'new_coverage',
+  new_critical_violations = 'new_critical_violations',
+  new_development_cost = 'new_development_cost',
+  new_duplicated_blocks = 'new_duplicated_blocks',
+  new_duplicated_lines = 'new_duplicated_lines',
+  new_duplicated_lines_density = 'new_duplicated_lines_density',
+  new_info_violations = 'new_info_violations',
+  new_issues = 'new_issues',
+  new_line_coverage = 'new_line_coverage',
+  new_lines = 'new_lines',
+  new_lines_to_cover = 'new_lines_to_cover',
+  new_maintainability_issues = 'new_maintainability_issues',
+  new_maintainability_rating = 'new_maintainability_rating',
+  new_maintainability_rating_distribution = 'new_maintainability_rating_distribution',
+  new_major_violations = 'new_major_violations',
+  new_minor_violations = 'new_minor_violations',
+  new_reliability_issues = 'new_reliability_issues',
+  new_reliability_rating = 'new_reliability_rating',
+  new_reliability_rating_distribution = 'new_reliability_rating_distribution',
+  new_reliability_remediation_effort = 'new_reliability_remediation_effort',
+  new_security_hotspots = 'new_security_hotspots',
+  new_security_hotspots_reviewed = 'new_security_hotspots_reviewed',
+  new_security_issues = 'new_security_issues',
+  new_security_rating = 'new_security_rating',
+  new_security_rating_distribution = 'new_security_rating_distribution',
+  new_security_remediation_effort = 'new_security_remediation_effort',
+  new_security_review_rating = 'new_security_review_rating',
+  new_security_review_rating_distribution = 'new_security_review_rating_distribution',
+  new_sqale_debt_ratio = 'new_sqale_debt_ratio',
+  new_technical_debt = 'new_technical_debt',
+  new_uncovered_conditions = 'new_uncovered_conditions',
+  new_uncovered_lines = 'new_uncovered_lines',
+  new_violations = 'new_violations',
+  new_violations_rating = 'new_violations_rating',
+  new_vulnerabilities = 'new_vulnerabilities',
+  open_issues = 'open_issues',
+  projects = 'projects',
+  public_api = 'public_api',
+  public_documented_api_density = 'public_documented_api_density',
+  public_undocumented_api = 'public_undocumented_api',
+  pull_request_fixed_issues = 'pull_request_fixed_issues',
+  quality_gate_details = 'quality_gate_details',
+  quality_profiles = 'quality_profiles',
+  releasability_effort = 'releasability_effort',
+  releasability_rating = 'releasability_rating',
+  releasability_rating_distribution = 'releasability_rating_distribution',
+  reliability_issues = 'reliability_issues',
+  reliability_rating = 'reliability_rating',
+  reliability_rating_distribution = 'reliability_rating_distribution',
+  reliability_rating_effort = 'reliability_rating_effort',
+  reliability_remediation_effort = 'reliability_remediation_effort',
+  reopened_issues = 'reopened_issues',
+  security_hotspots = 'security_hotspots',
+  security_hotspots_reviewed = 'security_hotspots_reviewed',
+  security_issues = 'security_issues',
+  security_rating = 'security_rating',
+  security_rating_distribution = 'security_rating_distribution',
+  security_rating_effort = 'security_rating_effort',
+  security_remediation_effort = 'security_remediation_effort',
+  security_review_rating = 'security_review_rating',
+  security_review_rating_distribution = 'security_review_rating_distribution',
+  security_review_rating_effort = 'security_review_rating_effort',
+  skipped_tests = 'skipped_tests',
+  sonarjava_feedback = 'sonarjava_feedback',
+  sqale_debt_ratio = 'sqale_debt_ratio',
+  sqale_index = 'sqale_index',
+  sqale_rating = 'sqale_rating',
+  statements = 'statements',
+  team_at_sonarsource = 'team_at_sonarsource',
+  team_size = 'team_size',
+  test_errors = 'test_errors',
+  test_execution_time = 'test_execution_time',
+  test_failures = 'test_failures',
+  test_success_density = 'test_success_density',
+  tests = 'tests',
+  uncovered_conditions = 'uncovered_conditions',
+  uncovered_lines = 'uncovered_lines',
+  violations = 'violations',
+  violations_rating = 'violations_rating',
+  vulnerabilities = 'vulnerabilities',
+  wont_fix_issues = 'wont_fix_issues',
+}
+
+export enum MetricType {
+  Rating = 'RATING',
+  Percent = 'PERCENT',
+  Integer = 'INT',
+  Float = 'FLOAT',
+  MilliSeconds = 'MILLISEC',
+  Level = 'LEVEL',
+  ShortInteger = 'SHORT_INT',
+  ShortWorkDuration = 'SHORT_WORK_DUR',
+  Data = 'DATA',
+  Distribution = 'DISTRIB',
+  WorkDuration = 'WORK_DUR',
+}
diff --git a/server/sonar-web/src/main/js/types/metrics.ts b/server/sonar-web/src/main/js/types/metrics.ts
deleted file mode 100644 (file)
index ca94b3d..0000000
+++ /dev/null
@@ -1,181 +0,0 @@
-/*
- * SonarQube
- * Copyright (C) 2009-2024 SonarSource SA
- * mailto:info AT sonarsource DOT com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 3 of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
- */
-export enum MetricKey {
-  alert_status = 'alert_status',
-  blocker_violations = 'blocker_violations',
-  branch_coverage = 'branch_coverage',
-  bugs = 'bugs',
-  burned_budget = 'burned_budget',
-  business_value = 'business_value',
-  class_complexity = 'class_complexity',
-  classes = 'classes',
-  code_smells = 'code_smells',
-  cognitive_complexity = 'cognitive_complexity',
-  comment_lines = 'comment_lines',
-  comment_lines_data = 'comment_lines_data',
-  comment_lines_density = 'comment_lines_density',
-  complexity = 'complexity',
-  complexity_in_classes = 'complexity_in_classes',
-  complexity_in_functions = 'complexity_in_functions',
-  conditions_to_cover = 'conditions_to_cover',
-  confirmed_issues = 'confirmed_issues',
-  coverage = 'coverage',
-  critical_violations = 'critical_violations',
-  development_cost = 'development_cost',
-  directories = 'directories',
-  duplicated_blocks = 'duplicated_blocks',
-  duplicated_files = 'duplicated_files',
-  duplicated_lines = 'duplicated_lines',
-  duplicated_lines_density = 'duplicated_lines_density',
-  duplications_data = 'duplications_data',
-  effort_to_reach_maintainability_rating_a = 'effort_to_reach_maintainability_rating_a',
-  executable_lines_data = 'executable_lines_data',
-  false_positive_issues = 'false_positive_issues',
-  file_complexity = 'file_complexity',
-  file_complexity_distribution = 'file_complexity_distribution',
-  filename_size = 'filename_size',
-  filename_size_rating = 'filename_size_rating',
-  files = 'files',
-  function_complexity = 'function_complexity',
-  function_complexity_distribution = 'function_complexity_distribution',
-  functions = 'functions',
-  generated_lines = 'generated_lines',
-  generated_ncloc = 'generated_ncloc',
-  info_violations = 'info_violations',
-  last_change_on_maintainability_rating = 'last_change_on_maintainability_rating',
-  last_change_on_releasability_rating = 'last_change_on_releasability_rating',
-  last_change_on_reliability_rating = 'last_change_on_reliability_rating',
-  last_change_on_security_rating = 'last_change_on_security_rating',
-  last_change_on_security_review_rating = 'last_change_on_security_review_rating',
-  last_commit_date = 'last_commit_date',
-  leak_projects = 'leak_projects',
-  line_coverage = 'line_coverage',
-  lines = 'lines',
-  lines_to_cover = 'lines_to_cover',
-  maintainability_issues = 'maintainability_issues',
-  maintainability_rating_distribution = 'maintainability_rating_distribution',
-  maintainability_rating_effort = 'maintainability_rating_effort',
-  major_violations = 'major_violations',
-  minor_violations = 'minor_violations',
-  ncloc = 'ncloc',
-  ncloc_data = 'ncloc_data',
-  ncloc_language_distribution = 'ncloc_language_distribution',
-  new_accepted_issues = 'new_accepted_issues',
-  new_blocker_violations = 'new_blocker_violations',
-  new_branch_coverage = 'new_branch_coverage',
-  new_bugs = 'new_bugs',
-  new_code_smells = 'new_code_smells',
-  new_conditions_to_cover = 'new_conditions_to_cover',
-  new_coverage = 'new_coverage',
-  new_critical_violations = 'new_critical_violations',
-  new_development_cost = 'new_development_cost',
-  new_duplicated_blocks = 'new_duplicated_blocks',
-  new_duplicated_lines = 'new_duplicated_lines',
-  new_duplicated_lines_density = 'new_duplicated_lines_density',
-  new_info_violations = 'new_info_violations',
-  new_line_coverage = 'new_line_coverage',
-  new_lines = 'new_lines',
-  new_lines_to_cover = 'new_lines_to_cover',
-  new_maintainability_issues = 'new_maintainability_issues',
-  new_maintainability_rating = 'new_maintainability_rating',
-  new_maintainability_rating_distribution = 'new_maintainability_rating_distribution',
-  new_major_violations = 'new_major_violations',
-  new_minor_violations = 'new_minor_violations',
-  new_reliability_issues = 'new_reliability_issues',
-  new_reliability_rating = 'new_reliability_rating',
-  new_reliability_remediation_effort = 'new_reliability_remediation_effort',
-  new_reliability_rating_distribution = 'new_reliability_rating_distribution',
-  new_security_hotspots = 'new_security_hotspots',
-  new_security_hotspots_reviewed = 'new_security_hotspots_reviewed',
-  new_security_issues = 'new_security_issues',
-  new_security_rating = 'new_security_rating',
-  new_security_rating_distribution = 'new_security_rating_distribution',
-  new_security_remediation_effort = 'new_security_remediation_effort',
-  new_security_review_rating = 'new_security_review_rating',
-  new_security_review_rating_distribution = 'new_security_review_rating_distribution',
-  new_sqale_debt_ratio = 'new_sqale_debt_ratio',
-  new_technical_debt = 'new_technical_debt',
-  new_uncovered_conditions = 'new_uncovered_conditions',
-  new_uncovered_lines = 'new_uncovered_lines',
-  new_violations = 'new_violations',
-  new_vulnerabilities = 'new_vulnerabilities',
-  open_issues = 'open_issues',
-  projects = 'projects',
-  public_api = 'public_api',
-  public_documented_api_density = 'public_documented_api_density',
-  public_undocumented_api = 'public_undocumented_api',
-  pull_request_fixed_issues = 'pull_request_fixed_issues',
-  quality_gate_details = 'quality_gate_details',
-  quality_profiles = 'quality_profiles',
-  releasability_effort = 'releasability_effort',
-  releasability_rating = 'releasability_rating',
-  releasability_rating_distribution = 'releasability_rating_distribution',
-  reliability_issues = 'reliability_issues',
-  reliability_rating = 'reliability_rating',
-  reliability_rating_effort = 'reliability_rating_effort',
-  reliability_rating_distribution = 'reliability_rating_distribution',
-  reliability_remediation_effort = 'reliability_remediation_effort',
-  reopened_issues = 'reopened_issues',
-  security_hotspots = 'security_hotspots',
-  security_hotspots_reviewed = 'security_hotspots_reviewed',
-  security_issues = 'security_issues',
-  security_rating = 'security_rating',
-  security_rating_effort = 'security_rating_effort',
-  security_rating_distribution = 'security_rating_distribution',
-  security_remediation_effort = 'security_remediation_effort',
-  security_review_rating = 'security_review_rating',
-  security_review_rating_distribution = 'security_review_rating_distribution',
-  security_review_rating_effort = 'security_review_rating_effort',
-  skipped_tests = 'skipped_tests',
-  sonarjava_feedback = 'sonarjava_feedback',
-  sqale_debt_ratio = 'sqale_debt_ratio',
-  sqale_index = 'sqale_index',
-  sqale_rating = 'sqale_rating',
-  statements = 'statements',
-  team_at_sonarsource = 'team_at_sonarsource',
-  team_size = 'team_size',
-  test_errors = 'test_errors',
-  test_execution_time = 'test_execution_time',
-  test_failures = 'test_failures',
-  test_success_density = 'test_success_density',
-  tests = 'tests',
-  uncovered_conditions = 'uncovered_conditions',
-  uncovered_lines = 'uncovered_lines',
-  violations = 'violations',
-  vulnerabilities = 'vulnerabilities',
-  accepted_issues = 'accepted_issues',
-  high_impact_accepted_issues = 'high_impact_accepted_issues',
-  wont_fix_issues = 'wont_fix_issues',
-}
-
-export enum MetricType {
-  Rating = 'RATING',
-  Percent = 'PERCENT',
-  Integer = 'INT',
-  Level = 'LEVEL',
-  ShortInteger = 'SHORT_INT',
-  ShortWorkDuration = 'SHORT_WORK_DUR',
-  Data = 'DATA',
-  Distribution = 'DISTRIB',
-}
-
-export function isMetricKey(key: string): key is MetricKey {
-  return (Object.values(MetricKey) as string[]).includes(key);
-}
index 055c4a80f8a7dcc976eb71b836ae8dfe1f7bf467..76e29b5be915deee6a44ea7b1477240255c9d3e2 100644 (file)
@@ -17,7 +17,7 @@
  * along with this program; if not, write to the Free Software Foundation,
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
-import { MetricKey } from './metrics';
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { Status } from './types';
 
 interface BaseAnalysis {
index 8a7701bec6fd53d5e1f5aba6c9fcae50363b5b47..34412f89c9f88fcef661d4a2e98e1108a0b483c2 100644 (file)
@@ -17,8 +17,8 @@
  * along with this program; if not, write to the Free Software Foundation,
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
+import { MetricKey } from '~sonar-aligned/types/metrics';
 import { BranchLike } from './branch-like';
-import { MetricKey } from './metrics';
 import { CaycStatus, MeasureEnhanced, Metric, Status } from './types';
 import { UserBase } from './users';