From 4c3aa68b362e26b643140f70b1d3002a1f21c243 Mon Sep 17 00:00:00 2001 From: Nate Kelley Date: Mon, 22 Sep 2025 21:04:59 -0600 Subject: [PATCH] Update version number for chat responses --- .../MetricVersionHistoryModal.tsx | 18 +++---------- .../useMetricRunSQL/useMetricRunSQL.ts | 1 - .../ChatResponseMessage_File.tsx | 1 + .../src/lib/routes/createSimpleAssetRoute.ts | 27 +++++++++---------- 4 files changed, 16 insertions(+), 31 deletions(-) diff --git a/apps/web/src/components/features/versionHistory/MetricVersionHistoryModal.tsx b/apps/web/src/components/features/versionHistory/MetricVersionHistoryModal.tsx index 16f64f7e9..eb3523833 100644 --- a/apps/web/src/components/features/versionHistory/MetricVersionHistoryModal.tsx +++ b/apps/web/src/components/features/versionHistory/MetricVersionHistoryModal.tsx @@ -1,17 +1,9 @@ -import React, { useCallback, useLayoutEffect, useMemo, useRef, useState } from 'react'; +import React, { useCallback } from 'react'; import type { BusterMetric } from '@/api/asset_interfaces/metric'; import { useGetMetric, useSaveMetric } from '@/api/buster_rest/metrics'; -import { useMemoizedFn } from '@/hooks/useMemoizedFn'; -import { Button } from '../../ui/buttons'; -import { CircleInfo } from '../../ui/icons'; import { MetricViewChart } from '../metrics/MetricViewChart'; -import { createVersionHistoryItems } from './createVersionHelpers'; import { useVersionHistoryModalCommon } from './useVersionHistoryModalCommon'; -import { - type VersionHistoryItem, - VersionHistoryModal, - type VersionHistoryModalProps, -} from './VersionHistoryModal'; +import { VersionHistoryModal, type VersionHistoryModalProps } from './VersionHistoryModal'; type MetricVersionHistoryModalProps = Pick< VersionHistoryModalProps, @@ -71,11 +63,7 @@ export const MetricVersionHistoryModal = React.memo( learnMoreButton={learnMoreButton} > {versionNumber && ( - + )} ); diff --git a/apps/web/src/controllers/MetricController/MetricViewSQL/useMetricRunSQL/useMetricRunSQL.ts b/apps/web/src/controllers/MetricController/MetricViewSQL/useMetricRunSQL/useMetricRunSQL.ts index 4b8e639ac..fa9c27cfb 100644 --- a/apps/web/src/controllers/MetricController/MetricViewSQL/useMetricRunSQL/useMetricRunSQL.ts +++ b/apps/web/src/controllers/MetricController/MetricViewSQL/useMetricRunSQL/useMetricRunSQL.ts @@ -7,7 +7,6 @@ import { useGetMetricDataMemoized, useGetMetricMemoized, } from '@/api/buster_rest/metrics/metricQueryHelpers'; -import { useGetLatestMetricVersionMemoized } from '@/api/buster_rest/metrics/metricVersionNumber'; import { useUpdateMetric } from '@/api/buster_rest/metrics/queryRequests'; import { useRunSQL as useRunSQLQuery } from '@/api/buster_rest/sql'; import { metricsQueryKeys } from '@/api/query_keys/metric'; diff --git a/apps/web/src/layouts/ChatLayout/ChatContent/ChatResponseMessages/ChatResponseMessage_File/ChatResponseMessage_File.tsx b/apps/web/src/layouts/ChatLayout/ChatContent/ChatResponseMessages/ChatResponseMessage_File/ChatResponseMessage_File.tsx index eb1650e51..00395aa00 100644 --- a/apps/web/src/layouts/ChatLayout/ChatContent/ChatResponseMessages/ChatResponseMessage_File/ChatResponseMessage_File.tsx +++ b/apps/web/src/layouts/ChatLayout/ChatContent/ChatResponseMessages/ChatResponseMessage_File/ChatResponseMessage_File.tsx @@ -26,6 +26,7 @@ export const ChatResponseMessage_File: React.FC = Reac asset_type: file_type, id: responseMessage.id, chatId, + versionNumber: responseMessage.version_number, }) as unknown as ILinkProps; const SelectedComponent = useMemo(() => { diff --git a/apps/web/src/lib/routes/createSimpleAssetRoute.ts b/apps/web/src/lib/routes/createSimpleAssetRoute.ts index eac97104d..b9ff9349e 100644 --- a/apps/web/src/lib/routes/createSimpleAssetRoute.ts +++ b/apps/web/src/lib/routes/createSimpleAssetRoute.ts @@ -59,15 +59,9 @@ export const createChatAssetRoute = (asset: { asset_type: AssetType | FileType | undefined; id: string | undefined; chatId: string; + versionNumber?: number; }) => { - if (!asset.asset_type || !asset.id) { - return defineLink({ - to: '/app/chats/$chatId', - params: { chatId: asset.chatId }, - }); - } - - if (asset.asset_type === 'chat') { + if (asset.asset_type === 'chat' || !asset.asset_type || !asset.id) { return defineLink({ to: '/app/chats/$chatId', params: { chatId: asset.chatId }, @@ -78,6 +72,7 @@ export const createChatAssetRoute = (asset: { return defineLink({ to: '/app/chats/$chatId/metrics/$metricId', params: { metricId: asset.id || '', chatId: asset.chatId }, + search: { metric_version_number: asset.versionNumber }, }); } @@ -85,13 +80,7 @@ export const createChatAssetRoute = (asset: { return defineLink({ to: '/app/chats/$chatId/dashboards/$dashboardId', params: { dashboardId: asset.id || '', chatId: asset.chatId }, - }); - } - - if (asset.asset_type === 'collection') { - return defineLink({ - to: '/app/collections/$collectionId', - params: { collectionId: asset.id || '' }, + search: { dashboard_version_number: asset.versionNumber }, }); } @@ -99,6 +88,7 @@ export const createChatAssetRoute = (asset: { return defineLink({ to: '/app/chats/$chatId/reports/$reportId', params: { reportId: asset.id || '', chatId: asset.chatId }, + search: { report_version_number: asset.versionNumber }, }); } @@ -109,6 +99,13 @@ export const createChatAssetRoute = (asset: { }); } + if (asset.asset_type === 'collection') { + return defineLink({ + to: '/app/collections/$collectionId', + params: { collectionId: asset.id || '' }, + }); + } + const _exhaustiveCheck: never = asset.asset_type; return defineLink({