Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit cacd443

Browse files
committed
refactor(frontend): simplify server installation routing logic
1 parent e4d389f commit cacd443

File tree

2 files changed

+25
-45
lines changed

2 files changed

+25
-45
lines changed

services/frontend/src/components/mcp-server/wizard/McpServerDetailsSheet.vue

Lines changed: 24 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@ import {
88
SheetTitle,
99
} from '@/components/ui/sheet'
1010
import { Badge } from '@/components/ui/badge'
11-
import { Globe, Github, Package, Code, User, Layers, Shield } from 'lucide-vue-next'
11+
import { Globe, Github, Code, User, Layers } from 'lucide-vue-next'
12+
import McpServerInfoSpecifications from '@/components/mcp-server/view/McpServerInfoSpecifications.vue'
1213
import type { McpServer } from '@/views/admin/mcp-server-catalog/types'
1314
1415
interface Props {
@@ -124,43 +125,28 @@ const open = defineModel<boolean>('open', { required: true })
124125
</div>
125126

126127
<!-- Specifications Section -->
127-
<div class="space-y-4 pt-4 border-t border-gray-200">
128-
<h3 class="text-sm font-semibold text-gray-900">Specifications</h3>
129-
130-
<!-- Requires OAuth -->
131-
<div v-if="server.requires_oauth" class="space-y-1">
132-
<dt class="text-xs font-medium text-gray-500 flex items-center gap-1">
133-
<Shield class="h-3 w-3" />
134-
Authentication
135-
</dt>
136-
<dd class="text-sm">
137-
<Badge variant="default" class="text-xs">
138-
Requires OAuth
139-
</Badge>
140-
</dd>
141-
</div>
142-
143-
<!-- Packages (if runtime !== 'http') -->
144-
<div v-if="server.runtime !== 'http' && server.packages" class="space-y-1">
145-
<dt class="text-xs font-medium text-gray-500 flex items-center gap-1">
146-
<Package class="h-3 w-3" />
147-
Packages
148-
</dt>
149-
<dd class="text-sm">
150-
<pre class="bg-gray-50 border border-gray-200 rounded p-3 text-xs overflow-x-auto">{{ JSON.stringify(server.packages, null, 2) }}</pre>
151-
</dd>
152-
</div>
153-
154-
<!-- Remotes (if runtime === 'http') -->
155-
<div v-if="server.runtime === 'http' && server.remotes" class="space-y-1">
156-
<dt class="text-xs font-medium text-gray-500 flex items-center gap-1">
157-
<Globe class="h-3 w-3" />
158-
Remotes
159-
</dt>
160-
<dd class="text-sm">
161-
<pre class="bg-gray-50 border border-gray-200 rounded p-3 text-xs overflow-x-auto">{{ JSON.stringify(server.remotes, null, 2) }}</pre>
162-
</dd>
163-
</div>
128+
<div v-if="server.requires_oauth || (server.runtime !== 'http' && server.packages) || (server.runtime === 'http' && server.remotes)" class="pt-4 border-t border-gray-200">
129+
<McpServerInfoSpecifications
130+
:requires-oauth="server.requires_oauth"
131+
:runtime="server.runtime"
132+
:packages="server.packages"
133+
:remotes="server.remotes"
134+
135+
:template-args="server.template_args"
136+
:template-env="server.template_env"
137+
:template-headers="server.template_headers"
138+
:template-url-query-params="server.template_url_query_params"
139+
140+
:team-args-schema="server.team_args_schema"
141+
:team-env-schema="server.team_env_schema"
142+
:team-headers-schema="server.team_headers_schema"
143+
:team-url-query-params-schema="server.team_url_query_params_schema"
144+
145+
:user-args-schema="server.user_args_schema"
146+
:user-env-schema="server.user_env_schema"
147+
:user-headers-schema="server.user_headers_schema"
148+
:user-url-query-params-schema="server.user_url_query_params_schema"
149+
/>
164150
</div>
165151
</div>
166152

services/frontend/src/views/mcp-server/view/[id].vue

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -65,13 +65,7 @@ onMounted(async () => {
6565
})
6666
6767
const installServer = () => {
68-
router.push({
69-
path: '/mcp-server/install',
70-
query: {
71-
serverId: serverId,
72-
step: '2'
73-
}
74-
})
68+
router.push(`/mcp-server/install/${serverId}`)
7569
}
7670
</script>
7771

0 commit comments

Comments
 (0)