diff --git a/apps/studio/components/interfaces/App/FeaturePreview/FeaturePreviewModal.tsx b/apps/studio/components/interfaces/App/FeaturePreview/FeaturePreviewModal.tsx index da6b33e3419..01c76d67997 100644 --- a/apps/studio/components/interfaces/App/FeaturePreview/FeaturePreviewModal.tsx +++ b/apps/studio/components/interfaces/App/FeaturePreview/FeaturePreviewModal.tsx @@ -3,11 +3,12 @@ import Link from 'next/link' import { useEffect, useState } from 'react' import { useSendEventMutation } from 'data/telemetry/send-event-mutation' +import { useFlag } from 'hooks/ui/useFlag' +import { LOCAL_STORAGE_KEYS } from 'lib/constants' +import { TELEMETRY_EVENTS } from 'lib/constants/telemetry' import { useAppStateSnapshot } from 'state/app-state' import { Badge, Button, Modal, ScrollArea, cn } from 'ui' import { FEATURE_PREVIEWS, useFeaturePreviewContext } from './FeaturePreviewContext' -import { useFlag } from 'hooks/ui/useFlag' -import { LOCAL_STORAGE_KEYS, TELEMETRY_EVENTS } from 'lib/constants' const FeaturePreviewModal = () => { const snap = useAppStateSnapshot() diff --git a/apps/studio/components/ui/AIAssistantPanel/AIAssistant.tsx b/apps/studio/components/ui/AIAssistantPanel/AIAssistant.tsx index d39b53df355..c54d3b7c522 100644 --- a/apps/studio/components/ui/AIAssistantPanel/AIAssistant.tsx +++ b/apps/studio/components/ui/AIAssistantPanel/AIAssistant.tsx @@ -22,13 +22,8 @@ import { useOrgOptedIntoAi } from 'hooks/misc/useOrgOptedIntoAi' import { useSelectedOrganization } from 'hooks/misc/useSelectedOrganization' import { useSelectedProject } from 'hooks/misc/useSelectedProject' import { useFlag } from 'hooks/ui/useFlag' -import { - BASE_PATH, - IS_PLATFORM, - OPT_IN_TAGS, - TELEMETRY_EVENTS, - TELEMETRY_VALUES, -} from 'lib/constants' +import { BASE_PATH, IS_PLATFORM, OPT_IN_TAGS } from 'lib/constants' +import { TELEMETRY_EVENTS, TELEMETRY_VALUES } from 'lib/constants/telemetry' import uuidv4 from 'lib/uuid' import { useAppStateSnapshot } from 'state/app-state' import { diff --git a/apps/studio/components/ui/AIAssistantPanel/Message.tsx b/apps/studio/components/ui/AIAssistantPanel/Message.tsx index 21cdf3f085d..d88b7ee0749 100644 --- a/apps/studio/components/ui/AIAssistantPanel/Message.tsx +++ b/apps/studio/components/ui/AIAssistantPanel/Message.tsx @@ -66,7 +66,6 @@ export const Message = function Message({ ) : ( () const [showWarning, setShowWarning] = useState(false) + const { mutate: sendEvent } = useSendEventMutation() + const { mutate: executeSql, isLoading: isExecuting } = useExecuteSqlMutation({ onSuccess: async (res) => { // [Joshen] Only do contextual invalidation within a project context @@ -193,6 +192,10 @@ export const SqlCard = ({ return { result: [] } }, }) + sendEvent({ + action: TELEMETRY_EVENTS.AI_ASSISTANT_V2, + value: TELEMETRY_VALUES.RAN_SQL_SUGGESTION, + }) }} > Run @@ -221,7 +224,13 @@ export const SqlCard = ({ size="tiny" className="w-7 h-7" icon={} - onClick={handleEditInSQLEditor} + onClick={() => { + handleEditInSQLEditor() + sendEvent({ + action: TELEMETRY_EVENTS.AI_ASSISTANT_V2, + value: TELEMETRY_VALUES.EDIT_IN_SQL_EDITOR, + }) + }} tooltip={{ content: { side: 'bottom', text: 'Edit in SQL Editor' } }} /> ) : ( @@ -285,13 +294,13 @@ export const SqlCard = ({ {showCode && ( code]:m-0 [&>code>span]:flex [&>code>span]:flex-wrap [&>code]:block [&>code>span]:text-foreground' )} - hideLineNumbers /> )} @@ -353,6 +362,8 @@ export const SqlCard = ({ <>

{error.error}