// @ts-nocheck
import { IS_PLATFORM, useParams } from 'common'
import { useTheme } from 'next-themes'
import { useMemo, useState } from 'react'
import { createMcpCopyHandler, McpConfigPanel, type McpClient } from 'ui-patterns/McpUrlBuilder'
import { ShimmeringLoader } from 'ui-patterns/ShimmeringLoader'
import type { projectKeys } from './Connect.types'
import Panel from '@/components/ui/Panel'
import { useTrack } from '@/lib/telemetry/track'
export const McpTabContent = ({ projectKeys }: { projectKeys: projectKeys }) => {
const { ref: projectRef } = useParams()
return (
{projectRef ? (
) : (
)}
)
}
const McpTabContentInnerLoading = () => {
return (
)
}
const McpTabContentInnerLoaded = ({
projectRef,
projectKeys,
}: {
projectRef: string
projectKeys: projectKeys
}) => {
const { resolvedTheme } = useTheme()
const track = useTrack()
const [selectedClient, setSelectedClient] = useState(null)
const handleCopy = useMemo(
() =>
createMcpCopyHandler({
selectedClient,
source: 'studio',
onTrack: (event) => track(event.action, event.properties, event.groups),
projectRef,
}),
[selectedClient, track, projectRef]
)
const handleInstall = () => {
if (selectedClient?.label) {
track('mcp_install_button_clicked', {
client: selectedClient.label,
source: 'studio',
})
}
}
return (
)
}