decord/alpha/source/modules/quests/utils/QuestMatchingUtils.tsx

206 lines
7.2 KiB
TypeScript
Raw Normal View History

// Module ID: 8805
// Function ID: 8806
// Name: QuestMatchingUtils
// Dependencies: [32, 5056, 8806, 5751, 1074, 2004, 7132, 7107, 7130, 8814, 2]
2026-09-03 10:05:34 +00:00
// Exports: allPlayOnDesktopQuestsByApplicationId, getEligibleQuestsForApplicationId, getQuestApplicationIdsForRunningGame, getQuestByApplicationId, getQuestsFromActivities
2026-07-20 16:05:17 +00:00
// Module 8805 (QuestMatchingUtils)
import QuestDataUtils from "QuestDataUtils" /* 7107 */;
import QuestTaskUtils from "QuestTaskUtils" /* 7132 */;
import getApplicationIdsForGameDefault from "getApplicationIdsForGame" /* 8814 */;
import _slicedToArray from "module_32" /* 32 */;
import ApplicationStore from "ApplicationStore" /* 5056 */;
import LocalActivityStore from "LocalActivityStore" /* 8806 */;
2026-07-23 10:11:24 +00:00
require = fn;
2026-07-29 08:29:29 +00:00
function questMatchesActivity(arg0, id) {
let formatted = arg0;
2026-07-20 16:05:17 +00:00
let tmp2 = null;
2026-07-29 08:29:29 +00:00
if (null == arg0) {
2026-07-20 16:05:17 +00:00
return tmp3;
} else {
2026-09-03 10:05:34 +00:00
let tmp5 = formatted.application_id === closure_10;
2026-07-20 16:05:17 +00:00
if (!tmp5) {
2026-07-29 08:29:29 +00:00
tmp5 = formatted.platform === ActivityGamePlatforms.XBOX;
2026-07-20 16:05:17 +00:00
}
if (!tmp5) {
2026-07-29 08:29:29 +00:00
if (!tmp9) {
let tmp10 = tmp2 != id;
2026-07-20 16:05:17 +00:00
if (tmp10) {
tmp10 = id.id === React5;
2026-07-20 16:05:17 +00:00
}
if (tmp10) {
tmp10 = formatted.application_id === React6;
2026-07-20 16:05:17 +00:00
}
if (!tmp10) {
2026-07-29 08:29:29 +00:00
let tmp13 = tmp2 != formatted.application_id;
2026-07-20 16:05:17 +00:00
if (tmp13) {
2026-07-29 08:29:29 +00:00
const application_id = formatted.application_id;
const allApplicationIds = QuestTaskUtils.getAllApplicationIds(id);
tmp13 = tmp2 != allApplicationIds && allApplicationIds.some((item) => item === closure_0);
const tmp16 = tmp2 != allApplicationIds && allApplicationIds.some((item) => item === closure_0);
2026-07-20 16:05:17 +00:00
}
tmp10 = tmp13;
}
}
2026-07-29 08:29:29 +00:00
tmp9 = formatted.platform === ActivityGamePlatforms.PS4 || formatted.platform === tmp8.PS5;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
formatted = formatted.name.toLowerCase();
const consoleApplicationId = QuestTaskUtils.getConsoleApplicationId(id);
2026-07-29 08:29:29 +00:00
let flag = false;
2026-07-20 16:05:17 +00:00
if (tmp2 != consoleApplicationId) {
const application = ApplicationStore.getApplication(consoleApplicationId);
2026-07-20 16:05:17 +00:00
tmp2 = tmp2 != application;
if (tmp2) {
tmp2 = formatted === application.name.toLowerCase();
}
flag = tmp2;
}
tmp10 = flag;
}
}
2026-07-29 08:29:29 +00:00
function getQuestByActivity(result, arg1) {
const obj = result[Symbol.iterator]();
while (obj !== undefined) {
let tmp3 = _slicedToArray(tmp, 2);
2026-07-29 08:29:29 +00:00
[r10011, tmp4] = tmp3;
let tmp5 = tmp4;
if (questMatchesActivity(arg1, tmp4)) {
let obj2 = QuestDataUtils;
2026-07-29 08:29:29 +00:00
if (!obj2.isQuestExpired(tmp5)) {
obj.return();
return tmp5;
2026-07-20 16:05:17 +00:00
}
}
2026-07-29 08:29:29 +00:00
continue;
2026-07-20 16:05:17 +00:00
}
}
2026-07-29 08:29:29 +00:00
function questMatchesApplicationId(arg0, quest) {
closure_0 = arg0;
const allApplicationIds = QuestTaskUtils.getAllApplicationIds(quest);
return null != allApplicationIds && allApplicationIds.some((item) => item === closure_0);
2026-07-20 16:05:17 +00:00
}
const QuestConstants = fn(5751);
({ DISCORD_APPLICATION_ID: metroRequire, PLAY_ACTIVITY_CLOUD_GAMING_QUEST_ID: closure_7, PLAY_ACTIVITY_SOCIAL_ENTRY_APPLICATION_ID: closure_8 } = QuestConstants);
const ActivityGamePlatforms = fn(1074).ActivityGamePlatforms;
let closure_10 = fn(2004).XBOX_ACTIVITY_APPLICATION_ID;
const size = fn(2);
const result = size.fileFinishedImporting("modules/quests/utils/QuestMatchingUtils.tsx");
2026-07-20 16:05:17 +00:00
export { questMatchesActivity };
export { getQuestByActivity };
2026-07-29 08:29:29 +00:00
export const getQuestByApplicationId = function getQuestByApplicationId(arg0, arg1) {
const obj = arg0[Symbol.iterator]();
while (obj !== undefined) {
let tmp4 = _slicedToArray(tmp2, 2);
2026-07-29 08:29:29 +00:00
[r10013, tmp5] = tmp4;
let tmp6 = tmp5;
if (questMatchesApplicationId(arg1, tmp5)) {
let obj2 = QuestDataUtils;
2026-07-29 08:29:29 +00:00
if (!obj2.isQuestExpired(tmp6)) {
let tmp = tmp5;
obj.return();
break;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
return tmp;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
continue;
2026-07-20 16:05:17 +00:00
}
};
export const allPlayOnDesktopQuestsByApplicationId = function allPlayOnDesktopQuestsByApplicationId(arr, arg1) {
2026-08-24 06:08:38 +00:00
closure_0 = arg1;
2026-07-20 16:05:17 +00:00
return Array.from(arr.values()).filter((quest) => {
const allApplicationIds = QuestTaskUtils.getAllApplicationIds(quest);
let hasPlayOnDesktopTaskResult = null != allApplicationIds && allApplicationIds.some((item) => item === closure_0);
2026-07-20 16:05:17 +00:00
if (hasPlayOnDesktopTaskResult) {
hasPlayOnDesktopTaskResult = !tmp(7107).isQuestExpired(quest);
const tmpResult = tmp(7107);
2026-07-20 16:05:17 +00:00
}
if (hasPlayOnDesktopTaskResult) {
const obj2 = { quest };
hasPlayOnDesktopTaskResult = tmp(7132).hasPlayOnDesktopTask(obj2);
const tmpResult2 = tmp(7132);
2026-07-20 16:05:17 +00:00
}
return hasPlayOnDesktopTaskResult;
});
};
export const getQuestsFromActivities = function getQuestsFromActivities(result, arg1) {
if (null != arg1) {
2026-07-20 16:05:17 +00:00
if (null != result) {
const obj = arg1[Symbol.iterator]();
2026-07-29 08:29:29 +00:00
while (obj !== undefined) {
let tmp7 = getQuestByActivity(result, tmp4);
if (null != tmp7) {
obj.return();
return tmp7;
2026-07-20 16:05:17 +00:00
}
}
return null;
}
}
return null;
};
export const getEligibleQuestsForApplicationId = function getEligibleQuestsForApplicationId(quests, applicationId, arg2) {
2026-08-24 06:08:38 +00:00
closure_0 = applicationId;
2026-07-29 08:29:29 +00:00
let flag = arg2;
2026-07-20 16:05:17 +00:00
if (arg2 === undefined) {
flag = false;
}
if (null == applicationId) {
let items = [];
} else {
const _Array = Array;
items = Array.from(quests.values()).filter((userStatus) => {
const activityApplicationId = QuestTaskUtils.getActivityApplicationId(userStatus);
2026-07-20 16:05:17 +00:00
let canLaunchActivityResult = null != userStatus;
if (canLaunchActivityResult) {
canLaunchActivityResult = tmp(7130).canLaunchActivity(userStatus);
const tmpResult = tmp(7130);
2026-07-20 16:05:17 +00:00
}
if (canLaunchActivityResult) {
canLaunchActivityResult = !tmp(7107).isQuestExpired(userStatus);
const tmpResult2 = tmp(7107);
2026-07-20 16:05:17 +00:00
}
if (canLaunchActivityResult) {
canLaunchActivityResult = activityApplicationId === closure_0;
2026-07-20 16:05:17 +00:00
}
if (canLaunchActivityResult) {
canLaunchActivityResult = activityApplicationId !== timestampProducer;
2026-07-20 16:05:17 +00:00
}
if (canLaunchActivityResult) {
userStatus = userStatus.userStatus;
let completedAt;
2026-07-29 08:29:29 +00:00
if (userStatus != null) {
2026-07-20 16:05:17 +00:00
completedAt = userStatus.completedAt;
}
canLaunchActivityResult = null == completedAt || flag;
2026-07-29 08:29:29 +00:00
const tmp8 = null == completedAt || flag;
2026-07-20 16:05:17 +00:00
}
if (canLaunchActivityResult) {
const userStatus2 = userStatus.userStatus;
let enrolledAt;
2026-07-29 08:29:29 +00:00
if (userStatus2 != null) {
2026-07-20 16:05:17 +00:00
enrolledAt = userStatus2.enrolledAt;
}
canLaunchActivityResult = null == enrolledAt || flag;
2026-07-29 08:29:29 +00:00
const tmp10 = null == enrolledAt || flag;
2026-07-20 16:05:17 +00:00
}
return canLaunchActivityResult;
});
const arr = Array.from(quests.values());
}
return items;
};
2026-09-03 10:05:34 +00:00
export const getQuestApplicationIdsForRunningGame = function getQuestApplicationIdsForRunningGame(pid, arg1) {
const obj = getApplicationIdsForGameDefault(arg1);
const applicationIdForPID = LocalActivityStore.getApplicationIdForPID(pid.pid);
2026-09-03 10:05:34 +00:00
if (null != applicationIdForPID) {
const tmp4 = getApplicationIdsForGameDefault(applicationIdForPID);
for (const item10019 of tmp4) {
let addResult = obj.add(item10019);
continue;
}
}
return obj;
};