@sleep2agi/agent-network-dashboard 0.4.5-preview.19 → 0.4.5-preview.20

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 (167) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build-manifest.json +3 -3
  3. package/.next/diagnostics/route-bundle-stats.json +4 -4
  4. package/.next/fallback-build-manifest.json +3 -3
  5. package/.next/prerender-manifest.json +3 -3
  6. package/.next/server/app/_global-error.html +1 -1
  7. package/.next/server/app/_global-error.rsc +1 -1
  8. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  9. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  10. package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  11. package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  12. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  13. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  14. package/.next/server/app/_not-found.html +2 -2
  15. package/.next/server/app/_not-found.rsc +2 -2
  16. package/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  17. package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  18. package/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  19. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  20. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  21. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  22. package/.next/server/app/admin/page_client-reference-manifest.js +1 -1
  23. package/.next/server/app/admin.html +2 -2
  24. package/.next/server/app/admin.rsc +2 -2
  25. package/.next/server/app/admin.segments/_full.segment.rsc +2 -2
  26. package/.next/server/app/admin.segments/_head.segment.rsc +1 -1
  27. package/.next/server/app/admin.segments/_index.segment.rsc +2 -2
  28. package/.next/server/app/admin.segments/_tree.segment.rsc +2 -2
  29. package/.next/server/app/admin.segments/admin/__PAGE__.segment.rsc +1 -1
  30. package/.next/server/app/admin.segments/admin.segment.rsc +1 -1
  31. package/.next/server/app/index.html +2 -2
  32. package/.next/server/app/index.rsc +3 -3
  33. package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  34. package/.next/server/app/index.segments/_full.segment.rsc +3 -3
  35. package/.next/server/app/index.segments/_head.segment.rsc +1 -1
  36. package/.next/server/app/index.segments/_index.segment.rsc +2 -2
  37. package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  38. package/.next/server/app/login/page_client-reference-manifest.js +1 -1
  39. package/.next/server/app/login.html +2 -2
  40. package/.next/server/app/login.rsc +2 -2
  41. package/.next/server/app/login.segments/_full.segment.rsc +2 -2
  42. package/.next/server/app/login.segments/_head.segment.rsc +1 -1
  43. package/.next/server/app/login.segments/_index.segment.rsc +2 -2
  44. package/.next/server/app/login.segments/_tree.segment.rsc +2 -2
  45. package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
  46. package/.next/server/app/login.segments/login.segment.rsc +1 -1
  47. package/.next/server/app/logs/page_client-reference-manifest.js +1 -1
  48. package/.next/server/app/logs.html +2 -2
  49. package/.next/server/app/logs.rsc +2 -2
  50. package/.next/server/app/logs.segments/_full.segment.rsc +2 -2
  51. package/.next/server/app/logs.segments/_head.segment.rsc +1 -1
  52. package/.next/server/app/logs.segments/_index.segment.rsc +2 -2
  53. package/.next/server/app/logs.segments/_tree.segment.rsc +2 -2
  54. package/.next/server/app/logs.segments/logs/__PAGE__.segment.rsc +1 -1
  55. package/.next/server/app/logs.segments/logs.segment.rsc +1 -1
  56. package/.next/server/app/messages/page_client-reference-manifest.js +1 -1
  57. package/.next/server/app/messages.html +2 -2
  58. package/.next/server/app/messages.rsc +2 -2
  59. package/.next/server/app/messages.segments/_full.segment.rsc +2 -2
  60. package/.next/server/app/messages.segments/_head.segment.rsc +1 -1
  61. package/.next/server/app/messages.segments/_index.segment.rsc +2 -2
  62. package/.next/server/app/messages.segments/_tree.segment.rsc +2 -2
  63. package/.next/server/app/messages.segments/messages/__PAGE__.segment.rsc +1 -1
  64. package/.next/server/app/messages.segments/messages.segment.rsc +1 -1
  65. package/.next/server/app/node/page_client-reference-manifest.js +1 -1
  66. package/.next/server/app/node.html +2 -2
  67. package/.next/server/app/node.rsc +2 -2
  68. package/.next/server/app/node.segments/_full.segment.rsc +2 -2
  69. package/.next/server/app/node.segments/_head.segment.rsc +1 -1
  70. package/.next/server/app/node.segments/_index.segment.rsc +2 -2
  71. package/.next/server/app/node.segments/_tree.segment.rsc +2 -2
  72. package/.next/server/app/node.segments/node/__PAGE__.segment.rsc +1 -1
  73. package/.next/server/app/node.segments/node.segment.rsc +1 -1
  74. package/.next/server/app/nodes/page_client-reference-manifest.js +1 -1
  75. package/.next/server/app/nodes.html +2 -2
  76. package/.next/server/app/nodes.rsc +2 -2
  77. package/.next/server/app/nodes.segments/_full.segment.rsc +2 -2
  78. package/.next/server/app/nodes.segments/_head.segment.rsc +1 -1
  79. package/.next/server/app/nodes.segments/_index.segment.rsc +2 -2
  80. package/.next/server/app/nodes.segments/_tree.segment.rsc +2 -2
  81. package/.next/server/app/nodes.segments/nodes/__PAGE__.segment.rsc +1 -1
  82. package/.next/server/app/nodes.segments/nodes.segment.rsc +1 -1
  83. package/.next/server/app/page.js.nft.json +1 -1
  84. package/.next/server/app/page_client-reference-manifest.js +1 -1
  85. package/.next/server/app/server-logs/page_client-reference-manifest.js +1 -1
  86. package/.next/server/app/server-logs.html +2 -2
  87. package/.next/server/app/server-logs.rsc +2 -2
  88. package/.next/server/app/server-logs.segments/_full.segment.rsc +2 -2
  89. package/.next/server/app/server-logs.segments/_head.segment.rsc +1 -1
  90. package/.next/server/app/server-logs.segments/_index.segment.rsc +2 -2
  91. package/.next/server/app/server-logs.segments/_tree.segment.rsc +2 -2
  92. package/.next/server/app/server-logs.segments/server-logs/__PAGE__.segment.rsc +1 -1
  93. package/.next/server/app/server-logs.segments/server-logs.segment.rsc +1 -1
  94. package/.next/server/app/settings/networks/page_client-reference-manifest.js +1 -1
  95. package/.next/server/app/settings/networks.html +2 -2
  96. package/.next/server/app/settings/networks.rsc +2 -2
  97. package/.next/server/app/settings/networks.segments/_full.segment.rsc +2 -2
  98. package/.next/server/app/settings/networks.segments/_head.segment.rsc +1 -1
  99. package/.next/server/app/settings/networks.segments/_index.segment.rsc +2 -2
  100. package/.next/server/app/settings/networks.segments/_tree.segment.rsc +2 -2
  101. package/.next/server/app/settings/networks.segments/settings/networks/__PAGE__.segment.rsc +1 -1
  102. package/.next/server/app/settings/networks.segments/settings/networks.segment.rsc +1 -1
  103. package/.next/server/app/settings/networks.segments/settings.segment.rsc +1 -1
  104. package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  105. package/.next/server/app/settings/tokens/page_client-reference-manifest.js +1 -1
  106. package/.next/server/app/settings/tokens.html +2 -2
  107. package/.next/server/app/settings/tokens.rsc +2 -2
  108. package/.next/server/app/settings/tokens.segments/_full.segment.rsc +2 -2
  109. package/.next/server/app/settings/tokens.segments/_head.segment.rsc +1 -1
  110. package/.next/server/app/settings/tokens.segments/_index.segment.rsc +2 -2
  111. package/.next/server/app/settings/tokens.segments/_tree.segment.rsc +2 -2
  112. package/.next/server/app/settings/tokens.segments/settings/tokens/__PAGE__.segment.rsc +1 -1
  113. package/.next/server/app/settings/tokens.segments/settings/tokens.segment.rsc +1 -1
  114. package/.next/server/app/settings/tokens.segments/settings.segment.rsc +1 -1
  115. package/.next/server/app/settings.html +2 -2
  116. package/.next/server/app/settings.rsc +2 -2
  117. package/.next/server/app/settings.segments/_full.segment.rsc +2 -2
  118. package/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  119. package/.next/server/app/settings.segments/_index.segment.rsc +2 -2
  120. package/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
  121. package/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +1 -1
  122. package/.next/server/app/settings.segments/settings.segment.rsc +1 -1
  123. package/.next/server/app/tasks/[id]/page_client-reference-manifest.js +1 -1
  124. package/.next/server/app/tasks/page.js.nft.json +1 -1
  125. package/.next/server/app/tasks/page_client-reference-manifest.js +1 -1
  126. package/.next/server/app/tasks.html +2 -2
  127. package/.next/server/app/tasks.rsc +3 -3
  128. package/.next/server/app/tasks.segments/_full.segment.rsc +3 -3
  129. package/.next/server/app/tasks.segments/_head.segment.rsc +1 -1
  130. package/.next/server/app/tasks.segments/_index.segment.rsc +2 -2
  131. package/.next/server/app/tasks.segments/_tree.segment.rsc +2 -2
  132. package/.next/server/app/tasks.segments/tasks/__PAGE__.segment.rsc +2 -2
  133. package/.next/server/app/tasks.segments/tasks.segment.rsc +1 -1
  134. package/.next/server/chunks/ssr/{[root-of-the-server]__04e5_8f._.js → [root-of-the-server]__0jjqrcf._.js} +2 -2
  135. package/.next/server/chunks/ssr/[root-of-the-server]__0jjqrcf._.js.map +1 -0
  136. package/.next/server/chunks/ssr/_0nne7mz._.js +3 -0
  137. package/.next/server/chunks/ssr/_0nne7mz._.js.map +1 -0
  138. package/.next/server/chunks/ssr/app_components_0lhp_k.._.js +3 -0
  139. package/.next/server/chunks/ssr/app_components_0lhp_k.._.js.map +1 -0
  140. package/.next/server/chunks/ssr/app_tasks_page_tsx_0z-d6mp._.js +1 -1
  141. package/.next/server/chunks/ssr/app_tasks_page_tsx_0z-d6mp._.js.map +1 -1
  142. package/.next/server/middleware-build-manifest.js +3 -3
  143. package/.next/server/pages/404.html +2 -2
  144. package/.next/server/pages/500.html +1 -1
  145. package/.next/server/server-reference-manifest.js +1 -1
  146. package/.next/server/server-reference-manifest.json +1 -1
  147. package/.next/static/chunks/09i1e1zou_kxn.css +2 -0
  148. package/.next/static/chunks/0eajktwdxy7qt.js +1 -0
  149. package/.next/static/chunks/0hqhvq6f83m38.js +1 -0
  150. package/.next/static/chunks/0pf4_9.-8s34p.js +1 -0
  151. package/.next/trace +2 -2
  152. package/.next/trace-build +1 -1
  153. package/app/components/TaskDrawer.tsx +61 -22
  154. package/app/globals.css +12 -1
  155. package/package.json +1 -1
  156. package/.next/server/chunks/ssr/[root-of-the-server]__04e5_8f._.js.map +0 -1
  157. package/.next/server/chunks/ssr/_0kdizff._.js +0 -3
  158. package/.next/server/chunks/ssr/_0kdizff._.js.map +0 -1
  159. package/.next/server/chunks/ssr/app_page_tsx_0es_sk2._.js +0 -3
  160. package/.next/server/chunks/ssr/app_page_tsx_0es_sk2._.js.map +0 -1
  161. package/.next/static/chunks/0aby6p.a03e3n.js +0 -1
  162. package/.next/static/chunks/0elnqam.~nrl2.js +0 -1
  163. package/.next/static/chunks/0lb13~qih~i61.js +0 -1
  164. package/.next/static/chunks/0vu6hg8v.i15e.css +0 -2
  165. /package/.next/static/{-U8Zt1EDSjgyBVIuyhwtS → MBLKeNzIT_BLWGkgUbmPI}/_buildManifest.js +0 -0
  166. /package/.next/static/{-U8Zt1EDSjgyBVIuyhwtS → MBLKeNzIT_BLWGkgUbmPI}/_clientMiddlewareManifest.js +0 -0
  167. /package/.next/static/{-U8Zt1EDSjgyBVIuyhwtS → MBLKeNzIT_BLWGkgUbmPI}/_ssgManifest.js +0 -0
