From 02d11b5e7ad9475aba0fac90ee4cf9e77f176a25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ra=C3=BAl=20G=C3=B3mez=20Morales?= Date: Thu, 3 Apr 2025 12:30:39 +0200 Subject: [PATCH] fix(editor): Ai 674 update runs list UI graph (no-changelog) (#14012) Co-authored-by: Oleg Ivaniv --- .../EditDefinition/sections/RunsSection.vue | 27 +- .../TestDefinition/ListRuns/MetricsChart.vue | 32 +-- .../TestDefinition/ListRuns/TestRunsTable.vue | 112 ++++---- .../composables/useMetricsChart.ts | 145 +++++----- .../TestDefinition/shared/TestTableBase.vue | 12 +- .../tests/useMetricsChart.test.ts | 101 +------ .../WorkflowExecutionsPreview.test.ts | 128 --------- .../workflow/WorkflowExecutionsPreview.vue | 256 +----------------- .../src/plugins/i18n/locales/en.json | 2 +- .../editor-ui/src/plugins/icons/custom.ts | 12 + .../editor-ui/src/plugins/icons/index.ts | 2 + .../TestDefinition/TestDefinitionEditView.vue | 29 +- 12 files changed, 193 insertions(+), 665 deletions(-) diff --git a/packages/frontend/editor-ui/src/components/TestDefinition/EditDefinition/sections/RunsSection.vue b/packages/frontend/editor-ui/src/components/TestDefinition/EditDefinition/sections/RunsSection.vue index 822b127903..fa672d1347 100644 --- a/packages/frontend/editor-ui/src/components/TestDefinition/EditDefinition/sections/RunsSection.vue +++ b/packages/frontend/editor-ui/src/components/TestDefinition/EditDefinition/sections/RunsSection.vue @@ -4,28 +4,20 @@ import MetricsChart from '@/components/TestDefinition/ListRuns/MetricsChart.vue' import TestRunsTable from '@/components/TestDefinition/ListRuns/TestRunsTable.vue'; import { useI18n } from '@/composables/useI18n'; import { VIEWS } from '@/constants'; -import type { AppliedThemeOption } from '@/Interface'; +import { convertToDisplayDate } from '@/utils/formatters/dateFormatter'; import { computed } from 'vue'; import { useRouter } from 'vue-router'; const props = defineProps<{ - runs: TestRunRecord[]; + runs: Array; testId: string; - appliedTheme: AppliedThemeOption; }>(); -const emit = defineEmits<{ - deleteRuns: [runs: TestRunRecord[]]; -}>(); const locale = useI18n(); const router = useRouter(); const selectedMetric = defineModel('selectedMetric', { required: true }); -function onDeleteRuns(toDelete: TestRunRecord[]) { - emit('deleteRuns', toDelete); -} - const metrics = computed(() => { const metricKeys = props.runs.reduce((acc, run) => { Object.keys(run.metrics ?? {}).forEach((metric) => acc.add(metric)); @@ -42,15 +34,15 @@ const metricColumns = computed(() => showHeaderTooltip: true, sortMethod: (a: TestRunRecord, b: TestRunRecord) => (a.metrics?.[metric] ?? 0) - (b.metrics?.[metric] ?? 0), - formatter: (row: TestRunRecord) => (row.metrics?.[metric] ?? 0).toFixed(2), + formatter: (row: TestRunRecord) => + row.metrics?.[metric] !== undefined ? (row.metrics?.[metric]).toFixed(2) : '', })), ); const columns = computed(() => [ { - prop: 'runNumber', + prop: 'id', label: locale.baseText('testDefinition.listRuns.runNumber'), - formatter: (row: TestRunRecord) => `${row.id}`, showOverflowTooltip: true, }, { @@ -58,6 +50,10 @@ const columns = computed(() => [ label: 'Run at', sortable: true, showOverflowTooltip: true, + formatter: (row: TestRunRecord) => { + const { date, time } = convertToDisplayDate(row.runAt); + return [date, time].join(', '); + }, sortMethod: (a: TestRunRecord, b: TestRunRecord) => new Date(a.runAt ?? a.createdAt).getTime() - new Date(b.runAt ?? b.createdAt).getTime(), }, @@ -79,7 +75,7 @@ const handleRowClick = (row: TestRunRecord) => {