heartbeat-monitor/node_modules/next/dist/server/client-component-renderer-logger.js
Matt Bruce bed1169443 Initial commit: Heartbeat Monitor dashboard
- Full-featured monitoring dashboard for local web apps
- Real-time status tracking with uptime percentages
- Visual sparklines for status history
- Add/Edit/Delete apps dynamically
- Categories and color coding
- Auto-refresh every 30 seconds
- API endpoints for apps and status management
2026-02-18 11:16:01 -06:00

68 lines
2.0 KiB
JavaScript

// Combined load times for loading client components
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
0 && (module.exports = {
getClientComponentLoaderMetrics: null,
wrapClientComponentLoader: null
});
function _export(target, all) {
for(var name in all)Object.defineProperty(target, name, {
enumerable: true,
get: all[name]
});
}
_export(exports, {
getClientComponentLoaderMetrics: function() {
return getClientComponentLoaderMetrics;
},
wrapClientComponentLoader: function() {
return wrapClientComponentLoader;
}
});
let clientComponentLoadStart = 0;
let clientComponentLoadTimes = 0;
let clientComponentLoadCount = 0;
function wrapClientComponentLoader(ComponentMod) {
if (!('performance' in globalThis)) {
return ComponentMod.__next_app__;
}
return {
require: (...args)=>{
const startTime = performance.now();
if (clientComponentLoadStart === 0) {
clientComponentLoadStart = startTime;
}
try {
clientComponentLoadCount += 1;
return ComponentMod.__next_app__.require(...args);
} finally{
clientComponentLoadTimes += performance.now() - startTime;
}
},
loadChunk: (...args)=>{
const startTime = performance.now();
try {
return ComponentMod.__next_app__.loadChunk(...args);
} finally{
clientComponentLoadTimes += performance.now() - startTime;
}
}
};
}
function getClientComponentLoaderMetrics(options = {}) {
const metrics = clientComponentLoadStart === 0 ? undefined : {
clientComponentLoadStart,
clientComponentLoadTimes,
clientComponentLoadCount
};
if (options.reset) {
clientComponentLoadStart = 0;
clientComponentLoadTimes = 0;
clientComponentLoadCount = 0;
}
return metrics;
}
//# sourceMappingURL=client-component-renderer-logger.js.map