import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query"; import { Button, Field, Input, Table, TableBody, TableCell, TableHeader, TableHeaderCell, TableRow, Textarea, } from "@fluentui/react-components"; import { useState } from "react"; import { portalApi } from "../api/portalApi"; import { DataState } from "../components/DataState"; import { FormActions, FormGrid, FormSection, FormWide } from "../components/FormSection"; import { PageHeader } from "../components/PageHeader"; export function RunbooksPage() { const queryClient = useQueryClient(); const [name, setName] = useState(""); const [description, setDescription] = useState(""); const { data, error, isLoading } = useQuery({ queryKey: ["runbooks"], queryFn: ({ signal }) => portalApi.getRunbooks(signal), }); const addRunbook = useMutation({ mutationFn: portalApi.addRunbook, onSuccess: async () => { setName(""); setDescription(""); await queryClient.invalidateQueries({ queryKey: ["runbooks"] }); }, }); return ( <> { event.preventDefault(); addRunbook.mutate({ description, name }); }} > setName(data.value)} />