From 8828f13eb0158d26ad6ba058fa7375267b4feced Mon Sep 17 00:00:00 2001 From: abefernan <44572727+abefernan@users.noreply.github.com> Date: Thu, 27 Jun 2024 11:31:21 +0200 Subject: [PATCH] Remove unused hook --- hooks/useRequestJson.ts | 31 ------------------------------- 1 file changed, 31 deletions(-) delete mode 100644 hooks/useRequestJson.ts diff --git a/hooks/useRequestJson.ts b/hooks/useRequestJson.ts deleted file mode 100644 index b7c6d5a..0000000 --- a/hooks/useRequestJson.ts +++ /dev/null @@ -1,31 +0,0 @@ -import { useEffect, useState } from "react"; -import { RequestConfig, requestJson } from "../lib/request"; - -type Status = - | { readonly stage: "idle" | "loading"; readonly data?: never; readonly error?: never } - | { readonly stage: "resolved"; readonly data: unknown; readonly error?: never } - | { readonly stage: "rejected"; readonly data?: never; readonly error: string }; - -export default function useRequestJson(endpoint: string, config: RequestConfig = {}) { - const [status, setStatus] = useState({ stage: "idle" }); - const { stage, data, error } = status; - - useEffect(() => { - (async function () { - if (stage === "idle") { - setStatus({ stage: "loading" }); - } - - if (stage === "loading") { - try { - const newData = await requestJson(endpoint, config); - setStatus({ stage: "resolved", data: newData }); - } catch (e) { - setStatus({ stage: "rejected", error: e instanceof Error ? e.message : String(e) }); - } - } - })(); - }, [config, endpoint, stage]); - - return { loading: stage === "idle" || stage === "loading", data, error }; -}