diff --git a/web/src/hooks/index.ts b/web/src/hooks/index.ts index 56d07702d..44f8849e9 100644 --- a/web/src/hooks/index.ts +++ b/web/src/hooks/index.ts @@ -1,6 +1,7 @@ import { useLanguages } from "./useLanguages"; import { useLicenses } from "./useLicenses"; import { useLists } from "./useLists"; +import { useListDetails } from "./useListDetails"; import { useMaintainers } from "./useMaintainers"; import { useSearchColumnFilter } from "./useSearchColumnFilter"; import { useSoftware } from "./useSoftware"; @@ -12,6 +13,7 @@ export { useLanguages, useLicenses, useLists, + useListDetails, useMaintainers, useSearchColumnFilter, useSoftware, diff --git a/web/src/hooks/useListDetails.tsx b/web/src/hooks/useListDetails.tsx new file mode 100644 index 000000000..0993388f3 --- /dev/null +++ b/web/src/hooks/useListDetails.tsx @@ -0,0 +1,6 @@ +import { ListDetails } from "../interfaces/ListDetails"; +import { useApiData } from "./useApiData"; + +export const useListDetails = (id: number) => { + return useApiData("/api/v1/lists/" + id); +}; diff --git a/web/src/interfaces/ListDetails.ts b/web/src/interfaces/ListDetails.ts new file mode 100644 index 000000000..2208df90e --- /dev/null +++ b/web/src/interfaces/ListDetails.ts @@ -0,0 +1,26 @@ +export interface ListDetails { + id: number; + name: string; + description: string; + licenseId: number; + syntaxIds: number[]; + languageIso6391s: number[]; + tagIds: number[]; + viewUrls: unknown[]; + homeUrl: string; + onionUrl: string; + policyUrl: string; + submissionUrl: string; + issuesUrl: string; + forumUrl: string; + chatUrl: string; + emailAddress: string; + donateUrl: string; + maintainerIds: number[]; + upstreamFilterListIds: number[]; + forkFilterListIds: number[]; + includedInFilterListIds: number[]; + includesFilterListIds: number[]; + dependencyFilterListIds: number[]; + dependentFilterListIds: number[]; +}