rigscope 0.0.0-stage → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -0
- package/.next/app-path-routes-manifest.json +13 -0
- package/.next/build-manifest.json +20 -0
- package/.next/export-marker.json +6 -0
- package/.next/images-manifest.json +68 -0
- package/.next/next-minimal-server.js.nft.json +1 -0
- package/.next/next-server.js.nft.json +1 -0
- package/.next/package.json +1 -0
- package/.next/prerender-manifest.json +297 -0
- package/.next/react-loadable-manifest.json +1 -0
- package/.next/required-server-files.json +369 -0
- package/.next/routes-manifest.json +114 -0
- package/.next/server/app/_global-error/page.js +31 -0
- package/.next/server/app/_global-error/page.js.nft.json +1 -0
- package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -0
- package/.next/server/app/_global-error.html +1 -0
- package/.next/server/app/_global-error.meta +35 -0
- package/.next/server/app/_global-error.rsc +18 -0
- package/.next/server/app/_global-error.segments/_full.segment.rsc +18 -0
- package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +24 -0
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +3 -0
- package/.next/server/app/_not-found/page.js +1 -0
- package/.next/server/app/_not-found/page.js.nft.json +1 -0
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -0
- package/.next/server/app/_not-found.html +1 -0
- package/.next/server/app/_not-found.meta +35 -0
- package/.next/server/app/_not-found.rsc +24 -0
- package/.next/server/app/_not-found.segments/_full.segment.rsc +24 -0
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +30 -0
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +4 -0
- package/.next/server/app/administration/page.js +1 -0
- package/.next/server/app/administration/page.js.nft.json +1 -0
- package/.next/server/app/administration/page_client-reference-manifest.js +1 -0
- package/.next/server/app/administration.html +1 -0
- package/.next/server/app/administration.meta +34 -0
- package/.next/server/app/administration.rsc +29 -0
- package/.next/server/app/administration.segments/_full.segment.rsc +29 -0
- package/.next/server/app/administration.segments/_tree.segment.rsc +4 -0
- package/.next/server/app/administration.segments/administration/__PAGE__.segment.rsc +35 -0
- package/.next/server/app/alerts/page.js +1 -0
- package/.next/server/app/alerts/page.js.nft.json +1 -0
- package/.next/server/app/alerts/page_client-reference-manifest.js +1 -0
- package/.next/server/app/alerts.html +1 -0
- package/.next/server/app/alerts.meta +34 -0
- package/.next/server/app/alerts.rsc +28 -0
- package/.next/server/app/alerts.segments/_full.segment.rsc +28 -0
- package/.next/server/app/alerts.segments/_tree.segment.rsc +4 -0
- package/.next/server/app/alerts.segments/alerts/__PAGE__.segment.rsc +34 -0
- package/.next/server/app/connections/page.js +1 -0
- package/.next/server/app/connections/page.js.nft.json +1 -0
- package/.next/server/app/connections/page_client-reference-manifest.js +1 -0
- package/.next/server/app/connections.html +1 -0
- package/.next/server/app/connections.meta +34 -0
- package/.next/server/app/connections.rsc +29 -0
- package/.next/server/app/connections.segments/_full.segment.rsc +29 -0
- package/.next/server/app/connections.segments/_tree.segment.rsc +4 -0
- package/.next/server/app/connections.segments/connections/__PAGE__.segment.rsc +35 -0
- package/.next/server/app/history/page.js +2 -0
- package/.next/server/app/history/page.js.nft.json +1 -0
- package/.next/server/app/history/page_client-reference-manifest.js +1 -0
- package/.next/server/app/history.html +1 -0
- package/.next/server/app/history.meta +34 -0
- package/.next/server/app/history.rsc +33 -0
- package/.next/server/app/history.segments/_full.segment.rsc +33 -0
- package/.next/server/app/history.segments/_tree.segment.rsc +4 -0
- package/.next/server/app/history.segments/history/__PAGE__.segment.rsc +37 -0
- package/.next/server/app/icon.svg/route.js +1 -0
- package/.next/server/app/icon.svg/route.js.nft.json +1 -0
- package/.next/server/app/icon.svg.body +1 -0
- package/.next/server/app/icon.svg.meta +1 -0
- package/.next/server/app/index.html +1 -0
- package/.next/server/app/index.meta +29 -0
- package/.next/server/app/index.rsc +26 -0
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +31 -0
- package/.next/server/app/index.segments/_full.segment.rsc +26 -0
- package/.next/server/app/index.segments/_tree.segment.rsc +3 -0
- package/.next/server/app/login/page.js +1 -0
- package/.next/server/app/login/page.js.nft.json +1 -0
- package/.next/server/app/login/page_client-reference-manifest.js +1 -0
- package/.next/server/app/login.html +1 -0
- package/.next/server/app/login.meta +34 -0
- package/.next/server/app/login.rsc +26 -0
- package/.next/server/app/login.segments/_full.segment.rsc +26 -0
- package/.next/server/app/login.segments/_tree.segment.rsc +4 -0
- package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +32 -0
- package/.next/server/app/machines/[machineId]/page.js +1 -0
- package/.next/server/app/machines/[machineId]/page.js.nft.json +1 -0
- package/.next/server/app/machines/[machineId]/page_client-reference-manifest.js +1 -0
- package/.next/server/app/page.js +1 -0
- package/.next/server/app/page.js.nft.json +1 -0
- package/.next/server/app/page_client-reference-manifest.js +1 -0
- package/.next/server/app/processes/page.js +2 -0
- package/.next/server/app/processes/page.js.nft.json +1 -0
- package/.next/server/app/processes/page_client-reference-manifest.js +1 -0
- package/.next/server/app/processes.html +1 -0
- package/.next/server/app/processes.meta +34 -0
- package/.next/server/app/processes.rsc +30 -0
- package/.next/server/app/processes.segments/_full.segment.rsc +30 -0
- package/.next/server/app/processes.segments/_tree.segment.rsc +4 -0
- package/.next/server/app/processes.segments/processes/__PAGE__.segment.rsc +36 -0
- package/.next/server/app-paths-manifest.json +13 -0
- package/.next/server/chunks/161.js +1 -0
- package/.next/server/chunks/168.js +1 -0
- package/.next/server/chunks/266.js +68 -0
- package/.next/server/chunks/430.js +116 -0
- package/.next/server/chunks/721.js +1 -0
- package/.next/server/chunks/751.js +1 -0
- package/.next/server/chunks/877.js +1 -0
- package/.next/server/chunks/894.js +2 -0
- package/.next/server/functions-config-manifest.json +4 -0
- package/.next/server/interception-route-rewrite-manifest.js +1 -0
- package/.next/server/middleware-build-manifest.js +1 -0
- package/.next/server/middleware-manifest.json +6 -0
- package/.next/server/middleware-react-loadable-manifest.js +1 -0
- package/.next/server/next-font-manifest.js +1 -0
- package/.next/server/next-font-manifest.json +1 -0
- package/.next/server/pages/404.html +1 -0
- package/.next/server/pages/500.html +1 -0
- package/.next/server/pages-manifest.json +4 -0
- package/.next/server/prefetch-hints.json +123 -0
- package/.next/server/preview-props.json +5 -0
- package/.next/server/server-reference-manifest.js +1 -0
- package/.next/server/server-reference-manifest.json +1 -0
- package/.next/server/webpack-runtime.js +1 -0
- package/.next/static/DZKWF9ur7H5wI0c7RAhdq/_buildManifest.js +1 -0
- package/.next/static/DZKWF9ur7H5wI0c7RAhdq/_ssgManifest.js +1 -0
- package/.next/static/chunks/103-c47318242b24e9ac.js +1 -0
- package/.next/static/chunks/157-0d36ebf66af048ac.js +1 -0
- package/.next/static/chunks/227-417939c480f50747.js +1 -0
- package/.next/static/chunks/408-18819c6490a5f8d3.js +1 -0
- package/.next/static/chunks/4bd1b696-c7408084347438ae.js +1 -0
- package/.next/static/chunks/794-ceeb732a1a81bc27.js +52 -0
- package/.next/static/chunks/939-2600d7c8e583d5ef.js +1 -0
- package/.next/static/chunks/app/_global-error/page-aba28f88d5781771.js +1 -0
- package/.next/static/chunks/app/_not-found/page-a2a510233e4836e2.js +1 -0
- package/.next/static/chunks/app/administration/page-4b16b19bb6a39c36.js +1 -0
- package/.next/static/chunks/app/alerts/page-fe0e877778c60af8.js +1 -0
- package/.next/static/chunks/app/connections/page-99cd54d6929b3f1f.js +1 -0
- package/.next/static/chunks/app/history/page-3fa5846eca26b7f7.js +3 -0
- package/.next/static/chunks/app/layout-4feff677c4071745.js +1 -0
- package/.next/static/chunks/app/login/page-c57e12dbe5146737.js +1 -0
- package/.next/static/chunks/app/machines/[machineId]/page-a5aa1d8676272f38.js +1 -0
- package/.next/static/chunks/app/page-1ae9fc94c897785b.js +1 -0
- package/.next/static/chunks/app/processes/page-e471ed23a1d5632f.js +3 -0
- package/.next/static/chunks/framework-ea4f97ca039bd777.js +1 -0
- package/.next/static/chunks/main-a458d32948147b84.js +5 -0
- package/.next/static/chunks/main-app-f92328c8950d2e53.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-aba28f88d5781771.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-aba28f88d5781771.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/global-error-43cbaa3aa1576eb4.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-aba28f88d5781771.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-aba28f88d5781771.js +1 -0
- package/.next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
- package/.next/static/chunks/webpack-9ca43f4ce1bb8938.js +1 -0
- package/.next/static/css/e41ccbccc3afaae5.css +1 -0
- package/ARCHITECTURE.md +279 -0
- package/CHANGELOG.md +25 -0
- package/DESIGN.md +299 -0
- package/LICENSE +21 -0
- package/README.md +157 -2
- package/SECURITY.md +12 -0
- package/THIRD_PARTY_NOTICES.md +8847 -0
- package/bin/rigscope.cjs +6 -0
- package/dist/cli.cjs +9075 -0
- package/dist/collector.cjs +5671 -0
- package/dist/hub.cjs +8355 -0
- package/dist/ops.cjs +4972 -0
- package/dist/system.cjs +4333 -0
- package/docs/bottlenecks.md +62 -0
- package/docs/development.md +46 -0
- package/docs/exports.md +39 -0
- package/docs/installation.md +477 -0
- package/docs/operations.md +515 -0
- package/docs/releasing.md +152 -0
- package/docs/scale-acceptance.json +412 -0
- package/docs/scale-validation.json +1898 -0
- package/docs/scale-validation.md +263 -0
- package/next.config.js +38 -0
- package/package.json +109 -4
- package/packaging/README.md +5 -0
- package/packaging/collector.env.example +24 -0
- package/packaging/hub.env.example +31 -0
- package/packaging/system/90-rigscope-rapl.rules +7 -0
- package/packaging/system/README.md +5 -0
- package/packaging/system/rigscope-collector.service.example +53 -0
- package/packaging/system/rigscope-hub.service.example +50 -0
- package/packaging/system/rigscope-rapl.sysusers +5 -0
- package/packaging/system/rigscope.sysusers +7 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/page"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"70664","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"60440","name":"*","chunks":[],"async":false}},"1461":{"*":{"id":"86673","name":"*","chunks":[],"async":false}},"1721":{"*":{"id":"40015","name":"*","chunks":[],"async":false}},"2394":{"*":{"id":"76670","name":"*","chunks":[],"async":false}},"2701":{"*":{"id":"7867","name":"*","chunks":[],"async":false}},"2737":{"*":{"id":"4833","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"61335","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"82265","name":"*","chunks":[],"async":false}},"5000":{"*":{"id":"93022","name":"*","chunks":[],"async":false}},"5773":{"*":{"id":"71793","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"74661","name":"*","chunks":[],"async":false}},"7044":{"*":{"id":"9479","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"35421","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"81921","name":"*","chunks":[],"async":false}},"7281":{"*":{"id":"81931","name":"*","chunks":[],"async":false}},"7339":{"*":{"id":"30847","name":"*","chunks":[],"async":false}},"8250":{"*":{"id":"12761","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"84342","name":"*","chunks":[],"async":false}},"8887":{"*":{"id":"85909","name":"*","chunks":[],"async":false}},"9939":{"*":{"id":"58910","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/home/triet/Project/rigscope/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/esm/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/esm/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/src/app/globals.css":{"id":1743,"name":"*","chunks":["939","static/chunks/939-2600d7c8e583d5ef.js","177","static/chunks/app/layout-4feff677c4071745.js"],"async":false},"/home/triet/Project/rigscope/src/components/theme-provider.tsx":{"id":2737,"name":"*","chunks":["939","static/chunks/939-2600d7c8e583d5ef.js","177","static/chunks/app/layout-4feff677c4071745.js"],"async":false},"/home/triet/Project/rigscope/src/live/live-provider.tsx":{"id":9939,"name":"*","chunks":["939","static/chunks/939-2600d7c8e583d5ef.js","177","static/chunks/app/layout-4feff677c4071745.js"],"async":false},"/home/triet/Project/rigscope/src/components/alerts/alerts-view.tsx":{"id":1461,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/src/components/resources/connections-panels.tsx":{"id":5773,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/src/components/admin/administration-view.tsx":{"id":7044,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/src/components/live/login-view.tsx":{"id":5000,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/src/components/history/history-view.tsx":{"id":8250,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/src/components/live/machine-navigation.tsx":{"id":1721,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/src/components/shell/sidebar.tsx":{"id":2701,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/src/components/theme-toggle.tsx":{"id":2394,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/src/components/live/fleet-view.tsx":{"id":7281,"name":"*","chunks":["157","static/chunks/157-0d36ebf66af048ac.js","939","static/chunks/939-2600d7c8e583d5ef.js","103","static/chunks/103-c47318242b24e9ac.js","227","static/chunks/227-417939c480f50747.js","974","static/chunks/app/page-1ae9fc94c897785b.js"],"async":false},"/home/triet/Project/rigscope/src/components/live/machine-view.tsx":{"id":8887,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/src/components/processes/processes-view.tsx":{"id":7339,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/home/triet/Project/rigscope/src/":[],"/home/triet/Project/rigscope/src/app/layout":[{"inlined":false,"path":"static/css/e41ccbccc3afaae5.css"}],"/home/triet/Project/rigscope/src/app/page":[]},"rscModuleMapping":{"484":{"*":{"id":"98562","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"15098","name":"*","chunks":[],"async":false}},"1461":{"*":{"id":"29953","name":"*","chunks":[],"async":false}},"1721":{"*":{"id":"28565","name":"*","chunks":[],"async":false}},"1743":{"*":{"id":"61135","name":"*","chunks":[],"async":false}},"2394":{"*":{"id":"46568","name":"*","chunks":[],"async":false}},"2701":{"*":{"id":"50369","name":"*","chunks":[],"async":false}},"2737":{"*":{"id":"65223","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"16237","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"33859","name":"*","chunks":[],"async":false}},"5000":{"*":{"id":"52604","name":"*","chunks":[],"async":false}},"5773":{"*":{"id":"37147","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"36675","name":"*","chunks":[],"async":false}},"7044":{"*":{"id":"2902","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"98099","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"95547","name":"*","chunks":[],"async":false}},"7281":{"*":{"id":"22993","name":"*","chunks":[],"async":false}},"7339":{"*":{"id":"89893","name":"*","chunks":[],"async":false}},"8250":{"*":{"id":"79173","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"47644","name":"*","chunks":[],"async":false}},"8887":{"*":{"id":"73132","name":"*","chunks":[],"async":false}},"9939":{"*":{"id":"89604","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
(()=>{var a={};a.id=952,a.ids=[952],a.modules={104:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(65366).A)("X",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]])},1498:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(65366).A)("Search",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["path",{d:"m21 21-4.3-4.3",key:"1qie3q"}]])},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},8128:a=>{"use strict";a.exports=require("next/dist/server/runtime-reacts.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},20340:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>k,metadata:()=>i});var d=c(5735),e=c(91986),f=c(88713),g=c(35448),h=c(89893);let i={title:"Processes"};function j(){return(0,d.jsx)(f.G,{title:"Processes",children:(0,d.jsx)(g.Z,{title:"Process detail",className:"mt-2",children:(0,d.jsx)("p",{role:"status",className:"py-10 text-center text-sm text-muted-foreground",children:"Loading the process view…"})})})}function k(){return(0,d.jsx)(e.Suspense,{fallback:(0,d.jsx)(j,{}),children:(0,d.jsx)(h.ProcessesView,{})})}},28354:a=>{"use strict";a.exports=require("util")},28787:(a,b,c)=>{"use strict";c.r(b),c.d(b,{__next_app__:()=>q,handler:()=>s,routeModule:()=>r});var d=c(21635),e=c(86315),f=c(1020),g=c(61287),h={};for(let a in g)0>["default","__next_app__","routeModule","handler"].indexOf(a)&&(h[a]=()=>g[a]);c.d(b,h);let i=(0,d.p)(()=>Promise.resolve().then(c.bind(c,76537))),j=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,95547,23))),k=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,55091,23))),l=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,45270,23))),m=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,28193,23))),n=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,95547,23))),o={children:["",{children:["processes",{children:["__PAGE__",{},{page:[(0,d.p)(()=>Promise.resolve().then(c.bind(c,20340))),"/home/triet/Project/rigscope/src/app/processes/page.tsx"]}]},{"global-error":[n,"next/dist/client/components/builtin/global-error.js"],metadata:{icon:[async a=>(await (0,d.p)(()=>Promise.resolve().then(c.bind(c,59645)))()).default(a)],apple:[],openGraph:[],twitter:[],manifest:void 0}},[]]},{layout:[i,"/home/triet/Project/rigscope/src/app/layout.tsx"],"global-error":[j,"next/dist/client/components/builtin/global-error.js"],"not-found":[k,"next/dist/client/components/builtin/not-found.js"],forbidden:[l,"next/dist/client/components/builtin/forbidden.js"],unauthorized:[m,"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[async a=>(await (0,d.p)(()=>Promise.resolve().then(c.bind(c,59645)))()).default(a)],apple:[],openGraph:[],twitter:[],manifest:void 0}},[]]}.children,p=(0,e.H)({tree:o,page:"/processes/page",pathname:"/processes",require:c,loadChunk:()=>Promise.resolve(),interopDefault:f.T}),q=p.__next_app__,r=p.routeModule,s=p.handler},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},29356:(a,b,c)=>{"use strict";c.d(b,{c:()=>e});var d=c(67484);function e(a=1e3){let[b,c]=(0,d.useState)(()=>Date.now());return b}},30847:(a,b,c)=>{"use strict";c.d(b,{ProcessesView:()=>aV});var d=c(48249),e=c(2116),f=c.n(e),g=c(48878),h=c(66125),i=c(89313),j=c(22091),k=c(22338),l=c(81232),m=c(75006),n=c(4155),o=c(58910),p=c(52464),q=c(67484),r=c(31742),s=c(93484),t=c(49187),u=c(73742),v=c(12421),w=c(90162),x=c(1498),y=c(104),z=c(64500);let A=new Set(["bash","zsh","fish","sh","dash","ksh","mksh","tcsh","csh","ash","busybox"]),B=new Set(["sshd","sshd-session","dropbear","tmux","screen","systemd"]),C=["cpuPercent","memoryRssBytes","gpuMemoryBytes","ioReadBytesPerSec","ioWriteBytesPerSec"];function D(a,b,c){return a.slice().sort((a,d)=>K(J(a,b),J(d,b),c))}function E(a){return null!==a&&!!("init.scope"===a||/^session-.+\.scope$/.test(a)||/^user@.+\.service$/.test(a))}function F(a){return null===a||!a.endsWith(".scope")&&!a.endsWith(".service")||E(a)?null:a}function G(a){let b=a.replace(/\.(scope|service)$/,"");return b.startsWith("app-gnome-")?b=b.slice(10):b.startsWith("app-")&&(b=b.slice(4)),(b=b.replace(/-\d+$/,"")).length>0?b:a}function H(a){return{key:`tree:${a.pid}:${a.startTicks}`,label:a.name,kind:"tree",leader:a}}function I(a,b){switch(b){case"cpu":return a.cpuPercent;case"memory":return a.memoryRssBytes;case"gpuMemory":return a.gpuMemoryBytes;case"ioRead":return a.ioReadBytesPerSec;case"ioWrite":return a.ioWriteBytesPerSec;case"name":return a.label;case"count":return a.count;case"pid":var c=a.members;let d=null;for(let a of c)(null===d||a.pid<d)&&(d=a.pid);return d;case"user":return a.users.length>0?a.users[0]:null}}function J(a,b){switch(b){case"cpu":return a.cpuPercent;case"memory":return a.memoryRssBytes;case"gpuMemory":return a.gpuMemoryBytes;case"ioRead":return a.ioReadBytesPerSec;case"ioWrite":return a.ioWriteBytesPerSec;case"name":return a.name;case"count":return 1;case"pid":return a.pid;case"user":return a.user}}function K(a,b,c){let d,e=null==a,f=null==b;if(e&&f)return 0;if(e)return 1;if(f)return -1;if("number"==typeof a&&"number"==typeof b)d=a-b;else{let c=String(a).toLowerCase(),e=String(b).toLowerCase();d=c<e?-1:+(c>e)}return"asc"===c?d:-d}c(25982);var L=c(93224);let M={key:"cpu",dir:"desc"};function N(a,b,c){return null!==a&&b-a>=(!Number.isFinite(c)||c<=0?1e4:Math.max(1e4,3*c))}let O=[{value:"applications",label:"Applications"},{value:"processes",label:"Processes"},{value:"tree",label:"Tree"}];function P(a){return`${a.pid}:${a.startTicks}`}function Q(a){if(void 0===a.command)return a;let{command:b,...c}=a;return c}function R(a){return null!=a&&Number.isFinite(a)?Math.round(a).toString().replace(/\B(?=(\d{3})+(?!\d))/g,","):"—"}function S(a){switch(a){case"idle":return{label:"Not connected",tone:"muted",description:"Select a machine to request process detail.",retryable:!1};case"acquiring":return{label:"Connecting",tone:"warn",description:"Requesting process detail…",retryable:!1};case"loading":return{label:"Waiting",tone:"warn",description:"Waiting for the collector's first process snapshot…",retryable:!1};case"ready":return{label:"Live",tone:"ok",description:"Process detail is live.",retryable:!1};case"paused":return{label:"Paused",tone:"muted",description:"Process updates are paused.",retryable:!1};case"stale":return{label:"Not refreshing",tone:"warn",description:"The last snapshot is retained, but new snapshots are not arriving.",retryable:!0};case"disconnected":return{label:"Disconnected",tone:"crit",description:"The collector is disconnected; the last snapshot is not live.",retryable:!0};case"withheld":return{label:"Withheld",tone:"warn",description:"Process detail is withheld for this hub.",retryable:!0};case"unsupported":return{label:"Unsupported",tone:"warn",description:"This collector cannot provide process detail.",retryable:!0};case"busy":return{label:"Busy",tone:"warn",description:"Too many process views are open for this hub.",retryable:!0};case"expired":return{label:"Expired",tone:"warn",description:"Process detail expired before a fresh snapshot arrived.",retryable:!0};case"failed":return{label:"Scan failed",tone:"crit",description:"The process scan failed repeatedly.",retryable:!0};case"cancelled":return{label:"Stopped",tone:"muted",description:"The process detail view was stopped.",retryable:!0};case"error":return{label:"Unavailable",tone:"crit",description:"Process detail is unavailable right now.",retryable:!0}}}var T=c(29356);class U{maxAgeMs;limit;session=null;entries=new Map;constructor(a=3e5,b=32){this.maxAgeMs=a,this.limit=b}scope(a){(this.session!==a||null===a)&&this.entries.clear(),this.session=a}get(a,b,c=Date.now()){this.scope(b);let d=this.entries.get(a);return d&&c-d.lastReceivedMs>=this.maxAgeMs?void this.entries.delete(a):d}set(a,b,c){this.scope(b),this.entries.delete(a),this.entries.set(a,c),this.entries.size>this.limit&&this.entries.delete(this.entries.keys().next().value)}delete(a,b){this.scope(b),this.entries.delete(a)}}let V=new U;function W(a,b){let c=V.get(a??"",b);return void 0!==c?{phase:"stale",message:"Resuming process updates…",...c}:{phase:null===a?"idle":"acquiring",detail:null,message:null,intervalMs:1e3,leaseMs:15e3,lastReceivedMs:null}}var X=c(65366);let Y=(0,X.A)("ChevronsUpDown",[["path",{d:"m7 15 5 5 5-5",key:"1hf1tw"}],["path",{d:"m7 9 5-5 5 5",key:"sgt6xg"}]]),Z=(0,X.A)("ArrowUp",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]),$=(0,X.A)("ArrowDown",[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]]);var _=c(38420),aa=c(94054);let ab=[{id:"name",label:"Application",sortKey:"name",align:"left",width:300},{id:"count",label:"Procs",sortKey:"count",align:"right",width:76},{id:"cpu",label:"CPU / core",sortKey:"cpu",align:"right",width:104},{id:"memory",label:"RSS",sortKey:"memory",align:"right",width:96},{id:"gpuMemory",label:"VRAM",sortKey:"gpuMemory",align:"right",width:96},{id:"ioRead",label:"Read",sortKey:"ioRead",align:"right",width:104},{id:"ioWrite",label:"Write",sortKey:"ioWrite",align:"right",width:104},{id:"users",label:"Users",sortKey:"user",align:"left",width:160}],ac=[{id:"name",label:"Process",sortKey:"name",align:"left",width:300},{id:"pid",label:"PID",sortKey:"pid",align:"right",width:84},{id:"user",label:"User",sortKey:"user",align:"left",width:120},{id:"cpu",label:"CPU / core",sortKey:"cpu",align:"right",width:104},{id:"memory",label:"RSS",sortKey:"memory",align:"right",width:96},{id:"gpuMemory",label:"VRAM",sortKey:"gpuMemory",align:"right",width:96},{id:"ioRead",label:"Read",sortKey:"ioRead",align:"right",width:104},{id:"ioWrite",label:"Write",sortKey:"ioWrite",align:"right",width:104},{id:"threads",label:"Threads",align:"right",width:84}],ad=Object.freeze({}),ae=Object.freeze([]),af=new Set(["cpu","memory","gpuMemory","ioRead","ioWrite","name","count","pid","user"]);function ag(a){return Math.round(Math.min(1200,Math.max(56,a)))}function ah(a){return"applications"===a||"processes"===a||"tree"===a?a:null}function ai(a){if(null===a||"object"!=typeof a)return null;let{key:b,dir:c}=a;return"string"==typeof b&&af.has(b)&&("asc"===c||"desc"===c)?{key:b,dir:c}:null}function aj(a){if(null===a||"object"!=typeof a||Array.isArray(a))return null;let b={};for(let[c,d]of Object.entries(a))"number"==typeof d&&Number.isFinite(d)&&(b[c]=ag(d));return b}function ak(a){return"string"==typeof a?a.slice(0,200):null}function al(a){return"boolean"==typeof a?a:null}function am(a){return Array.isArray(a)&&a.every(a=>"string"==typeof a)?a.slice(0,500):null}let an="overflow-hidden text-ellipsis whitespace-nowrap border-b border-border px-2 py-2 align-middle",ao=`${an} tnum text-right text-xs`,ap="relative overflow-hidden whitespace-nowrap border-b border-border px-2 py-2 text-left text-xs font-normal text-muted-foreground";function aq(a,b){return b[a.id]??a.width}function ar({label:a,width:b,onChange:c,onReset:e}){let f=(0,q.useRef)(null);return(0,d.jsx)("div",{role:"separator","aria-orientation":"vertical","aria-label":`Resize ${a} column`,"aria-valuenow":b,"aria-valuemin":56,"aria-valuemax":1200,tabIndex:0,title:"Drag to resize \xb7 double-click to reset",onPointerDown:a=>{0===a.button&&(a.preventDefault(),a.stopPropagation(),a.currentTarget.setPointerCapture(a.pointerId),f.current={x:a.clientX,width:b})},onPointerMove:a=>{null!==f.current&&c(ag(f.current.width+a.clientX-f.current.x))},onPointerUp:a=>{null!==f.current&&c(ag(f.current.width+a.clientX-f.current.x)),f.current=null,a.currentTarget.hasPointerCapture(a.pointerId)&&a.currentTarget.releasePointerCapture(a.pointerId)},onPointerCancel:()=>{f.current=null},onLostPointerCapture:()=>{f.current=null},onClick:a=>a.stopPropagation(),onDoubleClick:a=>{a.stopPropagation(),e()},onKeyDown:a=>{"ArrowLeft"===a.key?(a.preventDefault(),c(ag(b-16))):"ArrowRight"===a.key&&(a.preventDefault(),c(ag(b+16)))},className:"group/handle absolute inset-y-0 right-0 z-10 flex w-2.5 cursor-col-resize touch-none select-none justify-end",children:(0,d.jsx)("span",{"aria-hidden":!0,className:"my-2 w-px bg-border transition-colors group-hover/handle:bg-accent group-focus-visible/handle:bg-accent"})})}function as({column:a,sort:b,onSort:c,width:e,onResize:f,onReset:g}){let h="right"===a.align,i=a.sortKey,j=void 0!==i?b.key!==i?"none":"asc"===b.dir?"ascending":"descending":"none",k="none"!==j,l=k?"asc"===b.dir?Z:$:Y;return(0,d.jsxs)("th",{scope:"col","aria-sort":void 0!==i?j:void 0,className:h?`${ap} text-right`:ap,children:[void 0!==i?(0,d.jsxs)("button",{type:"button",onClick:()=>c(i),className:["inline-flex min-h-6 max-w-full items-center gap-1 rounded-sm transition-colors hover:text-foreground",h?"w-full justify-end pr-1":"",k?"text-foreground":""].filter(Boolean).join(" "),children:[(0,d.jsx)("span",{className:"truncate",children:a.label}),(0,d.jsx)(l,{className:k?"h-3 w-3 shrink-0":"h-3 w-3 shrink-0 opacity-40","aria-hidden":!0})]}):(0,d.jsx)("span",{className:h?"block truncate pr-1":"block truncate",children:a.label}),(0,d.jsx)(ar,{label:a.label,width:e,onChange:f,onReset:g})]})}function at({table:a,columns:b,label:c,caption:e,sort:f,onSort:g,children:h}){let[i,j]=(0,aa.u)(`processes.widths.${a}`,ad,aj),k=(0,q.useRef)(null),[l,m]=(0,q.useState)(0),n=a=>"name"===a.id?160:56,o=b.reduce((a,b)=>a+n(b),0),p=b.reduce((a,b)=>a+aq(b,i),0),r={},s=Math.max(l||p,o),t=[...b];for(;t.length>0;){let a=t.reduce((a,b)=>a+aq(b,i),0),b=t.filter(b=>s*aq(b,i)/a<n(b));if(0===b.length){for(let b of t)r[b.id]=s*aq(b,i)/a;break}for(let a of b)r[a.id]=n(a),s-=n(a);t=t.filter(a=>!b.includes(a))}return(0,d.jsx)("div",{ref:k,className:"relative min-h-0 w-full min-w-0 flex-1 overflow-auto overscroll-contain",tabIndex:0,role:"region","aria-label":c,children:(0,d.jsxs)("table",{className:"table-fixed border-separate border-spacing-0 text-left",style:{width:"100%",minWidth:o},children:[(0,d.jsx)("caption",{className:"sr-only",children:e}),(0,d.jsx)("colgroup",{children:b.map(a=>(0,d.jsx)("col",{style:{width:r[a.id]}},a.id))}),(0,d.jsx)("thead",{className:"sticky top-0 z-20 bg-card",children:(0,d.jsx)("tr",{children:b.map(a=>(0,d.jsx)(as,{column:a,sort:f,onSort:g,width:r[a.id],onResize:c=>{let d,e,f;return d=b.indexOf(a),e=b[d+1]??b[d-1],f=Math.max(n(a)-r[a.id],Math.min(c-r[a.id],r[e.id]-n(e))),void j({...r,[a.id]:r[a.id]+f,[e.id]:r[e.id]-f})},onReset:()=>j(b=>{let{[a.id]:c,...d}=b;return d})},a.id))})}),(0,d.jsx)("tbody",{children:h})]})})}function au({value:a,kind:b,partial:c=!1}){let e=function(a,b,c=!1){let d;if(null===a||!Number.isFinite(a)||a<0)return{text:"—",atLeast:!1,title:null};switch(b){case"percent":d=(0,L.l9)(a);break;case"bytes":d=(0,L.z3)(a);break;case"rate":d=`${(0,L.z3)(a)}/s`;break;case"count":d=R(a)}return{text:d,atLeast:c,title:c?`At least ${d}: some processes in this group did not report this metric.`:null}}(a,b,c);return(0,d.jsxs)("td",{className:"—"===e.text?`${ao} text-muted-foreground`:ao,title:e.title??void 0,children:[e.atLeast?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("span",{"aria-hidden":!0,children:"≥ "}),(0,d.jsx)("span",{className:"sr-only",children:"at least "})]}):null,e.text]})}function av(a){let b=a.name.length>0?a.name:"Unnamed process";return null!==a.unit?`${b} \xb7 ${a.unit}`:b}function aw({row:a,depth:b=0}){return(0,d.jsx)("th",{scope:"row",className:`${an} text-left text-sm font-medium`,title:av(a),children:(0,d.jsxs)("span",{style:b>0?{paddingLeft:`${14*b}px`}:void 0,children:[b>0?(0,d.jsx)("span",{className:"sr-only",children:`Nested level ${b+1}. `}):null,a.name.length>0?a.name:(0,d.jsx)("span",{className:"text-muted-foreground",children:"Unnamed process"})]})})}function ax({entries:a,sort:b,onSort:c,mode:e}){return(0,d.jsx)(at,{table:"processes",columns:ac,label:"tree"===e?"Process tree":"Process list",caption:"tree"===e?"Process tree with nesting depth, PID, user, CPU per core, resident memory, GPU memory, read and write rates, and threads":"Processes with PID, user, CPU per core, resident memory, GPU memory, read and write rates, and threads",sort:b,onSort:c,children:a.map(({row:a,depth:b})=>(0,d.jsxs)("tr",{className:"transition-colors hover:bg-card-strong/60",children:[(0,d.jsx)(aw,{row:a,depth:b}),(0,d.jsx)("td",{className:ao,children:a.pid}),(0,d.jsx)("td",{className:`${an} text-xs text-muted-foreground`,title:a.user??void 0,children:a.user??"—"}),(0,d.jsx)(au,{value:a.cpuPercent,kind:"percent"}),(0,d.jsx)(au,{value:a.memoryRssBytes,kind:"bytes"}),(0,d.jsx)(au,{value:a.gpuMemoryBytes,kind:"bytes"}),(0,d.jsx)(au,{value:a.ioReadBytesPerSec,kind:"rate"}),(0,d.jsx)(au,{value:a.ioWriteBytesPerSec,kind:"rate"}),(0,d.jsx)("td",{className:ao,children:R(a.threads)})]},P(a)))})}function ay({group:a}){return(0,d.jsx)(d.Fragment,{children:a.members.map(a=>(0,d.jsxs)("tr",{className:"bg-card-strong/40 transition-colors hover:bg-card-strong/70",children:[(0,d.jsx)("th",{scope:"row",className:`${an} text-left text-xs font-normal`,title:`${av(a)} \xb7 PID ${a.pid}`,children:(0,d.jsxs)("span",{className:"pl-5",children:[a.name.length>0?a.name:"Unnamed process",(0,d.jsx)("span",{className:"tnum ml-2 text-muted-foreground",children:a.pid})]})}),(0,d.jsx)("td",{className:ao}),(0,d.jsx)(au,{value:a.cpuPercent,kind:"percent"}),(0,d.jsx)(au,{value:a.memoryRssBytes,kind:"bytes"}),(0,d.jsx)(au,{value:a.gpuMemoryBytes,kind:"bytes"}),(0,d.jsx)(au,{value:a.ioReadBytesPerSec,kind:"rate"}),(0,d.jsx)(au,{value:a.ioWriteBytesPerSec,kind:"rate"}),(0,d.jsx)("td",{className:`${an} text-xs text-muted-foreground`,title:a.user??void 0,children:a.user??"—"})]},P(a)))})}function az({groups:a,sort:b,onSort:c,expanded:e,onToggleGroup:f}){return(0,d.jsx)(at,{table:"applications",columns:ab,label:"Applications",caption:"Applications grouped by systemd unit, process tree, or kernel, with process count, aggregate CPU per core, resident memory, GPU memory, read and write rates, and users",sort:b,onSort:c,children:a.map(a=>{var b;let c=e.has(a.key),g=a.label.length>0?a.label:"Unnamed application",h=a.users.length>0?a.users.join(", "):"—";return(0,d.jsxs)(q.Fragment,{children:[(0,d.jsxs)("tr",{className:"transition-colors hover:bg-card-strong/60",children:[(0,d.jsx)("th",{scope:"row",className:`${an} text-left font-normal`,title:`${g} \xb7 ${"unit"===(b=a.kind)?"systemd unit":"kernel"===b?"kernel":"process tree"}`,children:(0,d.jsxs)("button",{type:"button","aria-expanded":c,onClick:()=>f(a.key),className:"inline-flex min-h-6 max-w-full items-center gap-1.5 rounded-sm text-left",children:[(0,d.jsx)(_.A,{className:`h-3.5 w-3.5 shrink-0 text-muted-foreground transition-transform ${c?"rotate-90":""}`,"aria-hidden":!0}),(0,d.jsx)("span",{className:"truncate text-sm font-medium",children:g})]})}),(0,d.jsx)("td",{className:ao,children:R(a.count)}),(0,d.jsx)(au,{value:a.cpuPercent,kind:"percent",partial:a.partial.cpuPercent}),(0,d.jsx)(au,{value:a.memoryRssBytes,kind:"bytes",partial:a.partial.memoryRssBytes}),(0,d.jsx)(au,{value:a.gpuMemoryBytes,kind:"bytes",partial:a.partial.gpuMemoryBytes}),(0,d.jsx)(au,{value:a.ioReadBytesPerSec,kind:"rate",partial:a.partial.ioReadBytesPerSec}),(0,d.jsx)(au,{value:a.ioWriteBytesPerSec,kind:"rate",partial:a.partial.ioWriteBytesPerSec}),(0,d.jsx)("td",{className:`${an} text-xs text-muted-foreground`,title:h,children:h})]}),c?(0,d.jsx)(ay,{group:a}):null]},a.key)})})}function aA({mode:a,groups:b,rows:c,tree:e,sort:f,onSort:g,expanded:h,onToggleGroup:i}){if("applications"===a)return(0,d.jsx)(az,{groups:b,sort:f,onSort:g,expanded:h,onToggleGroup:i});let j="tree"===a?e.map(a=>({row:a.row,depth:a.depth})):c.map(a=>({row:a,depth:0}));return(0,d.jsx)(ax,{entries:j,mode:a,sort:f,onSort:g})}var aB=c(71335),aC=c(56013);let aD=[{key:"cpuPercent",label:"cpu"},{key:"memoryRssBytes",label:"memory"},{key:"gpuMemoryBytes",label:"vram"},{key:"ioReadBytesPerSec",label:"read"},{key:"ioWriteBytesPerSec",label:"write"},{key:"threads",label:"threads"}];function aE(a){return new Date(a).toISOString()}function aF(a){return a.displayName?.trim()||a.hostname.trim()||a.machineId}function aG(a){return"applications"===a.mode?a.groups.flatMap(b=>D([...b.members],a.sort.key,a.sort.dir).map(a=>({row:a,application:b.label,applicationKind:b.kind,depth:0}))):"tree"===a.mode?a.tree.map(a=>({row:a.row,application:null,applicationKind:null,depth:a.depth})):a.sortedRows.map(a=>({row:a,application:null,applicationKind:null,depth:0}))}function aH(a){let b=a.now??Date.now(),c=null===a.receivedAtMs?null:Math.max(0,b-a.receivedAtMs),d=null===c?"receipt time unknown":`${Math.round(c/1e3)}s old`;return null===a.receivedAtMs?{label:"unknown",ageMs:null,stale:!0,note:"No browser receipt time is available for this snapshot."}:"paused"===a.phase?{label:"paused",ageMs:c,stale:!1,note:`Paused \xb7 ${d}. Not live.`}:"disconnected"===a.phase?{label:"disconnected",ageMs:c,stale:!0,note:`Collector disconnected \xb7 last snapshot ${d}. Not live.`}:"withheld"===a.phase||"unsupported"===a.phase?{label:"not live",ageMs:c,stale:!0,note:`Process detail is ${a.phase} \xb7 last snapshot ${d}.`}:"failed"===a.phase||"expired"===a.phase||"busy"===a.phase||"cancelled"===a.phase||"error"===a.phase?{label:"not live",ageMs:c,stale:!0,note:`Refresh problem \xb7 last snapshot ${d}. Not live.`}:"acquiring"===a.phase||"loading"===a.phase||"idle"===a.phase?{label:"waiting",ageMs:c,stale:!0,note:`Waiting for a fresh snapshot \xb7 ${d}.`}:N(a.receivedAtMs,b,a.intervalMs)?{label:"stale",ageMs:c,stale:!0,note:`No new snapshot has arrived \xb7 ${d}. Not live.`}:{label:"live",ageMs:c,stale:!1,note:`Live \xb7 updated ${d}.`}}function aI(a){return aD.filter(({key:b})=>null===a[b]).map(({label:a})=>a).join(" ")}function aJ(a,b){let c=aH({phase:a.phase,receivedAtMs:a.receivedAtMs,intervalMs:a.intervalMs,now:b}),d=null===a.receivedAtMs?"unknown":aE(a.receivedAtMs),e=a.query.trim();return[`Filtered process snapshot from the loaded view \xb7 ${c.note}`,`Search: ${e.length>0?e:"(none)"} \xb7 view: ${a.mode} \xb7 sort: ${a.sort.key} ${a.sort.dir}`,`Snapshot ${a.snapshot.processes.length} shown of ${a.snapshot.totalProcesses} processes \xb7 ${a.snapshot.inaccessible} unreadable${a.snapshot.truncated?" \xb7 collector kept the highest-CPU rows":""}`,`Captured ${a.capturedAt} \xb7 received ${d}`]}let aK=["name","pid","user","application","application_kind","tree_depth","cpu_percent","memory_rss_bytes","gpu_memory_bytes","io_read_bytes_per_sec","io_write_bytes_per_sec","threads","unavailable_metrics"],aL="inline-flex min-h-7 items-center rounded-md border border-border bg-background px-2 text-xs text-foreground transition-colors hover:bg-card-strong disabled:cursor-not-allowed disabled:opacity-50";function aM(a){let[b,c]=(0,q.useState)(null),e=null!==a.snapshot&&null!==a.capturedAt,f=e?"applications"===a.mode?a.filteredRows.length:"tree"===a.mode?a.tree.length:a.sortedRows.length:0,g=!e||0===f,h=b=>{if(null===a.snapshot||null===a.capturedAt)return;let d=Date.now(),e={...a,snapshot:a.snapshot,capturedAt:a.capturedAt,exportedAt:d};try{let a,g,h,i=function(a,b,c=Date.now()){let d=Date.parse(a.capturedAt);return(0,aC.Y8)("processes",aF(a.machine),Number.isFinite(d)?d:c,b)}(e,b,d),j="csv"===b?function(a){let b,c,d=a.exportedAt??Date.now(),e=(b=aG(a),c=aH({phase:a.phase,receivedAtMs:a.receivedAtMs,intervalMs:a.intervalMs,now:d}),[["Rigscope process snapshot"],["Scope",aJ(a,d)[0]],["Machine",aF(a.machine)],["Machine ID",a.machine.machineId],["Snapshot captured",a.capturedAt],["Snapshot received",null===a.receivedAtMs?"unknown":aE(a.receivedAtMs)],["Freshness",`${c.label}${null===c.ageMs?"":` \xb7 ${Math.round(c.ageMs/1e3)}s old`}`],["Search",a.query.trim()||"(none)"],["View",a.mode],["Sort",`${a.sort.key} ${a.sort.dir}`],["Snapshot rows",`${a.snapshot.processes.length} shown of ${a.snapshot.totalProcesses}`],["Unreadable",String(a.snapshot.inaccessible)],["Collector truncated",a.snapshot.truncated?"true":"false"],["Exported rows",String(b.length)],["Note",aJ(a,d).slice(1).join(" ")],[]]);for(let b of(e.push([...aK]),aG(a)))e.push(function(a){let{row:b}=a;return[b.name,b.pid,b.user,a.application,a.applicationKind,a.depth,b.cpuPercent,b.memoryRssBytes,b.gpuMemoryBytes,b.ioReadBytesPerSec,b.ioWriteBytesPerSec,b.threads,aI(b)]}(b));return(0,aB.kg)(e)}(e):(a=e.exportedAt??Date.now(),g=aH({phase:e.phase,receivedAtMs:e.receivedAtMs,intervalMs:e.intervalMs,now:a}),h={app:"Rigscope",kind:"processes",version:1,exportedAt:aE(a),scope:{description:"Filtered process snapshot from the loaded view",machine:{id:e.machine.machineId,name:aF(e.machine),hostname:e.machine.hostname,connected:e.machine.connected},query:e.query.trim(),view:e.mode,sort:e.sort},snapshot:{capturedAt:e.capturedAt,receivedAt:null===e.receivedAtMs?null:aE(e.receivedAtMs),ageMs:g.ageMs,freshness:g.label,live:!g.stale&&"live"===g.label,note:g.note,totalProcesses:e.snapshot.totalProcesses,shownProcesses:e.snapshot.processes.length,inaccessible:e.snapshot.inaccessible,truncated:e.snapshot.truncated},exportedRows:aG(e).length,notes:aJ(e,a),processes:aG(e).map(a=>({name:a.row.name,pid:a.row.pid,user:a.row.user,application:a.application,applicationKind:a.applicationKind,treeDepth:a.depth,cpuPercent:a.row.cpuPercent,memoryRssBytes:a.row.memoryRssBytes,gpuMemoryBytes:a.row.gpuMemoryBytes,ioReadBytesPerSec:a.row.ioReadBytesPerSec,ioWriteBytesPerSec:a.row.ioWriteBytesPerSec,threads:a.row.threads,unavailableMetrics:aI(a.row).split(" ").filter(Boolean)}))},`${JSON.stringify(h,null,2)}
|
|
2
|
+
`);(0,aB.PE)(i,j,"csv"===b?aB.UR:aB.uW),c(`${b.toUpperCase()} downloaded \xb7 ${f} ${1===f?"process":"processes"}`)}catch{c("The process export could not be created.")}},i=e?0===f?"No processes match the current search":void 0:"A process snapshot is not available yet";return(0,d.jsxs)("div",{className:"flex min-w-0 shrink-0 items-center gap-1.5",children:[(0,d.jsx)("span",{className:"hidden text-xs text-muted-foreground sm:inline",children:"Export"}),(0,d.jsx)("button",{type:"button",onClick:()=>h("csv"),disabled:g,"aria-label":"Download current process snapshot as CSV",title:i??"Download the filtered process snapshot as CSV",className:aL,children:"CSV"}),(0,d.jsx)("button",{type:"button",onClick:()=>h("json"),disabled:g,"aria-label":"Download current process snapshot as JSON",title:i??"Download the filtered process snapshot as JSON",className:aL,children:"JSON"}),(0,d.jsxs)("span",{role:"status",className:b?.includes("could not")?"inline-flex items-center gap-1 text-xs text-warn":"sr-only",children:[b?.includes("could not")?(0,d.jsx)(v.A,{className:"h-3 w-3","aria-hidden":!0}):null,b??""]})]})}let aN={ok:"bg-ok-soft text-ok",warn:"bg-warn-soft text-warn",crit:"bg-crit-soft text-crit",muted:"border border-border text-muted-foreground"};function aO({phase:a,message:b}){return(0,d.jsxs)("span",{title:b??a.description,className:`inline-flex h-6 w-32 shrink-0 items-center gap-1.5 rounded-full px-2 py-0.5 text-xs ${aN[a.tone]}`,children:[(0,d.jsx)("span",{className:"h-1.5 w-1.5 shrink-0 rounded-full bg-current","aria-hidden":!0}),a.label]})}function aP({onClick:a,label:b="Check again"}){return(0,d.jsxs)("button",{type:"button",onClick:a,className:"inline-flex min-h-5 items-center gap-1.5 rounded-md border border-border bg-card px-2 py-1 text-xs text-foreground transition-colors hover:bg-card-strong",children:[(0,d.jsx)(r.A,{className:"h-3 w-3","aria-hidden":!0}),b]})}function aQ({phase:a,info:b,message:c,onRetry:e}){let f="withheld"===a||"unsupported"===a?s.A:"disconnected"===a||"error"===a?t.A:"paused"===a?u.A:"acquiring"===a||"loading"===a?g.A:"busy"===a||"expired"===a||"failed"===a||"stale"===a?v.A:w.A;return(0,d.jsxs)("div",{className:"flex flex-col items-center gap-2 break-words",children:[(0,d.jsx)(k.p,{icon:f,note:c??b.description,className:"min-h-64 w-full"}),"paused"!==a&&b.retryable?(0,d.jsx)(aP,{onClick:e,label:"Retry process detail"}):null]})}function aR({summary:a,lastReceivedMs:b,intervalMs:c,message:e,phase:f,hasSnapshot:g}){let h=(0,T.c)(1e3),i="ready"===f&&N(b,h,c),j=i?"stale":f,k="paused"===j,l=S(j),m=null===b?null:(0,L.nV)(Math.max(0,h-b)),n=null===m?null:"ready"===j?`Updated ${m}`:`Last snapshot ${m}`,o=k?g?"Paused. This snapshot is not live.":"Paused. Use Resume to request a fresh snapshot.":`${l.label}${i?". No new snapshot has arrived.":""}${e?`. ${e}`:""}`;return k&&!g?(0,d.jsx)("p",{role:"status",className:"sr-only",children:o}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("p",{role:"status",className:"sr-only",children:o}),(0,d.jsxs)("div",{className:"flex min-h-6 flex-wrap items-center gap-x-3 gap-y-1 text-xs text-muted-foreground",children:[k?(0,d.jsx)("span",{children:"Paused — not live"}):(0,d.jsx)(aO,{phase:l,message:e}),g&&null!==n?(0,d.jsx)("span",{className:"tnum",children:n}):null,g&&a.truncated?(0,d.jsxs)("span",{className:"tnum",title:"The collector kept the highest-CPU rows",children:["top ",R(a.shown)," of ",R(a.total)]}):null,g&&a.inaccessible>0?(0,d.jsxs)("span",{className:"tnum text-warn",children:[R(a.inaccessible)," unreadable"]}):null]})]})}function aS({machine:a,csrfToken:b,paused:c,onPausedChange:e}){var f;let[g,h]=(0,aa.u)("processes.query","",ak,"session"),i=(0,q.useDeferredValue)(g),[j,l]=(0,aa.u)("processes.mode","applications",ah),[m,n]=(f="applications"===j?"applications":"processes",(0,aa.u)(`processes.sort.${f}`,M,ai)),[o,p]=(0,aa.u)("processes.expanded",ae,am,"session"),r=(0,q.useMemo)(()=>new Set(o),[o]),{state:s,refresh:t}=function(a){let{machineId:b,csrfToken:c,paused:d}=a,[e,f]=(0,q.useState)(()=>"u">typeof document&&document.hidden),[g,h]=(0,q.useState)(0),[i,j]=(0,q.useState)(()=>W(b,c));(0,q.useRef)(i);let k=(0,q.useRef)({machineId:b,csrfToken:c}),l=(0,q.useRef)(0),m=(0,q.useCallback)(()=>{l.current+=1,h(l.current)},[]);return{state:k.current.machineId===b&&k.current.csrfToken===c?i:W(b,c),hidden:e,refresh:m}}({machineId:a.machineId,csrfToken:b,paused:c}),v=(0,q.useMemo)(()=>s.detail?.snapshot.processes??[],[s.detail]),w=(0,q.useMemo)(()=>(function(a){if(null===a)return{total:0,shown:0,inaccessible:0,truncated:!1};let b=a.processes.length;return{total:a.totalProcesses,shown:b,inaccessible:a.inaccessible,truncated:a.truncated}})(s.detail?.snapshot??null),[s.detail]),J=(0,q.useMemo)(()=>{var a,b,c;let d;return a=v,b=i,c=a.map(Q),0===(d=b.trim().toLowerCase()).length?c.slice():c.filter(a=>!!(a.name.toLowerCase().includes(d)||null!==a.user&&a.user.toLowerCase().includes(d)||String(a.pid).includes(d)||null!==a.unit&&a.unit.toLowerCase().includes(d)||void 0!==a.command&&a.command.toLowerCase().includes(d)))},[v,i]),L=(0,q.useMemo)(()=>D(J,m.key,m.dir),[J,m]),N=(0,q.useMemo)(()=>{var a,b,c;return"applications"===j?(a=function(a){let b=new Map;for(let c of a)b.has(c.pid)||b.set(c.pid,c);let c=new Map;for(let d of a){let a=function(a,b){if(function(a,b){if(2===a.pid||2===a.ppid)return!0;let c=a,d=new Set;for(;c&&!d.has(c.pid);){if(2===c.pid)return!0;d.add(c.pid),c=b.get(c.ppid)}return!1}(a,b))return{key:"kernel",label:"kernel",kind:"kernel",leader:a};let c=F(a.unit);if(null!==c)return{key:`unit:${c}`,label:G(c),kind:"unit",leader:a};let d=a,e=new Set;for(;;){if(e.has(d.pid)){let a=d;for(let c of e){let d=b.get(c);d&&(d.pid<a.pid||d.pid===a.pid&&d.startTicks<a.startTicks)&&(a=d)}return H(a)}e.add(d.pid);let a=b.get(d.ppid);if(!a||function(a,b){if(1===a.pid)return!0;let c=a.name.toLowerCase();if(A.has(c)||B.has(c)||c.startsWith("tmux:"))return!0;if(E(a.unit)){let c=b.get(a.ppid);return void 0===c||c.unit!==a.unit}return!1}(a,b))return H(d);let c=F(a.unit);if(null!==c)return{key:`unit:${c}`,label:G(c),kind:"unit",leader:a};d=a}}(d,b),e=c.get(a.key);e?e.members.push(d):c.set(a.key,{descriptor:a,members:[d]})}return[...c.values()].map(({descriptor:a,members:b})=>(function(a,b){let c={cpuPercent:{sum:0,known:0},memoryRssBytes:{sum:0,known:0},gpuMemoryBytes:{sum:0,known:0},ioReadBytesPerSec:{sum:0,known:0},ioWriteBytesPerSec:{sum:0,known:0}},d=new Set;for(let a of b)for(let b of(null!==a.user&&d.add(a.user),C)){let d=a[b];null!==d&&Number.isFinite(d)&&(c[b].sum+=d,c[b].known++)}let e=a=>0===c[a].known?null:c[a].sum,f={};for(let a of C)f[a]=c[a].known>0&&c[a].known<b.length;return{key:a.key,label:a.label,kind:a.kind,members:a.leader!==b[0]?[a.leader,...b.filter(b=>b!==a.leader)]:b,cpuPercent:e("cpuPercent"),memoryRssBytes:e("memoryRssBytes"),gpuMemoryBytes:e("gpuMemoryBytes"),ioReadBytesPerSec:e("ioReadBytesPerSec"),ioWriteBytesPerSec:e("ioWriteBytesPerSec"),count:b.length,users:[...d].sort(),partial:f}})(a,b))}(J),b=m.key,c=m.dir,a.slice().sort((a,d)=>K(I(a,b),I(d,b),c))):[]},[J,j,m]),P=(0,q.useMemo)(()=>"tree"===j?function(a){let b=a.length,c=new Map;for(let d=0;d<b;d++)c.has(a[d].pid)||c.set(a[d].pid,d);let d=a.map(a=>{let b=c.get(a.ppid);return void 0===b?null:b}),e=new Uint8Array(b);for(let a=0;a<b;a++){if(0!==e[a])continue;let b=[],c=a;for(;null!==c&&0===e[c];)e[c]=1,b.push(c),c=d[c];for(let a of(null!==c&&1===e[c]&&(d[b[b.length-1]]=null),b))e[a]=2}let f=Array.from({length:b},()=>[]),g=[];for(let a=0;a<b;a++){let b=d[a];null===b?g.push(a):f[b].push(a)}let h=[],i=[];for(let a=g.length-1;a>=0;a--)i.push({index:g[a],depth:0});for(;i.length>0;){let{index:b,depth:c}=i.pop();h.push({row:a[b],depth:c,children:f[b].length});let d=f[b];for(let a=d.length-1;a>=0;a--)i.push({index:d[a],depth:c+1})}return h}(L):[],[j,L]),R=S(s.phase),T=null!==s.detail,U=!T&&("acquiring"===s.phase||"loading"===s.phase),V=i.trim().slice(0,80),X=(0,q.useMemo)(()=>{let a=J.length,b=i.trim().length>0,c=1!==a||b?"processes":"process";return"applications"===j?`${N.length} app${1===N.length?"":"s"} \xb7 ${a}${b?` of ${w.shown}`:""} ${c}`:`${a}${b?` of ${w.shown}`:""} ${c}`},[i,J.length,N.length,j,w.shown]);return(0,d.jsx)(k.Z,{title:"Process detail",action:T?(0,d.jsx)("span",{className:"tnum hidden max-w-[18rem] truncate text-muted-foreground sm:block",children:X}):void 0,className:"min-h-0 flex-1",children:(0,d.jsxs)("div",{className:"flex min-h-0 flex-1 flex-col gap-4",children:[(0,d.jsxs)("div",{className:"flex shrink-0 flex-wrap items-center gap-2",children:[(0,d.jsxs)("div",{className:"relative min-w-0 flex-1 basis-52",children:[(0,d.jsx)("label",{htmlFor:"process-search",className:"sr-only",children:"Search processes"}),(0,d.jsx)(x.A,{className:"pointer-events-none absolute left-2.5 top-1/2 h-3.5 w-3.5 -translate-y-1/2 text-muted-foreground","aria-hidden":!0}),(0,d.jsx)("input",{id:"process-search",type:"search",value:g,onChange:a=>h(a.target.value),placeholder:"Search name, user, PID, or unit",autoComplete:"off",spellCheck:!1,className:"h-9 w-full rounded-md border border-border bg-card-strong py-1.5 pl-8 pr-8 text-sm text-foreground placeholder:text-muted-foreground [&::-webkit-search-cancel-button]:hidden [&::-webkit-search-cancel-button]:[-webkit-appearance:none]"}),g.length>0?(0,d.jsx)("button",{type:"button",onClick:()=>h(""),"aria-label":"Clear search",className:"absolute right-0.5 top-1/2 flex h-7 w-7 -translate-y-1/2 items-center justify-center rounded text-muted-foreground transition-colors hover:bg-card hover:text-foreground",children:(0,d.jsx)(y.A,{className:"h-3.5 w-3.5","aria-hidden":!0})}):null]}),(0,d.jsx)("div",{role:"group","aria-label":"Process view",className:"inline-flex shrink-0 rounded-md border border-border p-0.5",children:O.map(a=>{let b=j===a.value;return(0,d.jsx)("button",{type:"button","aria-pressed":b,onClick:()=>l(a.value),className:["rounded px-2.5 py-1 text-xs transition-colors",b?"bg-selected font-medium text-foreground":"text-muted-foreground hover:bg-card-strong hover:text-foreground"].join(" "),children:a.label},a.value)})}),(0,d.jsxs)("button",{type:"button",onClick:()=>e(!c),title:c?"Resume process updates":"Pause process updates",className:"inline-flex min-h-9 shrink-0 items-center gap-1.5 rounded-md border border-border px-2.5 py-1.5 text-xs text-foreground transition-colors hover:bg-card-strong",children:[c?(0,d.jsx)(z.A,{className:"h-3.5 w-3.5","aria-hidden":!0}):(0,d.jsx)(u.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),c?"Resume":"Pause"]}),(0,d.jsx)(aM,{machine:a,snapshot:s.detail?.snapshot??null,capturedAt:s.detail?.capturedAt??null,receivedAtMs:s.lastReceivedMs,intervalMs:s.intervalMs,phase:s.phase,query:i,mode:j,sort:m,filteredRows:J,sortedRows:L,groups:N,tree:P})]}),(0,d.jsx)(aR,{summary:w,lastReceivedMs:s.lastReceivedMs,intervalMs:s.intervalMs,message:s.message,phase:s.phase,hasSnapshot:T}),(0,d.jsx)("div",{"aria-busy":U||"acquiring"===s.phase,className:"flex min-h-0 flex-1 flex-col overflow-auto",children:T?0===J.length?(0,d.jsxs)("div",{className:"flex flex-col items-center gap-2 break-words",children:[(0,d.jsx)(k.p,{icon:x.A,note:0===w.shown?"The collector reported no processes in this snapshot.":i.trim().length>0?`No processes match “${V}”.`:"No processes to show.",className:"min-h-64 w-full"}),i.trim().length>0?(0,d.jsxs)("button",{type:"button",onClick:()=>h(""),className:"inline-flex min-h-6 items-center gap-1.5 rounded-md border border-border px-2 py-1 text-xs text-foreground transition-colors hover:bg-card-strong",children:[(0,d.jsx)(y.A,{className:"h-3 w-3","aria-hidden":!0}),"Clear search"]}):null]}):(0,d.jsx)(aA,{mode:j,groups:N,rows:L,tree:P,sort:m,onSort:a=>n(b=>(function(a,b){return a.key===b?{key:b,dir:"asc"===a.dir?"desc":"asc"}:{key:b,dir:"name"===b||"user"===b||"pid"===b?"asc":"desc"}})(b,a)),expanded:r,onToggleGroup:a=>{p(b=>b.includes(a)?b.filter(b=>b!==a):[...b,a])}}):(0,d.jsx)(aQ,{phase:s.phase,info:R,message:s.message,onRetry:t})})]})})}function aT({waiting:a}){return(0,d.jsx)(k.Z,{title:a?"Waiting for machines":"No machines",className:"mt-2",children:(0,d.jsx)(k.p,{icon:a?g.A:h.A,note:a?"Waiting for the fleet snapshot…":"No machines are available in your authorized fleet."})})}function aU({requested:a}){return(0,d.jsxs)(k.Z,{title:"Machine not found",className:"mt-2",children:[(0,d.jsx)(k.p,{icon:i.A,note:"This machine is unavailable or outside your access."}),(0,d.jsxs)("p",{className:"tnum mt-2 break-all text-center text-xs text-muted-foreground",children:["Requested identifier: ",a]}),(0,d.jsx)("div",{className:"flex justify-center",children:(0,d.jsx)(f(),{href:"/",className:"mt-2 inline-flex items-center gap-1.5 rounded-md border border-border px-2.5 py-1.5 text-xs text-foreground transition-colors hover:bg-card-strong",children:"Back to fleet"})})]})}function aV(){let{session:a,phase:b,machines:c}=(0,o.M)(),e=(0,n.x)(),[f,g]=(0,aa.u)("processes.paused",!1,al,"session"),{machine:h,navMachineId:i,requestedMachineId:k}=(0,p.JG)("processes"),q="signed-in"===a.kind?a.user.csrfToken:null,r=0===c.length&&("connecting"===b||"idle"===b);return(0,d.jsx)(j.G,{title:"Processes",machineId:i,machineView:"processes",workspace:!0,headerRight:(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(l.$E,{}),(0,d.jsx)(m.B,{})]}),children:e||(0,d.jsx)(d.Fragment,{children:0===c.length?(0,d.jsx)(aT,{waiting:r}):h?(0,d.jsx)(aS,{machine:h,csrfToken:q,paused:f,onPausedChange:g},`${h.machineId}:${q}`):(0,d.jsx)(aU,{requested:k??""})})})}},33873:a=>{"use strict";a.exports=require("path")},38420:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(65366).A)("ChevronRight",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]])},38522:a=>{"use strict";a.exports=require("node:zlib")},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},46060:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external.js")},48878:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(65366).A)("Hourglass",[["path",{d:"M5 22h14",key:"ehvnwv"}],["path",{d:"M5 2h14",key:"pdyrp9"}],["path",{d:"M17 22v-4.172a2 2 0 0 0-.586-1.414L12 12l-4.414 4.414A2 2 0 0 0 7 17.828V22",key:"1d314k"}],["path",{d:"M7 2v4.172a2 2 0 0 0 .586 1.414L12 12l4.414-4.414A2 2 0 0 0 17 6.172V2",key:"1vvvr6"}]])},55511:a=>{"use strict";a.exports=require("crypto")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},66125:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(65366).A)("CloudOff",[["path",{d:"m2 2 20 20",key:"1ooewy"}],["path",{d:"M5.782 5.782A7 7 0 0 0 9 19h8.5a4.5 4.5 0 0 0 1.307-.193",key:"yfwify"}],["path",{d:"M21.532 16.5A4.5 4.5 0 0 0 17.5 10h-1.79A7.008 7.008 0 0 0 10 5.07",key:"jlfiyv"}]])},89065:(a,b,c)=>{Promise.resolve().then(c.bind(c,40015)),Promise.resolve().then(c.bind(c,30847)),Promise.resolve().then(c.bind(c,7867)),Promise.resolve().then(c.bind(c,76670))},89893:(a,b,c)=>{"use strict";c.d(b,{ProcessesView:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call ProcessesView() from the server but ProcessesView is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/triet/Project/rigscope/src/components/processes/processes-view.tsx","ProcessesView")},98793:(a,b,c)=>{Promise.resolve().then(c.bind(c,28565)),Promise.resolve().then(c.bind(c,89893)),Promise.resolve().then(c.bind(c,50369)),Promise.resolve().then(c.bind(c,46568))}};var b=require("../../webpack-runtime.js");b.C(a);var c=b.X(0,[266,430,721,161,751,894],()=>b(b.s=28787));module.exports=c})();
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":1,"files":["../../../../node_modules/@swc/helpers/_/_interop_require_default/package.json","../../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../../node_modules/@swc/helpers/esm/_interop_require_default.js","../../../../node_modules/@swc/helpers/package.json","../../../../node_modules/next/dist/build/adapter/setup-node-env.external.js","../../../../node_modules/next/dist/client/components/hooks-server-context.js","../../../../node_modules/next/dist/client/components/static-generation-bailout.js","../../../../node_modules/next/dist/client/lib/console.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../node_modules/next/dist/compiled/fast-jwt/index.js","../../../../node_modules/next/dist/compiled/fast-jwt/package.json","../../../../node_modules/next/dist/compiled/hash.js/sha256/256.js","../../../../node_modules/next/dist/compiled/hash.js/sha256/package.json","../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../node_modules/next/dist/compiled/source-map/package.json","../../../../node_modules/next/dist/compiled/source-map/source-map.js","../../../../node_modules/next/dist/compiled/stacktrace-parser/package.json","../../../../node_modules/next/dist/compiled/stacktrace-parser/stack-trace-parser.cjs.js","../../../../node_modules/next/dist/compiled/ws/index.js","../../../../node_modules/next/dist/compiled/ws/package.json","../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../node_modules/next/dist/lib/constants.js","../../../../node_modules/next/dist/lib/interop-default.js","../../../../node_modules/next/dist/lib/is-error.js","../../../../node_modules/next/dist/lib/picocolors.js","../../../../node_modules/next/dist/lib/scheduler.js","../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/dynamic-rendering.js","../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../node_modules/next/dist/server/app-render/segment-config/ensure-static.js","../../../../node_modules/next/dist/server/app-render/staged-rendering.js","../../../../node_modules/next/dist/server/app-render/sync-io-messages.js","../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../node_modules/next/dist/server/dev/browser-logs/file-logger.js","../../../../node_modules/next/dist/server/dynamic-rendering-utils.js","../../../../node_modules/next/dist/server/lib/app-dir-module.js","../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../node_modules/next/dist/server/lib/parse-stack.js","../../../../node_modules/next/dist/server/lib/route-cache-key.js","../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../node_modules/next/dist/server/lib/source-maps.js","../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../node_modules/next/dist/server/node-environment-baseline.js","../../../../node_modules/next/dist/server/node-environment-extensions/console-dim.external.js","../../../../node_modules/next/dist/server/node-environment-extensions/console-exit.js","../../../../node_modules/next/dist/server/node-environment-extensions/console-file.js","../../../../node_modules/next/dist/server/node-environment-extensions/date.js","../../../../node_modules/next/dist/server/node-environment-extensions/error-inspect.js","../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../node_modules/next/dist/server/node-environment-extensions/io-utils.js","../../../../node_modules/next/dist/server/node-environment-extensions/node-crypto.js","../../../../node_modules/next/dist/server/node-environment-extensions/random.js","../../../../node_modules/next/dist/server/node-environment-extensions/unhandled-rejection.external.js","../../../../node_modules/next/dist/server/node-environment-extensions/web-crypto.js","../../../../node_modules/next/dist/server/node-environment.js","../../../../node_modules/next/dist/server/node-polyfill-crypto.js","../../../../node_modules/next/dist/server/normalizers/built/app/app-pathname-normalizer.js","../../../../node_modules/next/dist/server/normalizers/normalizers.js","../../../../node_modules/next/dist/server/normalizers/underscore-normalizer.js","../../../../node_modules/next/dist/server/normalizers/wrap-normalizer-fn.js","../../../../node_modules/next/dist/server/patch-error-inspect.js","../../../../node_modules/next/dist/server/require-hook.js","../../../../node_modules/next/dist/server/response-cache/types.js","../../../../node_modules/next/dist/server/route-kind.js","../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../node_modules/next/dist/shared/lib/i18n/normalize-locale-path.js","../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../node_modules/next/dist/shared/lib/page-path/normalize-page-path.js","../../../../node_modules/next/dist/shared/lib/promise-with-resolvers.js","../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../node_modules/next/dist/shared/lib/router/utils/index.js","../../../../node_modules/next/dist/shared/lib/router/utils/interception-routes.js","../../../../node_modules/next/dist/shared/lib/router/utils/is-dynamic.js","../../../../node_modules/next/dist/shared/lib/router/utils/parse-loader-tree.js","../../../../node_modules/next/dist/shared/lib/router/utils/sorted-routes.js","../../../../node_modules/next/dist/shared/lib/segment.js","../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../node_modules/next/dist/shared/lib/utils.js","../../../../node_modules/next/package.json","../../../../package.json","../../../package.json","../../chunks/161.js","../../chunks/266.js","../../chunks/430.js","../../chunks/721.js","../../chunks/751.js","../../chunks/894.js","../../webpack-runtime.js","page_client-reference-manifest.js"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/processes/page"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"70664","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"60440","name":"*","chunks":[],"async":false}},"1461":{"*":{"id":"86673","name":"*","chunks":[],"async":false}},"1721":{"*":{"id":"40015","name":"*","chunks":[],"async":false}},"2394":{"*":{"id":"76670","name":"*","chunks":[],"async":false}},"2701":{"*":{"id":"7867","name":"*","chunks":[],"async":false}},"2737":{"*":{"id":"4833","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"61335","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"82265","name":"*","chunks":[],"async":false}},"5000":{"*":{"id":"93022","name":"*","chunks":[],"async":false}},"5773":{"*":{"id":"71793","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"74661","name":"*","chunks":[],"async":false}},"7044":{"*":{"id":"9479","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"35421","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"81921","name":"*","chunks":[],"async":false}},"7281":{"*":{"id":"81931","name":"*","chunks":[],"async":false}},"7339":{"*":{"id":"30847","name":"*","chunks":[],"async":false}},"8250":{"*":{"id":"12761","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"84342","name":"*","chunks":[],"async":false}},"8887":{"*":{"id":"85909","name":"*","chunks":[],"async":false}},"9939":{"*":{"id":"58910","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/home/triet/Project/rigscope/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/esm/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/esm/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/src/app/globals.css":{"id":1743,"name":"*","chunks":["939","static/chunks/939-2600d7c8e583d5ef.js","177","static/chunks/app/layout-4feff677c4071745.js"],"async":false},"/home/triet/Project/rigscope/src/components/theme-provider.tsx":{"id":2737,"name":"*","chunks":["939","static/chunks/939-2600d7c8e583d5ef.js","177","static/chunks/app/layout-4feff677c4071745.js"],"async":false},"/home/triet/Project/rigscope/src/live/live-provider.tsx":{"id":9939,"name":"*","chunks":["939","static/chunks/939-2600d7c8e583d5ef.js","177","static/chunks/app/layout-4feff677c4071745.js"],"async":false},"/home/triet/Project/rigscope/src/components/alerts/alerts-view.tsx":{"id":1461,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/src/components/resources/connections-panels.tsx":{"id":5773,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/src/components/admin/administration-view.tsx":{"id":7044,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/src/components/live/login-view.tsx":{"id":5000,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/src/components/history/history-view.tsx":{"id":8250,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/src/components/live/machine-navigation.tsx":{"id":1721,"name":"*","chunks":["157","static/chunks/157-0d36ebf66af048ac.js","939","static/chunks/939-2600d7c8e583d5ef.js","103","static/chunks/103-c47318242b24e9ac.js","952","static/chunks/app/processes/page-e471ed23a1d5632f.js"],"async":false},"/home/triet/Project/rigscope/src/components/shell/sidebar.tsx":{"id":2701,"name":"*","chunks":["157","static/chunks/157-0d36ebf66af048ac.js","939","static/chunks/939-2600d7c8e583d5ef.js","103","static/chunks/103-c47318242b24e9ac.js","952","static/chunks/app/processes/page-e471ed23a1d5632f.js"],"async":false},"/home/triet/Project/rigscope/src/components/theme-toggle.tsx":{"id":2394,"name":"*","chunks":["157","static/chunks/157-0d36ebf66af048ac.js","939","static/chunks/939-2600d7c8e583d5ef.js","103","static/chunks/103-c47318242b24e9ac.js","952","static/chunks/app/processes/page-e471ed23a1d5632f.js"],"async":false},"/home/triet/Project/rigscope/src/components/live/fleet-view.tsx":{"id":7281,"name":"*","chunks":["157","static/chunks/157-0d36ebf66af048ac.js","939","static/chunks/939-2600d7c8e583d5ef.js","103","static/chunks/103-c47318242b24e9ac.js","227","static/chunks/227-417939c480f50747.js","974","static/chunks/app/page-1ae9fc94c897785b.js"],"async":false},"/home/triet/Project/rigscope/src/components/live/machine-view.tsx":{"id":8887,"name":"*","chunks":[],"async":false},"/home/triet/Project/rigscope/src/components/processes/processes-view.tsx":{"id":7339,"name":"*","chunks":["157","static/chunks/157-0d36ebf66af048ac.js","939","static/chunks/939-2600d7c8e583d5ef.js","103","static/chunks/103-c47318242b24e9ac.js","952","static/chunks/app/processes/page-e471ed23a1d5632f.js"],"async":false}},"entryCSSFiles":{"/home/triet/Project/rigscope/src/":[],"/home/triet/Project/rigscope/src/app/layout":[{"inlined":false,"path":"static/css/e41ccbccc3afaae5.css"}],"/home/triet/Project/rigscope/src/app/page":[],"/home/triet/Project/rigscope/src/app/processes/page":[]},"rscModuleMapping":{"484":{"*":{"id":"98562","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"15098","name":"*","chunks":[],"async":false}},"1461":{"*":{"id":"29953","name":"*","chunks":[],"async":false}},"1721":{"*":{"id":"28565","name":"*","chunks":[],"async":false}},"1743":{"*":{"id":"61135","name":"*","chunks":[],"async":false}},"2394":{"*":{"id":"46568","name":"*","chunks":[],"async":false}},"2701":{"*":{"id":"50369","name":"*","chunks":[],"async":false}},"2737":{"*":{"id":"65223","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"16237","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"33859","name":"*","chunks":[],"async":false}},"5000":{"*":{"id":"52604","name":"*","chunks":[],"async":false}},"5773":{"*":{"id":"37147","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"36675","name":"*","chunks":[],"async":false}},"7044":{"*":{"id":"2902","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"98099","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"95547","name":"*","chunks":[],"async":false}},"7281":{"*":{"id":"22993","name":"*","chunks":[],"async":false}},"7339":{"*":{"id":"89893","name":"*","chunks":[],"async":false}},"8250":{"*":{"id":"79173","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"47644","name":"*","chunks":[],"async":false}},"8887":{"*":{"id":"73132","name":"*","chunks":[],"async":false}},"9939":{"*":{"id":"89604","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/e41ccbccc3afaae5.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-9ca43f4ce1bb8938.js"/><script src="/_next/static/chunks/4bd1b696-c7408084347438ae.js" async=""></script><script src="/_next/static/chunks/794-ceeb732a1a81bc27.js" async=""></script><script src="/_next/static/chunks/main-app-f92328c8950d2e53.js" async=""></script><script src="/_next/static/chunks/939-2600d7c8e583d5ef.js" async=""></script><script src="/_next/static/chunks/app/layout-4feff677c4071745.js" async=""></script><script src="/_next/static/chunks/157-0d36ebf66af048ac.js" async=""></script><script src="/_next/static/chunks/103-c47318242b24e9ac.js" async=""></script><script src="/_next/static/chunks/app/processes/page-e471ed23a1d5632f.js" async=""></script><title>Processes — Rigscope</title><meta name="description" content="Self-hosted remote system monitor — a live fleet of collectors behind one authenticated hub."/><link rel="icon" href="/icon.svg?3b3fa3229e2d0d7a" type="image/svg+xml" sizes="any"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><script>((a,b,c,d,e,f,g,h)=>{let i=document.documentElement,j=["light","dark"];function k(b){var c;(Array.isArray(a)?a:[a]).forEach(a=>{let c="class"===a,d=c&&f?e.map(a=>f[a]||a):e;c?(i.classList.remove(...d),i.classList.add(f&&f[b]?f[b]:b)):i.setAttribute(a,b)}),c=b,h&&j.includes(c)&&(i.style.colorScheme=c)}if(d)k(d);else try{let a=localStorage.getItem(b)||c,d=g&&"system"===a?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":a;k(d)}catch(a){}})("class","theme","dark",null,["light","dark"],null,true,true)</script><!--$!--><template data-dgst=""></template><div class="relative flex h-dvh overflow-hidden bg-background text-foreground"><a href="#main-content" class="sr-only z-50 rounded-md bg-card px-4 py-2 text-foreground focus:not-sr-only focus:absolute focus:start-2 focus:top-2 focus:outline-2 focus:outline-accent">Skip to content</a><aside class="flex w-14 shrink-0 flex-col border-r border-border bg-card md:w-56"><a aria-label="Rigscope" class="flex h-14 shrink-0 items-center gap-2.5 border-b border-border px-3 md:px-5" href="/"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" focusable="false" class="h-5 w-5 shrink-0 text-accent"><path d="M8 3H4v18h4M16 3h4v18h-4"></path><path d="m8 15 4-6 4 3M8 8h.01M16 17h.01"></path></svg><span class="hidden text-sm font-semibold tracking-tight text-foreground md:inline">Rigscope</span></a><nav aria-label="Primary" class="flex min-h-0 flex-1 flex-col overflow-y-auto p-2 md:p-3"><a title="Fleet" class="flex min-h-9 min-w-0 items-center gap-3 rounded-md px-2 text-sm transition-colors md:px-3 text-muted-foreground hover:bg-card-strong hover:text-foreground" href="/"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-server h-4 w-4 shrink-0" aria-hidden="true"><rect width="20" height="8" x="2" y="2" rx="2" ry="2"></rect><rect width="20" height="8" x="2" y="14" rx="2" ry="2"></rect><line x1="6" x2="6.01" y1="6" y2="6"></line><line x1="6" x2="6.01" y1="18" y2="18"></line></svg><span class="hidden md:inline">Fleet</span></a><div class="flex flex-col gap-1 border-t border-border pt-3"><a title="Alerts" class="flex min-h-9 min-w-0 items-center gap-3 rounded-md px-2 text-sm transition-colors md:px-3 text-muted-foreground hover:bg-card-strong hover:text-foreground" href="/alerts"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-bell h-4 w-4 shrink-0" aria-hidden="true"><path d="M10.268 21a2 2 0 0 0 3.464 0"></path><path d="M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326"></path></svg><span class="hidden md:inline">Alerts</span></a><a title="Connections" class="flex min-h-9 min-w-0 items-center gap-3 rounded-md px-2 text-sm transition-colors md:px-3 text-muted-foreground hover:bg-card-strong hover:text-foreground" href="/connections"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-cable h-4 w-4 shrink-0" aria-hidden="true"><path d="M17 21v-2a1 1 0 0 1-1-1v-1a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v1a1 1 0 0 1-1 1"></path><path d="M19 15V6.5a1 1 0 0 0-7 0v11a1 1 0 0 1-7 0V9"></path><path d="M21 21v-2h-4"></path><path d="M3 5h4V3"></path><path d="M7 5a1 1 0 0 1 1 1v1a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a1 1 0 0 1 1-1V3"></path></svg><span class="hidden md:inline">Connections</span></a></div></nav><footer class="hidden shrink-0 border-t border-border p-3 md:block"><div class="flex items-center gap-2 px-3 text-xs"><span class="inline-block h-2 w-2 shrink-0 rounded-full bg-muted-foreground/50" aria-hidden="true"></span><span class="truncate" role="status" aria-label="Live feed status: Checking session…">Checking session…</span></div></footer></aside><div class="flex min-w-0 flex-1 flex-col"><header class="flex min-h-14 shrink-0 flex-wrap items-center justify-between gap-2 border-b border-border px-4 py-2 md:px-6"><h1 class="truncate text-lg font-semibold tracking-tight">Processes</h1><div class="flex items-center gap-3"><button type="button" aria-label="Toggle theme" class="flex h-9 w-9 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-selected hover:text-foreground"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sun h-4.5 w-4.5 dark:hidden"><circle cx="12" cy="12" r="4"></circle><path d="M12 2v2"></path><path d="M12 20v2"></path><path d="m4.93 4.93 1.41 1.41"></path><path d="m17.66 17.66 1.41 1.41"></path><path d="M2 12h2"></path><path d="M20 12h2"></path><path d="m6.34 17.66-1.41 1.41"></path><path d="m19.07 4.93-1.41 1.41"></path></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-moon hidden h-4.5 w-4.5 dark:block"><path d="M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z"></path></svg></button></div></header><main id="main-content" tabindex="-1" class="relative min-h-0 min-w-0 flex-1 overflow-x-hidden overscroll-contain p-4 outline-offset-[-2px] md:p-6 overflow-y-auto"><div class="mx-auto flex w-full min-w-0 max-w-[1500px] flex-col"><section class="flex min-w-0 flex-col rounded-xl border border-border bg-card p-5 mt-2"><div class="flex shrink-0 items-center justify-between gap-4"><h2 class="text-sm font-medium tracking-tight">Process detail</h2></div><div class="mt-4 flex min-h-0 flex-1 flex-col"><p role="status" class="py-10 text-center text-sm text-muted-foreground">Loading the process view…</p></div></section></div></main></div></div><!--/$--><!--$--><!--/$--><script src="/_next/static/chunks/webpack-9ca43f4ce1bb8938.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:\"static/chunks/939-2600d7c8e583d5ef.js\"\n3:\"static/chunks/app/layout-4feff677c4071745.js\"\n4:I[2737,[\"939\",\"$2\",\"177\",\"$3\"],\"ThemeProvider\"]\n5:I[9939,[\"939\",\"$2\",\"177\",\"$3\"],\"LiveProvider\"]\n6:I[7121,[],\"\"]\n7:I[4581,[],\"\"]\nb:\"$Sreact.suspense\"\nc:\"static/chunks/157-0d36ebf66af048ac.js\"\nd:\"static/chunks/103-c47318242b24e9ac.js\"\ne:\"static/chunks/app/processes/page-e471ed23a1d5632f.js\"\nf:I[2701,[\"157\",\"$c\",\"939\",\"$2\",\"103\",\"$d\",\"952\",\"$e\"],\"Sidebar\"]\n10:I[2394,[\"157\",\"$c\",\"939\",\"$2\",\"103\",\"$d\",\"952\",\"$e\"],\"ThemeToggle\"]\n11:I[7339,[\"157\",\"$c\",\"939\",\"$2\",\"103\",\"$d\",\"952\",\"$e\"],\"ProcessesView\"]\n12:I[484,[],\"OutletBoundary\"]\n14:\"ViewportBoundary\"\n15:I[484,[],\"$14\"]\n17:\"MetadataBoundary\"\n18:I[484,[],\"$17\"]\n1a:I[7123,[],\"default\",1]\n:HL[\"/_next/static/css/e41ccbccc3afaae5.css\",\"style\"]\n9:X\n"])</script><script>self.__next_f.push([1,"a:[[\"children\",{\"s\":\"__PAGE__\",\"h\":512,\"d\":{\"r\":[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$b\",null,{\"fallback\":[\"$\",\"div\",null,{\"className\":\"relative flex h-dvh overflow-hidden bg-background text-foreground\",\"children\":[[\"$\",\"a\",null,{\"href\":\"#main-content\",\"className\":\"sr-only z-50 rounded-md bg-card px-4 py-2 text-foreground focus:not-sr-only focus:absolute focus:start-2 focus:top-2 focus:outline-2 focus:outline-accent\",\"children\":\"Skip to content\"}],[\"$\",\"$Lf\",null,{\"machineId\":\"$undefined\",\"machineView\":\"$undefined\"}],[\"$\",\"div\",null,{\"className\":\"flex min-w-0 flex-1 flex-col\",\"children\":[[\"$\",\"header\",null,{\"className\":\"flex min-h-14 shrink-0 flex-wrap items-center justify-between gap-2 border-b border-border px-4 py-2 md:px-6\",\"children\":[[\"$\",\"h1\",null,{\"className\":\"truncate text-lg font-semibold tracking-tight\",\"children\":\"Processes\"}],[\"$\",\"div\",null,{\"className\":\"flex items-center gap-3\",\"children\":[null,[\"$\",\"$L10\",null,{}]]}]]}],[\"$\",\"main\",null,{\"id\":\"main-content\",\"tabIndex\":-1,\"className\":\"relative min-h-0 min-w-0 flex-1 overflow-x-hidden overscroll-contain p-4 outline-offset-[-2px] md:p-6 overflow-y-auto\",\"children\":[\"$\",\"div\",null,{\"className\":\"mx-auto flex w-full min-w-0 max-w-[1500px] flex-col\",\"children\":[\"$\",\"section\",null,{\"className\":\"flex min-w-0 flex-col rounded-xl border border-border bg-card p-5 mt-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"flex shrink-0 items-center justify-between gap-4\",\"children\":[[\"$\",\"h2\",null,{\"className\":\"text-sm font-medium tracking-tight\",\"children\":\"Process detail\"}],null]}],[\"$\",\"div\",null,{\"className\":\"mt-4 flex min-h-0 flex-1 flex-col\",\"children\":[\"$\",\"p\",null,{\"role\":\"status\",\"className\":\"py-10 text-center text-sm text-muted-foreground\",\"children\":\"Loading the process view…\"}]}]]}]}]}]]}]]}],\"children\":[\"$\",\"$L11\",null,{}]}],null,[\"$\",\"$L12\",null,{\"children\":[\"$\",\"$b\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@13\"}]}]]}],\"p\":false,\"v\":null}}]]\n"])</script><script>self.__next_f.push([1,"8:[[\"children\",{\"s\":\"processes\",\"h\":512,\"d\":{\"r\":[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L6\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L7\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],\"p\":false,\"v\":\"$9\"},\"c\":\"$Qa\"}]]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"processes\"],\"q\":\"\",\"i\":false,\"t\":{\"t\":{\"s\":\"\",\"h\":528,\"d\":{\"r\":[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/e41ccbccc3afaae5.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"body\",null,{\"children\":[\"$\",\"$L4\",null,{\"attribute\":\"class\",\"defaultTheme\":\"dark\",\"enableSystem\":true,\"children\":[\"$\",\"$L5\",null,{\"children\":[\"$\",\"$L6\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L7\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]}]}]]}],\"p\":false,\"v\":null},\"c\":\"$Q8\"},\"h\":{\"r\":[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L15\",null,{\"children\":\"$L16\"}],[\"$\",\"$L18\",null,{\"children\":[[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$b\",null,{\"name\":\"Next.Metadata\",\"children\":\"$L19\"}]}],null]}],null]}],\"p\":false,\"v\":null}},\"m\":\"$undefined\",\"G\":[\"$1a\",[]],\"S\":true,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"DZKWF9ur7H5wI0c7RAhdq\"}\n"])</script><script>self.__next_f.push([1,"9:C\n16:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"1b:I[6869,[],\"IconMark\"]\n13:null\n19:[[\"$\",\"title\",\"0\",{\"children\":\"Processes — Rigscope\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Self-hosted remote system monitor — a live fleet of collectors behind one authenticated hub.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"icon\",\"href\":\"/icon.svg?3b3fa3229e2d0d7a\",\"type\":\"image/svg+xml\",\"sizes\":\"any\"}],[\"$\",\"$L1b\",\"3\",{}]]\n"])</script></body></html>
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
{
|
|
2
|
+
"headers": {
|
|
3
|
+
"x-nextjs-stale-time": "300",
|
|
4
|
+
"x-nextjs-prerender": "1",
|
|
5
|
+
"x-next-cache-tags": "_N_T_/layout,_N_T_/processes/layout,_N_T_/processes/page,_N_T_/processes"
|
|
6
|
+
},
|
|
7
|
+
"segmentPaths": [
|
|
8
|
+
"/_tree",
|
|
9
|
+
"/_full",
|
|
10
|
+
"/processes/__PAGE__"
|
|
11
|
+
],
|
|
12
|
+
"prefetchHints": {
|
|
13
|
+
"hints": 64,
|
|
14
|
+
"slots": {
|
|
15
|
+
"children": {
|
|
16
|
+
"hints": 96,
|
|
17
|
+
"slots": {
|
|
18
|
+
"children": {
|
|
19
|
+
"hints": 160,
|
|
20
|
+
"slots": null
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
"routeCache": {
|
|
27
|
+
"key": "/route-cache/APP_PAGE/2a62c78a5c4e4631985c2eda01c43e0853d62212618b162e2ad69936d870dd99/$/processes",
|
|
28
|
+
"owner": {
|
|
29
|
+
"kind": "APP_PAGE",
|
|
30
|
+
"sourceRoute": "/processes/page"
|
|
31
|
+
},
|
|
32
|
+
"isFallback": false
|
|
33
|
+
}
|
|
34
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
1:"$Sreact.fragment"
|
|
2
|
+
2:"static/chunks/939-2600d7c8e583d5ef.js"
|
|
3
|
+
3:"static/chunks/app/layout-4feff677c4071745.js"
|
|
4
|
+
4:I[2737,["939","$2","177","$3"],"ThemeProvider"]
|
|
5
|
+
5:I[9939,["939","$2","177","$3"],"LiveProvider"]
|
|
6
|
+
6:I[7121,[],""]
|
|
7
|
+
7:I[4581,[],""]
|
|
8
|
+
b:"$Sreact.suspense"
|
|
9
|
+
c:"static/chunks/157-0d36ebf66af048ac.js"
|
|
10
|
+
d:"static/chunks/103-c47318242b24e9ac.js"
|
|
11
|
+
e:"static/chunks/app/processes/page-e471ed23a1d5632f.js"
|
|
12
|
+
f:I[2701,["157","$c","939","$2","103","$d","952","$e"],"Sidebar"]
|
|
13
|
+
10:I[2394,["157","$c","939","$2","103","$d","952","$e"],"ThemeToggle"]
|
|
14
|
+
11:I[7339,["157","$c","939","$2","103","$d","952","$e"],"ProcessesView"]
|
|
15
|
+
12:I[484,[],"OutletBoundary"]
|
|
16
|
+
14:"ViewportBoundary"
|
|
17
|
+
15:I[484,[],"$14"]
|
|
18
|
+
17:"MetadataBoundary"
|
|
19
|
+
18:I[484,[],"$17"]
|
|
20
|
+
1a:I[7123,[],"default",1]
|
|
21
|
+
:HL["/_next/static/css/e41ccbccc3afaae5.css","style"]
|
|
22
|
+
9:X
|
|
23
|
+
a:[["children",{"s":"__PAGE__","h":512,"d":{"r":["$","$1","c",{"children":[["$","$b",null,{"fallback":["$","div",null,{"className":"relative flex h-dvh overflow-hidden bg-background text-foreground","children":[["$","a",null,{"href":"#main-content","className":"sr-only z-50 rounded-md bg-card px-4 py-2 text-foreground focus:not-sr-only focus:absolute focus:start-2 focus:top-2 focus:outline-2 focus:outline-accent","children":"Skip to content"}],["$","$Lf",null,{"machineId":"$undefined","machineView":"$undefined"}],["$","div",null,{"className":"flex min-w-0 flex-1 flex-col","children":[["$","header",null,{"className":"flex min-h-14 shrink-0 flex-wrap items-center justify-between gap-2 border-b border-border px-4 py-2 md:px-6","children":[["$","h1",null,{"className":"truncate text-lg font-semibold tracking-tight","children":"Processes"}],["$","div",null,{"className":"flex items-center gap-3","children":[null,["$","$L10",null,{}]]}]]}],["$","main",null,{"id":"main-content","tabIndex":-1,"className":"relative min-h-0 min-w-0 flex-1 overflow-x-hidden overscroll-contain p-4 outline-offset-[-2px] md:p-6 overflow-y-auto","children":["$","div",null,{"className":"mx-auto flex w-full min-w-0 max-w-[1500px] flex-col","children":["$","section",null,{"className":"flex min-w-0 flex-col rounded-xl border border-border bg-card p-5 mt-2","children":[["$","div",null,{"className":"flex shrink-0 items-center justify-between gap-4","children":[["$","h2",null,{"className":"text-sm font-medium tracking-tight","children":"Process detail"}],null]}],["$","div",null,{"className":"mt-4 flex min-h-0 flex-1 flex-col","children":["$","p",null,{"role":"status","className":"py-10 text-center text-sm text-muted-foreground","children":"Loading the process view…"}]}]]}]}]}]]}]]}],"children":["$","$L11",null,{}]}],null,["$","$L12",null,{"children":["$","$b",null,{"name":"Next.MetadataOutlet","children":"$@13"}]}]]}],"p":false,"v":null}}]]
|
|
24
|
+
8:[["children",{"s":"processes","h":512,"d":{"r":["$","$1","c",{"children":[null,["$","$L6",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L7",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],"p":false,"v":"$9"},"c":"$Qa"}]]
|
|
25
|
+
0:{"P":null,"c":["","processes"],"q":"","i":false,"t":{"t":{"s":"","h":528,"d":{"r":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/e41ccbccc3afaae5.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"children":["$","$L4",null,{"attribute":"class","defaultTheme":"dark","enableSystem":true,"children":["$","$L5",null,{"children":["$","$L6",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L7",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]}]}]]}],"p":false,"v":null},"c":"$Q8"},"h":{"r":["$","$1","h",{"children":[null,["$","$L15",null,{"children":"$L16"}],["$","$L18",null,{"children":[["$","div",null,{"hidden":true,"children":["$","$b",null,{"name":"Next.Metadata","children":"$L19"}]}],null]}],null]}],"p":false,"v":null}},"m":"$undefined","G":["$1a",[]],"S":true,"r":"$undefined","s":"$undefined","a":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"DZKWF9ur7H5wI0c7RAhdq"}
|
|
26
|
+
9:C
|
|
27
|
+
16:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
|
|
28
|
+
1b:I[6869,[],"IconMark"]
|
|
29
|
+
13:null
|
|
30
|
+
19:[["$","title","0",{"children":"Processes — Rigscope"}],["$","meta","1",{"name":"description","content":"Self-hosted remote system monitor — a live fleet of collectors behind one authenticated hub."}],["$","link","2",{"rel":"icon","href":"/icon.svg?3b3fa3229e2d0d7a","type":"image/svg+xml","sizes":"any"}],["$","$L1b","3",{}]]
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
1:"$Sreact.fragment"
|
|
2
|
+
2:"static/chunks/939-2600d7c8e583d5ef.js"
|
|
3
|
+
3:"static/chunks/app/layout-4feff677c4071745.js"
|
|
4
|
+
4:I[2737,["939","$2","177","$3"],"ThemeProvider"]
|
|
5
|
+
5:I[9939,["939","$2","177","$3"],"LiveProvider"]
|
|
6
|
+
6:I[7121,[],""]
|
|
7
|
+
7:I[4581,[],""]
|
|
8
|
+
b:"$Sreact.suspense"
|
|
9
|
+
c:"static/chunks/157-0d36ebf66af048ac.js"
|
|
10
|
+
d:"static/chunks/103-c47318242b24e9ac.js"
|
|
11
|
+
e:"static/chunks/app/processes/page-e471ed23a1d5632f.js"
|
|
12
|
+
f:I[2701,["157","$c","939","$2","103","$d","952","$e"],"Sidebar"]
|
|
13
|
+
10:I[2394,["157","$c","939","$2","103","$d","952","$e"],"ThemeToggle"]
|
|
14
|
+
11:I[7339,["157","$c","939","$2","103","$d","952","$e"],"ProcessesView"]
|
|
15
|
+
12:I[484,[],"OutletBoundary"]
|
|
16
|
+
14:"ViewportBoundary"
|
|
17
|
+
15:I[484,[],"$14"]
|
|
18
|
+
17:"MetadataBoundary"
|
|
19
|
+
18:I[484,[],"$17"]
|
|
20
|
+
1a:I[7123,[],"default",1]
|
|
21
|
+
:HL["/_next/static/css/e41ccbccc3afaae5.css","style"]
|
|
22
|
+
9:X
|
|
23
|
+
a:[["children",{"s":"__PAGE__","h":512,"d":{"r":["$","$1","c",{"children":[["$","$b",null,{"fallback":["$","div",null,{"className":"relative flex h-dvh overflow-hidden bg-background text-foreground","children":[["$","a",null,{"href":"#main-content","className":"sr-only z-50 rounded-md bg-card px-4 py-2 text-foreground focus:not-sr-only focus:absolute focus:start-2 focus:top-2 focus:outline-2 focus:outline-accent","children":"Skip to content"}],["$","$Lf",null,{"machineId":"$undefined","machineView":"$undefined"}],["$","div",null,{"className":"flex min-w-0 flex-1 flex-col","children":[["$","header",null,{"className":"flex min-h-14 shrink-0 flex-wrap items-center justify-between gap-2 border-b border-border px-4 py-2 md:px-6","children":[["$","h1",null,{"className":"truncate text-lg font-semibold tracking-tight","children":"Processes"}],["$","div",null,{"className":"flex items-center gap-3","children":[null,["$","$L10",null,{}]]}]]}],["$","main",null,{"id":"main-content","tabIndex":-1,"className":"relative min-h-0 min-w-0 flex-1 overflow-x-hidden overscroll-contain p-4 outline-offset-[-2px] md:p-6 overflow-y-auto","children":["$","div",null,{"className":"mx-auto flex w-full min-w-0 max-w-[1500px] flex-col","children":["$","section",null,{"className":"flex min-w-0 flex-col rounded-xl border border-border bg-card p-5 mt-2","children":[["$","div",null,{"className":"flex shrink-0 items-center justify-between gap-4","children":[["$","h2",null,{"className":"text-sm font-medium tracking-tight","children":"Process detail"}],null]}],["$","div",null,{"className":"mt-4 flex min-h-0 flex-1 flex-col","children":["$","p",null,{"role":"status","className":"py-10 text-center text-sm text-muted-foreground","children":"Loading the process view…"}]}]]}]}]}]]}]]}],"children":["$","$L11",null,{}]}],null,["$","$L12",null,{"children":["$","$b",null,{"name":"Next.MetadataOutlet","children":"$@13"}]}]]}],"p":false,"v":null}}]]
|
|
24
|
+
8:[["children",{"s":"processes","h":512,"d":{"r":["$","$1","c",{"children":[null,["$","$L6",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L7",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],"p":false,"v":"$9"},"c":"$Qa"}]]
|
|
25
|
+
0:{"P":null,"c":["","processes"],"q":"","i":false,"t":{"t":{"s":"","h":528,"d":{"r":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/e41ccbccc3afaae5.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"children":["$","$L4",null,{"attribute":"class","defaultTheme":"dark","enableSystem":true,"children":["$","$L5",null,{"children":["$","$L6",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L7",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]}]}]]}],"p":false,"v":null},"c":"$Q8"},"h":{"r":["$","$1","h",{"children":[null,["$","$L15",null,{"children":"$L16"}],["$","$L18",null,{"children":[["$","div",null,{"hidden":true,"children":["$","$b",null,{"name":"Next.Metadata","children":"$L19"}]}],null]}],null]}],"p":false,"v":null}},"m":"$undefined","G":["$1a",[]],"S":true,"r":"$undefined","s":"$undefined","a":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"DZKWF9ur7H5wI0c7RAhdq"}
|
|
26
|
+
9:C
|
|
27
|
+
16:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
|
|
28
|
+
1b:I[6869,[],"IconMark"]
|
|
29
|
+
13:null
|
|
30
|
+
19:[["$","title","0",{"children":"Processes — Rigscope"}],["$","meta","1",{"name":"description","content":"Self-hosted remote system monitor — a live fleet of collectors behind one authenticated hub."}],["$","link","2",{"rel":"icon","href":"/icon.svg?3b3fa3229e2d0d7a","type":"image/svg+xml","sizes":"any"}],["$","$L1b","3",{}]]
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
1:"$Sreact.fragment"
|
|
2
|
+
2:"static/chunks/939-2600d7c8e583d5ef.js"
|
|
3
|
+
3:"static/chunks/app/layout-4feff677c4071745.js"
|
|
4
|
+
4:I[2737,["939","$2","177","$3"],"ThemeProvider"]
|
|
5
|
+
5:I[9939,["939","$2","177","$3"],"LiveProvider"]
|
|
6
|
+
6:I[7121,[],""]
|
|
7
|
+
7:I[4581,[],""]
|
|
8
|
+
e:"$Sreact.suspense"
|
|
9
|
+
f:"static/chunks/157-0d36ebf66af048ac.js"
|
|
10
|
+
10:"static/chunks/103-c47318242b24e9ac.js"
|
|
11
|
+
11:"static/chunks/app/processes/page-e471ed23a1d5632f.js"
|
|
12
|
+
12:I[2701,["157","$f","939","$2","103","$10","952","$11"],"Sidebar"]
|
|
13
|
+
13:I[2394,["157","$f","939","$2","103","$10","952","$11"],"ThemeToggle"]
|
|
14
|
+
14:I[7339,["157","$f","939","$2","103","$10","952","$11"],"ProcessesView"]
|
|
15
|
+
15:I[484,[],"OutletBoundary"]
|
|
16
|
+
18:"ViewportBoundary"
|
|
17
|
+
19:I[484,[],"$18"]
|
|
18
|
+
1a:"MetadataBoundary"
|
|
19
|
+
1b:I[484,[],"$1a"]
|
|
20
|
+
1c:I[6869,[],"IconMark"]
|
|
21
|
+
:HL["/_next/static/css/e41ccbccc3afaae5.css","style"]
|
|
22
|
+
9:X
|
|
23
|
+
c:X
|
|
24
|
+
c:C
|
|
25
|
+
d:[["children",{"s":"__PAGE__","h":160,"d":{"r":["$","$1","c",{"children":[["$","$e",null,{"fallback":["$","div",null,{"className":"relative flex h-dvh overflow-hidden bg-background text-foreground","children":[["$","a",null,{"href":"#main-content","className":"sr-only z-50 rounded-md bg-card px-4 py-2 text-foreground focus:not-sr-only focus:absolute focus:start-2 focus:top-2 focus:outline-2 focus:outline-accent","children":"Skip to content"}],["$","$L12",null,{}],["$","div",null,{"className":"flex min-w-0 flex-1 flex-col","children":[["$","header",null,{"className":"flex min-h-14 shrink-0 flex-wrap items-center justify-between gap-2 border-b border-border px-4 py-2 md:px-6","children":[["$","h1",null,{"className":"truncate text-lg font-semibold tracking-tight","children":"Processes"}],["$","div",null,{"className":"flex items-center gap-3","children":[null,["$","$L13",null,{}]]}]]}],["$","main",null,{"id":"main-content","tabIndex":-1,"className":"relative min-h-0 min-w-0 flex-1 overflow-x-hidden overscroll-contain p-4 outline-offset-[-2px] md:p-6 overflow-y-auto","children":["$","div",null,{"className":"mx-auto flex w-full min-w-0 max-w-[1500px] flex-col","children":["$","section",null,{"className":"flex min-w-0 flex-col rounded-xl border border-border bg-card p-5 mt-2","children":[["$","div",null,{"className":"flex shrink-0 items-center justify-between gap-4","children":[["$","h2",null,{"className":"text-sm font-medium tracking-tight","children":"Process detail"}],null]}],["$","div",null,{"className":"mt-4 flex min-h-0 flex-1 flex-col","children":["$","p",null,{"role":"status","className":"py-10 text-center text-sm text-muted-foreground","children":"Loading the process view…"}]}]]}]}]}]]}]]}],"children":["$","$L14",null,{}]}],null,["$","$L15",null,{"children":["$","$e",null,{"name":"Next.MetadataOutlet","children":"$@16"}]}]]}],"p":"$@17","v":null,"s":"$9"}}]]
|
|
26
|
+
a:[["children",{"s":"processes","h":96,"d":{"r":["$","$1","c",{"children":[null,["$","$L6",null,{"parallelRouterKey":"children","template":["$","$L7",null,{}]}]]}],"p":"$@b","v":"$c","s":"$9"},"c":"$Qd"}]]
|
|
27
|
+
0:{"t":{"t":{"s":"","h":80,"d":{"r":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/e41ccbccc3afaae5.css","precedence":"next"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"children":["$","$L4",null,{"attribute":"class","defaultTheme":"dark","enableSystem":true,"children":["$","$L5",null,{"children":["$","$L6",null,{"parallelRouterKey":"children","template":["$","$L7",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}]}]}]}]}]]}],"p":"$@8","v":null,"s":"$9"},"c":"$Qa"},"h":{"r":["$","$1","h",{"children":[null,["$","$L19",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","$L1b",null,{"children":[["$","div",null,{"hidden":true,"children":["$","$e",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Processes — Rigscope"}],["$","meta","1",{"name":"description","content":"Self-hosted remote system monitor — a live fleet of collectors behind one authenticated hub."}],["$","link","2",{"rel":"icon","href":"/icon.svg?3b3fa3229e2d0d7a","type":"image/svg+xml","sizes":"any"}],["$","$L1c","3",{}]]}]}],null]}],null]}],"p":"$@1d","v":null,"s":"$9"}},"a":"$@1e","u":"$@1f","b":"DZKWF9ur7H5wI0c7RAhdq"}
|
|
28
|
+
16:null
|
|
29
|
+
9:300
|
|
30
|
+
1f:true
|
|
31
|
+
9:C
|
|
32
|
+
1e:0
|
|
33
|
+
b:"$undefined"
|
|
34
|
+
8:"$undefined"
|
|
35
|
+
1d:"$undefined"
|
|
36
|
+
17:"$undefined"
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"/_not-found/page": "app/_not-found/page.js",
|
|
3
|
+
"/_global-error/page": "app/_global-error/page.js",
|
|
4
|
+
"/icon.svg/route": "app/icon.svg/route.js",
|
|
5
|
+
"/alerts/page": "app/alerts/page.js",
|
|
6
|
+
"/connections/page": "app/connections/page.js",
|
|
7
|
+
"/administration/page": "app/administration/page.js",
|
|
8
|
+
"/login/page": "app/login/page.js",
|
|
9
|
+
"/history/page": "app/history/page.js",
|
|
10
|
+
"/page": "app/page.js",
|
|
11
|
+
"/machines/[machineId]/page": "app/machines/[machineId]/page.js",
|
|
12
|
+
"/processes/page": "app/processes/page.js"
|
|
13
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
exports.id=161,exports.ids=[161],exports.modules={4833:(a,b,c)=>{"use strict";c.d(b,{ThemeProvider:()=>f});var d=c(48249),e=c(8696);function f({children:a,...b}){return(0,d.jsx)(e.N,{...b,children:a})}},7909:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,95547,23))},21061:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,81921,23))},21585:(a,b,c)=>{Promise.resolve().then(c.bind(c,65223)),Promise.resolve().then(c.bind(c,89604))},22127:(a,b,c)=>{"use strict";c.d(b,{mq:()=>e,vz:()=>d,yY:()=>f});let d=15e3,e=9e4,f=180},25982:(a,b,c)=>{"use strict";c.d(b,{U8:()=>d,Q_:()=>j,FZ:()=>F});let d=1024,e=Date.parse("2000-01-01T00:00:00Z"),f=Date.parse("2200-01-01T00:00:00Z"),g=["metrics","inventory","processes"],h=["cpu","memory","swap","gpus","disks","network"],i=["outbox-age","outbox-bytes","disk-budget","write-failure","rejected"];function j(a){let b=t(a,"collector message");switch(b.type){case"hello":{u(b,["type","collectorId","runId","bootId","hostname","capabilities","expectedIntervalMs","collectorVersion"],"hello");let a=w(b.capabilities,"hello.capabilities",1,g.length).map(a=>x(a,g,"hello.capabilities"));if(new Set(a).size!==a.length||!a.includes("metrics"))throw Error("invalid hello: capabilities must be unique and include metrics");return{type:"hello",collectorId:z(b.collectorId,"collectorId"),runId:z(b.runId,"runId"),bootId:y(b.bootId,"bootId",0,128),hostname:y(b.hostname,"hostname",0,255),capabilities:a,expectedIntervalMs:B(b.expectedIntervalMs,"expectedIntervalMs",100,72e5),collectorVersion:y(b.collectorVersion,"collectorVersion",1,64)}}case"samples":{u(b,["type","mode","records"],"samples");let a=x(b.mode,["live","replay"],"samples.mode"),c=w(b.records,"samples.records",1,32).map((a,b)=>k(a,`records[${b}]`)),d=new Set;for(let a of c){let b=`${a.runId}\0${a.sequence}`;if(d.has(b))throw Error("invalid samples: duplicate record in batch");d.add(b)}return{type:"samples",mode:a,records:c}}case"inventory":return u(b,["type","capturedAt","inventory"],"inventory"),{type:"inventory",capturedAt:D(b.capturedAt,"capturedAt"),inventory:l(b.inventory)};case"status":return u(b,["type","capturedAt","delivery","failures"],"status"),{type:"status",capturedAt:D(b.capturedAt,"capturedAt"),delivery:function(a){let b=t(a,"delivery");if(u(b,["pendingRecords","pendingBytes","oldestPendingCapturedAt","inFlightRecords","droppedRecords","replaying","lastAckAt"],"delivery"),"boolean"!=typeof b.replaying)throw Error("invalid delivery: replaying");let c=(a,b)=>B(a,b,0,Number.MAX_SAFE_INTEGER);return{pendingRecords:c(b.pendingRecords,"pendingRecords"),pendingBytes:c(b.pendingBytes,"pendingBytes"),oldestPendingCapturedAt:r(b.oldestPendingCapturedAt,a=>D(a,"oldestPendingCapturedAt")),inFlightRecords:c(b.inFlightRecords,"inFlightRecords"),droppedRecords:c(b.droppedRecords,"droppedRecords"),replaying:b.replaying,lastAckAt:r(b.lastAckAt,a=>D(a,"lastAckAt"))}}(b.delivery),failures:w(b.failures,"failures",0,32).map(a=>{let b=t(a,"failure");return u(b,["metric","resourceId","reason"],"failure"),{metric:y(b.metric,"metric",1,64),resourceId:null===b.resourceId?null:A(b.resourceId),reason:y(b.reason,"reason",0,256)}})};case"detail.result":return u(b,["type","subscriptionId","capturedAt","snapshot"],"detail.result"),{type:"detail.result",subscriptionId:z(b.subscriptionId,"subscriptionId"),capturedAt:D(b.capturedAt,"capturedAt"),snapshot:function(a){let b=t(a,"process snapshot");if(u(b,["totalProcesses","truncated","inaccessible","processes"],"process snapshot"),"boolean"!=typeof b.truncated)throw Error("invalid process snapshot: truncated");let c=(a,b,c)=>r(a,a=>C(a,b,0,c));return{totalProcesses:B(b.totalProcesses,"totalProcesses",0,1e7),truncated:b.truncated,inaccessible:B(b.inaccessible,"inaccessible",0,1e7),processes:w(b.processes,"processes",0,6e3).map(a=>{let b=t(a,"process");u(b,["pid","ppid","startTicks","name","user","state","cpuPercent","memoryRssBytes","gpuMemoryBytes","ioReadBytesPerSec","ioWriteBytesPerSec","threads","unit"],"process",["command"]);let e={pid:B(b.pid,"pid",0,0x80000000),ppid:B(b.ppid,"ppid",0,0x80000000),startTicks:B(b.startTicks,"startTicks",0,Number.MAX_SAFE_INTEGER),name:y(b.name,"name",0,256),user:r(b.user,a=>y(a,"user",0,64)),state:y(b.state,"state",0,16),cpuPercent:c(b.cpuPercent,"cpuPercent",100*d),memoryRssBytes:r(b.memoryRssBytes,a=>B(a,"memoryRssBytes",0,Number.MAX_SAFE_INTEGER)),gpuMemoryBytes:r(b.gpuMemoryBytes,a=>B(a,"gpuMemoryBytes",0,Number.MAX_SAFE_INTEGER)),ioReadBytesPerSec:c(b.ioReadBytesPerSec,"ioReadBytesPerSec",1e13),ioWriteBytesPerSec:c(b.ioWriteBytesPerSec,"ioWriteBytesPerSec",1e13),threads:r(b.threads,a=>B(a,"threads",0,1e7)),unit:r(b.unit,a=>y(a,"unit",1,256))};return v(b,"command")&&(e.command=y(b.command,"command",0,4096)),e})}}(b.snapshot)};case"detail.ended":return u(b,["type","subscriptionId","reason"],"detail.ended"),{type:"detail.ended",subscriptionId:z(b.subscriptionId,"subscriptionId"),reason:x(b.reason,["expired","cancelled","withheld","unsupported","busy","failed"],"detail.ended.reason")};default:throw Error(`invalid collector message: unsupported type ${E(b.type)}`)}}function k(a,b="record"){let c=t(a,b);u(c,["collectorId","runId","bootId","sequence","capturedAt","kind","payload"],b);let e={collectorId:z(c.collectorId,"collectorId"),runId:z(c.runId,"runId"),bootId:y(c.bootId,"bootId",0,128),sequence:B(c.sequence,"sequence",0,Number.MAX_SAFE_INTEGER),capturedAt:D(c.capturedAt,"capturedAt")};if("metrics"===c.kind){let a;return{...e,kind:"metrics",payload:(u(a=t(c.payload,"metrics payload"),[...h],"metrics payload"),{cpu:o(a.cpu,"cpu",a=>{u(a,["status","usagePercent","perCore"],"cpu",["temperatureC","powerWatts","iowaitPercent","pressureSomePercent"]);let b={status:"ok",usagePercent:C(a.usagePercent,"usagePercent",0,100),perCore:w(a.perCore,"perCore",0,d).map(a=>null===a?null:C(a,"perCore",0,100))},c=s(a,"temperatureC",a=>C(a,"temperatureC",-50,200));void 0!==c&&(b.temperatureC=c);let e=s(a,"powerWatts",a=>C(a,"powerWatts",0,1e4));void 0!==e&&(b.powerWatts=e);let f=s(a,"iowaitPercent",a=>C(a,"iowaitPercent",0,100));void 0!==f&&(b.iowaitPercent=f);let g=s(a,"pressureSomePercent",a=>C(a,"pressureSomePercent",0,100));return void 0!==g&&(b.pressureSomePercent=g),b}),memory:o(a.memory,"memory",n),swap:o(a.swap,"swap",m),gpus:o(a.gpus,"gpus",a=>(u(a,["status","devices"],"gpus"),{status:"ok",devices:q(w(a.devices,"gpus.devices",0,16).map(a=>p(a,"gpu",(a,b)=>{u(a,["id","status","utilizationPercent","memoryUsedBytes","memoryTotalBytes","temperatureC","powerWatts"],"gpu");let c=r(a.memoryUsedBytes,a=>B(a,"memoryUsedBytes",0,Number.MAX_SAFE_INTEGER)),d=r(a.memoryTotalBytes,a=>B(a,"memoryTotalBytes",0,Number.MAX_SAFE_INTEGER));if(null!==c&&null!==d&&c>d)throw Error("invalid gpu: memoryUsedBytes exceeds total");return{id:b,status:"ok",utilizationPercent:r(a.utilizationPercent,a=>C(a,"utilizationPercent",0,100)),memoryUsedBytes:c,memoryTotalBytes:d,temperatureC:r(a.temperatureC,a=>C(a,"temperatureC",-50,200)),powerWatts:r(a.powerWatts,a=>C(a,"powerWatts",0,1e4))}})))})),disks:o(a.disks,"disks",a=>{u(a,["status","filesystems","devices"],"disks",["pressureSomePercent","pressureFullPercent"]);let b={status:"ok",filesystems:q(w(a.filesystems,"filesystems",0,64).map(a=>p(a,"filesystem",(a,b)=>{u(a,["id","status","usedBytes","totalBytes"],"filesystem",["inodesUsed","inodesTotal"]);let c=m({status:"ok",usedBytes:a.usedBytes,totalBytes:a.totalBytes}),d={id:b,status:"ok",usedBytes:c.usedBytes,totalBytes:c.totalBytes},e=s(a,"inodesUsed",a=>B(a,"inodesUsed",0,Number.MAX_SAFE_INTEGER));void 0!==e&&(d.inodesUsed=e);let f=s(a,"inodesTotal",a=>B(a,"inodesTotal",0,Number.MAX_SAFE_INTEGER));if(void 0!==f&&(d.inodesTotal=f),null!=e&&null!=f&&e>f)throw Error("invalid filesystem: inodesUsed exceeds inodesTotal");return d}))),devices:q(w(a.devices,"disk devices",0,64).map(a=>p(a,"disk",(a,b)=>{u(a,["id","status","readBytesPerSec","writeBytesPerSec"],"disk",["readLatencyMs","writeLatencyMs","ioUtilizationPercent"]);let c={id:b,status:"ok",readBytesPerSec:C(a.readBytesPerSec,"readBytesPerSec",0,1e13),writeBytesPerSec:C(a.writeBytesPerSec,"writeBytesPerSec",0,1e13)},d=s(a,"readLatencyMs",a=>C(a,"readLatencyMs",0,864e5));void 0!==d&&(c.readLatencyMs=d);let e=s(a,"writeLatencyMs",a=>C(a,"writeLatencyMs",0,864e5));void 0!==e&&(c.writeLatencyMs=e);let f=s(a,"ioUtilizationPercent",a=>C(a,"ioUtilizationPercent",0,100));return void 0!==f&&(c.ioUtilizationPercent=f),c})))},c=s(a,"pressureSomePercent",a=>C(a,"pressureSomePercent",0,100));void 0!==c&&(b.pressureSomePercent=c);let d=s(a,"pressureFullPercent",a=>C(a,"pressureFullPercent",0,100));return void 0!==d&&(b.pressureFullPercent=d),b}),network:o(a.network,"network",a=>(u(a,["status","interfaces"],"network"),{status:"ok",interfaces:q(w(a.interfaces,"interfaces",0,64).map(a=>p(a,"interface",(a,b)=>(u(a,["id","status","rxBytesPerSec","txBytesPerSec"],"interface"),{id:b,status:"ok",rxBytesPerSec:C(a.rxBytesPerSec,"rxBytesPerSec",0,1e13),txBytesPerSec:C(a.txBytesPerSec,"txBytesPerSec",0,1e13)}))))}))})}}if("gap"===c.kind){let a=t(c.payload,`${b}.payload`);u(a,["fromCapturedAt","toCapturedAt","droppedRecords","reason"],"gap payload");let d=D(a.fromCapturedAt,"fromCapturedAt"),f=D(a.toCapturedAt,"toCapturedAt");if(Date.parse(d)>Date.parse(f))throw Error("invalid gap: fromCapturedAt after toCapturedAt");return{...e,kind:"gap",payload:{fromCapturedAt:d,toCapturedAt:f,droppedRecords:B(a.droppedRecords,"droppedRecords",1,Number.MAX_SAFE_INTEGER),reason:x(a.reason,i,"gap.reason")}}}throw Error(`invalid ${b}: unsupported kind ${E(c.kind)}`)}function l(a){let b=t(a,"inventory");u(b,["os","cpu","memory","gpus","filesystems","disks","network","capabilities"],"inventory");let c=t(b.os,"inventory.os");u(c,["platform","release","distro","arch"],"inventory.os");let e=t(b.cpu,"inventory.cpu");u(e,["model","logicalCores"],"inventory.cpu");let f=t(b.memory,"inventory.memory");u(f,["totalBytes","swapTotalBytes"],"inventory.memory");let g=t(b.capabilities,"inventory.capabilities"),i=[...h,"processes"];u(g,[...i],"inventory.capabilities");let j={};for(let a of i){let b=t(g[a],`capability ${a}`);u(b,["status"],`capability ${a}`,["reason"]);let c={status:x(b.status,["supported","unsupported","withheld"],`capability ${a}`)};v(b,"reason")&&(c.reason=y(b.reason,"reason",0,256)),j[a]=c}let k=(a,b)=>r(a,a=>B(a,b,0,Number.MAX_SAFE_INTEGER));return{os:{platform:y(c.platform,"platform",0,64),release:y(c.release,"release",0,256),distro:r(c.distro,a=>y(a,"distro",0,256)),arch:y(c.arch,"arch",0,64)},cpu:{model:r(e.model,a=>y(a,"model",0,256)),logicalCores:B(e.logicalCores,"logicalCores",0,d)},memory:{totalBytes:k(f.totalBytes,"totalBytes"),swapTotalBytes:k(f.swapTotalBytes,"swapTotalBytes")},gpus:q(w(b.gpus,"inventory.gpus",0,16).map(a=>{let b=t(a,"gpu inventory");u(b,["id","name","vendor","pciBusId","telemetry","memoryTotalBytes"],"gpu inventory",["reason"]);let c={id:A(b.id),name:y(b.name,"name",0,256),vendor:x(b.vendor,["nvidia","amd","intel","aspeed","other"],"vendor"),pciBusId:r(b.pciBusId,a=>y(a,"pciBusId",1,64)),telemetry:x(b.telemetry,["supported","unsupported"],"telemetry"),memoryTotalBytes:k(b.memoryTotalBytes,"memoryTotalBytes")};return v(b,"reason")&&(c.reason=y(b.reason,"reason",0,256)),c})),filesystems:q(w(b.filesystems,"inventory.filesystems",0,64).map(a=>{let b=t(a,"filesystem inventory");return u(b,["id","mountPoint","device","fsType","totalBytes"],"filesystem inventory"),{id:A(b.id),mountPoint:y(b.mountPoint,"mountPoint",1,256),device:y(b.device,"device",0,256),fsType:y(b.fsType,"fsType",0,64),totalBytes:k(b.totalBytes,"totalBytes")}})),disks:q(w(b.disks,"inventory.disks",0,64).map(a=>{let b=t(a,"disk inventory");if(u(b,["id","name","model","rotational","sizeBytes"],"disk inventory"),null!==b.rotational&&"boolean"!=typeof b.rotational)throw Error("invalid disk inventory: rotational");return{id:A(b.id),name:y(b.name,"name",1,64),model:r(b.model,a=>y(a,"model",0,256)),rotational:b.rotational,sizeBytes:k(b.sizeBytes,"sizeBytes")}})),network:q(w(b.network,"inventory.network",0,64).map(a=>{let b=t(a,"interface inventory");if(u(b,["id","name","mac","addresses","virtual","state","speedMbps"],"interface inventory"),"boolean"!=typeof b.virtual)throw Error("invalid interface inventory: virtual");return{id:A(b.id),name:y(b.name,"name",1,64),mac:r(b.mac,a=>y(a,"mac",1,64)),addresses:w(b.addresses,"addresses",0,32).map(a=>{let b=t(a,"address");u(b,["family","address","prefix"],"address");let c=x(b.family,["ipv4","ipv6"],"family");return{family:c,address:y(b.address,"address",2,64),prefix:B(b.prefix,"prefix",0,"ipv4"===c?32:128)}}),virtual:b.virtual,state:x(b.state,["up","down","unknown"],"state"),speedMbps:r(b.speedMbps,a=>B(a,"speedMbps",0,1e7))}})),capabilities:j}}function m(a){u(a,["status","usedBytes","totalBytes"],"usage");let b=B(a.totalBytes,"totalBytes",0,Number.MAX_SAFE_INTEGER),c=B(a.usedBytes,"usedBytes",0,Number.MAX_SAFE_INTEGER);if(c>b)throw Error("invalid usage: usedBytes exceeds totalBytes");return{status:"ok",usedBytes:c,totalBytes:b}}function n(a){u(a,["status","usedBytes","totalBytes"],"memory",["pressureSomePercent","pressureFullPercent"]);let b=B(a.totalBytes,"totalBytes",0,Number.MAX_SAFE_INTEGER),c=B(a.usedBytes,"usedBytes",0,Number.MAX_SAFE_INTEGER);if(c>b)throw Error("invalid memory: usedBytes exceeds totalBytes");let d={status:"ok",usedBytes:c,totalBytes:b},e=s(a,"pressureSomePercent",a=>C(a,"pressureSomePercent",0,100));void 0!==e&&(d.pressureSomePercent=e);let f=s(a,"pressureFullPercent",a=>C(a,"pressureFullPercent",0,100));return void 0!==f&&(d.pressureFullPercent=f),d}function o(a,b,c){let d=t(a,b);if("ok"===d.status)return c(d);if("unavailable"===d.status)return u(d,["status","reason"],b),{status:"unavailable",reason:y(d.reason,"reason",0,256)};throw Error(`invalid ${b}: unsupported status ${E(d.status)}`)}function p(a,b,c){let d=t(a,b),e=A(d.id);if("ok"===d.status)return c(d,e);if("unavailable"===d.status)return u(d,["id","status","reason"],b),{id:e,status:"unavailable",reason:y(d.reason,"reason",0,256)};throw Error(`invalid ${b}: unsupported status ${E(d.status)}`)}function q(a){let b=new Set;for(let c of a){if(b.has(c.id))throw Error(`invalid resource list: duplicate id ${E(c.id)}`);b.add(c.id)}return a}function r(a,b){return null===a?null:b(a)}function s(a,b,c){if(v(a,b))return r(a[b],c)}function t(a,b){if(null===a||"object"!=typeof a||Array.isArray(a))throw Error(`invalid ${b}: expected object, got ${E(a)}`);return a}function u(a,b,c,d=[]){let e=new Set([...b,...d]);for(let b of Object.keys(a))if(!e.has(b))throw Error(`invalid ${c}: unexpected field "${b}"`);for(let d of b)if(void 0===a[d])throw Error(`invalid ${c}: missing field "${d}"`);for(let b of d)if(v(a,b)&&void 0===a[b])throw Error(`invalid ${c}: ${b} must not be undefined`)}function v(a,b){return Object.prototype.hasOwnProperty.call(a,b)}function w(a,b,c,d){if(!Array.isArray(a))throw Error(`invalid ${b}: expected array`);if(a.length<c||a.length>d)throw Error(`invalid ${b}: length ${a.length} outside ${c}..${d}`);return a}function x(a,b,c){if("string"!=typeof a||!b.includes(a))throw Error(`invalid ${c}: unexpected value ${E(a)}`);return a}function y(a,b,c,d){if("string"!=typeof a)throw Error(`invalid ${b}: expected string, got ${E(a)}`);if(a.length<c||a.length>d)throw Error(`invalid ${b}: length ${a.length} outside ${c}..${d}`);return a}function z(a,b){return y(a,b,1,128)}function A(a){return y(a,"resource id",1,256)}function B(a,b,c,d){if("number"!=typeof a||!Number.isSafeInteger(a))throw Error(`invalid ${b}: expected safe integer, got ${E(a)}`);if(a<c||a>d)throw Error(`invalid ${b}: ${a} outside ${c}..${d}`);return a}function C(a,b,c,d){if("number"!=typeof a||!Number.isFinite(a))throw Error(`invalid ${b}: expected finite number, got ${E(a)}`);if(a<c||a>d)throw Error(`invalid ${b}: ${a} outside ${c}..${d}`);return a}function D(a,b){let c=y(a,b,1,64),d=Date.parse(c);if(!Number.isFinite(d)||d<e||d>f)throw Error(`invalid ${b}: not a parseable timestamp`);return c}function E(a){try{let b=JSON.stringify(a);if("string"==typeof b)return b.length<=80?b:`${b.slice(0,77)}...`}catch{}return String(a)}function F(a){let b=J(a,"hub snapshot");K(b,["hubRunId","machines"],"hub snapshot");let c=M(b.hubRunId,"hubRunId","hub snapshot");if(!Array.isArray(b.machines))throw Error("invalid snapshot machines");let d=new Set;return{hubRunId:c,machines:b.machines.map(a=>{let b=J(a,"machine");K(b,["machineId","collectorId","hostname","connected","lastReceivedAt"],"machine",["expectedIntervalMs","metrics","inventory","delivery","displayName","tags"]);let c=M(b.machineId,"machineId","machine");if(d.has(c))throw Error("duplicate snapshot machine");d.add(c);let e=M(b.collectorId,"collectorId","machine"),f=N(b.hostname,"hostname","machine",0,G);if("boolean"!=typeof b.connected)throw Error("invalid machine connection state");let g=null===b.lastReceivedAt?null:O(b.lastReceivedAt,"lastReceivedAt","machine"),h={},i=L(b,"expectedIntervalMs")?function(a,b,c){if(null===a)return null;if(void 0===a)throw Error(`invalid ${c}: ${b} must not be undefined`);var d=a,e=b,f=c;if("number"!=typeof d||!Number.isSafeInteger(d))throw Error(`invalid ${f}: ${e} must be a safe integer, got ${P(d)}`);if(d<100||d>72e5)throw Error(`invalid ${f}: ${e} ${d} outside ${100}..${72e5}`);return d}(b.expectedIntervalMs,"expectedIntervalMs","machine"):void 0;if(L(b,"metrics")){let{receivedAt:a,...c}=J(b.metrics,"received metrics"),d=k(c);if("metrics"!==d.kind||d.collectorId!==e)throw Error("conflicting machine metrics");if(h.metrics={...d,receivedAt:O(a,"receivedAt","metrics")},h.metrics.receivedAt!==g)throw Error("conflicting metrics receipt time")}if(L(b,"inventory")&&(h.inventory=l(b.inventory)),L(b,"delivery")){let a=j(b.delivery);if("status"!==a.type)throw Error("invalid delivery status");h.delivery=a}if(L(b,"displayName")&&(h.displayName=null===b.displayName?null:N(b.displayName,"displayName","machine",0,128)),L(b,"tags")){if(!Array.isArray(b.tags)||b.tags.length>32)throw Error("invalid machine tags");h.tags=b.tags.map(a=>N(a,"tag","machine",1,64))}return{machineId:c,collectorId:e,hostname:f,connected:b.connected,lastReceivedAt:g,...void 0===i?{}:{expectedIntervalMs:i},...h}})}}let G=255,H=Date.parse("2000-01-01T00:00:00Z"),I=Date.parse("2200-01-01T00:00:00Z");function J(a,b){if(null===a||"object"!=typeof a||Array.isArray(a))throw Error(`invalid ${b}: expected object, got ${P(a)}`);return a}function K(a,b,c,d=[]){let e=new Set([...b,...d]);for(let b of Object.keys(a))if(!e.has(b))throw Error(`invalid ${c}: unexpected field "${b}"`);for(let d of b)if(void 0===a[d])throw Error(`invalid ${c}: missing field "${d}"`);for(let b of d)if(L(a,b)&&void 0===a[b])throw Error(`invalid ${c}: ${b} must not be undefined`)}function L(a,b){return Object.prototype.hasOwnProperty.call(a,b)}function M(a,b,c){return N(a,b,c,1,128)}function N(a,b,c,d,e){if("string"!=typeof a)throw Error(`invalid ${c}: ${b} must be a string, got ${P(a)}`);if(a.length<d||a.length>e)throw Error(`invalid ${c}: ${b} length ${a.length} outside ${d}..${e}`);return a}function O(a,b,c){let d=N(a,b,c,1,64),e=Date.parse(d);if(!Number.isFinite(e)||e<H||e>I)throw Error(`invalid ${c}: ${b} is not a parseable timestamp`);return d}function P(a){try{let b=JSON.stringify(a);if("string"==typeof b)return b.length<=80?b:`${b.slice(0,77)}...`}catch{}return String(a)}},41756:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,81921,23)),Promise.resolve().then(c.t.bind(c,60440,23)),Promise.resolve().then(c.t.bind(c,84342,23)),Promise.resolve().then(c.t.bind(c,82265,23)),Promise.resolve().then(c.t.bind(c,35421,23)),Promise.resolve().then(c.t.bind(c,61335,23)),Promise.resolve().then(c.t.bind(c,70664,23)),Promise.resolve().then(c.bind(c,74661))},55324:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,95547,23)),Promise.resolve().then(c.t.bind(c,15098,23)),Promise.resolve().then(c.t.bind(c,47644,23)),Promise.resolve().then(c.t.bind(c,33859,23)),Promise.resolve().then(c.t.bind(c,98099,23)),Promise.resolve().then(c.t.bind(c,16237,23)),Promise.resolve().then(c.t.bind(c,98562,23)),Promise.resolve().then(c.t.bind(c,36675,23))},58910:(a,b,c)=>{"use strict";c.d(b,{LiveProvider:()=>s,M:()=>r});var d=c(48249),e=c(67484);async function f(a){try{let b=await a.json();if(b&&"object"==typeof b&&"error"in b){let a=b.error;if("string"==typeof a)return a}}catch{}return a.statusText||null}function g(a){if(!a||"object"!=typeof a)return null;let b=a.username,c=a.csrfToken;if("string"!=typeof b||0===b.length||"string"!=typeof c||0===c.length)return null;let d=a.admin;return void 0!==d&&"boolean"!=typeof d?null:{username:b,csrfToken:c,...!0===d?{admin:!0}:{}}}async function h(){try{let a=await fetch("/api/auth/session",{cache:"no-store",signal:AbortSignal.timeout(5e3),headers:{Accept:"application/json"}});if(a.ok){try{let b=g(await a.json());if(b)return{kind:"signed-in",user:b}}catch{}return{kind:"error",detail:"unexpected session response"}}if(401===a.status)return{kind:"signed-out"};if(503===a.status)return{kind:"auth-unavailable",detail:await f(a)};return{kind:"error",detail:`unexpected status ${a.status}`}}catch{return{kind:"unreachable"}}}async function i(a,b){try{let c=await fetch("/api/auth/login",{method:"POST",cache:"no-store",signal:AbortSignal.timeout(5e3),headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({username:a,password:b})});if(c.ok){try{let a=g(await c.json());if(a)return{kind:"signed-in",user:a}}catch{}return{kind:"error",detail:"unexpected sign-in response"}}if(401===c.status)return{kind:"invalid-credentials",detail:await f(c)};if(429===c.status)return{kind:"error",detail:"too many attempts — wait a moment and try again"};if(503===c.status)return{kind:"auth-unavailable",detail:await f(c)};return{kind:"error",detail:`unexpected status ${c.status}`}}catch{return{kind:"unreachable"}}}async function j(a){try{let b=await fetch("/api/auth/logout",{method:"POST",cache:"no-store",signal:AbortSignal.timeout(5e3),headers:{"X-CSRF-Token":a,Accept:"application/json"}});if(b.ok||401===b.status)return"ok";return b.status,{kind:"error",detail:`unexpected status ${b.status}`}}catch{return"unreachable"}}async function k(a=5e3){let b=new AbortController,c=setTimeout(()=>b.abort(),a);try{let a=await fetch("/api/live",{cache:"no-store",signal:b.signal,headers:{Accept:"text/event-stream"}});if(200===a.status)return{kind:"ok"};if(401===a.status)return{kind:"unauthorized"};if(403===a.status)return{kind:"forbidden"};return{kind:"error",detail:`unexpected status ${a.status}`}}catch{return{kind:"unreachable"}}finally{clearTimeout(c);try{b.abort()}catch{}}}var l=c(25982);let m=["snapshot","update","reset"];class n{source=null;lastId=null;get lastEventId(){return this.lastId}get isOpen(){return null!==this.source&&2!==this.source.readyState}start(a,b){this.close();let c=new EventSource(a);this.source=c;let d=a=>d=>{if(this.source!==c||null===this.source)return;let e=d.lastEventId;"string"==typeof e&&e.length>0&&(this.lastId=e);try{b.onSnapshot((0,l.FZ)(JSON.parse(d.data)),a,e??"")}catch{this.close(),b.onError()}};for(let a of m)c.addEventListener(a,d(a));c.onerror=()=>{this.source===c&&(this.close(),b.onError())}}close(){this.source?.close(),this.source=null}}var o=c(65666);let p=[1e3,2e3,4e3,8e3,15e3],q=(0,e.createContext)(null);function r(){let a=(0,e.useContext)(q);if(!a)throw Error("useLive must be used inside <LiveProvider>");return a}function s({children:a}){let[b,c]=(0,e.useState)({kind:"restoring"}),[f,g]=(0,e.useState)("idle"),[l,m]=(0,e.useState)(null),[r,t]=(0,e.useState)([]),[u,v]=(0,e.useState)(null),[w,x]=(0,e.useState)(null),[y,z]=(0,e.useState)(null),[A,B]=(0,e.useState)(null),[C,D]=(0,e.useState)(new Map),E=(0,e.useRef)(!0),F=(0,e.useRef)(0),G=(0,e.useRef)(null),H=(0,e.useRef)(null),I=(0,e.useRef)(0),J=(0,e.useRef)(b),K=(0,e.useRef)(0),L=(0,e.useRef)(!1),M=(0,e.useRef)(!1),N=a=>{J.current=a,c(a)},O=()=>{null!==H.current&&(clearTimeout(H.current),H.current=null)},P=()=>{K.current+=1,F.current+=1,G.current?.close(),G.current=null,O()},Q=()=>{L.current=!1,t([]),D(new Map),m(null),x(null),z(null),v(null)},R=a=>{let b=J.current;("signed-in"!==b.kind||b.user.csrfToken!==a.csrfToken)&&Q(),N({kind:"signed-in",user:a})},S=()=>{if("signed-in"!==J.current.kind)return;P(),g(L.current?"reconnecting":"connecting");let a=new n;G.current=a,a.start("/api/live",{onSnapshot:(b,c,d)=>{E.current&&G.current===a&&(I.current=0,L.current=!0,m(b.hubRunId),t(b.machines),v(Date.now()),x(d||null),z(c),D(a=>(0,o.g)(a,b)),g("live"))},onError:()=>{E.current&&G.current===a&&T()}})},T=async()=>{P();let a=K.current;g("reconnecting");let b=await h();if(!E.current||a!==K.current)return;if("signed-in"===b.kind)R(b.user);else if("signed-out"===b.kind){N({kind:"signed-out"}),Q(),g("expired");return}else if("auth-unavailable"===b.kind){N({kind:"auth-unavailable",detail:b.detail}),Q(),g("idle");return}let c=Math.min(I.current+1,p.length+1);if(I.current=c,c>p.length){g("disconnected"),V();return}g("reconnecting"),H.current=setTimeout(()=>{U()},p[c-1])},U=async()=>{if(!E.current||M.current)return;P();let a=K.current,b=await k();if(E.current&&a===K.current){if("forbidden"===b.kind){Q(),g("no-permission");return}if("unauthorized"===b.kind){let b=await h();if(!E.current||a!==K.current)return;if("signed-in"===b.kind){R(b.user),S();return}if("signed-out"===b.kind){N({kind:"signed-out"}),Q(),g("expired");return}if("auth-unavailable"===b.kind){N({kind:"auth-unavailable",detail:b.detail}),Q(),g("idle");return}}S()}},V=()=>{O(),H.current=setTimeout(()=>{W()},3e4)},W=async()=>{if(!E.current||M.current)return;P();let a=K.current,b=await h();if(E.current&&a===K.current){if("signed-in"===b.kind){R(b.user),S();return}if("signed-out"===b.kind){N({kind:"signed-out"}),Q(),g("expired");return}if("auth-unavailable"===b.kind){N({kind:"auth-unavailable",detail:b.detail}),Q(),g("idle");return}V()}},X=async a=>{let b=K.current,c=await h();if(E.current&&F.current===a&&b===K.current){if("signed-in"===c.kind){R(c.user),I.current=0,S();return}if("signed-out"===c.kind){N({kind:"signed-out"}),g("idle");return}if("auth-unavailable"===c.kind){N({kind:"auth-unavailable",detail:c.detail}),g("idle");return}N({kind:"restore-failed",detail:"error"===c.kind?c.detail:null}),g("idle")}},Y=async(a,b)=>{P();let c=K.current,d=await i(a,b);return E.current&&c===K.current?("signed-in"===d.kind&&E.current&&(R(d.user),B(null),I.current=0,S()),d):{kind:"error",detail:"Session request superseded. Try again."}},Z=async()=>{let a=J.current;if("signed-in"!==a.kind||M.current)return;M.current=!0,P();let b=K.current;Q(),g("idle");let c=await j(a.user.csrfToken);if(M.current=!1,!E.current||b!==K.current)return;if("ok"===c){N({kind:"signed-out"}),Q(),g("idle"),B("Signed out.");return}let d=await h();if(E.current&&b===K.current){if("signed-in"===d.kind){R(d.user),B("Sign out failed — try again."),S();return}if("signed-out"===d.kind){N({kind:"signed-out"}),Q(),g("idle"),B(null);return}if("auth-unavailable"===d.kind){N({kind:"auth-unavailable",detail:d.detail}),g("idle");return}N({kind:"restore-failed",detail:"error"===d.kind?d.detail:null}),g("idle")}};return(0,d.jsx)(q.Provider,{value:{session:b,phase:f,hubRunId:l,machines:r,lastReceivedLocalMs:u,lastEventId:w,lastEventKind:y,notice:A,history:C,login:Y,signOut:Z,retryConnection:()=>{if(E.current&&!M.current){if("signed-in"===J.current.kind){I.current=0,U();return}F.current+=1,X(F.current)}},dismissNotice:()=>B(null)},children:a})}},59645:(a,b,c)=>{"use strict";function d(){return[{type:"image/svg+xml",sizes:"any",url:"/icon.svg?3b3fa3229e2d0d7a"}]}c.r(b),c.d(b,{default:()=>d})},61135:()=>{},65223:(a,b,c)=>{"use strict";c.d(b,{ThemeProvider:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call ThemeProvider() from the server but ThemeProvider is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/triet/Project/rigscope/src/components/theme-provider.tsx","ThemeProvider")},65666:(a,b,c)=>{"use strict";c.d(b,{K:()=>h,g:()=>f});var d=c(22127),e=c(93224);function f(a,b){let c=new Map;for(let f of b.machines){let g=f.metrics;if(!g)continue;let h=`${b.hubRunId}\0${g.collectorId}\0${g.runId}\0${g.sequence}`,i=a.get(f.machineId)??[],j=i.at(-1);if(j?.sampleId===h){c.set(f.machineId,i);continue}let k=h.slice(0,h.lastIndexOf("\0")+1),l=j?.sampleId.startsWith(k)?i:[],m=g.payload.memory;c.set(f.machineId,[...l,{sampleId:h,receivedAtLocal:Date.parse(g.receivedAt),cpuPercent:"ok"===g.payload.cpu.status?g.payload.cpu.usagePercent:null,memoryPercent:"ok"===m.status&&m.totalBytes>0?100*m.usedBytes/m.totalBytes:null,gapThresholdMs:(0,e.Cj)(f.expectedIntervalMs)}].slice(-d.yY))}return c}function g(a){return"number"==typeof a.gapThresholdMs&&Number.isFinite(a.gapThresholdMs)&&a.gapThresholdMs>0?a.gapThresholdMs:d.vz}function h(a,b=600,c=140){let e;if(a.length<2)return null;let f=a[0].receivedAtLocal,i=Math.max(1e3,a.at(-1).receivedAtLocal-f),j="";for(let h of a){if(null===h.cpuPercent){e=void 0;continue}let a=4+(h.receivedAtLocal-f)/i*(b-8),k=c-4-h.cpuPercent/100*(c-8),l=e?Math.min(g(e),g(h)):d.vz,m=e&&h.receivedAtLocal>=e.receivedAtLocal&&h.receivedAtLocal-e.receivedAtLocal<l;j+=`${m?"L":"M"}${a.toFixed(2)},${k.toFixed(2)} `,e=h}return j.trim()||null}},76537:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>h,metadata:()=>g});var d=c(5735),e=c(65223),f=c(89604);c(61135);let g={title:{template:"%s — Rigscope",default:"Rigscope"},description:"Self-hosted remote system monitor — a live fleet of collectors behind one authenticated hub."};function h({children:a}){return(0,d.jsx)("html",{lang:"en",suppressHydrationWarning:!0,children:(0,d.jsx)("body",{children:(0,d.jsx)(e.ThemeProvider,{attribute:"class",defaultTheme:"dark",enableSystem:!0,children:(0,d.jsx)(f.LiveProvider,{children:a})})})})}},78335:()=>{},86737:(a,b,c)=>{Promise.resolve().then(c.bind(c,4833)),Promise.resolve().then(c.bind(c,58910))},89604:(a,b,c)=>{"use strict";c.d(b,{LiveProvider:()=>e});var d=c(77943);(0,d.registerClientReference)(function(){throw Error("Attempted to call useLive() from the server but useLive is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/triet/Project/rigscope/src/live/live-provider.tsx","useLive");let e=(0,d.registerClientReference)(function(){throw Error("Attempted to call LiveProvider() from the server but LiveProvider is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/triet/Project/rigscope/src/live/live-provider.tsx","LiveProvider")},93224:(a,b,c)=>{"use strict";c.d(b,{$:()=>f,A4:()=>k,Cj:()=>e,F2:()=>n,L_:()=>m,fv:()=>l,l9:()=>i,nV:()=>j,vj:()=>g,z3:()=>h});var d=c(22127);function e(a){return null==a||"number"!=typeof a||!Number.isFinite(a)||a<=0?d.vz:Math.max(d.vz,3*a)}function f(a){if(null==a||!Number.isFinite(a)||a<0)return"—";if(a<6e4){let b=a/1e3;return Number.isInteger(b)?`${b} s`:`${b.toFixed(1)} s`}if(a<36e5){let b=a/6e4;return Number.isInteger(b)?`${b} min`:`${b.toFixed(1)} min`}let b=a/36e5;return Number.isInteger(b)?`${b} h`:`${b.toFixed(1)} h`}function g(a,b,c=e(a.expectedIntervalMs)){return function(a,b,c=d.vz){if(null===a)return"unknown";let e=Date.parse(a);return Number.isFinite(e)?b-e>=c?"stale":"live":"unknown"}(a.lastReceivedAt,b,c)}function h(a){if(null==a||!Number.isFinite(a)||a<0)return"—";let b=["B","KiB","MiB","GiB","TiB"],c=a,d=0;for(;c>=1024&&d<b.length-1;)c/=1024,d+=1;return 0===d?`${Math.round(c)} B`:`${c.toFixed(1)} ${b[d]}`}function i(a){return null!=a&&Number.isFinite(a)?`${a.toFixed(1)}%`:"—"}function j(a){if(null===a||!Number.isFinite(a))return"—";let b=Math.round(Math.max(0,a)/1e3);if(b<60)return`${b}s ago`;let c=Math.floor(b/60);if(c<60){let a=b%60;return 0===a?`${c}m ago`:`${c}m ${a}s ago`}let d=Math.floor(c/60);if(d<24){let a=c%60;return 0===a?`${d}h ago`:`${d}h ${a}m ago`}let e=Math.floor(d/24),f=d%24;return 0===f?`${e}d ago`:`${e}d ${f}h ago`}function k(a,b){if(null===a)return null;let c=Date.parse(a);return Number.isFinite(c)?b-c:null}function l(a){switch(a){case"ok":return"Live";case"degraded":return"Degraded";case"stale":return"Stale";case"disconnected":return"Disconnected";case"unseen":return"No sample yet"}}function m(a,b=d.mq){let c=a.metrics;if(!c)return{kind:"unknown"};let e=Date.parse(c.capturedAt),f=Date.parse(c.receivedAt);if(!Number.isFinite(e)||!Number.isFinite(f))return{kind:"unknown"};let g=e-f;return g>b?{kind:"ahead",skewMs:g}:g<-b?{kind:"behind",skewMs:-g}:{kind:"none"}}function n(a,b,c=e(a.expectedIntervalMs)){return{freshness:g(a,b,c),attention:function(a,b,c=e(a.expectedIntervalMs)){var d;let f=g(a,b,c);return a.metrics&&"unknown"!==f?"stale"===f?"stale":(d=a.metrics)&&("unavailable"===d.payload.cpu.status||"unavailable"===d.payload.memory.status)?"degraded":a.connected?"ok":"disconnected":"unseen"}(a,b,c),connection:a.connected?"connected":"disconnected",skew:m(a),thresholdMs:c}}},96487:()=>{}};
|