From 7aae3ce498c38d2e0bc67f25faf16e7766cf05c8 Mon Sep 17 00:00:00 2001 From: JohnDoe6345789 Date: Fri, 26 Dec 2025 04:53:35 +0000 Subject: [PATCH] code: nextjs,frontends,users (4 files) --- .../api/power-transfers/handlers/post-power-transfer.ts | 5 +++-- frontends/nextjs/src/components/level/levels/Level5.tsx | 3 ++- frontends/nextjs/src/lib/api/users/fetch-users.ts | 7 +++++++ .../src/lib/packages/server/uninstall-package-content.ts | 1 + 4 files changed, 13 insertions(+), 3 deletions(-) create mode 100644 frontends/nextjs/src/lib/api/users/fetch-users.ts create mode 100644 frontends/nextjs/src/lib/packages/server/uninstall-package-content.ts diff --git a/frontends/nextjs/src/app/api/power-transfers/handlers/post-power-transfer.ts b/frontends/nextjs/src/app/api/power-transfers/handlers/post-power-transfer.ts index 79a9b170c..bb68a553e 100644 --- a/frontends/nextjs/src/app/api/power-transfers/handlers/post-power-transfer.ts +++ b/frontends/nextjs/src/app/api/power-transfers/handlers/post-power-transfer.ts @@ -8,6 +8,7 @@ import { getPowerTransferRequests, updatePowerTransferRequest, } from '@/lib/db/power-transfers' +import { dbalGetUserById } from '@/lib/dbal/database-dbal/users/dbal-get-user-by-id.server' const REQUEST_EXPIRY_MS = 60 * 60 * 1000 @@ -34,12 +35,12 @@ export async function POST(request: NextRequest) { return NextResponse.json({ error: 'Cannot transfer power to the same user' }, { status: 400 }) } - const fromUser = await Database.getUserById(fromUserId) + const fromUser = await dbalGetUserById(fromUserId) if (!fromUser || fromUser.role !== 'supergod') { return NextResponse.json({ error: 'Only an active supergod can initiate transfers' }, { status: 403 }) } - const toUser = await Database.getUserById(toUserId) + const toUser = await dbalGetUserById(toUserId) if (!toUser) { return NextResponse.json({ error: 'Target user not found' }, { status: 404 }) } diff --git a/frontends/nextjs/src/components/level/levels/Level5.tsx b/frontends/nextjs/src/components/level/levels/Level5.tsx index cd22ccf38..66daecfc1 100644 --- a/frontends/nextjs/src/components/level/levels/Level5.tsx +++ b/frontends/nextjs/src/components/level/levels/Level5.tsx @@ -35,6 +35,7 @@ import { NerdModeIDE } from '../../misc/NerdModeIDE' import type { User, AppLevel, Tenant } from '@/lib/level-types' import { Database } from '@/lib/database' import { createPowerTransferRequest } from '@/lib/api/power-transfers' +import { fetchUsers } from '@/lib/api/users/fetch-users' import { useKV } from '@github/spark/hooks' export interface Level5Props { @@ -63,7 +64,7 @@ export function Level5({ user, onLogout, onNavigate, onPreview }: Level5Props) { const loadData = async () => { const [tenantsData, usersData] = await Promise.all([ Database.getTenants(), - Database.getUsers({ scope: 'all' }), + fetchUsers(), ]) setTenants(tenantsData) diff --git a/frontends/nextjs/src/lib/api/users/fetch-users.ts b/frontends/nextjs/src/lib/api/users/fetch-users.ts new file mode 100644 index 000000000..cdb39d727 --- /dev/null +++ b/frontends/nextjs/src/lib/api/users/fetch-users.ts @@ -0,0 +1,7 @@ +import type { User } from '@/lib/level-types' +import { requestJson } from '@/lib/api/request-json' + +export async function fetchUsers(): Promise { + const payload = await requestJson<{ users: User[]; source?: string }>('/api/users') + return payload.users +} diff --git a/frontends/nextjs/src/lib/packages/server/uninstall-package-content.ts b/frontends/nextjs/src/lib/packages/server/uninstall-package-content.ts new file mode 100644 index 000000000..1e35a4f37 --- /dev/null +++ b/frontends/nextjs/src/lib/packages/server/uninstall-package-content.ts @@ -0,0 +1 @@ +export { uninstallPackageContent } from './install/uninstall-package-content'