vite-plugin-react-server
Version:
Vite plugin for React Server Components (RSC)
57 lines (54 loc) • 3.98 kB
JavaScript
/**
* vite-plugin-react-server
* Copyright (c) Nico Brinkkemper
* MIT License
*/
import { isMainThread } from 'node:worker_threads';
import { createStreamMetrics } from './createStreamMetrics.js';
const createRenderMetrics = function _createRenderMetrics({
route,
type,
fromMainThread = isMainThread,
fromRscWorker = false,
fromHtmlWorker = false,
processingTime = 0,
chunks = 0,
chunkRate = 0,
memoryUsage = process.memoryUsage(),
streamMetrics = createStreamMetrics(),
fileSize = 0,
fileName,
outputPath,
baseDir,
routePath
}) {
const base = {
route,
fromMainThread,
fromRscWorker,
fromHtmlWorker,
processingTime,
chunks,
chunkRate,
memoryUsage,
streamMetrics
};
if (type === "html" || type === "rsc-headless") {
return {
...base,
type,
fileSize,
fileName,
outputPath,
baseDir,
routePath
};
} else {
return {
...base,
type
};
}
};
export { createRenderMetrics };
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlUmVuZGVyTWV0cmljcy5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcGx1Z2luL21ldHJpY3MvY3JlYXRlUmVuZGVyTWV0cmljcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc01haW5UaHJlYWQgfSBmcm9tIFwibm9kZTp3b3JrZXJfdGhyZWFkc1wiO1xuaW1wb3J0IHsgY3JlYXRlU3RyZWFtTWV0cmljcyB9IGZyb20gXCIuL2NyZWF0ZVN0cmVhbU1ldHJpY3MuanNcIjtcbmltcG9ydCB0eXBlIHsgQmFzZVJlbmRlck1ldHJpY3MsIENyZWF0ZVJlbmRlck1ldHJpY3NGbiwgUmVuZGVyTWV0cmljcyB9IGZyb20gXCIuL3R5cGVzLmpzXCI7XG5cbmV4cG9ydCBjb25zdCBjcmVhdGVSZW5kZXJNZXRyaWNzOiBDcmVhdGVSZW5kZXJNZXRyaWNzRm4gPSBmdW5jdGlvbiBfY3JlYXRlUmVuZGVyTWV0cmljcyh7XG4gIHJvdXRlLFxuICB0eXBlLFxuICBmcm9tTWFpblRocmVhZCA9IGlzTWFpblRocmVhZCxcbiAgZnJvbVJzY1dvcmtlciA9IGZhbHNlLFxuICBmcm9tSHRtbFdvcmtlciA9IGZhbHNlLFxuICBwcm9jZXNzaW5nVGltZSA9IDAsXG4gIGNodW5rcyA9IDAsXG4gIGNodW5rUmF0ZSA9IDAsXG4gIG1lbW9yeVVzYWdlID0gcHJvY2Vzcy5tZW1vcnlVc2FnZSgpLFxuICBzdHJlYW1NZXRyaWNzID0gY3JlYXRlU3RyZWFtTWV0cmljcygpLFxuICBmaWxlU2l6ZSA9IDAsXG4gIGZpbGVOYW1lLFxuICBvdXRwdXRQYXRoLFxuICBiYXNlRGlyLFxuICByb3V0ZVBhdGgsXG59KSB7XG4gIGNvbnN0IGJhc2UgPSB7XG4gICAgcm91dGUsXG4gICAgZnJvbU1haW5UaHJlYWQsXG4gICAgZnJvbVJzY1dvcmtlcixcbiAgICBmcm9tSHRtbFdvcmtlcixcbiAgICBwcm9jZXNzaW5nVGltZSxcbiAgICBjaHVua3MsXG4gICAgY2h1bmtSYXRlLFxuICAgIG1lbW9yeVVzYWdlLFxuICAgIHN0cmVhbU1ldHJpY3MsXG4gIH0gYXMgQmFzZVJlbmRlck1ldHJpY3M7XG5cbiAgaWYgKHR5cGUgPT09IFwiaHRtbFwiIHx8IHR5cGUgPT09IFwicnNjLWhlYWRsZXNzXCIpIHtcbiAgICByZXR1cm4ge1xuICAgICAgLi4uYmFzZSxcbiAgICAgIHR5cGUsXG4gICAgICBmaWxlU2l6ZSxcbiAgICAgIGZpbGVOYW1lLFxuICAgICAgb3V0cHV0UGF0aCxcbiAgICAgIGJhc2VEaXIsXG4gICAgICByb3V0ZVBhdGgsXG4gICAgfSBhcyB1bmtub3duIGFzIFJlbmRlck1ldHJpY3M8dHlwZW9mIHR5cGU+O1xuICB9IGVsc2Uge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5iYXNlLFxuICAgICAgdHlwZSxcbiAgICB9IGFzIHVua25vd24gYXMgUmVuZGVyTWV0cmljczx0eXBlb2YgdHlwZT47XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUlhLE1BQUEsbUJBQUEsR0FBNkMsU0FBUyxvQkFBcUIsQ0FBQTtBQUFBLEVBQ3RGLEtBQUE7QUFBQSxFQUNBLElBQUE7QUFBQSxFQUNBLGNBQWlCLEdBQUEsWUFBQTtBQUFBLEVBQ2pCLGFBQWdCLEdBQUEsS0FBQTtBQUFBLEVBQ2hCLGNBQWlCLEdBQUEsS0FBQTtBQUFBLEVBQ2pCLGNBQWlCLEdBQUEsQ0FBQTtBQUFBLEVBQ2pCLE1BQVMsR0FBQSxDQUFBO0FBQUEsRUFDVCxTQUFZLEdBQUEsQ0FBQTtBQUFBLEVBQ1osV0FBQSxHQUFjLFFBQVEsV0FBWSxFQUFBO0FBQUEsRUFDbEMsZ0JBQWdCLG1CQUFvQixFQUFBO0FBQUEsRUFDcEMsUUFBVyxHQUFBLENBQUE7QUFBQSxFQUNYLFFBQUE7QUFBQSxFQUNBLFVBQUE7QUFBQSxFQUNBLE9BQUE7QUFBQSxFQUNBO0FBQ0YsQ0FBRyxFQUFBO0FBQ0QsRUFBQSxNQUFNLElBQU8sR0FBQTtBQUFBLElBQ1gsS0FBQTtBQUFBLElBQ0EsY0FBQTtBQUFBLElBQ0EsYUFBQTtBQUFBLElBQ0EsY0FBQTtBQUFBLElBQ0EsY0FBQTtBQUFBLElBQ0EsTUFBQTtBQUFBLElBQ0EsU0FBQTtBQUFBLElBQ0EsV0FBQTtBQUFBLElBQ0E7QUFBQSxHQUNGO0FBRUEsRUFBSSxJQUFBLElBQUEsS0FBUyxNQUFVLElBQUEsSUFBQSxLQUFTLGNBQWdCLEVBQUE7QUFDOUMsSUFBTyxPQUFBO0FBQUEsTUFDTCxHQUFHLElBQUE7QUFBQSxNQUNILElBQUE7QUFBQSxNQUNBLFFBQUE7QUFBQSxNQUNBLFFBQUE7QUFBQSxNQUNBLFVBQUE7QUFBQSxNQUNBLE9BQUE7QUFBQSxNQUNBO0FBQUEsS0FDRjtBQUFBLEdBQ0ssTUFBQTtBQUNMLElBQU8sT0FBQTtBQUFBLE1BQ0wsR0FBRyxJQUFBO0FBQUEsTUFDSDtBQUFBLEtBQ0Y7QUFBQTtBQUVKOzs7OyJ9