// Module ID: 14114 // Function ID: 14115 // Name: useIsMobileQuestDockRenderedBase // Dependencies: [5, 19, 3882, 4226, 5983, 5033, 9468, 505, 14115, 5998, 589, 5036, 5981, 14138, 10249, 4040, 6558, 10488, 10489, 9475, 6006, 10501, 6004, 10601, 5516, 5693, 10876, 2] // Exports: useHasWatchVideoOnMobileTasks, useIsMobileQuestDockVisibleToUser, useMobileActivityQuest, useMobileQuestDock, useMobileQuestDockHeight, useQuestDockHeroAsset, useQuestGameLogotypeAssetUrl // Module 14114 (useIsMobileQuestDockRenderedBase) import closure_3 from "QuestsExperimentLocations"; import resolveAsset from "resolveAsset"; import setContent from "setContent"; import addApplication from "addApplication"; import initializeState from "initializeState"; import QuestsExperimentLocations from "QuestsExperimentLocations"; import { CAPTCHA_MODAL_KEY } from "CAPTCHA_SERVE_VOLUME_DISTRIBUTION_AGGREGATION_WINDOW_MS"; import { ThemeTypes } from "sum"; let c9; let metroImportAll; const require = arg1; function useIsMobileQuestDockRenderedBase(mobileQuestDock) { const tmp2 = importDefault(6558)(); const items = [initializeState]; let userStatus; const stateFromStores = require(589) /* initialize */.useStateFromStores(items, () => null != questPreviewOverride.getQuestPreviewOverride(callback(table[11]).QuestContent.QUEST_BAR_MOBILE), []); if (mobileQuestDock != null) { userStatus = mobileQuestDock.userStatus; } let isDismissedResult = null != userStatus; if (isDismissedResult) { let tmp3Result = tmp3(5981); isDismissedResult = tmp3Result.isDismissed(mobileQuestDock.userStatus, tmp3(5036).QuestContent.QUEST_BAR_MOBILE); } let claimedAt; if (mobileQuestDock != null) { userStatus = mobileQuestDock.userStatus; if (userStatus != null) { claimedAt = userStatus.claimedAt; } } tmp3Result = tmp3(10488); const isQuestExpired = tmp3Result.useIsQuestExpired(mobileQuestDock); const obj = require(589) /* initialize */; const isEligibleForQuests = require(10489) /* getIsEligibleForQuests */.getIsEligibleForQuests(); if (stateFromStores) { if (!tmp8) { let tmp11 = null != mobileQuestDock && !tmp2; } return tmp11; } tmp11 = null != mobileQuestDock && isEligibleForQuests && !isQuestExpired && null == claimedAt && !isDismissedResult && !tmp2; } function useIsMobileQuestDockRendered() { const obj = importDefault(5998); const items = [initializeState]; let stateFromStores = stateFromStores2(589).useStateFromStores(items, () => questPreviewOverride.getQuestPreviewOverride(stateFromStores2(5036).QuestContent.QUEST_BAR_MOBILE), []); const obj2 = stateFromStores2(589); const items1 = [initializeState]; let stateFromStores1 = stateFromStores2(589).useStateFromStores(items1, () => { let questToDeliverForPlacement; let quests; ({ quests, questToDeliverForPlacement } = initializeState); let questForPlacement = stateFromStores2(5981).getQuestForPlacement(quests, questToDeliverForPlacement, stateFromStores2(5036).AdPlacement.MOBILE_HOME_DOCK_AREA); if (questForPlacement == null) { questForPlacement = null; } return questForPlacement; }); const obj3 = stateFromStores2(589); const items2 = [initializeState]; stateFromStores2 = stateFromStores2(589).useStateFromStores(items2, () => { const questAdDecisionByPlacement = questPreviewOverride.questAdDecisionByPlacement; let value = questAdDecisionByPlacement.get(stateFromStores2(5036).AdPlacement.MOBILE_HOME_DOCK_AREA); if (value == null) { value = null; } return value; }); const obj4 = stateFromStores2(589); const items3 = [initializeState]; const items4 = [stateFromStores2]; if (stateFromStores == null) { if (obj.useConfig({ location: "QuestMobileDock" }).enableNewRequestBehavior) { stateFromStores1 = obj5.useStateFromStores(items3, () => { let questId; if (stateFromStores2 != null) { questId = tmp.questId; } let tmp3 = null; if (null != questId) { const quests = outer1_7.quests; let value = quests.get(tmp.questId); if (value == null) { value = null; } tmp3 = value; } return tmp3; }, items4); } stateFromStores = stateFromStores1; } return useIsMobileQuestDockRenderedBase(stateFromStores); } ({ QUEST_REWARD_CODE_CLAIM_BOTTOM_SHEET_KEY: metroImportAll, QuestVariants: c9 } = QuestsExperimentLocations); const result = require("setContent").fileFinishedImporting("modules/quests/native/QuestHooks.native.tsx"); export const useMobileQuestDockHeight = function useMobileQuestDockHeight() { const tmp = useIsMobileQuestDockRendered(); let num = 0; if (tmp) { num = obj.useQuestDockExternalOffset(); } return num; }; export const useMobileQuestDock = function useMobileQuestDock() { const obj = importDefault(5998); const items = [initializeState]; let stateFromStores = require(589) /* initialize */.useStateFromStores(items, () => questPreviewOverride.getQuestPreviewOverride(callback(5036).QuestContent.QUEST_BAR_MOBILE), []); const obj2 = require(589) /* initialize */; const items1 = [initializeState]; let stateFromStores1 = require(589) /* initialize */.useStateFromStores(items1, () => { let questToDeliverForPlacement; let quests; ({ quests, questToDeliverForPlacement } = initializeState); let questForPlacement = callback(5981).getQuestForPlacement(quests, questToDeliverForPlacement, callback(5036).AdPlacement.MOBILE_HOME_DOCK_AREA); if (questForPlacement == null) { questForPlacement = null; } return questForPlacement; }); const obj3 = require(589) /* initialize */; if (stateFromStores == null) { if (obj.useConfig({ location: "QuestMobileDock" }).enableNewRequestBehavior) { stateFromStores1 = tmp3(require(5036) /* QuestsVisibleMessagesChangedSource */.AdPlacement.MOBILE_HOME_DOCK_AREA); } stateFromStores = stateFromStores1; } return stateFromStores; }; export const useIsMobileQuestDockVisibleToUser = function useIsMobileQuestDockVisibleToUser(arg0, arg1) { const _require = arg0; let tmp = arg1; const isChannelFocused = _require(10249).useIsChannelFocused(); const obj = _require(10249); const currentNavigationRouteName = _require(4040).useCurrentNavigationRouteName(); const obj2 = _require(4040); let tmp4 = null != _require(4040).coerceGuildsRoute({ name: currentNavigationRouteName }); const obj3 = _require(4040); const items = [initializeState]; let stateFromStores = _require(589).useStateFromStores(items, () => { let isClaimingRewardResult = null != closure_0; if (isClaimingRewardResult) { isClaimingRewardResult = outer1_7.isClaimingReward(tmp.id); } return isClaimingRewardResult; }); const obj4 = _require(589); const items1 = [setContent]; const stateFromStores1 = _require(589).useStateFromStores(items1, () => { key = key.getKey(); let tmp2 = key === closure_10; if (!tmp2) { tmp2 = key === closure_8; } return tmp2; }); if (arg1) { tmp = !isChannelFocused; } if (tmp) { if (!tmp4) { if (stateFromStores) { stateFromStores = stateFromStores1; } tmp4 = stateFromStores; } tmp = tmp4; } return tmp; }; export { useIsMobileQuestDockRenderedBase }; export { useIsMobileQuestDockRendered }; export const useQuestGameLogotypeAssetUrl = function useQuestGameLogotypeAssetUrl(quest) { let closure_0 = quest; const items = [quest]; return React.useMemo(() => quest(outer1_2[19]).getQuestAsset(quest, quest(outer1_2[19]).QuestAssetType.LOGO_TYPE, outer1_11.DARK).url, items); }; export const useQuestDockHeroAsset = function useQuestDockHeroAsset(quest) { let closure_0 = quest; const items = [quest]; return React.useMemo(() => { const questAsset = quest(outer1_2[19]).getQuestAsset(quest, quest(outer1_2[19]).QuestAssetType.QUEST_BAR_HERO); let videoAsset = null; if (null != quest.config.assets.questBarHeroVideo) { videoAsset = tmp(tmp2[19]).resolveAsset(tmp3.id, tmp3.config.assets.questBarHeroVideo); const tmpResult = tmp(tmp2[19]); } if (questAsset.isAnimated) { let staticUrl = str.replace(tmp(tmp2[19]).EXTENSION_RE, ".png"); } else { staticUrl = str; } return { staticUrl, videoAsset }; }, items); }; export const useHasWatchVideoOnMobileTasks = function useHasWatchVideoOnMobileTasks(config) { let closure_0 = config; const items = [config]; return React.useMemo(() => { let obj = config(outer1_2[20]); obj = { config }; return obj.hasWatchVideoOnMobileTasks(obj); }, items); }; export const useMobileActivityQuest = function useMobileActivityQuest(quest) { const _require = quest; let obj = _require(stateFromStores[20]); const activityApplicationId = obj.getActivityApplicationId(quest); let items = [addApplication]; stateFromStores = _require(stateFromStores[10]).useStateFromStores(items, () => outer1_6.getApplication(activityApplicationId)); let obj2 = _require(stateFromStores[10]); const tmp = stateFromStores; const canLaunchFrameResult = _require(stateFromStores[21]).canLaunchFrame(stateFromStores); const callback = canLaunchFrameResult; let obj3 = _require(stateFromStores[21]); let canLaunchActivityResult = _require(stateFromStores[22]).canLaunchActivity(quest); if (canLaunchActivityResult) { let features = quest.config.features; canLaunchActivityResult = features.includes(constants.MOBILE_ACTIVITY_QUEST); } if (canLaunchActivityResult) { let supported_platforms; if (stateFromStores != null) { const embeddedActivityConfig = stateFromStores.embeddedActivityConfig; if (embeddedActivityConfig != null) { supported_platforms = embeddedActivityConfig.supported_platforms; } } canLaunchActivityResult = activityApplicationId(tmp[23])(supported_platforms); const tmp8 = activityApplicationId(tmp[23]); } if (canLaunchActivityResult) { let tmp11 = canLaunchFrameResult; if (!canLaunchFrameResult) { let id; if (stateFromStores != null) { let bot = stateFromStores.bot; if (bot != null) { id = bot.id; } } tmp11 = null != id; } canLaunchActivityResult = tmp11; } const React = canLaunchActivityResult; const items1 = [stateFromStores, activityApplicationId, quest.config.features]; const effect = React.useEffect(() => { let hasItem = null == stateFromStores; if (hasItem) { hasItem = null != activityApplicationId; } if (hasItem) { const features = quest.config.features; hasItem = features.includes(outer1_9.MOBILE_ACTIVITY_QUEST); } if (hasItem) { const items = [activityApplicationId]; const applications = activityApplicationId(stateFromStores[24]).fetchApplications(items, false); const obj = activityApplicationId(stateFromStores[24]); } }, items1); const items2 = [canLaunchFrameResult, stateFromStores, canLaunchActivityResult]; obj = { isMobileActivityQuest: canLaunchActivityResult, questApplication: stateFromStores, launchMobileActivity: React.useCallback(callback(function*() { if (v0 === 2) { v0 = 3; HermesBuiltin.throwTypeError(); } else if (tmp3 === 3) { if (arg0 === 1) { throw arg1; } else if (arg0 === 2) { let obj = { value: null, done: true }; obj[0] = arg1; return obj; } else { return { value: "HermesInternal", done: null }; } } else { try { v0 = 2; if (0 === v02) { if (arg0 === 1) { v0 = 3; throw arg1; } else if (arg0 === 2) { v0 = 3; obj = { value: null, done: true }; obj[0] = arg1; return obj; } else if (outer1_4) { if (outer1_3) { let obj5 = v02(outer1_2[25]); const obj1 = { applicationId: null }; obj1[0] = outer1_2.id; v02 = 1; v0 = 1; let obj2 = { value: null, done: false }; obj2[0] = obj5.launchFrame(obj1); return obj2; } else { let id; if (outer1_2 != null) { const bot = tmp6.bot; if (bot != null) { id = bot.id; } } if (null != id) { obj2 = v0(outer1_2[26]); const obj3 = { appId: null, botId: null, analyticsLocations: null }; obj3[0] = tmp6.id; obj3[1] = tmp6.bot.id; obj3[2] = []; v02 = 2; v0 = 1; const obj4 = { value: null, done: false }; obj4[0] = obj2.launchActivityInBotDM(obj3); return obj4; } } } } else if (1 === tmp4) { if (arg0 === 1) { v0 = 3; throw arg1; } else if (arg0 === 2) { v0 = 3; obj5 = { value: null, done: true }; obj5[0] = arg1; return obj5; } } else if (arg0 === 1) { v0 = 3; throw arg1; } else if (arg0 === 2) { v0 = 3; obj = { value: null, done: true }; obj[0] = arg1; return obj; } v0 = 3; return { value: "HermesInternal", done: null }; } catch (tmp14) { v0 = tmp; throw tmp14; } } }), items2) }; return obj; };