Files
discord-decomp/modules/guilds_bar/native/GuildsBarFavorites.tsx
T
2026-11-01 12:12:55 +02:00

36 lines
2.3 KiB
TypeScript

// Metro module 14969 (f14970).
import { memo } from "react";
import FavoriteStore from "../../favorites/FavoriteStore";
import { FAVORITES } from "../../../Constants";
import transitionGuildsBarToGuildOrOpenSelectedChannel from "./utils/transitionGuildsBarToGuildOrOpenSelectedChannel";
import MobileVisualRefreshExperiment from "../../themes/experiments/MobileVisualRefreshExperiment";
import GuildsBarAnimatedItemWrapper, { useGuildsBarAnimatedWrapperStyles } from "./GuildsBarAnimatedItemWrapper";
import { useIsFavoritesGuildSelected } from "../../favorites/FavoritesHooks";
import { useStateFromStores } from "../../../_bundle/Module589";
import useFavoritesGuildUnreads from "../../favorites/hooks/useFavoritesGuildUnreads";
import useGuildsBarBottomRightBadge from "./hooks/useGuildsBarBottomRightBadge";
import { intl, t } from "../../../intl/index.native";
import { HomeDrawerFavoritesRowExpandedChildren } from "../../home_drawer/native/HomeDrawerFavoritesRow";
import { StarIcon } from "../../../design/components/Icon/native/redesign/generated/StarIcon";
import Module712 from "../../../_bundle/Module712";
const config = {
onPress: () => {
transitionGuildsBarToGuildOrOpenSelectedChannel(FAVORITES);
}
};
const r27 = memo(function GuildsBarFavorites() {
const r15 = MobileVisualRefreshExperiment("GuildsBarFavorites");
const styles = useGuildsBarAnimatedWrapperStyles();
const isFavoritesGuildSelected = useIsFavoritesGuildSelected();
const favoritesGuildUnreads = useFavoritesGuildUnreads(useStateFromStores([FavoriteStore], () => FavoriteStore.getFavoriteChannels()));
const { badge, unread } = favoritesGuildUnreads;
const guildsBarBottomRightBadge = useGuildsBarBottomRightBadge({
mentionCount: badge
});
const badge2 = guildsBarBottomRightBadge.badge;
return <GuildsBarAnimatedItemWrapper selected={isFavoritesGuildSelected} circle={r15 ? !r15 : !isFavoritesGuildSelected} unread={unread} styles={styles} cutouts={guildsBarBottomRightBadge.cutouts} overState={void 0} config={config} label={intl.string(t.wMWyci)} externalChildren={badge2} expandedChildren={<HomeDrawerFavoritesRowExpandedChildren />}>
<StarIcon color={isFavoritesGuildSelected ? Module712.colors.WHITE : Module712.colors.MOBILE_GUILDBAR_ICON_DEFAULT} />
</GuildsBarAnimatedItemWrapper>;
});
export default r27;