/* Metro module 10574; source: modules/quests/native/QuestEmbed.native.tsx; dependencies: [27, 1310, 7093, 6528, 661, 4118, 477, 1244, 7116, 9950, 6531, 4002, 9495, 1581, 10575, 7091, 7110, 7114, 8189, 2] */ function _fun81578(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#81578, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10760:6, offset: 0x01ed4cb0, size: 265 bytes, params: 8, frame: 19 const env0_0 = require; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); const env0_3 = (require(27) /* metro dependency 27 */).Image; const themeStore = importDefault(1310) /* metro dependency 1310: ThemeStore */; const questStore = importDefault(7093) /* metro dependency 7093: QuestStore */; const questConstantsModule = require(6528) /* metro dependency 6528: QuestConstants */; const env0_6 = questConstantsModule.QuestsExperimentLocations; const env0_7 = questConstantsModule.QuestEmbedFallbackReason; const env0_8 = (require(661) /* metro dependency 661: Constants */).ThemeTypes; const env0_9 = (require(4118) /* metro dependency 4118: Constants */).InviteTypes; (require(2) /* metro dependency 2 */).fileFinishedImporting('modules/quests/native/QuestEmbed.native.tsx'); exports.createQuestsEmbed = function({questId, theme, currentUser}) { var buildQuestsEmbedPropsBinding = buildQuestsEmbedProps; var object = {questId: questId}; object.themeColors = importDefault(dependencyMap[18])(theme); object.currentUser = currentUser; return buildQuestsEmbedPropsBinding(object); }; } function buildBaseEmbedProps({titleText, bodyText, themeColors, thumbnailUrl}) { // fn#81579, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10760:244, offset: 0x01ed4db9, size: 266 bytes, params: 2, frame: 16 const baseColors = themeColors.baseColors; const colors = themeColors.colors; const object3 = {}; copyDataProperties(object3, baseColors, undefined); const headerColor = colors.headerColor; object3['headerColor'] = headerColor; object3['titleText'] = titleText; object3['titleColor'] = colors.titleColor; object3['subtitleColor'] = colors.bodyTextColor; object3['bodyTextColor'] = colors.bodyTextColor; object3['thumbnailUrl'] = thumbnailUrl; object3['embedCanBeTapped'] = true; object3['canBeAccepted'] = true; const GUILD = InviteTypes.GUILD; object3['type'] = GUILD; let value = require(477) /* metro dependency 477: PlatformUtils */; value = value.isAndroid(); const object4 = {}; copyDataProperties(object4, object3, headerColor); if (value) { object4['headerText'] = null; object4['subtitle'] = bodyText; } else { object4['headerText'] = undefined; object4['subtitle'] = bodyText; } return object4; } function buildSupportedOnMobileEmbedBodyText({quest, currentUser}) { // fn#81580, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10760:651, offset: 0x01ed4ec3, size: 327 bytes, params: 2, frame: 21 var intl; const expiresAt = quest.config.expiresAt; const Date = global.Date; const date = new Date(); if (expiresAt < date.toISOString()) { intl = (require(1244) /* metro dependency 1244: indexNative */).intl; return intl.formatToPlainString((require(1244) /* metro dependency 1244: indexNative */).t['ge+AJp'], {questName: quest.config.messages.questName}); } const questTaskDetails = (require(7116) /* metro dependency 7116: QuestTaskUtils */).getQuestTaskDetails(quest); const thirdPartyTaskDetails = (require(7116) /* metro dependency 7116: QuestTaskUtils */).getThirdPartyTaskDetails(quest); const questCopyHooksModule = require(9950) /* metro dependency 9950: QuestCopyHooks */; const getQuestsInstructionsToWinReward = questCopyHooksModule.getQuestsInstructionsToWinReward; const object2 = {quest: quest, taskDetails: questTaskDetails}; const EMBED_MOBILE = QuestsExperimentLocations.EMBED_MOBILE; object2.location = EMBED_MOBILE; const QuestContent = (require(6531) /* metro dependency 6531: QuestTypes */).QuestContent; const QUEST_EMBED_MOBILE = QuestContent.QUEST_EMBED_MOBILE; object2.sourceQuestContent = QUEST_EMBED_MOBILE; object2.thirdPartyTaskDetails = thirdPartyTaskDetails ?? undefined; object2.withoutMarkdown = true; object2.currentUser = currentUser; return Reflect.apply(getQuestsInstructionsToWinReward, questCopyHooksModule, [object2]); } function buildQuestsEmbedProps({questId, themeColors, currentUser}) { // fn#81581, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10760:1173, offset: 0x01ed500a, size: 1769 bytes, params: 2, frame: 36 var r19; var r0; var baseEmbedPropsBinding; var moduleValue3; var isShareableQuest; var config; var moduleValue4; var buildBaseEmbedPropsBinding; var object3; const intl = (require(1244) /* metro dependency 1244: indexNative */).intl; const t = (require(1244) /* metro dependency 1244: indexNative */).t; var quest; var colors; var value4; var expiresAt; var date; var value7; var value8; var object4; var formatToPlainString; var EAYZAr; var messages; var moduleValue6; const QuestAssetType = (require(9495) /* metro dependency 9495: AssetUtils */).QuestAssetType; var moduleValue7; var moduleValue8; var object6; const metaQuestUtilsAndroidModule = require(1581) /* metro dependency 1581: MetaQuestUtilsAndroid */; if (metaQuestUtilsAndroidModule.isMetaQuest()) { object3 = {}; buildBaseEmbedPropsBinding = buildBaseEmbedProps; object6 = {}; object6.titleText = intl.string(t['6LxbQM']); object6.bodyText = intl.string(t.CXEb9p); object6.themeColors = themeColors; object6.thumbnailUrl = Image.resolveAssetSource(importDefault(10575) /* metro dependency 10575 */).uri; copyDataProperties(object3, buildBaseEmbedPropsBinding(object6), undefined); object3['acceptLabelText'] = intl.string(t.hvVgAZ); colors = themeColors.colors; object3['acceptLabelBackgroundColor'] = colors.acceptBlurpleLabelBackgroundColor; colors = themeColors.colors; object3['acceptLabelColor'] = colors.acceptLabelGreenColor; return object3; } const questDataUtilsModule = require(7091) /* metro dependency 7091: QuestDataUtils */; const questOrReplacement = questDataUtilsModule.findQuestOrReplacement(questId, QuestStore.quests, QuestStore.excludedQuests); const value3 = QuestStore.excludedQuests.get(questId); if (questOrReplacement != null) { if (questOrReplacement == null) { if (value3 != null) { moduleValue8 = require(7110) /* metro dependency 7110: AnalyticsActions */; moduleValue8.trackQuestEmbedFallbackViewed(questId, QuestEmbedFallbackReason.EXCLUDED_QUEST); buildBaseEmbedPropsBinding = buildBaseEmbedProps; object3 = {}; object3.titleText = intl.string(t.Dd6Daw); object3.bodyText = intl.string(t.ii4mJo); object3.themeColors = themeColors; object3.thumbnailUrl = Image.resolveAssetSource(importDefault(10575) /* metro dependency 10575 */).uri; baseEmbedPropsBinding = buildBaseEmbedPropsBinding(object3); } else { moduleValue7 = require(7110) /* metro dependency 7110: AnalyticsActions */; moduleValue7.trackQuestEmbedFallbackViewed(questId, QuestEmbedFallbackReason.UNKNOWN_QUEST); buildBaseEmbedPropsBinding = buildBaseEmbedProps; object3 = {}; object3.titleText = intl.string(t['rxf+nx']); object3.bodyText = intl.string(t.Ow5AQI); object3.themeColors = themeColors; object3.thumbnailUrl = Image.resolveAssetSource(importDefault(10575) /* metro dependency 10575 */).uri; baseEmbedPropsBinding = buildBaseEmbedPropsBinding(object3); } r0 = baseEmbedPropsBinding; } else { moduleValue3 = require(7114) /* metro dependency 7114: QuestUtils */; isShareableQuest = moduleValue3.isShareableQuest; config = questOrReplacement.config; if (Reflect.apply(isShareableQuest, moduleValue3, [config])) { object3 = {themeColors: themeColors, quest: questOrReplacement, currentUser: currentUser}; themeColors = object3.themeColors; quest = object3.quest; currentUser = object3.currentUser; colors = themeColors.colors; value4 = quest.userStatus?.enrolledAt != null; config = quest.config; expiresAt = config.expiresAt; date = new global.Date(); value7 = expiresAt < date.toISOString(); r19 = (require(4002) /* metro dependency 4002: shared */).isThemeDark(ThemeStore.getState().theme) ? ThemeTypes.DARK : ThemeTypes.LIGHT; value8 = QuestStore.questEnrollmentBlockedUntil != null; object3 = {}; buildBaseEmbedPropsBinding = buildBaseEmbedProps; object4 = {}; formatToPlainString = intl.formatToPlainString; EAYZAr = t.EAYZAr; config = quest.config; messages = config.messages; object4.titleText = Reflect.apply(formatToPlainString, intl, [EAYZAr, {questName: messages.questName}]); config = quest.config; messages = config.messages; object4.subtitle = messages.gamePublisher; object4.bodyText = buildSupportedOnMobileEmbedBodyText({quest: quest, currentUser: currentUser}); object4.themeColors = themeColors; moduleValue6 = require(9495) /* metro dependency 9495: AssetUtils */; object4.thumbnailUrl = moduleValue6.getQuestAsset(quest, QuestAssetType.GAME_TILE, r19).url; copyDataProperties(object3, buildBaseEmbedPropsBinding(object4), undefined); object3['acceptLabelText'] = value4 || value7 ? value7 ? intl.string(t.hvVgAZ) : intl.string(t['th2+0j']) : value8 ? intl.string(t['th2+0j']) : intl.string(t.kUQLMJ); object3['acceptLabelBackgroundColor'] = colors.acceptBlurpleLabelBackgroundColor; colors = themeColors.colors; object3['acceptLabelColor'] = colors.acceptLabelGreenColor; object3['thumbnailCornerRadius'] = 8; r0 = object3; } else { moduleValue4 = require(7110) /* metro dependency 7110: AnalyticsActions */; moduleValue4.trackQuestEmbedFallbackViewed(questId, QuestEmbedFallbackReason.NOT_SHAREABLE_QUEST); buildBaseEmbedPropsBinding = buildBaseEmbedProps; object3 = {}; object3.titleText = intl.string(t.Dd6Daw); object3.bodyText = intl.string(t.NXrP3N); object3.themeColors = themeColors; object3.thumbnailUrl = Image.resolveAssetSource(importDefault(10575) /* metro dependency 10575 */).uri; r0 = buildBaseEmbedPropsBinding(object3); } } } else if (QuestStore.isFetchingCurrentQuests) { r0 = buildBaseEmbedProps({themeColors: themeColors}); } else if (questOrReplacement == null) { if (value3 != null) { moduleValue8 = require(7110) /* metro dependency 7110: AnalyticsActions */; moduleValue8.trackQuestEmbedFallbackViewed(questId, QuestEmbedFallbackReason.EXCLUDED_QUEST); buildBaseEmbedPropsBinding = buildBaseEmbedProps; object3 = {}; object3.titleText = intl.string(t.Dd6Daw); object3.bodyText = intl.string(t.ii4mJo); object3.themeColors = themeColors; object3.thumbnailUrl = Image.resolveAssetSource(importDefault(10575) /* metro dependency 10575 */).uri; baseEmbedPropsBinding = buildBaseEmbedPropsBinding(object3); } else { moduleValue7 = require(7110) /* metro dependency 7110: AnalyticsActions */; moduleValue7.trackQuestEmbedFallbackViewed(questId, QuestEmbedFallbackReason.UNKNOWN_QUEST); buildBaseEmbedPropsBinding = buildBaseEmbedProps; object3 = {}; object3.titleText = intl.string(t['rxf+nx']); object3.bodyText = intl.string(t.Ow5AQI); object3.themeColors = themeColors; object3.thumbnailUrl = Image.resolveAssetSource(importDefault(10575) /* metro dependency 10575 */).uri; baseEmbedPropsBinding = buildBaseEmbedPropsBinding(object3); } r0 = baseEmbedPropsBinding; } else { moduleValue3 = require(7114) /* metro dependency 7114: QuestUtils */; isShareableQuest = moduleValue3.isShareableQuest; config = questOrReplacement.config; if (Reflect.apply(isShareableQuest, moduleValue3, [config])) { object3 = {themeColors: themeColors, quest: questOrReplacement, currentUser: currentUser}; themeColors = object3.themeColors; quest = object3.quest; currentUser = object3.currentUser; colors = themeColors.colors; value4 = quest.userStatus?.enrolledAt != null; config = quest.config; expiresAt = config.expiresAt; date = new global.Date(); value7 = expiresAt < date.toISOString(); r19 = (require(4002) /* metro dependency 4002: shared */).isThemeDark(ThemeStore.getState().theme) ? ThemeTypes.DARK : ThemeTypes.LIGHT; value8 = QuestStore.questEnrollmentBlockedUntil != null; object3 = {}; buildBaseEmbedPropsBinding = buildBaseEmbedProps; object4 = {}; formatToPlainString = intl.formatToPlainString; EAYZAr = t.EAYZAr; config = quest.config; messages = config.messages; object4.titleText = Reflect.apply(formatToPlainString, intl, [EAYZAr, {questName: messages.questName}]); config = quest.config; messages = config.messages; object4.subtitle = messages.gamePublisher; object4.bodyText = buildSupportedOnMobileEmbedBodyText({quest: quest, currentUser: currentUser}); object4.themeColors = themeColors; moduleValue6 = require(9495) /* metro dependency 9495: AssetUtils */; object4.thumbnailUrl = moduleValue6.getQuestAsset(quest, QuestAssetType.GAME_TILE, r19).url; copyDataProperties(object3, buildBaseEmbedPropsBinding(object4), undefined); object3['acceptLabelText'] = value4 || value7 ? value7 ? intl.string(t.hvVgAZ) : intl.string(t['th2+0j']) : value8 ? intl.string(t['th2+0j']) : intl.string(t.kUQLMJ); object3['acceptLabelBackgroundColor'] = colors.acceptBlurpleLabelBackgroundColor; colors = themeColors.colors; object3['acceptLabelColor'] = colors.acceptLabelGreenColor; object3['thumbnailCornerRadius'] = 8; r0 = object3; } else { moduleValue4 = require(7110) /* metro dependency 7110: AnalyticsActions */; moduleValue4.trackQuestEmbedFallbackViewed(questId, QuestEmbedFallbackReason.NOT_SHAREABLE_QUEST); buildBaseEmbedPropsBinding = buildBaseEmbedProps; object3 = {}; object3.titleText = intl.string(t.Dd6Daw); object3.bodyText = intl.string(t.NXrP3N); object3.themeColors = themeColors; object3.thumbnailUrl = Image.resolveAssetSource(importDefault(10575) /* metro dependency 10575 */).uri; r0 = buildBaseEmbedPropsBinding(object3); } } return r0; }