import { redirect } from "next/navigation"

import { CreateDeliveryServerPage } from "@/components/settings/delivery-servers/create/create-delivery-server-page"
import { resolveDeliveryServerType } from "@/components/settings/delivery-servers/data/delivery-server-types"

type CreateDeliveryServerRouteProps = {
  params: Promise<{ type: string }>
}

export default async function CreateDeliveryServerRoute({
  params,
}: CreateDeliveryServerRouteProps) {
  const { type } = await params
  const resolved = resolveDeliveryServerType(type)

  if (!resolved) {
    redirect("/dashboard/settings/delivery-servers")
  }

  if (resolved !== type) {
    redirect(`/dashboard/settings/delivery-servers/create/${resolved}`)
  }

  return <CreateDeliveryServerPage serverType={resolved} />
}
