// Metro module 15145 (f15146). import { useMemo } from "react"; import AccessibilityStore from "../../../../a11y/AccessibilityStore"; import GuildStore from "../../../../../stores/GuildStore"; import { GUILD_TAG_BADGE_PACKS_WAVE_ONE_SKU_ID_SET, GUILD_TAG_BADGE_PACKS_WAVE_TWO_SKU_ID_SET, GuildPowerupType } from "../../constants/GuildPowerupsConstants"; import { AnalyticsPages, AnalyticsSections } from "../../../../../Constants"; import { ContentDismissActionType } from "../../../../dismissible_content/DismissibleContentConstants"; import { ThemeTypes } from "../../../../../_bundle/Module505"; import { createStyles } from "../../../../../design/components/Styles/native/createStyles"; import Module712 from "../../../../../_bundle/Module712"; import { useStateFromStores } from "../../../../../_bundle/Module589"; import useTheme from "../../../../../hooks/useTheme"; import useGuildPowerupsBoostCount from "../../hooks/useGuildPowerupsBoostCount"; import useHasAllocateBoostPermission from "../../hooks/useHasAllocateBoostPermission"; import { GuildPowerupNotificationPopoutType } from "../../constants/GuildPowerupsNotification"; import useGuildPowerupsBoostAction from "./useGuildPowerupsBoostAction"; import openGuildPowerupsModal from "../utils/openGuildPowerupsModal"; import GuildPowerupsBoostGem from "../GuildPowerupsBoostGem"; import { intl, t } from "../../../../../intl/index.native"; import GuildPowerups_messages from "../../GuildPowerups.messages"; import GuildPowerupsImage from "../GuildPowerupsImage"; import Module15147 from "../../../../../_bundle/Module15147"; import { getGuildPowerupBannerImage } from "../../hooks/useGetGuildPowerupBannerImage"; import { GUILD_POWERUP_TAG_SKU_ID, GUILD_POWERUP_GUILD_THEME_SKU_ID, VANITY_URL_POWERUP_SKU_ID, GUILD_POWERUP_MAX_FILE_SIZE_250_MB_SKU_ID } from "../../../../../_bundle/Module4080"; import Module15143 from "../../../../../_bundle/Module15143"; import Module15148 from "../../../../../_bundle/Module15148"; import Module15149 from "../../../../../_bundle/Module15149"; import Module11642 from "../../../../../_bundle/Module11642"; import Module15150 from "../../../../../_bundle/Module15150"; import { useCoachmark } from "../../../../../design/components/Coachmark/native/useCoachmark.native"; const useStyles = createStyles((a0) => ({ coachmarkImage: { height: 120, width: 260 - 2 * Module712.space.PX_16, borderRadius: Module712.radii.md }, coachmarkCover: { resizeMode: "cover" }, boostGemBackground: { width: 50, height: 50, backgroundColor: a0 === ThemeTypes.LIGHT ? "#0000001A" : "#0000003D" } })); export default function useGuildPowerupsCoachmark(a0, a1, a2) { let styles, stateFromStores2, c21707_5, boostCount, c21707_7; const guildId = a1; const stateFromStores = useStateFromStores([GuildStore], () => GuildStore.getGuild(guildId)?.name, [a1]); styles = useStyles(useTheme()); stateFromStores2 = useStateFromStores([AccessibilityStore], () => AccessibilityStore.useReducedMotion); const available = useGuildPowerupsBoostCount(a1).available; const hasAllocateBoostPermission = useHasAllocateBoostPermission(a1); c21707_5 = hasAllocateBoostPermission; const r18 = a2?.type === GuildPowerupNotificationPopoutType.BOOST_TO_UNLOCK ? a2.powerup : void 0; boostCount = r18 != null ? r18.cost - available : 0; const guildPowerupsBoostAction = useGuildPowerupsBoostAction(a1, r18, boostCount, "boost_to_unlock_coachmark", { page: AnalyticsPages.GUILD_CHANNEL, section: AnalyticsSections.GUILD_HEADER }); c21707_7 = guildPowerupsBoostAction; useCoachmark(a0, useMemo(() => { const r5 = { title: "", description: "", position: "bottom", visible: false, onDismiss: () => {} }; if (a2 == null) { return r5; } const handleButtonPress = function handleButtonPress() { if (a2 != null) { a2.markAsDismissed(ContentDismissActionType.TAKE_ACTION); openGuildPowerupsModal({ guildId }); } }; const handleDismiss = function handleDismiss() { if (a2 != null) { a2.markAsDismissed(ContentDismissActionType.USER_DISMISS); } }; const type = a2.type; if (GuildPowerupNotificationPopoutType.LEVEL_REACHED === type) { return { ...r5, visible: true, renderImgComponent: () => , title: intl.formatToPlainString(GuildPowerups_messages["Zg/m9K"], { perkName: a2.powerup.title }), description: intl.formatToPlainString(GuildPowerups_messages["1EGXSK"], { perkName: a2.powerup.title }), buttonLabel: intl.string(t.RzWDqY), buttonVariant: "primary", onButtonPress: handleButtonPress, onDismiss: handleDismiss }; } if (GuildPowerupNotificationPopoutType.PERKS_AVAILABLE === type) { return { ...r5, visible: true, renderImgComponent: () => , title: intl.string(GuildPowerups_messages.QpQBPQ), description: intl.string(GuildPowerups_messages["6hn0xF"]), buttonLabel: intl.string(t.RzWDqY), buttonVariant: "primary", onButtonPress: handleButtonPress, onDismiss: handleDismiss }; } let powerups, guildPowerupBannerImage, c27952_2, powerup; if (GuildPowerupNotificationPopoutType.PERKS_PURCHASABLE === type) { powerups = a2.powerups; if (powerups.length === 0) { return r5; } const description = powerups.length >= 3 ? intl.formatToPlainString(GuildPowerups_messages["6Sv+3M"], { perk: powerups[0].title, perk2: powerups[1].title, perk3: powerups[2].title }) : powerups.length === 2 ? intl.formatToPlainString(GuildPowerups_messages.wcQOqC, { perks: `${powerups[0].title} & ${powerups[1].title}` }) : intl.formatToPlainString(GuildPowerups_messages.ZF8NT6, { perk: powerups[0].title }); const r357 = { ...r5, visible: true, renderImgComponent: () => { let imageUrl; if (powerups.length > 1) { imageUrl = Module15147; } else { imageUrl = getGuildPowerupBannerImage(powerups[0], stateFromStores2, true); if (imageUrl == null) { imageUrl = ""; } } return ; } }; let guildName = stateFromStores; if (stateFromStores == null) { guildName = ""; } r357.title = intl.formatToPlainString(GuildPowerups_messages.LmpChE, { guildName }); r357.description = description; r357.buttonLabel = intl.string(t.RzWDqY); r357.buttonVariant = "primary"; r357.onButtonPress = handleButtonPress; r357.onDismiss = handleDismiss; return r357; } if (GuildPowerupNotificationPopoutType.NEW_PERK_AVAILABLE === type) { const powerups2 = a2.powerups; const r101 = powerups2.find((item) => item.skuId === GUILD_POWERUP_TAG_SKU_ID); if (r101 != null) { guildPowerupBannerImage = getGuildPowerupBannerImage(r101, stateFromStores2, true); if (guildPowerupBannerImage != null) { return { ...r5, visible: true, renderImgComponent: () => , title: intl.string(GuildPowerups_messages.GcEkAP), description: intl.string(GuildPowerups_messages.yo0g7X), buttonLabel: intl.string(t.RzWDqY), buttonVariant: "primary", onButtonPress: handleButtonPress, onDismiss: handleDismiss }; } } const r110 = powerups2.find((item) => item.skuId === GUILD_POWERUP_GUILD_THEME_SKU_ID); c27952_2 = r110; if (r110 != null) { return { ...r5, visible: true, renderImgComponent: () => { let imageUrl = getGuildPowerupBannerImage(c27952_2, stateFromStores2, true); if (imageUrl == null) { imageUrl = Module15143; } return ; }, title: r110.title, description: typeof r110.description === "string" ? r110.description : "", buttonLabel: intl.string(t.RzWDqY), buttonVariant: "primary", onButtonPress: handleButtonPress, onDismiss: handleDismiss }; } if (powerups2.find((item) => item.skuId === VANITY_URL_POWERUP_SKU_ID) != null) { return { ...r5, visible: true, renderImgComponent: () => , title: intl.string(GuildPowerups_messages.Ygpx4Q), description: intl.string(GuildPowerups_messages.mmNkUA), buttonLabel: intl.string(t.RzWDqY), buttonVariant: "primary", onButtonPress: handleButtonPress, onDismiss: handleDismiss }; } if (powerups2.find((item) => GUILD_TAG_BADGE_PACKS_WAVE_TWO_SKU_ID_SET.has(item.skuId)) != null) { return { ...r5, visible: true, renderImgComponent: () => , title: intl.string(GuildPowerups_messages["kA2c+n"]), description: intl.string(GuildPowerups_messages.TUilLj), buttonLabel: intl.string(t.RzWDqY), buttonVariant: "primary", onButtonPress: handleButtonPress, onDismiss: handleDismiss }; } if (powerups2.find((item) => GUILD_TAG_BADGE_PACKS_WAVE_ONE_SKU_ID_SET.has(item.skuId)) != null) { return { ...r5, visible: true, renderImgComponent: () => , title: intl.string(GuildPowerups_messages["kA2c+n"]), description: intl.string(GuildPowerups_messages.TUilLj), buttonLabel: intl.string(t.RzWDqY), buttonVariant: "primary", onButtonPress: handleButtonPress, onDismiss: handleDismiss }; } return powerups2.find((item) => item.skuId === GUILD_POWERUP_MAX_FILE_SIZE_250_MB_SKU_ID) != null ? { ...r5, visible: true, renderImgComponent: () => , title: intl.string(GuildPowerups_messages.rp0Ff1), description: intl.string(GuildPowerups_messages["3L/DZq"]), buttonLabel: intl.string(t.RzWDqY), buttonVariant: "primary", onButtonPress: handleButtonPress, onDismiss: handleDismiss } : r5; } if (GuildPowerupNotificationPopoutType.BOOST_TO_UNLOCK === type) { powerup = a2.powerup; return { ...r5, visible: true, offsetY: 8, renderImgComponent: () => { let r28; if (powerup.type === GuildPowerupType.LEVEL) { r28 = ; } else { let imageUrl = getGuildPowerupBannerImage(powerup, stateFromStores2, true); if (imageUrl == null) { imageUrl = ""; } r28 = ; } return r28; }, title: intl.string(GuildPowerups_messages.n37JhA), description: intl.formatToPlainString(c21707_5 !== true && powerup.type !== GuildPowerupType.LEVEL ? GuildPowerups_messages["7MZ2tu"] : GuildPowerups_messages.Yr1ogl, { boostCount, perkName: powerup.title }), buttonLabel: intl.string(t.oPAx73), buttonVariant: "primary", onButtonPress: () => { a2.markAsDismissed(ContentDismissActionType.TAKE_ACTION); c21707_7(); }, onDismiss: handleDismiss }; } if (GuildPowerupNotificationPopoutType.GAME_SERVER_HOSTING_AVAILABLE !== type && GuildPowerupNotificationPopoutType.GAME_SERVER_HOSTING_GUILD_ELIGIBLE !== type) { GuildPowerupNotificationPopoutType.GAME_SERVER_HOSTING_ENABLED; } return r5; }, [boostCount, hasAllocateBoostPermission, a1, stateFromStores, guildPowerupsBoostAction, a2, styles, stateFromStores2])); };