1147 lines
63 KiB
TypeScript
1147 lines
63 KiB
TypeScript
/* Metro module 16218; source: modules/quests/managers/QuestProgressManager.tsx; dependencies: [57, 5, 6, 7, 15, 17, 18, 1378, 8065, 4266, 4492, 4267, 4300, 7093, 15385, 6528, 672, 7099, 7091, 9511, 9524, 6529, 9484, 6531, 7120, 4484, 4483, 6535, 7116, 4285, 1360, 4482, 7114, 4860, 2] */
|
|
import Module00005 from '../../../by-id/module-00005.js'; /* Metro dependency 5 */
|
|
import ClassCallCheck from '../../../by-id/module-00006-ClassCallCheck.js'; /* Metro dependency 6 */
|
|
import CreateClass from '../../../by-id/module-00007-CreateClass.js'; /* Metro dependency 7 */
|
|
import PossibleConstructorReturn from '../../../by-id/module-00015-PossibleConstructorReturn.js'; /* Metro dependency 15 */
|
|
import Module00017 from '../../../by-id/module-00017.js'; /* Metro dependency 17 */
|
|
import Inherits from '../../../by-id/module-00018-Inherits.js'; /* Metro dependency 18 */
|
|
import Module00057 from '../../../by-id/module-00057.js'; /* Metro dependency 57 */
|
|
import Durations from '../../../utils/Durations.tsx'; /* Metro dependency 672 */
|
|
import EmbeddedActivitiesStore from '../../activities/EmbeddedActivitiesStore.tsx'; /* Metro dependency 1378 */
|
|
import RunningGameStoreNative from '../../game_detection/RunningGameStore.native.tsx'; /* Metro dependency 4266 */
|
|
import DetectableGameStore from '../../../stores/DetectableGameStore.tsx'; /* Metro dependency 4267 */
|
|
import SortedVoiceStateStore from '../../../stores/views/SortedVoiceStateStore.tsx'; /* Metro dependency 4300 */
|
|
import ApplicationStreamingStore from '../../../stores/ApplicationStreamingStore.tsx'; /* Metro dependency 4492 */
|
|
import QuestStore from '../QuestStore.tsx'; /* Metro dependency 7093 */
|
|
import FramesStore from '../../frames/FramesStore.tsx'; /* Metro dependency 8065 */
|
|
import UnenrolledActivityQuestStore from '../UnenrolledActivityQuestStore.tsx'; /* Metro dependency 15385 */
|
|
import * as FileImportTrackerModule from '../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
|
|
import * as GlobalUtilsModule from '../../../utils/GlobalUtils.tsx'; /* Metro dependency 1360 */
|
|
import * as GameAnalyticsUtilsModule from '../../game_detection/GameAnalyticsUtils.tsx'; /* Metro dependency 4482 */
|
|
import * as QuestConstantsModule from '../QuestConstants.tsx'; /* Metro dependency 6528 */
|
|
import * as QuestTypesModule from '../QuestTypes.tsx'; /* Metro dependency 6531 */
|
|
import * as FirstPartyQuestTaskTypesModule from '../../../external/discord_common/js/shared/shared-constants/FirstPartyQuestTaskTypes.tsx'; /* Metro dependency 6535 */
|
|
import * as QuestDataUtilsModule from '../utils/QuestDataUtils.tsx'; /* Metro dependency 7091 */
|
|
import * as QuestTaskUtilsModule from '../utils/QuestTaskUtils.tsx'; /* Metro dependency 7116 */
|
|
import * as ExperimentsModule from '../experiments/index.tsx'; /* Metro dependency 9511 */
|
|
import * as QuestMatchingUtilsModule from '../utils/QuestMatchingUtils.tsx'; /* Metro dependency 9524 */
|
|
|
|
function _fun125360(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#125360, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:6, offset: 0x025d60ea, size: 584 bytes, params: 8, frame: 20
|
|
const env0_0 = require;
|
|
const _arrayLikeToArray_125366 = function(a0, a1) {
|
|
var r0;
|
|
var r1;
|
|
var r2;
|
|
var value3;
|
|
var length;
|
|
var value5;
|
|
var value = undefined;
|
|
var value2 = value == null;
|
|
reducibleJoin2: while (true) {
|
|
if (value2) {
|
|
r0 = value2;
|
|
break reducibleJoin2;
|
|
}
|
|
value3 = value > a0.length;
|
|
r0 = value3;
|
|
break reducibleJoin2;
|
|
}
|
|
reducibleJoin4: while (true) {
|
|
if (r0) {
|
|
length = a0.length;
|
|
r1 = length;
|
|
break reducibleJoin4;
|
|
}
|
|
r1 = value;
|
|
break reducibleJoin4;
|
|
}
|
|
value = (0, global.Array)(r1);
|
|
var value4 = 0;
|
|
if (value4 < r1) {
|
|
r2 = value4;
|
|
reducibleLoop5: while (true) {
|
|
value[r2] = a0[r2];
|
|
value5 = typeof r2 === 'bigint' ? r2 + 1n : +r2 + 1;
|
|
if (value5 < r1) {
|
|
r2 = value5;
|
|
continue reducibleLoop5;
|
|
}
|
|
break reducibleLoop5;
|
|
}
|
|
}
|
|
return value;
|
|
};
|
|
const Object = global.Object;
|
|
Object.defineProperty(exports, '__esModule', {value: true});
|
|
Module00057;
|
|
let value = QuestConstantsModule;
|
|
const env0_17 = value.DISCORD_APPLICATION_ID;
|
|
const QuestsExperimentLocations = value.QuestsExperimentLocations;
|
|
let Millis = (importDefault(672) /* metro dependency 672: Durations */).Millis;
|
|
const MINUTE = Millis.MINUTE;
|
|
const env0_19 = 1 * MINUTE;
|
|
Millis = (importDefault(672) /* metro dependency 672: Durations */).Millis;
|
|
const SECOND = Millis.SECOND;
|
|
const env0_20 = 1 * SECOND;
|
|
value = require(7099) /* metro dependency 7099: getQuestLogger */;
|
|
const getQuestLogger = value.getQuestLogger;
|
|
const QUESTS_MANAGER = QuestsExperimentLocations.QUESTS_MANAGER;
|
|
const env0_21 = Reflect.apply(getQuestLogger, value, [{location: QUESTS_MANAGER}]);
|
|
value = importDefault(4860) /* metro dependency 4860: AutomaticLifecycleManager */;
|
|
value = _fun125372(value);
|
|
value = new value();
|
|
(FileImportTrackerModule).fileFinishedImporting('modules/quests/managers/QuestProgressManager.tsx');
|
|
exports.default = value;
|
|
function _isNativeReflectConstruct_125361() { // fn#125361, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:322, offset: 0x025d6332, size: 98 bytes, params: 1, frame: 18
|
|
var Boolean;
|
|
var prototype;
|
|
var valueOf;
|
|
var call;
|
|
var Reflect;
|
|
var construct;
|
|
var closure;
|
|
var value;
|
|
var error;
|
|
try {
|
|
Boolean = global.Boolean;
|
|
prototype = Boolean.prototype;
|
|
valueOf = prototype.valueOf;
|
|
call = valueOf.call;
|
|
Reflect = global.Reflect;
|
|
construct = Reflect.construct;
|
|
Boolean = global.Boolean;
|
|
closure = function() {
|
|
};
|
|
value = Reflect.apply(construct, Reflect, [Boolean, [], closure]);
|
|
value = Reflect.apply(call, valueOf, [value]);
|
|
var result = !value;
|
|
} catch (error) {
|
|
}
|
|
return (_isNativeReflectConstruct_125361_isNativeReflectConstruct = function() {
|
|
return !!result;
|
|
})();
|
|
}
|
|
|
|
function _createForOfIteratorHelperLoose_125364(a0, a1) { // fn#125364, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:515, offset: 0x025d6394, size: 372 bytes, params: 3, frame: 20
|
|
var r6;
|
|
var r9;
|
|
var r5;
|
|
var value3;
|
|
var regexp;
|
|
const env0_0 = a0;
|
|
const Symbol = global.Symbol;
|
|
let value = typeof Symbol !== 'undefined';
|
|
let r1 = value && a0[global.Symbol.iterator];
|
|
r1 = !r1 ? a0['@@iterator'] : r1;
|
|
if (r1) {
|
|
value = r1.call(a0);
|
|
return value.next.bind(value);
|
|
}
|
|
const Array = global.Array;
|
|
if (Array.isArray(a0)) {
|
|
if (r1) {
|
|
}
|
|
return _fun125365;
|
|
}
|
|
value = undefined;
|
|
if (a0) {
|
|
if (typeof a0 === 'string') {
|
|
value = _arrayLikeToArray_125366(a0, value);
|
|
r5 = value;
|
|
} else {
|
|
value3 = ({}).toString.call(a0).slice(8, -1);
|
|
r6 = value3 === 'Object' && a0.constructor;
|
|
r9 = r6 ? a0.constructor.name : value3;
|
|
if (r9 === 'Map') {
|
|
r6 = global.Array.from(a0);
|
|
} else if (r9 === 'Set') {
|
|
r6 = global.Array.from(a0);
|
|
} else if (r9 === 'Arguments') {
|
|
value = _arrayLikeToArray_125366(a0, value);
|
|
r6 = value;
|
|
} else {
|
|
regexp = RegExp('^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$', '');
|
|
if (regexp.test(r9)) {
|
|
value = _arrayLikeToArray_125366(a0, value);
|
|
r6 = value;
|
|
} else {
|
|
r6 = value;
|
|
}
|
|
}
|
|
r5 = r6;
|
|
}
|
|
} else {
|
|
r5 = value;
|
|
}
|
|
if (r5) {
|
|
if (r5) {
|
|
}
|
|
return _fun125365;
|
|
}
|
|
const TypeError = global.TypeError;
|
|
throw new TypeError('Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.');
|
|
function _fun125365() { // fn#125365, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:1086, offset: 0x00c39d73, size: 69 bytes, params: 1, frame: 5
|
|
return env0_1 >= env0_0.length ? {done: true} : {done: false,
|
|
value: env0_0[typeof env0_1 === 'bigint' ? env0_1 : +env0_1]};
|
|
}
|
|
|
|
}
|
|
|
|
function isQuestProgressable(a0) { // fn#125367, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:1539, offset: 0x025d6508, size: 101 bytes, params: 2, frame: 12
|
|
let value = QuestDataUtilsModule;
|
|
value = value.isQuestExpired(a0);
|
|
return !value && a0.userStatus != null && a0.userStatus.enrolledAt != null && a0.userStatus.completedAt == null;
|
|
}
|
|
|
|
function handleEmbeddedActivityLaunchSuccess(a0) { // fn#125368, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:1689, offset: 0x025d656d, size: 359 bytes, params: 2, frame: 20
|
|
var r4;
|
|
var value4;
|
|
var config;
|
|
var features;
|
|
var includes;
|
|
var QuestVariants;
|
|
var MOBILE_ACTIVITY_QUEST;
|
|
var value5;
|
|
var enrollInQuest;
|
|
var id;
|
|
const QuestContent = (QuestTypesModule).QuestContent;
|
|
var RUNNING_ACTIVITY;
|
|
let value = environment;
|
|
const unenrolledActivityQuestStoreBinding = UnenrolledActivityQuestStore;
|
|
const getState = unenrolledActivityQuestStoreBinding.getState;
|
|
const autoEnroll = Reflect.apply(getState, unenrolledActivityQuestStoreBinding, []).autoEnroll;
|
|
const DesktopActivityQuestHeaderExperiment = (ExperimentsModule).DesktopActivityQuestHeaderExperiment;
|
|
const getConfig = DesktopActivityQuestHeaderExperiment.getConfig;
|
|
let object = {};
|
|
const QUEST_ACTIVITY_HEADER = QuestsExperimentLocations.QUEST_ACTIVITY_HEADER;
|
|
object.location = QUEST_ACTIVITY_HEADER;
|
|
Reflect.apply(getConfig, DesktopActivityQuestHeaderExperiment, [object]).enabled;
|
|
const quests = QuestStore.quests;
|
|
const _createForOfIteratorHelperLoose_125364Binding = _createForOfIteratorHelperLoose_125364;
|
|
const getEligibleQuestsForApplicationId = QuestMatchingUtilsModule.getEligibleQuestsForApplicationId;
|
|
const value2 = _createForOfIteratorHelperLoose_125364Binding(Reflect.apply(getEligibleQuestsForApplicationId,
|
|
QuestMatchingUtilsModule, [quests, a0]));
|
|
const value3 = value2();
|
|
let done = value3.done;
|
|
if (!done) {
|
|
r4 = value3;
|
|
reducibleLoop1: while (true) {
|
|
value4 = r4.value;
|
|
if (autoEnroll) {
|
|
config = value4.config;
|
|
features = config.features;
|
|
includes = features.includes;
|
|
QuestVariants = (require(6529) /* metro dependency 6529: QuestVariants */).QuestVariants;
|
|
MOBILE_ACTIVITY_QUEST = QuestVariants.MOBILE_ACTIVITY_QUEST;
|
|
reducibleJoin3: while (true) {
|
|
if (Reflect.apply(includes, features, [MOBILE_ACTIVITY_QUEST])) {
|
|
value = require(9484) /* metro dependency 9484: QuestActionCreators */;
|
|
enrollInQuest = value.enrollInQuest;
|
|
id = value4.id;
|
|
object = {};
|
|
RUNNING_ACTIVITY = QuestContent.RUNNING_ACTIVITY;
|
|
object.questContent = RUNNING_ACTIVITY;
|
|
object.questContentCTA = (require(7120) /* metro dependency 7120: AnalyticsTypes */).QuestContentCTA.START_QUEST;
|
|
RUNNING_ACTIVITY = QuestContent.RUNNING_ACTIVITY;
|
|
object.sourceQuestContent = RUNNING_ACTIVITY;
|
|
return Reflect.apply(enrollInQuest, value, [id, object]);
|
|
}
|
|
break reducibleJoin3;
|
|
}
|
|
}
|
|
value5 = value2();
|
|
done = value5.done;
|
|
if (done) {
|
|
return undefined;
|
|
}
|
|
r4 = value5;
|
|
continue reducibleLoop1;
|
|
}
|
|
}
|
|
}
|
|
|
|
function isQuestRobloxRelated(a0, a1) { // fn#125369, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:2287, offset: 0x025d66d4, size: 79 bytes, params: 3, frame: 14
|
|
var r1;
|
|
var r0;
|
|
let value = a1 != null;
|
|
if (value) {
|
|
value = a0.some(function(a0) {
|
|
var ROBLOX_APPLICATION_ID = require(dependencyMap[25]).ROBLOX_APPLICATION_ID;
|
|
return a0 === ROBLOX_APPLICATION_ID;
|
|
});
|
|
if (value) {
|
|
value = require(4483) /* metro dependency 4483: RobloxSubgameUtils */;
|
|
value = value.isRobloxSubgame(a1);
|
|
r1 = value;
|
|
} else {
|
|
r1 = value;
|
|
}
|
|
r0 = r1;
|
|
} else {
|
|
r0 = value;
|
|
}
|
|
return r0;
|
|
}
|
|
|
|
function manualHeartbeatInitializationQuest(a0) { // fn#125371, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:2419, offset: 0x025d674b, size: 73 bytes, params: 2, frame: 14
|
|
return a0 != null && a0.config.features.includes((require(6529) /* metro dependency 6529: QuestVariants */).QuestVariants.MANUAL_HEARTBEAT_INITIALIZATION);
|
|
}
|
|
|
|
function _fun125372(a0) { // fn#125372, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:2572, offset: 0x025d6794, size: 180 bytes, params: 2, frame: 16
|
|
const QuestProgressManager2 = QuestProgressManager;
|
|
Inherits(QuestProgressManager2, a0);
|
|
return CreateClass(QuestProgressManager2, [{key: 'syncHeartbeats', value: function(a0, a1, a2) {
|
|
}}, {key: 'getActivelyProgressingQuests', value: value_125402}, {key: 'getActivelyProgressingPlayOnDesktopQuests',
|
|
value: value_125403}, {key: 'getActivelyProgressingStreamOnDesktopQuests', value: value_125406},
|
|
{key: 'getActivelyProgressingActivityQuests', value: value_125407}]);
|
|
function QuestProgressManager(a0) { // fn#125373, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:2584, offset: 0x025d6848, size: 608 bytes, params: 2, frame: 22
|
|
var r0;
|
|
var Reflect;
|
|
let value = copyRestArgs(0, undefined);
|
|
let binding = env1_4;
|
|
binding(this, QuestProgressManager);
|
|
let object = [];
|
|
arraySpread(object, value, 0, undefined);
|
|
value = env1_7(QuestProgressManager);
|
|
binding = env1_6;
|
|
if (_isNativeReflectConstruct_125361()) {
|
|
Reflect = global.Reflect;
|
|
value = Reflect.construct(value, object, env1_7(this).constructor);
|
|
r0 = value;
|
|
} else {
|
|
value = value.apply(this, object);
|
|
r0 = value;
|
|
}
|
|
value = binding(this, r0);
|
|
object = {};
|
|
const FirstPartyQuestTaskTypes = (FirstPartyQuestTaskTypesModule).FirstPartyQuestTaskTypes;
|
|
const PLAY_ON_DESKTOP = FirstPartyQuestTaskTypes.PLAY_ON_DESKTOP;
|
|
let Map = global.Map;
|
|
const value4 = Object.create(Map.prototype, {constructor: {value: Map}});
|
|
let map = new Map();
|
|
object[PLAY_ON_DESKTOP] = map instanceof Object ? map : value4;
|
|
const STREAM_ON_DESKTOP = FirstPartyQuestTaskTypes.STREAM_ON_DESKTOP;
|
|
Map = global.Map;
|
|
const value6 = Object.create(Map.prototype, {constructor: {value: Map}});
|
|
map = new Map();
|
|
object[STREAM_ON_DESKTOP] = map instanceof Object ? map : value6;
|
|
let PLAY_ACTIVITY = FirstPartyQuestTaskTypes.PLAY_ACTIVITY;
|
|
Map = global.Map;
|
|
const value8 = Object.create(Map.prototype, {constructor: {value: Map}});
|
|
map = new Map();
|
|
object[PLAY_ACTIVITY] = map instanceof Object ? map : value8;
|
|
value.heartbeats = object;
|
|
value.calculateHeartbeatDurationMs = calculateHeartbeatDurationMs;
|
|
value.initiateHeartbeat = initiateHeartbeat;
|
|
value.terminateHeartbeat = terminateHeartbeat;
|
|
value.handleSendHeartbeatSuccess = handleSendHeartbeatSuccess;
|
|
value.handleSendHeartbeatFailure = handleSendHeartbeatFailure;
|
|
object = {QUESTS_FETCH_CURRENT_QUESTS_SUCCESS: QUESTS_FETCH_CURRENT_QUESTS_SUCCESS_125380,
|
|
QUESTS_ENROLL_SUCCESS: QUESTS_ENROLL_SUCCESS_125381};
|
|
var handleSendHeartbeatSuccess = value.handleSendHeartbeatSuccess;
|
|
object.QUESTS_SEND_HEARTBEAT_SUCCESS = handleSendHeartbeatSuccess;
|
|
var handleSendHeartbeatFailure = value.handleSendHeartbeatFailure;
|
|
object.QUESTS_SEND_HEARTBEAT_FAILURE = handleSendHeartbeatFailure;
|
|
object.QUESTS_PREVIEW_UPDATE_SUCCESS = QUESTS_PREVIEW_UPDATE_SUCCESS_125383;
|
|
object.RUNNING_GAMES_CHANGE = RUNNING_GAMES_CHANGE_125384;
|
|
object.RUNNING_NON_GAMES_CHANGE = RUNNING_NON_GAMES_CHANGE;
|
|
object.STREAM_START = STREAM_START_125386;
|
|
object.STREAM_CREATE = STREAM_CREATE_125387;
|
|
object.STREAM_CLOSE = STREAM_CLOSE_125388;
|
|
object.PASSIVE_UPDATE_V2 = PASSIVE_UPDATE_V2_125389;
|
|
object.VOICE_STATE_UPDATES = VOICE_STATE_UPDATES_125390;
|
|
object.EMBEDDED_ACTIVITY_LAUNCH_SUCCESS = function({applicationId}) {
|
|
handleEmbeddedActivityLaunchSuccess(applicationId);
|
|
};
|
|
const env0_1 = env1_3(_fun125393);
|
|
object.FRAME_LAUNCH = FRAME_LAUNCH_125395;
|
|
object.FRAME_STOP = FRAME_STOP_125396;
|
|
object.EMBEDDED_ACTIVITY_UPDATE_V2 = EMBEDDED_ACTIVITY_UPDATE_V2_125397;
|
|
object.QUEST_APPLICATION_START_TIMER = function({questId}) {
|
|
var binding = questId;
|
|
var PLAY_ACTIVITY = require(dependencyMap[27]).FirstPartyQuestTaskTypes.PLAY_ACTIVITY;
|
|
binding.syncHeartbeats([PLAY_ACTIVITY], 'QUEST_APPLICATION_START_TIMER', _fun125400);
|
|
};
|
|
value.actions = object;
|
|
return value;
|
|
function calculateHeartbeatDurationMs(a0) { // fn#125374, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:3061, owner: QuestProgressManager.calculateHeartbeatDurationMs, offset: 0x025d6aa8, size: 218 bytes, params: 2, frame: 17
|
|
const value = environment.__proto__.__proto__;
|
|
const value2 = QuestStore.quests.get(a0);
|
|
if (value2 == null) {
|
|
return env2_19;
|
|
}
|
|
if (value2.config == null) {
|
|
return env2_19;
|
|
}
|
|
const userStatus = value2.userStatus;
|
|
if (userStatus == null) {
|
|
return env2_19;
|
|
}
|
|
const getQuestTaskDetails = QuestTaskUtilsModule.getQuestTaskDetails;
|
|
const FirstPartyQuestTaskTypesSets = (FirstPartyQuestTaskTypesModule).FirstPartyQuestTaskTypesSets;
|
|
const DESKTOP = FirstPartyQuestTaskTypesSets.DESKTOP;
|
|
const {progressSeconds, targetSeconds} = Reflect.apply(getQuestTaskDetails, QuestTaskUtilsModule, [value2, DESKTOP]);
|
|
const Math = global.Math;
|
|
const max = Math.max;
|
|
const value4 = targetSeconds - progressSeconds;
|
|
const Millis = (Durations).Millis;
|
|
const SECOND = Millis.SECOND;
|
|
const value5 = Reflect.apply(max, Math, [0, value4 * SECOND]);
|
|
return value5 <= env2_19 ? value5 + env2_20 : env2_19;
|
|
}
|
|
|
|
function initiateHeartbeat(a0, a1, a2) { // fn#125375, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:3349, owner: QuestProgressManager.initiateHeartbeat, offset: 0x025d6b82, size: 161 bytes, params: 4, frame: 15
|
|
var maybeSendHeartbeat2;
|
|
const env0_0 = a0;
|
|
const env0_1 = a1;
|
|
const env0_2 = a2;
|
|
if (env0_0.heartbeats[a1].has(a0)) {
|
|
env2_21.log('~ initiateHeartbeat -> Heartbeat already initiated for questId: ' + a0);
|
|
} else {
|
|
maybeSendHeartbeat2 = maybeSendHeartbeat;
|
|
env2_21.log('~ initiateHeartbeat -> Initiating heartbeat for Quest ' + a0);
|
|
maybeSendHeartbeat2();
|
|
}
|
|
function maybeSendHeartbeat() { // fn#125376, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:3499, owner: QuestProgressManager.initiateHeartbeat.maybeSendHeartbeat, offset: 0x025d6c23, size: 724 bytes, params: 1, frame: 24
|
|
var r8;
|
|
var r6;
|
|
var r7;
|
|
var log;
|
|
var value5;
|
|
var value6;
|
|
var value7;
|
|
var QuestHeartbeatExecutableFingerprintExperiment;
|
|
var binding3;
|
|
var currentUserActiveStream;
|
|
var value9;
|
|
var binding4;
|
|
var moduleValue3;
|
|
var calculateHeartbeatDurationMs;
|
|
var binding5;
|
|
var window;
|
|
var binding6;
|
|
let value = environment.__proto__;
|
|
let binding = env1_0;
|
|
const activelyProgressingQuests = binding.getActivelyProgressingQuests(require);
|
|
if (activelyProgressingQuests.has(env0_0)) {
|
|
value5 = activelyProgressingQuests.get(env0_0);
|
|
value6 = undefined;
|
|
r8 = (value5 == null ? value6 : value5.applicationId) ?? (importDefault == null ? value6 : importDefault.applicationId);
|
|
value7 = environment.__proto__.__proto__.__proto__;
|
|
QuestHeartbeatExecutableFingerprintExperiment = (require(9511) /* metro dependency 9511: experiments */).QuestHeartbeatExecutableFingerprintExperiment;
|
|
r6 = QuestHeartbeatExecutableFingerprintExperiment.getConfig({location: QuestsExperimentLocations.QUESTS_MANAGER}).enabled ? value5 == null ? value6 : value5.executableFingerprint : value6;
|
|
r7 = (value5 == null ? value6 : value5.executablePath) ?? (importDefault == null ? value6 : importDefault.executablePath);
|
|
if (require === (require(6535) /* metro dependency 6535: FirstPartyQuestTaskTypes */).FirstPartyQuestTaskTypes.STREAM_ON_DESKTOP) {
|
|
currentUserActiveStream = ApplicationStreamingStore.getCurrentUserActiveStream();
|
|
if (currentUserActiveStream == null) {
|
|
binding = env3_21;
|
|
log = binding.log;
|
|
binding6 = env0_0;
|
|
Reflect.apply(log, binding,
|
|
['~ initiateHeartbeat -> Attempted to beat for stream quest but no active stream, terminating heartbeat for questId: ' + binding6]);
|
|
binding = env1_0;
|
|
binding.terminateHeartbeat(binding6, require);
|
|
return value6;
|
|
}
|
|
value9 = (require(4285) /* metro dependency 4285: StreamKeyUtils */).encodeStreamKey(currentUserActiveStream);
|
|
binding = env3_21;
|
|
log = binding.log;
|
|
binding4 = env0_0;
|
|
Reflect.apply(log, binding, ['~ initiateHeartbeat -> Sending heartbeat for questId: ' + binding4]);
|
|
moduleValue3 = require(9484) /* metro dependency 9484: QuestActionCreators */;
|
|
moduleValue3.sendHeartbeat({questId: binding4, streamKey: value9, applicationId: r8, executablePath: r7,
|
|
executableFingerprint: r6});
|
|
binding = env1_0;
|
|
calculateHeartbeatDurationMs = binding.calculateHeartbeatDurationMs;
|
|
binding5 = env0_0;
|
|
value = Reflect.apply(calculateHeartbeatDurationMs, binding, [binding5]);
|
|
window = global.window;
|
|
value = window.setTimeout(maybeSendHeartbeat, value);
|
|
binding = Module00005;
|
|
binding.set(binding5, value);
|
|
return undefined;
|
|
}
|
|
binding = env3_21;
|
|
log = binding.log;
|
|
binding3 = env0_0;
|
|
Reflect.apply(log, binding, ['~ initiateHeartbeat -> Sending heartbeat for questId: ' + binding3]);
|
|
(require(9484) /* metro dependency 9484: QuestActionCreators */).sendHeartbeat({questId: binding3,
|
|
applicationId: r8, executablePath: r7, executableFingerprint: r6});
|
|
binding = env1_0;
|
|
calculateHeartbeatDurationMs = binding.calculateHeartbeatDurationMs;
|
|
binding5 = env0_0;
|
|
value = Reflect.apply(calculateHeartbeatDurationMs, binding, [binding5]);
|
|
window = global.window;
|
|
value = window.setTimeout(maybeSendHeartbeat, value);
|
|
binding = Module00005;
|
|
binding.set(binding5, value);
|
|
} else {
|
|
binding = env3_21;
|
|
log = binding.log;
|
|
var binding2 = env0_0;
|
|
Reflect.apply(log, binding,
|
|
['~ initiateHeartbeat -> Quest ' + binding2 + ' is no longer actively progressing, terminating heartbeat']);
|
|
binding = env1_0;
|
|
binding.terminateHeartbeat(binding2, require);
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
function terminateHeartbeat(a0, a1) { // fn#125377, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:4870, owner: QuestProgressManager.terminateHeartbeat, offset: 0x025d6ef7, size: 240 bytes, params: 3, frame: 19
|
|
var value3;
|
|
const property = env0_0.heartbeats[a1];
|
|
const value = environment.__proto__.__proto__;
|
|
const quests = QuestStore.quests;
|
|
const value2 = property.get(a0);
|
|
if (value2 != null) {
|
|
env2_21.log('~ terminateHeartbeat -> Terminating heartbeat for questId: ' + a0);
|
|
global.window.clearTimeout(value2);
|
|
property.delete(a0);
|
|
value3 = quests.get(a0);
|
|
if (value3 != null && isQuestProgressable(value3)) {
|
|
env2_21.log('~ terminateHeartbeat -> Sending terminal heartbeat for questId: ' + a0);
|
|
(require(9484) /* metro dependency 9484: QuestActionCreators */).sendHeartbeat({questId: a0,
|
|
terminal: true});
|
|
}
|
|
}
|
|
}
|
|
|
|
function handleSendHeartbeatSuccess({questId, userStatus}) { // fn#125378, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:5250, owner: QuestProgressManager.handleSendHeartbeatSuccess, offset: 0x025d6fe7, size: 199 bytes, params: 2, frame: 18
|
|
var r1;
|
|
var Object;
|
|
var keys;
|
|
var heartbeats;
|
|
var value2;
|
|
var length;
|
|
var value3;
|
|
var property;
|
|
var terminateHeartbeat;
|
|
var value4;
|
|
let binding = env2_21;
|
|
let log = binding.log;
|
|
let HermesInternal = global.HermesInternal;
|
|
Reflect.apply(log, binding, ['~ handleSendHeartbeatSuccess -> Heartbeat succeeded for questId: ' + questId + ')']);
|
|
reducibleJoin3: while (true) {
|
|
if (userStatus.completedAt == null) {
|
|
break reducibleJoin3;
|
|
}
|
|
binding = env2_21;
|
|
log = binding.log;
|
|
HermesInternal = global.HermesInternal;
|
|
concat = HermesInternal.concat;
|
|
Reflect.apply(log, binding,
|
|
['~ handleSendHeartbeatSuccess -> Quest ' + questId + ' completed, terminating any heartbeats for it']);
|
|
Object = global.Object;
|
|
keys = Object.keys;
|
|
value = environment;
|
|
heartbeats = env0_0.heartbeats;
|
|
value2 = Reflect.apply(keys, Object, [heartbeats]);
|
|
length = value2.length;
|
|
value3 = 0;
|
|
if (!(value3 < length)) {
|
|
break reducibleJoin3;
|
|
}
|
|
r1 = value3;
|
|
reducibleLoop2: while (true) {
|
|
property = value2[r1];
|
|
binding = env0_0;
|
|
terminateHeartbeat = binding.terminateHeartbeat;
|
|
Reflect.apply(terminateHeartbeat, binding, [questId, property]);
|
|
value4 = typeof r1 === 'bigint' ? r1 + 1n : +r1 + 1;
|
|
length = value2.length;
|
|
if (value4 < length) {
|
|
r1 = value4;
|
|
continue reducibleLoop2;
|
|
}
|
|
break reducibleJoin3;
|
|
}
|
|
}
|
|
}
|
|
|
|
function handleSendHeartbeatFailure({questId}) { // fn#125379, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:5605, owner: QuestProgressManager.handleSendHeartbeatFailure, offset: 0x025d70ae, size: 55 bytes, params: 2, frame: 13
|
|
env2_21.log('~ handleSendHeartbeatFailure -> Heartbeat failed for questId: ' + questId);
|
|
}
|
|
|
|
function QuestProgressManagerQUESTS_FETCH_CURRENT_QUESTS_SUCCESS() { // fn#125380, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:5745, owner: QuestProgressManager.QUESTS_FETCH_CURRENT_QUESTS_SUCCESS, offset: 0x025d70e5, size: 95 bytes, params: 1, frame: 17
|
|
const binding = env0_0;
|
|
const syncHeartbeats = binding.syncHeartbeats;
|
|
const {PLAY_ON_DESKTOP,
|
|
STREAM_ON_DESKTOP} = (FirstPartyQuestTaskTypesModule).FirstPartyQuestTaskTypes;
|
|
return Reflect.apply(syncHeartbeats, binding, [[PLAY_ON_DESKTOP, STREAM_ON_DESKTOP],
|
|
'QUESTS_FETCH_CURRENT_QUESTS_SUCCESS']);
|
|
}
|
|
|
|
function QuestProgressManagerQUESTS_ENROLL_SUCCESS() { // fn#125381, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:5933, owner: QuestProgressManager.QUESTS_ENROLL_SUCCESS, offset: 0x025d7144, size: 130 bytes, params: 1, frame: 18
|
|
const binding = env0_0;
|
|
const syncHeartbeats = binding.syncHeartbeats;
|
|
const {PLAY_ON_DESKTOP, STREAM_ON_DESKTOP,
|
|
PLAY_ACTIVITY} = (FirstPartyQuestTaskTypesModule).FirstPartyQuestTaskTypes;
|
|
return Reflect.apply(syncHeartbeats, binding, [[PLAY_ON_DESKTOP, STREAM_ON_DESKTOP, PLAY_ACTIVITY],
|
|
'QUESTS_ENROLL_SUCCESS', function(a0) {
|
|
return !manualHeartbeatInitializationQuest(a0);
|
|
}]);
|
|
}
|
|
|
|
function QuestProgressManagerQUESTS_PREVIEW_UPDATE_SUCCESS() { // fn#125383, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:6326, owner: QuestProgressManager.QUESTS_PREVIEW_UPDATE_SUCCESS, offset: 0x025d71dc, size: 120 bytes, params: 1, frame: 17
|
|
const binding = env0_0;
|
|
const syncHeartbeats = binding.syncHeartbeats;
|
|
const {PLAY_ON_DESKTOP, STREAM_ON_DESKTOP,
|
|
PLAY_ACTIVITY} = (FirstPartyQuestTaskTypesModule).FirstPartyQuestTaskTypes;
|
|
return Reflect.apply(syncHeartbeats, binding, [[PLAY_ON_DESKTOP, STREAM_ON_DESKTOP, PLAY_ACTIVITY],
|
|
'QUESTS_PREVIEW_UPDATE_SUCCESS']);
|
|
}
|
|
|
|
function QuestProgressManagerRUNNING_GAMES_CHANGE() { // fn#125384, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:6556, owner: QuestProgressManager.RUNNING_GAMES_CHANGE, offset: 0x025d7254, size: 70 bytes, params: 1, frame: 14
|
|
const binding = env0_0;
|
|
const syncHeartbeats = binding.syncHeartbeats;
|
|
const FirstPartyQuestTaskTypes = (FirstPartyQuestTaskTypesModule).FirstPartyQuestTaskTypes;
|
|
const PLAY_ON_DESKTOP = FirstPartyQuestTaskTypes.PLAY_ON_DESKTOP;
|
|
return Reflect.apply(syncHeartbeats, binding, [[PLAY_ON_DESKTOP], 'RUNNING_GAMES_CHANGE']);
|
|
}
|
|
|
|
function RUNNING_NON_GAMES_CHANGE() { // fn#125385, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:6679, owner: QuestProgressManager.RUNNING_NON_GAMES_CHANGE, offset: 0x025d729a, size: 70 bytes, params: 1, frame: 14
|
|
const binding = env0_0;
|
|
const syncHeartbeats = binding.syncHeartbeats;
|
|
const FirstPartyQuestTaskTypes = (FirstPartyQuestTaskTypesModule).FirstPartyQuestTaskTypes;
|
|
const PLAY_ON_DESKTOP = FirstPartyQuestTaskTypes.PLAY_ON_DESKTOP;
|
|
return Reflect.apply(syncHeartbeats, binding, [[PLAY_ON_DESKTOP], 'RUNNING_NON_GAMES_CHANGE']);
|
|
}
|
|
|
|
function QuestProgressManagerSTREAM_START() { // fn#125386, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:6794, owner: QuestProgressManager.STREAM_START, offset: 0x025d72e0, size: 70 bytes, params: 1, frame: 14
|
|
const binding = env0_0;
|
|
const syncHeartbeats = binding.syncHeartbeats;
|
|
const FirstPartyQuestTaskTypes = (FirstPartyQuestTaskTypesModule).FirstPartyQuestTaskTypes;
|
|
const STREAM_ON_DESKTOP = FirstPartyQuestTaskTypes.STREAM_ON_DESKTOP;
|
|
return Reflect.apply(syncHeartbeats, binding, [[STREAM_ON_DESKTOP], 'STREAM_START']);
|
|
}
|
|
|
|
function QuestProgressManagerSTREAM_CREATE() { // fn#125387, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:6900, owner: QuestProgressManager.STREAM_CREATE, offset: 0x025d7326, size: 70 bytes, params: 1, frame: 14
|
|
const binding = env0_0;
|
|
const syncHeartbeats = binding.syncHeartbeats;
|
|
const FirstPartyQuestTaskTypes = (FirstPartyQuestTaskTypesModule).FirstPartyQuestTaskTypes;
|
|
const STREAM_ON_DESKTOP = FirstPartyQuestTaskTypes.STREAM_ON_DESKTOP;
|
|
return Reflect.apply(syncHeartbeats, binding, [[STREAM_ON_DESKTOP], 'STREAM_CREATE']);
|
|
}
|
|
|
|
function QuestProgressManagerSTREAM_CLOSE() { // fn#125388, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:7006, owner: QuestProgressManager.STREAM_CLOSE, offset: 0x025d736c, size: 70 bytes, params: 1, frame: 14
|
|
const binding = env0_0;
|
|
const syncHeartbeats = binding.syncHeartbeats;
|
|
const FirstPartyQuestTaskTypes = (FirstPartyQuestTaskTypesModule).FirstPartyQuestTaskTypes;
|
|
const STREAM_ON_DESKTOP = FirstPartyQuestTaskTypes.STREAM_ON_DESKTOP;
|
|
return Reflect.apply(syncHeartbeats, binding, [[STREAM_ON_DESKTOP], 'STREAM_CLOSE']);
|
|
}
|
|
|
|
function QuestProgressManagerPASSIVE_UPDATE_V2() { // fn#125389, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:7116, owner: QuestProgressManager.PASSIVE_UPDATE_V2, offset: 0x025d73b2, size: 70 bytes, params: 1, frame: 14
|
|
const binding = env0_0;
|
|
const syncHeartbeats = binding.syncHeartbeats;
|
|
const FirstPartyQuestTaskTypes = (FirstPartyQuestTaskTypesModule).FirstPartyQuestTaskTypes;
|
|
const STREAM_ON_DESKTOP = FirstPartyQuestTaskTypes.STREAM_ON_DESKTOP;
|
|
return Reflect.apply(syncHeartbeats, binding, [[STREAM_ON_DESKTOP], 'PASSIVE_UPDATE_V2']);
|
|
}
|
|
|
|
function QuestProgressManagerVOICE_STATE_UPDATES() { // fn#125390, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:7233, owner: QuestProgressManager.VOICE_STATE_UPDATES, offset: 0x025d73f8, size: 70 bytes, params: 1, frame: 14
|
|
const binding = env0_0;
|
|
const syncHeartbeats = binding.syncHeartbeats;
|
|
const FirstPartyQuestTaskTypes = (FirstPartyQuestTaskTypesModule).FirstPartyQuestTaskTypes;
|
|
const STREAM_ON_DESKTOP = FirstPartyQuestTaskTypes.STREAM_ON_DESKTOP;
|
|
return Reflect.apply(syncHeartbeats, binding, [[STREAM_ON_DESKTOP], 'VOICE_STATE_UPDATES']);
|
|
}
|
|
|
|
async function _fun125393({applicationId}) { // fn#125393, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:7446, offset: 0x025d746a, size: 137 bytes, params: 2, frame: 19
|
|
var environment;
|
|
if (true) {
|
|
await undefined;
|
|
if (false) {
|
|
return undefined;
|
|
}
|
|
value = environment.__proto__.__proto__.__proto__;
|
|
await env3_26(applicationId);
|
|
if (false) {
|
|
return undefined;
|
|
}
|
|
var syncHeartbeats = QuestProgressManager.syncHeartbeats;
|
|
var FirstPartyQuestTaskTypes = env3_0(env3_2[27]).FirstPartyQuestTaskTypes;
|
|
var PLAY_ACTIVITY = FirstPartyQuestTaskTypes.PLAY_ACTIVITY;
|
|
Reflect.apply(syncHeartbeats, QuestProgressManager, [[PLAY_ACTIVITY], 'FRAME_LAUNCH', _fun125394]);
|
|
}
|
|
function _fun125394(a0) { // fn#125394, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:7604, offset: 0x025d74f3, size: 22 bytes, params: 2, frame: 11
|
|
return !env4_28(a0);
|
|
}
|
|
|
|
}
|
|
|
|
function QuestProgressManagerFRAME_LAUNCH() { // fn#125395, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:7651, owner: QuestProgressManager.FRAME_LAUNCH, offset: 0x00c3b2ba, size: 30 bytes, params: 1, frame: 13
|
|
return env0_1.apply(this, arguments);
|
|
}
|
|
|
|
function QuestProgressManagerFRAME_STOP() { // fn#125396, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:7706, owner: QuestProgressManager.FRAME_STOP, offset: 0x025d7509, size: 70 bytes, params: 1, frame: 14
|
|
const binding = env0_0;
|
|
const syncHeartbeats = binding.syncHeartbeats;
|
|
const FirstPartyQuestTaskTypes = (FirstPartyQuestTaskTypesModule).FirstPartyQuestTaskTypes;
|
|
const PLAY_ACTIVITY = FirstPartyQuestTaskTypes.PLAY_ACTIVITY;
|
|
Reflect.apply(syncHeartbeats, binding, [[PLAY_ACTIVITY], 'FRAME_STOP']);
|
|
}
|
|
|
|
function QuestProgressManagerEMBEDDED_ACTIVITY_UPDATE_V2() { // fn#125397, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:7822, owner: QuestProgressManager.EMBEDDED_ACTIVITY_UPDATE_V2, offset: 0x025d754f, size: 80 bytes, params: 1, frame: 16
|
|
const binding = env0_0;
|
|
const syncHeartbeats = binding.syncHeartbeats;
|
|
const FirstPartyQuestTaskTypes = (FirstPartyQuestTaskTypesModule).FirstPartyQuestTaskTypes;
|
|
const PLAY_ACTIVITY = FirstPartyQuestTaskTypes.PLAY_ACTIVITY;
|
|
Reflect.apply(syncHeartbeats, binding, [[PLAY_ACTIVITY], 'EMBEDDED_ACTIVITY_UPDATE_V2', function(a0) {
|
|
return !manualHeartbeatInitializationQuest(a0);
|
|
}]);
|
|
}
|
|
|
|
function QUEST_APPLICATION_START_TIMER({questId}) { // fn#125399, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:8001, owner: QuestProgressManager.QUEST_APPLICATION_START_TIMER, offset: 0x025d759f, size: 95 bytes, params: 2, frame: 16
|
|
const binding = questId;
|
|
const syncHeartbeats = binding.syncHeartbeats;
|
|
const FirstPartyQuestTaskTypes = (FirstPartyQuestTaskTypesModule).FirstPartyQuestTaskTypes;
|
|
const PLAY_ACTIVITY = FirstPartyQuestTaskTypes.PLAY_ACTIVITY;
|
|
Reflect.apply(syncHeartbeats, binding, [[PLAY_ACTIVITY], 'QUEST_APPLICATION_START_TIMER', _fun125400]);
|
|
function _fun125400(a0) { // fn#125400, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:8118, offset: 0x025d75fe, size: 47 bytes, params: 2, frame: 12
|
|
let value = a0 != null;
|
|
let r0 = value && a0.id === questId;
|
|
if (r0) {
|
|
value = environment.__proto__.__proto__.__proto__;
|
|
value = manualHeartbeatInitializationQuest(a0);
|
|
r0 = value;
|
|
}
|
|
return r0;
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
function value_125402(a0) { // fn#125402, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:8330, offset: 0x025d762d, size: 191 bytes, params: 2, frame: 15
|
|
const value = environment.__proto__;
|
|
const FirstPartyQuestTaskTypes = (FirstPartyQuestTaskTypesModule).FirstPartyQuestTaskTypes;
|
|
const PLAY_ON_DESKTOP = FirstPartyQuestTaskTypes.PLAY_ON_DESKTOP;
|
|
if (PLAY_ON_DESKTOP === a0) {
|
|
return this.getActivelyProgressingPlayOnDesktopQuests();
|
|
}
|
|
const STREAM_ON_DESKTOP = FirstPartyQuestTaskTypes.STREAM_ON_DESKTOP;
|
|
if (STREAM_ON_DESKTOP === a0) {
|
|
return this.getActivelyProgressingStreamOnDesktopQuests();
|
|
}
|
|
const PLAY_ACTIVITY = FirstPartyQuestTaskTypes.PLAY_ACTIVITY;
|
|
if (PLAY_ACTIVITY === a0) {
|
|
return this.getActivelyProgressingActivityQuests();
|
|
}
|
|
(GlobalUtilsModule).assertNever(a0);
|
|
}
|
|
|
|
function value_125403() { // fn#125403, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:8776, offset: 0x025d76ec, size: 480 bytes, params: 1, frame: 30
|
|
var r11;
|
|
var id;
|
|
var r6;
|
|
var r4;
|
|
var value8;
|
|
var isLauncher;
|
|
var getOverrideForGame;
|
|
var value9;
|
|
var distributor;
|
|
var detectableGameStoreBinding;
|
|
var findGame;
|
|
var game;
|
|
var value10;
|
|
var value13;
|
|
var value14;
|
|
var value17;
|
|
const Map = global.Map;
|
|
const map = new Map();
|
|
let runningGameStoreNativeBinding = RunningGameStoreNative;
|
|
const runningGames = runningGameStoreNativeBinding.getRunningGames();
|
|
const runningNonGames = runningGameStoreNativeBinding.getRunningNonGames();
|
|
let binding = env1_21;
|
|
let log = binding.log;
|
|
Reflect.apply(log, binding, ['~ getActivelyProgressingPlayOnDesktopQuestIds -> Running games: ', runningGames,
|
|
'Running non-games: ', runningNonGames]);
|
|
const object = {};
|
|
const _createForOfIteratorHelperLoose_125364Binding = _createForOfIteratorHelperLoose_125364;
|
|
const value5 = undefined;
|
|
const value6 = _createForOfIteratorHelperLoose_125364Binding(runningGames);
|
|
const value7 = value6();
|
|
let done = value7.done;
|
|
if (!done) {
|
|
r11 = value7;
|
|
reducibleLoop1: while (true) {
|
|
value8 = r11.value;
|
|
isLauncher = value8.isLauncher;
|
|
reducibleJoin10: while (true) {
|
|
if (isLauncher) {
|
|
break reducibleJoin10;
|
|
}
|
|
id = value8.id;
|
|
if (id == null) {
|
|
runningGameStoreNativeBinding = RunningGameStoreNative;
|
|
getOverrideForGame = runningGameStoreNativeBinding.getOverrideForGame;
|
|
value9 = Reflect.apply(getOverrideForGame, runningGameStoreNativeBinding, [value8]);
|
|
distributor = value8.distributor;
|
|
if (distributor == null) {
|
|
if (value9 != null) {
|
|
break reducibleJoin10;
|
|
}
|
|
}
|
|
detectableGameStoreBinding = DetectableGameStore;
|
|
findGame = detectableGameStoreBinding.findGame;
|
|
game = Reflect.apply(findGame, detectableGameStoreBinding, [value8]);
|
|
reducibleJoin8: while (true) {
|
|
if (game == null) {
|
|
id = value5;
|
|
break reducibleJoin8;
|
|
}
|
|
id = game.id;
|
|
break reducibleJoin8;
|
|
}
|
|
if (id == null) {
|
|
break reducibleJoin10;
|
|
}
|
|
id = game.id;
|
|
object[id] = value8;
|
|
break reducibleJoin10;
|
|
}
|
|
id = value8.id;
|
|
object[id] = value8;
|
|
break reducibleJoin10;
|
|
}
|
|
value10 = value6();
|
|
done = value10.done;
|
|
if (done) {
|
|
break reducibleLoop1;
|
|
}
|
|
r11 = value10;
|
|
continue reducibleLoop1;
|
|
}
|
|
}
|
|
const value11 = _createForOfIteratorHelperLoose_125364(runningNonGames);
|
|
const value12 = value11();
|
|
done = value12.done;
|
|
if (!done) {
|
|
r6 = value12;
|
|
reducibleLoop12: while (true) {
|
|
value13 = r6.value;
|
|
id = value13.id;
|
|
reducibleJoin14: while (true) {
|
|
if (id == null) {
|
|
break reducibleJoin14;
|
|
}
|
|
id = value13.id;
|
|
object[id] = value13;
|
|
break reducibleJoin14;
|
|
}
|
|
value14 = value11();
|
|
done = value14.done;
|
|
if (done) {
|
|
break reducibleLoop12;
|
|
}
|
|
r6 = value14;
|
|
continue reducibleLoop12;
|
|
}
|
|
}
|
|
const value_125403_loop2 = value_125403_loop;
|
|
const Object = global.Object;
|
|
const value15 = Object.keys(object);
|
|
let length = value15.length;
|
|
const value16 = 0;
|
|
if (value16 < length) {
|
|
r4 = value16;
|
|
reducibleLoop16: while (true) {
|
|
value_125403_loop2(value15[r4]);
|
|
value17 = typeof r4 === 'bigint' ? r4 + 1n : +r4 + 1;
|
|
length = value15.length;
|
|
if (value17 < length) {
|
|
r4 = value17;
|
|
continue reducibleLoop16;
|
|
}
|
|
break reducibleLoop16;
|
|
}
|
|
}
|
|
binding = env1_21;
|
|
log = binding.log;
|
|
const Array = global.Array;
|
|
Reflect.apply(log, binding, ['~ getActivelyProgressingPlayOnDesktopQuestIds -> Actively progressing questIds: ',
|
|
Array.from(map.keys())]);
|
|
return map;
|
|
function value_125403_loop(a0) { // fn#125404, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:9328, owner: value_125403._loop, offset: 0x025d78cc, size: 349 bytes, params: 2, frame: 30
|
|
var r3;
|
|
var value6;
|
|
var moduleValue2;
|
|
var desktopApplicationIds;
|
|
var value8;
|
|
var binding;
|
|
var set;
|
|
var id;
|
|
var ROBLOX_APPLICATION_ID;
|
|
var executableFingerprint;
|
|
var value9;
|
|
const env0_0 = a0;
|
|
const property = env0_2[a0];
|
|
const value3 = GameAnalyticsUtilsModule.removeExecutablePathPrefix(property.exePath);
|
|
const _createForOfIteratorHelperLoose_125364Binding = _createForOfIteratorHelperLoose_125364;
|
|
const questsBinding = quests;
|
|
const value4 = _createForOfIteratorHelperLoose_125364Binding(questsBinding.values());
|
|
const value5 = value4();
|
|
let done = value5.done;
|
|
if (!done) {
|
|
r3 = value5;
|
|
while (true) {
|
|
value6 = r3.value;
|
|
moduleValue2 = require(7116) /* metro dependency 7116: QuestTaskUtils */;
|
|
desktopApplicationIds = moduleValue2.getDesktopApplicationIds(value6);
|
|
if (isQuestProgressable(value6)) {
|
|
if (desktopApplicationIds == null) {
|
|
break;
|
|
}
|
|
value8 = desktopApplicationIds.find(_fun125405);
|
|
if (value8 != null) {
|
|
binding = env0_0;
|
|
set = binding.set;
|
|
id = value6.id;
|
|
executableFingerprint = property.executableFingerprint;
|
|
Reflect.apply(set, binding, [id, {applicationId: value8, executablePath: value3,
|
|
executableFingerprint: executableFingerprint}]);
|
|
break;
|
|
}
|
|
if (isQuestRobloxRelated(desktopApplicationIds, property)) {
|
|
binding = env0_0;
|
|
set = binding.set;
|
|
id = value6.id;
|
|
ROBLOX_APPLICATION_ID = (require(4484) /* metro dependency 4484: RobloxSubgameTypes */).ROBLOX_APPLICATION_ID;
|
|
executableFingerprint = property.executableFingerprint;
|
|
Reflect.apply(set, binding, [id, {applicationId: ROBLOX_APPLICATION_ID, executablePath: value3,
|
|
executableFingerprint: executableFingerprint}]);
|
|
break;
|
|
}
|
|
break;
|
|
}
|
|
value9 = value4();
|
|
done = value9.done;
|
|
if (done) {
|
|
break;
|
|
}
|
|
r3 = value9;
|
|
continue;
|
|
}
|
|
}
|
|
function _fun125405(a0) { // fn#125405, offset: 0x00fcba1c, size: 16 bytes, params: 2, frame: 2
|
|
return a0 === env0_0;
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
function value_125406() { // fn#125406, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:10066, offset: 0x025d7a29, size: 334 bytes, params: 1, frame: 22
|
|
var r4;
|
|
var r11;
|
|
var value9;
|
|
var moduleValue;
|
|
var streamingApplicationId;
|
|
var isQuestProgressable2;
|
|
var value11;
|
|
var set;
|
|
var id2;
|
|
var value12;
|
|
const Map = global.Map;
|
|
const map = new Map();
|
|
const currentUserActiveStream = ApplicationStreamingStore.getCurrentUserActiveStream();
|
|
if (currentUserActiveStream != null) {
|
|
var sortedVoiceStateStoreBinding = SortedVoiceStateStore;
|
|
if (sortedVoiceStateStoreBinding.countVoiceStatesForChannel(currentUserActiveStream.channelId) < 2) {
|
|
return map;
|
|
}
|
|
var streamerActiveStreamMetadata = ApplicationStreamingStore.getStreamerActiveStreamMetadata();
|
|
if (streamerActiveStreamMetadata == null) {
|
|
return map;
|
|
}
|
|
var binding = env1_21;
|
|
var log = binding.log;
|
|
Reflect.apply(log, binding, ['~ getActivelyProgressingStreamOnDesktopQuestIds -> Active stream metadata: ',
|
|
streamerActiveStreamMetadata]);
|
|
var id = streamerActiveStreamMetadata.id;
|
|
if (id == null) {
|
|
return map;
|
|
}
|
|
var value7 = _createForOfIteratorHelperLoose_125364(QuestStore.quests.values());
|
|
var value8 = value7();
|
|
var done = value8.done;
|
|
if (!done) {
|
|
r4 = value8;
|
|
while (true) {
|
|
value9 = r4.value;
|
|
moduleValue = require(7116) /* metro dependency 7116: QuestTaskUtils */;
|
|
streamingApplicationId = moduleValue.getStreamingApplicationId(value9);
|
|
isQuestProgressable2 = isQuestProgressable(value9);
|
|
if (isQuestProgressable2) {
|
|
value11 = streamingApplicationId != null;
|
|
r11 = value11;
|
|
} else {
|
|
r11 = isQuestProgressable2;
|
|
}
|
|
if (!r11) {
|
|
continue;
|
|
}
|
|
if (streamingApplicationId !== id) {
|
|
continue;
|
|
}
|
|
set = map.set;
|
|
id2 = value9.id;
|
|
Reflect.apply(set, map, [id2, {applicationId: id}]);
|
|
value12 = value7();
|
|
done = value12.done;
|
|
if (done) {
|
|
break;
|
|
}
|
|
r4 = value12;
|
|
continue;
|
|
}
|
|
}
|
|
binding = env1_21;
|
|
log = binding.log;
|
|
var Array = global.Array;
|
|
Reflect.apply(log, binding,
|
|
['~ getActivelyProgressingStreamOnDesktopQuestIds -> Actively progressing questIds: ',
|
|
Array.from(map.keys())]);
|
|
}
|
|
return map;
|
|
}
|
|
|
|
function value_125407() { // fn#125407, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16426:10804, offset: 0x025d7b77, size: 538 bytes, params: 1, frame: 29
|
|
var r8;
|
|
var r12;
|
|
var r3;
|
|
var r4;
|
|
var value11;
|
|
var values;
|
|
var value12;
|
|
var value13;
|
|
var value14;
|
|
var moduleValue;
|
|
var playActivityApplicationId;
|
|
var isQuestProgressable2;
|
|
var value16;
|
|
var id;
|
|
var value17;
|
|
var value18;
|
|
var value21;
|
|
var isQuestProgressable3;
|
|
var moduleValue2;
|
|
var isPlayAnyActivityQuest2;
|
|
var value22;
|
|
const Map = global.Map;
|
|
const map = new Map();
|
|
const selfEmbeddedActivities = EmbeddedActivitiesStore.getSelfEmbeddedActivities();
|
|
const connectedFrame = FramesStore.getConnectedFrame();
|
|
const Set = global.Set;
|
|
let set = new Set(selfEmbeddedActivities.keys());
|
|
if (connectedFrame != null) {
|
|
set.add(connectedFrame.applicationId);
|
|
}
|
|
let binding = env1_21;
|
|
let log = binding.log;
|
|
let Array = global.Array;
|
|
Reflect.apply(log, binding, ['~ getActivelyProgressingActivityQuestIds -> Running activity applicationIds: ',
|
|
Array.from(set)]);
|
|
if (set.size !== 0) {
|
|
var quests = QuestStore.quests;
|
|
var value9 = _createForOfIteratorHelperLoose_125364(set);
|
|
var value10 = value9();
|
|
var done = value10.done;
|
|
if (!done) {
|
|
r8 = value10;
|
|
while (true) {
|
|
value11 = r8.value;
|
|
_createForOfIteratorHelperLoose_125364Binding = _createForOfIteratorHelperLoose_125364;
|
|
values = quests.values;
|
|
value12 = _createForOfIteratorHelperLoose_125364Binding(Reflect.apply(values, quests, []));
|
|
value13 = value12();
|
|
done = value13.done;
|
|
if (!done) {
|
|
r12 = value13;
|
|
while (true) {
|
|
value14 = r12.value;
|
|
moduleValue = require(7116) /* metro dependency 7116: QuestTaskUtils */;
|
|
playActivityApplicationId = moduleValue.getPlayActivityApplicationId(value14);
|
|
isQuestProgressable2 = isQuestProgressable(value14);
|
|
if (isQuestProgressable2) {
|
|
value16 = playActivityApplicationId != null;
|
|
r3 = value16;
|
|
} else {
|
|
r3 = isQuestProgressable2;
|
|
}
|
|
if (!r3) {
|
|
continue;
|
|
}
|
|
if (playActivityApplicationId !== value11) {
|
|
continue;
|
|
}
|
|
set = map.set;
|
|
id = value14.id;
|
|
Reflect.apply(set, map, [id, {applicationId: value11}]);
|
|
value17 = value12();
|
|
done = value17.done;
|
|
if (done) {
|
|
break;
|
|
}
|
|
r12 = value17;
|
|
continue;
|
|
}
|
|
}
|
|
value18 = value9();
|
|
done = value18.done;
|
|
if (done) {
|
|
break;
|
|
}
|
|
r8 = value18;
|
|
continue;
|
|
}
|
|
}
|
|
var value19 = _createForOfIteratorHelperLoose_125364(quests.values());
|
|
var value20 = value19();
|
|
done = value20.done;
|
|
if (!done) {
|
|
r4 = value20;
|
|
while (true) {
|
|
value21 = r4.value;
|
|
isQuestProgressable3 = isQuestProgressable(value21);
|
|
if (isQuestProgressable3) {
|
|
moduleValue2 = require(7114) /* metro dependency 7114: QuestUtils */;
|
|
isPlayAnyActivityQuest2 = moduleValue2.isPlayAnyActivityQuest(value21);
|
|
r8 = isPlayAnyActivityQuest2;
|
|
} else {
|
|
r8 = isQuestProgressable3;
|
|
}
|
|
if (!r8) {
|
|
continue;
|
|
}
|
|
set = map.set;
|
|
id = value21.id;
|
|
Reflect.apply(set, map, [id, {applicationId: DISCORD_APPLICATION_ID}]);
|
|
value22 = value19();
|
|
done = value22.done;
|
|
if (done) {
|
|
break;
|
|
}
|
|
r4 = value22;
|
|
continue;
|
|
}
|
|
}
|
|
binding = env1_21;
|
|
log = binding.log;
|
|
Array = global.Array;
|
|
Reflect.apply(log, binding, ['~ getActivelyProgressingActivityQuestIds -> Actively progressing questIds: ',
|
|
Array.from(map.keys())]);
|
|
}
|
|
return map;
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
global.__d(_fun125360, 16218, [57, 5, 6, 7, 15, 17, 18, 1378, 8065, 4266, 4492, 4267, 4300, 7093, 15385, 6528, 672,
|
|
7099, 7091, 9511, 9524, 6529, 9484, 6531, 7120, 4484, 4483, 6535, 7116, 4285, 1360, 4482, 7114, 4860,
|
|
2]) /* metro module 16218, dependencies: [57, 5, 6, 7, 15, 17, 18, 1378, 8065, 4266, 4492, 4267, 4300, 7093, 15385, 6528, 672, 7099, 7091, 9511, 9524, 6529, 9484, 6531, 7120, 4484, 4483, 6535, 7116, 4285, 1360, 4482, 7114, 4860, 2] */;
|