/* Metro module 9511; source: modules/quests/experiments/index.tsx; dependencies: [57, 31, 6528, 1854, 9502, 9503, 9512, 672, 2] */ 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 var object2; const env0_0 = require; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); const env0_2 = importDefault(57) /* metro dependency 57 */; const env0_3 = importAll(31) /* metro dependency 31 */; const env0_4 = (require(6528) /* metro dependency 6528: QuestConstants */).QuestsExperimentLocations; let value = require(1854) /* metro dependency 1854: apex */; 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 = (require(1854) /* metro dependency 1854: apex */).createApexExperiment({'name': '2026-02-new-video-quest-progress-bar-styling', 'kind': 'user', defaultConfig: {enabled: false}, variations: {[0]: {enabled: false}, [1]: {enabled: true}}}); const apexExperiment2 = (require(1854) /* metro dependency 1854: apex */).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 = (require(1854) /* metro dependency 1854: apex */).createApexExperiment({'name': '2026-05-app-store-overlay-feature-gate', 'kind': 'user', defaultConfig: {enabled: false}, variations: {[1]: {enabled: true}}}); const apexExperiment4 = (require(1854) /* metro dependency 1854: apex */).createApexExperiment({'name': '2026-03-quest-reload-video-on-obscured', 'kind': 'user', defaultConfig: {enabled: false}, variations: {[1]: {enabled: true}}}); object2 = {DEFAULT: 0}; object2[0] = 'DEFAULT'; object2.AUTO_ENABLE_CAPTIONS = 1; object2[1] = 'AUTO_ENABLE_CAPTIONS'; object2.AUTO_UNMUTE = 2; object2[2] = 'AUTO_UNMUTE'; const apexModule = require(1854) /* metro dependency 1854: apex */; createApexExperiment = apexModule.createApexExperiment; const object3 = {'name': '2026-03-muted-video-quest-new-defaults', 'kind': 'user'}; let DEFAULT = object2.DEFAULT; object3.defaultConfig = {enabled: false, variant: DEFAULT}; DEFAULT = object2.DEFAULT; const AUTO_ENABLE_CAPTIONS = object2.AUTO_ENABLE_CAPTIONS; const AUTO_UNMUTE = object2.AUTO_UNMUTE; object3.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, [object3]); 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 object4 = {CONTROL: 0}; object4[0] = 'CONTROL'; object4.EARN_ORBS_PRIMARY = 1; object4[1] = 'EARN_ORBS_PRIMARY'; object4.EARN_ORBS_ONLY = 2; object4[2] = 'EARN_ORBS_ONLY'; const value10 = apexModule; createApexExperiment = value10.createApexExperiment; const object5 = {'name': '2026-04-mobile-quest-orb-reward-modal-cta-priority', 'kind': 'user'}; let CONTROL = object4.CONTROL; object5.defaultConfig = {enabled: false, variant: CONTROL}; CONTROL = object4.CONTROL; const EARN_ORBS_PRIMARY = object4.EARN_ORBS_PRIMARY; const EARN_ORBS_ONLY = object4.EARN_ORBS_ONLY; object5.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, value10, [object5]); 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 object6 = {CONTROL: 0}; object6[0] = 'CONTROL'; object6.NEW_LAYOUT_NO_SEARCH = 1; object6[1] = 'NEW_LAYOUT_NO_SEARCH'; object6.NEW_LAYOUT_WITH_SEARCH = 2; object6[2] = 'NEW_LAYOUT_WITH_SEARCH'; const value13 = apexModule; createApexExperiment = value13.createApexExperiment; const object7 = {'name': '2026-05-quest-home-new-layout', 'kind': 'user'}; CONTROL = object6.CONTROL; object7.defaultConfig = {enabled: false, variant: CONTROL}; CONTROL = object6.CONTROL; const NEW_LAYOUT_NO_SEARCH = object6.NEW_LAYOUT_NO_SEARCH; const NEW_LAYOUT_WITH_SEARCH = object6.NEW_LAYOUT_WITH_SEARCH; object7.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, value13, [object7]); 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 = (importDefault(672) /* metro dependency 672: Durations */).Millis; const MINUTE = Millis.MINUTE; const env0_10 = 5 * MINUTE; const object8 = {CONTROL: 0}; object8[0] = 'CONTROL'; object8.LARGE_MASK_MARGIN = 1; object8[1] = 'LARGE_MASK_MARGIN'; object8.REMOVE_QUEST_TITLE_SUFFIX = 2; object8[2] = 'REMOVE_QUEST_TITLE_SUFFIX'; object8.REPLACE_QUEST_NAME_WITH_GAME_PUBLISHER = 3; object8[3] = 'REPLACE_QUEST_NAME_WITH_GAME_PUBLISHER'; const value22 = apexModule; createApexExperiment = value22.createApexExperiment; const object9 = {'name': '2026-06-quest-home-layout-visual-tweaks', 'kind': 'user'}; CONTROL = object8.CONTROL; object9.defaultConfig = {enabled: false, variant: CONTROL}; CONTROL = object8.CONTROL; const LARGE_MASK_MARGIN = object8.LARGE_MASK_MARGIN; const REMOVE_QUEST_TITLE_SUFFIX = object8.REMOVE_QUEST_TITLE_SUFFIX; const REPLACE_QUEST_NAME_WITH_GAME_PUBLISHER = object8.REPLACE_QUEST_NAME_WITH_GAME_PUBLISHER; object9.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, value22, [object9]); (require(2) /* metro dependency 2 */).fileFinishedImporting('modules/quests/experiments/index.tsx'); exports.VideoEndCardV2Experiment = value; exports.NewVideoQuestProgressBarStylingExperiment = apexExperiment; exports.DesktopActivityQuestHeaderExperiment = apexExperiment2; exports.AppStoreBottomSheetOverlayFeatureGate = apexExperiment3; exports.QuestReloadVideoOnObscuredExperiment = apexExperiment4; exports.MutedVideoQuestNewDefaultsVariant = object2; exports.MutedVideoQuestNewDefaultsExperiment = apexExperiment5; exports.useQuestOrbsMultiplierMarketing = useQuestOrbsMultiplierMarketing; exports.VideoQuestPlayerRefactorExperiment = apexExperiment6; exports.ComposedQuestPlayerExperiment = apexExperiment7; exports.MobileQuestOrbRewardModalCtaPriorityVariant = object4; exports.useMobileQuestOrbRewardModalCtaPriorityExperiment = useMobileQuestOrbRewardModalCtaPriorityExperiment; exports.MobileQuestHomeRedDotNotificationExperiment = apexExperiment8; exports.QuestHeartbeatExecutableFingerprintExperiment = apexExperiment9; exports.QuestHomeNewLayoutVariant = object6; exports.QuestHomeNewLayout = apexExperiment10; exports.QuestHomeTileRedesignExperiment = apexExperiment11; exports.QuestHomeRemoveExpiredQuestsExperiment = apexExperiment12; exports.BountyStaleRefreshQuestHomeExperiment = apexExperiment13; exports.useShouldRemoveQuestHomeHero = useShouldRemoveQuestHomeHero; exports.QuestHomeLayoutVisualTweakVariant = object8; 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 var object2; const binding = env0_5; const useConfig = binding.useConfig; const enabled = Reflect.apply(useConfig, binding, [{location: a0}]).enabled; const value2 = (require(9502) /* metro dependency 9502: QuestOrbMultiplierHooks */).useQuestOrbMultiplierEligibility(); object2 = {}; const QuestOrbMultiplierEligibilityType = (require(9503) /* metro dependency 9503: QuestOrbMultiplierUtils */).QuestOrbMultiplierEligibilityType; const INELIGIBLE = QuestOrbMultiplierEligibilityType.INELIGIBLE; object2.shouldShowBonusOrbsUX = value2 !== INELIGIBLE && value2 !== QuestOrbMultiplierEligibilityType.CREPE && enabled; const QuestOrbsMultiplier = (require(9512) /* metro dependency 9512: QuestOrbsMultiplier */).QuestOrbsMultiplier; const PREMIUM_TIER_2_MULTIPLIER_PERCENTAGE_POINTS = QuestOrbsMultiplier.PREMIUM_TIER_2_MULTIPLIER_PERCENTAGE_POINTS; object2.multiplier = PREMIUM_TIER_2_MULTIPLIER_PERCENTAGE_POINTS / 100; return object2; } 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 = env0_3; const [property, env0_0] = env0_2(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()); }