feat: add full-stack API persistence and RBAC

This commit is contained in:
2026-07-01 06:28:18 -07:00
parent aafd9caaac
commit 914f74c5cc
18 changed files with 1148 additions and 0 deletions

View File

@@ -0,0 +1,20 @@
import { jsonSuccess } from "@/modules/core/server/api";
import { requirePermission, toPublicAccount } from "@/modules/core/server/auth";
import { readData } from "@/modules/core/server/store";
export async function GET(): Promise<Response> {
const auth = await requirePermission("account:read", {
action: "account.list",
targetType: "account",
});
if (!auth.success) {
return auth.response;
}
const data = await readData();
return jsonSuccess("账号列表已加载", {
accounts: data.accounts.map((account) => toPublicAccount(account)),
});
}

View File

@@ -0,0 +1,17 @@
import { jsonSuccess } from "@/modules/core/server/api";
import { requirePermission } from "@/modules/core/server/auth";
import { ROLE_DEFINITIONS } from "@/modules/core/server/permissions";
export async function GET(): Promise<Response> {
const auth = await requirePermission("account:read", {
action: "role.list",
targetType: "role",
});
if (!auth.success) {
return auth.response;
}
return jsonSuccess("角色列表已加载", { roles: ROLE_DEFINITIONS });
}