120 lines
5 KiB
TypeScript
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;
|