rigscope 0.0.0-stage → 0.1.1

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.
Files changed (224) hide show
  1. package/.next/BUILD_ID +1 -0
  2. package/.next/app-path-routes-manifest.json +13 -0
  3. package/.next/build-manifest.json +20 -0
  4. package/.next/export-marker.json +6 -0
  5. package/.next/images-manifest.json +68 -0
  6. package/.next/next-minimal-server.js.nft.json +1 -0
  7. package/.next/next-server.js.nft.json +1 -0
  8. package/.next/package.json +1 -0
  9. package/.next/prerender-manifest.json +297 -0
  10. package/.next/react-loadable-manifest.json +1 -0
  11. package/.next/required-server-files.json +369 -0
  12. package/.next/routes-manifest.json +114 -0
  13. package/.next/server/app/_global-error/page.js +31 -0
  14. package/.next/server/app/_global-error/page.js.nft.json +1 -0
  15. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -0
  16. package/.next/server/app/_global-error.html +1 -0
  17. package/.next/server/app/_global-error.meta +35 -0
  18. package/.next/server/app/_global-error.rsc +18 -0
  19. package/.next/server/app/_global-error.segments/_full.segment.rsc +18 -0
  20. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +24 -0
  21. package/.next/server/app/_global-error.segments/_tree.segment.rsc +3 -0
  22. package/.next/server/app/_not-found/page.js +1 -0
  23. package/.next/server/app/_not-found/page.js.nft.json +1 -0
  24. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -0
  25. package/.next/server/app/_not-found.html +1 -0
  26. package/.next/server/app/_not-found.meta +35 -0
  27. package/.next/server/app/_not-found.rsc +24 -0
  28. package/.next/server/app/_not-found.segments/_full.segment.rsc +24 -0
  29. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +30 -0
  30. package/.next/server/app/_not-found.segments/_tree.segment.rsc +4 -0
  31. package/.next/server/app/administration/page.js +1 -0
  32. package/.next/server/app/administration/page.js.nft.json +1 -0
  33. package/.next/server/app/administration/page_client-reference-manifest.js +1 -0
  34. package/.next/server/app/administration.html +1 -0
  35. package/.next/server/app/administration.meta +34 -0
  36. package/.next/server/app/administration.rsc +29 -0
  37. package/.next/server/app/administration.segments/_full.segment.rsc +29 -0
  38. package/.next/server/app/administration.segments/_tree.segment.rsc +4 -0
  39. package/.next/server/app/administration.segments/administration/__PAGE__.segment.rsc +35 -0
  40. package/.next/server/app/alerts/page.js +1 -0
  41. package/.next/server/app/alerts/page.js.nft.json +1 -0
  42. package/.next/server/app/alerts/page_client-reference-manifest.js +1 -0
  43. package/.next/server/app/alerts.html +1 -0
  44. package/.next/server/app/alerts.meta +34 -0
  45. package/.next/server/app/alerts.rsc +28 -0
  46. package/.next/server/app/alerts.segments/_full.segment.rsc +28 -0
  47. package/.next/server/app/alerts.segments/_tree.segment.rsc +4 -0
  48. package/.next/server/app/alerts.segments/alerts/__PAGE__.segment.rsc +34 -0
  49. package/.next/server/app/connections/page.js +1 -0
  50. package/.next/server/app/connections/page.js.nft.json +1 -0
  51. package/.next/server/app/connections/page_client-reference-manifest.js +1 -0
  52. package/.next/server/app/connections.html +1 -0
  53. package/.next/server/app/connections.meta +34 -0
  54. package/.next/server/app/connections.rsc +29 -0
  55. package/.next/server/app/connections.segments/_full.segment.rsc +29 -0
  56. package/.next/server/app/connections.segments/_tree.segment.rsc +4 -0
  57. package/.next/server/app/connections.segments/connections/__PAGE__.segment.rsc +35 -0
  58. package/.next/server/app/history/page.js +2 -0
  59. package/.next/server/app/history/page.js.nft.json +1 -0
  60. package/.next/server/app/history/page_client-reference-manifest.js +1 -0
  61. package/.next/server/app/history.html +1 -0
  62. package/.next/server/app/history.meta +34 -0
  63. package/.next/server/app/history.rsc +33 -0
  64. package/.next/server/app/history.segments/_full.segment.rsc +33 -0
  65. package/.next/server/app/history.segments/_tree.segment.rsc +4 -0
  66. package/.next/server/app/history.segments/history/__PAGE__.segment.rsc +37 -0
  67. package/.next/server/app/icon.svg/route.js +1 -0
  68. package/.next/server/app/icon.svg/route.js.nft.json +1 -0
  69. package/.next/server/app/icon.svg.body +1 -0
  70. package/.next/server/app/icon.svg.meta +1 -0
  71. package/.next/server/app/index.html +1 -0
  72. package/.next/server/app/index.meta +29 -0
  73. package/.next/server/app/index.rsc +26 -0
  74. package/.next/server/app/index.segments/__PAGE__.segment.rsc +31 -0
  75. package/.next/server/app/index.segments/_full.segment.rsc +26 -0
  76. package/.next/server/app/index.segments/_tree.segment.rsc +3 -0
  77. package/.next/server/app/login/page.js +1 -0
  78. package/.next/server/app/login/page.js.nft.json +1 -0
  79. package/.next/server/app/login/page_client-reference-manifest.js +1 -0
  80. package/.next/server/app/login.html +1 -0
  81. package/.next/server/app/login.meta +34 -0
  82. package/.next/server/app/login.rsc +26 -0
  83. package/.next/server/app/login.segments/_full.segment.rsc +26 -0
  84. package/.next/server/app/login.segments/_tree.segment.rsc +4 -0
  85. package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +32 -0
  86. package/.next/server/app/machines/[machineId]/page.js +1 -0
  87. package/.next/server/app/machines/[machineId]/page.js.nft.json +1 -0
  88. package/.next/server/app/machines/[machineId]/page_client-reference-manifest.js +1 -0
  89. package/.next/server/app/page.js +1 -0
  90. package/.next/server/app/page.js.nft.json +1 -0
  91. package/.next/server/app/page_client-reference-manifest.js +1 -0
  92. package/.next/server/app/processes/page.js +2 -0
  93. package/.next/server/app/processes/page.js.nft.json +1 -0
  94. package/.next/server/app/processes/page_client-reference-manifest.js +1 -0
  95. package/.next/server/app/processes.html +1 -0
  96. package/.next/server/app/processes.meta +34 -0
  97. package/.next/server/app/processes.rsc +30 -0
  98. package/.next/server/app/processes.segments/_full.segment.rsc +30 -0
  99. package/.next/server/app/processes.segments/_tree.segment.rsc +4 -0
  100. package/.next/server/app/processes.segments/processes/__PAGE__.segment.rsc +36 -0
  101. package/.next/server/app-paths-manifest.json +13 -0
  102. package/.next/server/chunks/161.js +1 -0
  103. package/.next/server/chunks/168.js +1 -0
  104. package/.next/server/chunks/266.js +68 -0
  105. package/.next/server/chunks/430.js +116 -0
  106. package/.next/server/chunks/721.js +1 -0
  107. package/.next/server/chunks/751.js +1 -0
  108. package/.next/server/chunks/877.js +1 -0
  109. package/.next/server/chunks/894.js +2 -0
  110. package/.next/server/functions-config-manifest.json +4 -0
  111. package/.next/server/interception-route-rewrite-manifest.js +1 -0
  112. package/.next/server/middleware-build-manifest.js +1 -0
  113. package/.next/server/middleware-manifest.json +6 -0
  114. package/.next/server/middleware-react-loadable-manifest.js +1 -0
  115. package/.next/server/next-font-manifest.js +1 -0
  116. package/.next/server/next-font-manifest.json +1 -0
  117. package/.next/server/pages/404.html +1 -0
  118. package/.next/server/pages/500.html +1 -0
  119. package/.next/server/pages-manifest.json +4 -0
  120. package/.next/server/prefetch-hints.json +123 -0
  121. package/.next/server/preview-props.json +5 -0
  122. package/.next/server/server-reference-manifest.js +1 -0
  123. package/.next/server/server-reference-manifest.json +1 -0
  124. package/.next/server/webpack-runtime.js +1 -0
  125. package/.next/static/NE6PGEiJxUnKRceuzUWPc/_buildManifest.js +1 -0
  126. package/.next/static/NE6PGEiJxUnKRceuzUWPc/_ssgManifest.js +1 -0
  127. package/.next/static/chunks/103-c47318242b24e9ac.js +1 -0
  128. package/.next/static/chunks/157-0d36ebf66af048ac.js +1 -0
  129. package/.next/static/chunks/227-417939c480f50747.js +1 -0
  130. package/.next/static/chunks/408-dc6158e0bb450ef6.js +1 -0
  131. package/.next/static/chunks/4bd1b696-c7408084347438ae.js +1 -0
  132. package/.next/static/chunks/794-ceeb732a1a81bc27.js +52 -0
  133. package/.next/static/chunks/939-2600d7c8e583d5ef.js +1 -0
  134. package/.next/static/chunks/app/_global-error/page-aba28f88d5781771.js +1 -0
  135. package/.next/static/chunks/app/_not-found/page-a2a510233e4836e2.js +1 -0
  136. package/.next/static/chunks/app/administration/page-4b16b19bb6a39c36.js +1 -0
  137. package/.next/static/chunks/app/alerts/page-fe0e877778c60af8.js +1 -0
  138. package/.next/static/chunks/app/connections/page-99cd54d6929b3f1f.js +1 -0
  139. package/.next/static/chunks/app/history/page-1475454737279ee0.js +3 -0
  140. package/.next/static/chunks/app/layout-4feff677c4071745.js +1 -0
  141. package/.next/static/chunks/app/login/page-c57e12dbe5146737.js +1 -0
  142. package/.next/static/chunks/app/machines/[machineId]/page-916ee73de5eb067d.js +1 -0
  143. package/.next/static/chunks/app/page-1ae9fc94c897785b.js +1 -0
  144. package/.next/static/chunks/app/processes/page-e471ed23a1d5632f.js +3 -0
  145. package/.next/static/chunks/framework-ea4f97ca039bd777.js +1 -0
  146. package/.next/static/chunks/main-a458d32948147b84.js +5 -0
  147. package/.next/static/chunks/main-app-f92328c8950d2e53.js +1 -0
  148. package/.next/static/chunks/next/dist/client/components/builtin/app-error-aba28f88d5781771.js +1 -0
  149. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-aba28f88d5781771.js +1 -0
  150. package/.next/static/chunks/next/dist/client/components/builtin/global-error-43cbaa3aa1576eb4.js +1 -0
  151. package/.next/static/chunks/next/dist/client/components/builtin/not-found-aba28f88d5781771.js +1 -0
  152. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-aba28f88d5781771.js +1 -0
  153. package/.next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
  154. package/.next/static/chunks/webpack-9ca43f4ce1bb8938.js +1 -0
  155. package/.next/static/css/e45c0c7ef5ba0336.css +1 -0
  156. package/ARCHITECTURE.md +279 -0
  157. package/CHANGELOG.md +37 -0
  158. package/DESIGN.md +299 -0
  159. package/LICENSE +21 -0
  160. package/README.md +74 -2
  161. package/SECURITY.md +12 -0
  162. package/THIRD_PARTY_NOTICES.md +8847 -0
  163. package/bin/rigscope.cjs +6 -0
  164. package/dist/cli.cjs +9075 -0
  165. package/dist/collector.cjs +5679 -0
  166. package/dist/hub.cjs +8364 -0
  167. package/dist/ops.cjs +4976 -0
  168. package/dist/system.cjs +4333 -0
  169. package/docs/bottlenecks.md +62 -0
  170. package/docs/configuration.md +85 -0
  171. package/docs/development.md +46 -0
  172. package/docs/exports.md +39 -0
  173. package/docs/installation.md +306 -0
  174. package/docs/monitoring.md +112 -0
  175. package/docs/operations.md +550 -0
  176. package/docs/releasing.md +154 -0
  177. package/docs/scale-acceptance.json +412 -0
  178. package/docs/scale-validation.json +1898 -0
  179. package/docs/scale-validation.md +294 -0
  180. package/docs/stress-2026-11-04/180301-probe-m100-u1-s1-20000ms.json +412 -0
  181. package/docs/stress-2026-11-04/180335-probe-m200-u1-s1-20000ms.json +412 -0
  182. package/docs/stress-2026-11-04/180409-probe-m400-u1-s1-20000ms.json +412 -0
  183. package/docs/stress-2026-11-04/180443-probe-m800-u1-s1-20000ms.json +412 -0
  184. package/docs/stress-2026-11-04/180518-probe-m600-u1-s1-20000ms.json +412 -0
  185. package/docs/stress-2026-11-04/180553-probe-m500-u1-s1-20000ms.json +412 -0
  186. package/docs/stress-2026-11-04/180628-probe-m550-u1-s1-20000ms.json +412 -0
  187. package/docs/stress-2026-11-04/180716-probe-m800-u1-s0-20000ms.json +415 -0
  188. package/docs/stress-2026-11-04/180751-probe-m1600-u1-s0-20000ms.json +415 -0
  189. package/docs/stress-2026-11-04/180828-probe-m3200-u1-s0-20000ms.json +416 -0
  190. package/docs/stress-2026-11-04/180941-probe-m2400-u1-s0-20000ms.json +416 -0
  191. package/docs/stress-2026-11-04/181031-probe-m2000-u1-s0-20000ms.json +416 -0
  192. package/docs/stress-2026-11-04/181114-probe-m1800-u1-s0-20000ms.json +416 -0
  193. package/docs/stress-2026-11-04/181203-probe-m100-u64-s64-20000ms.json +418 -0
  194. package/docs/stress-2026-11-04/181304-probe-m200-u64-s64-20000ms.json +418 -0
  195. package/docs/stress-2026-11-04/181405-probe-m400-u64-s64-20000ms.json +418 -0
  196. package/docs/stress-2026-11-04/181507-probe-m500-u64-s64-20000ms.json +418 -0
  197. package/docs/stress-2026-11-04/181609-probe-m450-u64-s64-20000ms.json +418 -0
  198. package/docs/stress-2026-11-04/181845-probe-m2-u2-s2-3000ms.json +419 -0
  199. package/docs/stress-2026-11-04/181931-probe-m500-u64-s64-30000ms.json +420 -0
  200. package/docs/stress-2026-11-04/182108-probe-m1800-u1-s0-120000ms.json +418 -0
  201. package/docs/stress-2026-11-04/182354-probe-m1200-u1-s0-120000ms.json +418 -0
  202. package/docs/stress-2026-11-04/182625-probe-m900-u1-s0-120000ms.json +418 -0
  203. package/docs/stress-2026-11-04/182847-probe-m1050-u1-s0-120000ms.json +418 -0
  204. package/docs/stress-2026-11-04/183112-probe-m1125-u1-s0-120000ms.json +418 -0
  205. package/docs/stress-2026-11-04/193608-probe-m500-u64-s64-120000ms.json +420 -0
  206. package/docs/stress-2026-11-04/193909-probe-m529-u1-s1-15000ms.json +420 -0
  207. package/docs/stress-2026-11-04/193940-probe-m530-u1-s1-15000ms.json +420 -0
  208. package/docs/stress-2026-11-04/194011-probe-m100-u1-s65-10000ms.json +421 -0
  209. package/docs/stress-2026-11-04/README.md +205 -0
  210. package/docs/stress-2026-11-04/index.jsonl +29 -0
  211. package/docs/stress-2026-11-04/manifest.json +13 -0
  212. package/docs/stress-2026-11-04/results.html +22 -0
  213. package/docs/system-installation.md +195 -0
  214. package/next.config.js +38 -0
  215. package/package.json +117 -4
  216. package/packaging/README.md +5 -0
  217. package/packaging/collector.env.example +24 -0
  218. package/packaging/hub.env.example +31 -0
  219. package/packaging/system/90-rigscope-rapl.rules +7 -0
  220. package/packaging/system/README.md +5 -0
  221. package/packaging/system/rigscope-collector.service.example +53 -0
  222. package/packaging/system/rigscope-hub.service.example +50 -0
  223. package/packaging/system/rigscope-rapl.sysusers +5 -0
  224. package/packaging/system/rigscope.sysusers +7 -0
