nextui/apps/docs/utils/get-sponsors.ts
WK 0d217e466f
refactor: optimization (#5362)
* chore(deps): bump RA versions

* chore(deps): bump RA versions

* chore(deps): bump RA versions

* chore: changeset

* chore(deps): remove unnecessary dependencies

* fix(calendar): typing issue

* refactor(system): remove unused SupportedCalendars

* refactor(system): move I18nProviderProps to type

* refactor: use `spectrumCalendarProps<DateValue>["createCalendar"]`

* feat: add consistent-type-imports

* fix: eslint

* chore: add changeset

* refactor: remove unused deps
2025-06-09 14:17:44 +08:00

29 lines
762 B
TypeScript

import type {Sponsor} from "@/libs/docs/sponsors";
import {uniqBy} from "@heroui/shared-utils";
import fetch from "node-fetch";
import {__PROD__} from "./env";
import {mockData} from "@/libs/docs/sponsors";
export const getSponsors = async () => {
try {
// if (!__PROD__) {
// return mockData;
// }
const res = await fetch("https://opencollective.com/heroui/members/all.json");
const data = (await res.json()) as Sponsor[];
// filter out repeated sponsors
const sponsors = uniqBy<Sponsor>(data, "profile").filter(
(sponsor) =>
sponsor.role !== "ADMIN" && sponsor.role !== "HOST" && sponsor.name !== "EthicalAds",
);
return sponsors as Sponsor[];
} catch {
return __PROD__ ? [] : mockData;
}
};