@modern-js/runtime-utils
Version:
A Progressive React Framework for modern web development.
29 lines (28 loc) • 728 B
JavaScript
import "node:module";
function processHrtime(previousTimestamp) {
const now = new Date().getTime();
const clocktime = 1e-3 * now;
let seconds = Math.floor(clocktime);
let nanoseconds = Math.floor(clocktime % 1 * 1e9);
if (previousTimestamp) {
seconds -= previousTimestamp[0];
nanoseconds -= previousTimestamp[1];
if (nanoseconds < 0) {
seconds--;
nanoseconds += 1e9;
}
}
return [
seconds,
nanoseconds
];
}
const getLatency = (hrtime)=>{
const [s, ns] = processHrtime(hrtime);
return 1e3 * s + ns / 1e6;
};
const time = ()=>{
const hrtime = processHrtime();
return ()=>getLatency(hrtime);
};
export { time };