'use client'; import { useCallback, useState } from 'react'; import { Server } from '@/lib/schemas/server'; import { User, hasPermission } from '@/lib/schemas/user'; import { ServerCard } from './ServerCard'; import { CreateServerModal } from './CreateServerModal'; import RefreshButton from '@/components/ui/RefreshButton'; import { useSteamCMD } from '@/lib/context/SteamCMDContext'; interface ServerListWithActionsProps { servers: Server[]; user: User; } export function ServerListWithActions({ servers, user }: ServerListWithActionsProps) { const [isCreateModalOpen, setIsCreateModalOpen] = useState(false); const { isSteamCMDRunning } = useSteamCMD(); const handleOnClose = useCallback(() => setIsCreateModalOpen(false), []); const canCreateServer = hasPermission(user, 'server.create'); return ( <>

Your Servers

{canCreateServer && ( )}
{servers.map((server) => ( ))}
); }