Clean up relay form

This commit is contained in:
Jon Staab
2026-03-27 13:41:01 -07:00
parent 6a2f4a05fb
commit bc45017222
7 changed files with 131 additions and 192 deletions
+9 -23
View File
@@ -1,5 +1,5 @@
import { useNavigate, useParams } from "@solidjs/router"
import { Show, createSignal } from "solid-js"
import { Show } from "solid-js"
import RelayForm, { type RelayFormValues } from "@/components/RelayForm"
import { slugify } from "@/lib/slugify"
import BackLink from "@/components/BackLink"
@@ -15,26 +15,14 @@ export default function RelayEdit() {
const [relay] = useRelay(relayId)
const loading = useMinLoading(() => relay.loading)
const [error, setError] = createSignal("")
const [submitting, setSubmitting] = createSignal(false)
async function handleSubmit(values: RelayFormValues, e: Event) {
e.preventDefault()
setError("")
setSubmitting(true)
try {
await updateRelayById(relayId(), {
subdomain: slugify(values.subdomain),
info_name: values.info_name.trim(),
info_icon: values.info_icon.trim(),
info_description: values.info_description.trim(),
})
navigate(`/relays/${relayId()}`)
} catch (e) {
setError(e instanceof Error ? e.message : "Failed to update relay")
} finally {
setSubmitting(false)
}
async function handleSubmit(values: RelayFormValues) {
await updateRelayById(relayId(), {
subdomain: slugify(values.subdomain),
info_name: values.info_name.trim(),
info_icon: values.info_icon.trim(),
info_description: values.info_description.trim(),
})
navigate(`/relays/${relayId()}`)
}
return (
@@ -53,8 +41,6 @@ export default function RelayEdit() {
<RelayForm
initialValues={relay()!}
onSubmit={handleSubmit}
submitting={submitting()}
error={error()}
submitLabel="Save Changes"
submittingLabel="Saving..."
/>
+1 -8
View File
@@ -2,14 +2,7 @@ import { Show, createSignal } from "solid-js"
import { useNavigate } from "@solidjs/router"
import { slugify } from "@/lib/slugify"
import { createRelayForActiveTenant } from "@/lib/hooks"
const PLANS = [
{ id: "free", label: "Free", price: 0, members: "Up to 10", blossom: false, livekit: false },
{ id: "basic", label: "Basic", price: 10_000, members: "Up to 100", blossom: true, livekit: true },
{ id: "growth", label: "Growth", price: 50_000, members: "Unlimited", blossom: true, livekit: true },
] as const
type PlanId = (typeof PLANS)[number]["id"]
import { PLANS, type PlanId } from "@/lib/api"
export default function RelayNew() {
const navigate = useNavigate()