package/.next/trace CHANGED
@@ -1,2 +1,2 @@
1
- [{"name":"generate-buildid","duration":341,"timestamp":194697205035,"id":4,"parentId":1,"tags":{},"startTime":1778566183030,"traceId":"1c8b35d856f4fc78"},{"name":"load-custom-routes","duration":536,"timestamp":194697205528,"id":5,"parentId":1,"tags":{},"startTime":1778566183030,"traceId":"1c8b35d856f4fc78"},{"name":"create-dist-dir","duration":1648,"timestamp":194697206114,"id":6,"parentId":1,"tags":{},"startTime":1778566183031,"traceId":"1c8b35d856f4fc78"},{"name":"clean","duration":564,"timestamp":194697208902,"id":7,"parentId":1,"tags":{},"startTime":1778566183034,"traceId":"1c8b35d856f4fc78"},{"name":"discover-routes","duration":10055,"timestamp":194697313274,"id":8,"parentId":1,"tags":{},"startTime":1778566183138,"traceId":"1c8b35d856f4fc78"},{"name":"create-root-mapping","duration":124,"timestamp":194697323395,"id":9,"parentId":1,"tags":{},"startTime":1778566183148,"traceId":"1c8b35d856f4fc78"},{"name":"generate-route-types","duration":28488,"timestamp":194697325933,"id":10,"parentId":1,"tags":{},"startTime":1778566183151,"traceId":"1c8b35d856f4fc78"},{"name":"public-dir-conflict-check","duration":135,"timestamp":194697354607,"id":11,"parentId":1,"tags":{},"startTime":1778566183179,"traceId":"1c8b35d856f4fc78"},{"name":"generate-routes-manifest","duration":4315,"timestamp":194697354908,"id":12,"parentId":1,"tags":{},"startTime":1778566183180,"traceId":"1c8b35d856f4fc78"},{"name":"run-turbopack","duration":9352503,"timestamp":194697364754,"id":14,"parentId":1,"tags":{},"startTime":1778566183189,"traceId":"1c8b35d856f4fc78"},{"name":"turbopack-build-events","duration":112,"timestamp":194697642766,"id":15,"parentId":1,"tags":{},"startTime":1778566183467,"traceId":"1c8b35d856f4fc78"},{"name":"run-typescript","duration":8219306,"timestamp":194706728763,"id":16,"parentId":1,"tags":{},"startTime":1778566192553,"traceId":"1c8b35d856f4fc78"},{"name":"generate-required-server-files","duration":2831,"timestamp":194714949142,"id":18,"parentId":1,"tags":{},"startTime":1778566200774,"traceId":"1c8b35d856f4fc78"},{"name":"check-static-error-page","duration":19365,"timestamp":194715026306,"id":20,"parentId":19,"tags":{},"startTime":1778566200851,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":436467,"timestamp":194715048239,"id":62,"parentId":22,"tags":{},"startTime":1778566200873,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":456039,"timestamp":194715028785,"id":22,"parentId":19,"tags":{"page":"/_global-error"},"startTime":1778566200853,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":524032,"timestamp":194715048469,"id":64,"parentId":26,"tags":{},"startTime":1778566200873,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":540339,"timestamp":194715032248,"id":26,"parentId":19,"tags":{"page":"/api/auth/logout"},"startTime":1778566200857,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":537969,"timestamp":194715047908,"id":61,"parentId":21,"tags":{},"startTime":1778566200873,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":558454,"timestamp":194715027488,"id":21,"parentId":19,"tags":{"page":"/_not-found"},"startTime":1778566200852,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":541872,"timestamp":194715048512,"id":65,"parentId":27,"tags":{},"startTime":1778566200873,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":558122,"timestamp":194715032363,"id":27,"parentId":19,"tags":{"page":"/api/auth/v3"},"startTime":1778566200857,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":559334,"timestamp":194715048315,"id":63,"parentId":25,"tags":{},"startTime":1778566200873,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":576097,"timestamp":194715031621,"id":25,"parentId":19,"tags":{"page":"/api/auth/login"},"startTime":1778566200856,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":568560,"timestamp":194715048616,"id":68,"parentId":30,"tags":{},"startTime":1778566200873,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":582423,"timestamp":194715034942,"id":30,"parentId":19,"tags":{"page":"/api/hub/broadcast"},"startTime":1778566200860,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":571803,"timestamp":194715048583,"id":67,"parentId":29,"tags":{},"startTime":1778566200873,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":585811,"timestamp":194715034649,"id":29,"parentId":19,"tags":{"page":"/api/hub/auth"},"startTime":1778566200859,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":575565,"timestamp":194715048751,"id":70,"parentId":33,"tags":{},"startTime":1778566200873,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":588910,"timestamp":194715035464,"id":33,"parentId":19,"tags":{"page":"/api/hub/inbox"},"startTime":1778566200860,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":579870,"timestamp":194715048795,"id":71,"parentId":34,"tags":{},"startTime":1778566200873,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":593169,"timestamp":194715035563,"id":34,"parentId":19,"tags":{"page":"/api/hub/license"},"startTime":1778566200860,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":593437,"timestamp":194715048814,"id":72,"parentId":35,"tags":{},"startTime":1778566200874,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":606684,"timestamp":194715035654,"id":35,"parentId":19,"tags":{"page":"/api/hub/messages"},"startTime":1778566200860,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":593766,"timestamp":194715048866,"id":73,"parentId":36,"tags":{},"startTime":1778566200874,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":605920,"timestamp":194715036752,"id":36,"parentId":19,"tags":{"page":"/api/hub/networks"},"startTime":1778566200861,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":594139,"timestamp":194715048651,"id":69,"parentId":32,"tags":{},"startTime":1778566200873,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":607472,"timestamp":194715035342,"id":32,"parentId":19,"tags":{"page":"/api/hub/health"},"startTime":1778566200860,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":598694,"timestamp":194715048885,"id":74,"parentId":37,"tags":{},"startTime":1778566200874,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":610755,"timestamp":194715036963,"id":37,"parentId":19,"tags":{"page":"/api/hub/nodes"},"startTime":1778566200862,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":604799,"timestamp":194715048896,"id":75,"parentId":38,"tags":{},"startTime":1778566200874,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":616634,"timestamp":194715037133,"id":38,"parentId":19,"tags":{"page":"/api/hub/register"},"startTime":1778566200862,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":605010,"timestamp":194715048905,"id":76,"parentId":39,"tags":{},"startTime":1778566200874,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":616718,"timestamp":194715037226,"id":39,"parentId":19,"tags":{"page":"/api/hub/send"},"startTime":1778566200862,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":608892,"timestamp":194715048914,"id":77,"parentId":40,"tags":{},"startTime":1778566200874,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":620550,"timestamp":194715037317,"id":40,"parentId":19,"tags":{"page":"/api/hub/server-logs"},"startTime":1778566200862,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":609289,"timestamp":194715048923,"id":78,"parentId":41,"tags":{},"startTime":1778566200874,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":620854,"timestamp":194715037399,"id":41,"parentId":19,"tags":{"page":"/api/hub/session"},"startTime":1778566200862,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":611524,"timestamp":194715048548,"id":66,"parentId":28,"tags":{},"startTime":1778566200873,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":625589,"timestamp":194715034525,"id":28,"parentId":19,"tags":{"page":"/api/hub/audit-log"},"startTime":1778566200859,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":613141,"timestamp":194715048931,"id":79,"parentId":42,"tags":{},"startTime":1778566200874,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":624618,"timestamp":194715037495,"id":42,"parentId":19,"tags":{"page":"/api/hub/stats"},"startTime":1778566200862,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":613309,"timestamp":194715048940,"id":80,"parentId":43,"tags":{},"startTime":1778566200874,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":624703,"timestamp":194715037568,"id":43,"parentId":19,"tags":{"page":"/api/hub/status"},"startTime":1778566200862,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":615201,"timestamp":194715048948,"id":81,"parentId":44,"tags":{},"startTime":1778566200874,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":626531,"timestamp":194715037654,"id":44,"parentId":19,"tags":{"page":"/api/hub/task-events"},"startTime":1778566200862,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":616319,"timestamp":194715048953,"id":82,"parentId":45,"tags":{},"startTime":1778566200874,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":627585,"timestamp":194715037724,"id":45,"parentId":19,"tags":{"page":"/api/hub/tasks"},"startTime":1778566200862,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":616838,"timestamp":194715048959,"id":83,"parentId":46,"tags":{},"startTime":1778566200874,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":627990,"timestamp":194715037840,"id":46,"parentId":19,"tags":{"page":"/api/hub/tmux"},"startTime":1778566200863,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":618969,"timestamp":194715048965,"id":84,"parentId":47,"tags":{},"startTime":1778566200874,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":630013,"timestamp":194715037956,"id":47,"parentId":19,"tags":{"page":"/api/hub/tokens"},"startTime":1778566200863,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":619156,"timestamp":194715048970,"id":85,"parentId":48,"tags":{},"startTime":1778566200874,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":630101,"timestamp":194715038049,"id":48,"parentId":19,"tags":{"page":"/favicon.ico"},"startTime":1778566200863,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":619928,"timestamp":194715051158,"id":86,"parentId":24,"tags":{},"startTime":1778566200876,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":641969,"timestamp":194715029170,"id":24,"parentId":19,"tags":{"page":"/api/anet/config"},"startTime":1778566200854,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":623620,"timestamp":194715051913,"id":87,"parentId":31,"tags":{},"startTime":1778566200877,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":640490,"timestamp":194715035092,"id":31,"parentId":19,"tags":{"page":"/api/hub/events"},"startTime":1778566200860,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":619261,"timestamp":194715062495,"id":90,"parentId":50,"tags":{},"startTime":1778566200887,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":643233,"timestamp":194715038580,"id":50,"parentId":19,"tags":{"page":"/logs"},"startTime":1778566200863,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":625537,"timestamp":194715062502,"id":91,"parentId":51,"tags":{},"startTime":1778566200887,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":649357,"timestamp":194715038752,"id":51,"parentId":19,"tags":{"page":"/messages"},"startTime":1778566200863,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":638994,"timestamp":194715062511,"id":92,"parentId":52,"tags":{},"startTime":1778566200887,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":662520,"timestamp":194715039072,"id":52,"parentId":19,"tags":{"page":"/node"},"startTime":1778566200864,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":651221,"timestamp":194715062485,"id":89,"parentId":49,"tags":{},"startTime":1778566200887,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":675364,"timestamp":194715038424,"id":49,"parentId":19,"tags":{"page":"/login"},"startTime":1778566200863,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":652206,"timestamp":194715062450,"id":88,"parentId":23,"tags":{},"startTime":1778566200887,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":685728,"timestamp":194715028999,"id":23,"parentId":19,"tags":{"page":"/admin"},"startTime":1778566200854,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":653538,"timestamp":194715062519,"id":93,"parentId":53,"tags":{},"startTime":1778566200887,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":676873,"timestamp":194715039295,"id":53,"parentId":19,"tags":{"page":"/nodes"},"startTime":1778566200864,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":654997,"timestamp":194715062524,"id":94,"parentId":55,"tags":{},"startTime":1778566200887,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":677611,"timestamp":194715039963,"id":55,"parentId":19,"tags":{"page":"/server-logs"},"startTime":1778566200865,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":658699,"timestamp":194715062533,"id":95,"parentId":56,"tags":{},"startTime":1778566200887,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":683824,"timestamp":194715040208,"id":56,"parentId":19,"tags":{"page":"/settings/networks"},"startTime":1778566200866,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":661720,"timestamp":194715062541,"id":96,"parentId":58,"tags":{},"startTime":1778566200887,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":679352,"timestamp":194715044956,"id":58,"parentId":19,"tags":{"page":"/settings/tokens"},"startTime":1778566200870,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":665676,"timestamp":194715062546,"id":97,"parentId":59,"tags":{},"startTime":1778566200887,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":682956,"timestamp":194715045327,"id":59,"parentId":19,"tags":{"page":"/tasks/[id]"},"startTime":1778566200870,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":667910,"timestamp":194715062571,"id":99,"parentId":54,"tags":{},"startTime":1778566200887,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":691027,"timestamp":194715039503,"id":54,"parentId":19,"tags":{"page":"/"},"startTime":1778566200864,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":668042,"timestamp":194715062560,"id":98,"parentId":60,"tags":{},"startTime":1778566200887,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":685153,"timestamp":194715045473,"id":60,"parentId":19,"tags":{"page":"/tasks"},"startTime":1778566200870,"traceId":"1c8b35d856f4fc78"},{"name":"is-page-static","duration":660337,"timestamp":194715074331,"id":100,"parentId":57,"tags":{},"startTime":1778566200899,"traceId":"1c8b35d856f4fc78"},{"name":"check-page","duration":693185,"timestamp":194715041549,"id":57,"parentId":19,"tags":{"page":"/settings"},"startTime":1778566200866,"traceId":"1c8b35d856f4fc78"},{"name":"static-check","duration":709262,"timestamp":194715025517,"id":19,"parentId":1,"tags":{},"startTime":1778566200850,"traceId":"1c8b35d856f4fc78"},{"name":"write-routes-manifest","duration":403,"timestamp":194715742615,"id":102,"parentId":1,"tags":{},"startTime":1778566201567,"traceId":"1c8b35d856f4fc78"},{"name":"load-dotenv","duration":70,"timestamp":194715754888,"id":105,"parentId":104,"tags":{},"startTime":1778566201580,"traceId":"1c8b35d856f4fc78"},{"name":"run-export-path-map","duration":962,"timestamp":194715760981,"id":106,"parentId":104,"tags":{},"startTime":1778566201586,"traceId":"1c8b35d856f4fc78"},{"name":"next-export","duration":641059,"timestamp":194715753628,"id":104,"parentId":1,"tags":{},"startTime":1778566201578,"traceId":"1c8b35d856f4fc78"},{"name":"move-exported-app-not-found-","duration":737,"timestamp":194716398143,"id":107,"parentId":103,"tags":{},"startTime":1778566202223,"traceId":"1c8b35d856f4fc78"},{"name":"move-exported-app-global-error-","duration":623,"timestamp":194716399029,"id":108,"parentId":103,"tags":{},"startTime":1778566202224,"traceId":"1c8b35d856f4fc78"}]
2
- [{"name":"static-generation","duration":656875,"timestamp":194715747234,"id":103,"parentId":1,"tags":{},"startTime":1778566201572,"traceId":"1c8b35d856f4fc78"},{"name":"write-routes-manifest","duration":452,"timestamp":194716404310,"id":109,"parentId":1,"tags":{},"startTime":1778566202229,"traceId":"1c8b35d856f4fc78"},{"name":"print-tree-view","duration":5489,"timestamp":194716417916,"id":110,"parentId":1,"tags":{},"startTime":1778566202243,"traceId":"1c8b35d856f4fc78"},{"name":"write-route-bundle-stats","duration":13098,"timestamp":194716423468,"id":111,"parentId":1,"tags":{},"startTime":1778566202248,"traceId":"1c8b35d856f4fc78"},{"name":"telemetry-flush","duration":19978,"timestamp":194716436616,"id":112,"parentId":1,"tags":{},"startTime":1778566202261,"traceId":"1c8b35d856f4fc78"},{"name":"next-build","duration":19310249,"timestamp":194697146386,"id":1,"tags":{"buildMode":"default","version":"16.2.3","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1778566182971,"traceId":"1c8b35d856f4fc78"}]
1
+ [{"name":"generate-buildid","duration":302,"timestamp":195327368683,"id":4,"parentId":1,"tags":{},"startTime":1778566813193,"traceId":"a837219769495a30"},{"name":"load-custom-routes","duration":528,"timestamp":195327369168,"id":5,"parentId":1,"tags":{},"startTime":1778566813194,"traceId":"a837219769495a30"},{"name":"create-dist-dir","duration":369,"timestamp":195327369744,"id":6,"parentId":1,"tags":{},"startTime":1778566813194,"traceId":"a837219769495a30"},{"name":"clean","duration":556,"timestamp":195327370866,"id":7,"parentId":1,"tags":{},"startTime":1778566813196,"traceId":"a837219769495a30"},{"name":"discover-routes","duration":10417,"timestamp":195327460339,"id":8,"parentId":1,"tags":{},"startTime":1778566813285,"traceId":"a837219769495a30"},{"name":"create-root-mapping","duration":131,"timestamp":195327470826,"id":9,"parentId":1,"tags":{},"startTime":1778566813296,"traceId":"a837219769495a30"},{"name":"generate-route-types","duration":33976,"timestamp":195327473440,"id":10,"parentId":1,"tags":{},"startTime":1778566813298,"traceId":"a837219769495a30"},{"name":"public-dir-conflict-check","duration":107,"timestamp":195327507604,"id":11,"parentId":1,"tags":{},"startTime":1778566813332,"traceId":"a837219769495a30"},{"name":"generate-routes-manifest","duration":4530,"timestamp":195327507842,"id":12,"parentId":1,"tags":{},"startTime":1778566813333,"traceId":"a837219769495a30"},{"name":"run-turbopack","duration":8225726,"timestamp":195327518659,"id":14,"parentId":1,"tags":{},"startTime":1778566813343,"traceId":"a837219769495a30"},{"name":"turbopack-build-events","duration":90,"timestamp":195327816282,"id":15,"parentId":1,"tags":{},"startTime":1778566813641,"traceId":"a837219769495a30"},{"name":"run-typescript","duration":8072967,"timestamp":195335753747,"id":16,"parentId":1,"tags":{},"startTime":1778566821578,"traceId":"a837219769495a30"},{"name":"generate-required-server-files","duration":2137,"timestamp":195343827501,"id":18,"parentId":1,"tags":{},"startTime":1778566829652,"traceId":"a837219769495a30"},{"name":"check-static-error-page","duration":18072,"timestamp":195343908186,"id":20,"parentId":19,"tags":{},"startTime":1778566829733,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":312500,"timestamp":195343929858,"id":62,"parentId":22,"tags":{},"startTime":1778566829755,"traceId":"a837219769495a30"},{"name":"check-page","duration":331982,"timestamp":195343910518,"id":22,"parentId":19,"tags":{"page":"/_global-error"},"startTime":1778566829735,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":414306,"timestamp":195343930118,"id":64,"parentId":26,"tags":{},"startTime":1778566829755,"traceId":"a837219769495a30"},{"name":"check-page","duration":430707,"timestamp":195343913791,"id":26,"parentId":19,"tags":{"page":"/api/auth/logout"},"startTime":1778566829738,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":439266,"timestamp":195343929955,"id":63,"parentId":25,"tags":{},"startTime":1778566829755,"traceId":"a837219769495a30"},{"name":"check-page","duration":455799,"timestamp":195343913494,"id":25,"parentId":19,"tags":{"page":"/api/auth/login"},"startTime":1778566829738,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":445740,"timestamp":195343929577,"id":61,"parentId":21,"tags":{},"startTime":1778566829754,"traceId":"a837219769495a30"},{"name":"check-page","duration":466136,"timestamp":195343909254,"id":21,"parentId":19,"tags":{"page":"/_not-found"},"startTime":1778566829734,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":445523,"timestamp":195343930160,"id":65,"parentId":27,"tags":{},"startTime":1778566829755,"traceId":"a837219769495a30"},{"name":"check-page","duration":461675,"timestamp":195343914039,"id":27,"parentId":19,"tags":{"page":"/api/auth/v3"},"startTime":1778566829739,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":462835,"timestamp":195343930199,"id":66,"parentId":28,"tags":{},"startTime":1778566829755,"traceId":"a837219769495a30"},{"name":"check-page","duration":478855,"timestamp":195343914244,"id":28,"parentId":19,"tags":{"page":"/api/hub/audit-log"},"startTime":1778566829739,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":468973,"timestamp":195343930268,"id":68,"parentId":30,"tags":{},"startTime":1778566829755,"traceId":"a837219769495a30"},{"name":"check-page","duration":484527,"timestamp":195343914788,"id":30,"parentId":19,"tags":{"page":"/api/hub/broadcast"},"startTime":1778566829739,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":473488,"timestamp":195343930301,"id":69,"parentId":32,"tags":{},"startTime":1778566829755,"traceId":"a837219769495a30"},{"name":"check-page","duration":488453,"timestamp":195343915392,"id":32,"parentId":19,"tags":{"page":"/api/hub/health"},"startTime":1778566829740,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":480758,"timestamp":195343930511,"id":71,"parentId":34,"tags":{},"startTime":1778566829755,"traceId":"a837219769495a30"},{"name":"check-page","duration":495551,"timestamp":195343915788,"id":34,"parentId":19,"tags":{"page":"/api/hub/license"},"startTime":1778566829740,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":481087,"timestamp":195343930443,"id":70,"parentId":33,"tags":{},"startTime":1778566829755,"traceId":"a837219769495a30"},{"name":"check-page","duration":495972,"timestamp":195343915588,"id":33,"parentId":19,"tags":{"page":"/api/hub/inbox"},"startTime":1778566829740,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":484981,"timestamp":195343930603,"id":73,"parentId":36,"tags":{},"startTime":1778566829755,"traceId":"a837219769495a30"},{"name":"check-page","duration":498976,"timestamp":195343916652,"id":36,"parentId":19,"tags":{"page":"/api/hub/networks"},"startTime":1778566829741,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":488330,"timestamp":195343930537,"id":72,"parentId":35,"tags":{},"startTime":1778566829755,"traceId":"a837219769495a30"},{"name":"check-page","duration":502918,"timestamp":195343915990,"id":35,"parentId":19,"tags":{"page":"/api/hub/messages"},"startTime":1778566829741,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":490975,"timestamp":195343930624,"id":74,"parentId":37,"tags":{},"startTime":1778566829755,"traceId":"a837219769495a30"},{"name":"check-page","duration":504686,"timestamp":195343916965,"id":37,"parentId":19,"tags":{"page":"/api/hub/nodes"},"startTime":1778566829742,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":497643,"timestamp":195343930638,"id":76,"parentId":39,"tags":{},"startTime":1778566829755,"traceId":"a837219769495a30"},{"name":"check-page","duration":510912,"timestamp":195343917414,"id":39,"parentId":19,"tags":{"page":"/api/hub/send"},"startTime":1778566829742,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":499791,"timestamp":195343930632,"id":75,"parentId":38,"tags":{},"startTime":1778566829755,"traceId":"a837219769495a30"},{"name":"check-page","duration":513252,"timestamp":195343917220,"id":38,"parentId":19,"tags":{"page":"/api/hub/register"},"startTime":1778566829742,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":500999,"timestamp":195343930643,"id":77,"parentId":40,"tags":{},"startTime":1778566829755,"traceId":"a837219769495a30"},{"name":"check-page","duration":514087,"timestamp":195343917595,"id":40,"parentId":19,"tags":{"page":"/api/hub/server-logs"},"startTime":1778566829742,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":505307,"timestamp":195343930654,"id":79,"parentId":42,"tags":{},"startTime":1778566829755,"traceId":"a837219769495a30"},{"name":"check-page","duration":518087,"timestamp":195343917978,"id":42,"parentId":19,"tags":{"page":"/api/hub/stats"},"startTime":1778566829743,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":509274,"timestamp":195343930649,"id":78,"parentId":41,"tags":{},"startTime":1778566829755,"traceId":"a837219769495a30"},{"name":"check-page","duration":522212,"timestamp":195343917765,"id":41,"parentId":19,"tags":{"page":"/api/hub/session"},"startTime":1778566829742,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":509610,"timestamp":195343930660,"id":80,"parentId":43,"tags":{},"startTime":1778566829755,"traceId":"a837219769495a30"},{"name":"check-page","duration":522109,"timestamp":195343918200,"id":43,"parentId":19,"tags":{"page":"/api/hub/status"},"startTime":1778566829743,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":512253,"timestamp":195343930665,"id":81,"parentId":44,"tags":{},"startTime":1778566829755,"traceId":"a837219769495a30"},{"name":"check-page","duration":524588,"timestamp":195343918410,"id":44,"parentId":19,"tags":{"page":"/api/hub/task-events"},"startTime":1778566829743,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":513630,"timestamp":195343930671,"id":82,"parentId":45,"tags":{},"startTime":1778566829755,"traceId":"a837219769495a30"},{"name":"check-page","duration":525748,"timestamp":195343918588,"id":45,"parentId":19,"tags":{"page":"/api/hub/tasks"},"startTime":1778566829743,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":517241,"timestamp":195343930676,"id":83,"parentId":46,"tags":{},"startTime":1778566829755,"traceId":"a837219769495a30"},{"name":"check-page","duration":529108,"timestamp":195343918868,"id":46,"parentId":19,"tags":{"page":"/api/hub/tmux"},"startTime":1778566829744,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":517447,"timestamp":195343930681,"id":84,"parentId":47,"tags":{},"startTime":1778566829755,"traceId":"a837219769495a30"},{"name":"check-page","duration":529093,"timestamp":195343919058,"id":47,"parentId":19,"tags":{"page":"/api/hub/tokens"},"startTime":1778566829744,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":520394,"timestamp":195343930688,"id":85,"parentId":48,"tags":{},"startTime":1778566829755,"traceId":"a837219769495a30"},{"name":"check-page","duration":531843,"timestamp":195343919284,"id":48,"parentId":19,"tags":{"page":"/favicon.ico"},"startTime":1778566829744,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":516016,"timestamp":195343936905,"id":87,"parentId":31,"tags":{},"startTime":1778566829762,"traceId":"a837219769495a30"},{"name":"check-page","duration":537938,"timestamp":195343915018,"id":31,"parentId":19,"tags":{"page":"/api/hub/events"},"startTime":1778566829740,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":517060,"timestamp":195343936148,"id":86,"parentId":24,"tags":{},"startTime":1778566829761,"traceId":"a837219769495a30"},{"name":"check-page","duration":542310,"timestamp":195343910925,"id":24,"parentId":19,"tags":{"page":"/api/anet/config"},"startTime":1778566829736,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":524963,"timestamp":195343930235,"id":67,"parentId":29,"tags":{},"startTime":1778566829755,"traceId":"a837219769495a30"},{"name":"check-page","duration":540775,"timestamp":195343914455,"id":29,"parentId":19,"tags":{"page":"/api/hub/auth"},"startTime":1778566829739,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":500194,"timestamp":195343960553,"id":90,"parentId":50,"tags":{},"startTime":1778566829785,"traceId":"a837219769495a30"},{"name":"check-page","duration":539393,"timestamp":195343921397,"id":50,"parentId":19,"tags":{"page":"/logs"},"startTime":1778566829746,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":505330,"timestamp":195343960562,"id":91,"parentId":51,"tags":{},"startTime":1778566829785,"traceId":"a837219769495a30"},{"name":"check-page","duration":544266,"timestamp":195343921672,"id":51,"parentId":19,"tags":{"page":"/messages"},"startTime":1778566829746,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":513530,"timestamp":195343960570,"id":92,"parentId":52,"tags":{},"startTime":1778566829785,"traceId":"a837219769495a30"},{"name":"check-page","duration":552257,"timestamp":195343921904,"id":52,"parentId":19,"tags":{"page":"/node"},"startTime":1778566829747,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":516045,"timestamp":195343960574,"id":93,"parentId":53,"tags":{},"startTime":1778566829785,"traceId":"a837219769495a30"},{"name":"check-page","duration":554518,"timestamp":195343922143,"id":53,"parentId":19,"tags":{"page":"/nodes"},"startTime":1778566829747,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":521368,"timestamp":195343960583,"id":94,"parentId":55,"tags":{},"startTime":1778566829785,"traceId":"a837219769495a30"},{"name":"check-page","duration":559124,"timestamp":195343922872,"id":55,"parentId":19,"tags":{"page":"/server-logs"},"startTime":1778566829748,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":526852,"timestamp":195343960591,"id":95,"parentId":56,"tags":{},"startTime":1778566829785,"traceId":"a837219769495a30"},{"name":"check-page","duration":564422,"timestamp":195343923080,"id":56,"parentId":19,"tags":{"page":"/settings/networks"},"startTime":1778566829748,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":532230,"timestamp":195343960499,"id":88,"parentId":23,"tags":{},"startTime":1778566829785,"traceId":"a837219769495a30"},{"name":"check-page","duration":582006,"timestamp":195343910769,"id":23,"parentId":19,"tags":{"page":"/admin"},"startTime":1778566829735,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":532674,"timestamp":195343960596,"id":96,"parentId":58,"tags":{},"startTime":1778566829785,"traceId":"a837219769495a30"},{"name":"check-page","duration":569636,"timestamp":195343923676,"id":58,"parentId":19,"tags":{"page":"/settings/tokens"},"startTime":1778566829748,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":534366,"timestamp":195343960545,"id":89,"parentId":49,"tags":{},"startTime":1778566829785,"traceId":"a837219769495a30"},{"name":"check-page","duration":573844,"timestamp":195343921106,"id":49,"parentId":19,"tags":{"page":"/login"},"startTime":1778566829746,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":540415,"timestamp":195343960626,"id":99,"parentId":57,"tags":{},"startTime":1778566829785,"traceId":"a837219769495a30"},{"name":"check-page","duration":577801,"timestamp":195343923292,"id":57,"parentId":19,"tags":{"page":"/settings"},"startTime":1778566829748,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":542593,"timestamp":195343960604,"id":97,"parentId":59,"tags":{},"startTime":1778566829785,"traceId":"a837219769495a30"},{"name":"check-page","duration":577468,"timestamp":195343925783,"id":59,"parentId":19,"tags":{"page":"/tasks/[id]"},"startTime":1778566829750,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":543307,"timestamp":195343960617,"id":98,"parentId":60,"tags":{},"startTime":1778566829785,"traceId":"a837219769495a30"},{"name":"check-page","duration":577975,"timestamp":195343925988,"id":60,"parentId":19,"tags":{"page":"/tasks"},"startTime":1778566829751,"traceId":"a837219769495a30"},{"name":"is-page-static","duration":546201,"timestamp":195343960635,"id":100,"parentId":54,"tags":{},"startTime":1778566829785,"traceId":"a837219769495a30"},{"name":"check-page","duration":584491,"timestamp":195343922380,"id":54,"parentId":19,"tags":{"page":"/"},"startTime":1778566829747,"traceId":"a837219769495a30"},{"name":"static-check","duration":599679,"timestamp":195343907238,"id":19,"parentId":1,"tags":{},"startTime":1778566829732,"traceId":"a837219769495a30"},{"name":"write-routes-manifest","duration":464,"timestamp":195344513752,"id":102,"parentId":1,"tags":{},"startTime":1778566830338,"traceId":"a837219769495a30"},{"name":"load-dotenv","duration":46,"timestamp":195344526664,"id":105,"parentId":104,"tags":{},"startTime":1778566830351,"traceId":"a837219769495a30"},{"name":"run-export-path-map","duration":734,"timestamp":195344529708,"id":106,"parentId":104,"tags":{},"startTime":1778566830354,"traceId":"a837219769495a30"},{"name":"next-export","duration":571157,"timestamp":195344525486,"id":104,"parentId":1,"tags":{},"startTime":1778566830350,"traceId":"a837219769495a30"},{"name":"move-exported-app-not-found-","duration":625,"timestamp":195345099949,"id":107,"parentId":103,"tags":{},"startTime":1778566830925,"traceId":"a837219769495a30"},{"name":"move-exported-app-global-error-","duration":424,"timestamp":195345100672,"id":108,"parentId":103,"tags":{},"startTime":1778566830925,"traceId":"a837219769495a30"}]
2
+ [{"name":"static-generation","duration":585516,"timestamp":195344519842,"id":103,"parentId":1,"tags":{},"startTime":1778566830345,"traceId":"a837219769495a30"},{"name":"write-routes-manifest","duration":427,"timestamp":195345105549,"id":109,"parentId":1,"tags":{},"startTime":1778566830930,"traceId":"a837219769495a30"},{"name":"print-tree-view","duration":6349,"timestamp":195345114395,"id":110,"parentId":1,"tags":{},"startTime":1778566830939,"traceId":"a837219769495a30"},{"name":"write-route-bundle-stats","duration":16982,"timestamp":195345120793,"id":111,"parentId":1,"tags":{},"startTime":1778566830945,"traceId":"a837219769495a30"},{"name":"telemetry-flush","duration":20357,"timestamp":195345137817,"id":112,"parentId":1,"tags":{},"startTime":1778566830963,"traceId":"a837219769495a30"},{"name":"next-build","duration":17837445,"timestamp":195327320773,"id":1,"tags":{"buildMode":"default","version":"16.2.3","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1778566813145,"traceId":"a837219769495a30"}]
package/.next/trace-build CHANGED
@@ -1 +1 @@
1
- [{"name":"run-turbopack","duration":9352503,"timestamp":194697364754,"id":14,"parentId":1,"tags":{},"startTime":1778566183189,"traceId":"1c8b35d856f4fc78"},{"name":"turbopack-build-events","duration":112,"timestamp":194697642766,"id":15,"parentId":1,"tags":{},"startTime":1778566183467,"traceId":"1c8b35d856f4fc78"},{"name":"run-typescript","duration":8219306,"timestamp":194706728763,"id":16,"parentId":1,"tags":{},"startTime":1778566192553,"traceId":"1c8b35d856f4fc78"},{"name":"static-check","duration":709262,"timestamp":194715025517,"id":19,"parentId":1,"tags":{},"startTime":1778566200850,"traceId":"1c8b35d856f4fc78"},{"name":"static-generation","duration":656875,"timestamp":194715747234,"id":103,"parentId":1,"tags":{},"startTime":1778566201572,"traceId":"1c8b35d856f4fc78"},{"name":"telemetry-flush","duration":19978,"timestamp":194716436616,"id":112,"parentId":1,"tags":{},"startTime":1778566202261,"traceId":"1c8b35d856f4fc78"},{"name":"next-build","duration":19310249,"timestamp":194697146386,"id":1,"tags":{"buildMode":"default","version":"16.2.3","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1778566182971,"traceId":"1c8b35d856f4fc78"}]
1
+ [{"name":"run-turbopack","duration":8225726,"timestamp":195327518659,"id":14,"parentId":1,"tags":{},"startTime":1778566813343,"traceId":"a837219769495a30"},{"name":"turbopack-build-events","duration":90,"timestamp":195327816282,"id":15,"parentId":1,"tags":{},"startTime":1778566813641,"traceId":"a837219769495a30"},{"name":"run-typescript","duration":8072967,"timestamp":195335753747,"id":16,"parentId":1,"tags":{},"startTime":1778566821578,"traceId":"a837219769495a30"},{"name":"static-check","duration":599679,"timestamp":195343907238,"id":19,"parentId":1,"tags":{},"startTime":1778566829732,"traceId":"a837219769495a30"},{"name":"static-generation","duration":585516,"timestamp":195344519842,"id":103,"parentId":1,"tags":{},"startTime":1778566830345,"traceId":"a837219769495a30"},{"name":"telemetry-flush","duration":20357,"timestamp":195345137817,"id":112,"parentId":1,"tags":{},"startTime":1778566830963,"traceId":"a837219769495a30"},{"name":"next-build","duration":17837445,"timestamp":195327320773,"id":1,"tags":{"buildMode":"default","version":"16.2.3","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1778566813145,"traceId":"a837219769495a30"}]
@@ -58,12 +58,20 @@ export function TaskDrawer({ taskId, onClose }: TaskDrawerProps) {
58
58
  })();
59
59
  }, [taskId]);
60
60
 
61
+ /** Timeline steps — same 4 hops every task goes through. `time` is set
62
+ * when the hop has happened; missing time means pending. Round 36 adds
63
+ * `key` for the "current step" highlight + the `done` flag for layout. */
61
64
  const timeline = task ? [
62
- { label: 'Created', time: task.created_at, color: 'bg-gray-400' },
63
- { label: 'Delivered', time: task.delivered_at, color: 'bg-blue-400' },
64
- { label: 'Started', time: task.started_at, color: 'bg-green-400' },
65
- { label: 'Completed', time: task.completed_at, color: 'bg-purple-400' },
66
- ] : [];
65
+ { key: 'created', label: 'Created', time: task.created_at, color: 'bg-gray-400' },
66
+ { key: 'delivered', label: 'Delivered', time: task.delivered_at, color: 'bg-blue-400' },
67
+ { key: 'started', label: 'Started', time: task.started_at, color: 'bg-green-400' },
68
+ { key: 'completed', label: 'Completed', time: task.completed_at, color: 'bg-purple-400'},
69
+ ].map(s => ({ ...s, done: !!s.time })) : [];
70
+
71
+ /** Index of the highest-completed step. The step *after* this index is
72
+ * the "current" one (in-progress). When all are done, currentIdx = -1. */
73
+ const currentStepIdx = timeline.findIndex(s => !s.done);
74
+ const isActive = task && task.status !== 'completed' && task.status !== 'failed' && task.status !== 'expired' && task.status !== 'cancelled';
67
75
 
68
76
  const duration = task?.started_at && task?.completed_at
69
77
  ? Math.round((new Date(task.completed_at).getTime() - new Date(task.started_at).getTime()) / 1000)
@@ -112,22 +120,57 @@ export function TaskDrawer({ taskId, onClose }: TaskDrawerProps) {
112
120
  <span className="text-cyan-400 font-medium">{task.to_name || '--'}</span>
113
121
  </div>
114
122
 
115
- {/* Timeline */}
123
+ {/* Timeline — round 36 polish: relative timestamps, current-step
124
+ pulse if task is still in flight, full ISO in title=. */}
116
125
  <div className="bg-[#111128] border border-[#2a2a4a] rounded-xl p-4">
117
- <div className="text-xs text-gray-500 uppercase mb-3">Timeline</div>
126
+ <div className="flex items-center justify-between mb-3">
127
+ <div className="text-xs text-gray-500 uppercase tracking-wide">Timeline</div>
128
+ {duration !== null && (
129
+ <div className="text-[10px] text-gray-600">
130
+ {duration < 60 ? `${duration}s` : `${Math.floor(duration/60)}m ${duration%60}s`} runtime
131
+ </div>
132
+ )}
133
+ </div>
118
134
  <div className="space-y-3">
119
- {timeline.map((step, i) => (
120
- <div key={step.label} className="flex items-center gap-3">
121
- <div className="flex flex-col items-center">
122
- <div className={`w-3 h-3 rounded-full ${step.time ? step.color : 'bg-gray-700'}`} />
123
- {i < timeline.length - 1 && <div className={`w-0.5 h-4 mt-1 ${step.time && timeline[i+1]?.time ? 'bg-gray-600' : 'bg-gray-800'}`} />}
135
+ {timeline.map((step, i) => {
136
+ const isCurrent = isActive && i === currentStepIdx;
137
+ const isNextDone = !!timeline[i+1]?.done;
138
+ return (
139
+ <div key={step.key} className="flex items-start gap-3">
140
+ <div className="flex flex-col items-center pt-0.5">
141
+ <span
142
+ className={`relative w-3 h-3 rounded-full shrink-0 ${
143
+ step.done ? step.color : 'bg-gray-700'
144
+ }`}
145
+ >
146
+ {isCurrent && (
147
+ <span
148
+ aria-hidden
149
+ className="absolute -inset-1 rounded-full border border-current opacity-60 anet-current-step-pulse"
150
+ style={{ borderColor: 'currentColor' }}
151
+ />
152
+ )}
153
+ </span>
154
+ {i < timeline.length - 1 && (
155
+ <div className={`w-0.5 h-5 mt-1 ${
156
+ step.done && isNextDone ? 'bg-gray-500' : step.done ? 'bg-gradient-to-b from-gray-500 to-gray-800' : 'bg-gray-800'
157
+ }`} />
158
+ )}
159
+ </div>
160
+ <div className="flex-1 min-w-0">
161
+ <div className={`text-xs font-medium flex items-center gap-2 ${
162
+ step.done ? 'text-gray-200' : isCurrent ? 'text-cyan-300' : 'text-gray-600'
163
+ }`}>
164
+ <span>{step.label}</span>
165
+ {isCurrent && <span className="text-[9px] uppercase tracking-wide text-cyan-400">in&nbsp;progress</span>}
166
+ </div>
167
+ <div className="text-[10px] text-gray-500" title={step.time || undefined}>
168
+ {step.time ? timeAgo(step.time) : isCurrent ? '—' : 'Pending'}
169
+ </div>
170
+ </div>
124
171
  </div>
125
- <div className="flex-1">
126
- <div className={`text-xs font-medium ${step.time ? 'text-gray-300' : 'text-gray-600'}`}>{step.label}</div>
127
- <div className="text-[10px] text-gray-500">{step.time || 'Pending'}</div>
128
- </div>
129
- </div>
130
- ))}
172
+ );
173
+ })}
131
174
  </div>
132
175
  </div>
133
176
 
@@ -172,10 +215,6 @@ export function TaskDrawer({ taskId, onClose }: TaskDrawerProps) {
172
215
  </div>
173
216
  )}
174
217
  </div>
175
- <style jsx global>{`
176
- @keyframes slide-in { from { transform: translateX(100%); } to { transform: translateX(0); } }
177
- .animate-slide-in { animation: slide-in 0.2s ease-out; }
178
- `}</style>
179
218
  </>
180
219
  );
181
220
  }
package/app/globals.css CHANGED
@@ -828,6 +828,16 @@ body {
828
828
  }
829
829
  .anet-fade-in { animation: anet-fade-in 0.15s ease-out; }
830
830
 
831
+ /* Round 36 — current-step ring pulse on TaskDrawer timeline. Halo gently
832
+ breathes around the active step's dot so users can spot "task is here". */
833
+ @keyframes anet-current-step-pulse-kf {
834
+ 0%, 100% { transform: scale(1); opacity: 0.6; }
835
+ 50% { transform: scale(1.25); opacity: 0.0; }
836
+ }
837
+ .anet-current-step-pulse {
838
+ animation: anet-current-step-pulse-kf 1.6s ease-in-out infinite;
839
+ }
840
+
831
841
  /* ─────────────────────────────────────────────────────────────────────
832
842
  Round 29 — prefers-reduced-motion a11y sweep
833
843
 
@@ -859,7 +869,8 @@ body {
859
869
  }
860
870
  /* Drawer entrance kills — keyframes promoted to globals in r30. */
861
871
  .animate-slide-in,
862
- .anet-fade-in {
872
+ .anet-fade-in,
873
+ .anet-current-step-pulse {
863
874
  animation: none !important;
864
875
  }
865
876
  /* Tasks row grid 0fr↔1fr keep working (it's the toggle mechanism),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sleep2agi/agent-network-dashboard",
3
- "version": "0.4.5-preview.19",
3
+ "version": "0.4.5-preview.20",
4
4
  "description": "Agent Network Dashboard — Web UI for managing AI Agent networks",
5
5
  "scripts": {
6
6
  "dev": "next dev",
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../app/components/utils.ts","../../../../app/components/AliasAvatar.tsx","../../../../app/components/EmptyState.tsx","../../../../app/lib/hooks.ts","../../../../node_modules/styled-jsx/dist/index/index.js","../../../../node_modules/styled-jsx/style.js"],"sourcesContent":["export function timeAgo(dateStr: string): string {\n if (!dateStr) return '--';\n const diff = Date.now() - new Date(dateStr.replace(' ', 'T') + 'Z').getTime();\n const s = Math.floor(diff / 1000);\n if (s < 60) return `${s}s ago`;\n if (s < 3600) return `${Math.floor(s / 60)}m ago`;\n if (s < 86400) return `${Math.floor(s / 3600)}h ago`;\n return `${Math.floor(s / 86400)}d ago`;\n}\n\nexport function statusColor(status: string, hasSse: boolean): string {\n if (hasSse && status === 'working') return 'bg-green-500';\n if (hasSse && status === 'idle') return 'bg-emerald-400';\n if (hasSse) return 'bg-blue-400';\n if (status === 'offline') return 'bg-gray-500';\n return 'bg-yellow-400';\n}\n\nexport function formatUptime(seconds: number): string {\n const h = Math.floor(seconds / 3600);\n const m = Math.floor((seconds % 3600) / 60);\n if (h > 0) return `${h}h ${m}m`;\n return `${m}m`;\n}\n","/** Hue-hashed avatar pill for agent aliases. Same alias → same color across\n * every page (Messages, Nodes, TopoGraph). Use the `size` prop for inline\n * pills (16/20) vs card headers (28). Round 21 introduced the palette;\n * round 22 promotes it from app/messages to a shared component. */\n\nconst AVATAR_HUES = [180, 200, 220, 270, 300, 330, 30, 90];\n\nexport function aliasAvatarColors(alias: string): { bg: string; ring: string; text: string } {\n let h = 0;\n for (let i = 0; i < alias.length; i++) h = (h * 31 + alias.charCodeAt(i)) >>> 0;\n const hue = AVATAR_HUES[h % AVATAR_HUES.length];\n return {\n bg: `hsl(${hue} 55% 22%)`,\n ring: `hsl(${hue} 60% 45%)`,\n text: `hsl(${hue} 80% 78%)`,\n };\n}\n\nexport function aliasInitial(alias?: string): string {\n if (!alias) return '·';\n const ch = alias.trim().match(/[\\p{L}\\p{N}]/u)?.[0] || alias.trim()[0] || '·';\n return ch.toUpperCase();\n}\n\ninterface AliasAvatarProps {\n alias: string;\n size?: number;\n className?: string;\n}\n\nexport function AliasAvatar({ alias, size = 28, className = '' }: AliasAvatarProps) {\n const c = aliasAvatarColors(alias);\n const fs = Math.max(9, Math.round(size * 0.42));\n return (\n <span\n className={`anet-alias-avatar inline-flex items-center justify-center rounded-full border shrink-0 font-semibold ${className}`}\n style={{\n width: size,\n height: size,\n fontSize: fs,\n backgroundColor: c.bg,\n borderColor: c.ring,\n color: c.text,\n }}\n title={alias}\n aria-hidden\n >\n {aliasInitial(alias)}\n </span>\n );\n}\n","'use client';\n\nimport Link from 'next/link';\n\nexport type EmptyVariant = 'nodes' | 'tasks' | 'messages' | 'logs' | 'tokens' | 'networks' | 'generic';\n\ninterface EmptyStateProps {\n /** Picks the icon glyph and default copy if title/sub omitted. */\n variant?: EmptyVariant;\n /** Optional override headline. */\n title?: string;\n /** Optional override sub-copy. */\n sub?: string;\n /** Optional CTA: text + href (internal) or onClick. */\n cta?: { label: string; href?: string; onClick?: () => void };\n /** Compact mode for in-card empty states (smaller padding). */\n compact?: boolean;\n}\n\nconst DEFAULTS: Record<EmptyVariant, { title: string; sub: string }> = {\n nodes: { title: 'No agents in this network', sub: 'Agent sessions will appear here once they connect to the CommHub.' },\n tasks: { title: 'No tasks yet', sub: 'Tasks will appear here when agents send them via CommHub.' },\n messages: { title: 'No messages', sub: 'Messages between agents will appear here.' },\n logs: { title: 'No audit logs', sub: 'Events will appear here when users register, login, or perform actions.' },\n tokens: { title: 'No API tokens', sub: 'Create one to authenticate CLI tools and external integrations.' },\n networks: { title: 'No networks found', sub: 'Create one or sign in with V3 auth to see your networks.' },\n generic: { title: 'Nothing here yet', sub: 'Data will appear here once available.' },\n};\n\n/**\n * Minimal monochrome SVG glyphs per variant. No filled shapes, no gradients,\n * no AI-decoration — just thin-stroke line art that fades into the page.\n * 64×64 viewBox; rendered at 56×56 (compact 40×40).\n */\nfunction Glyph({ variant, size }: { variant: EmptyVariant; size: number }) {\n const s = { width: size, height: size };\n const baseProps = {\n fill: 'none',\n stroke: 'currentColor',\n strokeWidth: 1.25,\n strokeLinecap: 'round' as const,\n strokeLinejoin: 'round' as const,\n };\n\n switch (variant) {\n case 'nodes':\n // Mesh with dashed edges = \"nodes will land here\"\n return (\n <svg viewBox=\"0 0 64 64\" {...s}>\n <g {...baseProps}>\n <circle cx=\"32\" cy=\"14\" r=\"4\" />\n <circle cx=\"14\" cy=\"44\" r=\"4\" />\n <circle cx=\"50\" cy=\"44\" r=\"4\" />\n <line x1=\"32\" y1=\"18\" x2=\"14\" y2=\"40\" strokeDasharray=\"3 3\" opacity=\"0.6\" />\n <line x1=\"32\" y1=\"18\" x2=\"50\" y2=\"40\" strokeDasharray=\"3 3\" opacity=\"0.6\" />\n <line x1=\"18\" y1=\"44\" x2=\"46\" y2=\"44\" strokeDasharray=\"3 3\" opacity=\"0.6\" />\n </g>\n </svg>\n );\n case 'tasks':\n // Empty checkbox list\n return (\n <svg viewBox=\"0 0 64 64\" {...s}>\n <g {...baseProps}>\n <rect x=\"14\" y=\"14\" width=\"36\" height=\"6\" rx=\"1.5\" />\n <rect x=\"14\" y=\"26\" width=\"36\" height=\"6\" rx=\"1.5\" opacity=\"0.6\" />\n <rect x=\"14\" y=\"38\" width=\"36\" height=\"6\" rx=\"1.5\" opacity=\"0.35\" />\n </g>\n </svg>\n );\n case 'messages':\n // Speech bubble outline\n return (\n <svg viewBox=\"0 0 64 64\" {...s}>\n <g {...baseProps}>\n <path d=\"M14 18 h36 a3 3 0 0 1 3 3 v18 a3 3 0 0 1 -3 3 h-18 l-8 6 v-6 h-10 a3 3 0 0 1 -3 -3 v-18 a3 3 0 0 1 3 -3 z\" />\n <line x1=\"22\" y1=\"28\" x2=\"42\" y2=\"28\" opacity=\"0.5\" />\n <line x1=\"22\" y1=\"34\" x2=\"36\" y2=\"34\" opacity=\"0.5\" />\n </g>\n </svg>\n );\n case 'logs':\n // Document with lines\n return (\n <svg viewBox=\"0 0 64 64\" {...s}>\n <g {...baseProps}>\n <path d=\"M18 12 h22 l8 8 v32 a2 2 0 0 1 -2 2 h-28 a2 2 0 0 1 -2 -2 v-38 a2 2 0 0 1 2 -2 z\" />\n <path d=\"M40 12 v8 h8\" opacity=\"0.6\" />\n <line x1=\"24\" y1=\"32\" x2=\"40\" y2=\"32\" opacity=\"0.55\" />\n <line x1=\"24\" y1=\"38\" x2=\"40\" y2=\"38\" opacity=\"0.4\" />\n <line x1=\"24\" y1=\"44\" x2=\"34\" y2=\"44\" opacity=\"0.25\" />\n </g>\n </svg>\n );\n case 'tokens':\n // Key outline\n return (\n <svg viewBox=\"0 0 64 64\" {...s}>\n <g {...baseProps}>\n <circle cx=\"22\" cy=\"32\" r=\"8\" />\n <line x1=\"30\" y1=\"32\" x2=\"54\" y2=\"32\" />\n <line x1=\"44\" y1=\"32\" x2=\"44\" y2=\"38\" />\n <line x1=\"50\" y1=\"32\" x2=\"50\" y2=\"40\" />\n </g>\n </svg>\n );\n case 'networks':\n // Globe-ish concentric ovals\n return (\n <svg viewBox=\"0 0 64 64\" {...s}>\n <g {...baseProps}>\n <circle cx=\"32\" cy=\"32\" r=\"18\" />\n <ellipse cx=\"32\" cy=\"32\" rx=\"18\" ry=\"9\" opacity=\"0.55\" />\n <line x1=\"14\" y1=\"32\" x2=\"50\" y2=\"32\" opacity=\"0.55\" />\n <line x1=\"32\" y1=\"14\" x2=\"32\" y2=\"50\" opacity=\"0.55\" />\n </g>\n </svg>\n );\n case 'generic':\n default:\n // Soft sparkle outline\n return (\n <svg viewBox=\"0 0 64 64\" {...s}>\n <g {...baseProps}>\n <circle cx=\"32\" cy=\"32\" r=\"14\" strokeDasharray=\"3 3\" opacity=\"0.6\" />\n <circle cx=\"32\" cy=\"32\" r=\"3\" />\n </g>\n </svg>\n );\n }\n}\n\nexport function EmptyState({ variant = 'generic', title, sub, cta, compact = false }: EmptyStateProps) {\n const d = DEFAULTS[variant];\n const headline = title ?? d.title;\n const subcopy = sub ?? d.sub;\n const iconSize = compact ? 40 : 56;\n\n return (\n <div className={`text-center ${compact ? 'py-8' : 'py-16'} px-4`} role=\"status\">\n <div className=\"anet-empty-glyph inline-flex items-center justify-center mb-4 text-gray-500\" aria-hidden>\n <Glyph variant={variant} size={iconSize} />\n </div>\n <h3 className={`font-medium text-gray-300 ${compact ? 'text-sm' : 'text-base'}`}>{headline}</h3>\n {subcopy && (\n <p className={`text-gray-500 ${compact ? 'text-xs mt-1.5' : 'text-sm mt-2'} max-w-md mx-auto leading-relaxed`}>\n {subcopy}\n </p>\n )}\n {cta && (\n <div className=\"mt-4\">\n {cta.href ? (\n <Link href={cta.href} className=\"inline-flex items-center gap-1.5 text-sm font-medium text-cyan-400 hover:text-cyan-300\">\n {cta.label}\n <span aria-hidden>→</span>\n </Link>\n ) : (\n <button onClick={cta.onClick} className=\"inline-flex items-center gap-1.5 text-sm font-medium text-cyan-400 hover:text-cyan-300\">\n {cta.label}\n <span aria-hidden>→</span>\n </button>\n )}\n </div>\n )}\n </div>\n );\n}\n\n/**\n * Overview-specific variant with a hint about cross-network global count.\n * Kept here so /app/page.tsx can drop in without ceremony.\n */\nexport function NodesEmptyState({ hint }: { hint?: { global_count?: number; filtered_network?: string } }) {\n if (hint?.global_count) {\n return (\n <EmptyState\n variant=\"nodes\"\n title=\"No agents in this network\"\n sub={`Server has ${hint.global_count} nodes globally, but none are registered to the current network. Switch network or contact admin.`}\n />\n );\n }\n return (\n <EmptyState\n variant=\"nodes\"\n cta={{ label: 'Run anet quickstart', href: 'https://anet.sh' }}\n />\n );\n}\n","import useSWR from 'swr';\nimport { Session, Health, AnetConfig } from '../components/types';\nimport { useNetworkId } from './network-context';\n\nconst fetcher = async (url: string) => {\n const res = await fetch(url);\n if (res.status === 401) {\n window.location.assign('/login');\n throw new Error('unauthorized');\n }\n return res.json();\n};\n\nconst SWR_OPTIONS = { refreshInterval: 5000, dedupingInterval: 3000 };\n\n/** Append network_id to URL if set */\nfunction withNetwork(url: string, networkId: string): string {\n if (!networkId) return url;\n const sep = url.includes('?') ? '&' : '?';\n return `${url}${sep}network_id=${encodeURIComponent(networkId)}`;\n}\n\nexport function useSessions() {\n const { networkId } = useNetworkId();\n const { data, error, isLoading } = useSWR<{ sessions: Session[]; _hint?: { global_count?: number; filtered_network?: string } }>(\n withNetwork('/api/hub/status', networkId),\n fetcher,\n SWR_OPTIONS,\n );\n return { sessions: data?.sessions || [], hint: data?._hint, error, isLoading };\n}\n\nexport function useHealth() {\n const { data, error } = useSWR<Health>('/api/hub/health', fetcher, SWR_OPTIONS);\n return { health: data || null, error };\n}\n\nexport function useAnetConfig() {\n const { data } = useSWR<AnetConfig>('/api/anet/config', fetcher, { refreshInterval: 30000 });\n return { config: data || null };\n}\n\nexport function useTasks(params?: Record<string, string>) {\n const { networkId } = useNetworkId();\n const query = new URLSearchParams({ limit: '100', ...params }).toString();\n const { data, error, isLoading } = useSWR(\n withNetwork(`/api/hub/tasks?${query}`, networkId),\n fetcher,\n SWR_OPTIONS,\n );\n return {\n tasks: data?.tasks || [],\n count: data?.count ?? 0,\n source: data?.source,\n error,\n isLoading,\n };\n}\n\nexport function useStats() {\n const { networkId } = useNetworkId();\n const { data, error } = useSWR(withNetwork('/api/hub/stats', networkId), fetcher, SWR_OPTIONS);\n return { stats: data?.ok ? data : null, error };\n}\n\nexport function useLicense() {\n const { data, error } = useSWR('/api/hub/license', fetcher, { refreshInterval: 60000 });\n return { license: data?.ok ? data : null, error };\n}\n\nexport function useMessages(limit = 100) {\n const { networkId } = useNetworkId();\n const { data, error, isLoading } = useSWR(\n withNetwork(`/api/hub/messages?limit=${limit}`, networkId),\n fetcher,\n SWR_OPTIONS,\n );\n return { messages: data?.messages || [], error, isLoading };\n}\n\nexport function useNodeSession(alias: string) {\n const { data, error, isLoading } = useSWR(\n alias ? `/api/hub/session?alias=${encodeURIComponent(alias)}` : null,\n fetcher,\n SWR_OPTIONS,\n );\n return {\n session: data?.session || null,\n inbox: data?.inbox || [],\n sse: data?.sse || 0,\n error,\n isLoading,\n };\n}\n","require('client-only');\nvar React = require('react');\n\nfunction _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }\n\nvar React__default = /*#__PURE__*/_interopDefaultLegacy(React);\n\n/*\nBased on Glamor's sheet\nhttps://github.com/threepointone/glamor/blob/667b480d31b3721a905021b26e1290ce92ca2879/src/sheet.js\n*/ function _defineProperties(target, props) {\n for(var i = 0; i < props.length; i++){\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\nvar isProd = typeof process !== \"undefined\" && process.env && process.env.NODE_ENV === \"production\";\nvar isString = function(o) {\n return Object.prototype.toString.call(o) === \"[object String]\";\n};\nvar StyleSheet = /*#__PURE__*/ function() {\n function StyleSheet(param) {\n var ref = param === void 0 ? {} : param, _name = ref.name, name = _name === void 0 ? \"stylesheet\" : _name, _optimizeForSpeed = ref.optimizeForSpeed, optimizeForSpeed = _optimizeForSpeed === void 0 ? isProd : _optimizeForSpeed;\n invariant$1(isString(name), \"`name` must be a string\");\n this._name = name;\n this._deletedRulePlaceholder = \"#\" + name + \"-deleted-rule____{}\";\n invariant$1(typeof optimizeForSpeed === \"boolean\", \"`optimizeForSpeed` must be a boolean\");\n this._optimizeForSpeed = optimizeForSpeed;\n this._serverSheet = undefined;\n this._tags = [];\n this._injected = false;\n this._rulesCount = 0;\n var node = typeof window !== \"undefined\" && document.querySelector('meta[property=\"csp-nonce\"]');\n this._nonce = node ? node.getAttribute(\"content\") : null;\n }\n var _proto = StyleSheet.prototype;\n _proto.setOptimizeForSpeed = function setOptimizeForSpeed(bool) {\n invariant$1(typeof bool === \"boolean\", \"`setOptimizeForSpeed` accepts a boolean\");\n invariant$1(this._rulesCount === 0, \"optimizeForSpeed cannot be when rules have already been inserted\");\n this.flush();\n this._optimizeForSpeed = bool;\n this.inject();\n };\n _proto.isOptimizeForSpeed = function isOptimizeForSpeed() {\n return this._optimizeForSpeed;\n };\n _proto.inject = function inject() {\n var _this = this;\n invariant$1(!this._injected, \"sheet already injected\");\n this._injected = true;\n if (typeof window !== \"undefined\" && this._optimizeForSpeed) {\n this._tags[0] = this.makeStyleTag(this._name);\n this._optimizeForSpeed = \"insertRule\" in this.getSheet();\n if (!this._optimizeForSpeed) {\n if (!isProd) {\n console.warn(\"StyleSheet: optimizeForSpeed mode not supported falling back to standard mode.\");\n }\n this.flush();\n this._injected = true;\n }\n return;\n }\n this._serverSheet = {\n cssRules: [],\n insertRule: function(rule, index) {\n if (typeof index === \"number\") {\n _this._serverSheet.cssRules[index] = {\n cssText: rule\n };\n } else {\n _this._serverSheet.cssRules.push({\n cssText: rule\n });\n }\n return index;\n },\n deleteRule: function(index) {\n _this._serverSheet.cssRules[index] = null;\n }\n };\n };\n _proto.getSheetForTag = function getSheetForTag(tag) {\n if (tag.sheet) {\n return tag.sheet;\n }\n // this weirdness brought to you by firefox\n for(var i = 0; i < document.styleSheets.length; i++){\n if (document.styleSheets[i].ownerNode === tag) {\n return document.styleSheets[i];\n }\n }\n };\n _proto.getSheet = function getSheet() {\n return this.getSheetForTag(this._tags[this._tags.length - 1]);\n };\n _proto.insertRule = function insertRule(rule, index) {\n invariant$1(isString(rule), \"`insertRule` accepts only strings\");\n if (typeof window === \"undefined\") {\n if (typeof index !== \"number\") {\n index = this._serverSheet.cssRules.length;\n }\n this._serverSheet.insertRule(rule, index);\n return this._rulesCount++;\n }\n if (this._optimizeForSpeed) {\n var sheet = this.getSheet();\n if (typeof index !== \"number\") {\n index = sheet.cssRules.length;\n }\n // this weirdness for perf, and chrome's weird bug\n // https://stackoverflow.com/questions/20007992/chrome-suddenly-stopped-accepting-insertrule\n try {\n sheet.insertRule(rule, index);\n } catch (error) {\n if (!isProd) {\n console.warn(\"StyleSheet: illegal rule: \\n\\n\" + rule + \"\\n\\nSee https://stackoverflow.com/q/20007992 for more info\");\n }\n return -1;\n }\n } else {\n var insertionPoint = this._tags[index];\n this._tags.push(this.makeStyleTag(this._name, rule, insertionPoint));\n }\n return this._rulesCount++;\n };\n _proto.replaceRule = function replaceRule(index, rule) {\n if (this._optimizeForSpeed || typeof window === \"undefined\") {\n var sheet = typeof window !== \"undefined\" ? this.getSheet() : this._serverSheet;\n if (!rule.trim()) {\n rule = this._deletedRulePlaceholder;\n }\n if (!sheet.cssRules[index]) {\n // @TBD Should we throw an error?\n return index;\n }\n sheet.deleteRule(index);\n try {\n sheet.insertRule(rule, index);\n } catch (error) {\n if (!isProd) {\n console.warn(\"StyleSheet: illegal rule: \\n\\n\" + rule + \"\\n\\nSee https://stackoverflow.com/q/20007992 for more info\");\n }\n // In order to preserve the indices we insert a deleteRulePlaceholder\n sheet.insertRule(this._deletedRulePlaceholder, index);\n }\n } else {\n var tag = this._tags[index];\n invariant$1(tag, \"old rule at index `\" + index + \"` not found\");\n tag.textContent = rule;\n }\n return index;\n };\n _proto.deleteRule = function deleteRule(index) {\n if (typeof window === \"undefined\") {\n this._serverSheet.deleteRule(index);\n return;\n }\n if (this._optimizeForSpeed) {\n this.replaceRule(index, \"\");\n } else {\n var tag = this._tags[index];\n invariant$1(tag, \"rule at index `\" + index + \"` not found\");\n tag.parentNode.removeChild(tag);\n this._tags[index] = null;\n }\n };\n _proto.flush = function flush() {\n this._injected = false;\n this._rulesCount = 0;\n if (typeof window !== \"undefined\") {\n this._tags.forEach(function(tag) {\n return tag && tag.parentNode.removeChild(tag);\n });\n this._tags = [];\n } else {\n // simpler on server\n this._serverSheet.cssRules = [];\n }\n };\n _proto.cssRules = function cssRules() {\n var _this = this;\n if (typeof window === \"undefined\") {\n return this._serverSheet.cssRules;\n }\n return this._tags.reduce(function(rules, tag) {\n if (tag) {\n rules = rules.concat(Array.prototype.map.call(_this.getSheetForTag(tag).cssRules, function(rule) {\n return rule.cssText === _this._deletedRulePlaceholder ? null : rule;\n }));\n } else {\n rules.push(null);\n }\n return rules;\n }, []);\n };\n _proto.makeStyleTag = function makeStyleTag(name, cssString, relativeToTag) {\n if (cssString) {\n invariant$1(isString(cssString), \"makeStyleTag accepts only strings as second parameter\");\n }\n var tag = document.createElement(\"style\");\n if (this._nonce) tag.setAttribute(\"nonce\", this._nonce);\n tag.type = \"text/css\";\n tag.setAttribute(\"data-\" + name, \"\");\n if (cssString) {\n tag.appendChild(document.createTextNode(cssString));\n }\n var head = document.head || document.getElementsByTagName(\"head\")[0];\n if (relativeToTag) {\n head.insertBefore(tag, relativeToTag);\n } else {\n head.appendChild(tag);\n }\n return tag;\n };\n _createClass(StyleSheet, [\n {\n key: \"length\",\n get: function get() {\n return this._rulesCount;\n }\n }\n ]);\n return StyleSheet;\n}();\nfunction invariant$1(condition, message) {\n if (!condition) {\n throw new Error(\"StyleSheet: \" + message + \".\");\n }\n}\n\nfunction hash(str) {\n var _$hash = 5381, i = str.length;\n while(i){\n _$hash = _$hash * 33 ^ str.charCodeAt(--i);\n }\n /* JavaScript does bitwise operations (like XOR, above) on 32-bit signed\n * integers. Since we want the results to be always positive, convert the\n * signed int to an unsigned by doing an unsigned bitshift. */ return _$hash >>> 0;\n}\nvar stringHash = hash;\n\nvar sanitize = function(rule) {\n return rule.replace(/\\/style/gi, \"\\\\/style\");\n};\nvar cache = {};\n/**\n * computeId\n *\n * Compute and memoize a jsx id from a basedId and optionally props.\n */ function computeId(baseId, props) {\n if (!props) {\n return \"jsx-\" + baseId;\n }\n var propsToString = String(props);\n var key = baseId + propsToString;\n if (!cache[key]) {\n cache[key] = \"jsx-\" + stringHash(baseId + \"-\" + propsToString);\n }\n return cache[key];\n}\n/**\n * computeSelector\n *\n * Compute and memoize dynamic selectors.\n */ function computeSelector(id, css) {\n var selectoPlaceholderRegexp = /__jsx-style-dynamic-selector/g;\n // Sanitize SSR-ed CSS.\n // Client side code doesn't need to be sanitized since we use\n // document.createTextNode (dev) and the CSSOM api sheet.insertRule (prod).\n if (typeof window === \"undefined\") {\n css = sanitize(css);\n }\n var idcss = id + css;\n if (!cache[idcss]) {\n cache[idcss] = css.replace(selectoPlaceholderRegexp, id);\n }\n return cache[idcss];\n}\n\nfunction mapRulesToStyle(cssRules, options) {\n if (options === void 0) options = {};\n return cssRules.map(function(args) {\n var id = args[0];\n var css = args[1];\n return /*#__PURE__*/ React__default[\"default\"].createElement(\"style\", {\n id: \"__\" + id,\n // Avoid warnings upon render with a key\n key: \"__\" + id,\n nonce: options.nonce ? options.nonce : undefined,\n dangerouslySetInnerHTML: {\n __html: css\n }\n });\n });\n}\nvar StyleSheetRegistry = /*#__PURE__*/ function() {\n function StyleSheetRegistry(param) {\n var ref = param === void 0 ? {} : param, _styleSheet = ref.styleSheet, styleSheet = _styleSheet === void 0 ? null : _styleSheet, _optimizeForSpeed = ref.optimizeForSpeed, optimizeForSpeed = _optimizeForSpeed === void 0 ? false : _optimizeForSpeed;\n this._sheet = styleSheet || new StyleSheet({\n name: \"styled-jsx\",\n optimizeForSpeed: optimizeForSpeed\n });\n this._sheet.inject();\n if (styleSheet && typeof optimizeForSpeed === \"boolean\") {\n this._sheet.setOptimizeForSpeed(optimizeForSpeed);\n this._optimizeForSpeed = this._sheet.isOptimizeForSpeed();\n }\n this._fromServer = undefined;\n this._indices = {};\n this._instancesCounts = {};\n }\n var _proto = StyleSheetRegistry.prototype;\n _proto.add = function add(props) {\n var _this = this;\n if (undefined === this._optimizeForSpeed) {\n this._optimizeForSpeed = Array.isArray(props.children);\n this._sheet.setOptimizeForSpeed(this._optimizeForSpeed);\n this._optimizeForSpeed = this._sheet.isOptimizeForSpeed();\n }\n if (typeof window !== \"undefined\" && !this._fromServer) {\n this._fromServer = this.selectFromServer();\n this._instancesCounts = Object.keys(this._fromServer).reduce(function(acc, tagName) {\n acc[tagName] = 0;\n return acc;\n }, {});\n }\n var ref = this.getIdAndRules(props), styleId = ref.styleId, rules = ref.rules;\n // Deduping: just increase the instances count.\n if (styleId in this._instancesCounts) {\n this._instancesCounts[styleId] += 1;\n return;\n }\n var indices = rules.map(function(rule) {\n return _this._sheet.insertRule(rule);\n })// Filter out invalid rules\n .filter(function(index) {\n return index !== -1;\n });\n this._indices[styleId] = indices;\n this._instancesCounts[styleId] = 1;\n };\n _proto.remove = function remove(props) {\n var _this = this;\n var styleId = this.getIdAndRules(props).styleId;\n invariant(styleId in this._instancesCounts, \"styleId: `\" + styleId + \"` not found\");\n this._instancesCounts[styleId] -= 1;\n if (this._instancesCounts[styleId] < 1) {\n var tagFromServer = this._fromServer && this._fromServer[styleId];\n if (tagFromServer) {\n tagFromServer.parentNode.removeChild(tagFromServer);\n delete this._fromServer[styleId];\n } else {\n this._indices[styleId].forEach(function(index) {\n return _this._sheet.deleteRule(index);\n });\n delete this._indices[styleId];\n }\n delete this._instancesCounts[styleId];\n }\n };\n _proto.update = function update(props, nextProps) {\n this.add(nextProps);\n this.remove(props);\n };\n _proto.flush = function flush() {\n this._sheet.flush();\n this._sheet.inject();\n this._fromServer = undefined;\n this._indices = {};\n this._instancesCounts = {};\n };\n _proto.cssRules = function cssRules() {\n var _this = this;\n var fromServer = this._fromServer ? Object.keys(this._fromServer).map(function(styleId) {\n return [\n styleId,\n _this._fromServer[styleId]\n ];\n }) : [];\n var cssRules = this._sheet.cssRules();\n return fromServer.concat(Object.keys(this._indices).map(function(styleId) {\n return [\n styleId,\n _this._indices[styleId].map(function(index) {\n return cssRules[index].cssText;\n }).join(_this._optimizeForSpeed ? \"\" : \"\\n\")\n ];\n })// filter out empty rules\n .filter(function(rule) {\n return Boolean(rule[1]);\n }));\n };\n _proto.styles = function styles(options) {\n return mapRulesToStyle(this.cssRules(), options);\n };\n _proto.getIdAndRules = function getIdAndRules(props) {\n var css = props.children, dynamic = props.dynamic, id = props.id;\n if (dynamic) {\n var styleId = computeId(id, dynamic);\n return {\n styleId: styleId,\n rules: Array.isArray(css) ? css.map(function(rule) {\n return computeSelector(styleId, rule);\n }) : [\n computeSelector(styleId, css)\n ]\n };\n }\n return {\n styleId: computeId(id),\n rules: Array.isArray(css) ? css : [\n css\n ]\n };\n };\n /**\n * selectFromServer\n *\n * Collects style tags from the document with id __jsx-XXX\n */ _proto.selectFromServer = function selectFromServer() {\n var elements = Array.prototype.slice.call(document.querySelectorAll('[id^=\"__jsx-\"]'));\n return elements.reduce(function(acc, element) {\n var id = element.id.slice(2);\n acc[id] = element;\n return acc;\n }, {});\n };\n return StyleSheetRegistry;\n}();\nfunction invariant(condition, message) {\n if (!condition) {\n throw new Error(\"StyleSheetRegistry: \" + message + \".\");\n }\n}\nvar StyleSheetContext = /*#__PURE__*/ React.createContext(null);\nStyleSheetContext.displayName = \"StyleSheetContext\";\nfunction createStyleRegistry() {\n return new StyleSheetRegistry();\n}\nfunction StyleRegistry(param) {\n var configuredRegistry = param.registry, children = param.children;\n var rootRegistry = React.useContext(StyleSheetContext);\n var ref = React.useState(function() {\n return rootRegistry || configuredRegistry || createStyleRegistry();\n }), registry = ref[0];\n return /*#__PURE__*/ React__default[\"default\"].createElement(StyleSheetContext.Provider, {\n value: registry\n }, children);\n}\nfunction useStyleRegistry() {\n return React.useContext(StyleSheetContext);\n}\n\n// Opt-into the new `useInsertionEffect` API in React 18, fallback to `useLayoutEffect`.\n// https://github.com/reactwg/react-18/discussions/110\nvar useInsertionEffect = React__default[\"default\"].useInsertionEffect || React__default[\"default\"].useLayoutEffect;\nvar defaultRegistry = typeof window !== \"undefined\" ? createStyleRegistry() : undefined;\nfunction JSXStyle(props) {\n var registry = defaultRegistry ? defaultRegistry : useStyleRegistry();\n // If `registry` does not exist, we do nothing here.\n if (!registry) {\n return null;\n }\n if (typeof window === \"undefined\") {\n registry.add(props);\n return null;\n }\n useInsertionEffect(function() {\n registry.add(props);\n return function() {\n registry.remove(props);\n };\n // props.children can be string[], will be striped since id is identical\n }, [\n props.id,\n String(props.dynamic)\n ]);\n return null;\n}\nJSXStyle.dynamic = function(info) {\n return info.map(function(tagInfo) {\n var baseId = tagInfo[0];\n var props = tagInfo[1];\n return computeId(baseId, props);\n }).join(\" \");\n};\n\nexports.StyleRegistry = StyleRegistry;\nexports.createStyleRegistry = createStyleRegistry;\nexports.style = JSXStyle;\nexports.useStyleRegistry = useStyleRegistry;\n","module.exports = require('./dist/index').style\n"],"names":["timeAgo","dateStr","diff","Date","now","replace","getTime","s","Math","floor","statusColor","status","hasSse","formatUptime","seconds","h","m","AVATAR_HUES","aliasAvatarColors","alias","i","length","charCodeAt","hue","bg","ring","text","aliasInitial","ch","trim","match","toUpperCase","AliasAvatar","size","className","c","fs","max","round","style","width","height","fontSize","backgroundColor","borderColor","color","title","DEFAULTS","nodes","sub","tasks","messages","logs","tokens","networks","generic","Glyph","variant","baseProps","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin","viewBox","cx","cy","r","x1","y1","x2","y2","strokeDasharray","opacity","x","y","rx","d","ry","EmptyState","cta","compact","headline","subcopy","iconSize","role","href","label","onClick","NodesEmptyState","hint","global_count","fetcher","url","res","fetch","window","location","assign","Error","json","SWR_OPTIONS","refreshInterval","dedupingInterval","withNetwork","networkId","sep","includes","encodeURIComponent","useSessions","data","error","isLoading","sessions","_hint","useHealth","health","useAnetConfig","config","useTasks","params","query","URLSearchParams","limit","toString","count","source","useStats","stats","ok","useLicense","license","useMessages","useNodeSession","session","inbox","sse","React","_interopDefaultLegacy","e","React__default","_defineProperties","target","props","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_createClass","Constructor","protoProps","staticProps","prototype","isProd","process","env","isString","o","call","StyleSheet","param","ref","_name","name","_optimizeForSpeed","optimizeForSpeed","invariant$1","_deletedRulePlaceholder","_serverSheet","undefined","_tags","_injected","_rulesCount","node","document","querySelector","_nonce","_proto","setOptimizeForSpeed","bool","flush","inject","isOptimizeForSpeed","_this","cssRules","insertRule","rule","index","cssText","push","deleteRule","getSheetForTag","tag","sheet","styleSheets","ownerNode","getSheet","insertionPoint","replaceRule","console","warn","makeStyleTag","cssString","relativeToTag","createElement","setAttribute","type","appendChild","createTextNode","head","getElementsByTagName","insertBefore","get","condition","message","hash","str","_$hash","stringHash","sanitize","cache","computeId","baseId","propsToString","String","computeSelector","id","css","selectoPlaceholderRegexp","idcss","mapRulesToStyle","options","map","args","nonce","dangerouslySetInnerHTML","__html","StyleSheetRegistry","_styleSheet","styleSheet","_sheet","_fromServer","_indices","_instancesCounts","add","Array","isArray","children","getIdAndRules","styleId","rules","indices","filter","remove","invariant","tagFromServer","parentNode","removeChild","forEach","update","nextProps","fromServer","keys","concat","join","Boolean","styles","dynamic","selectFromServer","elements","slice","querySelectorAll","reduce","acc","element","StyleSheetContext","createContext","displayName","createStyleRegistry","StyleRegistry","configuredRegistry","registry","rootRegistry","useContext","useState","Provider","value","useStyleRegistry","useInsertionEffect","useLayoutEffect","defaultRegistry","JSXStyle","info","tagInfo","exports","module"],"mappings":"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","ignoreList":[4,5]}
@@ -1,3 +0,0 @@
1
- module.exports=[43515,a=>{"use strict";a.s(["formatUptime",0,function(a){let b=Math.floor(a/3600),c=Math.floor(a%3600/60);return b>0?`${b}h ${c}m`:`${c}m`},"timeAgo",0,function(a){if(!a)return"--";let b=Math.floor((Date.now()-new Date(a.replace(" ","T")+"Z").getTime())/1e3);return b<60?`${b}s ago`:b<3600?`${Math.floor(b/60)}m ago`:b<86400?`${Math.floor(b/3600)}h ago`:`${Math.floor(b/86400)}d ago`}])},1720,a=>{"use strict";var b=a.i(87924);let c=[180,200,220,270,300,330,30,90];a.s(["AliasAvatar",0,function({alias:a,size:d=28,className:e=""}){let f=function(a){let b=0;for(let c=0;c<a.length;c++)b=31*b+a.charCodeAt(c)>>>0;let d=c[b%c.length];return{bg:`hsl(${d} 55% 22%)`,ring:`hsl(${d} 60% 45%)`,text:`hsl(${d} 80% 78%)`}}(a),g=Math.max(9,Math.round(.42*d));return(0,b.jsx)("span",{className:`anet-alias-avatar inline-flex items-center justify-center rounded-full border shrink-0 font-semibold ${e}`,style:{width:d,height:d,fontSize:g,backgroundColor:f.bg,borderColor:f.ring,color:f.text},title:a,"aria-hidden":!0,children:a?(a.trim().match(/[\p{L}\p{N}]/u)?.[0]||a.trim()[0]||"·").toUpperCase():"·"})}])},53142,a=>{"use strict";var b=a.i(87924),c=a.i(38246);let d={nodes:{title:"No agents in this network",sub:"Agent sessions will appear here once they connect to the CommHub."},tasks:{title:"No tasks yet",sub:"Tasks will appear here when agents send them via CommHub."},messages:{title:"No messages",sub:"Messages between agents will appear here."},logs:{title:"No audit logs",sub:"Events will appear here when users register, login, or perform actions."},tokens:{title:"No API tokens",sub:"Create one to authenticate CLI tools and external integrations."},networks:{title:"No networks found",sub:"Create one or sign in with V3 auth to see your networks."},generic:{title:"Nothing here yet",sub:"Data will appear here once available."}};function e({variant:a,size:c}){let d={width:c,height:c},f={fill:"none",stroke:"currentColor",strokeWidth:1.25,strokeLinecap:"round",strokeLinejoin:"round"};switch(a){case"nodes":return(0,b.jsx)("svg",{viewBox:"0 0 64 64",...d,children:(0,b.jsxs)("g",{...f,children:[(0,b.jsx)("circle",{cx:"32",cy:"14",r:"4"}),(0,b.jsx)("circle",{cx:"14",cy:"44",r:"4"}),(0,b.jsx)("circle",{cx:"50",cy:"44",r:"4"}),(0,b.jsx)("line",{x1:"32",y1:"18",x2:"14",y2:"40",strokeDasharray:"3 3",opacity:"0.6"}),(0,b.jsx)("line",{x1:"32",y1:"18",x2:"50",y2:"40",strokeDasharray:"3 3",opacity:"0.6"}),(0,b.jsx)("line",{x1:"18",y1:"44",x2:"46",y2:"44",strokeDasharray:"3 3",opacity:"0.6"})]})});case"tasks":return(0,b.jsx)("svg",{viewBox:"0 0 64 64",...d,children:(0,b.jsxs)("g",{...f,children:[(0,b.jsx)("rect",{x:"14",y:"14",width:"36",height:"6",rx:"1.5"}),(0,b.jsx)("rect",{x:"14",y:"26",width:"36",height:"6",rx:"1.5",opacity:"0.6"}),(0,b.jsx)("rect",{x:"14",y:"38",width:"36",height:"6",rx:"1.5",opacity:"0.35"})]})});case"messages":return(0,b.jsx)("svg",{viewBox:"0 0 64 64",...d,children:(0,b.jsxs)("g",{...f,children:[(0,b.jsx)("path",{d:"M14 18 h36 a3 3 0 0 1 3 3 v18 a3 3 0 0 1 -3 3 h-18 l-8 6 v-6 h-10 a3 3 0 0 1 -3 -3 v-18 a3 3 0 0 1 3 -3 z"}),(0,b.jsx)("line",{x1:"22",y1:"28",x2:"42",y2:"28",opacity:"0.5"}),(0,b.jsx)("line",{x1:"22",y1:"34",x2:"36",y2:"34",opacity:"0.5"})]})});case"logs":return(0,b.jsx)("svg",{viewBox:"0 0 64 64",...d,children:(0,b.jsxs)("g",{...f,children:[(0,b.jsx)("path",{d:"M18 12 h22 l8 8 v32 a2 2 0 0 1 -2 2 h-28 a2 2 0 0 1 -2 -2 v-38 a2 2 0 0 1 2 -2 z"}),(0,b.jsx)("path",{d:"M40 12 v8 h8",opacity:"0.6"}),(0,b.jsx)("line",{x1:"24",y1:"32",x2:"40",y2:"32",opacity:"0.55"}),(0,b.jsx)("line",{x1:"24",y1:"38",x2:"40",y2:"38",opacity:"0.4"}),(0,b.jsx)("line",{x1:"24",y1:"44",x2:"34",y2:"44",opacity:"0.25"})]})});case"tokens":return(0,b.jsx)("svg",{viewBox:"0 0 64 64",...d,children:(0,b.jsxs)("g",{...f,children:[(0,b.jsx)("circle",{cx:"22",cy:"32",r:"8"}),(0,b.jsx)("line",{x1:"30",y1:"32",x2:"54",y2:"32"}),(0,b.jsx)("line",{x1:"44",y1:"32",x2:"44",y2:"38"}),(0,b.jsx)("line",{x1:"50",y1:"32",x2:"50",y2:"40"})]})});case"networks":return(0,b.jsx)("svg",{viewBox:"0 0 64 64",...d,children:(0,b.jsxs)("g",{...f,children:[(0,b.jsx)("circle",{cx:"32",cy:"32",r:"18"}),(0,b.jsx)("ellipse",{cx:"32",cy:"32",rx:"18",ry:"9",opacity:"0.55"}),(0,b.jsx)("line",{x1:"14",y1:"32",x2:"50",y2:"32",opacity:"0.55"}),(0,b.jsx)("line",{x1:"32",y1:"14",x2:"32",y2:"50",opacity:"0.55"})]})});default:return(0,b.jsx)("svg",{viewBox:"0 0 64 64",...d,children:(0,b.jsxs)("g",{...f,children:[(0,b.jsx)("circle",{cx:"32",cy:"32",r:"14",strokeDasharray:"3 3",opacity:"0.6"}),(0,b.jsx)("circle",{cx:"32",cy:"32",r:"3"})]})})}}function f({variant:a="generic",title:g,sub:h,cta:i,compact:j=!1}){let k=d[a],l=g??k.title,m=h??k.sub;return(0,b.jsxs)("div",{className:`text-center ${j?"py-8":"py-16"} px-4`,role:"status",children:[(0,b.jsx)("div",{className:"anet-empty-glyph inline-flex items-center justify-center mb-4 text-gray-500","aria-hidden":!0,children:(0,b.jsx)(e,{variant:a,size:j?40:56})}),(0,b.jsx)("h3",{className:`font-medium text-gray-300 ${j?"text-sm":"text-base"}`,children:l}),m&&(0,b.jsx)("p",{className:`text-gray-500 ${j?"text-xs mt-1.5":"text-sm mt-2"} max-w-md mx-auto leading-relaxed`,children:m}),i&&(0,b.jsx)("div",{className:"mt-4",children:i.href?(0,b.jsxs)(c.default,{href:i.href,className:"inline-flex items-center gap-1.5 text-sm font-medium text-cyan-400 hover:text-cyan-300",children:[i.label,(0,b.jsx)("span",{"aria-hidden":!0,children:"→"})]}):(0,b.jsxs)("button",{onClick:i.onClick,className:"inline-flex items-center gap-1.5 text-sm font-medium text-cyan-400 hover:text-cyan-300",children:[i.label,(0,b.jsx)("span",{"aria-hidden":!0,children:"→"})]})})]})}a.s(["EmptyState",0,f,"NodesEmptyState",0,function({hint:a}){return a?.global_count?(0,b.jsx)(f,{variant:"nodes",title:"No agents in this network",sub:`Server has ${a.global_count} nodes globally, but none are registered to the current network. Switch network or contact admin.`}):(0,b.jsx)(f,{variant:"nodes",cta:{label:"Run anet quickstart",href:"https://anet.sh"}})}])},54826,(a,b,c)=>{},15299,(a,b,c)=>{a.r(54826);var d=a.r(72131),e=d&&"object"==typeof d&&"default"in d?d:{default:d},f="u">typeof process&&process.env&&!0,g=function(a){return"[object String]"===Object.prototype.toString.call(a)},h=function(){function a(a){var b=void 0===a?{}:a,c=b.name,d=void 0===c?"stylesheet":c,e=b.optimizeForSpeed,h=void 0===e?f:e;i(g(d),"`name` must be a string"),this._name=d,this._deletedRulePlaceholder="#"+d+"-deleted-rule____{}",i("boolean"==typeof h,"`optimizeForSpeed` must be a boolean"),this._optimizeForSpeed=h,this._serverSheet=void 0,this._tags=[],this._injected=!1,this._rulesCount=0,this._nonce=null}var b,c=a.prototype;return c.setOptimizeForSpeed=function(a){i("boolean"==typeof a,"`setOptimizeForSpeed` accepts a boolean"),i(0===this._rulesCount,"optimizeForSpeed cannot be when rules have already been inserted"),this.flush(),this._optimizeForSpeed=a,this.inject()},c.isOptimizeForSpeed=function(){return this._optimizeForSpeed},c.inject=function(){var a=this;i(!this._injected,"sheet already injected"),this._injected=!0,this._serverSheet={cssRules:[],insertRule:function(b,c){return"number"==typeof c?a._serverSheet.cssRules[c]={cssText:b}:a._serverSheet.cssRules.push({cssText:b}),c},deleteRule:function(b){a._serverSheet.cssRules[b]=null}}},c.getSheetForTag=function(a){if(a.sheet)return a.sheet;for(var b=0;b<document.styleSheets.length;b++)if(document.styleSheets[b].ownerNode===a)return document.styleSheets[b]},c.getSheet=function(){return this.getSheetForTag(this._tags[this._tags.length-1])},c.insertRule=function(a,b){return i(g(a),"`insertRule` accepts only strings"),"number"!=typeof b&&(b=this._serverSheet.cssRules.length),this._serverSheet.insertRule(a,b),this._rulesCount++},c.replaceRule=function(a,b){this._optimizeForSpeed;var c=this._serverSheet;if(b.trim()||(b=this._deletedRulePlaceholder),!c.cssRules[a])return a;c.deleteRule(a);try{c.insertRule(b,a)}catch(d){f||console.warn("StyleSheet: illegal rule: \n\n"+b+"\n\nSee https://stackoverflow.com/q/20007992 for more info"),c.insertRule(this._deletedRulePlaceholder,a)}return a},c.deleteRule=function(a){this._serverSheet.deleteRule(a)},c.flush=function(){this._injected=!1,this._rulesCount=0,this._serverSheet.cssRules=[]},c.cssRules=function(){return this._serverSheet.cssRules},c.makeStyleTag=function(a,b,c){b&&i(g(b),"makeStyleTag accepts only strings as second parameter");var d=document.createElement("style");this._nonce&&d.setAttribute("nonce",this._nonce),d.type="text/css",d.setAttribute("data-"+a,""),b&&d.appendChild(document.createTextNode(b));var e=document.head||document.getElementsByTagName("head")[0];return c?e.insertBefore(d,c):e.appendChild(d),d},b=[{key:"length",get:function(){return this._rulesCount}}],function(a,b){for(var c=0;c<b.length;c++){var d=b[c];d.enumerable=d.enumerable||!1,d.configurable=!0,"value"in d&&(d.writable=!0),Object.defineProperty(a,d.key,d)}}(a.prototype,b),a}();function i(a,b){if(!a)throw Error("StyleSheet: "+b+".")}var j=function(a){for(var b=5381,c=a.length;c;)b=33*b^a.charCodeAt(--c);return b>>>0},k={};function l(a,b){if(!b)return"jsx-"+a;var c=String(b),d=a+c;return k[d]||(k[d]="jsx-"+j(a+"-"+c)),k[d]}function m(a,b){var c=a+(b=b.replace(/\/style/gi,"\\/style"));return k[c]||(k[c]=b.replace(/__jsx-style-dynamic-selector/g,a)),k[c]}var n=function(){function a(a){var b=void 0===a?{}:a,c=b.styleSheet,d=void 0===c?null:c,e=b.optimizeForSpeed,f=void 0!==e&&e;this._sheet=d||new h({name:"styled-jsx",optimizeForSpeed:f}),this._sheet.inject(),d&&"boolean"==typeof f&&(this._sheet.setOptimizeForSpeed(f),this._optimizeForSpeed=this._sheet.isOptimizeForSpeed()),this._fromServer=void 0,this._indices={},this._instancesCounts={}}var b=a.prototype;return b.add=function(a){var b=this;void 0===this._optimizeForSpeed&&(this._optimizeForSpeed=Array.isArray(a.children),this._sheet.setOptimizeForSpeed(this._optimizeForSpeed),this._optimizeForSpeed=this._sheet.isOptimizeForSpeed());var c=this.getIdAndRules(a),d=c.styleId,e=c.rules;if(d in this._instancesCounts){this._instancesCounts[d]+=1;return}var f=e.map(function(a){return b._sheet.insertRule(a)}).filter(function(a){return -1!==a});this._indices[d]=f,this._instancesCounts[d]=1},b.remove=function(a){var b=this,c=this.getIdAndRules(a).styleId;if(function(a,b){if(!a)throw Error("StyleSheetRegistry: "+b+".")}(c in this._instancesCounts,"styleId: `"+c+"` not found"),this._instancesCounts[c]-=1,this._instancesCounts[c]<1){var d=this._fromServer&&this._fromServer[c];d?(d.parentNode.removeChild(d),delete this._fromServer[c]):(this._indices[c].forEach(function(a){return b._sheet.deleteRule(a)}),delete this._indices[c]),delete this._instancesCounts[c]}},b.update=function(a,b){this.add(b),this.remove(a)},b.flush=function(){this._sheet.flush(),this._sheet.inject(),this._fromServer=void 0,this._indices={},this._instancesCounts={}},b.cssRules=function(){var a=this,b=this._fromServer?Object.keys(this._fromServer).map(function(b){return[b,a._fromServer[b]]}):[],c=this._sheet.cssRules();return b.concat(Object.keys(this._indices).map(function(b){return[b,a._indices[b].map(function(a){return c[a].cssText}).join(a._optimizeForSpeed?"":"\n")]}).filter(function(a){return!!a[1]}))},b.styles=function(a){var b,c;return b=this.cssRules(),void 0===(c=a)&&(c={}),b.map(function(a){var b=a[0],d=a[1];return e.default.createElement("style",{id:"__"+b,key:"__"+b,nonce:c.nonce?c.nonce:void 0,dangerouslySetInnerHTML:{__html:d}})})},b.getIdAndRules=function(a){var b=a.children,c=a.dynamic,d=a.id;if(c){var e=l(d,c);return{styleId:e,rules:Array.isArray(b)?b.map(function(a){return m(e,a)}):[m(e,b)]}}return{styleId:l(d),rules:Array.isArray(b)?b:[b]}},b.selectFromServer=function(){return Array.prototype.slice.call(document.querySelectorAll('[id^="__jsx-"]')).reduce(function(a,b){return a[b.id.slice(2)]=b,a},{})},a}(),o=d.createContext(null);function p(){return new n}function q(){return d.useContext(o)}function r(a){var b=q();return b&&b.add(a),null}o.displayName="StyleSheetContext",e.default.useInsertionEffect||e.default.useLayoutEffect,r.dynamic=function(a){return a.map(function(a){return l(a[0],a[1])}).join(" ")},c.StyleRegistry=function(a){var b=a.registry,c=a.children,f=d.useContext(o),g=d.useState(function(){return f||b||p()})[0];return e.default.createElement(o.Provider,{value:g},c)},c.createStyleRegistry=p,c.style=r,c.useStyleRegistry=q},31626,(a,b,c)=>{b.exports=a.r(15299).style}];
2
-
3
- //# sourceMappingURL=_0kdizff._.js.map