import { useState } from 'react'; import { useParams } from 'react-router'; import { UtilityCard, CopyableValue } from '../../components/UtilityCard'; import { Button } from '../../components/ui/button'; import { Key, Info, Network, Server, Copy, AlertCircle, } from 'lucide-react'; import { useDashboardToken, useClusterVersions, useNodeIPs, useControlPlaneIP, useCopySecret, } from '../../services/api/hooks/useUtilities'; export function UtilitiesPage() { const { instanceId } = useParams<{ instanceId: string }>(); const [secretToCopy, setSecretToCopy] = useState(''); const [sourceNamespace, setSourceNamespace] = useState(''); const [destinationNamespace, setDestinationNamespace] = useState(''); const dashboardToken = useDashboardToken(instanceId || ''); const versions = useClusterVersions(instanceId || ''); const nodeIPs = useNodeIPs(instanceId || ''); const controlPlaneIP = useControlPlaneIP(instanceId || ''); const copySecret = useCopySecret(); const handleCopySecret = () => { if (secretToCopy && sourceNamespace && destinationNamespace && instanceId) { copySecret.mutate({ instanceName: instanceId, secret: secretToCopy, sourceNamespace, destinationNamespace }); } }; return (
Additional tools and utilities for cluster management