Files
discord-decomp/sources/modules/quests/QuestDecisionRoundtripTracker.tsx
T
2026-07-27 16:20:00 +03:00

172 lines
8.7 KiB
TypeScript

/* Metro module 9490; source: modules/quests/QuestDecisionRoundtripTracker.tsx; dependencies: [6, 7, 4401, 7093, 661, 4873, 683, 7071, 4876, 7108, 2] */
function _fun74080(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#74080, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9676:6, offset: 0x01d7fec2, size: 223 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(6) /* metro dependency 6 */;
const env0_4 = importDefault(7) /* metro dependency 7 */;
const networkStore = importDefault(4401) /* metro dependency 4401: NetworkStore */;
const questStore = importDefault(7093) /* metro dependency 7093: QuestStore */;
const env0_7 = (require(661) /* metro dependency 661: Constants */).AnalyticEvents;
let value = _fun74082();
value = new value();
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/quests/QuestDecisionRoundtripTracker.tsx');
exports.default = value;
}
function trackRoundtrip_74081(a0, a1, a2) { // fn#74081, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9676:161, offset: 0x01d7ffa1, size: 469 bytes, params: 4, frame: 22
var r9;
var decision_id;
var fetchedAt;
var apiResponseTimestamp;
var value4;
var signalStrength;
var defaultImport;
var track;
var QUEST_DECISION_ROUNDTRIP;
var object2;
var previousAdDecision;
const Math = global.Math;
let value = Math.random();
if (!(value > 0.1)) {
apiResponseTimestamp = a0.apiResponseTimestamp;
value = null;
r9 = value == apiResponseTimestamp ? value : a0.apiResponseTimestamp - a0.initialSendTimestamp;
value4 = undefined;
signalStrength = require(dependencyMap[5]).getSignalStrength();
defaultImport = importDefault(dependencyMap[6]);
track = defaultImport.track;
QUEST_DECISION_ROUNDTRIP = AnalyticEvents.QUEST_DECISION_ROUNDTRIP;
object2 = {};
copyDataProperties(object2, importDefault(dependencyMap[7])(), dependencyMap);
object2['endpoint'] = a0.endpoint;
object2['was_successful'] = a0.wasSuccessful;
object2['api_latency_ms'] = r9;
object2['mobile_network_type'] = NetworkStore.getType();
copyDataProperties(object2, value != signalStrength && ({mobile_signal_strength_level: signalStrength}),
dependencyMap);
object2['caller_source'] = a0.callerSource;
object2['ad_request_id'] = a0.adRequestId;
object2['fetched_at'] = a2;
previousAdDecision = a0.previousAdDecision;
decision_id = value == previousAdDecision || value == previousAdDecision.adDecisionData ? value4 : previousAdDecision.adDecisionData.decision_id;
r9 = value != decision_id ? decision_id : value;
object2['previous_ad_request_id'] = r9;
previousAdDecision = a0.previousAdDecision;
fetchedAt = value == previousAdDecision ? value4 : previousAdDecision.fetchedAt;
object2['previous_fetched_at'] = value != fetchedAt ? fetchedAt : value;
object2['transition_case'] = a1;
value = require(dependencyMap[8]);
value = value.isForegrounded();
object2['is_foregrounded'] = value;
Reflect.apply(track, defaultImport, [QUEST_DECISION_ROUNDTRIP, object2]);
}
}
function _fun74082() { // fn#74082, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9676:893, offset: 0x01d80176, size: 86 bytes, params: 1, frame: 15
return env0_4(QuestDecisionRoundtripTracker, [{key: 'recordQuestRequestAttempt', value: value_74084},
{key: 'recordQuestRequestApiResponse', value: value_74086}]);
}
function value_74084(a0, a1) { // fn#74084, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9676:1064, offset: 0x01d80209, size: 233 bytes, params: 3, frame: 19
var object2;
var environment;
var r7;
let value = a2;
const env0_1 = a0;
const r4 = value !== undefined ? value : null;
value = environment.__proto__;
const defaultImport = importDefault(7108) /* metro dependency 7108: NewAdRequestBehaviorExperiment */;
const getConfig = defaultImport.getConfig;
const enableNewRequestBehavior = Reflect.apply(getConfig, defaultImport,
[{location: 'recordQuestRequestAttempt'}]).enableNewRequestBehavior;
const value2 = null;
if (enableNewRequestBehavior) {
if (value2 != r4) {
value = QuestStore.questAdDecisionByPlacement.get(r4);
r7 = value2 != value ? value : value2;
} else {
r7 = value2;
}
} else {
r7 = value2;
}
object2 = {'initialSendTimestamp': null, 'endpoint': null, 'apiResponseTimestamp': null, 'wasSuccessful': false,
'callerSource': null, 'adRequestId': null};
const Date = global.Date;
object2.initialSendTimestamp = Date.now();
object2.endpoint = a0;
object2.callerSource = a1;
object2.previousAdDecision = r7;
object2.placement = r4;
this.pendingRequests.set(a0, object2);
global.setTimeout(_fun74085, 30000);
}
function value_74086(a0, {wasSuccessful, adRequestId, currentQuestId, currentFetchedAt}) { // fn#74086, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9676:1602, offset: 0x01d80343, size: 305 bytes, params: 3, frame: 25
var environment;
var r5;
var r6;
var value7;
var defaultImport;
var getConfig;
var object2;
var value9;
var trackRoundtrip_74081Binding;
adRequestId = adRequestId === undefined ? null : adRequestId;
currentQuestId = currentQuestId === undefined ? null : currentQuestId;
currentFetchedAt = currentFetchedAt === undefined ? null : currentFetchedAt;
const value5 = this.pendingRequests.get(a0);
if (value5 != null) {
value7 = environment.__proto__;
defaultImport = importDefault(7108) /* metro dependency 7108: NewAdRequestBehaviorExperiment */;
getConfig = defaultImport.getConfig;
object2 = {location: 'recordQuestRequestApiResponse'};
if (Reflect.apply(getConfig, defaultImport, [object2]).enableNewRequestBehavior) {
value9 = ((a0, a1) => {
var closure = _fun74088;
var value = undefined;
var value2 = closure(a0);
var value3 = closure(a1);
return value2 !== 'quest' ? '' + value2 + '_to_' + value3 : value3 === 'quest' ? (a0 == null ? value : a0.questId) !== (a1 == null ? value : a1.questId) ? 'different_quest' : 'same_quest' : '' + value2 + '_to_' + value3;
})(value5.previousAdDecision, currentFetchedAt === null ? null : {questId: currentQuestId,
adCreativeId: currentQuestId, fetchedAt: currentFetchedAt, ttlMillis: 0,
adDecisionData: adRequestId != null ? {decision_id: adRequestId} : undefined});
r5 = currentFetchedAt;
r6 = value9;
} else {
r5 = null;
r6 = 'legacy';
}
trackRoundtrip_74081Binding = trackRoundtrip_74081;
object2 = {};
copyDataProperties(object2, value5, undefined);
object2['apiResponseTimestamp'] = global.Date.now();
object2['wasSuccessful'] = wasSuccessful;
object2['adRequestId'] = adRequestId;
trackRoundtrip_74081Binding(object2, r6, r5);
this.pendingRequests.delete(a0);
}
}
function _fun74085() { // fn#74085, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9676:1436, offset: 0x01d802f2, size: 81 bytes, params: 1, frame: 16
var value3;
const value2 = env0_0.pendingRequests.get(env0_1);
if (value2 != null) {
value3 = environment.__proto__.__proto__;
trackRoundtrip_74081(value2, 'timeout', null);
env0_0.pendingRequests.delete(env0_1);
}
}
function computeTransitionCase(a0, a1) { // fn#74087, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9676:1961, owner: value_74086.computeTransitionCase, offset: 0x01d80474, size: 124 bytes, params: 3, frame: 18
const closure = function(a0) {
return a0 == null ? 'null' : a0.questId == null ? 'no_serve' : 'quest';
};
const value = undefined;
const value2 = closure(a0);
const value3 = closure(a1);
return value2 !== 'quest' ? '' + value2 + '_to_' + value3 : value3 === 'quest' ? (a0 == null ? value : a0.questId) !== (a1 == null ? value : a1.questId) ? 'different_quest' : 'same_quest' : '' + value2 + '_to_' + value3;
}