backoffice nextJs replaces admin in rust
This commit is contained in:
27
apps/backoffice/app/tokens/create/route.ts
Normal file
27
apps/backoffice/app/tokens/create/route.ts
Normal file
@@ -0,0 +1,27 @@
|
||||
import { revalidatePath } from "next/cache";
|
||||
import { NextResponse } from "next/server";
|
||||
import { apiFetch } from "../../../lib/api";
|
||||
|
||||
type CreatedToken = { token: string };
|
||||
|
||||
export async function POST(req: Request) {
|
||||
const form = await req.formData();
|
||||
const name = String(form.get("name") || "").trim();
|
||||
const scope = String(form.get("scope") || "read").trim();
|
||||
|
||||
let created = "";
|
||||
if (name) {
|
||||
const res = await apiFetch<CreatedToken>("/admin/tokens", {
|
||||
method: "POST",
|
||||
body: JSON.stringify({ name, scope })
|
||||
}).catch(() => null);
|
||||
created = res?.token || "";
|
||||
}
|
||||
|
||||
revalidatePath("/tokens");
|
||||
const url = new URL("/tokens", req.url);
|
||||
if (created) {
|
||||
url.searchParams.set("created", created);
|
||||
}
|
||||
return NextResponse.redirect(url);
|
||||
}
|
||||
Reference in New Issue
Block a user