"use client"; import { useState } from "react"; import { ApiRoute } from "@/utils/type"; import { Endpoint } from "./endpoint"; import { Request } from "./request"; import { Response } from "./response"; import { useRequest } from "./hooks/useRequest"; import { useMount, useUpdateEffect } from "react-use"; export const EditorMain = ({ endpoint }: { endpoint: ApiRoute }) => { const [formattedEndpoint, setFormattedEndpoint] = useState( endpoint.path ); const [formattedParameters, setFormattedParameters] = useState( endpoint?.parameters ? { ...endpoint.parameters } : undefined ); const { loading, submit, data } = useRequest( formattedEndpoint, formattedParameters ); useMount(() => { if ( endpoint?.path && endpoint?.method === "GET" && !endpoint?.path?.includes("{") && !endpoint?.path?.includes("}") ) { submit(); } }); return (
{ setFormattedParameters({ ...formattedParameters, [k]: v, }); }} >
); };