@@ -8,7 +8,7 @@ import { ResizablePanel, ResizablePanelGroup } from "@/components/ui/resizable";
88import { Toggle } from "@/components/ui/toggle" ;
99import { Tooltip , TooltipContent , TooltipTrigger } from "@/components/ui/tooltip" ;
1010import { useDomain } from "@/hooks/useDomain" ;
11- import { unwrapServiceError } from "@/lib/utils" ;
11+ import { measure , unwrapServiceError } from "@/lib/utils" ;
1212import { useQuery } from "@tanstack/react-query" ;
1313import clsx from "clsx" ;
1414import { GlobeIcon , Loader2 } from "lucide-react" ;
@@ -17,6 +17,7 @@ import { VscSymbolMisc } from "react-icons/vsc";
1717import { ReferenceList } from "./referenceList" ;
1818import { KeyboardShortcutHint } from "@/app/components/keyboardShortcutHint" ;
1919import { useHotkeys } from "react-hotkeys-hook" ;
20+ import useCaptureEvent from "@/hooks/useCaptureEvent" ;
2021
2122interface ExploreMenuProps {
2223 selectedSymbolInfo : {
@@ -30,8 +31,8 @@ interface ExploreMenuProps {
3031export const ExploreMenu = ( {
3132 selectedSymbolInfo,
3233} : ExploreMenuProps ) => {
33-
3434 const domain = useDomain ( ) ;
35+ const captureEvent = useCaptureEvent ( ) ;
3536 const {
3637 state : { activeExploreMenuTab } ,
3738 updateBrowseState,
@@ -46,14 +47,23 @@ export const ExploreMenu = ({
4647 isLoading : isReferencesResponseLoading ,
4748 } = useQuery ( {
4849 queryKey : [ "references" , selectedSymbolInfo . symbolName , selectedSymbolInfo . repoName , selectedSymbolInfo . revisionName , selectedSymbolInfo . language , domain , isGlobalSearchEnabled ] ,
49- queryFn : ( ) => unwrapServiceError (
50- findSearchBasedSymbolReferences ( {
51- symbolName : selectedSymbolInfo . symbolName ,
52- language : selectedSymbolInfo . language ,
53- revisionName : selectedSymbolInfo . revisionName ,
54- repoName : isGlobalSearchEnabled ? undefined : selectedSymbolInfo . repoName
50+ queryFn : async ( ) => {
51+ const response = await measure ( ( ) => unwrapServiceError (
52+ findSearchBasedSymbolReferences ( {
53+ symbolName : selectedSymbolInfo . symbolName ,
54+ language : selectedSymbolInfo . language ,
55+ revisionName : selectedSymbolInfo . revisionName ,
56+ repoName : isGlobalSearchEnabled ? undefined : selectedSymbolInfo . repoName
57+ } )
58+ ) , 'findSearchBasedSymbolReferences' , false ) ;
59+
60+ captureEvent ( 'wa_explore_menu_references_loaded' , {
61+ durationMs : response . durationMs ,
62+ isGlobalSearchEnabled,
5563 } )
56- ) ,
64+
65+ return response . data ;
66+ }
5767 } ) ;
5868
5969 const {
@@ -63,14 +73,23 @@ export const ExploreMenu = ({
6373 isLoading : isDefinitionsResponseLoading ,
6474 } = useQuery ( {
6575 queryKey : [ "definitions" , selectedSymbolInfo . symbolName , selectedSymbolInfo . repoName , selectedSymbolInfo . revisionName , selectedSymbolInfo . language , domain , isGlobalSearchEnabled ] ,
66- queryFn : ( ) => unwrapServiceError (
67- findSearchBasedSymbolDefinitions ( {
68- symbolName : selectedSymbolInfo . symbolName ,
69- language : selectedSymbolInfo . language ,
70- revisionName : selectedSymbolInfo . revisionName ,
71- repoName : isGlobalSearchEnabled ? undefined : selectedSymbolInfo . repoName
76+ queryFn : async ( ) => {
77+ const response = await measure ( ( ) => unwrapServiceError (
78+ findSearchBasedSymbolDefinitions ( {
79+ symbolName : selectedSymbolInfo . symbolName ,
80+ language : selectedSymbolInfo . language ,
81+ revisionName : selectedSymbolInfo . revisionName ,
82+ repoName : isGlobalSearchEnabled ? undefined : selectedSymbolInfo . repoName
83+ } )
84+ ) , 'findSearchBasedSymbolDefinitions' , false ) ;
85+
86+ captureEvent ( 'wa_explore_menu_definitions_loaded' , {
87+ durationMs : response . durationMs ,
88+ isGlobalSearchEnabled,
7289 } )
73- ) ,
90+
91+ return response . data ;
92+ }
7493 } ) ;
7594
7695 useHotkeys ( 'shift+a' , ( ) => {
0 commit comments