@@ -0,0 +1 @@
1
+ "use strict";exports.id=721,exports.ids=[721],exports.modules={2116:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0});var d={default:function(){return p},useLinkStatus:function(){return r}};for(var e in d)Object.defineProperty(b,e,{enumerable:!0,get:d[e]});let f=c(24814),g=c(48249),h=f._(c(67484)),i=c(79925),j=c(30836),k=c(57272),l=c(30167),m=c(75729);c(52204);let n=c(78756);c(52836);let o=c(10881);function p(a){var b;let c,d,e,[f,p]=(0,h.useOptimistic)(n.IDLE_LINK_STATUS),r=(0,h.useRef)(null),{href:s,as:t,children:u,prefetch:v=null,passHref:w,replace:x,shallow:y,scroll:z,onClick:A,onMouseEnter:B,onTouchStart:C,legacyBehavior:D=!1,onNavigate:E,transitionTypes:F,ref:G,unstable_dynamicOnHover:H,...I}=a;c=u,D&&("string"==typeof c||"number"==typeof c)&&(c=(0,g.jsx)("a",{children:c}));let J=h.default.useContext(j.AppRouterContext),K=!1!==v,L=!1===v?"none":!0===v?"full":"auto",M="none"!==L?"auto"===L?o.FetchStrategy.PPR:o.FetchStrategy.Full:o.FetchStrategy.PPR,N="string"==typeof(b=t||s)?b:(0,i.formatUrl)(b);if(D){if(c?.$$typeof===Symbol.for("react.lazy"))throw Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag.");d=h.default.Children.only(c)}let O=D?d&&"object"==typeof d&&d.ref:G,P,Q=h.default.useCallback(a=>(null!==J&&(r.current=(0,n.mountLinkInstance)(a,N,J,M,K,p,P)),()=>{r.current&&((0,n.unmountLinkForCurrentNavigation)(r.current),r.current=null),(0,n.unmountPrefetchableInstance)(a)}),[K,N,J,M,p,P]),R={ref:(0,k.useMergedRef)(Q,O),onClick(a){D||"function"!=typeof A||A(a),D&&d.props&&"function"==typeof d.props.onClick&&d.props.onClick(a),!J||a.defaultPrevented||function(a="none"){}(L)},onMouseEnter(a){D||"function"!=typeof B||B(a),D&&d.props&&"function"==typeof d.props.onMouseEnter&&d.props.onMouseEnter(a),J&&K&&(0,n.onNavigationIntent)(a.currentTarget,!0===H)},onTouchStart:function(a){D||"function"!=typeof C||C(a),D&&d.props&&"function"==typeof d.props.onTouchStart&&d.props.onTouchStart(a),J&&K&&(0,n.onNavigationIntent)(a.currentTarget,!0===H)}};return(0,l.isAbsoluteUrl)(N)?R.href=N:D&&!w&&("a"!==d.type||"href"in d.props)||(R.href=(0,m.addBasePath)(N)),e=D?h.default.cloneElement(d,R):(0,g.jsx)("a",{...I,...R,children:c}),(0,g.jsx)(q.Provider,{value:f,children:e})}let q=(0,h.createContext)(n.IDLE_LINK_STATUS),r=()=>(0,h.useContext)(q);("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},8696:(a,b,c)=>{c.d(b,{D:()=>j,N:()=>k});var d=c(67484),e=(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){}},f=["light","dark"],g="(prefers-color-scheme: dark)",h=d.createContext(void 0),i={setTheme:a=>{},themes:[]},j=()=>{var a;return null!=(a=d.useContext(h))?a:i},k=a=>d.useContext(h)?d.createElement(d.Fragment,null,a.children):d.createElement(m,{...a}),l=["light","dark"],m=({forcedTheme:a,disableTransitionOnChange:b=!1,enableSystem:c=!0,enableColorScheme:e=!0,storageKey:i="theme",themes:j=l,defaultTheme:k=c?"system":"light",attribute:m="data-theme",value:r,children:s,nonce:t,scriptProps:u})=>{let[v,w]=d.useState(()=>o(i,k)),[x,y]=d.useState(()=>"system"===v?q():v),z=r?Object.values(r):j,A=d.useCallback(a=>{let d=a;if(!d)return;"system"===a&&c&&(d=q());let g=r?r[d]:d,h=b?p(t):null,i=document.documentElement,j=a=>{"class"===a?(i.classList.remove(...z),g&&i.classList.add(g)):a.startsWith("data-")&&(g?i.setAttribute(a,g):i.removeAttribute(a))};if(Array.isArray(m)?m.forEach(j):j(m),e){let a=f.includes(k)?k:null,b=f.includes(d)?d:a;i.style.colorScheme=b}null==h||h()},[t]),B=d.useCallback(a=>{let b="function"==typeof a?a(v):a;w(b);try{localStorage.setItem(i,b)}catch(a){}},[v]),C=d.useCallback(b=>{y(q(b)),"system"===v&&c&&!a&&A("system")},[v,a]);d.useEffect(()=>{let a=window.matchMedia(g);return a.addListener(C),C(a),()=>a.removeListener(C)},[C]),d.useEffect(()=>{let a=a=>{a.key===i&&(a.newValue?w(a.newValue):B(k))};return window.addEventListener("storage",a),()=>window.removeEventListener("storage",a)},[B]),d.useEffect(()=>{A(null!=a?a:v)},[a,v]);let D=d.useMemo(()=>({theme:v,setTheme:B,forcedTheme:a,resolvedTheme:"system"===v?x:v,themes:c?[...j,"system"]:j,systemTheme:c?x:void 0}),[v,B,a,x,c,j]);return d.createElement(h.Provider,{value:D},d.createElement(n,{forcedTheme:a,storageKey:i,attribute:m,enableSystem:c,enableColorScheme:e,defaultTheme:k,value:r,themes:j,nonce:t,scriptProps:u}),s)},n=d.memo(({forcedTheme:a,storageKey:b,attribute:c,enableSystem:f,enableColorScheme:g,defaultTheme:h,value:i,themes:j,nonce:k,scriptProps:l})=>{let m=JSON.stringify([c,b,h,a,j,i,f,g]).slice(1,-1);return d.createElement("script",{...l,suppressHydrationWarning:!0,nonce:k,dangerouslySetInnerHTML:{__html:`(${e.toString()})(${m})`}})}),o=(a,b)=>{},p=a=>{let b=document.createElement("style");return a&&b.setAttribute("nonce",a),b.appendChild(document.createTextNode("*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}")),document.head.appendChild(b),()=>{window.getComputedStyle(document.body),setTimeout(()=>{document.head.removeChild(b)},1)}},q=a=>(a||(a=window.matchMedia(g)),a.matches?"dark":"light")},12421:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(65366).A)("TriangleAlert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]])},19099:(a,b,c)=>{var d=c(54839);c.o(d,"usePathname")&&c.d(b,{usePathname:function(){return d.usePathname}}),c.o(d,"useRouter")&&c.d(b,{useRouter:function(){return d.useRouter}}),c.o(d,"useSearchParams")&&c.d(b,{useSearchParams:function(){return d.useSearchParams}})},27346:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(65366).A)("Sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]])},31742:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(65366).A)("RefreshCw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]])},44999:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(65366).A)("Moon",[["path",{d:"M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z",key:"a7tn18"}]])},49187:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(65366).A)("WifiOff",[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}],["path",{d:"M5 12.859a10 10 0 0 1 5.17-2.69",key:"1dl1wf"}],["path",{d:"M19 12.859a10 10 0 0 0-2.007-1.523",key:"4k23kn"}],["path",{d:"M2 8.82a15 15 0 0 1 4.177-2.643",key:"1grhjp"}],["path",{d:"M22 8.82a15 15 0 0 0-11.288-3.764",key:"z3jwby"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]])},50132:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(65366).A)("UserRound",[["circle",{cx:"12",cy:"8",r:"5",key:"1hypcn"}],["path",{d:"M20 21a8 8 0 0 0-16 0",key:"rfgkzh"}]])},51589:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(65366).A)("LayoutDashboard",[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]])},51872:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(65366).A)("History",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]])},52836:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"isLocalURL",{enumerable:!0,get:function(){return f}});let d=c(30167),e=c(71742);function f(a){if(!(0,d.isAbsoluteUrl)(a))return!0;try{let b=(0,d.getLocationOrigin)(),c=new URL(a,b);return c.origin===b&&(0,e.hasBasePath)(c.pathname)}catch(a){return!1}}},55091:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return f}});let d=c(5735),e=c(22675);function f(){return(0,d.jsx)(e.HTTPAccessErrorFallback,{status:404,message:"This page could not be found."})}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},57272:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"useMergedRef",{enumerable:!0,get:function(){return e}});let d=c(67484);function e(a,b){let c=(0,d.useRef)(null),e=(0,d.useRef)(null);return(0,d.useCallback)(d=>{if(null===d){let a=c.current;a&&(c.current=null,a());let b=e.current;b&&(e.current=null,b())}else a&&(c.current=f(a,d)),b&&(e.current=f(b,d))},[a,b])}function f(a,b){if("function"!=typeof a)return a.current=b,()=>{a.current=null};{let c=a(b);return"function"==typeof c?c:()=>a(null)}}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},65366:(a,b,c)=>{c.d(b,{A:()=>h});var d=c(67484);let e=(...a)=>a.filter((a,b,c)=>!!a&&""!==a.trim()&&c.indexOf(a)===b).join(" ").trim();var f={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let g=(0,d.forwardRef)(({color:a="currentColor",size:b=24,strokeWidth:c=2,absoluteStrokeWidth:g,className:h="",children:i,iconNode:j,...k},l)=>(0,d.createElement)("svg",{ref:l,...f,width:b,height:b,stroke:a,strokeWidth:g?24*Number(c)/Number(b):c,className:e("lucide",h),...k},[...j.map(([a,b])=>(0,d.createElement)(a,b)),...Array.isArray(i)?i:[i]])),h=(a,b)=>{let c=(0,d.forwardRef)(({className:c,...f},h)=>(0,d.createElement)(g,{ref:h,iconNode:b,className:e(`lucide-${a.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,c),...f}));return c.displayName=`${a}`,c}},71e3:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"addPathPrefix",{enumerable:!0,get:function(){return e}});let d=c(10571);function e(a,b){if(!a.startsWith("/")||!b)return a;let{pathname:c,query:e,hash:f}=(0,d.parsePath)(a);return`${b}${c}${e}${f}`}},71327:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(65366).A)("Settings",[["path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z",key:"1qme2f"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]])},75729:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"addBasePath",{enumerable:!0,get:function(){return f}});let d=c(71e3),e=c(34956);function f(a,b){return(0,e.normalizePathTrailingSlash)((0,d.addPathPrefix)(a,""))}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},78607:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(65366).A)("Bell",[["path",{d:"M10.268 21a2 2 0 0 0 3.464 0",key:"vwvbt9"}],["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",key:"11g9vi"}]])},79925:(a,b,c)=>{Object.defineProperty(b,"__esModule",{value:!0});var d={formatUrl:function(){return h},formatWithValidation:function(){return j},urlObjectKeys:function(){return i}};for(var e in d)Object.defineProperty(b,e,{enumerable:!0,get:d[e]});let f=c(24814)._(c(90485)),g=/https?|ftp|gopher|file/;function h(a){let{auth:b,hostname:c}=a,d=a.protocol||"",e=a.pathname||"",h=a.hash||"",i=a.query||"",j=!1;b=b?encodeURIComponent(b).replace(/%3A/i,":")+"@":"",a.host?j=b+a.host:c&&(j=b+(~c.indexOf(":")?`[${c}]`:c),a.port&&(j+=":"+a.port)),i&&"object"==typeof i&&(i=String(f.urlQueryToSearchParams(i)));let k=a.search||i&&`?${i}`||"";return d&&!d.endsWith(":")&&(d+=":"),a.slashes||(!d||g.test(d))&&!1!==j?(j="//"+(j||""),e&&"/"!==e[0]&&(e="/"+e)):j||(j=""),h&&"#"!==h[0]&&(h="#"+h),k&&"?"!==k[0]&&(k="?"+k),e=e.replace(/[?#]/g,encodeURIComponent),k=k.replace("#","%23"),`${d}${j}${e}${k}${h}`}let i=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function j(a){return h(a)}},82437:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(65366).A)("Cable",[["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",key:"10bnsj"}],["path",{d:"M19 15V6.5a1 1 0 0 0-7 0v11a1 1 0 0 1-7 0V9",key:"1eqmu1"}],["path",{d:"M21 21v-2h-4",key:"14zm7j"}],["path",{d:"M3 5h4V3",key:"z442eg"}],["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",key:"ebdjd7"}]])},89313:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(65366).A)("Server",[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]])},90162:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(65366).A)("List",[["path",{d:"M3 12h.01",key:"nlz23k"}],["path",{d:"M3 18h.01",key:"1tta3j"}],["path",{d:"M3 6h.01",key:"1rqtza"}],["path",{d:"M8 12h13",key:"1za7za"}],["path",{d:"M8 18h13",key:"1lx6n3"}],["path",{d:"M8 6h13",key:"ik3vkj"}]])},93484:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(65366).A)("ShieldAlert",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"M12 8v4",key:"1got3b"}],["path",{d:"M12 16h.01",key:"1drbdi"}]])}};
@@ -0,0 +1 @@
1
+ "use strict";exports.id=751,exports.ids=[751],exports.modules={7867:(a,b,c)=>{c.d(b,{Sidebar:()=>v});var d=c(48249),e=c(2116),f=c.n(e),g=c(19099),h=c(78607),i=c(82437),j=c(51589),k=c(51872),l=c(90162),m=c(71327),n=c(89313),o=c(52464),p=c(56349),q=c(81232),r=c(58910);let s=[{href:"/alerts",label:"Alerts",icon:h.A},{href:"/connections",label:"Connections",icon:i.A}],t=[{view:"overview",label:"Overview",icon:j.A},{view:"history",label:"History",icon:k.A},{view:"processes",label:"Processes",icon:l.A}],u=a=>["flex min-h-9 min-w-0 items-center gap-3 rounded-md px-2 text-sm transition-colors md:px-3",a?"bg-selected font-medium text-foreground":"text-muted-foreground hover:bg-card-strong hover:text-foreground"].join(" ");function v({machineId:a,machineView:b}){let c=(0,g.usePathname)(),{session:e,machines:h}=(0,r.M)(),{machine:i,view:j,selectMachine:k}=(0,o.PY)(a,b),l="signed-in"===e.kind&&!0===e.user.admin?[...s,{href:"/administration",label:"Administration",icon:m.A}]:s;return(0,d.jsxs)("aside",{className:"flex w-14 shrink-0 flex-col border-r border-border bg-card md:w-56",children:[(0,d.jsxs)(f(),{href:"/","aria-label":"Rigscope",className:"flex h-14 shrink-0 items-center gap-2.5 border-b border-border px-3 md:px-5",children:[(0,d.jsx)(p.R,{className:"h-5 w-5 shrink-0 text-accent","aria-hidden":!0}),(0,d.jsx)("span",{className:"hidden text-sm font-semibold tracking-tight text-foreground md:inline",children:"Rigscope"})]}),(0,d.jsxs)("nav",{"aria-label":"Primary",className:"flex min-h-0 flex-1 flex-col overflow-y-auto p-2 md:p-3",children:[(0,d.jsxs)(f(),{href:"/","aria-current":"/"===c?"page":void 0,title:"Fleet",className:u("/"===c),children:[(0,d.jsx)(n.A,{className:"h-4 w-4 shrink-0","aria-hidden":!0}),(0,d.jsx)("span",{className:"hidden md:inline",children:"Fleet"})]}),i?(0,d.jsxs)("div",{className:"mb-4 mt-2 md:ms-3 md:border-s md:border-border md:ps-3",children:[(0,d.jsx)("label",{htmlFor:"sidebar-machine",className:"sr-only",children:"Machine"}),(0,d.jsx)("select",{id:"sidebar-machine",value:i.machineId,onChange:a=>k(a.target.value),className:"mb-1 hidden h-9 w-full min-w-0 rounded-md border border-border bg-background px-2 text-sm font-medium md:block",children:h.map(a=>(0,d.jsx)("option",{value:a.machineId,children:a.displayName||a.hostname||a.machineId},a.machineId))}),(0,d.jsx)("nav",{"aria-label":"Selected machine",className:"flex flex-col gap-1",children:t.map(({view:a,label:b,icon:c})=>(0,d.jsxs)(f(),{href:(0,o.Y2)(i.machineId,a),"aria-current":j===a?"page":void 0,title:`${i.displayName||i.hostname}: ${b}`,className:u(j===a),children:[(0,d.jsx)(c,{className:"h-4 w-4 shrink-0","aria-hidden":!0}),(0,d.jsx)("span",{className:"hidden md:inline",children:b})]},a))})]}):null,(0,d.jsx)("div",{className:"flex flex-col gap-1 border-t border-border pt-3",children:l.map(({href:a,label:b,icon:e})=>(0,d.jsxs)(f(),{href:a,"aria-current":c===a?"page":void 0,title:b,className:u(c===a),children:[(0,d.jsx)(e,{className:"h-4 w-4 shrink-0","aria-hidden":!0}),(0,d.jsx)("span",{className:"hidden md:inline",children:b})]},a))})]}),(0,d.jsx)("footer",{className:"hidden shrink-0 border-t border-border p-3 md:block",children:(0,d.jsx)(q.TK,{})})]})}},22091:(a,b,c)=>{c.d(b,{G:()=>h});var d=c(48249),e=c(40015),f=c(7867),g=c(76670);function h({title:a,headerRight:b,children:c,workspace:i=!1,machineId:j,machineView:k}){return(0,d.jsxs)("div",{className:"relative flex h-dvh overflow-hidden bg-background text-foreground",children:[(0,d.jsx)("a",{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"}),(0,d.jsx)(f.Sidebar,{machineId:j,machineView:k}),(0,d.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col",children:[(0,d.jsxs)("header",{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:[j&&k?(0,d.jsx)(e.MachineBreadcrumb,{machineId:j,title:a,view:k}):(0,d.jsx)("h1",{className:"truncate text-lg font-semibold tracking-tight",children:a}),(0,d.jsxs)("div",{className:"flex items-center gap-3",children:[b?(0,d.jsx)("div",{className:"flex min-w-0 items-center gap-3",children:b}):null,(0,d.jsx)(g.ThemeToggle,{})]})]}),(0,d.jsx)("main",{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 ${i?"flex flex-col overflow-y-hidden":"overflow-y-auto"}`,children:(0,d.jsx)("div",{className:i?"mx-auto flex h-full w-full min-h-0 min-w-0 max-w-[1500px] flex-1 flex-col":"mx-auto flex w-full min-w-0 max-w-[1500px] flex-col",children:c})})]})]})}},22338:(a,b,c)=>{c.d(b,{Z:()=>e,p:()=>f});var d=c(48249);function e({title:a,action:b,className:c,children:f}){return(0,d.jsxs)("section",{className:["flex min-w-0 flex-col rounded-xl border border-border bg-card p-5",c].filter(Boolean).join(" "),children:[(0,d.jsxs)("div",{className:"flex shrink-0 items-center justify-between gap-4",children:[(0,d.jsx)("h2",{className:"text-sm font-medium tracking-tight",children:a}),b?(0,d.jsx)("div",{className:"text-xs tabular-nums",children:b}):null]}),(0,d.jsx)("div",{className:"mt-4 flex min-h-0 flex-1 flex-col",children:f})]})}function f({icon:a,note:b,className:c}){return(0,d.jsxs)("div",{className:["flex flex-1 flex-col items-center justify-center gap-2.5 rounded-lg border border-dashed border-border px-6 py-10 text-center",c].filter(Boolean).join(" "),children:[(0,d.jsx)(a,{className:"h-5 w-5 text-muted-foreground","aria-hidden":!0}),(0,d.jsx)("p",{className:"text-sm text-muted-foreground",children:b})]})}},40015:(a,b,c)=>{c.d(b,{MachineBreadcrumb:()=>i});var d=c(48249),e=c(2116),f=c.n(e),g=c(58910),h=c(52464);function i({machineId:a,title:b,view:c}){let{machines:e}=(0,g.M)(),j=(0,h.FM)(),k=e.find(b=>b.machineId===a),l=k?.displayName||k?.hostname||"Machine";return(0,d.jsxs)("nav",{"aria-label":"Breadcrumb",className:"flex min-w-0 items-center gap-2 text-sm",children:[(0,d.jsx)(f(),{href:"/",className:"hidden text-muted-foreground hover:text-foreground sm:inline",children:"Fleet"}),(0,d.jsx)("span",{"aria-hidden":!0,className:"hidden text-muted-foreground sm:inline",children:"/"}),(0,d.jsx)(f(),{href:(0,h.Y2)(a,"overview"),className:"hidden max-w-48 truncate text-muted-foreground hover:text-foreground md:inline",children:l}),(0,d.jsx)("select",{"aria-label":"Machine",value:a,onChange:a=>j(a.target.value,c),className:"h-8 min-w-0 max-w-32 rounded-md border border-border bg-card px-1.5 text-sm md:hidden",children:e.map(a=>(0,d.jsx)("option",{value:a.machineId,children:a.displayName||a.hostname||a.machineId},a.machineId))}),(0,d.jsx)("span",{"aria-hidden":!0,className:"text-muted-foreground",children:"/"}),(0,d.jsx)("h1",{className:"truncate text-lg font-semibold tracking-tight",children:b})]})}},52464:(a,b,c)=>{c.d(b,{FM:()=>p,JG:()=>o,PY:()=>q,Y2:()=>h});var d=c(67484),e=c(19099),f=c(94054),g=c(58910);function h(a,b){let c=encodeURIComponent(a);return"overview"===b?`/machines/${c}`:`/${b}?machineId=${c}`}function i(a){let b=a.inventory?.capabilities?.processes;return void 0===b||"supported"===b.status}let j={overview:a=>a[0],history:a=>a[0],processes:a=>a.find(i)??a[0]};function k({view:a,requestedMachineId:b,rememberedMachineId:c,machines:d}){if(0===d.length)return{kind:"fleet-empty"};if(b){let a=d.find(a=>a.machineId===b);return a?{kind:"resolved",machine:a,via:"requested"}:{kind:"missing",requestedMachineId:b}}if(c){let a=d.find(a=>a.machineId===c);if(a)return{kind:"resolved",machine:a,via:"remembered"}}let e=j[a](d);return e?{kind:"resolved",machine:e,via:"fallback"}:{kind:"fleet-empty"}}let l=a=>"string"==typeof a?a:null;function m(){return(0,f.u)("machine.selected","",l,"session")}let n=new Set(["history"]);function o(a,b){let{session:c,machines:f}=(0,g.M)();(0,e.useRouter)(),(0,e.usePathname)();let h=(0,e.useSearchParams)(),[i,j]=m(),l="overview"===a?b??"":h.get("machineId")||null,o=(0,d.useMemo)(()=>k({view:a,requestedMachineId:l,rememberedMachineId:i,machines:f}),[a,l,i,f]),p="resolved"===o.kind?o.machine:void 0,q=p?.machineId??"",r="overview"===a?l??"":"processes"===a?p?.machineId??l??"":q;return n.has(a),{resolution:o,machine:p,machineId:q,navMachineId:r,requestedMachineId:l}}function p(){let a=(0,e.useRouter)(),[,b]=m();return(0,d.useCallback)((c,d)=>{b(c),a.push(h(c,d))},[b,a])}function q(a,b){let c=(0,e.usePathname)()||"/",{machines:d}=(0,g.M)(),[f]=m(),h=p(),i=b??(c.startsWith("/machines/")?"overview":"/history"===c?"history":"/processes"===c?"processes":null),j=k({view:i??"overview",requestedMachineId:d.some(b=>b.machineId===a)?a:null,rememberedMachineId:f,machines:d});return{view:i,machine:"resolved"===j.kind?j.machine:void 0,selectMachine:a=>h(a,i??"overview")}}},56349:(a,b,c)=>{c.d(b,{R:()=>e});var d=c(48249);function e(a){return(0,d.jsxs)("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",focusable:"false",...a,children:[(0,d.jsx)("path",{d:"M8 3H4v18h4M16 3h4v18h-4"}),(0,d.jsx)("path",{d:"m8 15 4-6 4 3M8 8h.01M16 17h.01"})]})}},75006:(a,b,c)=>{c.d(b,{B:()=>h});var d=c(48249),e=c(2116),f=c.n(e),g=c(58910);function h(){let{session:a,phase:b,signOut:c}=(0,g.M)();return"signed-in"===a.kind?(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:"hidden max-w-[12rem] truncate text-xs text-muted-foreground sm:inline",children:a.user.username}),(0,d.jsx)("button",{type:"button",onClick:()=>void c(),className:"rounded-md px-2.5 py-1.5 text-xs text-muted-foreground transition-colors hover:bg-card-strong hover:text-foreground",children:"Sign out"})]}):"restoring"===a.kind||"auth-unavailable"===a.kind?null:(0,d.jsx)("div",{className:"flex items-center gap-1",children:(0,d.jsx)(f(),{href:"/login",className:"rounded-md border border-border px-2.5 py-1.5 text-xs text-foreground transition-colors hover:bg-card-strong",children:"Sign in"})})}},76670:(a,b,c)=>{c.d(b,{ThemeToggle:()=>h});var d=c(48249),e=c(27346),f=c(44999),g=c(8696);function h(){let{resolvedTheme:a,setTheme:b}=(0,g.D)();return(0,d.jsxs)("button",{type:"button",onClick:()=>b("dark"===a?"light":"dark"),"aria-label":"Toggle theme",className:"flex h-9 w-9 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-selected hover:text-foreground",children:[(0,d.jsx)(e.A,{className:"h-4.5 w-4.5 dark:hidden"}),(0,d.jsx)(f.A,{className:"hidden h-4.5 w-4.5 dark:block"})]})}},81232:(a,b,c)=>{c.d(b,{$E:()=>i,TK:()=>j});var d=c(48249),e=c(58910);let f={ok:"bg-ok",warn:"bg-warn",crit:"bg-crit",muted:"bg-muted-foreground/50"};function g(a,b){switch(a.kind){case"restoring":return{label:"Checking session…",tone:"muted"};case"restore-failed":return{label:"Hub unreachable",tone:"crit"};case"signed-out":return{label:"Signed out",tone:"muted"};case"auth-unavailable":return{label:"Sign-in unavailable",tone:"warn"}}switch(b){case"idle":return{label:"Not connected",tone:"muted"};case"connecting":return{label:"Connecting…",tone:"warn"};case"live":return{label:"Live",tone:"ok"};case"reconnecting":return{label:"Reconnecting…",tone:"warn"};case"disconnected":return{label:"Disconnected",tone:"crit"};case"expired":return{label:"Session ended",tone:"crit"};case"no-permission":return{label:"No permission",tone:"warn"}}}function h({tone:a}){return(0,d.jsx)("span",{className:`inline-block h-2 w-2 shrink-0 rounded-full ${f[a]}`,"aria-hidden":!0})}function i(){let{session:a,phase:b,lastEventKind:c,notice:f,dismissNotice:i}=(0,e.M)(),j=g(a,b),k="reset"===c&&"live"===b?"Stream resynchronized with a fresh snapshot.":null;return(0,d.jsxs)("div",{role:"status","aria-label":`Live feed status: ${j.label}`,className:"flex min-w-0 items-center gap-2",children:[(0,d.jsx)(h,{tone:j.tone}),(0,d.jsx)("span",{className:"tnum truncate text-xs text-muted-foreground",children:j.label}),k?(0,d.jsxs)("span",{className:"tnum hidden truncate text-xs text-muted-foreground lg:inline",title:k,children:["\xb7 ",k]}):null,f?(0,d.jsxs)("button",{type:"button",onClick:i,className:"max-w-[16rem] truncate rounded-md border border-border px-2 py-0.5 text-xs text-foreground transition-colors hover:bg-card-strong",title:`${f} Click to dismiss.`,children:[f,(0,d.jsx)("span",{"aria-hidden":!0,children:" ✕"})]}):null]})}function j(){let{session:a,phase:b}=(0,e.M)(),c=g(a,b);return(0,d.jsxs)("div",{className:"flex items-center gap-2 px-3 text-xs",children:[(0,d.jsx)(h,{tone:c.tone}),(0,d.jsx)("span",{className:"truncate",role:"status","aria-label":`Live feed status: ${c.label}`,children:c.label})]})}},94054:(a,b,c)=>{c.d(b,{u:()=>l});var d=c(67484);let e="rigscope:",f=new Map,g=new Map,h=new Map;function i(a){try{return null}catch{return null}}function j(a,b){return`${a}:${b}`}function k(a,b,c,d){let g=j(a,b);if(f.has(g))return f.get(g);let h=c,k=i(a);if(null!==k)try{let a=k.getItem(e+b);if(null!==a){let b=d(JSON.parse(a));null!==b&&(h=b)}}catch{}return f.set(g,h),h}function l(a,b,c,m="local"){let n=j(m,a);return[(0,d.useSyncExternalStore)((0,d.useCallback)(a=>{let b;return void 0===(b=g.get(n))&&(b=new Set,g.set(n,b)),b.add(a),()=>{b.delete(a)}},[n]),()=>k(m,a,b,c),()=>b),(0,d.useCallback)(d=>{let l=k(m,a,b,c),o="function"==typeof d?d(l):d;if(!Object.is(o,l)){let b,c,d;f.set(n,o),b=j(m,a),void 0!==(c=h.get(b))&&clearTimeout(c.timer),d=()=>{let c=h.get(b);c&&clearTimeout(c.timer),h.delete(b);let d=i(m);if(null!==d)try{d.setItem(e+a,JSON.stringify(f.get(b)))}catch{}},h.set(b,{timer:setTimeout(d,250),flush:d}),g.get(n)?.forEach(a=>a())}},[b,n,a,m,c])]}}};
@@ -0,0 +1 @@
1
+ "use strict";exports.id=877,exports.ids=[877],exports.modules={4155:(a,b,c)=>{c.d(b,{E:()=>r,x:()=>q});var d=c(48249),e=c(2116),f=c.n(e),g=c(31742),h=c(50132),i=c(49187),j=c(90606),k=c(93484),l=c(12421),m=c(22338),n=c(58910);function o(a){return(0,d.jsxs)("button",{type:"button",onClick:a.onClick,className:"inline-flex items-center gap-1.5 rounded-md border border-border px-3 py-1.5 text-xs text-foreground transition-colors hover:bg-card-strong",children:[(0,d.jsx)(g.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),a.children]})}function p(a){return(0,d.jsx)(f(),{href:a.href,className:a.primary?"inline-flex items-center gap-1.5 rounded-md bg-accent px-3 py-1.5 text-xs font-medium text-accent-foreground transition-colors hover:bg-accent/90":"inline-flex items-center gap-1.5 rounded-md border border-border px-3 py-1.5 text-xs text-foreground transition-colors hover:bg-card-strong",children:a.children})}function q(){let{session:a,phase:b,retryConnection:c}=(0,n.M)();switch(a.kind){case"restoring":return(0,d.jsx)(m.Z,{title:"Checking session",className:"mx-auto my-12 max-w-md",children:(0,d.jsx)(m.p,{icon:h.A,note:"Checking your session…"})});case"restore-failed":return(0,d.jsxs)(m.Z,{title:"Hub unreachable",className:"mx-auto my-12 max-w-md",children:[(0,d.jsx)(m.p,{icon:i.A,note:"The hub is unreachable right now."}),(0,d.jsx)("div",{className:"flex justify-center",children:(0,d.jsx)(o,{onClick:c,children:"Check again"})})]});case"signed-out":if("expired"===b)return(0,d.jsxs)(m.Z,{title:"Session ended",className:"mx-auto my-12 max-w-md",children:[(0,d.jsx)(m.p,{icon:j.A,note:"Your session ended."}),(0,d.jsx)("div",{className:"flex justify-center",children:(0,d.jsx)(p,{href:"/login",primary:!0,children:"Sign in"})})]});return(0,d.jsxs)(m.Z,{title:"Sign in required",className:"mx-auto my-12 max-w-md",children:[(0,d.jsx)(m.p,{icon:h.A,note:"Sign in required."}),(0,d.jsx)("div",{className:"flex justify-center",children:(0,d.jsx)(p,{href:"/login",primary:!0,children:"Sign in"})})]});case"auth-unavailable":return(0,d.jsx)(m.Z,{title:"Sign-in unavailable",className:"mx-auto my-12 max-w-md",children:(0,d.jsx)(m.p,{icon:k.A,note:"Browser sign-in is not configured on this hub."})})}return"expired"===b?(0,d.jsxs)(m.Z,{title:"Session ended",className:"mx-auto my-12 max-w-md",children:[(0,d.jsx)(m.p,{icon:j.A,note:"Your session ended."}),(0,d.jsx)("div",{className:"flex justify-center",children:(0,d.jsx)(p,{href:"/login",primary:!0,children:"Sign in"})})]}):"no-permission"===b?(0,d.jsxs)(m.Z,{title:"No permission",className:"mx-auto my-12 max-w-md",children:[(0,d.jsx)(m.p,{icon:k.A,note:`You are signed in as ${a.user.username}, but this hub grants no machine view to this account.`}),(0,d.jsx)("div",{className:"flex justify-center",children:(0,d.jsx)(o,{onClick:c,children:"Check again"})})]}):null}function r(){let{phase:a,retryConnection:b}=(0,n.M)();return"reconnecting"!==a&&"disconnected"!==a&&"connecting"!==a?null:"connecting"===a?(0,d.jsxs)("div",{role:"status",className:"mb-5 flex items-center gap-2 rounded-lg border border-border bg-card px-4 py-2.5 text-xs text-muted-foreground",children:[(0,d.jsx)(g.A,{className:"h-3.5 w-3.5 shrink-0","aria-hidden":!0}),"Connecting to the live feed — waiting for the first snapshot."]}):(0,d.jsxs)("div",{role:"status",className:"mb-5 flex flex-wrap items-center gap-x-3 gap-y-2 rounded-lg border border-border bg-card px-4 py-2.5 text-xs text-muted-foreground",children:[(0,d.jsx)(l.A,{className:"h-3.5 w-3.5 shrink-0 text-warn","aria-hidden":!0}),(0,d.jsxs)("span",{children:["Connection lost — values below are ",(0,d.jsx)("strong",{className:"font-medium text-foreground",children:"last known"}),", not live measurements","reconnecting"===a?" — retrying with backoff…":" — retries stopped."]}),"disconnected"===a?(0,d.jsx)(o,{onClick:b,children:"Retry now"}):null]})}},29356:(a,b,c)=>{c.d(b,{c:()=>e});var d=c(67484);function e(a=1e3){let[b,c]=(0,d.useState)(()=>Date.now());return b}},50280:(a,b,c)=>{c.d(b,{iL:()=>k,jB:()=>m,vw:()=>n});var d=c(48249),e=c(93224),f=c(22127);let g=2*Math.PI*70;function h(a){return Number.isFinite(a)?Math.min(100,Math.max(0,a)):0}function i(a){let{reason:b,ageLabel:c,center:e}=a;return(0,d.jsxs)("p",{className:e?"max-w-[16rem] text-center text-xs text-warn":"text-xs text-warn",children:["Unavailable — ",b,c?(0,d.jsxs)("span",{className:"text-muted-foreground",children:[" (last update ",c,")"]}):null]})}function j(a){let{reason:b,ageLabel:c}=a;return(0,d.jsxs)("div",{className:"flex flex-col items-center gap-2",children:[(0,d.jsx)("div",{role:"img","aria-label":`Unavailable — ${b}`,className:"flex h-40 w-40 shrink-0 items-center justify-center rounded-full border-[5px] border-dashed border-border",children:(0,d.jsx)("span",{className:"tnum text-xl font-semibold text-muted-foreground",children:"—"})}),(0,d.jsx)(i,{reason:b,ageLabel:c,center:!0})]})}function k(a){let{metricName:b,field:c,ageLabel:i,isHeld:k,thresholdMs:l}=a;if("unavailable"===c.out)return(0,d.jsx)(j,{reason:c.reason,ageLabel:i??null});if("absent"===c.out)return(0,d.jsx)(j,{reason:"No sample has arrived yet.",ageLabel:i??null});let m="stale"===c.out,n=h(c.value),o=g*(1-n/100),p=m?`${b} last known ${(0,e.l9)(n)}, stale`:`${b} ${(0,e.l9)(n)}`;return(0,d.jsxs)("div",{className:"flex flex-col items-center gap-3",children:[(0,d.jsxs)("svg",{role:"img","aria-label":p,viewBox:"0 0 160 160",className:"h-40 w-40 shrink-0",children:[(0,d.jsx)("circle",{cx:80,cy:80,r:70,fill:"none",stroke:"var(--border)",strokeWidth:8}),(0,d.jsx)("circle",{cx:80,cy:80,r:70,fill:"none",stroke:m?"var(--warn)":"var(--cpu)",strokeWidth:8,strokeLinecap:"round",strokeDasharray:g,strokeDashoffset:o,transform:"rotate(-90 80 80)"}),(0,d.jsx)("text",{x:"50%",y:m||k?"45%":"50%",dominantBaseline:"central",textAnchor:"middle",className:"fill-foreground text-xl font-semibold tnum",children:(0,e.l9)(n)}),m?(0,d.jsx)("text",{x:"50%",y:102,textAnchor:"middle",className:"fill-warn text-xs tnum",children:"last known"}):k?(0,d.jsx)("text",{x:"50%",y:102,textAnchor:"middle",className:"fill-muted-foreground text-xs tnum",children:"held"}):null]}),(0,d.jsx)("p",{className:"text-center text-xs text-muted-foreground",children:m?`Last known value — no update for over ${(0,e.$)(l??f.vz)}${i?` (${i})`:""}`:i??""})]})}function l(a){let{reason:b,ageLabel:c}=a;return(0,d.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,d.jsx)("div",{role:"img","aria-label":`Memory unavailable — ${b}`,className:"h-3 w-full max-w-64 rounded-full border border-dashed border-border"}),(0,d.jsx)(i,{reason:b,ageLabel:c})]})}function m(a){let{field:b,ageLabel:c,isHeld:g,thresholdMs:i}=a;if("unavailable"===b.out)return(0,d.jsx)(l,{reason:b.reason,ageLabel:c??null});if("absent"===b.out)return(0,d.jsx)(l,{reason:"No sample has arrived yet.",ageLabel:c??null});let j="stale"===b.out,k=b.totalBytes,m=b.usedBytes,o=k>0?h(m/k*100)/100:0,p=j?`Memory last known ${(0,e.z3)(m)} of ${(0,e.z3)(k)}, stale`:`Memory ${(0,e.z3)(m)} of ${(0,e.z3)(k)}`;return(0,d.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,d.jsx)("div",{role:"img","aria-label":p,className:"flex h-3 w-full max-w-64 items-stretch overflow-hidden rounded-full bg-card-strong",children:(0,d.jsx)("div",{className:"h-full rounded-full",style:{width:`${100*o}%`,backgroundColor:j?"var(--warn)":"var(--mem)",minWidth:k>0?void 0:0}})}),(0,d.jsxs)("div",{className:"flex items-baseline gap-2",children:[(0,d.jsx)("p",{className:"tnum text-sm",children:k>0?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("span",{className:"font-semibold",children:(0,e.z3)(m)}),(0,d.jsxs)("span",{className:"text-muted-foreground",children:[" of ",(0,e.z3)(k)]}),(0,d.jsxs)("span",{className:"text-muted-foreground",children:[" ","\xb7 ",(0,e.l9)(k>0?m/k*100:null)]})]}):(0,d.jsxs)("span",{className:"text-muted-foreground",children:[(0,e.z3)(m)," used — total size unavailable"]})}),j?(0,d.jsx)(n,{text:"last known",title:`No update for over ${(0,e.$)(i??f.vz)}`}):null,g&&!j?(0,d.jsx)(n,{text:"held",title:"Value kept while the connection is down"}):null]}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:j?`Retained from the last accepted sample${c?` (${c})`:""}.`:c??""})]})}function n(a){let{text:b,title:c}=a;return(0,d.jsx)("span",{title:c,className:"tnum shrink-0 rounded-full border border-border px-2 py-0.5 text-xs text-muted-foreground",children:b})}},90606:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(65366).A)("Clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]])},99837:(a,b,c)=>{c.d(b,{B4:()=>o,CE:()=>k,V5:()=>i,YL:()=>n,Zf:()=>p,cH:()=>l,cy:()=>C,d5:()=>m,fp:()=>z,hL:()=>x,rn:()=>j,v4:()=>h});var d=c(93224);function e(a,b){return{state:"value",value:a,stale:b}}function f(a){return{state:"unavailable",reason:a}}function g(a){return{state:"absent",reason:a}}function h(a){let b=a.displayName?.trim();if(b)return b;let c=a.hostname?.trim();return c||a.machineId}function i(a){let b=new Set,c=[];for(let d of a.tags??[]){if("string"!=typeof d)continue;let a=d.trim();if(!(""===a||b.has(a.toLowerCase()))&&(b.add(a.toLowerCase()),c.push(a),c.length>=32))break}return c}function j(a,b){let c=b.trim().toLowerCase().split(/\s+/).filter(Boolean);return 0===c.length?[...a]:a.filter(a=>{let b=[h(a),a.hostname,a.machineId,a.collectorId,...i(a)].filter(a=>"string"==typeof a&&""!==a.trim()).join(" ").toLowerCase();return c.every(a=>b.includes(a))})}function k(a){return null!=a&&Number.isFinite(a)?`${(0,d.z3)(a)}/s`:"—"}function l(a){return null!=a&&Number.isFinite(a)?`${Math.round(a)} \xb0C`:"—"}function m(a){return null!=a&&Number.isFinite(a)?`${Math.round(a)} W`:"—"}function n(a){return null==a||!Number.isFinite(a)||a<0?"—":`${a<10?a.toFixed(2):a.toFixed(1)} ms`}function o(a){return null!=a&&Number.isFinite(a)?Math.round(a).toLocaleString():"—"}function p(a){return null!=a&&Number.isFinite(a)?`${Math.round(a)} Mb/s`:"—"}function q(a){let b=a.filter(a=>"supported"===a.telemetry);return b.some(a=>"ok"===a.state)&&b.some(a=>"ok"!==a.state)}let r="The collector has not reported this metric family to this hub.";function s(a){return a.metrics?.payload??null}function t(a){return"number"==typeof a&&Number.isFinite(a)?a:null}function u(a){let b=t(a);return null!==b&&b>=0?b:null}function v(a,b,c,d,h=!0){if(null===a||"object"!=typeof a)return g(d);if("unavailable"===a.status)return f(("string"==typeof a.reason?a.reason.trim():"")||"This metric family is unavailable.");if("ok"!==a.status)return g(d);let i=(h?u:t)(a[b]);return null===i?f("Not reported for this sample."):e(i,c)}function w(a){let b=s(a);return null!==b?"ok"===b.disks.status?{state:"available"}:{state:"unavailable",reason:b.disks.reason}:{state:"absent",reason:r}}function x(a,b){var c;let j,k,l,m,n,o,p,t,x,y=(0,d.vj)(a,b),z="stale"===y,A=function(a,b){let c=a.inventory?.gpus??[],d=s(a),e=d?.gpus.status==="ok"?d.gpus.devices:[],f=d?.gpus.status==="unavailable"?d.gpus.reason:null,g=new Map(e.map(a=>[a.id,a])),h=new Map(c.map(a=>[a.id,a])),i=[];for(let a of c)i.push(a.id);for(let a of e)h.has(a.id)||i.push(a.id);let j=[];for(let a of i){let c=h.get(a),d=g.get(a),e={id:a,name:c?.name??a.replace(/^gpu:/,""),vendor:c?.vendor??"other",pciBusId:c?.pciBusId??null,telemetry:c?.telemetry??"supported",stale:b};if(d?.status==="ok"){j.push({...e,state:"ok",reason:null,utilizationPercent:d.utilizationPercent,memoryUsedBytes:d.memoryUsedBytes,memoryTotalBytes:d.memoryTotalBytes??c?.memoryTotalBytes??null,temperatureC:d.temperatureC,powerWatts:d.powerWatts});continue}if(d?.status==="unavailable"){j.push({...e,state:"unavailable",reason:d.reason,utilizationPercent:null,memoryUsedBytes:null,memoryTotalBytes:c?.memoryTotalBytes??null,temperatureC:null,powerWatts:null});continue}if(c?.telemetry==="unsupported"){j.push({...e,state:"unsupported",reason:c.reason??"No supported telemetry for this adapter.",utilizationPercent:null,memoryUsedBytes:null,memoryTotalBytes:null,temperatureC:null,powerWatts:null});continue}j.push({...e,state:"unavailable",reason:f??"No current reading for this device.",utilizationPercent:null,memoryUsedBytes:null,memoryTotalBytes:c?.memoryTotalBytes??null,temperatureC:null,powerWatts:null})}return j}(a,z);return{displayName:h(a),tags:i(a),freshness:y,thresholdMs:(0,d.Cj)(a.expectedIntervalMs),stale:z,cpu:{total:void 0===(l=a.metrics?.payload.cpu)?g("No CPU reading has been received yet."):"ok"===l.status?e(l.usagePercent,z):f(l.reason),perCore:void 0===(m=a.metrics?.payload.cpu)?g("No CPU reading has been received yet; per-core values are unknown."):"ok"===m.status?e([...m.perCore],z):f(m.reason)},memory:void 0===(n=a.metrics?.payload.memory)?g("No memory reading has been received yet."):"ok"===n.status?e({usedBytes:n.usedBytes,totalBytes:n.totalBytes},z):f(n.reason),swap:void 0===(o=a.metrics?.payload.swap)?g("No swap reading has been received yet."):"ok"===o.status?e({usedBytes:o.usedBytes,totalBytes:o.totalBytes},z):f(o.reason),bottlenecks:(p=a.metrics?.payload.cpu,t=a.metrics?.payload.memory,x=a.metrics?.payload.disks,{cpuTemperature:v(p,"temperatureC",z,"No CPU reading has been received yet.",!1),cpuPower:v(p,"powerWatts",z,"No CPU reading has been received yet."),cpuIowait:v(p,"iowaitPercent",z,"No CPU reading has been received yet."),cpuPressure:v(p,"pressureSomePercent",z,"No CPU reading has been received yet."),memoryPressureSome:v(t,"pressureSomePercent",z,"No memory reading has been received yet."),memoryPressureFull:v(t,"pressureFullPercent",z,"No memory reading has been received yet."),ioPressureSome:v(x,"pressureSomePercent",z,"No disk reading has been received yet."),ioPressureFull:v(x,"pressureFullPercent",z,"No disk reading has been received yet.")}),gpus:{family:null!==(j=s(c=a))?"ok"===j.gpus.status?{state:"available"}:{state:"unavailable",reason:j.gpus.reason}:(c.inventory?.gpus.length??0)>0?{state:"absent",reason:"No GPU readings have been received yet."}:{state:"absent",reason:r+" GPU telemetry is unknown until inventory or a reading arrives."},cards:A,partial:q(A)},filesystems:{family:w(a),items:function(a,b){let c=a.inventory?.filesystems??[],d=s(a),e=d?.disks.status==="ok"?d.disks.filesystems:[],f=d?.disks.status==="unavailable"?d.disks.reason:null,g=new Map(e.map(a=>[a.id,a])),h=new Map(c.map(a=>[a.id,a])),i=[];for(let a of c)i.push(a.id);for(let a of e)h.has(a.id)||i.push(a.id);return i.map(a=>{let c=h.get(a),e=g.get(a),i={id:a,mountPoint:c?.mountPoint??a.replace(/^fs:/,""),device:c?.device??"",fsType:c?.fsType??"unknown",totalBytes:c?.totalBytes??null,inodesUsed:null,inodesTotal:null,stale:b};return e?.status==="ok"?{...i,usedBytes:e.usedBytes,totalBytes:e.totalBytes,inodesUsed:u(e.inodesUsed),inodesTotal:u(e.inodesTotal),state:"ok",reason:null}:e?.status==="unavailable"?{...i,usedBytes:null,state:"unavailable",reason:e.reason}:null!==f?{...i,usedBytes:null,state:"unavailable",reason:f}:{...i,usedBytes:null,state:"inventory",reason:null===d?r:"No current usage reading for this filesystem."}})}(a,z)},disks:{family:w(a),items:function(a,b){let c=a.inventory?.disks??[],d=s(a),e=d?.disks.status==="ok"?d.disks.devices:[],f=d?.disks.status==="unavailable"?d.disks.reason:null,g=new Map(e.map(a=>[a.id,a])),h=new Map(c.map(a=>[a.id,a])),i=[];for(let a of c)i.push(a.id);for(let a of e)h.has(a.id)||i.push(a.id);return i.map(a=>{let c=h.get(a),e=g.get(a),i={id:a,name:c?.name??a.replace(/^disk:/,""),model:c?.model??null,rotational:c?.rotational??null,sizeBytes:c?.sizeBytes??null,readLatencyMs:null,writeLatencyMs:null,ioUtilizationPercent:null,stale:b};return e?.status==="ok"?{...i,state:"ok",reason:null,readBytesPerSec:e.readBytesPerSec,writeBytesPerSec:e.writeBytesPerSec,readLatencyMs:u(e.readLatencyMs),writeLatencyMs:u(e.writeLatencyMs),ioUtilizationPercent:u(e.ioUtilizationPercent)}:e?.status==="unavailable"?{...i,state:"unavailable",reason:e.reason,readBytesPerSec:null,writeBytesPerSec:null}:null!==f?{...i,state:"unavailable",reason:f,readBytesPerSec:null,writeBytesPerSec:null}:{...i,state:"inventory",reason:null===d?r:"No current I/O reading for this device.",readBytesPerSec:null,writeBytesPerSec:null}})}(a,z)},network:{family:null!==(k=s(a))?"ok"===k.network.status?{state:"available"}:{state:"unavailable",reason:k.network.reason}:{state:"absent",reason:r},items:function(a,b){let c=a.inventory?.network??[],d=s(a),e=d?.network.status==="ok"?d.network.interfaces:[],f=d?.network.status==="unavailable"?d.network.reason:null,g=new Map(e.map(a=>[a.id,a])),h=new Map(c.map(a=>[a.id,a])),i=[];for(let a of c)i.push(a.id);for(let a of e)h.has(a.id)||i.push(a.id);return i.map(a=>{let c=h.get(a),e=g.get(a),i={id:a,name:c?.name??a.replace(/^net:/,""),mac:c?.mac??null,addresses:c?.addresses??[],virtual:c?.virtual??!1,linkState:c?.state??"unknown",speedMbps:c?.speedMbps??null,stale:b};return e?.status==="ok"?{...i,state:"ok",reason:null,rxBytesPerSec:e.rxBytesPerSec,txBytesPerSec:e.txBytesPerSec}:e?.status==="unavailable"?{...i,state:"unavailable",reason:e.reason,rxBytesPerSec:null,txBytesPerSec:null}:null!==f?{...i,state:"unavailable",reason:f,rxBytesPerSec:null,txBytesPerSec:null}:{...i,state:"inventory",reason:null===d?r:"No current rate reading for this interface.",rxBytesPerSec:null,txBytesPerSec:null}})}(a,z)}}}function y(a){if(0===a.length||a.some(a=>null===a))return null;let b=0;for(let c of a)b+=c;return b}function z(a,b){let c,d,e,f,g,h,i=x(a,b),j=i.gpus.cards,k=0===j.length?null:(e=(d=(c=j.filter(a=>"supported"===a.telemetry)).filter(a=>"ok"===a.state)).map(a=>a.utilizationPercent).filter(a=>null!==a),f=y(c.map(a=>a.memoryUsedBytes)),g=y(c.map(a=>a.memoryTotalBytes)),h=0===d.length?"unavailable"===i.gpus.family.state||"absent"===i.gpus.family.state?i.gpus.family.reason:0===c.length?"No telemetry-supported GPU was reported.":"No current GPU reading.":null,{count:j.length,supportedCount:c.length,okCount:d.length,partial:q(j),maxUtilizationPercent:0===e.length?null:Math.max(...e),memoryUsedBytes:f,memoryTotalBytes:g,stale:i.stale,reason:h}),l=i.filesystems.items.filter(a=>"ok"===a.state&&null!==a.usedBytes&&null!==a.totalBytes&&a.totalBytes>0).map(a=>a.usedBytes/a.totalBytes*100),m=0===i.filesystems.items.length?null:{maxUsedPercent:0===l.length?null:Math.max(...l),stale:i.stale,reason:0===l.length?"available"===i.filesystems.family.state?"No current filesystem usage reading.":i.filesystems.family.reason:null},n=i.network.items.filter(a=>"ok"===a.state&&null!==a.rxBytesPerSec&&null!==a.txBytesPerSec),o=0===i.network.items.length?null:{rxBytesPerSec:n.reduce((a,b)=>a+b.rxBytesPerSec,0),txBytesPerSec:n.reduce((a,b)=>a+b.txBytesPerSec,0),stale:i.stale,reason:0===n.length?"available"===i.network.family.state?"No current interface rate reading.":i.network.family.reason:null};return{cpu:i.cpu.total,memory:i.memory,gpu:k,disk:m,network:o}}let A=["cpu","memory","swap","gpus","disks","network","processes"],B={cpu:"CPU",memory:"Memory",swap:"Swap",gpus:"GPUs",disks:"Disks",network:"Network",processes:"Processes"};function C(a,b){return a.map(a=>{var c;return{machineId:a.machineId,name:h(a),collectorId:a.collectorId,connected:a.connected,cadenceMs:a.expectedIntervalMs??null,thresholdMs:(0,d.Cj)(a.expectedIntervalMs),lastReceivedAt:a.lastReceivedAt,freshness:(0,d.vj)(a,b),delivery:a.delivery?.delivery??null,deliveryCapturedAt:a.delivery?.capturedAt??null,failures:a.delivery?.failures??[],capabilities:void 0===(c=a.inventory)?null:A.map(a=>{let b=c.capabilities[a];return{key:a,label:B[a],status:b.status,reason:b.reason??null}})}})}}};
@@ -0,0 +1,2 @@
1
+ "use strict";exports.id=894,exports.ids=[894],exports.modules={4155:(a,b,c)=>{c.d(b,{E:()=>r,x:()=>q});var d=c(48249),e=c(2116),f=c.n(e),g=c(31742),h=c(50132),i=c(49187),j=c(90606),k=c(93484),l=c(12421),m=c(22338),n=c(58910);function o(a){return(0,d.jsxs)("button",{type:"button",onClick:a.onClick,className:"inline-flex items-center gap-1.5 rounded-md border border-border px-3 py-1.5 text-xs text-foreground transition-colors hover:bg-card-strong",children:[(0,d.jsx)(g.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),a.children]})}function p(a){return(0,d.jsx)(f(),{href:a.href,className:a.primary?"inline-flex items-center gap-1.5 rounded-md bg-accent px-3 py-1.5 text-xs font-medium text-accent-foreground transition-colors hover:bg-accent/90":"inline-flex items-center gap-1.5 rounded-md border border-border px-3 py-1.5 text-xs text-foreground transition-colors hover:bg-card-strong",children:a.children})}function q(){let{session:a,phase:b,retryConnection:c}=(0,n.M)();switch(a.kind){case"restoring":return(0,d.jsx)(m.Z,{title:"Checking session",className:"mx-auto my-12 max-w-md",children:(0,d.jsx)(m.p,{icon:h.A,note:"Checking your session…"})});case"restore-failed":return(0,d.jsxs)(m.Z,{title:"Hub unreachable",className:"mx-auto my-12 max-w-md",children:[(0,d.jsx)(m.p,{icon:i.A,note:"The hub is unreachable right now."}),(0,d.jsx)("div",{className:"flex justify-center",children:(0,d.jsx)(o,{onClick:c,children:"Check again"})})]});case"signed-out":if("expired"===b)return(0,d.jsxs)(m.Z,{title:"Session ended",className:"mx-auto my-12 max-w-md",children:[(0,d.jsx)(m.p,{icon:j.A,note:"Your session ended."}),(0,d.jsx)("div",{className:"flex justify-center",children:(0,d.jsx)(p,{href:"/login",primary:!0,children:"Sign in"})})]});return(0,d.jsxs)(m.Z,{title:"Sign in required",className:"mx-auto my-12 max-w-md",children:[(0,d.jsx)(m.p,{icon:h.A,note:"Sign in required."}),(0,d.jsx)("div",{className:"flex justify-center",children:(0,d.jsx)(p,{href:"/login",primary:!0,children:"Sign in"})})]});case"auth-unavailable":return(0,d.jsx)(m.Z,{title:"Sign-in unavailable",className:"mx-auto my-12 max-w-md",children:(0,d.jsx)(m.p,{icon:k.A,note:"Browser sign-in is not configured on this hub."})})}return"expired"===b?(0,d.jsxs)(m.Z,{title:"Session ended",className:"mx-auto my-12 max-w-md",children:[(0,d.jsx)(m.p,{icon:j.A,note:"Your session ended."}),(0,d.jsx)("div",{className:"flex justify-center",children:(0,d.jsx)(p,{href:"/login",primary:!0,children:"Sign in"})})]}):"no-permission"===b?(0,d.jsxs)(m.Z,{title:"No permission",className:"mx-auto my-12 max-w-md",children:[(0,d.jsx)(m.p,{icon:k.A,note:`You are signed in as ${a.user.username}, but this hub grants no machine view to this account.`}),(0,d.jsx)("div",{className:"flex justify-center",children:(0,d.jsx)(o,{onClick:c,children:"Check again"})})]}):null}function r(){let{phase:a,retryConnection:b}=(0,n.M)();return"reconnecting"!==a&&"disconnected"!==a&&"connecting"!==a?null:"connecting"===a?(0,d.jsxs)("div",{role:"status",className:"mb-5 flex items-center gap-2 rounded-lg border border-border bg-card px-4 py-2.5 text-xs text-muted-foreground",children:[(0,d.jsx)(g.A,{className:"h-3.5 w-3.5 shrink-0","aria-hidden":!0}),"Connecting to the live feed — waiting for the first snapshot."]}):(0,d.jsxs)("div",{role:"status",className:"mb-5 flex flex-wrap items-center gap-x-3 gap-y-2 rounded-lg border border-border bg-card px-4 py-2.5 text-xs text-muted-foreground",children:[(0,d.jsx)(l.A,{className:"h-3.5 w-3.5 shrink-0 text-warn","aria-hidden":!0}),(0,d.jsxs)("span",{children:["Connection lost — values below are ",(0,d.jsx)("strong",{className:"font-medium text-foreground",children:"last known"}),", not live measurements","reconnecting"===a?" — retrying with backoff…":" — retries stopped."]}),"disconnected"===a?(0,d.jsx)(o,{onClick:b,children:"Retry now"}):null]})}},28565:(a,b,c)=>{c.d(b,{MachineBreadcrumb:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call MachineBreadcrumb() from the server but MachineBreadcrumb 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/live/machine-navigation.tsx","MachineBreadcrumb")},35448:(a,b,c)=>{c.d(b,{Z:()=>e});var d=c(5735);function e({title:a,action:b,className:c,children:f}){return(0,d.jsxs)("section",{className:["flex min-w-0 flex-col rounded-xl border border-border bg-card p-5",c].filter(Boolean).join(" "),children:[(0,d.jsxs)("div",{className:"flex shrink-0 items-center justify-between gap-4",children:[(0,d.jsx)("h2",{className:"text-sm font-medium tracking-tight",children:a}),b?(0,d.jsx)("div",{className:"text-xs tabular-nums",children:b}):null]}),(0,d.jsx)("div",{className:"mt-4 flex min-h-0 flex-1 flex-col",children:f})]})}},46568:(a,b,c)=>{c.d(b,{ThemeToggle:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call ThemeToggle() from the server but ThemeToggle 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-toggle.tsx","ThemeToggle")},50369:(a,b,c)=>{c.d(b,{Sidebar:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call Sidebar() from the server but Sidebar 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/shell/sidebar.tsx","Sidebar")},56013:(a,b,c)=>{c.d(b,{Y8:()=>d});function d(a,b,c,d){return`rigscope-${a}-${function(a,b="machine"){let c=a.normalize("NFKD").replace(/[\u0300-\u036f]/g,"").toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").slice(0,48).replace(/-+$/g,"");return c.length>0?c:b}(b)}-${!Number.isFinite(c)?"unknown-time":new Date(c).toISOString().replace(/[-:]/g,"").replace(/\.\d{3}Z$/,"Z")}.${d}`}},64500:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(65366).A)("Play",[["polygon",{points:"6 3 20 12 6 21 6 3",key:"1oa8hb"}]])},71335:(a,b,c)=>{c.d(b,{PE:()=>i,UR:()=>j,kg:()=>h,uW:()=>k});let d=/^[\u0009\u000a\u000d ]*[=+\-@]/,e=/^[\u0009\u000a\u000d]/;function f(a){if(null==a)return"";if("number"==typeof a)return Number.isFinite(a)?String(a):"";if("boolean"==typeof a)return a?"true":"false";let b=0===a.length?a:d.test(a)||e.test(a)?`'${a}`:a;return/[",\t\r\n]/.test(b)?`"${b.replace(/"/g,'""')}"`:b}function g(a){return a.map(f).join(",")}function h(a){return`${a.map(g).join("\r\n")}\r
2
+ `}function i(a,b,c){if("u"<typeof document)return;let d=new Blob([b],{type:c}),e=URL.createObjectURL(d),f=document.createElement("a");f.href=e,f.download=a,f.rel="noopener",f.style.display="none",document.body.append(f),f.click(),f.remove(),globalThis.setTimeout(()=>URL.revokeObjectURL(e),0)}let j="text/csv;charset=utf-8",k="application/json;charset=utf-8"},73742:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(65366).A)("Pause",[["rect",{x:"14",y:"4",width:"4",height:"16",rx:"1",key:"zuxfzm"}],["rect",{x:"6",y:"4",width:"4",height:"16",rx:"1",key:"1okwgv"}]])},88713:(a,b,c)=>{c.d(b,{G:()=>h});var d=c(5735),e=c(28565),f=c(50369),g=c(46568);function h({title:a,headerRight:b,children:c,workspace:i=!1,machineId:j,machineView:k}){return(0,d.jsxs)("div",{className:"relative flex h-dvh overflow-hidden bg-background text-foreground",children:[(0,d.jsx)("a",{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"}),(0,d.jsx)(f.Sidebar,{machineId:j,machineView:k}),(0,d.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col",children:[(0,d.jsxs)("header",{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:[j&&k?(0,d.jsx)(e.MachineBreadcrumb,{machineId:j,title:a,view:k}):(0,d.jsx)("h1",{className:"truncate text-lg font-semibold tracking-tight",children:a}),(0,d.jsxs)("div",{className:"flex items-center gap-3",children:[b?(0,d.jsx)("div",{className:"flex min-w-0 items-center gap-3",children:b}):null,(0,d.jsx)(g.ThemeToggle,{})]})]}),(0,d.jsx)("main",{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 ${i?"flex flex-col overflow-y-hidden":"overflow-y-auto"}`,children:(0,d.jsx)("div",{className:i?"mx-auto flex h-full w-full min-h-0 min-w-0 max-w-[1500px] flex-1 flex-col":"mx-auto flex w-full min-w-0 max-w-[1500px] flex-col",children:c})})]})]})}},90606:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(65366).A)("Clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]])}};
@@ -0,0 +1,4 @@
1
+ {
2
+ "version": 1,
3
+ "functions": {}
4
+ }
@@ -0,0 +1 @@
1
+ self.__INTERCEPTION_ROUTE_REWRITE_MANIFEST="[]";
@@ -0,0 +1 @@
1
+ globalThis.__BUILD_MANIFEST={polyfillFiles:["static/chunks/polyfills-42372ed130431b0a.js"],devFiles:[],lowPriorityFiles:["static/NE6PGEiJxUnKRceuzUWPc/_buildManifest.js","static/NE6PGEiJxUnKRceuzUWPc/_ssgManifest.js"],rootMainFiles:["static/chunks/webpack-9ca43f4ce1bb8938.js","static/chunks/4bd1b696-c7408084347438ae.js","static/chunks/794-ceeb732a1a81bc27.js","static/chunks/main-app-f92328c8950d2e53.js"],rootMainFilesTree:{},pages:{"/_app":[]}};
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "middleware": {},
4
+ "functions": {},
5
+ "sortedMiddleware": []
6
+ }
@@ -0,0 +1 @@
1
+ self.__REACT_LOADABLE_MANIFEST="{}";
@@ -0,0 +1 @@
1
+ self.__NEXT_FONT_MANIFEST='{"pages":{},"app":{},"appUsingSizeAdjust":false,"pagesUsingSizeAdjust":false}';
@@ -0,0 +1 @@
1
+ {"pages":{},"app":{},"appUsingSizeAdjust":false,"pagesUsingSizeAdjust":false}
@@ -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/e45c0c7ef5ba0336.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><meta name="robots" content="noindex"/><title>404: This page could not be found.</title><title>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><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>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)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></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:I[484,[],\"OutletBoundary\"]\nc:\"$Sreact.suspense\"\ne:\"ViewportBoundary\"\nf:I[484,[],\"$e\"]\n11:\"MetadataBoundary\"\n12:I[484,[],\"$11\"]\n14:I[7123,[],\"default\",1]\n:HL[\"/_next/static/css/e45c0c7ef5ba0336.css\",\"style\"]\n9:X\na:[[\"children\",{\"s\":\"__PAGE__\",\"h\":512,\"d\":{\"r\":[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"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.\"}]}]]}]}]],null,[\"$\",\"$Lb\",null,{\"children\":[\"$\",\"$c\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@d\"}]}]]}],\"p\":false,\"v\":null}}]]\n8:[[\"children\",{\"s\":\"_not-found\",\"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\"}]]\n0:{\"P\":null,\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"t\":{\"t\":{\"s\":\"\",\"h\":528,\"d\":{\"r\":[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/e45c0c7ef5ba0336.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\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]}]}]]}],\"p\":false,\"v\":null},\"c\":\"$Q8\"},\"h\":{\"r\":[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$Lf\",null,{\"children\":\"$L10\"}],[\"$\",\"$L12\",null,{\"children\":[[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$c\",null,{\"name\":\"Next.Metadata\",\"children\":\"$L13\"}]}],null]}],null]}],\"p\":false,\"v\":null}},\"m\":\"$undefined\",\"G\":[\"$14\",[]],\"S\":true,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"NE6PGEiJxUnKRceuzUWPc\"}\n"])</script><script>self.__next_f.push([1,"9:C\n10:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"15:I[6869,[],\"IconMark\"]\nd:null\n13:[[\"$\",\"title\",\"0\",{\"children\":\"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\"}],[\"$\",\"$L15\",\"3\",{}]]\n"])</script></body></html>
@@ -0,0 +1 @@
1
+ <!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><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><title>500: This page couldn’t load</title><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></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:I[7121,[],\"\"]\n3:I[4581,[],\"\"]\n7:I[484,[],\"OutletBoundary\"]\n8:\"$Sreact.suspense\"\na:\"ViewportBoundary\"\nb:I[484,[],\"$a\"]\nd:\"MetadataBoundary\"\ne:I[484,[],\"$d\"]\n10:I[7123,[],\"default\",1]\n4:X\n"])</script><script>self.__next_f.push([1,"6:[[\"children\",{\"s\":\"__PAGE__\",\"h\":528,\"d\":{\"r\":[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L7\",null,{\"children\":[\"$\",\"$8\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@9\"}]}]]}],\"p\":false,\"v\":null}}]]\n"])</script><script>self.__next_f.push([1,"5:[[\"children\",{\"s\":\"_global-error\",\"h\":528,\"d\":{\"r\":[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],\"p\":false,\"v\":\"$4\"},\"c\":\"$Q6\"}]]\n0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"t\":{\"t\":{\"s\":\"\",\"h\":528,\"d\":{\"r\":[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],\"p\":false,\"v\":\"$4\"},\"c\":\"$Q5\"},\"h\":{\"r\":[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$Lb\",null,{\"children\":\"$Lc\"}],[\"$\",\"$Le\",null,{\"children\":[[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$8\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lf\"}]}],null]}],null]}],\"p\":false,\"v\":null}},\"m\":\"$undefined\",\"G\":[\"$10\",[]],\"S\":true,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"NE6PGEiJxUnKRceuzUWPc\"}\n"])</script><script>self.__next_f.push([1,"4:C\nc:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"9:null\nf:[]\n"])</script></body></html>
@@ -0,0 +1,4 @@
1
+ {
2
+ "/404": "pages/404.html",
3
+ "/500": "pages/500.html"
4
+ }
@@ -0,0 +1,123 @@
1
+ {
2
+ "/_global-error": {
3
+ "hints": 64,
4
+ "slots": {
5
+ "children": {
6
+ "hints": 96,
7
+ "slots": {
8
+ "children": {
9
+ "hints": 160,
10
+ "slots": null
11
+ }
12
+ }
13
+ }
14
+ }
15
+ },
16
+ "/_not-found": {
17
+ "hints": 64,
18
+ "slots": {
19
+ "children": {
20
+ "hints": 96,
21
+ "slots": {
22
+ "children": {
23
+ "hints": 160,
24
+ "slots": null
25
+ }
26
+ }
27
+ }
28
+ }
29
+ },
30
+ "/administration": {
31
+ "hints": 64,
32
+ "slots": {
33
+ "children": {
34
+ "hints": 96,
35
+ "slots": {
36
+ "children": {
37
+ "hints": 160,
38
+ "slots": null
39
+ }
40
+ }
41
+ }
42
+ }
43
+ },
44
+ "/alerts": {
45
+ "hints": 64,
46
+ "slots": {
47
+ "children": {
48
+ "hints": 96,
49
+ "slots": {
50
+ "children": {
51
+ "hints": 160,
52
+ "slots": null
53
+ }
54
+ }
55
+ }
56
+ }
57
+ },
58
+ "/connections": {
59
+ "hints": 64,
60
+ "slots": {
61
+ "children": {
62
+ "hints": 96,
63
+ "slots": {
64
+ "children": {
65
+ "hints": 160,
66
+ "slots": null
67
+ }
68
+ }
69
+ }
70
+ }
71
+ },
72
+ "/history": {
73
+ "hints": 64,
74
+ "slots": {
75
+ "children": {
76
+ "hints": 96,
77
+ "slots": {
78
+ "children": {
79
+ "hints": 160,
80
+ "slots": null
81
+ }
82
+ }
83
+ }
84
+ }
85
+ },
86
+ "/login": {
87
+ "hints": 64,
88
+ "slots": {
89
+ "children": {
90
+ "hints": 96,
91
+ "slots": {
92
+ "children": {
93
+ "hints": 160,
94
+ "slots": null
95
+ }
96
+ }
97
+ }
98
+ }
99
+ },
100
+ "/": {
101
+ "hints": 64,
102
+ "slots": {
103
+ "children": {
104
+ "hints": 160,
105
+ "slots": null
106
+ }
107
+ }
108
+ },
109
+ "/processes": {
110
+ "hints": 64,
111
+ "slots": {
112
+ "children": {
113
+ "hints": 96,
114
+ "slots": {
115
+ "children": {
116
+ "hints": 160,
117
+ "slots": null
118
+ }
119
+ }
120
+ }
121
+ }
122
+ }
123
+ }
@@ -0,0 +1,5 @@
1
+ {
2
+ "previewModeId": "6054cdff47bec9f0e0e360ad02f9fac8",
3
+ "previewModeSigningKey": "bd327cb6e67d480314a9f9ada2be3c4765754dfbb146d3e0d9456ce61896a53a",
4
+ "previewModeEncryptionKey": "8b61a3b65d06f28d88c10e2b664f10488f0ece6734f8c884c8827af2f2283411"
5
+ }
@@ -0,0 +1 @@
1
+ self.__RSC_SERVER_MANIFEST="{\"node\":{},\"edge\":{},\"encryptionKey\":\"process.env.NEXT_SERVER_ACTIONS_ENCRYPTION_KEY\"}"
@@ -0,0 +1 @@
1
+ {"node":{},"edge":{},"encryptionKey":"LEAvpSxvJrGnN0cw1DAp67k6kQNlb4+mwMeFV3DqWY4="}
@@ -0,0 +1 @@
1
+ (()=>{"use strict";var a,b,c,d,e={},f={};function g(a){var b=f[a];if(void 0!==b)return b.exports;var c=f[a]={exports:{}},d=!0;try{e[a](c,c.exports,g),d=!1}finally{d&&delete f[a]}return c.exports}g.m=e,g.amdO={},g.n=a=>{var b=a&&a.__esModule?()=>a.default:()=>a;return g.d(b,{a:b}),b},b=Object.getPrototypeOf?a=>Object.getPrototypeOf(a):a=>a.__proto__,g.t=function(c,d){if(1&d&&(c=this(c)),8&d||"object"==typeof c&&c&&(4&d&&c.__esModule||16&d&&"function"==typeof c.then))return c;var e=Object.create(null);g.r(e);var f={};a=a||[null,b({}),b([]),b(b)];for(var h=2&d&&c;"object"==typeof h&&!~a.indexOf(h);h=b(h))Object.getOwnPropertyNames(h).forEach(a=>f[a]=()=>c[a]);return f.default=()=>c,g.d(e,f),e},g.d=(a,b)=>{for(var c in b)g.o(b,c)&&!g.o(a,c)&&Object.defineProperty(a,c,{enumerable:!0,get:b[c]})},g.f={},g.e=a=>Promise.all(Object.keys(g.f).reduce((b,c)=>(g.f[c](a,b),b),[])),g.u=a=>""+a+".js",g.o=(a,b)=>Object.prototype.hasOwnProperty.call(a,b),g.r=a=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(a,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(a,"__esModule",{value:!0})},g.X=(a,b,c)=>{var d=b;c||(b=a,c=()=>g(g.s=d)),b.map(g.e,g);var e=c();return void 0===e?a:e},c={311:1},d=a=>{var b=a.modules,d=a.ids,e=a.runtime;for(var f in b)g.o(b,f)&&(g.m[f]=b[f]);e&&e(g);for(var h=0;h<d.length;h++)c[d[h]]=1},g.f.require=(a,b)=>{c[a]||(311!=a?d(require("./chunks/"+g.u(a))):c[a]=1)},module.exports=g,g.C=d})();
@@ -0,0 +1 @@
1
+ self.__BUILD_MANIFEST={__rewrites:{afterFiles:[],beforeFiles:[],fallback:[]},__routerFilterStatic:{numItems:10,errorRate:1e-4,numBits:192,numHashes:14,bitArray:[1,1,0,0,1,1,1,1,1,1,1,1,0,1,1,1,1,0,1,0,0,0,1,1,0,1,1,1,1,0,0,1,1,0,0,1,0,1,0,1,1,0,1,0,0,0,0,1,0,1,1,1,1,0,1,0,0,0,1,0,0,1,0,0,0,0,1,0,0,1,0,1,1,1,0,1,0,0,1,0,0,1,0,1,0,0,0,1,1,0,0,0,1,1,1,1,1,0,0,1,0,0,0,1,0,1,1,1,1,0,1,0,0,1,0,1,0,0,1,1,1,1,0,1,1,1,1,0,1,0,1,0,0,1,1,1,1,1,1,1,1,0,1,1,0,1,0,1,0,0,0,0,1,0,1,1,1,0,0,1,0,1,0,1,1,1,0,1,1,0,1,0,1,0,1,0,0,1,1,0,0,1,0,0,0,1,0,1,0,1,1,0]},__routerFilterDynamic:{numItems:1,errorRate:1e-4,numBits:20,numHashes:14,bitArray:[0,1,0,0,1,0,0,0,1,1,1,1,1,0,0,1,0,1,1,0]},sortedPages:["/_app"]},self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
@@ -0,0 +1 @@
1
+ self.__SSG_MANIFEST=new Set([]);self.__SSG_MANIFEST_CB&&self.__SSG_MANIFEST_CB()
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[103],{802:(e,n,r)=>{r.d(n,{B:()=>l});var t=r(5155),i=r(8500),s=r.n(i),a=r(9939);function l(){let{session:e,phase:n,signOut:r}=(0,a.M)();return"signed-in"===e.kind?(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"hidden max-w-[12rem] truncate text-xs text-muted-foreground sm:inline",children:e.user.username}),(0,t.jsx)("button",{type:"button",onClick:()=>void r(),className:"rounded-md px-2.5 py-1.5 text-xs text-muted-foreground transition-colors hover:bg-card-strong hover:text-foreground",children:"Sign out"})]}):"restoring"===e.kind||"auth-unavailable"===e.kind?null:(0,t.jsx)("div",{className:"flex items-center gap-1",children:(0,t.jsx)(s(),{href:"/login",className:"rounded-md border border-border px-2.5 py-1.5 text-xs text-foreground transition-colors hover:bg-card-strong",children:"Sign in"})})}},940:(e,n,r)=>{r.d(n,{$E:()=>d,TK:()=>o});var t=r(5155),i=r(9939);let s={ok:"bg-ok",warn:"bg-warn",crit:"bg-crit",muted:"bg-muted-foreground/50"};function a(e,n){switch(e.kind){case"restoring":return{label:"Checking session…",tone:"muted"};case"restore-failed":return{label:"Hub unreachable",tone:"crit"};case"signed-out":return{label:"Signed out",tone:"muted"};case"auth-unavailable":return{label:"Sign-in unavailable",tone:"warn"}}switch(n){case"idle":return{label:"Not connected",tone:"muted"};case"connecting":return{label:"Connecting…",tone:"warn"};case"live":return{label:"Live",tone:"ok"};case"reconnecting":return{label:"Reconnecting…",tone:"warn"};case"disconnected":return{label:"Disconnected",tone:"crit"};case"expired":return{label:"Session ended",tone:"crit"};case"no-permission":return{label:"No permission",tone:"warn"}}}function l({tone:e}){return(0,t.jsx)("span",{className:`inline-block h-2 w-2 shrink-0 rounded-full ${s[e]}`,"aria-hidden":!0})}function d(){let{session:e,phase:n,lastEventKind:r,notice:s,dismissNotice:d}=(0,i.M)(),o=a(e,n),c="reset"===r&&"live"===n?"Stream resynchronized with a fresh snapshot.":null;return(0,t.jsxs)("div",{role:"status","aria-label":`Live feed status: ${o.label}`,className:"flex min-w-0 items-center gap-2",children:[(0,t.jsx)(l,{tone:o.tone}),(0,t.jsx)("span",{className:"tnum truncate text-xs text-muted-foreground",children:o.label}),c?(0,t.jsxs)("span",{className:"tnum hidden truncate text-xs text-muted-foreground lg:inline",title:c,children:["\xb7 ",c]}):null,s?(0,t.jsxs)("button",{type:"button",onClick:d,className:"max-w-[16rem] truncate rounded-md border border-border px-2 py-0.5 text-xs text-foreground transition-colors hover:bg-card-strong",title:`${s} Click to dismiss.`,children:[s,(0,t.jsx)("span",{"aria-hidden":!0,children:" ✕"})]}):null]})}function o(){let{session:e,phase:n}=(0,i.M)(),r=a(e,n);return(0,t.jsxs)("div",{className:"flex items-center gap-2 px-3 text-xs",children:[(0,t.jsx)(l,{tone:r.tone}),(0,t.jsx)("span",{className:"truncate",role:"status","aria-label":`Live feed status: ${r.label}`,children:r.label})]})}},1721:(e,n,r)=>{r.d(n,{MachineBreadcrumb:()=>d});var t=r(5155),i=r(8500),s=r.n(i),a=r(9939),l=r(8664);function d({machineId:e,title:n,view:r}){let{machines:i}=(0,a.M)(),o=(0,l.FM)(),c=i.find(n=>n.machineId===e),m=c?.displayName||c?.hostname||"Machine";return(0,t.jsxs)("nav",{"aria-label":"Breadcrumb",className:"flex min-w-0 items-center gap-2 text-sm",children:[(0,t.jsx)(s(),{href:"/",className:"hidden text-muted-foreground hover:text-foreground sm:inline",children:"Fleet"}),(0,t.jsx)("span",{"aria-hidden":!0,className:"hidden text-muted-foreground sm:inline",children:"/"}),(0,t.jsx)(s(),{href:(0,l.Y2)(e,"overview"),className:"hidden max-w-48 truncate text-muted-foreground hover:text-foreground md:inline",children:m}),(0,t.jsx)("select",{"aria-label":"Machine",value:e,onChange:e=>o(e.target.value,r),className:"h-8 min-w-0 max-w-32 rounded-md border border-border bg-card px-1.5 text-sm md:hidden",children:i.map(e=>(0,t.jsx)("option",{value:e.machineId,children:e.displayName||e.hostname||e.machineId},e.machineId))}),(0,t.jsx)("span",{"aria-hidden":!0,className:"text-muted-foreground",children:"/"}),(0,t.jsx)("h1",{className:"truncate text-lg font-semibold tracking-tight",children:n})]})}},2394:(e,n,r)=>{r.d(n,{ThemeToggle:()=>l});var t=r(5155),i=r(1134),s=r(9145),a=r(460);function l(){let{resolvedTheme:e,setTheme:n}=(0,a.D)();return(0,t.jsxs)("button",{type:"button",onClick:()=>n("dark"===e?"light":"dark"),"aria-label":"Toggle theme",className:"flex h-9 w-9 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-selected hover:text-foreground",children:[(0,t.jsx)(i.A,{className:"h-4.5 w-4.5 dark:hidden"}),(0,t.jsx)(s.A,{className:"hidden h-4.5 w-4.5 dark:block"})]})}},2701:(e,n,r)=>{r.d(n,{Sidebar:()=>w});var t=r(5155),i=r(8500),s=r.n(i),a=r(3321),l=r(257),d=r(7233),o=r(2955),c=r(3896),m=r(9764),u=r(4201),h=r(8731),x=r(8664),f=r(8773),b=r(940),g=r(9939);let p=[{href:"/alerts",label:"Alerts",icon:l.A},{href:"/connections",label:"Connections",icon:d.A}],v=[{view:"overview",label:"Overview",icon:o.A},{view:"history",label:"History",icon:c.A},{view:"processes",label:"Processes",icon:m.A}],j=e=>["flex min-h-9 min-w-0 items-center gap-3 rounded-md px-2 text-sm transition-colors md:px-3",e?"bg-selected font-medium text-foreground":"text-muted-foreground hover:bg-card-strong hover:text-foreground"].join(" ");function w({machineId:e,machineView:n}){let r=(0,a.usePathname)(),{session:i,machines:l}=(0,g.M)(),{machine:d,view:o,selectMachine:c}=(0,x.PY)(e,n),m="signed-in"===i.kind&&!0===i.user.admin?[...p,{href:"/administration",label:"Administration",icon:u.A}]:p;return(0,t.jsxs)("aside",{className:"flex w-14 shrink-0 flex-col border-r border-border bg-card md:w-56",children:[(0,t.jsxs)(s(),{href:"/","aria-label":"Rigscope",className:"flex h-14 shrink-0 items-center gap-2.5 border-b border-border px-3 md:px-5",children:[(0,t.jsx)(f.R,{className:"h-5 w-5 shrink-0 text-accent","aria-hidden":!0}),(0,t.jsx)("span",{className:"hidden text-sm font-semibold tracking-tight text-foreground md:inline",children:"Rigscope"})]}),(0,t.jsxs)("nav",{"aria-label":"Primary",className:"flex min-h-0 flex-1 flex-col overflow-y-auto p-2 md:p-3",children:[(0,t.jsxs)(s(),{href:"/","aria-current":"/"===r?"page":void 0,title:"Fleet",className:j("/"===r),children:[(0,t.jsx)(h.A,{className:"h-4 w-4 shrink-0","aria-hidden":!0}),(0,t.jsx)("span",{className:"hidden md:inline",children:"Fleet"})]}),d?(0,t.jsxs)("div",{className:"mb-4 mt-2 md:ms-3 md:border-s md:border-border md:ps-3",children:[(0,t.jsx)("label",{htmlFor:"sidebar-machine",className:"sr-only",children:"Machine"}),(0,t.jsx)("select",{id:"sidebar-machine",value:d.machineId,onChange:e=>c(e.target.value),className:"mb-1 hidden h-9 w-full min-w-0 rounded-md border border-border bg-background px-2 text-sm font-medium md:block",children:l.map(e=>(0,t.jsx)("option",{value:e.machineId,children:e.displayName||e.hostname||e.machineId},e.machineId))}),(0,t.jsx)("nav",{"aria-label":"Selected machine",className:"flex flex-col gap-1",children:v.map(({view:e,label:n,icon:r})=>(0,t.jsxs)(s(),{href:(0,x.Y2)(d.machineId,e),"aria-current":o===e?"page":void 0,title:`${d.displayName||d.hostname}: ${n}`,className:j(o===e),children:[(0,t.jsx)(r,{className:"h-4 w-4 shrink-0","aria-hidden":!0}),(0,t.jsx)("span",{className:"hidden md:inline",children:n})]},e))})]}):null,(0,t.jsx)("div",{className:"flex flex-col gap-1 border-t border-border pt-3",children:m.map(({href:e,label:n,icon:i})=>(0,t.jsxs)(s(),{href:e,"aria-current":r===e?"page":void 0,title:n,className:j(r===e),children:[(0,t.jsx)(i,{className:"h-4 w-4 shrink-0","aria-hidden":!0}),(0,t.jsx)("span",{className:"hidden md:inline",children:n})]},e))})]}),(0,t.jsx)("footer",{className:"hidden shrink-0 border-t border-border p-3 md:block",children:(0,t.jsx)(b.TK,{})})]})}},3440:(e,n,r)=>{r.d(n,{Z:()=>i,p:()=>s});var t=r(5155);function i({title:e,action:n,className:r,children:s}){return(0,t.jsxs)("section",{className:["flex min-w-0 flex-col rounded-xl border border-border bg-card p-5",r].filter(Boolean).join(" "),children:[(0,t.jsxs)("div",{className:"flex shrink-0 items-center justify-between gap-4",children:[(0,t.jsx)("h2",{className:"text-sm font-medium tracking-tight",children:e}),n?(0,t.jsx)("div",{className:"text-xs tabular-nums",children:n}):null]}),(0,t.jsx)("div",{className:"mt-4 flex min-h-0 flex-1 flex-col",children:s})]})}function s({icon:e,note:n,className:r}){return(0,t.jsxs)("div",{className:["flex flex-1 flex-col items-center justify-center gap-2.5 rounded-lg border border-dashed border-border px-6 py-10 text-center",r].filter(Boolean).join(" "),children:[(0,t.jsx)(e,{className:"h-5 w-5 text-muted-foreground","aria-hidden":!0}),(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:n})]})}},4173:(e,n,r)=>{r.d(n,{G:()=>l});var t=r(5155),i=r(1721),s=r(2701),a=r(2394);function l({title:e,headerRight:n,children:r,workspace:d=!1,machineId:o,machineView:c}){return(0,t.jsxs)("div",{className:"relative flex h-dvh overflow-hidden bg-background text-foreground",children:[(0,t.jsx)("a",{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"}),(0,t.jsx)(s.Sidebar,{machineId:o,machineView:c}),(0,t.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col",children:[(0,t.jsxs)("header",{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:[o&&c?(0,t.jsx)(i.MachineBreadcrumb,{machineId:o,title:e,view:c}):(0,t.jsx)("h1",{className:"truncate text-lg font-semibold tracking-tight",children:e}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[n?(0,t.jsx)("div",{className:"flex min-w-0 items-center gap-3",children:n}):null,(0,t.jsx)(a.ThemeToggle,{})]})]}),(0,t.jsx)("main",{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 ${d?"flex flex-col overflow-y-hidden":"overflow-y-auto"}`,children:(0,t.jsx)("div",{className:d?"mx-auto flex h-full w-full min-h-0 min-w-0 max-w-[1500px] flex-1 flex-col":"mx-auto flex w-full min-w-0 max-w-[1500px] flex-col",children:r})})]})]})}},6114:(e,n,r)=>{r.d(n,{u:()=>u});var t=r(2115);let i="rigscope:",s=new Map,a=new Map,l=new Map,d=!1;function o(e){try{return"local"===e?window.localStorage:window.sessionStorage}catch{return null}}function c(e,n){return`${e}:${n}`}function m(e,n,r,t){let a=c(e,n);if(s.has(a))return s.get(a);let l=r,d=o(e);if(null!==d)try{let e=d.getItem(i+n);if(null!==e){let n=t(JSON.parse(e));null!==n&&(l=n)}}catch{}return s.set(a,l),l}function u(e,n,r,h="local"){let x=c(h,e);return[(0,t.useSyncExternalStore)((0,t.useCallback)(e=>{let n;return void 0===(n=a.get(x))&&(n=new Set,a.set(x,n)),n.add(e),()=>{n.delete(e)}},[x]),()=>m(h,e,n,r),()=>n),(0,t.useCallback)(t=>{let u=m(h,e,n,r),f="function"==typeof t?t(u):t;if(!Object.is(f,u)){s.set(x,f);let n=c(h,e),r=l.get(n);void 0!==r&&clearTimeout(r.timer);let t=()=>{let r=l.get(n);r&&clearTimeout(r.timer),l.delete(n);let t=o(h);if(null!==t)try{t.setItem(i+e,JSON.stringify(s.get(n)))}catch{}};if(l.set(n,{timer:setTimeout(t,250),flush:t}),!d){d=!0;let e=()=>l.forEach(e=>e.flush());window.addEventListener("pagehide",e),document.addEventListener("visibilitychange",()=>{document.hidden&&e()})}a.get(x)?.forEach(e=>e())}},[n,x,e,h,r])]}},8664:(e,n,r)=>{r.d(n,{FM:()=>f,JG:()=>x,PY:()=>b,Y2:()=>l});var t=r(2115),i=r(3321),s=r(6114),a=r(9939);function l(e,n){let r=encodeURIComponent(e);return"overview"===n?`/machines/${r}`:`/${n}?machineId=${r}`}function d(e){let n=e.inventory?.capabilities?.processes;return void 0===n||"supported"===n.status}let o={overview:e=>e[0],history:e=>e[0],processes:e=>e.find(d)??e[0]};function c({view:e,requestedMachineId:n,rememberedMachineId:r,machines:t}){if(0===t.length)return{kind:"fleet-empty"};if(n){let e=t.find(e=>e.machineId===n);return e?{kind:"resolved",machine:e,via:"requested"}:{kind:"missing",requestedMachineId:n}}if(r){let e=t.find(e=>e.machineId===r);if(e)return{kind:"resolved",machine:e,via:"remembered"}}let i=o[e](t);return i?{kind:"resolved",machine:i,via:"fallback"}:{kind:"fleet-empty"}}let m=e=>"string"==typeof e?e:null;function u(){return(0,s.u)("machine.selected","",m,"session")}let h=new Set(["history"]);function x(e,n){let{session:r,machines:s}=(0,a.M)(),l=(0,i.useRouter)(),d=(0,i.usePathname)()||`/${e}`,o=(0,i.useSearchParams)(),[m,x]=u(),f="overview"===e?n??"":o.get("machineId")||null,b=(0,t.useMemo)(()=>c({view:e,requestedMachineId:f,rememberedMachineId:m,machines:s}),[e,f,m,s]),g="resolved"===b.kind?b.machine:void 0,p=g?.machineId??"",v="overview"===e?f??"":"processes"===e?g?.machineId??f??"":p;(0,t.useEffect)(()=>{p&&x(p)},[p,x]);let j=h.has(e);return(0,t.useEffect)(()=>{if(!j||"signed-in"!==r.kind||0===s.length||null!==f||""===p)return;let e=function(e,n,r){if(n.get("machineId"))return null;let t=new URLSearchParams(n.toString());return t.set("machineId",r),`${e}?${t.toString()}`}(d,o,p);e&&l.replace(e,{scroll:!1})},[j,r.kind,s,f,p,o,l,d]),{resolution:b,machine:g,machineId:p,navMachineId:v,requestedMachineId:f}}function f(){let e=(0,i.useRouter)(),[,n]=u();return(0,t.useCallback)((r,t)=>{n(r),e.push(l(r,t))},[n,e])}function b(e,n){let r=(0,i.usePathname)()||"/",{machines:t}=(0,a.M)(),[s]=u(),l=f(),d=n??(r.startsWith("/machines/")?"overview":"/history"===r?"history":"/processes"===r?"processes":null),o=c({view:d??"overview",requestedMachineId:t.some(n=>n.machineId===e)?e:null,rememberedMachineId:s,machines:t});return{view:d,machine:"resolved"===o.kind?o.machine:void 0,selectMachine:e=>l(e,d??"overview")}}},8773:(e,n,r)=>{r.d(n,{R:()=>i});var t=r(5155);function i(e){return(0,t.jsxs)("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",focusable:"false",...e,children:[(0,t.jsx)("path",{d:"M8 3H4v18h4M16 3h4v18h-4"}),(0,t.jsx)("path",{d:"m8 15 4-6 4 3M8 8h.01M16 17h.01"})]})}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[157],{91:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0});var n={formatUrl:function(){return u},formatWithValidation:function(){return s},urlObjectKeys:function(){return i}};for(var a in n)Object.defineProperty(t,a,{enumerable:!0,get:n[a]});let o=r(6388)._(r(1393)),l=/https?|ftp|gopher|file/;function u(e){let{auth:t,hostname:r}=e,n=e.protocol||"",a=e.pathname||"",u=e.hash||"",i=e.query||"",s=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?s=t+e.host:r&&(s=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(s+=":"+e.port)),i&&"object"==typeof i&&(i=String(o.urlQueryToSearchParams(i)));let c=e.search||i&&`?${i}`||"";return n&&!n.endsWith(":")&&(n+=":"),e.slashes||(!n||l.test(n))&&!1!==s?(s="//"+(s||""),a&&"/"!==a[0]&&(a="/"+a)):s||(s=""),u&&"#"!==u[0]&&(u="#"+u),c&&"?"!==c[0]&&(c="?"+c),a=a.replace(/[?#]/g,encodeURIComponent),c=c.replace("#","%23"),`${n}${s}${a}${c}${u}`}let i=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function s(e){return u(e)}},257:(e,t,r)=>{r.d(t,{A:()=>n});let n=(0,r(8698).A)("Bell",[["path",{d:"M10.268 21a2 2 0 0 0 3.464 0",key:"vwvbt9"}],["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",key:"11g9vi"}]])},460:(e,t,r)=>{r.d(t,{D:()=>s,N:()=>c});var n=r(2115),a=(e,t,r,n,a,o,l,u)=>{let i=document.documentElement,s=["light","dark"];function c(t){var r;(Array.isArray(e)?e:[e]).forEach(e=>{let r="class"===e,n=r&&o?a.map(e=>o[e]||e):a;r?(i.classList.remove(...n),i.classList.add(o&&o[t]?o[t]:t)):i.setAttribute(e,t)}),r=t,u&&s.includes(r)&&(i.style.colorScheme=r)}if(n)c(n);else try{let e=localStorage.getItem(t)||r,n=l&&"system"===e?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":e;c(n)}catch(e){}},o=["light","dark"],l="(prefers-color-scheme: dark)",u=n.createContext(void 0),i={setTheme:e=>{},themes:[]},s=()=>{var e;return null!=(e=n.useContext(u))?e:i},c=e=>n.useContext(u)?n.createElement(n.Fragment,null,e.children):n.createElement(h,{...e}),d=["light","dark"],h=({forcedTheme:e,disableTransitionOnChange:t=!1,enableSystem:r=!0,enableColorScheme:a=!0,storageKey:i="theme",themes:s=d,defaultTheme:c=r?"system":"light",attribute:h="data-theme",value:g,children:k,nonce:v,scriptProps:b})=>{let[M,A]=n.useState(()=>p(i,c)),[w,S]=n.useState(()=>"system"===M?m():M),x=g?Object.values(g):s,C=n.useCallback(e=>{let n=e;if(!n)return;"system"===e&&r&&(n=m());let l=g?g[n]:n,u=t?y(v):null,i=document.documentElement,s=e=>{"class"===e?(i.classList.remove(...x),l&&i.classList.add(l)):e.startsWith("data-")&&(l?i.setAttribute(e,l):i.removeAttribute(e))};if(Array.isArray(h)?h.forEach(s):s(h),a){let e=o.includes(c)?c:null,t=o.includes(n)?n:e;i.style.colorScheme=t}null==u||u()},[v]),E=n.useCallback(e=>{let t="function"==typeof e?e(M):e;A(t);try{localStorage.setItem(i,t)}catch(e){}},[M]),P=n.useCallback(t=>{S(m(t)),"system"===M&&r&&!e&&C("system")},[M,e]);n.useEffect(()=>{let e=window.matchMedia(l);return e.addListener(P),P(e),()=>e.removeListener(P)},[P]),n.useEffect(()=>{let e=e=>{e.key===i&&(e.newValue?A(e.newValue):E(c))};return window.addEventListener("storage",e),()=>window.removeEventListener("storage",e)},[E]),n.useEffect(()=>{C(null!=e?e:M)},[e,M]);let j=n.useMemo(()=>({theme:M,setTheme:E,forcedTheme:e,resolvedTheme:"system"===M?w:M,themes:r?[...s,"system"]:s,systemTheme:r?w:void 0}),[M,E,e,w,r,s]);return n.createElement(u.Provider,{value:j},n.createElement(f,{forcedTheme:e,storageKey:i,attribute:h,enableSystem:r,enableColorScheme:a,defaultTheme:c,value:g,themes:s,nonce:v,scriptProps:b}),k)},f=n.memo(({forcedTheme:e,storageKey:t,attribute:r,enableSystem:o,enableColorScheme:l,defaultTheme:u,value:i,themes:s,nonce:c,scriptProps:d})=>{let h=JSON.stringify([r,t,u,e,s,i,o,l]).slice(1,-1);return n.createElement("script",{...d,suppressHydrationWarning:!0,nonce:"",dangerouslySetInnerHTML:{__html:`(${a.toString()})(${h})`}})}),p=(e,t)=>{let r;try{r=localStorage.getItem(e)||void 0}catch(e){}return r||t},y=e=>{let t=document.createElement("style");return e&&t.setAttribute("nonce",e),t.appendChild(document.createTextNode("*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}")),document.head.appendChild(t),()=>{window.getComputedStyle(document.body),setTimeout(()=>{document.head.removeChild(t)},1)}},m=e=>(e||(e=window.matchMedia(l)),e.matches?"dark":"light")},828:(e,t,r)=>{r.d(t,{A:()=>n});let n=(0,r(8698).A)("RefreshCw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]])},857:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0});var r={DecodeError:function(){return m},MiddlewareNotFoundError:function(){return b},MissingStaticPage:function(){return v},NormalizeError:function(){return g},PageNotFoundError:function(){return k},SP:function(){return p},ST:function(){return y},WEB_VITALS:function(){return a},execOnce:function(){return o},getDisplayName:function(){return c},getLocationOrigin:function(){return i},getURL:function(){return s},isAbsoluteUrl:function(){return u},isResSent:function(){return d},loadGetInitialProps:function(){return f},normalizeRepeatedSlashes:function(){return h},stringifyError:function(){return M}};for(var n in r)Object.defineProperty(t,n,{enumerable:!0,get:r[n]});let a=["CLS","FCP","INP","LCP","TTFB"];function o(e){let t,r=!1;return(...n)=>(r||(r=!0,t=e(...n)),t)}let l=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,u=e=>{let t=e.charCodeAt(0);return!!(t>=65&&t<=90||t>=97&&t<=122)&&l.test(e)};function i(){let{protocol:e,hostname:t,port:r}=window.location;return`${e}//${t}${r?":"+r:""}`}function s(){let{href:e}=window.location,t=i();return e.substring(t.length)}function c(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function d(e){return e.finished||e.headersSent}function h(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function f(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await f(t.Component,t.ctx)}:{};let n=await e.getInitialProps(t);if(r&&d(r))return n;if(!n)throw Error(`"${c(e)}.getInitialProps()" should resolve to an object. But found "${n}" instead.`);return n}let p="u">typeof performance,y=p&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class m extends Error{}class g extends Error{}class k extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class v extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class b extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function M(e){return JSON.stringify({message:e.message,stack:e.stack})}},1134:(e,t,r)=>{r.d(t,{A:()=>n});let n=(0,r(8698).A)("Sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]])},1172:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"useMergedRef",{enumerable:!0,get:function(){return a}});let n=r(2115);function a(e,t){let r=(0,n.useRef)(null),a=(0,n.useRef)(null);return(0,n.useCallback)(n=>{if(null===n){let e=r.current;e&&(r.current=null,e());let t=a.current;t&&(a.current=null,t())}else e&&(r.current=o(e,n)),t&&(a.current=o(t,n))},[e,t])}function o(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},1735:(e,t,r)=>{r.d(t,{A:()=>n});let n=(0,r(8698).A)("TriangleAlert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]])},2955:(e,t,r)=>{r.d(t,{A:()=>n});let n=(0,r(8698).A)("LayoutDashboard",[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]])},3321:(e,t,r)=>{var n=r(4645);r.o(n,"usePathname")&&r.d(t,{usePathname:function(){return n.usePathname}}),r.o(n,"useRouter")&&r.d(t,{useRouter:function(){return n.useRouter}}),r.o(n,"useSearchParams")&&r.d(t,{useSearchParams:function(){return n.useSearchParams}})},3896:(e,t,r)=>{r.d(t,{A:()=>n});let n=(0,r(8698).A)("History",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]])},4201:(e,t,r)=>{r.d(t,{A:()=>n});let n=(0,r(8698).A)("Settings",[["path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z",key:"1qme2f"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]])},6914:(e,t,r)=>{r.d(t,{A:()=>n});let n=(0,r(8698).A)("UserRound",[["circle",{cx:"12",cy:"8",r:"5",key:"1hypcn"}],["path",{d:"M20 21a8 8 0 0 0-16 0",key:"rfgkzh"}]])},7029:(e,t,r)=>{r.d(t,{A:()=>n});let n=(0,r(8698).A)("WifiOff",[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}],["path",{d:"M5 12.859a10 10 0 0 1 5.17-2.69",key:"1dl1wf"}],["path",{d:"M19 12.859a10 10 0 0 0-2.007-1.523",key:"4k23kn"}],["path",{d:"M2 8.82a15 15 0 0 1 4.177-2.643",key:"1grhjp"}],["path",{d:"M22 8.82a15 15 0 0 0-11.288-3.764",key:"z3jwby"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]])},7233:(e,t,r)=>{r.d(t,{A:()=>n});let n=(0,r(8698).A)("Cable",[["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",key:"10bnsj"}],["path",{d:"M19 15V6.5a1 1 0 0 0-7 0v11a1 1 0 0 1-7 0V9",key:"1eqmu1"}],["path",{d:"M21 21v-2h-4",key:"14zm7j"}],["path",{d:"M3 5h4V3",key:"z442eg"}],["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",key:"ebdjd7"}]])},7422:(e,t,r)=>{r.d(t,{A:()=>n});let n=(0,r(8698).A)("ShieldAlert",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"M12 8v4",key:"1got3b"}],["path",{d:"M12 16h.01",key:"1drbdi"}]])},8500:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0});var n={default:function(){return g},useLinkStatus:function(){return v}};for(var a in n)Object.defineProperty(t,a,{enumerable:!0,get:n[a]});let o=r(6388),l=r(5155),u=o._(r(2115)),i=r(91),s=r(2909),c=r(1172),d=r(857),h=r(127),f=r(4616),p=r(4972),y=r(9470),m=r(7565);function g(e){var t;let n,a,o,[g,v]=(0,u.useOptimistic)(p.IDLE_LINK_STATUS),b=(0,u.useRef)(null),{href:M,as:A,children:w,prefetch:S=null,passHref:x,replace:C,shallow:E,scroll:P,onClick:j,onMouseEnter:L,onTouchStart:T,legacyBehavior:_=!1,onNavigate:N,transitionTypes:O,ref:z,unstable_dynamicOnHover:R,...$}=e;n=w,_&&("string"==typeof n||"number"==typeof n)&&(n=(0,l.jsx)("a",{children:n}));let I=u.default.useContext(s.AppRouterContext),U=!1!==S,B=!1===S?"none":!0===S?"full":"auto",F="none"!==B?"auto"===B?m.FetchStrategy.PPR:m.FetchStrategy.Full:m.FetchStrategy.PPR,V="string"==typeof(t=A||M)?t:(0,i.formatUrl)(t);if(_){if(n?.$$typeof===Symbol.for("react.lazy"))throw Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag.");a=u.default.Children.only(n)}let q=_?a&&"object"==typeof a&&a.ref:z,D,K=u.default.useCallback(e=>(null!==I&&(b.current=(0,p.mountLinkInstance)(e,V,I,F,U,v,D)),()=>{b.current&&((0,p.unmountLinkForCurrentNavigation)(b.current),b.current=null),(0,p.unmountPrefetchableInstance)(e)}),[U,V,I,F,v,D]),W={ref:(0,c.useMergedRef)(K,q),onClick(e){_||"function"!=typeof j||j(e),_&&a.props&&"function"==typeof a.props.onClick&&a.props.onClick(e),!I||e.defaultPrevented||function(e,t,n,a,o,l,u,i="none"){{let s,{nodeName:c}=e.currentTarget;if("A"===c.toUpperCase()&&((s=e.currentTarget.getAttribute("target"))&&"_self"!==s||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||e.nativeEvent&&2===e.nativeEvent.which)||e.currentTarget.hasAttribute("download"))return;if(!(0,y.isLocalURL)(t)){a&&(e.preventDefault(),location.replace(t));return}if(e.preventDefault(),l){let e=!1;if(l({preventDefault:()=>{e=!0}}),e)return}let{navigate:d}=r(5287);d(t,a?"replace":"push",!1===o?f.ScrollBehavior.NoScroll:f.ScrollBehavior.Default,n.current,u,i)}}(e,V,b,C,P,N,O,B)},onMouseEnter(e){_||"function"!=typeof L||L(e),_&&a.props&&"function"==typeof a.props.onMouseEnter&&a.props.onMouseEnter(e),I&&U&&(0,p.onNavigationIntent)(e.currentTarget,!0===R)},onTouchStart:function(e){_||"function"!=typeof T||T(e),_&&a.props&&"function"==typeof a.props.onTouchStart&&a.props.onTouchStart(e),I&&U&&(0,p.onNavigationIntent)(e.currentTarget,!0===R)}};return(0,d.isAbsoluteUrl)(V)?W.href=V:_&&!x&&("a"!==a.type||"href"in a.props)||(W.href=(0,h.addBasePath)(V)),o=_?u.default.cloneElement(a,W):(0,l.jsx)("a",{...$,...W,children:n}),(0,l.jsx)(k.Provider,{value:g,children:o})}let k=(0,u.createContext)(p.IDLE_LINK_STATUS),v=()=>(0,u.useContext)(k);("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},8698:(e,t,r)=>{r.d(t,{A:()=>u});var n=r(2115);let a=(...e)=>e.filter((e,t,r)=>!!e&&""!==e.trim()&&r.indexOf(e)===t).join(" ").trim();var o={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let l=(0,n.forwardRef)(({color:e="currentColor",size:t=24,strokeWidth:r=2,absoluteStrokeWidth:l,className:u="",children:i,iconNode:s,...c},d)=>(0,n.createElement)("svg",{ref:d,...o,width:t,height:t,stroke:e,strokeWidth:l?24*Number(r)/Number(t):r,className:a("lucide",u),...c},[...s.map(([e,t])=>(0,n.createElement)(e,t)),...Array.isArray(i)?i:[i]])),u=(e,t)=>{let r=(0,n.forwardRef)(({className:r,...o},u)=>(0,n.createElement)(l,{ref:u,iconNode:t,className:a(`lucide-${e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,r),...o}));return r.displayName=`${e}`,r}},8731:(e,t,r)=>{r.d(t,{A:()=>n});let n=(0,r(8698).A)("Server",[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]])},9145:(e,t,r)=>{r.d(t,{A:()=>n});let n=(0,r(8698).A)("Moon",[["path",{d:"M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z",key:"a7tn18"}]])},9470:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"isLocalURL",{enumerable:!0,get:function(){return o}});let n=r(857),a=r(8512);function o(e){if(!(0,n.isAbsoluteUrl)(e))return!0;try{let t=(0,n.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,a.hasBasePath)(r.pathname)}catch(e){return!1}}},9764:(e,t,r)=>{r.d(t,{A:()=>n});let n=(0,r(8698).A)("List",[["path",{d:"M3 12h.01",key:"nlz23k"}],["path",{d:"M3 18h.01",key:"1tta3j"}],["path",{d:"M3 6h.01",key:"1rqtza"}],["path",{d:"M8 12h13",key:"1za7za"}],["path",{d:"M8 18h13",key:"1lx6n3"}],["path",{d:"M8 6h13",key:"ik3vkj"}]])}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[227],{438:(e,t,s)=>{s.d(t,{A:()=>n});let n=(0,s(8698).A)("Clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]])},2241:(e,t,s)=>{s.d(t,{B4:()=>p,CE:()=>d,V5:()=>i,YL:()=>y,Zf:()=>f,cH:()=>c,cy:()=>C,d5:()=>m,fp:()=>B,hL:()=>N,rn:()=>u,v4:()=>o});var n=s(7586);function r(e,t){return{state:"value",value:e,stale:t}}function a(e){return{state:"unavailable",reason:e}}function l(e){return{state:"absent",reason:e}}function o(e){let t=e.displayName?.trim();if(t)return t;let s=e.hostname?.trim();return s||e.machineId}function i(e){let t=new Set,s=[];for(let n of e.tags??[]){if("string"!=typeof n)continue;let e=n.trim();if(!(""===e||t.has(e.toLowerCase()))&&(t.add(e.toLowerCase()),s.push(e),s.length>=32))break}return s}function u(e,t){let s=t.trim().toLowerCase().split(/\s+/).filter(Boolean);return 0===s.length?[...e]:e.filter(e=>{let t=[o(e),e.hostname,e.machineId,e.collectorId,...i(e)].filter(e=>"string"==typeof e&&""!==e.trim()).join(" ").toLowerCase();return s.every(e=>t.includes(e))})}function d(e){return null!=e&&Number.isFinite(e)?`${(0,n.z3)(e)}/s`:"—"}function c(e){return null!=e&&Number.isFinite(e)?`${Math.round(e)} \xb0C`:"—"}function m(e){return null!=e&&Number.isFinite(e)?`${Math.round(e)} W`:"—"}function y(e){return null==e||!Number.isFinite(e)||e<0?"—":`${e<10?e.toFixed(2):e.toFixed(1)} ms`}function p(e){return null!=e&&Number.isFinite(e)?Math.round(e).toLocaleString():"—"}function f(e){return null!=e&&Number.isFinite(e)?`${Math.round(e)} Mb/s`:"—"}function x(e){let t=e.filter(e=>"supported"===e.telemetry);return t.some(e=>"ok"===e.state)&&t.some(e=>"ok"!==e.state)}let h="The collector has not reported this metric family to this hub.";function g(e){return e.metrics?.payload??null}function v(e){return"number"==typeof e&&Number.isFinite(e)?e:null}function b(e){let t=v(e);return null!==t&&t>=0?t:null}function k(e,t,s,n,o=!0){if(null===e||"object"!=typeof e)return l(n);if("unavailable"===e.status)return a(("string"==typeof e.reason?e.reason.trim():"")||"This metric family is unavailable.");if("ok"!==e.status)return l(n);let i=(o?b:v)(e[t]);return null===i?a("Not reported for this sample."):r(i,s)}function w(e){let t=g(e);return null!==t?"ok"===t.disks.status?{state:"available"}:{state:"unavailable",reason:t.disks.reason}:{state:"absent",reason:h}}function N(e,t){var s;let u,d,c,m,y,p,f,v,N,j=(0,n.vj)(e,t),B="stale"===j,P=function(e,t){let s=e.inventory?.gpus??[],n=g(e),r=n?.gpus.status==="ok"?n.gpus.devices:[],a=n?.gpus.status==="unavailable"?n.gpus.reason:null,l=new Map(r.map(e=>[e.id,e])),o=new Map(s.map(e=>[e.id,e])),i=[];for(let e of s)i.push(e.id);for(let e of r)o.has(e.id)||i.push(e.id);let u=[];for(let e of i){let s=o.get(e),n=l.get(e),r={id:e,name:s?.name??e.replace(/^gpu:/,""),vendor:s?.vendor??"other",pciBusId:s?.pciBusId??null,telemetry:s?.telemetry??"supported",stale:t};if(n?.status==="ok"){u.push({...r,state:"ok",reason:null,utilizationPercent:n.utilizationPercent,memoryUsedBytes:n.memoryUsedBytes,memoryTotalBytes:n.memoryTotalBytes??s?.memoryTotalBytes??null,temperatureC:n.temperatureC,powerWatts:n.powerWatts});continue}if(n?.status==="unavailable"){u.push({...r,state:"unavailable",reason:n.reason,utilizationPercent:null,memoryUsedBytes:null,memoryTotalBytes:s?.memoryTotalBytes??null,temperatureC:null,powerWatts:null});continue}if(s?.telemetry==="unsupported"){u.push({...r,state:"unsupported",reason:s.reason??"No supported telemetry for this adapter.",utilizationPercent:null,memoryUsedBytes:null,memoryTotalBytes:null,temperatureC:null,powerWatts:null});continue}u.push({...r,state:"unavailable",reason:a??"No current reading for this device.",utilizationPercent:null,memoryUsedBytes:null,memoryTotalBytes:s?.memoryTotalBytes??null,temperatureC:null,powerWatts:null})}return u}(e,B);return{displayName:o(e),tags:i(e),freshness:j,thresholdMs:(0,n.Cj)(e.expectedIntervalMs),stale:B,cpu:{total:void 0===(c=e.metrics?.payload.cpu)?l("No CPU reading has been received yet."):"ok"===c.status?r(c.usagePercent,B):a(c.reason),perCore:void 0===(m=e.metrics?.payload.cpu)?l("No CPU reading has been received yet; per-core values are unknown."):"ok"===m.status?r([...m.perCore],B):a(m.reason)},memory:void 0===(y=e.metrics?.payload.memory)?l("No memory reading has been received yet."):"ok"===y.status?r({usedBytes:y.usedBytes,totalBytes:y.totalBytes},B):a(y.reason),swap:void 0===(p=e.metrics?.payload.swap)?l("No swap reading has been received yet."):"ok"===p.status?r({usedBytes:p.usedBytes,totalBytes:p.totalBytes},B):a(p.reason),bottlenecks:(f=e.metrics?.payload.cpu,v=e.metrics?.payload.memory,N=e.metrics?.payload.disks,{cpuTemperature:k(f,"temperatureC",B,"No CPU reading has been received yet.",!1),cpuPower:k(f,"powerWatts",B,"No CPU reading has been received yet."),cpuIowait:k(f,"iowaitPercent",B,"No CPU reading has been received yet."),cpuPressure:k(f,"pressureSomePercent",B,"No CPU reading has been received yet."),memoryPressureSome:k(v,"pressureSomePercent",B,"No memory reading has been received yet."),memoryPressureFull:k(v,"pressureFullPercent",B,"No memory reading has been received yet."),ioPressureSome:k(N,"pressureSomePercent",B,"No disk reading has been received yet."),ioPressureFull:k(N,"pressureFullPercent",B,"No disk reading has been received yet.")}),gpus:{family:null!==(u=g(s=e))?"ok"===u.gpus.status?{state:"available"}:{state:"unavailable",reason:u.gpus.reason}:(s.inventory?.gpus.length??0)>0?{state:"absent",reason:"No GPU readings have been received yet."}:{state:"absent",reason:h+" GPU telemetry is unknown until inventory or a reading arrives."},cards:P,partial:x(P)},filesystems:{family:w(e),items:function(e,t){let s=e.inventory?.filesystems??[],n=g(e),r=n?.disks.status==="ok"?n.disks.filesystems:[],a=n?.disks.status==="unavailable"?n.disks.reason:null,l=new Map(r.map(e=>[e.id,e])),o=new Map(s.map(e=>[e.id,e])),i=[];for(let e of s)i.push(e.id);for(let e of r)o.has(e.id)||i.push(e.id);return i.map(e=>{let s=o.get(e),r=l.get(e),i={id:e,mountPoint:s?.mountPoint??e.replace(/^fs:/,""),device:s?.device??"",fsType:s?.fsType??"unknown",totalBytes:s?.totalBytes??null,inodesUsed:null,inodesTotal:null,stale:t};return r?.status==="ok"?{...i,usedBytes:r.usedBytes,totalBytes:r.totalBytes,inodesUsed:b(r.inodesUsed),inodesTotal:b(r.inodesTotal),state:"ok",reason:null}:r?.status==="unavailable"?{...i,usedBytes:null,state:"unavailable",reason:r.reason}:null!==a?{...i,usedBytes:null,state:"unavailable",reason:a}:{...i,usedBytes:null,state:"inventory",reason:null===n?h:"No current usage reading for this filesystem."}})}(e,B)},disks:{family:w(e),items:function(e,t){let s=e.inventory?.disks??[],n=g(e),r=n?.disks.status==="ok"?n.disks.devices:[],a=n?.disks.status==="unavailable"?n.disks.reason:null,l=new Map(r.map(e=>[e.id,e])),o=new Map(s.map(e=>[e.id,e])),i=[];for(let e of s)i.push(e.id);for(let e of r)o.has(e.id)||i.push(e.id);return i.map(e=>{let s=o.get(e),r=l.get(e),i={id:e,name:s?.name??e.replace(/^disk:/,""),model:s?.model??null,rotational:s?.rotational??null,sizeBytes:s?.sizeBytes??null,readLatencyMs:null,writeLatencyMs:null,ioUtilizationPercent:null,stale:t};return r?.status==="ok"?{...i,state:"ok",reason:null,readBytesPerSec:r.readBytesPerSec,writeBytesPerSec:r.writeBytesPerSec,readLatencyMs:b(r.readLatencyMs),writeLatencyMs:b(r.writeLatencyMs),ioUtilizationPercent:b(r.ioUtilizationPercent)}:r?.status==="unavailable"?{...i,state:"unavailable",reason:r.reason,readBytesPerSec:null,writeBytesPerSec:null}:null!==a?{...i,state:"unavailable",reason:a,readBytesPerSec:null,writeBytesPerSec:null}:{...i,state:"inventory",reason:null===n?h:"No current I/O reading for this device.",readBytesPerSec:null,writeBytesPerSec:null}})}(e,B)},network:{family:null!==(d=g(e))?"ok"===d.network.status?{state:"available"}:{state:"unavailable",reason:d.network.reason}:{state:"absent",reason:h},items:function(e,t){let s=e.inventory?.network??[],n=g(e),r=n?.network.status==="ok"?n.network.interfaces:[],a=n?.network.status==="unavailable"?n.network.reason:null,l=new Map(r.map(e=>[e.id,e])),o=new Map(s.map(e=>[e.id,e])),i=[];for(let e of s)i.push(e.id);for(let e of r)o.has(e.id)||i.push(e.id);return i.map(e=>{let s=o.get(e),r=l.get(e),i={id:e,name:s?.name??e.replace(/^net:/,""),mac:s?.mac??null,addresses:s?.addresses??[],virtual:s?.virtual??!1,linkState:s?.state??"unknown",speedMbps:s?.speedMbps??null,stale:t};return r?.status==="ok"?{...i,state:"ok",reason:null,rxBytesPerSec:r.rxBytesPerSec,txBytesPerSec:r.txBytesPerSec}:r?.status==="unavailable"?{...i,state:"unavailable",reason:r.reason,rxBytesPerSec:null,txBytesPerSec:null}:null!==a?{...i,state:"unavailable",reason:a,rxBytesPerSec:null,txBytesPerSec:null}:{...i,state:"inventory",reason:null===n?h:"No current rate reading for this interface.",rxBytesPerSec:null,txBytesPerSec:null}})}(e,B)}}}function j(e){if(0===e.length||e.some(e=>null===e))return null;let t=0;for(let s of e)t+=s;return t}function B(e,t){let s,n,r,a,l,o,i=N(e,t),u=i.gpus.cards,d=0===u.length?null:(r=(n=(s=u.filter(e=>"supported"===e.telemetry)).filter(e=>"ok"===e.state)).map(e=>e.utilizationPercent).filter(e=>null!==e),a=j(s.map(e=>e.memoryUsedBytes)),l=j(s.map(e=>e.memoryTotalBytes)),o=0===n.length?"unavailable"===i.gpus.family.state||"absent"===i.gpus.family.state?i.gpus.family.reason:0===s.length?"No telemetry-supported GPU was reported.":"No current GPU reading.":null,{count:u.length,supportedCount:s.length,okCount:n.length,partial:x(u),maxUtilizationPercent:0===r.length?null:Math.max(...r),memoryUsedBytes:a,memoryTotalBytes:l,stale:i.stale,reason:o}),c=i.filesystems.items.filter(e=>"ok"===e.state&&null!==e.usedBytes&&null!==e.totalBytes&&e.totalBytes>0).map(e=>e.usedBytes/e.totalBytes*100),m=0===i.filesystems.items.length?null:{maxUsedPercent:0===c.length?null:Math.max(...c),stale:i.stale,reason:0===c.length?"available"===i.filesystems.family.state?"No current filesystem usage reading.":i.filesystems.family.reason:null},y=i.network.items.filter(e=>"ok"===e.state&&null!==e.rxBytesPerSec&&null!==e.txBytesPerSec),p=0===i.network.items.length?null:{rxBytesPerSec:y.reduce((e,t)=>e+t.rxBytesPerSec,0),txBytesPerSec:y.reduce((e,t)=>e+t.txBytesPerSec,0),stale:i.stale,reason:0===y.length?"available"===i.network.family.state?"No current interface rate reading.":i.network.family.reason:null};return{cpu:i.cpu.total,memory:i.memory,gpu:d,disk:m,network:p}}let P=["cpu","memory","swap","gpus","disks","network","processes"],S={cpu:"CPU",memory:"Memory",swap:"Swap",gpus:"GPUs",disks:"Disks",network:"Network",processes:"Processes"};function C(e,t){return e.map(e=>{var s;return{machineId:e.machineId,name:o(e),collectorId:e.collectorId,connected:e.connected,cadenceMs:e.expectedIntervalMs??null,thresholdMs:(0,n.Cj)(e.expectedIntervalMs),lastReceivedAt:e.lastReceivedAt,freshness:(0,n.vj)(e,t),delivery:e.delivery?.delivery??null,deliveryCapturedAt:e.delivery?.capturedAt??null,failures:e.delivery?.failures??[],capabilities:void 0===(s=e.inventory)?null:P.map(e=>{let t=s.capabilities[e];return{key:e,label:S[e],status:t.status,reason:t.reason??null}})}})}},6576:(e,t,s)=>{s.d(t,{iL:()=>d,jB:()=>m,vw:()=>y});var n=s(5155),r=s(7586),a=s(5887);let l=2*Math.PI*70;function o(e){return Number.isFinite(e)?Math.min(100,Math.max(0,e)):0}function i(e){let{reason:t,ageLabel:s,center:r}=e;return(0,n.jsxs)("p",{className:r?"max-w-[16rem] text-center text-xs text-warn":"text-xs text-warn",children:["Unavailable — ",t,s?(0,n.jsxs)("span",{className:"text-muted-foreground",children:[" (last update ",s,")"]}):null]})}function u(e){let{reason:t,ageLabel:s}=e;return(0,n.jsxs)("div",{className:"flex flex-col items-center gap-2",children:[(0,n.jsx)("div",{role:"img","aria-label":`Unavailable — ${t}`,className:"flex h-40 w-40 shrink-0 items-center justify-center rounded-full border-[5px] border-dashed border-border",children:(0,n.jsx)("span",{className:"tnum text-xl font-semibold text-muted-foreground",children:"—"})}),(0,n.jsx)(i,{reason:t,ageLabel:s,center:!0})]})}function d(e){let{metricName:t,field:s,ageLabel:i,isHeld:d,thresholdMs:c}=e;if("unavailable"===s.out)return(0,n.jsx)(u,{reason:s.reason,ageLabel:i??null});if("absent"===s.out)return(0,n.jsx)(u,{reason:"No sample has arrived yet.",ageLabel:i??null});let m="stale"===s.out,y=o(s.value),p=l*(1-y/100),f=m?`${t} last known ${(0,r.l9)(y)}, stale`:`${t} ${(0,r.l9)(y)}`;return(0,n.jsxs)("div",{className:"flex flex-col items-center gap-3",children:[(0,n.jsxs)("svg",{role:"img","aria-label":f,viewBox:"0 0 160 160",className:"h-40 w-40 shrink-0",children:[(0,n.jsx)("circle",{cx:80,cy:80,r:70,fill:"none",stroke:"var(--border)",strokeWidth:8}),(0,n.jsx)("circle",{cx:80,cy:80,r:70,fill:"none",stroke:m?"var(--warn)":"var(--cpu)",strokeWidth:8,strokeLinecap:"round",strokeDasharray:l,strokeDashoffset:p,transform:"rotate(-90 80 80)"}),(0,n.jsx)("text",{x:"50%",y:m||d?"45%":"50%",dominantBaseline:"central",textAnchor:"middle",className:"fill-foreground text-xl font-semibold tnum",children:(0,r.l9)(y)}),m?(0,n.jsx)("text",{x:"50%",y:102,textAnchor:"middle",className:"fill-warn text-xs tnum",children:"last known"}):d?(0,n.jsx)("text",{x:"50%",y:102,textAnchor:"middle",className:"fill-muted-foreground text-xs tnum",children:"held"}):null]}),(0,n.jsx)("p",{className:"text-center text-xs text-muted-foreground",children:m?`Last known value — no update for over ${(0,r.$)(c??a.vz)}${i?` (${i})`:""}`:i??""})]})}function c(e){let{reason:t,ageLabel:s}=e;return(0,n.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,n.jsx)("div",{role:"img","aria-label":`Memory unavailable — ${t}`,className:"h-3 w-full max-w-64 rounded-full border border-dashed border-border"}),(0,n.jsx)(i,{reason:t,ageLabel:s})]})}function m(e){let{field:t,ageLabel:s,isHeld:l,thresholdMs:i}=e;if("unavailable"===t.out)return(0,n.jsx)(c,{reason:t.reason,ageLabel:s??null});if("absent"===t.out)return(0,n.jsx)(c,{reason:"No sample has arrived yet.",ageLabel:s??null});let u="stale"===t.out,d=t.totalBytes,m=t.usedBytes,p=d>0?o(m/d*100)/100:0,f=u?`Memory last known ${(0,r.z3)(m)} of ${(0,r.z3)(d)}, stale`:`Memory ${(0,r.z3)(m)} of ${(0,r.z3)(d)}`;return(0,n.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,n.jsx)("div",{role:"img","aria-label":f,className:"flex h-3 w-full max-w-64 items-stretch overflow-hidden rounded-full bg-card-strong",children:(0,n.jsx)("div",{className:"h-full rounded-full",style:{width:`${100*p}%`,backgroundColor:u?"var(--warn)":"var(--mem)",minWidth:d>0?void 0:0}})}),(0,n.jsxs)("div",{className:"flex items-baseline gap-2",children:[(0,n.jsx)("p",{className:"tnum text-sm",children:d>0?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"font-semibold",children:(0,r.z3)(m)}),(0,n.jsxs)("span",{className:"text-muted-foreground",children:[" of ",(0,r.z3)(d)]}),(0,n.jsxs)("span",{className:"text-muted-foreground",children:[" ","\xb7 ",(0,r.l9)(d>0?m/d*100:null)]})]}):(0,n.jsxs)("span",{className:"text-muted-foreground",children:[(0,r.z3)(m)," used — total size unavailable"]})}),u?(0,n.jsx)(y,{text:"last known",title:`No update for over ${(0,r.$)(i??a.vz)}`}):null,l&&!u?(0,n.jsx)(y,{text:"held",title:"Value kept while the connection is down"}):null]}),(0,n.jsx)("p",{className:"text-xs text-muted-foreground",children:u?`Retained from the last accepted sample${s?` (${s})`:""}.`:s??""})]})}function y(e){let{text:t,title:s}=e;return(0,n.jsx)("span",{title:s,className:"tnum shrink-0 rounded-full border border-border px-2 py-0.5 text-xs text-muted-foreground",children:t})}},6582:(e,t,s)=>{s.d(t,{E:()=>h,x:()=>x});var n=s(5155),r=s(8500),a=s.n(r),l=s(828),o=s(6914),i=s(7029),u=s(438),d=s(7422),c=s(1735),m=s(3440),y=s(9939);function p(e){return(0,n.jsxs)("button",{type:"button",onClick:e.onClick,className:"inline-flex items-center gap-1.5 rounded-md border border-border px-3 py-1.5 text-xs text-foreground transition-colors hover:bg-card-strong",children:[(0,n.jsx)(l.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),e.children]})}function f(e){return(0,n.jsx)(a(),{href:e.href,className:e.primary?"inline-flex items-center gap-1.5 rounded-md bg-accent px-3 py-1.5 text-xs font-medium text-accent-foreground transition-colors hover:bg-accent/90":"inline-flex items-center gap-1.5 rounded-md border border-border px-3 py-1.5 text-xs text-foreground transition-colors hover:bg-card-strong",children:e.children})}function x(){let{session:e,phase:t,retryConnection:s}=(0,y.M)();switch(e.kind){case"restoring":return(0,n.jsx)(m.Z,{title:"Checking session",className:"mx-auto my-12 max-w-md",children:(0,n.jsx)(m.p,{icon:o.A,note:"Checking your session…"})});case"restore-failed":return(0,n.jsxs)(m.Z,{title:"Hub unreachable",className:"mx-auto my-12 max-w-md",children:[(0,n.jsx)(m.p,{icon:i.A,note:"The hub is unreachable right now."}),(0,n.jsx)("div",{className:"flex justify-center",children:(0,n.jsx)(p,{onClick:s,children:"Check again"})})]});case"signed-out":if("expired"===t)return(0,n.jsxs)(m.Z,{title:"Session ended",className:"mx-auto my-12 max-w-md",children:[(0,n.jsx)(m.p,{icon:u.A,note:"Your session ended."}),(0,n.jsx)("div",{className:"flex justify-center",children:(0,n.jsx)(f,{href:"/login",primary:!0,children:"Sign in"})})]});return(0,n.jsxs)(m.Z,{title:"Sign in required",className:"mx-auto my-12 max-w-md",children:[(0,n.jsx)(m.p,{icon:o.A,note:"Sign in required."}),(0,n.jsx)("div",{className:"flex justify-center",children:(0,n.jsx)(f,{href:"/login",primary:!0,children:"Sign in"})})]});case"auth-unavailable":return(0,n.jsx)(m.Z,{title:"Sign-in unavailable",className:"mx-auto my-12 max-w-md",children:(0,n.jsx)(m.p,{icon:d.A,note:"Browser sign-in is not configured on this hub."})})}return"expired"===t?(0,n.jsxs)(m.Z,{title:"Session ended",className:"mx-auto my-12 max-w-md",children:[(0,n.jsx)(m.p,{icon:u.A,note:"Your session ended."}),(0,n.jsx)("div",{className:"flex justify-center",children:(0,n.jsx)(f,{href:"/login",primary:!0,children:"Sign in"})})]}):"no-permission"===t?(0,n.jsxs)(m.Z,{title:"No permission",className:"mx-auto my-12 max-w-md",children:[(0,n.jsx)(m.p,{icon:d.A,note:`You are signed in as ${e.user.username}, but this hub grants no machine view to this account.`}),(0,n.jsx)("div",{className:"flex justify-center",children:(0,n.jsx)(p,{onClick:s,children:"Check again"})})]}):null}function h(){let{phase:e,retryConnection:t}=(0,y.M)();return"reconnecting"!==e&&"disconnected"!==e&&"connecting"!==e?null:"connecting"===e?(0,n.jsxs)("div",{role:"status",className:"mb-5 flex items-center gap-2 rounded-lg border border-border bg-card px-4 py-2.5 text-xs text-muted-foreground",children:[(0,n.jsx)(l.A,{className:"h-3.5 w-3.5 shrink-0","aria-hidden":!0}),"Connecting to the live feed — waiting for the first snapshot."]}):(0,n.jsxs)("div",{role:"status",className:"mb-5 flex flex-wrap items-center gap-x-3 gap-y-2 rounded-lg border border-border bg-card px-4 py-2.5 text-xs text-muted-foreground",children:[(0,n.jsx)(c.A,{className:"h-3.5 w-3.5 shrink-0 text-warn","aria-hidden":!0}),(0,n.jsxs)("span",{children:["Connection lost — values below are ",(0,n.jsx)("strong",{className:"font-medium text-foreground",children:"last known"}),", not live measurements","reconnecting"===e?" — retrying with backoff…":" — retries stopped."]}),"disconnected"===e?(0,n.jsx)(p,{onClick:t,children:"Retry now"}):null]})}},7348:(e,t,s)=>{s.d(t,{c:()=>r});var n=s(2115);function r(e=1e3){let[t,s]=(0,n.useState)(()=>Date.now());return(0,n.useEffect)(()=>{s(Date.now());let t=setInterval(()=>s(Date.now()),e);return()=>clearInterval(t)},[e]),t}}}]);