mirror of
https://github.com/nextui-org/nextui.git
synced 2025-12-08 19:26:11 +00:00
* 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
29 lines
762 B
TypeScript
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;
|
|
}
|
|
};
|