mirror of
https://github.com/GlueOps/autoglue.git
synced 2026-02-13 04:40:05 +01:00
@@ -1,56 +1,67 @@
|
|||||||
|
;
|
||||||
|
|
||||||
// src/pages/ClustersPage.tsx
|
// src/pages/ClustersPage.tsx
|
||||||
|
|
||||||
import { useEffect, useMemo, useState } from "react"
|
import { useEffect, useMemo, useState } from "react";
|
||||||
import { clustersApi } from "@/api/clusters"
|
import { clustersApi } from "@/api/clusters";
|
||||||
import { dnsApi } from "@/api/dns"
|
import { dnsApi } from "@/api/dns";
|
||||||
import { loadBalancersApi } from "@/api/loadbalancers"
|
import { loadBalancersApi } from "@/api/loadbalancers";
|
||||||
import { nodePoolsApi } from "@/api/node_pools"
|
import { nodePoolsApi } from "@/api/node_pools";
|
||||||
import { serversApi } from "@/api/servers"
|
import { serversApi } from "@/api/servers";
|
||||||
import type {
|
import type { DtoClusterResponse, DtoDomainResponse, DtoLoadBalancerResponse, DtoNodePoolResponse, DtoRecordSetResponse, DtoServerResponse } from "@/sdk";
|
||||||
DtoClusterResponse,
|
import { zodResolver } from "@hookform/resolvers/zod";
|
||||||
DtoDomainResponse,
|
import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query";
|
||||||
DtoLoadBalancerResponse,
|
import { AlertCircle, CheckCircle2, CircleSlash2, FileCode2, Globe2, Loader2, MapPin, Pencil, Plus, Search, Server, Wrench } from "lucide-react";
|
||||||
DtoNodePoolResponse,
|
import { useForm } from "react-hook-form";
|
||||||
DtoRecordSetResponse,
|
import { toast } from "sonner";
|
||||||
DtoServerResponse,
|
import { z } from "zod";
|
||||||
} from "@/sdk"
|
|
||||||
import { zodResolver } from "@hookform/resolvers/zod"
|
|
||||||
import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query"
|
|
||||||
import {
|
import { truncateMiddle } from "@/lib/utils";
|
||||||
AlertCircle,
|
import { Badge } from "@/components/ui/badge.tsx";
|
||||||
CheckCircle2,
|
import { Button } from "@/components/ui/button.tsx";
|
||||||
CircleSlash2,
|
import { Dialog, DialogContent, DialogFooter, DialogHeader, DialogTitle, DialogTrigger } from "@/components/ui/dialog.tsx";
|
||||||
FileCode2,
|
import { Form, FormControl, FormField, FormItem, FormLabel, FormMessage } from "@/components/ui/form.tsx";
|
||||||
Globe2,
|
import { Input } from "@/components/ui/input.tsx";
|
||||||
Loader2,
|
import { Label } from "@/components/ui/label.tsx";
|
||||||
MapPin,
|
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@/components/ui/select.tsx";
|
||||||
Pencil,
|
import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from "@/components/ui/table.tsx";
|
||||||
Plus,
|
import { Textarea } from "@/components/ui/textarea.tsx";
|
||||||
Search,
|
|
||||||
Server,
|
|
||||||
Wrench,
|
|
||||||
} from "lucide-react"
|
|
||||||
import { useForm } from "react-hook-form"
|
|
||||||
import { toast } from "sonner"
|
;
|
||||||
import { z } from "zod"
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
import { truncateMiddle } from "@/lib/utils"
|
|
||||||
import { Badge } from "@/components/ui/badge.tsx"
|
|
||||||
import { Button } from "@/components/ui/button.tsx"
|
|
||||||
import {
|
|
||||||
Dialog,
|
|
||||||
DialogContent,
|
|
||||||
DialogFooter,
|
|
||||||
DialogHeader,
|
|
||||||
DialogTitle,
|
|
||||||
DialogTrigger,
|
|
||||||
} from "@/components/ui/dialog.tsx"
|
|
||||||
import { Form, FormControl, FormField, FormItem, FormLabel, FormMessage, } from "@/components/ui/form.tsx"
|
|
||||||
import { Input } from "@/components/ui/input.tsx"
|
|
||||||
import { Label } from "@/components/ui/label.tsx"
|
|
||||||
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from "@/components/ui/select.tsx"
|
|
||||||
import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow, } from "@/components/ui/table.tsx"
|
|
||||||
import { Textarea } from "@/components/ui/textarea.tsx"
|
|
||||||
|
|
||||||
// --- Schemas ---
|
// --- Schemas ---
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user