decord/source/modules/jank_stats/native/JankSessionManager.android.tsx
2026-08-31 15:47:37 +00:00

120 lines
5 KiB
TypeScript

// Module ID: 16950
// Function ID: 16951
// Name: _initialize
// Dependencies: [7174, 676, 3, 5454, 16951, 668, 7188, 2]
// Module 16950 (_initialize)
import timestampDefault from "timestamp" /* 3 */;
import clientLaunchId from "clientLaunchId" /* 668 */;
import initializeDefault from "initialize" /* 5454 */;
import NativeJankSessionModuleDefault from "NativeJankSessionModule" /* 16951 */;
import closure_3 from "result" /* 7174 */;
import ME from "ME" /* 676 */;
require = arg1;
({ AnalyticEvents: c4, AppStates: c5 } = ME);
let closure_6 = new timestampDefault("JankSessionManager");
initializeDefault;
class JankSessionManager extends tmp4 {
constructor() {
applyArgumentsResult = HermesBuiltin.applyArguments(new.target, new.target);
closure_0 = applyArgumentsResult;
applyArgumentsResult._isDelivering = false;
applyArgumentsResult._hasConnected = false;
applyArgumentsResult.actions = {
APP_STATE_UPDATE(arg0) {
applyArgumentsResult.handleAppStateUpdate(arg0);
},
CONNECTION_OPEN_SUPPLEMENTAL() {
applyArgumentsResult._hasConnected = true;
const result = applyArgumentsResult.deliverPendingSessions();
}
};
return applyArgumentsResult;
}
}
const prototype = JankSessionManager.prototype;
prototype["_initialize"] = function _initialize() {
const obj = NativeJankSessionModuleDefault;
if (obj != null) {
obj.hydrateLaunchId(clientLaunchId.clientLaunchId);
}
};
prototype["handleAppStateUpdate"] = function handleAppStateUpdate(state) {
const self = this;
if (tmp) {
const result = self.deliverPendingSessions();
}
};
prototype["deliverPendingSessions"] = function deliverPendingSessions() {
const self = this;
if (!this._isDelivering) {
let obj = self(16951);
if (null != obj) {
tmp._isDelivering = true;
const pendingReports = obj.getPendingReports();
const nextPromise = pendingReports.then((arr) => {
closure_0 = arr;
if (0 !== arr.length) {
const result = closure_1_3.submitEventsImmediately(arr.map((arg0) => {
obj = { type: constants.ANDROID_JANK_SESSION, properties: null };
obj = {};
const merged = Object.assign(arr(table[6]).getDeviceMetadata());
obj.schema_version = 1;
({ sessionId: obj2.jank_session_id, appVersionCode: obj2.captured_app_version_code, releaseChannel: obj2.captured_release_channel, sessionStartMs: obj2.session_start_ms, totalFrameCount: obj2.total_frame_count, jankFrameCount: obj2.jank_frame_count } = arg0);
obj[1] = obj;
return obj;
}));
return result.then(() => {
arr.ackReports(arr.map((sessionId) => sessionId.sessionId));
});
}
});
pendingReports.then((arr) => {
closure_0 = arr;
if (0 !== arr.length) {
const result = closure_1_3.submitEventsImmediately(arr.map((arg0) => {
obj = { type: constants.ANDROID_JANK_SESSION, properties: null };
obj = {};
const merged = Object.assign(arr(table[6]).getDeviceMetadata());
obj.schema_version = 1;
({ sessionId: obj2.jank_session_id, appVersionCode: obj2.captured_app_version_code, releaseChannel: obj2.captured_release_channel, sessionStartMs: obj2.session_start_ms, totalFrameCount: obj2.total_frame_count, jankFrameCount: obj2.jank_frame_count } = arg0);
obj[1] = obj;
return obj;
}));
return result.then(() => {
arr.ackReports(arr.map((sessionId) => sessionId.sessionId));
});
}
}).catch((arg0) => {
logger.error("Failed to deliver pending jank sessions", arg0);
}).finally(() => {
self._isDelivering = false;
});
const catchPromise = pendingReports.then((arr) => {
closure_0 = arr;
if (0 !== arr.length) {
const result = closure_1_3.submitEventsImmediately(arr.map((arg0) => {
obj = { type: constants.ANDROID_JANK_SESSION, properties: null };
obj = {};
const merged = Object.assign(arr(table[6]).getDeviceMetadata());
obj.schema_version = 1;
({ sessionId: obj2.jank_session_id, appVersionCode: obj2.captured_app_version_code, releaseChannel: obj2.captured_release_channel, sessionStartMs: obj2.session_start_ms, totalFrameCount: obj2.total_frame_count, jankFrameCount: obj2.jank_frame_count } = arg0);
obj[1] = obj;
return obj;
}));
return result.then(() => {
arr.ackReports(arr.map((sessionId) => sessionId.sessionId));
});
}
}).catch((arg0) => {
logger.error("Failed to deliver pending jank sessions", arg0);
});
}
}
};
const jankSessionManager = new JankSessionManager();
const tmp3 = new timestampDefault("JankSessionManager");
let result = require("set").fileFinishedImporting("modules/jank_stats/native/JankSessionManager.android.tsx");
export default jankSessionManager;