@sleep2agi/agent-network-dashboard 0.1.0-preview.3 → 0.1.0-preview.4

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 (135) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build-manifest.json +3 -3
  3. package/.next/cache/.tsbuildinfo +1 -1
  4. package/.next/diagnostics/route-bundle-stats.json +6 -6
  5. package/.next/fallback-build-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.html +1 -1
  14. package/.next/server/app/_not-found.rsc +1 -1
  15. package/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  16. package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  17. package/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  18. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  19. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  20. package/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  21. package/.next/server/app/admin.html +1 -1
  22. package/.next/server/app/admin.rsc +1 -1
  23. package/.next/server/app/admin.segments/_full.segment.rsc +1 -1
  24. package/.next/server/app/admin.segments/_head.segment.rsc +1 -1
  25. package/.next/server/app/admin.segments/_index.segment.rsc +1 -1
  26. package/.next/server/app/admin.segments/_tree.segment.rsc +1 -1
  27. package/.next/server/app/admin.segments/admin/__PAGE__.segment.rsc +1 -1
  28. package/.next/server/app/admin.segments/admin.segment.rsc +1 -1
  29. package/.next/server/app/docs.html +1 -1
  30. package/.next/server/app/docs.rsc +1 -1
  31. package/.next/server/app/docs.segments/_full.segment.rsc +1 -1
  32. package/.next/server/app/docs.segments/_head.segment.rsc +1 -1
  33. package/.next/server/app/docs.segments/_index.segment.rsc +1 -1
  34. package/.next/server/app/docs.segments/_tree.segment.rsc +1 -1
  35. package/.next/server/app/docs.segments/docs/__PAGE__.segment.rsc +1 -1
  36. package/.next/server/app/docs.segments/docs.segment.rsc +1 -1
  37. package/.next/server/app/index.html +2 -2
  38. package/.next/server/app/index.rsc +2 -2
  39. package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  40. package/.next/server/app/index.segments/_full.segment.rsc +2 -2
  41. package/.next/server/app/index.segments/_head.segment.rsc +1 -1
  42. package/.next/server/app/index.segments/_index.segment.rsc +1 -1
  43. package/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  44. package/.next/server/app/login.html +1 -1
  45. package/.next/server/app/login.rsc +1 -1
  46. package/.next/server/app/login.segments/_full.segment.rsc +1 -1
  47. package/.next/server/app/login.segments/_head.segment.rsc +1 -1
  48. package/.next/server/app/login.segments/_index.segment.rsc +1 -1
  49. package/.next/server/app/login.segments/_tree.segment.rsc +1 -1
  50. package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
  51. package/.next/server/app/login.segments/login.segment.rsc +1 -1
  52. package/.next/server/app/logs.html +1 -1
  53. package/.next/server/app/logs.rsc +1 -1
  54. package/.next/server/app/logs.segments/_full.segment.rsc +1 -1
  55. package/.next/server/app/logs.segments/_head.segment.rsc +1 -1
  56. package/.next/server/app/logs.segments/_index.segment.rsc +1 -1
  57. package/.next/server/app/logs.segments/_tree.segment.rsc +1 -1
  58. package/.next/server/app/logs.segments/logs/__PAGE__.segment.rsc +1 -1
  59. package/.next/server/app/logs.segments/logs.segment.rsc +1 -1
  60. package/.next/server/app/messages.html +1 -1
  61. package/.next/server/app/messages.rsc +1 -1
  62. package/.next/server/app/messages.segments/_full.segment.rsc +1 -1
  63. package/.next/server/app/messages.segments/_head.segment.rsc +1 -1
  64. package/.next/server/app/messages.segments/_index.segment.rsc +1 -1
  65. package/.next/server/app/messages.segments/_tree.segment.rsc +1 -1
  66. package/.next/server/app/messages.segments/messages/__PAGE__.segment.rsc +1 -1
  67. package/.next/server/app/messages.segments/messages.segment.rsc +1 -1
  68. package/.next/server/app/node/page_client-reference-manifest.js +1 -1
  69. package/.next/server/app/node.html +2 -2
  70. package/.next/server/app/node.rsc +2 -2
  71. package/.next/server/app/node.segments/_full.segment.rsc +2 -2
  72. package/.next/server/app/node.segments/_head.segment.rsc +1 -1
  73. package/.next/server/app/node.segments/_index.segment.rsc +1 -1
  74. package/.next/server/app/node.segments/_tree.segment.rsc +1 -1
  75. package/.next/server/app/node.segments/node/__PAGE__.segment.rsc +2 -2
  76. package/.next/server/app/node.segments/node.segment.rsc +1 -1
  77. package/.next/server/app/nodes/page_client-reference-manifest.js +1 -1
  78. package/.next/server/app/nodes.html +2 -2
  79. package/.next/server/app/nodes.rsc +2 -2
  80. package/.next/server/app/nodes.segments/_full.segment.rsc +2 -2
  81. package/.next/server/app/nodes.segments/_head.segment.rsc +1 -1
  82. package/.next/server/app/nodes.segments/_index.segment.rsc +1 -1
  83. package/.next/server/app/nodes.segments/_tree.segment.rsc +1 -1
  84. package/.next/server/app/nodes.segments/nodes/__PAGE__.segment.rsc +2 -2
  85. package/.next/server/app/nodes.segments/nodes.segment.rsc +1 -1
  86. package/.next/server/app/page_client-reference-manifest.js +1 -1
  87. package/.next/server/app/settings/networks.html +1 -1
  88. package/.next/server/app/settings/networks.rsc +1 -1
  89. package/.next/server/app/settings/networks.segments/_full.segment.rsc +1 -1
  90. package/.next/server/app/settings/networks.segments/_head.segment.rsc +1 -1
  91. package/.next/server/app/settings/networks.segments/_index.segment.rsc +1 -1
  92. package/.next/server/app/settings/networks.segments/_tree.segment.rsc +1 -1
  93. package/.next/server/app/settings/networks.segments/settings/networks/__PAGE__.segment.rsc +1 -1
  94. package/.next/server/app/settings/networks.segments/settings/networks.segment.rsc +1 -1
  95. package/.next/server/app/settings/networks.segments/settings.segment.rsc +1 -1
  96. package/.next/server/app/settings/tokens.html +1 -1
  97. package/.next/server/app/settings/tokens.rsc +1 -1
  98. package/.next/server/app/settings/tokens.segments/_full.segment.rsc +1 -1
  99. package/.next/server/app/settings/tokens.segments/_head.segment.rsc +1 -1
  100. package/.next/server/app/settings/tokens.segments/_index.segment.rsc +1 -1
  101. package/.next/server/app/settings/tokens.segments/_tree.segment.rsc +1 -1
  102. package/.next/server/app/settings/tokens.segments/settings/tokens/__PAGE__.segment.rsc +1 -1
  103. package/.next/server/app/settings/tokens.segments/settings/tokens.segment.rsc +1 -1
  104. package/.next/server/app/settings/tokens.segments/settings.segment.rsc +1 -1
  105. package/.next/server/app/settings.html +1 -1
  106. package/.next/server/app/settings.rsc +1 -1
  107. package/.next/server/app/settings.segments/_full.segment.rsc +1 -1
  108. package/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  109. package/.next/server/app/settings.segments/_index.segment.rsc +1 -1
  110. package/.next/server/app/settings.segments/_tree.segment.rsc +1 -1
  111. package/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +1 -1
  112. package/.next/server/app/settings.segments/settings.segment.rsc +1 -1
  113. package/.next/server/app/tasks.html +1 -1
  114. package/.next/server/app/tasks.rsc +1 -1
  115. package/.next/server/app/tasks.segments/_full.segment.rsc +1 -1
  116. package/.next/server/app/tasks.segments/_head.segment.rsc +1 -1
  117. package/.next/server/app/tasks.segments/_index.segment.rsc +1 -1
  118. package/.next/server/app/tasks.segments/_tree.segment.rsc +1 -1
  119. package/.next/server/app/tasks.segments/tasks/__PAGE__.segment.rsc +1 -1
  120. package/.next/server/app/tasks.segments/tasks.segment.rsc +1 -1
  121. package/.next/server/chunks/ssr/_0s2kgzl._.js +1 -1
  122. package/.next/server/chunks/ssr/_0s2kgzl._.js.map +1 -1
  123. package/.next/server/middleware-build-manifest.js +3 -3
  124. package/.next/server/pages/404.html +1 -1
  125. package/.next/server/pages/500.html +1 -1
  126. package/.next/static/chunks/{00lj3.so.3xcl.js → 03qq_1ze1j3x_.js} +1 -1
  127. package/.next/static/chunks/{11tov78a0ymt9.js → 0e4dwg687ga5q.js} +1 -1
  128. package/.next/static/chunks/{0gjidgcgd2ibn.js → 0ga7wt1a18fpq.js} +1 -1
  129. package/.next/trace +2 -2
  130. package/.next/trace-build +1 -1
  131. package/app/components/TaskChatPanel.tsx +4 -2
  132. package/package.json +1 -1
  133. /package/.next/static/{fkJPKTF2q7UWKqbDE1FlR → lgag_dfMO-AGdtcyMHSLe}/_buildManifest.js +0 -0
  134. /package/.next/static/{fkJPKTF2q7UWKqbDE1FlR → lgag_dfMO-AGdtcyMHSLe}/_clientMiddlewareManifest.js +0 -0
  135. /package/.next/static/{fkJPKTF2q7UWKqbDE1FlR → lgag_dfMO-AGdtcyMHSLe}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../node_modules/styled-jsx/dist/index/index.js","../../../../node_modules/styled-jsx/style.js","../../../../app/components/TaskChatPanel.tsx"],"sourcesContent":["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","'use client';\n\nimport { useState, useEffect, useRef, useCallback } from 'react';\nimport { timeAgo } from './utils';\n\ninterface ChatTask {\n task_id: string;\n from_name: string;\n to_name: string;\n status: string;\n priority: string;\n content: string;\n result: string;\n created_at: string;\n}\n\nconst STATUS_STEPS = ['created', 'delivered', 'running', 'replied'];\nconst STATUS_COLORS: Record<string, string> = {\n created: 'bg-gray-400', delivered: 'bg-blue-400', running: 'bg-green-400',\n replied: 'bg-purple-400', failed: 'bg-red-400', closed: 'bg-gray-500',\n};\n\nfunction StatusBar({ status }: { status: string }) {\n const idx = STATUS_STEPS.indexOf(status);\n const isFailed = status === 'failed';\n return (\n <div className=\"flex items-center gap-1 mt-1.5\">\n {STATUS_STEPS.map((s, i) => (\n <div key={s} className=\"flex items-center gap-1\">\n <div className={`w-2 h-2 rounded-full transition-all duration-700 ${\n isFailed ? (i === 0 ? 'bg-red-400' : 'bg-gray-700')\n : i <= idx ? (STATUS_COLORS[s] || 'bg-gray-600') : 'bg-gray-700'\n }`} />\n {i < STATUS_STEPS.length - 1 && (\n <div className={`w-4 h-px transition-colors duration-700 ${\n isFailed ? 'bg-red-800' : i < idx ? 'bg-gray-500' : 'bg-gray-800'\n }`} />\n )}\n </div>\n ))}\n <span className={`text-[10px] ml-1.5 font-medium ${\n isFailed ? 'text-red-400' : status === 'replied' ? 'text-purple-400'\n : status === 'running' ? 'text-green-400' : 'text-gray-500'\n }`}>{status}</span>\n {(status === 'running' || status === 'delivered') && (\n <span className=\"ml-1\">\n <span className=\"inline-block w-1 h-1 rounded-full bg-green-400 animate-pulse\" />\n <span className=\"inline-block w-1 h-1 rounded-full bg-green-400 animate-pulse ml-0.5\" style={{ animationDelay: '0.2s' }} />\n <span className=\"inline-block w-1 h-1 rounded-full bg-green-400 animate-pulse ml-0.5\" style={{ animationDelay: '0.4s' }} />\n </span>\n )}\n </div>\n );\n}\n\nfunction MarkdownContent({ text }: { text: string }) {\n if (!text) return <span className=\"text-gray-600 italic\">No content</span>;\n\n const parts = text.split(/(```[\\s\\S]*?```|`[^`\\n]+`|\\*\\*[^*]+\\*\\*)/g);\n return (\n <div className=\"whitespace-pre-wrap break-words leading-relaxed\">\n {parts.map((part, i) => {\n if (part.startsWith('```') && part.endsWith('```')) {\n const lines = part.slice(3, -3);\n const lang = lines.match(/^(\\w+)\\n/)?.[1] || '';\n const code = lang ? lines.slice(lang.length + 1) : lines;\n return (\n <div key={i} className=\"my-2 rounded-lg overflow-hidden border border-[#1a1a2a]\">\n {lang && <div className=\"bg-[#0a0a15] px-3 py-1 text-[10px] text-gray-500 border-b border-[#1a1a2a]\">{lang}</div>}\n <pre className=\"bg-[#050510] px-3 py-2 text-[11px] text-green-300 overflow-x-auto\">{code}</pre>\n </div>\n );\n }\n if (part.startsWith('`') && part.endsWith('`')) {\n return <code key={i} className=\"bg-[#0a0a15] rounded px-1.5 py-0.5 text-cyan-300 text-[11px] border border-[#1a1a2a]\">{part.slice(1, -1)}</code>;\n }\n if (part.startsWith('**') && part.endsWith('**')) {\n return <strong key={i} className=\"text-white font-semibold\">{part.slice(2, -2)}</strong>;\n }\n return <span key={i}>{part}</span>;\n })}\n </div>\n );\n}\n\ninterface TaskChatPanelProps {\n alias: string;\n onClose: () => void;\n /** When true, renders without outer panel chrome (for use inside CommandCenter) */\n inline?: boolean;\n /** Available nodes for @ mention */\n availableNodes?: string[];\n}\n\nexport function TaskChatPanel({ alias, onClose, inline, availableNodes }: TaskChatPanelProps) {\n const [messages, setMessages] = useState<ChatTask[]>([]);\n const [input, setInput] = useState('');\n const [priority, setPriority] = useState('normal');\n const [sending, setSending] = useState(false);\n const [pollingIds, setPollingIds] = useState<Set<string>>(new Set());\n const [historyLoaded, setHistoryLoaded] = useState(false);\n const [targetAlias, setTargetAlias] = useState(alias);\n const [showMentions, setShowMentions] = useState(false);\n const [mentionFilter, setMentionFilter] = useState('');\n const [mentionNodes, setMentionNodes] = useState<string[]>([]);\n const messagesEndRef = useRef<HTMLDivElement>(null);\n const textareaRef = useRef<HTMLTextAreaElement>(null);\n\n // Load available nodes for @ mention\n useEffect(() => {\n if (availableNodes) { setMentionNodes(availableNodes); return; }\n fetch('/api/hub/status').then(r => r.json()).then(d => {\n const nodes = (d.sessions || []).filter((s: { status: string }) => s.status !== 'offline').map((s: { alias: string }) => s.alias);\n setMentionNodes(nodes);\n }).catch(() => {});\n }, [availableNodes]);\n\n // Reset target when alias changes\n useEffect(() => { setTargetAlias(alias); }, [alias]);\n\n // Load task history for this node\n const loadHistory = useCallback(async () => {\n try {\n const res = await fetch(`/api/hub/tasks?to_name=${encodeURIComponent(alias)}&limit=30`);\n const data = await res.json();\n if (data.tasks) {\n // Show oldest first\n setMessages(data.tasks.reverse());\n }\n } catch {} finally {\n setHistoryLoaded(true);\n }\n }, [alias]);\n\n useEffect(() => {\n setMessages([]);\n setHistoryLoaded(false);\n loadHistory();\n // Focus textarea\n setTimeout(() => textareaRef.current?.focus(), 300);\n }, [alias, loadHistory]);\n\n // Auto-scroll to bottom\n useEffect(() => {\n messagesEndRef.current?.scrollIntoView({ behavior: 'smooth' });\n }, [messages]);\n\n // Poll pending tasks for status updates\n useEffect(() => {\n if (pollingIds.size === 0) return;\n const startTime = Date.now();\n const interval = setInterval(async () => {\n // Timeout after 120s\n if (Date.now() - startTime > 120000) {\n setPollingIds(new Set());\n clearInterval(interval);\n return;\n }\n for (const taskId of pollingIds) {\n try {\n const res = await fetch(`/api/hub/tasks?task_id=${encodeURIComponent(taskId)}`);\n const data = await res.json();\n if (data.tasks?.[0]) {\n const updated = data.tasks[0];\n setMessages(prev => prev.map(m => m.task_id === taskId ? { ...m, ...updated } : m));\n if (['replied', 'failed', 'closed', 'expired', 'cancelled'].includes(updated.status)) {\n setPollingIds(prev => { const n = new Set(prev); n.delete(taskId); return n; });\n }\n }\n } catch {}\n }\n }, 2000);\n return () => clearInterval(interval);\n }, [pollingIds]);\n\n const send = async () => {\n if (!input.trim() || sending) return;\n let taskContent = input.trim();\n let sendTo = targetAlias;\n\n // Parse @mention at start: \"@NodeName rest of message\"\n const atMatch = taskContent.match(/^@(\\S+)\\s+([\\s\\S]+)/);\n if (atMatch) {\n const mentioned = mentionNodes.find(n => n.toLowerCase() === atMatch[1].toLowerCase());\n if (mentioned) {\n sendTo = mentioned;\n taskContent = atMatch[2];\n }\n }\n\n setSending(true);\n setInput('');\n setShowMentions(false);\n if (textareaRef.current) textareaRef.current.style.height = 'auto';\n\n try {\n const res = await fetch('/api/hub/send', {\n method: 'POST',\n headers: { 'Content-Type': 'application/json' },\n body: JSON.stringify({ alias: sendTo, task: taskContent, priority }),\n });\n const data = await res.json();\n if (data.ok) {\n const newMsg: ChatTask = {\n task_id: data.message_id || `tmp-${Date.now()}`,\n from_name: 'Dashboard',\n to_name: sendTo,\n status: 'created',\n priority,\n content: taskContent,\n result: '',\n created_at: new Date().toISOString(),\n };\n setMessages(prev => [...prev, newMsg]);\n if (data.message_id) {\n setPollingIds(prev => new Set(prev).add(data.message_id));\n }\n }\n } catch {}\n setSending(false);\n textareaRef.current?.focus();\n };\n\n const handleKeyDown = (e: React.KeyboardEvent) => {\n if ((e.metaKey || e.ctrlKey) && e.key === 'Enter') {\n e.preventDefault();\n send();\n }\n if (e.key === 'Escape') setShowMentions(false);\n };\n\n const handleInputChange = (value: string) => {\n setInput(value);\n // Check if user just typed @\n const lastAt = value.lastIndexOf('@');\n if (lastAt >= 0 && (lastAt === 0 || value[lastAt - 1] === ' ' || value[lastAt - 1] === '\\n')) {\n const after = value.slice(lastAt + 1);\n if (!after.includes(' ') && !after.includes('\\n')) {\n setMentionFilter(after.toLowerCase());\n setShowMentions(true);\n return;\n }\n }\n setShowMentions(false);\n };\n\n const insertMention = (nodeName: string) => {\n const lastAt = input.lastIndexOf('@');\n const before = input.slice(0, lastAt);\n setInput(`${before}@${nodeName} `);\n setShowMentions(false);\n textareaRef.current?.focus();\n };\n\n const filteredMentions = mentionNodes.filter(n =>\n n !== alias && n.toLowerCase().includes(mentionFilter)\n ).slice(0, 8);\n\n const autoResize = (el: HTMLTextAreaElement) => {\n el.style.height = 'auto';\n el.style.height = Math.min(el.scrollHeight, 150) + 'px';\n };\n\n // Inline mode: just the chat content, no panel chrome\n const chatContent = (\n <>\n {/* Messages area */}\n <div className=\"flex-1 overflow-y-auto px-4 py-4 space-y-4\">\n {!historyLoaded && (\n <div className=\"flex justify-center py-8\">\n <div className=\"w-5 h-5 border-2 border-cyan-500/30 border-t-cyan-500 rounded-full animate-spin\" />\n </div>\n )}\n {historyLoaded && messages.length === 0 && (\n <div className=\"text-center py-12\">\n <div className=\"text-3xl mb-3\">💬</div>\n <div className=\"text-gray-500 text-sm\">Start a conversation</div>\n <div className=\"text-gray-600 text-xs mt-1\">Send a task to {alias}</div>\n </div>\n )}\n\n {messages.map((m, idx) => (\n <div key={m.task_id} className=\"space-y-2\">\n {/* Outgoing task */}\n <div className=\"flex justify-end\">\n <div className=\"max-w-[85%] bg-cyan-500/8 border border-cyan-500/15 rounded-2xl rounded-br-md px-4 py-2.5 shadow-sm\">\n <div className=\"text-[13px] text-gray-200\">\n <MarkdownContent text={m.content} />\n </div>\n <div className=\"flex items-center justify-between mt-1.5 gap-3\">\n <StatusBar status={m.status} />\n <span className=\"text-[9px] text-gray-600 shrink-0\">{timeAgo(m.created_at)}</span>\n </div>\n </div>\n </div>\n\n {/* Incoming reply */}\n {m.result && (\n <div className=\"flex justify-start\">\n <div className=\"max-w-[85%] bg-green-500/8 border border-green-500/15 rounded-2xl rounded-bl-md px-4 py-2.5 shadow-sm\">\n <div className=\"text-[10px] text-green-400 font-medium mb-1.5\">{m.to_name}</div>\n <div className=\"text-[13px] text-gray-200\">\n <MarkdownContent text={m.result} />\n </div>\n </div>\n </div>\n )}\n\n {/* Typing indicator when running */}\n {m.status === 'running' && !m.result && (\n <div className=\"flex justify-start\">\n <div className=\"bg-[#111128] border border-[#2a2a4a] rounded-2xl rounded-bl-md px-4 py-3\">\n <div className=\"flex gap-1\">\n <span className=\"w-2 h-2 rounded-full bg-gray-500 animate-bounce\" style={{ animationDelay: '0s' }} />\n <span className=\"w-2 h-2 rounded-full bg-gray-500 animate-bounce\" style={{ animationDelay: '0.15s' }} />\n <span className=\"w-2 h-2 rounded-full bg-gray-500 animate-bounce\" style={{ animationDelay: '0.3s' }} />\n </div>\n </div>\n </div>\n )}\n </div>\n ))}\n <div ref={messagesEndRef} />\n </div>\n\n {/* Input area */}\n <div className=\"border-t border-[#2a2a4a] bg-[#0d0d1a] px-4 py-3\">\n <div className=\"flex items-end gap-2\">\n <div className=\"flex-1 relative\">\n {/* @ mention dropdown */}\n {showMentions && filteredMentions.length > 0 && (\n <div className=\"absolute bottom-full left-0 right-0 mb-1 bg-[#111128] border border-[#2a2a4a] rounded-lg shadow-xl shadow-black/50 overflow-hidden z-10 max-h-48 overflow-y-auto\">\n {filteredMentions.map(node => (\n <button key={node} onClick={() => insertMention(node)}\n className=\"w-full flex items-center gap-2 px-3 py-2 text-xs text-left hover:bg-cyan-500/10 transition-colors\">\n <span className=\"w-2 h-2 rounded-full bg-cyan-400 shrink-0\" />\n <span className=\"text-gray-300\">{node}</span>\n </button>\n ))}\n </div>\n )}\n <textarea\n ref={textareaRef}\n value={input}\n onChange={e => { handleInputChange(e.target.value); autoResize(e.target); }}\n onKeyDown={handleKeyDown}\n placeholder={`Message ${alias}...`}\n rows={1}\n className=\"w-full bg-[#111128] border border-[#2a2a4a] rounded-xl px-4 py-2.5 pr-16 text-sm text-white placeholder-gray-600 focus:border-cyan-500/40 focus:outline-none resize-none transition-colors\"\n />\n <div className=\"absolute right-2 bottom-1.5 flex items-center gap-1\">\n <select value={priority} onChange={e => setPriority(e.target.value)}\n className=\"bg-transparent text-[9px] text-gray-600 focus:outline-none cursor-pointer\">\n <option value=\"normal\">N</option>\n <option value=\"high\">H</option>\n <option value=\"low\">L</option>\n </select>\n </div>\n </div>\n <button onClick={send} disabled={sending || !input.trim()}\n className=\"p-2.5 bg-cyan-600 hover:bg-cyan-500 disabled:bg-gray-800 disabled:text-gray-600 text-white rounded-xl transition-all shrink-0 active:scale-95\">\n {sending ? (\n <div className=\"w-5 h-5 border-2 border-white/30 border-t-white rounded-full animate-spin\" />\n ) : (\n <svg className=\"w-5 h-5\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" strokeWidth={2}>\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" d=\"M6 12L3.269 3.126A59.768 59.768 0 0121.485 12 59.77 59.77 0 013.27 20.876L5.999 12zm0 0h7.5\" />\n </svg>\n )}\n </button>\n </div>\n <div className=\"flex justify-between text-[9px] text-gray-700 mt-1.5\">\n <span>{input.includes('@') ? `Sending to: ${targetAlias}` : `Type @ to mention another node`}</span>\n <span>⌘+Enter</span>\n </div>\n </div>\n </>\n );\n\n if (inline) {\n return <div className=\"flex flex-col h-full\">{chatContent}</div>;\n }\n\n return (\n <>\n <div className=\"fixed inset-0 bg-black/30 z-40 lg:hidden\" onClick={onClose} />\n <div className=\"fixed top-0 right-0 h-full w-full lg:w-[500px] bg-[#0a0a1a] border-l border-[#2a2a4a] z-50 flex flex-col shadow-2xl shadow-black/60 animate-slide-in\">\n {/* Header */}\n <div className=\"flex items-center justify-between px-4 py-3 border-b border-[#2a2a4a] bg-[#0d0d1a]\">\n <div className=\"flex items-center gap-3\">\n <div className=\"w-8 h-8 rounded-full bg-gradient-to-br from-cyan-500/30 to-blue-500/30 flex items-center justify-center text-xs font-bold text-cyan-300\">\n {alias.slice(0, 2)}\n </div>\n <div>\n <div className=\"text-sm font-semibold text-white\">{alias}</div>\n <div className=\"text-[10px] text-gray-500\">{pollingIds.size > 0 ? 'Processing...' : 'Ready'}</div>\n </div>\n </div>\n <button onClick={onClose} className=\"text-gray-500 hover:text-white p-1.5 rounded-lg hover:bg-[#1a1a2a]\">\n <svg className=\"w-5 h-5\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" strokeWidth={2}>\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" d=\"M6 18L18 6M6 6l12 12\" />\n </svg>\n </button>\n </div>\n {chatContent}\n </div>\n <style jsx global>{`\n @keyframes slide-in { from { transform: translateX(100%); } to { transform: translateX(0); } }\n .animate-slide-in { animation: slide-in 0.2s ease-out; }\n `}</style>\n </>\n );\n}\n"],"names":["React","_interopDefaultLegacy","e","React__default","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_createClass","Constructor","protoProps","staticProps","prototype","isProd","process","env","isString","o","toString","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","trim","error","console","warn","makeStyleTag","cssString","relativeToTag","createElement","setAttribute","type","appendChild","createTextNode","head","getElementsByTagName","insertBefore","get","condition","message","Error","hash","str","_$hash","charCodeAt","stringHash","sanitize","replace","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","style","module","STATUS_STEPS","STATUS_COLORS","created","delivered","running","replied","failed","closed","StatusBar","status","idx","indexOf","isFailed","className","s","animationDelay","MarkdownContent","text","parts","split","part","startsWith","endsWith","lines","lang","match","code","TaskChatPanel","alias","onClose","inline","availableNodes","messages","setMessages","input","setInput","priority","setPriority","sending","setSending","pollingIds","setPollingIds","Set","historyLoaded","setHistoryLoaded","targetAlias","setTargetAlias","showMentions","setShowMentions","mentionFilter","setMentionFilter","mentionNodes","setMentionNodes","messagesEndRef","textareaRef","fetch","then","r","json","d","nodes","sessions","catch","loadHistory","res","encodeURIComponent","data","tasks","reverse","setTimeout","current","focus","scrollIntoView","behavior","size","startTime","Date","now","interval","setInterval","clearInterval","taskId","updated","prev","m","task_id","includes","n","delete","send","taskContent","sendTo","atMatch","mentioned","find","toLowerCase","height","method","headers","body","JSON","stringify","task","ok","newMsg","message_id","from_name","to_name","content","result","created_at","toISOString","handleKeyDown","metaKey","ctrlKey","preventDefault","handleInputChange","lastAt","lastIndexOf","after","insertMention","nodeName","before","filteredMentions","autoResize","el","Math","min","scrollHeight","chatContent","onClick","onChange","onKeyDown","placeholder","rows","disabled","fill","viewBox","stroke","strokeWidth","strokeLinecap","strokeLinejoin"],"mappings":"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","ignoreList":[0,1]}
