89 lines
3 KiB
JavaScript
89 lines
3 KiB
JavaScript
// Module ID: 5143
|
|
// Function ID: 43624
|
|
// Name: RenderTimeTracker
|
|
// Dependencies: [0, 5158, 5144, 5145]
|
|
|
|
// Module 5143 (RenderTimeTracker)
|
|
import result from "result";
|
|
import _toConsumableArray from "_toConsumableArray";
|
|
|
|
|
|
export const RenderTimeTracker = () => {
|
|
class RenderTimeTracker {
|
|
constructor() {
|
|
tmp = result(this, RenderTimeTracker);
|
|
averageWindow = new RenderTimeTracker(closure_1[2]).AverageWindow(5);
|
|
this.renderTimeAvgWindow = averageWindow;
|
|
this.lastTimerStartedAt = -1;
|
|
this.maxRenderTime = 32;
|
|
this.defaultRenderTime = 16;
|
|
this.rendersWithoutCommit = 0;
|
|
this.maxRendersWithoutCommit = 40;
|
|
return;
|
|
}
|
|
}
|
|
const arg1 = RenderTimeTracker;
|
|
let obj = {
|
|
key: "startTracking",
|
|
value: function startTracking() {
|
|
const self = this;
|
|
this.rendersWithoutCommit = this.rendersWithoutCommit + 1;
|
|
let trackAverageRenderTimeForOffsetProjection = RenderTimeTracker(closure_1[3]).PlatformConfig.trackAverageRenderTimeForOffsetProjection;
|
|
if (trackAverageRenderTimeForOffsetProjection) {
|
|
trackAverageRenderTimeForOffsetProjection = -1 === self.lastTimerStartedAt;
|
|
}
|
|
if (trackAverageRenderTimeForOffsetProjection) {
|
|
const _Date = Date;
|
|
self.lastTimerStartedAt = Date.now();
|
|
}
|
|
}
|
|
};
|
|
const items = [obj, , , , ];
|
|
obj = {
|
|
key: "markRenderComplete",
|
|
value: function markRenderComplete() {
|
|
const self = this;
|
|
this.rendersWithoutCommit = 0;
|
|
let trackAverageRenderTimeForOffsetProjection = RenderTimeTracker(closure_1[3]).PlatformConfig.trackAverageRenderTimeForOffsetProjection;
|
|
if (trackAverageRenderTimeForOffsetProjection) {
|
|
trackAverageRenderTimeForOffsetProjection = -1 !== self.lastTimerStartedAt;
|
|
}
|
|
if (trackAverageRenderTimeForOffsetProjection) {
|
|
const renderTimeAvgWindow = self.renderTimeAvgWindow;
|
|
const _Date = Date;
|
|
renderTimeAvgWindow.addValue(Date.now() - self.lastTimerStartedAt);
|
|
self.lastTimerStartedAt = -1;
|
|
}
|
|
}
|
|
};
|
|
items[1] = obj;
|
|
obj = {
|
|
key: "hasExceededMaxRendersWithoutCommit",
|
|
value: function hasExceededMaxRendersWithoutCommit() {
|
|
return this.rendersWithoutCommit >= this.maxRendersWithoutCommit;
|
|
}
|
|
};
|
|
items[2] = obj;
|
|
items[3] = {
|
|
key: "getRawValue",
|
|
value: function getRawValue() {
|
|
return this.renderTimeAvgWindow.currentValue;
|
|
}
|
|
};
|
|
items[4] = {
|
|
key: "getAverageRenderTime",
|
|
value: function getAverageRenderTime() {
|
|
const self = this;
|
|
if (RenderTimeTracker(closure_1[3]).PlatformConfig.trackAverageRenderTimeForOffsetProjection) {
|
|
const _Math = Math;
|
|
const _Math2 = Math;
|
|
const _Math3 = Math;
|
|
let defaultRenderTime = Math.min(self.maxRenderTime, Math.max(Math.round(self.renderTimeAvgWindow.currentValue), 16));
|
|
} else {
|
|
defaultRenderTime = self.defaultRenderTime;
|
|
}
|
|
return defaultRenderTime;
|
|
}
|
|
};
|
|
return callback(RenderTimeTracker, items);
|
|
}();
|