71 lines
3.0 KiB
TypeScript
71 lines
3.0 KiB
TypeScript
// Metro module 12614 (f12615).
|
|
import ImpersonateStore from "../impersonate/ImpersonateStore";
|
|
import GuildStore from "../../stores/GuildStore";
|
|
import { GuildFeatures } from "../../Constants";
|
|
import * as _useIsCreatorMonetizationEnabledGuild from "../creator_monetization_eligibility/useIsCreatorMonetizationEnabledGuild";
|
|
import useHasRoleSubscriptionInGuild, { computeHasRoleSubscriptionsInGuild } from "./useHasRoleSubscriptionInGuild";
|
|
import { useStateFromStores } from "../../_bundle/Module589";
|
|
import { useShouldHideGuildPurchaseEntryPoints } from "../creator_monetization_review/CreatorMonetizationRestrictionsHooks";
|
|
import { useGuildEligibleForGuildProducts } from "../guild_products/GuildProductsEligibility";
|
|
function $mk90116($env) {
|
|
return () => {
|
|
const r5 = $env.$parent;
|
|
return (0, r5[6])($env[0], [r5[4], r5[3]]);
|
|
};
|
|
}
|
|
let env8701 = {};
|
|
const computeCanEveryoneInGuildSeeRoleSubscriptions = function computeCanEveryoneInGuildSeeRoleSubscriptions(a0, r5 = [GuildStore, ImpersonateStore]) {
|
|
const [r27, r28] = r5;
|
|
const guild = r27.getGuild(a0);
|
|
if (guild == null) {
|
|
return false;
|
|
}
|
|
const isCreatorMonetizationEnabledGuild = _useIsCreatorMonetizationEnabledGuild.isCreatorMonetizationEnabledGuild(guild);
|
|
const r44 = guild.features.has(GuildFeatures.ROLE_SUBSCRIPTIONS_AVAILABLE_FOR_PURCHASE);
|
|
const r45 = isCreatorMonetizationEnabledGuild ? !r44 : !isCreatorMonetizationEnabledGuild;
|
|
return r45 ? !!r28.isViewingServerShop(a0) : !r45;
|
|
};
|
|
export function areRoleSubscriptionsVisibleInGuild(a0, a1) {
|
|
return !!computeCanEveryoneInGuildSeeRoleSubscriptions(a0) || computeHasRoleSubscriptionsInGuild(a0, a1);
|
|
}
|
|
export function useRoleSubscriptionsVisibleInGuild(a0) {
|
|
let env19925;
|
|
const r2 = env19925 = {
|
|
$parent: env8701
|
|
};
|
|
env19925[0] = a0;
|
|
const hasRoleSubscriptionInGuild = useHasRoleSubscriptionInGuild(a0);
|
|
let r18 = useStateFromStores([GuildStore, ImpersonateStore], $mk90116(r2), [a0]);
|
|
const shouldHideGuildPurchaseEntryPoints = useShouldHideGuildPurchaseEntryPoints(a0).shouldHideGuildPurchaseEntryPoints;
|
|
let r24 = !shouldHideGuildPurchaseEntryPoints;
|
|
if (!shouldHideGuildPurchaseEntryPoints) {
|
|
if (!r18) {
|
|
r18 = hasRoleSubscriptionInGuild;
|
|
}
|
|
r24 = r18;
|
|
}
|
|
return r24;
|
|
}
|
|
export function useShowRoleSubscriptionsInChannelList(a0) {
|
|
let env19926;
|
|
const r2 = env19926 = {
|
|
$parent: env8701
|
|
};
|
|
env19926[0] = a0;
|
|
const hasRoleSubscriptionInGuild = useHasRoleSubscriptionInGuild(a0);
|
|
let r19 = useStateFromStores([GuildStore, ImpersonateStore], $mk90116(r2), [a0]);
|
|
const shouldHideGuildPurchaseEntryPoints = useShouldHideGuildPurchaseEntryPoints(a0).shouldHideGuildPurchaseEntryPoints;
|
|
let r25 = !shouldHideGuildPurchaseEntryPoints;
|
|
if (!shouldHideGuildPurchaseEntryPoints) {
|
|
if (!r19) {
|
|
r19 = hasRoleSubscriptionInGuild;
|
|
}
|
|
r25 = r19;
|
|
}
|
|
const guildEligibleForGuildProducts = useGuildEligibleForGuildProducts(a0);
|
|
if (r25) {
|
|
r25 = guildEligibleForGuildProducts ? true : !guildEligibleForGuildProducts;
|
|
}
|
|
return r25;
|
|
}
|