Compare commits

...
Author SHA1 Message Date
Andrei Eternal a47fdb6e31 remove webviewmessage 2025-06-06 15:22:07 -07:00
Andrei Eternal 3d305f5a51 lint 2025-06-06 15:08:42 -07:00
Andrei Eternal b7c252a6df refresh mcp marketplace 2025-06-06 14:29:26 -07:00
3 changed files with 17 additions and 7 deletions
-4
View File
@@ -216,10 +216,6 @@ export class Controller {
await this.fetchUserCreditsData()
break
}
case "fetchMcpMarketplace": {
await this.fetchMcpMarketplace(message.bool)
break
}
// case "openMcpMarketplaceServerDetails": {
// if (message.text) {
// const response = await fetch(`https://api.cline.bot/v1/mcp/marketplace/item?mcpId=${message.mcpId}`)
-1
View File
@@ -13,7 +13,6 @@ export interface WebviewMessage {
| "reportBug"
| "requestVsCodeLmModels"
| "authStateChanged"
| "fetchMcpMarketplace"
| "searchCommits"
| "fetchLatestMcpServersFromHub"
| "telemetrySetting"
@@ -10,9 +10,10 @@ import {
} from "@vscode/webview-ui-toolkit/react"
import { McpMarketplaceItem } from "@shared/mcp"
import { useExtensionState } from "@/context/ExtensionStateContext"
import { vscode } from "@/utils/vscode"
import McpMarketplaceCard from "./McpMarketplaceCard"
import McpSubmitCard from "./McpSubmitCard"
import { McpServiceClient } from "@/services/grpc-client"
import { EmptyRequest } from "@shared/proto/common"
const McpMarketplaceView = () => {
const { mcpServers, mcpMarketplaceCatalog } = useExtensionState()
const [isLoading, setIsLoading] = useState(true)
@@ -92,7 +93,21 @@ const McpMarketplaceView = () => {
setIsLoading(true)
}
setError(null)
vscode.postMessage({ type: "fetchMcpMarketplace", bool: forceRefresh })
McpServiceClient.refreshMcpMarketplace(EmptyRequest.create({}))
.then((catalog) => {
// The catalog will be automatically updated via the subscription system
// so we just need to handle the loading states here
setIsLoading(false)
setIsRefreshing(false)
setError(null)
})
.catch((error) => {
console.error("Failed to refresh MCP marketplace:", error)
setError(error instanceof Error ? error.message : "Failed to refresh MCP marketplace")
setIsLoading(false)
setIsRefreshing(false)
})
}
if (isLoading || isRefreshing) {