mirror of
https://github.com/johndoe6345789/metabuilder.git
synced 2026-04-25 22:34:56 +00:00
code: nextjs,frontends,users (4 files)
This commit is contained in:
@@ -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 })
|
||||
}
|
||||
|
||||
@@ -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)
|
||||
|
||||
7
frontends/nextjs/src/lib/api/users/fetch-users.ts
Normal file
7
frontends/nextjs/src/lib/api/users/fetch-users.ts
Normal file
@@ -0,0 +1,7 @@
|
||||
import type { User } from '@/lib/level-types'
|
||||
import { requestJson } from '@/lib/api/request-json'
|
||||
|
||||
export async function fetchUsers(): Promise<User[]> {
|
||||
const payload = await requestJson<{ users: User[]; source?: string }>('/api/users')
|
||||
return payload.users
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
export { uninstallPackageContent } from './install/uninstall-package-content'
|
||||
Reference in New Issue
Block a user