react-native-decompiler
Version:
react native decompile apk and ipa(soon)
55 lines • 4.18 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const crypto_1 = __importDefault(require("crypto"));
const perf_hooks_1 = require("perf_hooks");
class PerformanceTracker {
constructor() {
this.tag = crypto_1.default.randomBytes(20).toString('hex');
}
static isEnabled() {
return this.enabled;
}
static enable() {
this.enabled = true;
}
startTimer(tag = this.tag) {
if (!PerformanceTracker.enabled)
return;
PerformanceTracker.performanceTimes[tag] = perf_hooks_1.performance.now();
}
pauseTimer(tag = this.tag) {
if (!PerformanceTracker.enabled)
return;
PerformanceTracker.performanceTimes[tag] = this.stopTimer();
}
unpauseTimer(tag = this.tag) {
if (!PerformanceTracker.enabled)
return;
const elapsedTime = PerformanceTracker.performanceTimes[tag];
if (!elapsedTime)
throw new Error('Timer not paused');
PerformanceTracker.performanceTimes[tag] = perf_hooks_1.performance.now() - elapsedTime;
}
stopTimer(tag = this.tag) {
if (!PerformanceTracker.enabled)
return 0;
const startTime = PerformanceTracker.performanceTimes[tag];
if (!startTime)
throw new Error('Timer not started');
const totalTime = perf_hooks_1.performance.now() - startTime;
PerformanceTracker.performanceTimes[tag] = undefined;
return totalTime;
}
stopAndPrintTime(tag = this.tag) {
if (!PerformanceTracker.enabled)
return;
console.log(`[${tag}] Took ${this.stopTimer(tag)}ms`);
}
}
exports.default = PerformanceTracker;
PerformanceTracker.performanceTimes = {};
PerformanceTracker.enabled = false;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyZm9ybWFuY2VUcmFja2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWwvcGVyZm9ybWFuY2VUcmFja2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBZUEsb0RBQTRCO0FBQzVCLDJDQUF5QztBQUV6QyxNQUFxQixrQkFBa0I7SUFBdkM7UUFZWSxRQUFHLEdBQVcsZ0JBQU0sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBb0NqRSxDQUFDO0lBNUNDLE1BQU0sQ0FBQyxTQUFTO1FBQ2QsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxNQUFNLENBQUMsTUFBTTtRQUNYLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO0lBQ3RCLENBQUM7SUFJUyxVQUFVLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHO1FBQ2pDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPO1lBQUUsT0FBTztRQUN4QyxrQkFBa0IsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsR0FBRyx3QkFBVyxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQy9ELENBQUM7SUFFUyxVQUFVLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHO1FBQ2pDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPO1lBQUUsT0FBTztRQUV4QyxrQkFBa0IsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDOUQsQ0FBQztJQUVTLFlBQVksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUc7UUFDbkMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU87WUFBRSxPQUFPO1FBQ3hDLE1BQU0sV0FBVyxHQUFHLGtCQUFrQixDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzdELElBQUksQ0FBQyxXQUFXO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBRXRELGtCQUFrQixDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxHQUFHLHdCQUFXLENBQUMsR0FBRyxFQUFFLEdBQUcsV0FBVyxDQUFDO0lBQzdFLENBQUM7SUFFUyxTQUFTLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHO1FBQ2hDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPO1lBQUUsT0FBTyxDQUFDLENBQUM7UUFDMUMsTUFBTSxTQUFTLEdBQUcsa0JBQWtCLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDM0QsSUFBSSxDQUFDLFNBQVM7WUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFFckQsTUFBTSxTQUFTLEdBQUcsd0JBQVcsQ0FBQyxHQUFHLEVBQUUsR0FBRyxTQUFTLENBQUM7UUFDaEQsa0JBQWtCLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLEdBQUcsU0FBUyxDQUFDO1FBRXJELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFFUyxnQkFBZ0IsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUc7UUFDdkMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU87WUFBRSxPQUFPO1FBQ3hDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxHQUFHLFVBQVUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDeEQsQ0FBQzs7QUEvQ0gscUNBZ0RDO0FBL0NnQixtQ0FBZ0IsR0FBdUMsRUFBRSxDQUFDO0FBQzFELDBCQUFPLEdBQUcsS0FBSyxDQUFDIn0=