chore: cleanup

This commit is contained in:
Adam
2025-12-30 07:35:20 -06:00
parent e0e07c5d48
commit 2d18d80ac3
5 changed files with 20 additions and 33 deletions

View File

@@ -5,28 +5,13 @@ import { Dialog } from "@opencode-ai/ui/dialog"
import { List } from "@opencode-ai/ui/list"
import { TextField } from "@opencode-ai/ui/text-field"
import { Button } from "@opencode-ai/ui/button"
import { useServer } from "@/context/server"
import { normalizeServerUrl, serverDisplayName, useServer } from "@/context/server"
import { usePlatform } from "@/context/platform"
import { createOpencodeClient } from "@opencode-ai/sdk/v2/client"
import { useNavigate } from "@solidjs/router"
type ServerStatus = { healthy: boolean; version?: string }
function displayName(url: string) {
return url
.replace(/^https?:\/\//, "")
.replace(/\/+$/, "")
.split("/")[0]
}
function normalize(input: string) {
const trimmed = input.trim()
if (!trimmed) return
const withProtocol = /^https?:\/\//.test(trimmed) ? trimmed : `http://${trimmed}`
const cleaned = withProtocol.replace(/\/+$/, "")
return cleaned.replace(/^(https?:\/\/[^/]+).*/, "$1")
}
async function checkHealth(url: string, fetch?: typeof globalThis.fetch): Promise<ServerStatus> {
const sdk = createOpencodeClient({
baseUrl: url,
@@ -87,7 +72,7 @@ export function DialogSelectServer() {
async function handleSubmit(e: SubmitEvent) {
e.preventDefault()
const value = normalize(store.url)
const value = normalizeServerUrl(store.url)
if (!value) return
setStore("adding", true)
@@ -131,7 +116,7 @@ export function DialogSelectServer() {
"bg-border-weak-base": store.status[i] === undefined,
}}
/>
<span class="truncate">{displayName(i)}</span>
<span class="truncate">{serverDisplayName(i)}</span>
<span class="text-text-weak">{store.status[i]?.version}</span>
</div>
)}

View File

@@ -34,10 +34,12 @@ export function StatusBar(props: ParentProps) {
<div
classList={{
"size-1.5 rounded-full": true,
"bg-icon-success-base": server.healthy(),
"bg-icon-critical-base": !server.healthy(),
"bg-icon-success-base": server.healthy() === true,
"bg-icon-critical-base": server.healthy() === false,
"bg-border-weak-base": server.healthy() === undefined,
}}
/>
<span class="text-12-regular text-text-weak">{server.name}</span>
</Button>
</div>