1
+ {"version":3,"sources":["../../../../node_modules/styled-jsx/dist/index/index.js","../../../../node_modules/styled-jsx/style.js","../../../../app/components/TaskChatPanel.tsx"],"sourcesContent":["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","'use client';\n\nimport { useState, useEffect, useRef, useCallback } from 'react';\nimport { timeAgo } from './utils';\n\ninterface ChatTask {\n task_id: string;\n from_name: string;\n to_name: string;\n status: string;\n priority: string;\n content: string;\n result: string;\n created_at: string;\n}\n\nconst STATUS_STEPS = ['created', 'delivered', 'running', 'replied'];\nconst STATUS_COLORS: Record<string, string> = {\n created: 'bg-gray-400', delivered: 'bg-blue-400', running: 'bg-green-400',\n replied: 'bg-purple-400', failed: 'bg-red-400', closed: 'bg-gray-500',\n};\n\nfunction StatusBar({ status }: { status: string }) {\n const idx = STATUS_STEPS.indexOf(status);\n const isFailed = status === 'failed';\n return (\n <div className=\"flex items-center gap-1 mt-1.5\">\n {STATUS_STEPS.map((s, i) => (\n <div key={s} className=\"flex items-center gap-1\">\n <div className={`w-2 h-2 rounded-full transition-all duration-700 ${\n isFailed ? (i === 0 ? 'bg-red-400' : 'bg-gray-700')\n : i <= idx ? (STATUS_COLORS[s] || 'bg-gray-600') : 'bg-gray-700'\n }`} />\n {i < STATUS_STEPS.length - 1 && (\n <div className={`w-4 h-px transition-colors duration-700 ${\n isFailed ? 'bg-red-800' : i < idx ? 'bg-gray-500' : 'bg-gray-800'\n }`} />\n )}\n </div>\n ))}\n <span className={`text-[10px] ml-1.5 font-medium ${\n isFailed ? 'text-red-400' : status === 'replied' ? 'text-purple-400'\n : status === 'running' ? 'text-green-400' : 'text-gray-500'\n }`}>{status}</span>\n {(status === 'running' || status === 'delivered') && (\n <span className=\"ml-1\">\n <span className=\"inline-block w-1 h-1 rounded-full bg-green-400 animate-pulse\" />\n <span className=\"inline-block w-1 h-1 rounded-full bg-green-400 animate-pulse ml-0.5\" style={{ animationDelay: '0.2s' }} />\n <span className=\"inline-block w-1 h-1 rounded-full bg-green-400 animate-pulse ml-0.5\" style={{ animationDelay: '0.4s' }} />\n </span>\n )}\n </div>\n );\n}\n\nfunction MarkdownContent({ text }: { text: string }) {\n if (!text) return <span className=\"text-gray-600 italic\">No content</span>;\n\n const parts = text.split(/(```[\\s\\S]*?```|`[^`\\n]+`|\\*\\*[^*]+\\*\\*)/g);\n return (\n <div className=\"whitespace-pre-wrap break-words leading-relaxed\">\n {parts.map((part, i) => {\n if (part.startsWith('```') && part.endsWith('```')) {\n const lines = part.slice(3, -3);\n const lang = lines.match(/^(\\w+)\\n/)?.[1] || '';\n const code = lang ? lines.slice(lang.length + 1) : lines;\n return (\n <div key={i} className=\"my-2 rounded-lg overflow-hidden border border-[#1a1a2a]\">\n {lang && <div className=\"bg-[#0a0a15] px-3 py-1 text-[10px] text-gray-500 border-b border-[#1a1a2a]\">{lang}</div>}\n <pre className=\"bg-[#050510] px-3 py-2 text-[11px] text-green-300 overflow-x-auto\">{code}</pre>\n </div>\n );\n }\n if (part.startsWith('`') && part.endsWith('`')) {\n return <code key={i} className=\"bg-[#0a0a15] rounded px-1.5 py-0.5 text-cyan-300 text-[11px] border border-[#1a1a2a]\">{part.slice(1, -1)}</code>;\n }\n if (part.startsWith('**') && part.endsWith('**')) {\n return <strong key={i} className=\"text-white font-semibold\">{part.slice(2, -2)}</strong>;\n }\n return <span key={i}>{part}</span>;\n })}\n </div>\n );\n}\n\ninterface TaskChatPanelProps {\n alias: string;\n onClose: () => void;\n /** When true, renders without outer panel chrome (for use inside CommandCenter) */\n inline?: boolean;\n /** Available nodes for @ mention */\n availableNodes?: string[];\n}\n\nexport function TaskChatPanel({ alias, onClose, inline, availableNodes }: TaskChatPanelProps) {\n const [messages, setMessages] = useState<ChatTask[]>([]);\n const [input, setInput] = useState('');\n const [priority, setPriority] = useState('normal');\n const [sending, setSending] = useState(false);\n const [pollingIds, setPollingIds] = useState<Set<string>>(new Set());\n const [historyLoaded, setHistoryLoaded] = useState(false);\n const [targetAlias, setTargetAlias] = useState(alias);\n const [showMentions, setShowMentions] = useState(false);\n const [mentionFilter, setMentionFilter] = useState('');\n const [mentionNodes, setMentionNodes] = useState<string[]>([]);\n const messagesEndRef = useRef<HTMLDivElement>(null);\n const textareaRef = useRef<HTMLTextAreaElement>(null);\n\n // Load available nodes for @ mention\n useEffect(() => {\n if (availableNodes) { setMentionNodes(availableNodes); return; }\n fetch('/api/hub/status').then(r => r.json()).then(d => {\n const nodes = (d.sessions || []).filter((s: { status: string }) => s.status !== 'offline').map((s: { alias: string }) => s.alias);\n setMentionNodes(nodes);\n }).catch(() => {});\n }, [availableNodes]);\n\n // Reset target when alias changes\n useEffect(() => { setTargetAlias(alias); }, [alias]);\n\n // Load task history for this node\n const loadHistory = useCallback(async () => {\n try {\n const res = await fetch(`/api/hub/tasks?to_name=${encodeURIComponent(alias)}&limit=30`);\n const data = await res.json();\n if (data.tasks) {\n // Show oldest first\n setMessages(data.tasks.reverse());\n }\n } catch {} finally {\n setHistoryLoaded(true);\n }\n }, [alias]);\n\n useEffect(() => {\n setMessages([]);\n setHistoryLoaded(false);\n loadHistory();\n // Focus textarea\n setTimeout(() => textareaRef.current?.focus(), 300);\n }, [alias, loadHistory]);\n\n // Auto-scroll to bottom\n useEffect(() => {\n messagesEndRef.current?.scrollIntoView({ behavior: 'smooth' });\n }, [messages]);\n\n // Poll pending tasks for status updates\n useEffect(() => {\n if (pollingIds.size === 0) return;\n const startTime = Date.now();\n const interval = setInterval(async () => {\n // Timeout after 120s\n if (Date.now() - startTime > 120000) {\n setPollingIds(new Set());\n clearInterval(interval);\n return;\n }\n for (const taskId of pollingIds) {\n try {\n const res = await fetch(`/api/hub/tasks?task_id=${encodeURIComponent(taskId)}`);\n const data = await res.json();\n if (data.tasks?.[0]) {\n const updated = data.tasks[0];\n setMessages(prev => prev.map(m => m.task_id === taskId ? { ...m, ...updated } : m));\n if (['replied', 'failed', 'closed', 'expired', 'cancelled'].includes(updated.status)) {\n setPollingIds(prev => { const n = new Set(prev); n.delete(taskId); return n; });\n }\n }\n } catch {}\n }\n }, 2000);\n return () => clearInterval(interval);\n }, [pollingIds]);\n\n const send = async () => {\n if (!input.trim() || sending) return;\n let taskContent = input.trim();\n let sendTo = targetAlias;\n\n // Parse @mention at start: \"@NodeName rest of message\"\n const atMatch = taskContent.match(/^@(\\S+)\\s+([\\s\\S]+)/);\n if (atMatch) {\n const mentioned = mentionNodes.find(n => n.toLowerCase() === atMatch[1].toLowerCase());\n if (mentioned) {\n sendTo = mentioned;\n taskContent = atMatch[2];\n }\n }\n\n setSending(true);\n setInput('');\n setShowMentions(false);\n if (textareaRef.current) textareaRef.current.style.height = 'auto';\n\n try {\n const res = await fetch('/api/hub/send', {\n method: 'POST',\n headers: { 'Content-Type': 'application/json' },\n body: JSON.stringify({ alias: sendTo, task: taskContent, priority }),\n });\n const data = await res.json();\n if (data.ok) {\n const newMsg: ChatTask = {\n task_id: data.message_id || `tmp-${Date.now()}`,\n from_name: 'Dashboard',\n to_name: sendTo,\n status: 'created',\n priority,\n content: taskContent,\n result: '',\n created_at: new Date().toISOString(),\n };\n setMessages(prev => [...prev, newMsg]);\n if (data.message_id) {\n setPollingIds(prev => new Set(prev).add(data.message_id));\n }\n }\n } catch {}\n setSending(false);\n textareaRef.current?.focus();\n };\n\n const handleKeyDown = (e: React.KeyboardEvent) => {\n // Enter sends, Shift+Enter inserts newline (standard chat UX).\n // Users habit-pressed Enter expecting send and saw nothing happen.\n if (e.key === 'Enter' && !e.shiftKey && !e.nativeEvent.isComposing) {\n e.preventDefault();\n send();\n }\n if (e.key === 'Escape') setShowMentions(false);\n };\n\n const handleInputChange = (value: string) => {\n setInput(value);\n // Check if user just typed @\n const lastAt = value.lastIndexOf('@');\n if (lastAt >= 0 && (lastAt === 0 || value[lastAt - 1] === ' ' || value[lastAt - 1] === '\\n')) {\n const after = value.slice(lastAt + 1);\n if (!after.includes(' ') && !after.includes('\\n')) {\n setMentionFilter(after.toLowerCase());\n setShowMentions(true);\n return;\n }\n }\n setShowMentions(false);\n };\n\n const insertMention = (nodeName: string) => {\n const lastAt = input.lastIndexOf('@');\n const before = input.slice(0, lastAt);\n setInput(`${before}@${nodeName} `);\n setShowMentions(false);\n textareaRef.current?.focus();\n };\n\n const filteredMentions = mentionNodes.filter(n =>\n n !== alias && n.toLowerCase().includes(mentionFilter)\n ).slice(0, 8);\n\n const autoResize = (el: HTMLTextAreaElement) => {\n el.style.height = 'auto';\n el.style.height = Math.min(el.scrollHeight, 150) + 'px';\n };\n\n // Inline mode: just the chat content, no panel chrome\n const chatContent = (\n <>\n {/* Messages area */}\n <div className=\"flex-1 overflow-y-auto px-4 py-4 space-y-4\">\n {!historyLoaded && (\n <div className=\"flex justify-center py-8\">\n <div className=\"w-5 h-5 border-2 border-cyan-500/30 border-t-cyan-500 rounded-full animate-spin\" />\n </div>\n )}\n {historyLoaded && messages.length === 0 && (\n <div className=\"text-center py-12\">\n <div className=\"text-3xl mb-3\">💬</div>\n <div className=\"text-gray-500 text-sm\">Start a conversation</div>\n <div className=\"text-gray-600 text-xs mt-1\">Send a task to {alias}</div>\n </div>\n )}\n\n {messages.map((m, idx) => (\n <div key={m.task_id} className=\"space-y-2\">\n {/* Outgoing task */}\n <div className=\"flex justify-end\">\n <div className=\"max-w-[85%] bg-cyan-500/8 border border-cyan-500/15 rounded-2xl rounded-br-md px-4 py-2.5 shadow-sm\">\n <div className=\"text-[13px] text-gray-200\">\n <MarkdownContent text={m.content} />\n </div>\n <div className=\"flex items-center justify-between mt-1.5 gap-3\">\n <StatusBar status={m.status} />\n <span className=\"text-[9px] text-gray-600 shrink-0\">{timeAgo(m.created_at)}</span>\n </div>\n </div>\n </div>\n\n {/* Incoming reply */}\n {m.result && (\n <div className=\"flex justify-start\">\n <div className=\"max-w-[85%] bg-green-500/8 border border-green-500/15 rounded-2xl rounded-bl-md px-4 py-2.5 shadow-sm\">\n <div className=\"text-[10px] text-green-400 font-medium mb-1.5\">{m.to_name}</div>\n <div className=\"text-[13px] text-gray-200\">\n <MarkdownContent text={m.result} />\n </div>\n </div>\n </div>\n )}\n\n {/* Typing indicator when running */}\n {m.status === 'running' && !m.result && (\n <div className=\"flex justify-start\">\n <div className=\"bg-[#111128] border border-[#2a2a4a] rounded-2xl rounded-bl-md px-4 py-3\">\n <div className=\"flex gap-1\">\n <span className=\"w-2 h-2 rounded-full bg-gray-500 animate-bounce\" style={{ animationDelay: '0s' }} />\n <span className=\"w-2 h-2 rounded-full bg-gray-500 animate-bounce\" style={{ animationDelay: '0.15s' }} />\n <span className=\"w-2 h-2 rounded-full bg-gray-500 animate-bounce\" style={{ animationDelay: '0.3s' }} />\n </div>\n </div>\n </div>\n )}\n </div>\n ))}\n <div ref={messagesEndRef} />\n </div>\n\n {/* Input area */}\n <div className=\"border-t border-[#2a2a4a] bg-[#0d0d1a] px-4 py-3\">\n <div className=\"flex items-end gap-2\">\n <div className=\"flex-1 relative\">\n {/* @ mention dropdown */}\n {showMentions && filteredMentions.length > 0 && (\n <div className=\"absolute bottom-full left-0 right-0 mb-1 bg-[#111128] border border-[#2a2a4a] rounded-lg shadow-xl shadow-black/50 overflow-hidden z-10 max-h-48 overflow-y-auto\">\n {filteredMentions.map(node => (\n <button key={node} onClick={() => insertMention(node)}\n className=\"w-full flex items-center gap-2 px-3 py-2 text-xs text-left hover:bg-cyan-500/10 transition-colors\">\n <span className=\"w-2 h-2 rounded-full bg-cyan-400 shrink-0\" />\n <span className=\"text-gray-300\">{node}</span>\n </button>\n ))}\n </div>\n )}\n <textarea\n ref={textareaRef}\n value={input}\n onChange={e => { handleInputChange(e.target.value); autoResize(e.target); }}\n onKeyDown={handleKeyDown}\n placeholder={`Message ${alias}...`}\n rows={1}\n className=\"w-full bg-[#111128] border border-[#2a2a4a] rounded-xl px-4 py-2.5 pr-16 text-sm text-white placeholder-gray-600 focus:border-cyan-500/40 focus:outline-none resize-none transition-colors\"\n />\n <div className=\"absolute right-2 bottom-1.5 flex items-center gap-1\">\n <select value={priority} onChange={e => setPriority(e.target.value)}\n className=\"bg-transparent text-[9px] text-gray-600 focus:outline-none cursor-pointer\">\n <option value=\"normal\">N</option>\n <option value=\"high\">H</option>\n <option value=\"low\">L</option>\n </select>\n </div>\n </div>\n <button onClick={send} disabled={sending || !input.trim()}\n className=\"p-2.5 bg-cyan-600 hover:bg-cyan-500 disabled:bg-gray-800 disabled:text-gray-600 text-white rounded-xl transition-all shrink-0 active:scale-95\">\n {sending ? (\n <div className=\"w-5 h-5 border-2 border-white/30 border-t-white rounded-full animate-spin\" />\n ) : (\n <svg className=\"w-5 h-5\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" strokeWidth={2}>\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" d=\"M6 12L3.269 3.126A59.768 59.768 0 0121.485 12 59.77 59.77 0 013.27 20.876L5.999 12zm0 0h7.5\" />\n </svg>\n )}\n </button>\n </div>\n <div className=\"flex justify-between text-[9px] text-gray-700 mt-1.5\">\n <span>{input.includes('@') ? `Sending to: ${targetAlias}` : `Type @ to mention another node`}</span>\n <span>Enter to send · Shift+Enter for newline</span>\n </div>\n </div>\n </>\n );\n\n if (inline) {\n return <div className=\"flex flex-col h-full\">{chatContent}</div>;\n }\n\n return (\n <>\n <div className=\"fixed inset-0 bg-black/30 z-40 lg:hidden\" onClick={onClose} />\n <div className=\"fixed top-0 right-0 h-full w-full lg:w-[500px] bg-[#0a0a1a] border-l border-[#2a2a4a] z-50 flex flex-col shadow-2xl shadow-black/60 animate-slide-in\">\n {/* Header */}\n <div className=\"flex items-center justify-between px-4 py-3 border-b border-[#2a2a4a] bg-[#0d0d1a]\">\n <div className=\"flex items-center gap-3\">\n <div className=\"w-8 h-8 rounded-full bg-gradient-to-br from-cyan-500/30 to-blue-500/30 flex items-center justify-center text-xs font-bold text-cyan-300\">\n {alias.slice(0, 2)}\n </div>\n <div>\n <div className=\"text-sm font-semibold text-white\">{alias}</div>\n <div className=\"text-[10px] text-gray-500\">{pollingIds.size > 0 ? 'Processing...' : 'Ready'}</div>\n </div>\n </div>\n <button onClick={onClose} className=\"text-gray-500 hover:text-white p-1.5 rounded-lg hover:bg-[#1a1a2a]\">\n <svg className=\"w-5 h-5\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" strokeWidth={2}>\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" d=\"M6 18L18 6M6 6l12 12\" />\n </svg>\n </button>\n </div>\n {chatContent}\n </div>\n <style jsx global>{`\n @keyframes slide-in { from { transform: translateX(100%); } to { transform: translateX(0); } }\n .animate-slide-in { animation: slide-in 0.2s ease-out; }\n `}</style>\n </>\n );\n}\n"],"names":["React","_interopDefaultLegacy","e","React__default","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_createClass","Constructor","protoProps","staticProps","prototype","isProd","process","env","isString","o","toString","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","trim","error","console","warn","makeStyleTag","cssString","relativeToTag","createElement","setAttribute","type","appendChild","createTextNode","head","getElementsByTagName","insertBefore","get","condition","message","Error","hash","str","_$hash","charCodeAt","stringHash","sanitize","replace","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","style","module","STATUS_STEPS","STATUS_COLORS","created","delivered","running","replied","failed","closed","StatusBar","status","idx","indexOf","isFailed","className","s","animationDelay","MarkdownContent","text","parts","split","part","startsWith","endsWith","lines","lang","match","code","TaskChatPanel","alias","onClose","inline","availableNodes","messages","setMessages","input","setInput","priority","setPriority","sending","setSending","pollingIds","setPollingIds","Set","historyLoaded","setHistoryLoaded","targetAlias","setTargetAlias","showMentions","setShowMentions","mentionFilter","setMentionFilter","mentionNodes","setMentionNodes","messagesEndRef","textareaRef","fetch","then","r","json","d","nodes","sessions","catch","loadHistory","res","encodeURIComponent","data","tasks","reverse","setTimeout","current","focus","scrollIntoView","behavior","size","startTime","Date","now","interval","setInterval","clearInterval","taskId","updated","prev","m","task_id","includes","n","delete","send","taskContent","sendTo","atMatch","mentioned","find","toLowerCase","height","method","headers","body","JSON","stringify","task","ok","newMsg","message_id","from_name","to_name","content","result","created_at","toISOString","handleKeyDown","shiftKey","nativeEvent","isComposing","preventDefault","handleInputChange","lastAt","lastIndexOf","after","insertMention","nodeName","before","filteredMentions","autoResize","el","Math","min","scrollHeight","chatContent","onClick","onChange","onKeyDown","placeholder","rows","disabled","fill","viewBox","stroke","strokeWidth","strokeLinecap","strokeLinejoin"],"mappings":"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","ignoreList":[0,1]}
@@ -7,9 +7,9 @@ globalThis.__BUILD_MANIFEST = {
7
7
  "static/chunks/03~yq9q893hmn.js"
8
8
  ],
