/* Metro module 9511; source: modules/quests/experiments/index.tsx; dependencies: [57, 31, 6528, 1854, 9502, 9503, 9512, 672, 2] */ import Module00057 from '../../../by-id/module-00057.js'; /* Metro dependency 57 */ import Durations from '../../../utils/Durations.tsx'; /* Metro dependency 672 */ import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */ import * as ReactModule from '../../../by-id/module-00031-React.js'; /* Metro dependency 31 */ import * as ApexModule from '../../experiments/apex/index.tsx'; /* Metro dependency 1854 */ import * as QuestConstantsModule from '../QuestConstants.tsx'; /* Metro dependency 6528 */ import * as QuestOrbMultiplierHooksModule from '../hooks/QuestOrbMultiplierHooks.tsx'; /* Metro dependency 9502 */ import * as QuestOrbMultiplierUtilsModule from '../utils/QuestOrbMultiplierUtils.tsx'; /* Metro dependency 9503 */ import * as QuestOrbsMultiplierModule from '../../../external/discord_common/js/shared/shared-constants/QuestOrbsMultiplier.tsx'; /* Metro dependency 9512 */ function _fun74201(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#74201, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9697:6, offset: 0x01d84540, size: 2175 bytes, params: 8, frame: 47 const env0_0 = require; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); let value = ApexModule; let createApexExperiment = value.createApexExperiment; value = Reflect.apply(createApexExperiment, value, [{'name': '2025-11-video-end-card-v2', 'kind': 'user', defaultConfig: {enabled: false}, variations: {[1]: {enabled: true}}}]); const apexExperiment = (ApexModule).createApexExperiment({'name': '2026-02-new-video-quest-progress-bar-styling', 'kind': 'user', defaultConfig: {enabled: false}, variations: {[0]: {enabled: false}, [1]: {enabled: true}}}); const apexExperiment2 = (ApexModule).createApexExperiment({'name': '2026-03-desktop-activity-quest-header', 'kind': 'user', defaultConfig: {'enabled': false, 'showSkipButton': false}, variations: {[1]: {'enabled': true, 'showSkipButton': true}, [2]: {'enabled': true, 'showSkipButton': false}}}); const apexExperiment3 = (ApexModule).createApexExperiment({'name': '2026-05-app-store-overlay-feature-gate', 'kind': 'user', defaultConfig: {enabled: false}, variations: {[1]: {enabled: true}}}); const apexExperiment4 = (ApexModule).createApexExperiment({'name': '2026-03-quest-reload-video-on-obscured', 'kind': 'user', defaultConfig: {enabled: false}, variations: {[1]: {enabled: true}}}); object = {DEFAULT: 0}; object[0] = 'DEFAULT'; object.AUTO_ENABLE_CAPTIONS = 1; object[1] = 'AUTO_ENABLE_CAPTIONS'; object.AUTO_UNMUTE = 2; object[2] = 'AUTO_UNMUTE'; createApexExperiment = ApexModule.createApexExperiment; const object10 = {'name': '2026-03-muted-video-quest-new-defaults', 'kind': 'user'}; let DEFAULT = object.DEFAULT; object10.defaultConfig = {enabled: false, variant: DEFAULT}; DEFAULT = object.DEFAULT; const AUTO_ENABLE_CAPTIONS = object.AUTO_ENABLE_CAPTIONS; const AUTO_UNMUTE = object.AUTO_UNMUTE; object10.variations = {[0]: {enabled: false, variant: DEFAULT}, [1]: {enabled: true, variant: AUTO_ENABLE_CAPTIONS}, [2]: {enabled: true, variant: AUTO_UNMUTE}}; const apexExperiment5 = Reflect.apply(createApexExperiment, ApexModule, [object10]); const env0_5 = ApexModule.createApexExperiment({'name': '2026-04-quests-premium-orb-multiplier-marketing', 'kind': 'user', defaultConfig: {enabled: false}, variations: {[0]: {enabled: false}, [1]: {enabled: true}}}); const apexExperiment6 = ApexModule.createApexExperiment({'name': '2026-03-video-quest-player-refactor', 'kind': 'user', defaultConfig: {enabled: false}, variations: {[1]: {enabled: true}}}); const apexExperiment7 = ApexModule.createApexExperiment({'name': '2026-04-composed-quest-player', 'kind': 'user', defaultConfig: {enabled: false}, variations: {[1]: {enabled: true}}}); const object11 = {CONTROL: 0}; object11[0] = 'CONTROL'; object11.EARN_ORBS_PRIMARY = 1; object11[1] = 'EARN_ORBS_PRIMARY'; object11.EARN_ORBS_ONLY = 2; object11[2] = 'EARN_ORBS_ONLY'; createApexExperiment = ApexModule.createApexExperiment; const object12 = {'name': '2026-04-mobile-quest-orb-reward-modal-cta-priority', 'kind': 'user'}; let CONTROL = object11.CONTROL; object12.defaultConfig = {enabled: false, variant: CONTROL}; CONTROL = object11.CONTROL; const EARN_ORBS_PRIMARY = object11.EARN_ORBS_PRIMARY; const EARN_ORBS_ONLY = object11.EARN_ORBS_ONLY; object12.variations = {[0]: {enabled: false, variant: CONTROL}, [1]: {enabled: true, variant: EARN_ORBS_PRIMARY}, [2]: {enabled: true, variant: EARN_ORBS_ONLY}}; const env0_6 = Reflect.apply(createApexExperiment, ApexModule, [object12]); const apexExperiment8 = ApexModule.createApexExperiment({'name': '2026-03-mobile-quest-home-red-dot-notification', 'kind': 'user', defaultConfig: {enabled: false}, variations: {[0]: {enabled: false}, [1]: {enabled: true}}}); const apexExperiment9 = ApexModule.createApexExperiment({'name': '2026-04-quest-heartbeat-executable-fingerprint', 'kind': 'user', defaultConfig: {enabled: false}, variations: {[0]: {enabled: false}, [1]: {enabled: true}}}); const object13 = {CONTROL: 0}; object13[0] = 'CONTROL'; object13.NEW_LAYOUT_NO_SEARCH = 1; object13[1] = 'NEW_LAYOUT_NO_SEARCH'; object13.NEW_LAYOUT_WITH_SEARCH = 2; object13[2] = 'NEW_LAYOUT_WITH_SEARCH'; createApexExperiment = ApexModule.createApexExperiment; const object14 = {'name': '2026-05-quest-home-new-layout', 'kind': 'user'}; CONTROL = object13.CONTROL; object14.defaultConfig = {enabled: false, variant: CONTROL}; CONTROL = object13.CONTROL; const NEW_LAYOUT_NO_SEARCH = object13.NEW_LAYOUT_NO_SEARCH; const NEW_LAYOUT_WITH_SEARCH = object13.NEW_LAYOUT_WITH_SEARCH; object14.variations = {[0]: {enabled: false, variant: CONTROL}, [1]: {enabled: true, variant: NEW_LAYOUT_NO_SEARCH}, [2]: {enabled: true, variant: NEW_LAYOUT_WITH_SEARCH}}; const apexExperiment10 = Reflect.apply(createApexExperiment, ApexModule, [object14]); const apexExperiment11 = ApexModule.createApexExperiment({'name': '2026-05-quest-home-tile-redesign', 'kind': 'user', defaultConfig: {'useNewLayoutWithSearch': false, 'useNewTile': false, 'useLargeFeaturedTiles': false, 'ctaOnHover': false}, variations: {[0]: {'useNewLayoutWithSearch': false, 'useNewTile': false, 'useLargeFeaturedTiles': false, 'ctaOnHover': false}, [1]: {'useNewLayoutWithSearch': true, 'useNewTile': false, 'useLargeFeaturedTiles': false, 'ctaOnHover': false}, [2]: {'useNewLayoutWithSearch': true, 'useNewTile': true, 'useLargeFeaturedTiles': true, 'ctaOnHover': true}, [3]: {'useNewLayoutWithSearch': true, 'useNewTile': true, 'useLargeFeaturedTiles': false, 'ctaOnHover': true}, [4]: {'useNewLayoutWithSearch': true, 'useNewTile': true, 'useLargeFeaturedTiles': true, 'ctaOnHover': false}}}); const apexExperiment12 = ApexModule.createApexExperiment({'name': '2026-05-quest-home-remove-expired-quests', 'kind': 'user', defaultConfig: {enabled: false}, variations: {[0]: {enabled: false}, [1]: {enabled: true}}}); const apexExperiment13 = ApexModule.createApexExperiment({'name': '2026-05-bounty-stale-refresh-quest-home', 'kind': 'user', defaultConfig: {enabled: false}, variations: {[0]: {enabled: false}, [1]: {enabled: true}}}); const env0_7 = ApexModule.createApexExperiment({'name': '2026-06-remove-quest-home-hero', 'kind': 'user', defaultConfig: {enabled: false}, variations: {[0]: {enabled: false}, [1]: {enabled: true}}}); let Date = global.Date; let date = new Date('2026-06-20T10:00:00-07:00'); Date = global.Date; date = new Date('2026-06-23T10:00:00-07:00'); const Millis = (Durations).Millis; const MINUTE = Millis.MINUTE; const env0_10 = 5 * MINUTE; const object15 = {CONTROL: 0}; object15[0] = 'CONTROL'; object15.LARGE_MASK_MARGIN = 1; object15[1] = 'LARGE_MASK_MARGIN'; object15.REMOVE_QUEST_TITLE_SUFFIX = 2; object15[2] = 'REMOVE_QUEST_TITLE_SUFFIX'; object15.REPLACE_QUEST_NAME_WITH_GAME_PUBLISHER = 3; object15[3] = 'REPLACE_QUEST_NAME_WITH_GAME_PUBLISHER'; createApexExperiment = ApexModule.createApexExperiment; const object16 = {'name': '2026-06-quest-home-layout-visual-tweaks', 'kind': 'user'}; CONTROL = object15.CONTROL; object16.defaultConfig = {enabled: false, variant: CONTROL}; CONTROL = object15.CONTROL; const LARGE_MASK_MARGIN = object15.LARGE_MASK_MARGIN; const REMOVE_QUEST_TITLE_SUFFIX = object15.REMOVE_QUEST_TITLE_SUFFIX; const REPLACE_QUEST_NAME_WITH_GAME_PUBLISHER = object15.REPLACE_QUEST_NAME_WITH_GAME_PUBLISHER; object16.variations = {[0]: {enabled: false, variant: CONTROL}, [1]: {enabled: true, variant: LARGE_MASK_MARGIN}, [2]: {enabled: true, variant: REMOVE_QUEST_TITLE_SUFFIX}, [3]: {enabled: true, variant: REPLACE_QUEST_NAME_WITH_GAME_PUBLISHER}}; const apexExperiment14 = Reflect.apply(createApexExperiment, ApexModule, [object16]); (FileImportTrackerModule).fileFinishedImporting('modules/quests/experiments/index.tsx'); exports.VideoEndCardV2Experiment = value; exports.NewVideoQuestProgressBarStylingExperiment = apexExperiment; exports.DesktopActivityQuestHeaderExperiment = apexExperiment2; exports.AppStoreBottomSheetOverlayFeatureGate = apexExperiment3; exports.QuestReloadVideoOnObscuredExperiment = apexExperiment4; exports.MutedVideoQuestNewDefaultsVariant = object; exports.MutedVideoQuestNewDefaultsExperiment = apexExperiment5; exports.useQuestOrbsMultiplierMarketing = useQuestOrbsMultiplierMarketing; exports.VideoQuestPlayerRefactorExperiment = apexExperiment6; exports.ComposedQuestPlayerExperiment = apexExperiment7; exports.MobileQuestOrbRewardModalCtaPriorityVariant = object11; exports.useMobileQuestOrbRewardModalCtaPriorityExperiment = useMobileQuestOrbRewardModalCtaPriorityExperiment; exports.MobileQuestHomeRedDotNotificationExperiment = apexExperiment8; exports.QuestHeartbeatExecutableFingerprintExperiment = apexExperiment9; exports.QuestHomeNewLayoutVariant = object13; exports.QuestHomeNewLayout = apexExperiment10; exports.QuestHomeTileRedesignExperiment = apexExperiment11; exports.QuestHomeRemoveExpiredQuestsExperiment = apexExperiment12; exports.BountyStaleRefreshQuestHomeExperiment = apexExperiment13; exports.useShouldRemoveQuestHomeHero = useShouldRemoveQuestHomeHero; exports.QuestHomeLayoutVisualTweakVariant = object15; exports.QuestHomeLayoutVisualTweaksExperiment = apexExperiment14; function useQuestOrbsMultiplierMarketing(a0) { // fn#74202, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9697:5179, offset: 0x01d84dbf, size: 189 bytes, params: 2, frame: 17 const binding = env0_5; const useConfig = binding.useConfig; const enabled = Reflect.apply(useConfig, binding, [{location: a0}]).enabled; const value2 = (QuestOrbMultiplierHooksModule).useQuestOrbMultiplierEligibility(); object = {}; const QuestOrbMultiplierEligibilityType = (QuestOrbMultiplierUtilsModule).QuestOrbMultiplierEligibilityType; const INELIGIBLE = QuestOrbMultiplierEligibilityType.INELIGIBLE; object.shouldShowBonusOrbsUX = value2 !== INELIGIBLE && value2 !== QuestOrbMultiplierEligibilityType.CREPE && enabled; const QuestOrbsMultiplier = (QuestOrbsMultiplierModule).QuestOrbsMultiplier; const PREMIUM_TIER_2_MULTIPLIER_PERCENTAGE_POINTS = QuestOrbsMultiplier.PREMIUM_TIER_2_MULTIPLIER_PERCENTAGE_POINTS; object.multiplier = PREMIUM_TIER_2_MULTIPLIER_PERCENTAGE_POINTS / 100; return object; } function useMobileQuestOrbRewardModalCtaPriorityExperiment() { // fn#74203, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9697:5712, offset: 0x01d84e7c, size: 36 bytes, params: 1, frame: 12 const binding = env0_6; const useConfig = binding.useConfig; const ORBS_REWARD_MODAL = QuestsExperimentLocations.ORBS_REWARD_MODAL; return Reflect.apply(useConfig, binding, [{location: ORBS_REWARD_MODAL}]); } function useShouldRemoveQuestHomeHero() { // fn#74204, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9697:6128, offset: 0x01d84ea0, size: 154 bytes, params: 1, frame: 16 let binding = ReactModule; const [property, env0_0] = Module00057(binding.useState(function() { var Date = global.Date; var value = Object.create(Date.prototype, {constructor: {value: Date}}); var value2 = new Date(); return value2 instanceof Object ? value2 : value; }), 2); binding.useEffect(_fun74206, []); const r2 = property >= env0_8 && property < env0_9; binding = env0_7; const useConfig = binding.useConfig; return r2 ? Reflect.apply(useConfig, binding, [{location: r2 ? 'remove-quest-home-hero-eligible' : 'remove-quest-home-hero-ineligible'}]).enabled : !!r2; function _fun74206() { // fn#74206, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9697:6237, offset: 0x01d84f58, size: 45 bytes, params: 1, frame: 14 const env0_0 = global.setInterval(_fun74207, env1_10); return _fun74208; function _fun74207() { // fn#74207, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9697:6261, offset: 0x01d84f85, size: 44 bytes, params: 1, frame: 11 const value = environment.__proto__; const binding = env1_0; const Date = global.Date; return binding(new Date()); } function _fun74208() { // fn#74208, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9697:6287, offset: 0x013378b1, size: 24 bytes, params: 1, frame: 11 return global.clearInterval(env0_0); } } } } global.__d(_fun74201, 9511, [57, 31, 6528, 1854, 9502, 9503, 9512, 672, 2]) /* metro module 9511, dependencies: [57, 31, 6528, 1854, 9502, 9503, 9512, 672, 2] */;