Resolve PluginSettings circular deps better

This commit is contained in:
Nuckyz 2024-05-04 23:15:33 -03:00
parent ce18000c4e
commit 60e6fdacfa
No known key found for this signature in database
GPG key ID: 440BF8296E1C4AD9
3 changed files with 20 additions and 16 deletions

View file

@ -23,6 +23,7 @@ import DonateButton from "@components/DonateButton";
import ErrorBoundary from "@components/ErrorBoundary";
import { Flex } from "@components/Flex";
import { Heart } from "@components/Heart";
import { openContributorModal } from "@components/PluginSettings/ContributorModal";
import { Devs } from "@utils/constants";
import { Margins } from "@utils/margins";
import { isPluginDev } from "@utils/misc";
@ -37,12 +38,7 @@ const ContributorBadge: ProfileBadge = {
image: CONTRIBUTOR_BADGE,
position: BadgePosition.START,
shouldShow: ({ user }) => isPluginDev(user.id),
onClick(_, { user }) {
// circular import shenanigans
const { openContributorModal } = require("@components/PluginSettings/ContributorModal") as typeof import("@components/PluginSettings/ContributorModal");
// setImmediate is needed to run on later tick to workaround limitation in proxyLazy
setImmediate(() => openContributorModal(user));
}
onClick: (_, { user }) => openContributorModal(user)
};
let DonorBadges = {} as Record<string, Array<Record<"tooltip" | "badge", string>>>;