9
9
  "lowPriorityFiles": [
10
- "static/fkJPKTF2q7UWKqbDE1FlR/_buildManifest.js",
11
- "static/fkJPKTF2q7UWKqbDE1FlR/_ssgManifest.js",
12
- "static/fkJPKTF2q7UWKqbDE1FlR/_clientMiddlewareManifest.js"
10
+ "static/lgag_dfMO-AGdtcyMHSLe/_buildManifest.js",
11
+ "static/lgag_dfMO-AGdtcyMHSLe/_ssgManifest.js",
12
+ "static/lgag_dfMO-AGdtcyMHSLe/_clientMiddlewareManifest.js"
13
13
  ],
14
14
  "rootMainFiles": [
15
15
  "static/chunks/0w5hxo645~s.g.js",
@@ -4,4 +4,4 @@
4
4
  w-52
5
5
  -translate-x-full
6
6
  lg:translate-x-0 lg:static lg:shrink-0
7
- "><div class="px-4 py-5 border-b border-[#2a2a4a] "><div><div class="text-white font-bold text-sm">Agent Network</div><div class="text-gray-600 text-xs">Dashboard</div></div></div><div class="pb-20"><nav class="flex flex-col gap-1 px-2 py-4"><a class="flex items-center gap-3 px-3 py-3 rounded-lg text-sm transition-colors active:bg-[#1a1a3a] text-gray-400 hover:text-gray-200 hover:bg-[#1a1a2a] " href="/"><svg class="w-5 h-5 shrink-0" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5"><path stroke-linecap="round" stroke-linejoin="round" d="M3 12l2-2m0 0l7-7 7 7M5 10v10a1 1 0 001 1h3m10-11l2 2m-2-2v10a1 1 0 01-1 1h-3m-6 0a1 1 0 001-1v-4a1 1 0 011-1h2a1 1 0 011 1v4a1 1 0 001 1m-6 0h6"></path></svg><span>Overview</span></a><a class="flex items-center gap-3 px-3 py-3 rounded-lg text-sm transition-colors active:bg-[#1a1a3a] text-gray-400 hover:text-gray-200 hover:bg-[#1a1a2a] " href="/tasks"><svg class="w-5 h-5 shrink-0" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5"><path stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path></svg><span>Tasks</span></a><a class="flex items-center gap-3 px-3 py-3 rounded-lg text-sm transition-colors active:bg-[#1a1a3a] text-gray-400 hover:text-gray-200 hover:bg-[#1a1a2a] " href="/nodes"><svg class="w-5 h-5 shrink-0" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5"><path stroke-linecap="round" stroke-linejoin="round" d="M5 12h14M5 12a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v4a2 2 0 01-2 2M5 12a2 2 0 00-2 2v4a2 2 0 002 2h14a2 2 0 002-2v-4a2 2 0 00-2-2m-2-4h.01M17 16h.01"></path></svg><span>Nodes</span></a><a class="flex items-center gap-3 px-3 py-3 rounded-lg text-sm transition-colors active:bg-[#1a1a3a] text-gray-400 hover:text-gray-200 hover:bg-[#1a1a2a] " href="/messages"><svg class="w-5 h-5 shrink-0" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5"><path stroke-linecap="round" stroke-linejoin="round" d="M8 12h.01M12 12h.01M16 12h.01M21 12c0 4.418-4.03 8-9 8a9.863 9.863 0 01-4.255-.949L3 20l1.395-3.72C3.512 15.042 3 13.574 3 12c0-4.418 4.03-8 9-8s9 3.582 9 8z"></path></svg><span>Messages</span></a><a class="flex items-center gap-3 px-3 py-3 rounded-lg text-sm transition-colors active:bg-[#1a1a3a] text-gray-400 hover:text-gray-200 hover:bg-[#1a1a2a] " href="/settings/networks"><svg class="w-5 h-5 shrink-0" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5"><path stroke-linecap="round" stroke-linejoin="round" d="M21 12a9 9 0 01-9 9m9-9a9 9 0 00-9-9m9 9H3m9 9a9 9 0 01-9-9m9 9c1.657 0 3-4.03 3-9s-1.343-9-3-9m0 18c-1.657 0-3-4.03-3-9s1.343-9 3-9m-9 9a9 9 0 019-9"></path></svg><span>Networks</span></a><a class="flex items-center gap-3 px-3 py-3 rounded-lg text-sm transition-colors active:bg-[#1a1a3a] text-gray-400 hover:text-gray-200 hover:bg-[#1a1a2a] " href="/logs"><svg class="w-5 h-5 shrink-0" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5"><path stroke-linecap="round" stroke-linejoin="round" d="M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"></path></svg><span>Logs</span></a><a class="flex items-center gap-3 px-3 py-3 rounded-lg text-sm transition-colors active:bg-[#1a1a3a] text-gray-400 hover:text-gray-200 hover:bg-[#1a1a2a] " href="/admin"><svg class="w-5 h-5 shrink-0" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5"><path stroke-linecap="round" stroke-linejoin="round" d="M12 4.354a4 4 0 110 5.292M15 21H3v-1a6 6 0 0112 0v1zm0 0h6v-1a6 6 0 00-9-5.197M13 7a4 4 0 11-8 0 4 4 0 018 0z"></path></svg><span>Admin</span></a><a class="flex items-center gap-3 px-3 py-3 rounded-lg text-sm transition-colors active:bg-[#1a1a3a] text-gray-400 hover:text-gray-200 hover:bg-[#1a1a2a] " href="/docs"><svg class="w-5 h-5 shrink-0" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5"><path stroke-linecap="round" stroke-linejoin="round" d="M12 6.253v13m0-13C10.832 5.477 9.246 5 7.5 5S4.168 5.477 3 6.253v13C4.168 18.477 5.754 18 7.5 18s3.332.477 4.5 1.253m0-13C13.168 5.477 14.754 5 16.5 5c1.747 0 3.332.477 4.5 1.253v13C19.832 18.477 18.247 18 16.5 18c-1.746 0-3.332.477-4.5 1.253"></path></svg><span>Docs</span></a><a class="flex items-center gap-3 px-3 py-3 rounded-lg text-sm transition-colors active:bg-[#1a1a3a] text-gray-400 hover:text-gray-200 hover:bg-[#1a1a2a] " href="/settings"><svg class="w-5 h-5 shrink-0" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5"><path stroke-linecap="round" stroke-linejoin="round" d="M10.325 4.317c.426-1.756 2.924-1.756 3.35 0a1.724 1.724 0 002.573 1.066c1.543-.94 3.31.826 2.37 2.37a1.724 1.724 0 001.066 2.573c1.756.426 1.756 2.924 0 3.35a1.724 1.724 0 00-1.066 2.573c.94 1.543-.826 3.31-2.37 2.37a1.724 1.724 0 00-2.573 1.066c-.426 1.756-2.924 1.756-3.35 0a1.724 1.724 0 00-2.573-1.066c-1.543.94-3.31-.826-2.37-2.37a1.724 1.724 0 00-1.066-2.573c-1.756-.426-1.756-2.924 0-3.35a1.724 1.724 0 001.066-2.573c-.94-1.543.826-3.31 2.37-2.37.996.608 2.296.07 2.572-1.065z M15 12a3 3 0 11-6 0 3 3 0 016 0z"></path></svg><span>Settings</span></a></nav></div><div class="absolute bottom-0 left-0 right-0 border-t border-[#2a2a4a] bg-[#0d0d1a]"><button class="w-full flex items-center gap-3 px-5 py-3 text-xs text-gray-500 hover:text-red-400 hover:bg-red-500/5 transition-colors"><svg class="w-4 h-4" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5"><path stroke-linecap="round" stroke-linejoin="round" d="M15.75 9V5.25A2.25 2.25 0 0013.5 3h-6a2.25 2.25 0 00-2.25 2.25v13.5A2.25 2.25 0 007.5 21h6a2.25 2.25 0 002.25-2.25V15m3 0l3-3m0 0l-3-3m3 3H9"></path></svg>Sign out</button><button class="hidden lg:flex w-full justify-center py-2 text-gray-600 hover:text-gray-400 transition-colors"><svg class="w-4 h-4 transition-transform " fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path stroke-linecap="round" stroke-linejoin="round" d="M15 19l-7-7 7-7"></path></svg></button></div></aside><main class="flex-1 min-w-0"><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--></main></div><script src="/_next/static/chunks/0w5hxo645~s.g.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[58963,[\"/_next/static/chunks/0io~i_rk3k9q3.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"NetworkProvider\"]\n3:I[25045,[\"/_next/static/chunks/0io~i_rk3k9q3.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"AppShell\"]\n4:I[39756,[\"/_next/static/chunks/0io~i_rk3k9q3.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"default\"]\n5:I[37457,[\"/_next/static/chunks/0io~i_rk3k9q3.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"default\"]\n6:I[97367,[\"/_next/static/chunks/0io~i_rk3k9q3.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"OutletBoundary\"]\n7:\"$Sreact.suspense\"\na:I[97367,[\"/_next/static/chunks/0io~i_rk3k9q3.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"ViewportBoundary\"]\nc:I[97367,[\"/_next/static/chunks/0io~i_rk3k9q3.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"MetadataBoundary\"]\ne:I[68027,[\"/_next/static/chunks/0io~i_rk3k9q3.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"default\",1]\n:HL[\"/_next/static/chunks/0_qu9.8wo.eq1.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",16],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0_qu9.8wo.eq1.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0io~i_rk3k9q3.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/0s4w.hhez3.xx.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"geist_mono_8d43a2aa-module__8Li5zG__variable h-full antialiased\",\"children\":[\"$\",\"body\",null,{\"className\":\"min-h-full bg-[#0a0a1a]\",\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"children\":[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:props:children:props:notFound:0:1:props:style\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L6\",null,{\"children\":[\"$\",\"$7\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@8\"}]}]]}],{},null,false,null]},null,false,\"$@9\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$La\",null,{\"children\":\"$Lb\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Lc\",null,{\"children\":[\"$\",\"$7\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Ld\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$e\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0_qu9.8wo.eq1.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"fkJPKTF2q7UWKqbDE1FlR\"}\n"])</script><script>self.__next_f.push([1,"f:[]\n9:\"$Wf\"\n"])</script><script>self.__next_f.push([1,"b:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#0a0a1a\"}]]\n"])</script><script>self.__next_f.push([1,"10:I[27201,[\"/_next/static/chunks/0io~i_rk3k9q3.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"IconMark\"]\n8:null\nd:[[\"$\",\"title\",\"0\",{\"children\":\"Agent Network Dashboard\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Real-time monitoring dashboard for Agent Network nodes via CommHub\"}],[\"$\",\"meta\",\"2\",{\"property\":\"og:title\",\"content\":\"Agent Network Dashboard\"}],[\"$\",\"meta\",\"3\",{\"property\":\"og:description\",\"content\":\"Real-time monitoring dashboard for Agent Network nodes\"}],[\"$\",\"meta\",\"4\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"5\",{\"name\":\"twitter:card\",\"content\":\"summary\"}],[\"$\",\"meta\",\"6\",{\"name\":\"twitter:title\",\"content\":\"Agent Network Dashboard\"}],[\"$\",\"meta\",\"7\",{\"name\":\"twitter:description\",\"content\":\"Real-time monitoring dashboard for Agent Network nodes\"}],[\"$\",\"link\",\"8\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?favicon.0x3dzn~oxb6tn.ico\",\"sizes\":\"256x256\",\"type\":\"image/x-icon\"}],[\"$\",\"link\",\"9\",{\"rel\":\"icon\",\"href\":\"/favicon.svg\"}],[\"$\",\"$L10\",\"10\",{}]]\n"])</script></body></html>
7
+ "><div class="px-4 py-5 border-b border-[#2a2a4a] "><div><div class="text-white font-bold text-sm">Agent Network</div><div class="text-gray-600 text-xs">Dashboard</div></div></div><div class="pb-20"><nav class="flex flex-col gap-1 px-2 py-4"><a class="flex items-center gap-3 px-3 py-3 rounded-lg text-sm transition-colors active:bg-[#1a1a3a] text-gray-400 hover:text-gray-200 hover:bg-[#1a1a2a] " href="/"><svg class="w-5 h-5 shrink-0" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5"><path stroke-linecap="round" stroke-linejoin="round" d="M3 12l2-2m0 0l7-7 7 7M5 10v10a1 1 0 001 1h3m10-11l2 2m-2-2v10a1 1 0 01-1 1h-3m-6 0a1 1 0 001-1v-4a1 1 0 011-1h2a1 1 0 011 1v4a1 1 0 001 1m-6 0h6"></path></svg><span>Overview</span></a><a class="flex items-center gap-3 px-3 py-3 rounded-lg text-sm transition-colors active:bg-[#1a1a3a] text-gray-400 hover:text-gray-200 hover:bg-[#1a1a2a] " href="/tasks"><svg class="w-5 h-5 shrink-0" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5"><path stroke-linecap="round" stroke-linejoin="round" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4"></path></svg><span>Tasks</span></a><a class="flex items-center gap-3 px-3 py-3 rounded-lg text-sm transition-colors active:bg-[#1a1a3a] text-gray-400 hover:text-gray-200 hover:bg-[#1a1a2a] " href="/nodes"><svg class="w-5 h-5 shrink-0" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5"><path stroke-linecap="round" stroke-linejoin="round" d="M5 12h14M5 12a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v4a2 2 0 01-2 2M5 12a2 2 0 00-2 2v4a2 2 0 002 2h14a2 2 0 002-2v-4a2 2 0 00-2-2m-2-4h.01M17 16h.01"></path></svg><span>Nodes</span></a><a class="flex items-center gap-3 px-3 py-3 rounded-lg text-sm transition-colors active:bg-[#1a1a3a] text-gray-400 hover:text-gray-200 hover:bg-[#1a1a2a] " href="/messages"><svg class="w-5 h-5 shrink-0" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5"><path stroke-linecap="round" stroke-linejoin="round" d="M8 12h.01M12 12h.01M16 12h.01M21 12c0 4.418-4.03 8-9 8a9.863 9.863 0 01-4.255-.949L3 20l1.395-3.72C3.512 15.042 3 13.574 3 12c0-4.418 4.03-8 9-8s9 3.582 9 8z"></path></svg><span>Messages</span></a><a class="flex items-center gap-3 px-3 py-3 rounded-lg text-sm transition-colors active:bg-[#1a1a3a] text-gray-400 hover:text-gray-200 hover:bg-[#1a1a2a] " href="/settings/networks"><svg class="w-5 h-5 shrink-0" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5"><path stroke-linecap="round" stroke-linejoin="round" d="M21 12a9 9 0 01-9 9m9-9a9 9 0 00-9-9m9 9H3m9 9a9 9 0 01-9-9m9 9c1.657 0 3-4.03 3-9s-1.343-9-3-9m0 18c-1.657 0-3-4.03-3-9s1.343-9 3-9m-9 9a9 9 0 019-9"></path></svg><span>Networks</span></a><a class="flex items-center gap-3 px-3 py-3 rounded-lg text-sm transition-colors active:bg-[#1a1a3a] text-gray-400 hover:text-gray-200 hover:bg-[#1a1a2a] " href="/logs"><svg class="w-5 h-5 shrink-0" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5"><path stroke-linecap="round" stroke-linejoin="round" d="M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"></path></svg><span>Logs</span></a><a class="flex items-center gap-3 px-3 py-3 rounded-lg text-sm transition-colors active:bg-[#1a1a3a] text-gray-400 hover:text-gray-200 hover:bg-[#1a1a2a] " href="/admin"><svg class="w-5 h-5 shrink-0" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5"><path stroke-linecap="round" stroke-linejoin="round" d="M12 4.354a4 4 0 110 5.292M15 21H3v-1a6 6 0 0112 0v1zm0 0h6v-1a6 6 0 00-9-5.197M13 7a4 4 0 11-8 0 4 4 0 018 0z"></path></svg><span>Admin</span></a><a class="flex items-center gap-3 px-3 py-3 rounded-lg text-sm transition-colors active:bg-[#1a1a3a] text-gray-400 hover:text-gray-200 hover:bg-[#1a1a2a] " href="/docs"><svg class="w-5 h-5 shrink-0" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5"><path stroke-linecap="round" stroke-linejoin="round" d="M12 6.253v13m0-13C10.832 5.477 9.246 5 7.5 5S4.168 5.477 3 6.253v13C4.168 18.477 5.754 18 7.5 18s3.332.477 4.5 1.253m0-13C13.168 5.477 14.754 5 16.5 5c1.747 0 3.332.477 4.5 1.253v13C19.832 18.477 18.247 18 16.5 18c-1.746 0-3.332.477-4.5 1.253"></path></svg><span>Docs</span></a><a class="flex items-center gap-3 px-3 py-3 rounded-lg text-sm transition-colors active:bg-[#1a1a3a] text-gray-400 hover:text-gray-200 hover:bg-[#1a1a2a] " href="/settings"><svg class="w-5 h-5 shrink-0" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5"><path stroke-linecap="round" stroke-linejoin="round" d="M10.325 4.317c.426-1.756 2.924-1.756 3.35 0a1.724 1.724 0 002.573 1.066c1.543-.94 3.31.826 2.37 2.37a1.724 1.724 0 001.066 2.573c1.756.426 1.756 2.924 0 3.35a1.724 1.724 0 00-1.066 2.573c.94 1.543-.826 3.31-2.37 2.37a1.724 1.724 0 00-2.573 1.066c-.426 1.756-2.924 1.756-3.35 0a1.724 1.724 0 00-2.573-1.066c-1.543.94-3.31-.826-2.37-2.37a1.724 1.724 0 00-1.066-2.573c-1.756-.426-1.756-2.924 0-3.35a1.724 1.724 0 001.066-2.573c-.94-1.543.826-3.31 2.37-2.37.996.608 2.296.07 2.572-1.065z M15 12a3 3 0 11-6 0 3 3 0 016 0z"></path></svg><span>Settings</span></a></nav></div><div class="absolute bottom-0 left-0 right-0 border-t border-[#2a2a4a] bg-[#0d0d1a]"><button class="w-full flex items-center gap-3 px-5 py-3 text-xs text-gray-500 hover:text-red-400 hover:bg-red-500/5 transition-colors"><svg class="w-4 h-4" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5"><path stroke-linecap="round" stroke-linejoin="round" d="M15.75 9V5.25A2.25 2.25 0 0013.5 3h-6a2.25 2.25 0 00-2.25 2.25v13.5A2.25 2.25 0 007.5 21h6a2.25 2.25 0 002.25-2.25V15m3 0l3-3m0 0l-3-3m3 3H9"></path></svg>Sign out</button><button class="hidden lg:flex w-full justify-center py-2 text-gray-600 hover:text-gray-400 transition-colors"><svg class="w-4 h-4 transition-transform " fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path stroke-linecap="round" stroke-linejoin="round" d="M15 19l-7-7 7-7"></path></svg></button></div></aside><main class="flex-1 min-w-0"><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--></main></div><script src="/_next/static/chunks/0w5hxo645~s.g.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[58963,[\"/_next/static/chunks/0io~i_rk3k9q3.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"NetworkProvider\"]\n3:I[25045,[\"/_next/static/chunks/0io~i_rk3k9q3.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"AppShell\"]\n4:I[39756,[\"/_next/static/chunks/0io~i_rk3k9q3.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"default\"]\n5:I[37457,[\"/_next/static/chunks/0io~i_rk3k9q3.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"default\"]\n6:I[97367,[\"/_next/static/chunks/0io~i_rk3k9q3.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"OutletBoundary\"]\n7:\"$Sreact.suspense\"\na:I[97367,[\"/_next/static/chunks/0io~i_rk3k9q3.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"ViewportBoundary\"]\nc:I[97367,[\"/_next/static/chunks/0io~i_rk3k9q3.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"MetadataBoundary\"]\ne:I[68027,[\"/_next/static/chunks/0io~i_rk3k9q3.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"default\",1]\n:HL[\"/_next/static/chunks/0_qu9.8wo.eq1.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",16],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0_qu9.8wo.eq1.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0io~i_rk3k9q3.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/0s4w.hhez3.xx.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"geist_mono_8d43a2aa-module__8Li5zG__variable h-full antialiased\",\"children\":[\"$\",\"body\",null,{\"className\":\"min-h-full bg-[#0a0a1a]\",\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"children\":[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:props:children:props:notFound:0:1:props:style\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L6\",null,{\"children\":[\"$\",\"$7\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@8\"}]}]]}],{},null,false,null]},null,false,\"$@9\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$La\",null,{\"children\":\"$Lb\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Lc\",null,{\"children\":[\"$\",\"$7\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Ld\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$e\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0_qu9.8wo.eq1.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"lgag_dfMO-AGdtcyMHSLe\"}\n"])</script><script>self.__next_f.push([1,"f:[]\n9:\"$Wf\"\n"])</script><script>self.__next_f.push([1,"b:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#0a0a1a\"}]]\n"])</script><script>self.__next_f.push([1,"10:I[27201,[\"/_next/static/chunks/0io~i_rk3k9q3.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"IconMark\"]\n8:null\nd:[[\"$\",\"title\",\"0\",{\"children\":\"Agent Network Dashboard\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Real-time monitoring dashboard for Agent Network nodes via CommHub\"}],[\"$\",\"meta\",\"2\",{\"property\":\"og:title\",\"content\":\"Agent Network Dashboard\"}],[\"$\",\"meta\",\"3\",{\"property\":\"og:description\",\"content\":\"Real-time monitoring dashboard for Agent Network nodes\"}],[\"$\",\"meta\",\"4\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"5\",{\"name\":\"twitter:card\",\"content\":\"summary\"}],[\"$\",\"meta\",\"6\",{\"name\":\"twitter:title\",\"content\":\"Agent Network Dashboard\"}],[\"$\",\"meta\",\"7\",{\"name\":\"twitter:description\",\"content\":\"Real-time monitoring dashboard for Agent Network nodes\"}],[\"$\",\"link\",\"8\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?favicon.0x3dzn~oxb6tn.ico\",\"sizes\":\"256x256\",\"type\":\"image/x-icon\"}],[\"$\",\"link\",\"9\",{\"rel\":\"icon\",\"href\":\"/favicon.svg\"}],[\"$\",\"$L10\",\"10\",{}]]\n"])</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/0w5hxo645~s.g.js"/><script src="/_next/static/chunks/0pqt~8bl3ukh4.js" async=""></script><script src="/_next/static/chunks/15-ywchriw.vi.js" async=""></script><script src="/_next/static/chunks/0e-wrhqh4h3r5.js" async=""></script><script src="/_next/static/chunks/turbopack-0zklppa1rg.u8.js" async=""></script><script src="/_next/static/chunks/01xlw8hd842-c.js" async=""></script><script src="/_next/static/chunks/0s4w.hhez3.xx.js" async=""></script><meta name="next-size-adjust" content=""/><title>500: This page couldn’t load</title><link rel="icon" href="/favicon.ico?favicon.0x3dzn~oxb6tn.ico" sizes="256x256" type="image/x-icon"/><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/03~yq9q893hmn.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script src="/_next/static/chunks/0w5hxo645~s.g.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"default\"]\n3:I[37457,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"default\"]\n4:I[97367,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[97367,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"ViewportBoundary\"]\na:I[97367,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"MetadataBoundary\"]\nc:I[68027,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"default\",1]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]}],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$@7\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"fkJPKTF2q7UWKqbDE1FlR\"}\n"])</script><script>self.__next_f.push([1,"d:[]\n7:\"$Wd\"\n"])</script><script>self.__next_f.push([1,"9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"e:I[27201,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"IconMark\"]\n6:null\nb:[[\"$\",\"link\",\"0\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?favicon.0x3dzn~oxb6tn.ico\",\"sizes\":\"256x256\",\"type\":\"image/x-icon\"}],[\"$\",\"$Le\",\"1\",{}]]\n"])</script></body></html>
1
+ <!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/0w5hxo645~s.g.js"/><script src="/_next/static/chunks/0pqt~8bl3ukh4.js" async=""></script><script src="/_next/static/chunks/15-ywchriw.vi.js" async=""></script><script src="/_next/static/chunks/0e-wrhqh4h3r5.js" async=""></script><script src="/_next/static/chunks/turbopack-0zklppa1rg.u8.js" async=""></script><script src="/_next/static/chunks/01xlw8hd842-c.js" async=""></script><script src="/_next/static/chunks/0s4w.hhez3.xx.js" async=""></script><meta name="next-size-adjust" content=""/><title>500: This page couldn’t load</title><link rel="icon" href="/favicon.ico?favicon.0x3dzn~oxb6tn.ico" sizes="256x256" type="image/x-icon"/><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/03~yq9q893hmn.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script src="/_next/static/chunks/0w5hxo645~s.g.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"default\"]\n3:I[37457,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"default\"]\n4:I[97367,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[97367,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"ViewportBoundary\"]\na:I[97367,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"MetadataBoundary\"]\nc:I[68027,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"default\",1]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]}],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$@7\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"lgag_dfMO-AGdtcyMHSLe\"}\n"])</script><script>self.__next_f.push([1,"d:[]\n7:\"$Wd\"\n"])</script><script>self.__next_f.push([1,"9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"e:I[27201,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0s4w.hhez3.xx.js\"],\"IconMark\"]\n6:null\nb:[[\"$\",\"link\",\"0\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?favicon.0x3dzn~oxb6tn.ico\",\"sizes\":\"256x256\",\"type\":\"image/x-icon\"}],[\"$\",\"$Le\",\"1\",{}]]\n"])</script></body></html>