ConusAI vendor v0.1.0-dev.20261027+9b1131fb
ci / gate (push) Waiting to run

This commit is contained in:
ConusAI vendor v0.1.0-dev.20261027+9b1131fb
2026-10-27 18:05:17 +00:00
commit 3102273ec7
538 changed files with 80203 additions and 0 deletions
+32
View File
@@ -0,0 +1,32 @@
// SPDX-License-Identifier: LicenseRef-ConusAI-Template-1.0
// Onboarding: the first organization, which creates its default workspace and project in one
// transaction (kit-tenancy's use case), with the signed-in user as its owner. Joining an existing
// organization is not done by name (spec §3.3): it is an invitation, which has its own page.
import { redirect } from "next/navigation"
import type { ReactElement } from "react"
import { signInHref } from "../../src/server/guard"
import { pageContext } from "../../src/server/page"
import { ProcedureForm } from "../../src/ui/procedure-form"
export const dynamic = "force-dynamic"
export default async function Onboarding(): Promise<ReactElement> {
const { i18n, signedIn, path } = await pageContext()
if (!signedIn) redirect(signInHref(path))
return (
<main>
<h1>{i18n.message("app.createOrganization")}</h1>
<ProcedureForm
procedure="tenancy.org.create"
submitLabel={i18n.message("app.create")}
failedTemplate={i18n.message("app.failed")}
after="/{slug}"
fields={[
{ name: "name", label: i18n.message("app.name"), required: true },
{ name: "slug", label: i18n.message("app.slug"), required: true },
]}
/>
</main>
)
}