shieldcortex 4.42.0 → 4.42.2

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 (446) hide show
  1. package/dashboard/.next/standalone/dashboard/.next/BUILD_ID +1 -1
  2. package/dashboard/.next/standalone/dashboard/.next/app-path-routes-manifest.json +2 -0
  3. package/dashboard/.next/standalone/dashboard/.next/build-manifest.json +2 -2
  4. package/dashboard/.next/standalone/dashboard/.next/prerender-manifest.json +58 -0
  5. package/dashboard/.next/standalone/dashboard/.next/routes-manifest.json +12 -0
  6. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/admin/page.js +12 -9
  7. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/admin/page.js.nft.json +1 -1
  8. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/admin/page_client-reference-manifest.js +1 -1
  9. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/cloud/page.js +12 -9
  10. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/cloud/page.js.nft.json +1 -1
  11. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/cloud/page_client-reference-manifest.js +1 -1
  12. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/capture/page.js +12 -9
  13. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/capture/page.js.nft.json +1 -1
  14. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/capture/page_client-reference-manifest.js +1 -1
  15. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/graph/page.js +12 -9
  16. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/graph/page.js.nft.json +1 -1
  17. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/graph/page_client-reference-manifest.js +1 -1
  18. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/page.js +11 -8
  19. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/page.js.nft.json +1 -1
  20. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/page_client-reference-manifest.js +1 -1
  21. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/recall/page.js +12 -9
  22. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/recall/page.js.nft.json +1 -1
  23. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/recall/page_client-reference-manifest.js +1 -1
  24. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/replay/page.js +11 -8
  25. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/replay/page.js.nft.json +1 -1
  26. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/replay/page_client-reference-manifest.js +1 -1
  27. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/review/page.js +12 -9
  28. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/review/page.js.nft.json +1 -1
  29. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/review/page_client-reference-manifest.js +1 -1
  30. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/timeline/page.js +12 -9
  31. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/timeline/page.js.nft.json +1 -1
  32. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/timeline/page_client-reference-manifest.js +1 -1
  33. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/overview/page.js +11 -8
  34. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/overview/page.js.nft.json +1 -1
  35. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/overview/page_client-reference-manifest.js +1 -1
  36. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/protection/audit/page.js +12 -9
  37. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/protection/audit/page.js.nft.json +1 -1
  38. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/protection/audit/page_client-reference-manifest.js +1 -1
  39. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/protection/intercepts/page.js +12 -9
  40. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/protection/intercepts/page.js.nft.json +1 -1
  41. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/protection/intercepts/page_client-reference-manifest.js +1 -1
  42. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/protection/iron-dome/page.js +12 -9
  43. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/protection/iron-dome/page.js.nft.json +1 -1
  44. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/protection/iron-dome/page_client-reference-manifest.js +1 -1
  45. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/protection/page.js +11 -8
  46. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/protection/page.js.nft.json +1 -1
  47. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/protection/page_client-reference-manifest.js +1 -1
  48. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/protection/policies/page.js +12 -9
  49. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/protection/policies/page.js.nft.json +1 -1
  50. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/protection/policies/page_client-reference-manifest.js +1 -1
  51. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/protection/quarantine/page.js +12 -9
  52. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/protection/quarantine/page.js.nft.json +1 -1
  53. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/protection/quarantine/page_client-reference-manifest.js +1 -1
  54. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/settings/page.js +11 -8
  55. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/settings/page.js.nft.json +1 -1
  56. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/settings/page_client-reference-manifest.js +1 -1
  57. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/supply-chain/page.js +12 -9
  58. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/supply-chain/page.js.nft.json +1 -1
  59. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/supply-chain/page_client-reference-manifest.js +1 -1
  60. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/supply-chain/xray/page.js +12 -9
  61. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/supply-chain/xray/page.js.nft.json +1 -1
  62. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/supply-chain/xray/page_client-reference-manifest.js +1 -1
  63. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/xray/page.js +11 -8
  64. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/xray/page.js.nft.json +1 -1
  65. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/xray/page_client-reference-manifest.js +1 -1
  66. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error/page.js +4 -4
  67. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error/page.js.nft.json +1 -1
  68. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  69. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.html +2 -2
  70. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.rsc +1 -1
  71. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  72. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  73. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  74. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  75. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  76. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found/page.js +11 -8
  77. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found/page.js.nft.json +1 -1
  78. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  79. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.html +1 -1
  80. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.rsc +13 -12
  81. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_full.segment.rsc +13 -12
  82. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_head.segment.rsc +4 -3
  83. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_index.segment.rsc +7 -7
  84. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  85. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
  86. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  87. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.html +1 -1
  88. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.rsc +10 -9
  89. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/!KGRhc2hib2FyZCk/admin/__PAGE__.segment.rsc +1 -1
  90. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/!KGRhc2hib2FyZCk/admin.segment.rsc +1 -1
  91. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  92. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/_full.segment.rsc +10 -9
  93. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/_head.segment.rsc +2 -1
  94. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/_index.segment.rsc +2 -2
  95. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/_tree.segment.rsc +2 -2
  96. package/dashboard/.next/standalone/dashboard/.next/server/app/apple-icon.png/route/app-paths-manifest.json +3 -0
  97. package/dashboard/.next/standalone/dashboard/.next/server/app/apple-icon.png/route/build-manifest.json +11 -0
  98. package/dashboard/.next/standalone/dashboard/.next/server/app/apple-icon.png/route.js +7 -0
  99. package/dashboard/.next/standalone/dashboard/.next/server/app/apple-icon.png/route.js.map +5 -0
  100. package/dashboard/.next/standalone/dashboard/.next/server/app/apple-icon.png/route.js.nft.json +1 -0
  101. package/dashboard/.next/standalone/dashboard/.next/server/app/apple-icon.png.body +0 -0
  102. package/dashboard/.next/standalone/dashboard/.next/server/app/apple-icon.png.meta +1 -0
  103. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.html +1 -1
  104. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.rsc +10 -9
  105. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/!KGRhc2hib2FyZCk/cloud/__PAGE__.segment.rsc +1 -1
  106. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/!KGRhc2hib2FyZCk/cloud.segment.rsc +1 -1
  107. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  108. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/_full.segment.rsc +10 -9
  109. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/_head.segment.rsc +2 -1
  110. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/_index.segment.rsc +2 -2
  111. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/_tree.segment.rsc +2 -2
  112. package/dashboard/.next/standalone/dashboard/.next/server/app/icon.png/route/app-paths-manifest.json +3 -0
  113. package/dashboard/.next/standalone/dashboard/.next/server/app/icon.png/route/build-manifest.json +11 -0
  114. package/dashboard/.next/standalone/dashboard/.next/server/app/icon.png/route.js +6 -0
  115. package/dashboard/.next/standalone/dashboard/.next/server/app/icon.png/route.js.map +5 -0
  116. package/dashboard/.next/standalone/dashboard/.next/server/app/icon.png/route.js.nft.json +1 -0
  117. package/dashboard/.next/standalone/dashboard/.next/server/app/icon.png.body +0 -0
  118. package/dashboard/.next/standalone/dashboard/.next/server/app/icon.png.meta +1 -0
  119. package/dashboard/.next/standalone/dashboard/.next/server/app/index.html +1 -1
  120. package/dashboard/.next/standalone/dashboard/.next/server/app/index.rsc +5 -4
  121. package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  122. package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_full.segment.rsc +5 -4
  123. package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_head.segment.rsc +2 -1
  124. package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_index.segment.rsc +2 -2
  125. package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  126. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.html +1 -1
  127. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.rsc +10 -9
  128. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/!KGRhc2hib2FyZCk/memory/capture/__PAGE__.segment.rsc +1 -1
  129. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/!KGRhc2hib2FyZCk/memory/capture.segment.rsc +1 -1
  130. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  131. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  132. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/_full.segment.rsc +10 -9
  133. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/_head.segment.rsc +2 -1
  134. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/_index.segment.rsc +2 -2
  135. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/_tree.segment.rsc +2 -2
  136. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.html +1 -1
  137. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.rsc +10 -9
  138. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/!KGRhc2hib2FyZCk/memory/graph/__PAGE__.segment.rsc +1 -1
  139. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/!KGRhc2hib2FyZCk/memory/graph.segment.rsc +1 -1
  140. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  141. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  142. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/_full.segment.rsc +10 -9
  143. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/_head.segment.rsc +2 -1
  144. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/_index.segment.rsc +2 -2
  145. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/_tree.segment.rsc +2 -2
  146. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.html +1 -1
  147. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.rsc +10 -9
  148. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/!KGRhc2hib2FyZCk/memory/recall/__PAGE__.segment.rsc +1 -1
  149. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/!KGRhc2hib2FyZCk/memory/recall.segment.rsc +1 -1
  150. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  151. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  152. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/_full.segment.rsc +10 -9
  153. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/_head.segment.rsc +2 -1
  154. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/_index.segment.rsc +2 -2
  155. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/_tree.segment.rsc +2 -2
  156. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.html +1 -1
  157. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.rsc +11 -10
  158. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.segments/!KGRhc2hib2FyZCk/memory/replay/__PAGE__.segment.rsc +2 -2
  159. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.segments/!KGRhc2hib2FyZCk/memory/replay.segment.rsc +1 -1
  160. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  161. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  162. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.segments/_full.segment.rsc +11 -10
  163. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.segments/_head.segment.rsc +2 -1
  164. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.segments/_index.segment.rsc +2 -2
  165. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.segments/_tree.segment.rsc +2 -2
  166. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.html +1 -1
  167. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.rsc +10 -9
  168. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/!KGRhc2hib2FyZCk/memory/review/__PAGE__.segment.rsc +1 -1
  169. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/!KGRhc2hib2FyZCk/memory/review.segment.rsc +1 -1
  170. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  171. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  172. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/_full.segment.rsc +10 -9
  173. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/_head.segment.rsc +2 -1
  174. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/_index.segment.rsc +2 -2
  175. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/_tree.segment.rsc +2 -2
  176. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.html +1 -1
  177. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.rsc +10 -9
  178. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/!KGRhc2hib2FyZCk/memory/timeline/__PAGE__.segment.rsc +1 -1
  179. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/!KGRhc2hib2FyZCk/memory/timeline.segment.rsc +1 -1
  180. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  181. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  182. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/_full.segment.rsc +10 -9
  183. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/_head.segment.rsc +2 -1
  184. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/_index.segment.rsc +2 -2
  185. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/_tree.segment.rsc +2 -2
  186. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.html +1 -1
  187. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.rsc +11 -10
  188. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/!KGRhc2hib2FyZCk/memory/__PAGE__.segment.rsc +2 -2
  189. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  190. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  191. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/_full.segment.rsc +11 -10
  192. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/_head.segment.rsc +2 -1
  193. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/_index.segment.rsc +2 -2
  194. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/_tree.segment.rsc +2 -2
  195. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.html +1 -1
  196. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.rsc +11 -10
  197. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/!KGRhc2hib2FyZCk/overview/__PAGE__.segment.rsc +2 -2
  198. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/!KGRhc2hib2FyZCk/overview.segment.rsc +1 -1
  199. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  200. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/_full.segment.rsc +11 -10
  201. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/_head.segment.rsc +2 -1
  202. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/_index.segment.rsc +2 -2
  203. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/_tree.segment.rsc +2 -2
  204. package/dashboard/.next/standalone/dashboard/.next/server/app/page.js +12 -9
  205. package/dashboard/.next/standalone/dashboard/.next/server/app/page.js.nft.json +1 -1
  206. package/dashboard/.next/standalone/dashboard/.next/server/app/page_client-reference-manifest.js +1 -1
  207. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.html +1 -1
  208. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.rsc +10 -9
  209. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/!KGRhc2hib2FyZCk/protection/audit/__PAGE__.segment.rsc +1 -1
  210. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/!KGRhc2hib2FyZCk/protection/audit.segment.rsc +1 -1
  211. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/!KGRhc2hib2FyZCk/protection.segment.rsc +1 -1
  212. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  213. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/_full.segment.rsc +10 -9
  214. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/_head.segment.rsc +2 -1
  215. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/_index.segment.rsc +2 -2
  216. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/_tree.segment.rsc +2 -2
  217. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.html +1 -1
  218. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.rsc +10 -9
  219. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/!KGRhc2hib2FyZCk/protection/intercepts/__PAGE__.segment.rsc +1 -1
  220. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/!KGRhc2hib2FyZCk/protection/intercepts.segment.rsc +1 -1
  221. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/!KGRhc2hib2FyZCk/protection.segment.rsc +1 -1
  222. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  223. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/_full.segment.rsc +10 -9
  224. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/_head.segment.rsc +2 -1
  225. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/_index.segment.rsc +2 -2
  226. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/_tree.segment.rsc +2 -2
  227. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.html +1 -1
  228. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.rsc +10 -9
  229. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/!KGRhc2hib2FyZCk/protection/iron-dome/__PAGE__.segment.rsc +1 -1
  230. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/!KGRhc2hib2FyZCk/protection/iron-dome.segment.rsc +1 -1
  231. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/!KGRhc2hib2FyZCk/protection.segment.rsc +1 -1
  232. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  233. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/_full.segment.rsc +10 -9
  234. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/_head.segment.rsc +2 -1
  235. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/_index.segment.rsc +2 -2
  236. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/_tree.segment.rsc +2 -2
  237. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.html +1 -1
  238. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.rsc +10 -9
  239. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/!KGRhc2hib2FyZCk/protection/policies/__PAGE__.segment.rsc +1 -1
  240. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/!KGRhc2hib2FyZCk/protection/policies.segment.rsc +1 -1
  241. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/!KGRhc2hib2FyZCk/protection.segment.rsc +1 -1
  242. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  243. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/_full.segment.rsc +10 -9
  244. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/_head.segment.rsc +2 -1
  245. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/_index.segment.rsc +2 -2
  246. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/_tree.segment.rsc +2 -2
  247. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.html +1 -1
  248. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.rsc +10 -9
  249. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/!KGRhc2hib2FyZCk/protection/quarantine/__PAGE__.segment.rsc +1 -1
  250. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/!KGRhc2hib2FyZCk/protection/quarantine.segment.rsc +1 -1
  251. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/!KGRhc2hib2FyZCk/protection.segment.rsc +1 -1
  252. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  253. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/_full.segment.rsc +10 -9
  254. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/_head.segment.rsc +2 -1
  255. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/_index.segment.rsc +2 -2
  256. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/_tree.segment.rsc +2 -2
  257. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.html +1 -1
  258. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.rsc +11 -10
  259. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/!KGRhc2hib2FyZCk/protection/__PAGE__.segment.rsc +2 -2
  260. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/!KGRhc2hib2FyZCk/protection.segment.rsc +1 -1
  261. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  262. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/_full.segment.rsc +11 -10
  263. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/_head.segment.rsc +2 -1
  264. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/_index.segment.rsc +2 -2
  265. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/_tree.segment.rsc +2 -2
  266. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.html +1 -1
  267. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.rsc +11 -10
  268. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/!KGRhc2hib2FyZCk/settings/__PAGE__.segment.rsc +2 -2
  269. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/!KGRhc2hib2FyZCk/settings.segment.rsc +1 -1
  270. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  271. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/_full.segment.rsc +11 -10
  272. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/_head.segment.rsc +2 -1
  273. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/_index.segment.rsc +2 -2
  274. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
  275. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.html +1 -1
  276. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.rsc +10 -9
  277. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/!KGRhc2hib2FyZCk/supply-chain/xray/__PAGE__.segment.rsc +1 -1
  278. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/!KGRhc2hib2FyZCk/supply-chain/xray.segment.rsc +1 -1
  279. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/!KGRhc2hib2FyZCk/supply-chain.segment.rsc +1 -1
  280. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  281. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/_full.segment.rsc +10 -9
  282. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/_head.segment.rsc +2 -1
  283. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/_index.segment.rsc +2 -2
  284. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/_tree.segment.rsc +2 -2
  285. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.html +1 -1
  286. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.rsc +10 -9
  287. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/!KGRhc2hib2FyZCk/supply-chain/__PAGE__.segment.rsc +1 -1
  288. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/!KGRhc2hib2FyZCk/supply-chain.segment.rsc +1 -1
  289. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  290. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/_full.segment.rsc +10 -9
  291. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/_head.segment.rsc +2 -1
  292. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/_index.segment.rsc +2 -2
  293. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/_tree.segment.rsc +2 -2
  294. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.html +1 -1
  295. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.rsc +11 -10
  296. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/!KGRhc2hib2FyZCk/xray/__PAGE__.segment.rsc +2 -2
  297. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/!KGRhc2hib2FyZCk/xray.segment.rsc +1 -1
  298. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  299. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/_full.segment.rsc +11 -10
  300. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/_head.segment.rsc +2 -1
  301. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/_index.segment.rsc +2 -2
  302. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/_tree.segment.rsc +2 -2
  303. package/dashboard/.next/standalone/dashboard/.next/server/app-paths-manifest.json +2 -0
  304. package/dashboard/.next/standalone/dashboard/.next/server/chunks/9f1d4_next_dist_esm_build_templates_app-route_138db64f.js +3 -0
  305. package/dashboard/.next/standalone/dashboard/.next/server/chunks/[externals]_next_dist_a6d89067._.js +3 -0
  306. package/dashboard/.next/standalone/dashboard/.next/server/chunks/[root-of-the-server]__2967c5a2._.js +3 -0
  307. package/dashboard/.next/standalone/dashboard/.next/server/chunks/[root-of-the-server]__5a83e3d7._.js +21 -0
  308. package/dashboard/.next/standalone/dashboard/.next/server/chunks/[turbopack]_runtime.js +795 -0
  309. package/dashboard/.next/standalone/dashboard/.next/server/chunks/dashboard__next-internal_server_app_apple-icon_png_route_actions_8ea4440c.js +3 -0
  310. package/dashboard/.next/standalone/dashboard/.next/server/chunks/dashboard__next-internal_server_app_icon_png_route_actions_fb0b9645.js +3 -0
  311. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/{9f1d4_next_dist_d7bbb1c6._.js → 9f1d4_3dabb53c._.js} +2 -2
  312. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/9f1d4_d9432122._.js +3 -0
  313. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/{9f1d4_next_dist_0984e28b._.js → 9f1d4_next_dist_0aa46811._.js} +2 -2
  314. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/9f1d4_next_dist_478eaa5a._.js +3 -0
  315. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/9f1d4_next_dist_a807378c._.js +3 -0
  316. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/9f1d4_next_dist_esm_build_templates_app-page_7531ffa4.js +4 -0
  317. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__02571632._.js +3 -0
  318. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__030931ea._.js +4 -0
  319. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/{[root-of-the-server]__60b060b2._.js → [root-of-the-server]__0b8962cb._.js} +2 -2
  320. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__0d1b9fab._.js +3 -0
  321. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__14738b0f._.js +3 -0
  322. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__17bf123d._.js +3 -0
  323. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__19f3f4ea._.js +10 -0
  324. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__1b9699b4._.js +3 -0
  325. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__1d9312c0._.js +3 -0
  326. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__1e083ed5._.js +3 -0
  327. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__1e50dea8._.js +3 -0
  328. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/{[root-of-the-server]__618ebef2._.js → [root-of-the-server]__46cb3e9a._.js} +2 -2
  329. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__49ab52e8._.js +3 -0
  330. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__55bfa55f._.js +3 -0
  331. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__57ee9b7e._.js +3 -0
  332. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__58467784._.js +3 -0
  333. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__5f79cd96._.js +3 -0
  334. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__6afe312f._.js +3 -0
  335. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__6c6b3609._.js +3 -0
  336. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__748a927d._.js +3 -0
  337. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__76b43270._.js +3 -0
  338. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__7d450870._.js +3 -0
  339. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__85d0be08._.js +3 -0
  340. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__8d51dcf7._.js +3 -0
  341. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__95eb3890._.js +3 -0
  342. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__a9fd2fa0._.js +3 -0
  343. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__adcdad5a._.js +3 -0
  344. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__c643542b._.js +3 -0
  345. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__c75835d5._.js +3 -0
  346. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__db4bd11c._.js +3 -0
  347. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__db88035a._.js +3 -0
  348. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_011870cf._.js +4 -0
  349. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_03685fa4._.js +4 -0
  350. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_2936b47c._.js +4 -0
  351. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_3ab21740._.js +4 -0
  352. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_4368ce29._.js +4 -0
  353. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_510925b3._.js +4 -0
  354. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_5a3cbe73._.js +4 -0
  355. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_5c57e773._.js +4 -0
  356. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_8c6c3857._.js +4 -0
  357. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_8dbbe87e._.js +4 -0
  358. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_8dfc96ce._.js +4 -0
  359. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_9cd4f9f6._.js +4 -0
  360. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_ae89af33._.js +4 -0
  361. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_b04f7daa._.js +4 -0
  362. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_bc23a9f3._.js +4 -0
  363. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_be8e57ad._.js +4 -0
  364. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_c93a2cdf._.js +4 -0
  365. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_dd291363._.js +4 -0
  366. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_eef7a258._.js +4 -0
  367. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_f1e3986a._.js +4 -0
  368. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_f49ad0f8._.js +4 -0
  369. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_src_48aa48e3._.js +1 -1
  370. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_src_app_(dashboard)_overview_page_tsx_8c105626._.js +1 -1
  371. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_src_app_98034450._.js +3 -0
  372. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_src_app_c056a62e._.js +3 -0
  373. package/dashboard/.next/standalone/dashboard/.next/server/pages/404.html +1 -1
  374. package/dashboard/.next/standalone/dashboard/.next/server/pages/500.html +2 -2
  375. package/dashboard/.next/standalone/dashboard/.next/static/chunks/0fc21036dad1e8db.js +1 -0
  376. package/dashboard/.next/standalone/dashboard/.next/static/chunks/{0813ee664e620e80.js → a6fdf700d3be87c8.js} +1 -1
  377. package/dashboard/.next/standalone/dashboard/.next/static/chunks/{41c550a60ee25280.js → aa7e96b7a8fcbb82.js} +1 -1
  378. package/dashboard/.next/standalone/dashboard/.next/static/chunks/{dcfd5a3eb20885c2.js → ae03115f7a98fde3.js} +1 -1
  379. package/dashboard/.next/standalone/dashboard/.next/static/chunks/bce2cf2eff0722f4.css +1 -0
  380. package/dashboard/.next/standalone/dashboard/.next/static/media/apple-icon.33ede0f2.png +0 -0
  381. package/dashboard/.next/standalone/dashboard/.next/static/media/icon.b3fec833.png +0 -0
  382. package/dashboard/.next/standalone/dashboard/node_modules/next/dist/compiled/next-server/app-route-turbo.runtime.prod.js +6 -0
  383. package/dashboard/.next/standalone/dashboard/public/shieldcortex-logo.png +0 -0
  384. package/dist/cli/doctor.d.ts +7 -0
  385. package/dist/cli/doctor.js +33 -0
  386. package/dist/service/dashboard-staleness.d.ts +52 -0
  387. package/dist/service/dashboard-staleness.js +160 -0
  388. package/package.json +1 -1
  389. package/scripts/postinstall.mjs +26 -2
  390. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/9f1d4_eb0d92cc._.js +0 -4
  391. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/9f1d4_next_dist_esm_build_templates_app-page_f7d4354e.js +0 -4
  392. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__4b8693ea._.js +0 -3
  393. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__5304568b._.js +0 -3
  394. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__83e0e1ef._.js +0 -3
  395. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__9d976219._.js +0 -3
  396. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/[root-of-the-server]__c95102dd._.js +0 -3
  397. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_024efb58._.js +0 -4
  398. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_0934dafc._.js +0 -3
  399. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_0d9fbcc0._.js +0 -4
  400. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_0e714544._.js +0 -3
  401. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_18059cf9._.js +0 -3
  402. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_1bfd1423._.js +0 -3
  403. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_25af784d._.js +0 -3
  404. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_2ae2cdd9._.js +0 -4
  405. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_2e20858e._.js +0 -4
  406. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_2f2b5522._.js +0 -4
  407. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_315f952f._.js +0 -4
  408. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_341cc376._.js +0 -4
  409. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_42c76551._.js +0 -4
  410. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_537e8679._.js +0 -3
  411. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_5a44c25a._.js +0 -4
  412. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_5b25ee34._.js +0 -3
  413. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_5ebb1380._.js +0 -3
  414. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_62f8f1fa._.js +0 -3
  415. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_65d138f7._.js +0 -4
  416. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_71fe2c0e._.js +0 -4
  417. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_7cf5447f._.js +0 -4
  418. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_80a74456._.js +0 -3
  419. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_86b2b751._.js +0 -3
  420. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_8c581cd9._.js +0 -3
  421. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_91d25d41._.js +0 -3
  422. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_992cf6c5._.js +0 -3
  423. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_9f4c00b5._.js +0 -4
  424. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_a0a7f554._.js +0 -4
  425. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_a3cc94bf._.js +0 -4
  426. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_b1850b4f._.js +0 -3
  427. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_b4e15446._.js +0 -4
  428. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_bc44a6f5._.js +0 -4
  429. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_c06ef3e8._.js +0 -3
  430. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_cb692f5d._.js +0 -4
  431. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_ccbe7478._.js +0 -3
  432. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_d2ab3dee._.js +0 -3
  433. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_dd1ddeb1._.js +0 -3
  434. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_dd70a70e._.js +0 -4
  435. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_ebc28872._.js +0 -3
  436. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_f89c6dde._.js +0 -4
  437. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_fa4d9b7f._.js +0 -4
  438. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_fac483f8._.js +0 -3
  439. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_fb667e64._.js +0 -3
  440. package/dashboard/.next/standalone/dashboard/.next/static/chunks/699fd12fecbe2007.js +0 -1
  441. package/dashboard/.next/standalone/dashboard/.next/static/chunks/9dd510e6693ca6ac.js +0 -1
  442. package/dashboard/.next/standalone/dashboard/.next/static/chunks/d25030e49454bb56.css +0 -1
  443. package/dashboard/.next/standalone/dashboard/public/favicon.ico +0 -0
  444. /package/dashboard/.next/standalone/dashboard/.next/static/{4z2JAhKnao1A-q8Eo4wzd → YOjg_EQ1jjxbhSKQ00cvQ}/_buildManifest.js +0 -0
  445. /package/dashboard/.next/standalone/dashboard/.next/static/{4z2JAhKnao1A-q8Eo4wzd → YOjg_EQ1jjxbhSKQ00cvQ}/_clientMiddlewareManifest.json +0 -0
  446. /package/dashboard/.next/standalone/dashboard/.next/static/{4z2JAhKnao1A-q8Eo4wzd → YOjg_EQ1jjxbhSKQ00cvQ}/_ssgManifest.js +0 -0
@@ -0,0 +1,4 @@
1
+ module.exports=[68484,a=>{a.n(a.i(40101))},16500,a=>{"use strict";var b=a.i(29049),c=a.i(78161),d=a.i(98107),e=a.i(87402),f=a.i(72863),g=a.i(43014),h=a.i(52928),i=a.i(93488),j=a.i(35902),k=a.i(88489),l=a.i(57690),m=a.i(80193),n=a.i(17838),o=a.i(49824),p=a.i(48456),q=a.i(99282),r=a.i(91208),s=a.i(58214),t=a.i(63491),u=a.i(93729);a.i(39556);var v=a.i(39979),w=a.i(59078),x=a.i(55655),y=a.i(63347),z=a.i(70139),A=a.i(11519),B=a.i(93695),C=a.i(38965);a.i(96812);var D=a.i(9654),E=a.i(99240),F=a.i(28087),G=a.i(65324),H=a.i(26886);let I=["",{children:["(dashboard)",{children:["memory",{children:["__PAGE__",{},{metadata:{},page:[()=>a.r(68484),"[project]/dashboard/src/app/(dashboard)/memory/page.tsx"]}]},{metadata:{}}]},{metadata:{},layout:[()=>a.r(491),"[project]/dashboard/src/app/(dashboard)/layout.tsx"],error:[()=>a.r(14603),"[project]/dashboard/src/app/(dashboard)/error.tsx"],"not-found":[()=>a.r(73101),"[project]/dashboard/node_modules/next/dist/client/components/builtin/not-found.js"],forbidden:[()=>a.r(85571),"[project]/dashboard/node_modules/next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>a.r(1515),"[project]/dashboard/node_modules/next/dist/client/components/builtin/unauthorized.js"]}]},{metadata:{icon:[async a=>[{url:(0,b.fillMetadataSegment)("//",await a.params,"icon.png")+`?${c.default.src.split("/").splice(-1)[0]}`,sizes:`${c.default.width}x${c.default.height}`,type:"image/png"}]],apple:[async a=>[{url:(0,b.fillMetadataSegment)("//",await a.params,"apple-icon.png")+`?${d.default.src.split("/").splice(-1)[0]}`,sizes:`${d.default.width}x${d.default.height}`,type:"image/png"}]]},layout:[()=>a.r(42209),"[project]/dashboard/src/app/layout.tsx"],error:[()=>a.r(20994),"[project]/dashboard/src/app/error.tsx"],"not-found":[()=>a.r(73101),"[project]/dashboard/node_modules/next/dist/client/components/builtin/not-found.js"],forbidden:[()=>a.r(85571),"[project]/dashboard/node_modules/next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>a.r(1515),"[project]/dashboard/node_modules/next/dist/client/components/builtin/unauthorized.js"],"global-error":[()=>a.r(38965),"[project]/dashboard/node_modules/next/dist/client/components/builtin/global-error.js"]}],J={require:a.r.bind(a),loadChunk:a.l.bind(a)},K=new e.AppPageRouteModule({definition:{kind:f.RouteKind.APP_PAGE,page:"/(dashboard)/memory/page",pathname:"/memory",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:I},distDir:".next",relativeProjectDir:""});async function L(a,b,c){var d;K.isDev&&(0,i.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let e=!!(0,i.getRequestMeta)(a,"minimalMode"),M="/(dashboard)/memory/page";M=M.replace(/\/index$/,"")||"/";let N=await K.prepare(a,b,{srcPage:M,multiZoneDraftMode:!1});if(!N)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:O,query:P,params:Q,pageIsDynamic:R,buildManifest:S,nextFontManifest:T,reactLoadableManifest:U,serverActionsManifest:V,clientReferenceManifest:W,subresourceIntegrityManifest:X,prerenderManifest:Y,isDraftMode:Z,resolvedPathname:$,revalidateOnlyGenerated:_,routerServerContext:aa,nextConfig:ab,parsedUrl:ac,interceptionRoutePatterns:ad,deploymentId:ae}=N,af=(0,r.normalizeAppPath)(M),{isOnDemandRevalidate:ag}=N,ah=ab.experimental.ppr&&!ab.cacheComponents&&(0,H.isInterceptionRouteAppPath)($)?null:K.match($,Y),ai=!!Y.routes[$],aj=a.headers["user-agent"]||"",ak=(0,u.getBotType)(aj),al=(0,q.isHtmlBotRequest)(a),am=(0,i.getRequestMeta)(a,"isPrefetchRSCRequest")??"1"===a.headers[t.NEXT_ROUTER_PREFETCH_HEADER],an=(0,i.getRequestMeta)(a,"isRSCRequest")??!!a.headers[t.RSC_HEADER],ao=(0,s.getIsPossibleServerAction)(a),ap=(0,n.checkIsAppPPREnabled)(ab.experimental.ppr);if(!(0,i.getRequestMeta)(a,"postponed")&&ap&&"1"===a.headers[y.NEXT_RESUME_HEADER]&&"POST"===a.method){let b=[];for await(let c of a)b.push(c);let c=Buffer.concat(b).toString("utf8");(0,i.addRequestMeta)(a,"postponed",c)}let aq=ap&&(null==(d=Y.routes[af]??Y.dynamicRoutes[af])?void 0:d.renderingMode)==="PARTIALLY_STATIC",ar=!1,as=!1,at=aq?(0,i.getRequestMeta)(a,"postponed"):void 0,au=aq&&an&&!am;e&&(au=au&&!!at);let av=(0,i.getRequestMeta)(a,"segmentPrefetchRSCRequest"),aw=(!al||!aq)&&(!aj||(0,q.shouldServeStreamingMetadata)(aj,ab.htmlLimitedBots)),ax=!!((ah||ai||Y.routes[af])&&!(al&&aq)),ay=aq&&!0===ab.cacheComponents,az=!0===K.isDev||!ax||"string"==typeof at||(ay&&(0,i.getRequestMeta)(a,"onCacheEntryV2")?au&&!e:au),aA=al&&aq,aB=null;Z||!ax||az||ao||at||au||(aB=$);let aC=aB;!aC&&K.isDev&&(aC=$),K.isDev||Z||!ax||!an||au||(0,l.stripFlightHeaders)(a.headers);let aD={...D,tree:I,GlobalError:C.default,handler:L,routeModule:K,__next_app__:J};V&&W&&(0,p.setManifestsSingleton)({page:M,clientReferenceManifest:W,serverActionsManifest:V});let aE=a.method||"GET",aF=(0,h.getTracer)(),aG=aF.getActiveScopeSpan(),aH=async()=>((null==aa?void 0:aa.render404)?await aa.render404(a,b,ac,!1):b.end("This page could not be found"),null);try{let d=K.getVaryHeader($,ad);b.setHeader("Vary",d);let g=async(c,d)=>{let e=new m.NodeNextRequest(a),f=new m.NodeNextResponse(b);return K.render(e,f,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let a=aF.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==j.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let d=a.get("next.route");if(d){let a=`${aE} ${d}`;c.setAttributes({"next.route":d,"http.route":d,"next.span_name":a}),c.updateName(a)}else c.updateName(`${aE} ${M}`)})},l=(0,i.getRequestMeta)(a,"incrementalCache"),n=async({span:d,postponed:e,fallbackRouteParams:f,forceStaticRender:h})=>{let j={query:P,params:Q,page:af,sharedContext:{buildId:O},serverComponentsHmrCache:(0,i.getRequestMeta)(a,"serverComponentsHmrCache"),fallbackRouteParams:f,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aD,Component:(0,k.interopDefault)(aD),params:Q,routeModule:K,page:M,postponed:e,shouldWaitOnAllReady:aA,serveStreamingMetadata:aw,supportsDynamicResponse:"string"==typeof e||az,buildManifest:S,nextFontManifest:T,reactLoadableManifest:U,subresourceIntegrityManifest:X,setCacheStatus:null==aa?void 0:aa.setCacheStatus,setIsrStatus:null==aa?void 0:aa.setIsrStatus,setReactDebugChannel:null==aa?void 0:aa.setReactDebugChannel,sendErrorsToBrowser:null==aa?void 0:aa.sendErrorsToBrowser,dir:require("path").join(process.cwd(),K.relativeProjectDir),isDraftMode:Z,botType:ak,isOnDemandRevalidate:ag,isPossibleServerAction:ao,assetPrefix:ab.assetPrefix,nextConfigOutput:ab.output,crossOrigin:ab.crossOrigin,trailingSlash:ab.trailingSlash,images:ab.images,previewProps:Y.preview,deploymentId:ae,enableTainting:ab.experimental.taint,htmlLimitedBots:ab.htmlLimitedBots,reactMaxHeadersLength:ab.reactMaxHeadersLength,multiZoneDraftMode:!1,incrementalCache:l,cacheLifeProfiles:ab.cacheLife,basePath:ab.basePath,serverActions:ab.experimental.serverActions,...ar||as?{nextExport:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isDebugDynamicAccesses:ar}:{},cacheComponents:!!ab.cacheComponents,experimental:{isRoutePPREnabled:aq,expireTime:ab.expireTime,staleTimes:ab.experimental.staleTimes,dynamicOnHover:!!ab.experimental.dynamicOnHover,inlineCss:!!ab.experimental.inlineCss,authInterrupts:!!ab.experimental.authInterrupts,clientTraceMetadata:ab.experimental.clientTraceMetadata||[],clientParamParsingOrigins:ab.experimental.clientParamParsingOrigins},waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(b,c,d,e)=>K.onRequestError(a,b,d,e,aa),err:(0,i.getRequestMeta)(a,"invokeError"),dev:K.isDev}};ar&&(j.renderOpts.nextExport=!0,j.renderOpts.supportsDynamicResponse=!1,j.renderOpts.isDebugDynamicAccesses=ar),h&&(j.renderOpts.supportsDynamicResponse=!1);let m=await g(d,j),{metadata:n}=m,{cacheControl:o,headers:p={},fetchTags:q,fetchMetrics:r}=n;if(q&&(p[y.NEXT_CACHE_TAGS_HEADER]=q),a.fetchMetrics=r,ax&&(null==o?void 0:o.revalidate)===0&&!K.isDev&&!aq){let a=n.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${$}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
2
+ see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:v.CachedRouteKind.APP_PAGE,html:m,headers:p,rscData:n.flightData,postponed:n.postponed,status:n.statusCode,segmentData:n.segmentData},cacheControl:o}},p=async({hasResolved:d,previousCacheEntry:g,isRevalidating:h,span:j,forceStaticRender:k=!1})=>{let m,q=!1===K.isDev,r=d||b.writableEnded;if(ag&&_&&!g&&!e)return(null==aa?void 0:aa.render404)?await aa.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(ah&&(m=(0,w.parseFallbackField)(ah.fallback)),m===w.FallbackMode.PRERENDER&&(0,u.isBot)(aj)&&(!aq||al)&&(m=w.FallbackMode.BLOCKING_STATIC_RENDER),(null==g?void 0:g.isStale)===-1&&(ag=!0),ag&&(m!==w.FallbackMode.NOT_FOUND||g)&&(m=w.FallbackMode.BLOCKING_STATIC_RENDER),!e&&m!==w.FallbackMode.BLOCKING_STATIC_RENDER&&aC&&!r&&!Z&&R&&(q||!ai)){if((q||ah)&&m===w.FallbackMode.NOT_FOUND){if(ab.experimental.adapterPath)return await aH();throw new B.NoFallbackError}if(aq&&(ab.cacheComponents?!au:!an)){let b=q&&"string"==typeof(null==ah?void 0:ah.fallback)?ah.fallback:af,d=q&&(null==ah?void 0:ah.fallbackRouteParams)?(0,o.createOpaqueFallbackRouteParams)(ah.fallbackRouteParams):as?(0,o.getFallbackRouteParams)(af,K):null,g=await K.handleResponse({cacheKey:b,req:a,nextConfig:ab,routeKind:f.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:Y,isRoutePPREnabled:aq,responseGenerator:async()=>n({span:j,postponed:void 0,fallbackRouteParams:d,forceStaticRender:!1}),waitUntil:c.waitUntil,isMinimalMode:e});if(null===g)return null;if(g)return delete g.cacheControl,g}}let s=ag||h||!at?void 0:at;if(ay&&!e&&l&&au&&!k){let b=await l.get($,{kind:v.IncrementalCacheKind.APP_PAGE,isRoutePPREnabled:!0,isFallback:!1});b&&b.value&&b.value.kind===v.CachedRouteKind.APP_PAGE&&(s=b.value.postponed,b&&(-1===b.isStale||!0===b.isStale)&&(0,G.scheduleOnNextTick)(async()=>{let b=K.getResponseCache(a);try{await b.revalidate($,l,aq,!1,a=>p({...a,forceStaticRender:!0}),null,d,c.waitUntil)}catch(a){console.error("Error revalidating the page in the background",a)}}))}if(ar&&void 0!==s)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:v.CachedRouteKind.PAGES,html:x.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let t=q&&(null==ah?void 0:ah.fallbackRouteParams)&&(0,i.getRequestMeta)(a,"renderFallbackShell")?(0,o.createOpaqueFallbackRouteParams)(ah.fallbackRouteParams):as?(0,o.getFallbackRouteParams)(af,K):null;return n({span:j,postponed:s,fallbackRouteParams:t,forceStaticRender:k})},q=async d=>{var g,h,j,k,l;let m,o=await K.handleResponse({cacheKey:aB,responseGenerator:a=>p({span:d,...a}),routeKind:f.RouteKind.APP_PAGE,isOnDemandRevalidate:ag,isRoutePPREnabled:aq,req:a,nextConfig:ab,prerenderManifest:Y,waitUntil:c.waitUntil,isMinimalMode:e});if(Z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),K.isDev&&b.setHeader("Cache-Control","no-store, must-revalidate"),!o){if(aB)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(g=o.value)?void 0:g.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(j=o.value)?void 0:j.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let q="string"==typeof o.value.postponed;ax&&!au&&(!q||am)&&(e||b.setHeader("x-nextjs-cache",ag?"REVALIDATED":o.isMiss?"MISS":o.isStale?"STALE":"HIT"),b.setHeader(t.NEXT_IS_PRERENDER_HEADER,"1"));let{value:r}=o;if(at)m={revalidate:0,expire:void 0};else if(au)m={revalidate:0,expire:void 0};else if(!K.isDev)if(Z)m={revalidate:0,expire:void 0};else if(ax){if(o.cacheControl)if("number"==typeof o.cacheControl.revalidate){if(o.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${o.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});m={revalidate:o.cacheControl.revalidate,expire:(null==(k=o.cacheControl)?void 0:k.expire)??ab.expireTime}}else m={revalidate:y.CACHE_ONE_YEAR,expire:void 0}}else b.getHeader("Cache-Control")||(m={revalidate:0,expire:void 0});if(o.cacheControl=m,"string"==typeof av&&(null==r?void 0:r.kind)===v.CachedRouteKind.APP_PAGE&&r.segmentData){b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(l=r.headers)?void 0:l[y.NEXT_CACHE_TAGS_HEADER];e&&ax&&c&&"string"==typeof c&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,c);let d=r.segmentData.get(av);return void 0!==d?(0,A.sendRenderResult)({req:a,res:b,generateEtags:ab.generateEtags,poweredByHeader:ab.poweredByHeader,result:x.default.fromStatic(d,t.RSC_CONTENT_TYPE_HEADER),cacheControl:o.cacheControl}):(b.statusCode=204,(0,A.sendRenderResult)({req:a,res:b,generateEtags:ab.generateEtags,poweredByHeader:ab.poweredByHeader,result:x.default.EMPTY,cacheControl:o.cacheControl}))}let s=ay?(0,i.getRequestMeta)(a,"onCacheEntryV2")??(0,i.getRequestMeta)(a,"onCacheEntry"):(0,i.getRequestMeta)(a,"onCacheEntry");if(s&&await s(o,{url:(0,i.getRequestMeta)(a,"initURL")??a.url}))return null;if(r.headers){let a={...r.headers};for(let[c,d]of(e&&ax||delete a[y.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let u=null==(h=r.headers)?void 0:h[y.NEXT_CACHE_TAGS_HEADER];if(e&&ax&&u&&"string"==typeof u&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,u),!r.status||an&&aq||(b.statusCode=r.status),!e&&r.status&&E.RedirectStatusCode[r.status]&&an&&(b.statusCode=200),q&&!au&&b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"1"),an&&!Z){if(void 0===r.rscData){if(r.html.contentType!==t.RSC_CONTENT_TYPE_HEADER)if(ab.cacheComponents)return b.statusCode=404,(0,A.sendRenderResult)({req:a,res:b,generateEtags:ab.generateEtags,poweredByHeader:ab.poweredByHeader,result:x.default.EMPTY,cacheControl:o.cacheControl});else throw Object.defineProperty(new F.InvariantError(`Expected RSC response, got ${r.html.contentType}`),"__NEXT_ERROR_CODE",{value:"E789",enumerable:!1,configurable:!0});return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ab.generateEtags,poweredByHeader:ab.poweredByHeader,result:r.html,cacheControl:o.cacheControl})}return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ab.generateEtags,poweredByHeader:ab.poweredByHeader,result:x.default.fromStatic(r.rscData,t.RSC_CONTENT_TYPE_HEADER),cacheControl:o.cacheControl})}let w=r.html;if(!q||e||an)return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ab.generateEtags,poweredByHeader:ab.poweredByHeader,result:w,cacheControl:o.cacheControl});if(ar)return w.push(new ReadableStream({start(a){a.enqueue(z.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,A.sendRenderResult)({req:a,res:b,generateEtags:ab.generateEtags,poweredByHeader:ab.poweredByHeader,result:w,cacheControl:{revalidate:0,expire:void 0}});let B=new TransformStream;return w.push(B.readable),n({span:d,postponed:r.postponed,fallbackRouteParams:null,forceStaticRender:!1}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(B.writable)}).catch(a=>{B.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,A.sendRenderResult)({req:a,res:b,generateEtags:ab.generateEtags,poweredByHeader:ab.poweredByHeader,result:w,cacheControl:{revalidate:0,expire:void 0}})};if(!aG)return await aF.withPropagatedContext(a.headers,()=>aF.trace(j.BaseServerSpan.handleRequest,{spanName:`${aE} ${M}`,kind:h.SpanKind.SERVER,attributes:{"http.method":aE,"http.target":a.url}},q));await q(aG)}catch(b){throw b instanceof B.NoFallbackError||await K.onRequestError(a,b,{routerKind:"App Router",routePath:M,routeType:"render",revalidateReason:(0,g.getRevalidateReason)({isStaticGeneration:ax,isOnDemandRevalidate:ag})},!1,aa),b}}a.s(["__next_app__",0,J,"handler",()=>L,"routeModule",0,K],25047),a.i(25047),a.s(["ClientPageRoot",()=>D.ClientPageRoot,"ClientSegmentRoot",()=>D.ClientSegmentRoot,"Fragment",()=>D.Fragment,"GlobalError",()=>C.default,"HTTPAccessFallbackBoundary",()=>D.HTTPAccessFallbackBoundary,"LayoutRouter",()=>D.LayoutRouter,"Postpone",()=>D.Postpone,"RenderFromTemplateContext",()=>D.RenderFromTemplateContext,"RootLayoutBoundary",()=>D.RootLayoutBoundary,"SegmentViewNode",()=>D.SegmentViewNode,"SegmentViewStateNode",()=>D.SegmentViewStateNode,"__next_app__",0,J,"actionAsyncStorage",()=>D.actionAsyncStorage,"captureOwnerStack",()=>D.captureOwnerStack,"collectSegmentData",()=>D.collectSegmentData,"createElement",()=>D.createElement,"createMetadataComponents",()=>D.createMetadataComponents,"createPrerenderParamsForClientSegment",()=>D.createPrerenderParamsForClientSegment,"createPrerenderSearchParamsForClientPage",()=>D.createPrerenderSearchParamsForClientPage,"createServerParamsForServerSegment",()=>D.createServerParamsForServerSegment,"createServerSearchParamsForServerPage",()=>D.createServerSearchParamsForServerPage,"createTemporaryReferenceSet",()=>D.createTemporaryReferenceSet,"decodeAction",()=>D.decodeAction,"decodeFormState",()=>D.decodeFormState,"decodeReply",()=>D.decodeReply,"handler",()=>L,"patchFetch",()=>D.patchFetch,"preconnect",()=>D.preconnect,"preloadFont",()=>D.preloadFont,"preloadStyle",()=>D.preloadStyle,"prerender",()=>D.prerender,"renderToReadableStream",()=>D.renderToReadableStream,"routeModule",0,K,"serverHooks",()=>D.serverHooks,"taintObjectReference",()=>D.taintObjectReference,"workAsyncStorage",()=>D.workAsyncStorage,"workUnitAsyncStorage",()=>D.workUnitAsyncStorage],16500)}];
3
+
4
+ //# sourceMappingURL=dashboard_f49ad0f8._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[1090,a=>{"use strict";var b=a.i(98419);let c="terminal";function d(){return"u"<typeof document?c:"glass"===document.documentElement.getAttribute("data-theme")?"glass":"terminal"}function e(a){return()=>{}}function f(){return[(0,b.useSyncExternalStore)(e,d,()=>c),a=>{if("u">typeof document){try{window.localStorage.setItem("sc-theme",a)}catch{}document.documentElement.setAttribute("data-theme",a),window.dispatchEvent(new Event("sc-theme-change"))}}]}a.s(["useTheme",()=>f])},4999,a=>{"use strict";var b=a.i(16306),c=a.i(98419),d=a.i(1090),e=a.i(11160),f=a.i(52181),g=a.i(70694);let h=(0,g.default)("menu",[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]]);var i=a.i(5479);let j=(0,g.default)("pin-off",[["path",{d:"M12 17v5",key:"bb1du9"}],["path",{d:"M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H7.89",key:"znwnzq"}],["path",{d:"m2 2 20 20",key:"1ooewy"}],["path",{d:"M9 9v1.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h11",key:"c9qhm2"}]]);var k=a.i(98472),l=a.i(95480),m=a.i(64565),n=a.i(76625);let o=(0,g.default)("house",[["path",{d:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8",key:"5wwlr5"}],["path",{d:"M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"r6nss1"}]]),p=(0,g.default)("circle-play",[["path",{d:"M9 9.003a1 1 0 0 1 1.517-.859l4.997 2.997a1 1 0 0 1 0 1.718l-4.997 2.997A1 1 0 0 1 9 14.996z",key:"kmsa83"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);var q=a.i(66397),r=a.i(40145);let s=[{href:"/overview",label:"Overview",icon:o},{href:"/memory",label:"Memory",icon:n.Database},{href:"/memory/replay",label:"Replay",icon:p},{href:"/protection",label:"Protection",icon:k.Shield},{href:"/xray",label:"X-Ray",icon:q.ScanSearch},{href:"/settings",label:"Settings",icon:r.Settings}];var t=a.i(68839),u=a.i(67789),v=a.i(76614);function w(){let a=(0,f.usePathname)(),{sidebarPinned:d,toggleSidebarPinned:g}=(0,t.useDashboardStore)(),[n,o]=(0,c.useState)(!1),[p,q]=(0,c.useState)(null),r=p===a,{isConnected:w}=(0,v.useWebSocketStatus)(),{data:x}=(0,u.useVersion)(),y=d||n||r;return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("button",{onClick:()=>q(a),className:"fixed left-3 top-3 z-50 flex h-10 w-10 items-center justify-center rounded-xl bg-[var(--sc-bg-surface)] border border-[var(--sc-border)] text-[var(--sc-text-secondary)] md:hidden","aria-label":"Open navigation",children:(0,b.jsx)(h,{size:18})}),r&&(0,b.jsx)("div",{className:"fixed inset-0 z-40 bg-black/50 backdrop-blur-sm md:hidden",onClick:()=>q(null)}),(0,b.jsxs)("aside",{className:(0,m.cn)("z-50 flex shrink-0 flex-col border-r border-[var(--sc-border)] bg-[var(--sc-bg-deep)] transition-all duration-300","fixed inset-y-0 left-0 md:relative",r?"translate-x-0":"-translate-x-full md:translate-x-0",y?"w-60":"w-16"),onMouseEnter:()=>o(!0),onMouseLeave:()=>o(!1),children:[(0,b.jsxs)("div",{className:"flex h-16 items-center gap-3 border-b border-[var(--sc-border)] px-4",children:[(0,b.jsx)("div",{className:"flex h-8 w-8 shrink-0 items-center justify-center rounded-lg bg-gradient-to-br from-[var(--sc-coral)] to-[var(--sc-coral-dark)]",children:(0,b.jsx)(k.Shield,{size:16,className:"text-white"})}),(0,b.jsxs)("div",{className:(0,m.cn)("overflow-hidden whitespace-nowrap transition-all duration-300",y?"w-auto opacity-100":"w-0 opacity-0"),children:[(0,b.jsx)("div",{className:"text-[11px] font-semibold uppercase tracking-[0.2em] text-[var(--sc-coral)]",children:"ShieldCortex"}),(0,b.jsx)("div",{className:"text-xs text-[var(--sc-text-muted)]",children:"Dashboard"})]}),r&&(0,b.jsx)("button",{onClick:()=>q(null),className:"ml-auto text-[var(--sc-text-muted)] hover:text-[var(--sc-text-secondary)] md:hidden","aria-label":"Close navigation",children:(0,b.jsx)(l.X,{size:18})})]}),(0,b.jsx)("nav",{className:"flex-1 space-y-1 px-2 py-4",role:"navigation","aria-label":"Main navigation",children:s.map(c=>{var d;let f=c.icon,g="/overview"===(d=c.href)?"/overview"===a||"/"===a:a===d||a.startsWith(`${d}/`);return(0,b.jsxs)(e.default,{href:c.href,"aria-current":g?"page":void 0,className:(0,m.cn)("relative flex items-center gap-3 rounded-xl px-3 py-2.5 transition-all duration-200 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--sc-cyan)]",g?"bg-[var(--sc-surface-interactive)] text-[var(--sc-text-primary)]":"text-[var(--sc-text-muted)] hover:bg-[var(--sc-surface-interactive)] hover:text-[var(--sc-text-secondary)]"),children:[g&&(0,b.jsx)("div",{className:"absolute left-0 top-1/2 h-5 w-0.5 -translate-y-1/2 rounded-r bg-[var(--sc-coral)]"}),(0,b.jsx)(f,{size:18,className:(0,m.cn)("shrink-0",g&&"text-[var(--sc-coral)]")}),(0,b.jsx)("span",{className:(0,m.cn)("overflow-hidden whitespace-nowrap text-sm font-medium transition-all duration-300",y?"w-auto opacity-100":"w-0 opacity-0"),children:c.label})]},c.href)})}),(0,b.jsxs)("div",{className:"space-y-2 border-t border-[var(--sc-border)] px-2 py-3",children:[y&&(0,b.jsxs)("button",{onClick:g,className:"hidden w-full items-center gap-3 rounded-xl px-3 py-2 text-[var(--sc-text-muted)] transition-colors hover:bg-[var(--sc-surface-interactive)] hover:text-[var(--sc-text-secondary)] md:flex","aria-label":d?"Unpin sidebar":"Pin sidebar",children:[d?(0,b.jsx)(j,{size:16}):(0,b.jsx)(i.Pin,{size:16}),(0,b.jsx)("span",{className:"text-xs",children:d?"Unpin":"Pin sidebar"})]}),(0,b.jsxs)("div",{className:"flex items-center gap-3 px-3 py-1",children:[(0,b.jsx)("span",{className:(0,m.cn)("h-2 w-2 shrink-0 rounded-full",w?"bg-[var(--sc-cyan)] pulse-cyan":"bg-[var(--sc-coral)] pulse-coral"),"aria-label":w?"Real-time connected":"Real-time disconnected"}),(0,b.jsx)("span",{className:(0,m.cn)("overflow-hidden whitespace-nowrap text-[11px] text-[var(--sc-text-muted)] transition-all duration-300",y?"w-auto opacity-100":"w-0 opacity-0"),children:w?"Connected":"Disconnected"})]}),(0,b.jsxs)("div",{className:(0,m.cn)("overflow-hidden whitespace-nowrap px-3 font-mono text-[10px] text-[var(--sc-text-muted)] transition-all duration-300",y?"opacity-100":"h-0 opacity-0"),children:["v",x?.version??"..."]})]})]})]})}function x(){return(0,b.jsx)(w,{})}var y=a.i(88904);let z=(0,g.default)("arrow-down",[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]]),A=(0,g.default)("arrow-up",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]);var B=a.i(6476);let C=(0,g.default)("minus",[["path",{d:"M5 12h14",key:"1ays0h"}]]);var D=a.i(79155),E=a.i(22524),F=a.i(14126),G=a.i(40458),H=a.i(86044);let I=process.env.NEXT_PUBLIC_API_URL||"http://localhost:3001",J=[{id:"24h",label:"24h"},{id:"7d",label:"7d"},{id:"30d",label:"30d"}];function K({value:a}){if(void 0===a)return null;if(0===a)return(0,b.jsxs)("span",{className:"inline-flex items-center gap-0.5 text-[10px] text-[var(--sc-text-muted)]",children:[(0,b.jsx)(C,{size:9})," 0"]});let c=a>0;return(0,b.jsxs)("span",{className:`inline-flex items-center gap-0.5 text-[10px] ${c?"text-[var(--sc-cyan)]":"text-[var(--sc-text-muted)]"}`,children:[(0,b.jsx)(c?A:z,{size:9}),c?"+":"",a]})}function L({icon:a,label:c,value:d,delta:e,tone:f}){let g="coral"===f?"text-[var(--sc-coral)]":"cyan"===f?"text-[var(--sc-cyan)]":"text-[var(--sc-text-primary)]";return(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)("span",{className:g,children:a}),(0,b.jsx)("span",{className:"text-[10px] uppercase tracking-[0.12em] text-[var(--sc-text-muted)]",children:c}),(0,b.jsx)("span",{className:`font-mono text-sm font-semibold ${g}`,children:d.toLocaleString()}),(0,b.jsx)(K,{value:e})]})}function M({moment:a}){let c="block"===a.kind||"quarantine"===a.kind?D.ShieldAlert:"capture"===a.kind?F.Sparkles:B.Brain,d="block"===a.kind?"text-[var(--sc-coral)]":"quarantine"===a.kind?"text-[var(--sc-amber)]":"capture"===a.kind?"text-[var(--sc-cyan)]":"text-[var(--sc-text-secondary)]";return(0,b.jsxs)("li",{className:"flex items-start gap-2 rounded border border-[var(--sc-border)] bg-[var(--sc-bg-deep)]/40 p-2",children:[(0,b.jsx)(c,{size:14,className:`mt-0.5 ${d}`}),(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsx)("div",{className:"text-xs font-medium text-[var(--sc-text-primary)] truncate",children:a.title}),(0,b.jsx)("div",{className:"mt-0.5 text-[10px] text-[var(--sc-text-muted)] truncate",children:a.detail})]}),(0,b.jsx)("span",{className:"shrink-0 text-[10px] text-[var(--sc-text-muted)]",children:new Date(a.timestamp).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]})}function N(){let[a,d]=(0,c.useState)("24h"),[e,f]=(0,c.useState)(!1),{projectFilter:g}=(0,t.useDashboardStore)(),{data:h,isLoading:i}=function(a="24h",b){return(0,G.useQuery)({queryKey:["digest",a,b??null],queryFn:async()=>{let c=new URLSearchParams({window:a});b&&c.set("project",b);let d=await (0,H.gatedFetch)(`${I}/api/digest?${c.toString()}`);if(!d.ok)throw Error(await (0,H.readApiError)(d,"Failed to load digest"));return d.json()},refetchInterval:6e4,staleTime:3e4})}(a,g);if(i||!h)return(0,b.jsxs)("div",{className:"flex items-center gap-3 border-b border-[var(--sc-border)] bg-[var(--sc-bg-surface)]/30 px-4 py-2 text-[11px] text-[var(--sc-text-muted)]",children:[(0,b.jsx)(y.Activity,{size:12,className:"animate-pulse"})," Loading activity…"]});let j=h.current,k=h.delta,l=0===j.scanned&&0===j.memoriesCaptured&&0===j.memoriesRecalled;return(0,b.jsxs)("div",{className:"border-b border-[var(--term-border)] bg-[var(--term-surface)] font-mono",children:[(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-x-5 gap-y-2 px-4 py-2 cursor-pointer hover:bg-[var(--term-surface-2)] transition-colors",onClick:()=>f(a=>!a),role:"button",tabIndex:0,onKeyDown:a=>{("Enter"===a.key||" "===a.key)&&f(a=>!a)},"aria-expanded":e,"aria-label":`${h.windowLabel} ShieldCortex activity. Click to ${e?"collapse":"expand"} top moments.`,children:[(0,b.jsx)("span",{className:"text-[10px] uppercase tracking-[0.14em] text-[var(--sc-text-muted)]",children:h.windowLabel}),l?(0,b.jsx)("span",{className:"text-xs text-[var(--sc-text-muted)]",children:"No activity yet — ShieldCortex captures and protects in the background."}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(L,{icon:(0,b.jsx)(E.ShieldCheck,{size:13}),label:"Scanned",value:j.scanned,delta:k.scanned}),(0,b.jsx)(L,{icon:(0,b.jsx)(D.ShieldAlert,{size:13}),label:"Blocked",value:j.blocked+j.quarantined,delta:(k.blocked??0)+(k.quarantined??0),tone:"coral"}),(0,b.jsx)(L,{icon:(0,b.jsx)(F.Sparkles,{size:13}),label:"Captured",value:j.memoriesCaptured,delta:k.memoriesCaptured,tone:"cyan"}),(0,b.jsx)(L,{icon:(0,b.jsx)(B.Brain,{size:13}),label:"Recalled",value:j.memoriesRecalled,delta:k.memoriesRecalled})]}),(0,b.jsx)("div",{className:"ml-auto flex items-center gap-3",children:(0,b.jsx)("div",{className:"flex items-center gap-1",onClick:a=>a.stopPropagation(),children:J.map(c=>(0,b.jsxs)("button",{type:"button",onClick:a=>{a.stopPropagation(),d(c.id)},className:`px-1.5 py-0.5 text-[11px] font-mono transition-colors theme-glass:rounded theme-glass:uppercase theme-glass:tracking-[0.12em] ${c.id===a?"text-[var(--term-electric-fg)] theme-glass:bg-[var(--sc-cyan)]/20 theme-glass:text-[var(--sc-cyan)]":"text-[var(--term-text-muted)] hover:text-[var(--term-text)] theme-glass:hover:text-[var(--sc-text-primary)]"}`,children:[(0,b.jsxs)("span",{className:"theme-glass:hidden",children:["[",c.label,"]"]}),(0,b.jsx)("span",{className:"hidden theme-glass:inline",children:c.label})]},c.id))})})]}),e&&!l&&(0,b.jsx)("div",{className:"border-t border-[var(--sc-border)] bg-[var(--sc-bg-deep)]/50 px-4 py-3",children:(0,b.jsxs)("div",{className:"grid gap-3 md:grid-cols-2",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("div",{className:"mb-2 text-[10px] uppercase tracking-[0.14em] text-[var(--sc-text-muted)]",children:"Top moments"}),0===h.topMoments.length?(0,b.jsx)("div",{className:"text-xs text-[var(--sc-text-muted)]",children:"Nothing notable to surface in this window."}):(0,b.jsx)("ul",{className:"space-y-1.5",children:h.topMoments.map((a,c)=>(0,b.jsx)(M,{moment:a},`${a.kind}-${c}-${a.timestamp}`))})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("div",{className:"mb-2 text-[10px] uppercase tracking-[0.14em] text-[var(--sc-text-muted)]",children:"Top threat patterns"}),0===h.topThreatPatterns.length?(0,b.jsx)("div",{className:"text-xs text-[var(--sc-text-muted)]",children:"No threat patterns triggered."}):(0,b.jsx)("ul",{className:"space-y-1",children:h.topThreatPatterns.map(a=>(0,b.jsxs)("li",{className:"flex items-center justify-between rounded border border-[var(--sc-border)] bg-[var(--sc-bg-surface)]/50 px-2 py-1 text-xs",children:[(0,b.jsx)("span",{className:"font-mono text-[var(--sc-text-primary)] truncate",children:a.pattern}),(0,b.jsxs)("span",{className:"font-mono text-[var(--sc-text-muted)]",children:[a.count,"×"]})]},a.pattern))})]})]})})]})}let O=(0,g.default)("funnel",[["path",{d:"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z",key:"sc7q7i"}]]);function P(){let{data:a}=(0,u.useProjects)(),{projectFilter:c,setProjectFilter:d}=(0,t.useDashboardStore)(),e=Array.isArray(a)?a:Array.isArray(a?.projects)?a.projects:[],f=e.filter(a=>"string"==typeof a.project&&a.project.length>0),g=e.find(a=>null===a.project)?.memory_count??f.reduce((a,b)=>a+(b.memory_count??0),0),h=f.slice().sort((a,b)=>(b.memory_count??0)-(a.memory_count??0)||a.project.localeCompare(b.project));return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{className:"theme-glass:hidden flex items-center gap-3 border-b border-[var(--term-border)] bg-[var(--term-surface)] px-4 py-1.5 font-mono text-xs",children:[(0,b.jsx)("span",{className:"text-[var(--term-text-muted)]",children:"project"}),(0,b.jsx)("span",{className:"text-[var(--term-text-muted)]","aria-hidden":!0,children:"="}),(0,b.jsxs)("select",{id:"project-filter",value:c??"",onChange:a=>d(""===a.target.value?null:a.target.value),className:"rounded-sm border border-[var(--term-border)] bg-[var(--term-surface-2)] px-2 py-0.5 text-xs text-[var(--term-text)] font-mono focus:outline-none focus:border-[var(--term-electric)]","aria-label":"Filter dashboard by project",children:[(0,b.jsxs)("option",{value:"",children:["*",g?` (${g})`:""]}),h.map(a=>(0,b.jsxs)("option",{value:a.project,children:[a.project,"number"==typeof a.memory_count?` (${a.memory_count})`:""]},a.project))]}),c&&(0,b.jsx)("button",{type:"button",onClick:()=>d(null),className:"text-[var(--term-text-muted)] hover:text-[var(--term-text)] underline",children:"clear"})]}),(0,b.jsxs)("div",{className:"hidden theme-glass:flex items-center gap-2 border-b border-[var(--sc-border)] bg-[var(--sc-bg-surface)]/40 px-4 py-2 backdrop-blur-sm",children:[(0,b.jsx)(O,{size:13,className:"text-[var(--sc-text-muted)]"}),(0,b.jsx)("label",{htmlFor:"project-filter-glass",className:"text-xs uppercase tracking-[0.14em] text-[var(--sc-text-muted)]",children:"Project"}),(0,b.jsxs)("select",{id:"project-filter-glass",value:c??"",onChange:a=>d(""===a.target.value?null:a.target.value),className:"rounded-md border border-[var(--sc-border)] bg-[var(--sc-bg-deep)] px-2 py-1 text-xs text-[var(--sc-text-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--sc-cyan)]","aria-label":"Filter dashboard by project (glass)",children:[(0,b.jsxs)("option",{value:"",children:["All projects",g?` (${g})`:""]}),h.map(a=>(0,b.jsxs)("option",{value:a.project,children:[a.project,"number"==typeof a.memory_count?` (${a.memory_count})`:""]},a.project))]}),c&&(0,b.jsx)("button",{type:"button",onClick:()=>d(null),className:"text-[11px] text-[var(--sc-text-muted)] hover:text-[var(--sc-text-primary)] underline",children:"Clear"})]})]})}var Q=a.i(38883);function R({sources:a=[],max:c=4}){let d=a.slice(0,c),e=a.length-d.length;return(0,b.jsxs)("div",{className:"flex shrink-0 items-center gap-2",children:[(0,b.jsx)("span",{className:"shrink-0 text-[var(--cic-text-faint)]",children:"ECOSYSTEM ▸"}),0===d.length?(0,b.jsx)("span",{className:"text-[var(--cic-text-faint)]",children:"no signals"}):d.map(a=>(0,b.jsxs)("span",{className:"flex shrink-0 items-center gap-1",title:`${a.source} \xb7 ${a.count} ops`,children:[(0,b.jsx)("span",{className:"cic-bloom text-[var(--cic-cyan)]","aria-hidden":!0,children:"◉"}),(0,b.jsx)("span",{className:"text-[var(--cic-text-dim)]",children:function(a){if(!a)return"unknown";let[b,c]=a.split(":");return"agent"===b&&c?c.replace(/-plugin.*/,""):"cli"===b?c?`cli:${c}`:"cli":"hook"===b?"hook":"api"===b?c?`api:${c}`:"api":"user"===b?"you":b||a}(a.source)})]},a.source)),e>0&&(0,b.jsxs)("span",{className:"shrink-0 text-[var(--cic-text-faint)]",children:["+",e]})]})}let S=["input","pattern","semantic","structural","behaviour","credential"];function T({blocked:a=0}){let c=a>0,d=c?"var(--cic-coral)":"var(--cic-cyan)";return(0,b.jsxs)("div",{className:"flex shrink-0 items-center gap-2",title:`Shield: 6 layers armed \xb7 ${a} blocked`,children:[(0,b.jsx)("span",{className:"text-[var(--cic-text-faint)]",children:"SHIELD"}),(0,b.jsx)("span",{className:"flex gap-0.5",children:S.map(a=>(0,b.jsx)("span",{className:c?"cic-bloom":"",style:{color:d},"aria-hidden":!0,children:"▣"},a))})]})}function U({label:a,value:c,colour:d}){return(0,b.jsxs)("span",{className:"flex items-center gap-1",title:a,children:[(0,b.jsx)("span",{className:"text-[var(--cic-text-faint)]",children:a}),(0,b.jsx)("span",{className:"cic-bloom tabular-nums",style:{color:d},children:c.toLocaleString()})]})}function V(){let a=(0,Q.useAuditStats)("24h"),d=(0,u.useStats)(),{isConnected:e}=(0,v.useWebSocketStatus)(),[f,g]=(0,c.useState)("");(0,c.useEffect)(()=>{let a=()=>g(new Date().toTimeString().slice(0,8));a();let b=setInterval(a,1e3);return()=>clearInterval(b)},[]);let h=a.data,i=h?.topSources??[];return(0,b.jsxs)("header",{className:"flex items-center gap-5 overflow-x-auto border-b border-[var(--cic-border)] bg-[var(--cic-surface)]/80 px-4 py-2 font-mono text-xs whitespace-nowrap",children:[(0,b.jsx)("span",{className:"cic-bloom shrink-0 font-semibold tracking-[0.18em] text-[var(--cic-cyan)]",children:"◢ SHIELDCORTEX·CIC ◤"}),(0,b.jsx)(R,{sources:i}),(0,b.jsx)(T,{blocked:h?.blockedCount??0}),(0,b.jsxs)("span",{className:"ml-auto flex shrink-0 items-center gap-4",children:[(0,b.jsx)(U,{label:"SCANNED",value:h?.totalOperations??0,colour:"var(--cic-text-dim)"}),(0,b.jsx)(U,{label:"BLOCKED",value:h?.blockedCount??0,colour:"var(--cic-coral)"}),(0,b.jsx)(U,{label:"QUAR",value:h?.quarantinedCount??0,colour:"var(--cic-amber)"}),(0,b.jsx)(U,{label:"MEMORIES",value:d.data?.total??0,colour:"var(--cic-cyan)"}),(0,b.jsxs)("span",{className:"flex items-center gap-1.5",title:e?"live link up":"link down",children:[(0,b.jsx)("span",{className:e?"pulse-cyan":"pulse-coral",style:{color:e?"var(--cic-cyan)":"var(--cic-coral)"},"aria-hidden":!0,children:"◉"}),(0,b.jsx)("span",{className:"text-[var(--cic-text-faint)]",children:e?"LINK":"DOWN"})]}),(0,b.jsx)("span",{className:"tabular-nums text-[var(--cic-text-muted)]",suppressHydrationWarning:!0,children:f})]})]})}let W={memory:{token:"--cic-cyan",hex:"#00e5cc",glow:"rgba(0, 229, 204, 0.35)",label:"MEMORY",meaning:"vault · recall · the living graph"},defence:{token:"--cic-coral",hex:"#ff4d4d",glow:"rgba(255, 77, 77, 0.35)",label:"DEFENCE",meaning:"shield · interception · the 6 layers"},quarantine:{token:"--cic-amber",hex:"#f5a623",glow:"rgba(245, 166, 35, 0.32)",label:"QUARANTINE",meaning:"isolation hold · pending review"},integrity:{token:"--cic-violet",hex:"#a78bfa",glow:"rgba(167, 139, 250, 0.32)",label:"INTEGRITY",meaning:"consolidation · links · contradictions"}},X={"/overview":"memory","/memory":"memory","/memory/replay":"integrity","/protection":"defence","/xray":"defence","/settings":"integrity"};function Y(){let a=(0,f.usePathname)(),{isConnected:d}=(0,v.useWebSocketStatus)(),[g,h]=(0,c.useState)(!1);return(0,b.jsxs)("aside",{className:`flex shrink-0 flex-col border-r border-[var(--cic-border)] bg-[var(--cic-surface)]/60 font-mono transition-[width] duration-200 ${g?"w-14":"w-56"}`,children:[(0,b.jsxs)("button",{type:"button",onClick:()=>h(a=>!a),className:"flex h-11 items-center gap-2 px-4 text-left text-[var(--cic-text-muted)] hover:text-[var(--cic-text)]","aria-label":g?"expand navigation":"collapse navigation",children:[(0,b.jsx)("span",{className:"cic-bloom text-[var(--cic-cyan)]",children:"$"}),!g&&(0,b.jsx)("span",{className:"text-sm text-[var(--cic-text-dim)]",children:"shieldcortex"})]}),(0,b.jsx)("nav",{className:"flex flex-1 flex-col gap-0.5 px-2 py-2",children:s.map(c=>{let d=a===c.href||"/overview"!==c.href&&a.startsWith(c.href),f=W[X[c.href]??"memory"],h=c.icon;return(0,b.jsxs)(e.default,{href:c.href,title:c.label,className:`flex items-center gap-2 rounded px-2 py-1.5 text-sm transition-colors ${d?"bg-[var(--cic-surface-2)] text-[var(--cic-text)]":"text-[var(--cic-text-muted)] hover:text-[var(--cic-text)]"}`,style:d?{color:`var(${f.token})`}:void 0,children:[(0,b.jsx)("span",{className:"w-2 shrink-0",style:d?{color:`var(${f.token})`}:void 0,children:d?"▸":""}),h?(0,b.jsx)(h,{size:14,className:"shrink-0"}):null,!g&&(0,b.jsx)("span",{className:"truncate",children:c.label})]},c.href)})}),(0,b.jsxs)("div",{className:"flex items-center gap-2 border-t border-[var(--cic-border)] px-4 py-2 text-xs",children:[(0,b.jsx)("span",{className:d?"pulse-cyan":"pulse-coral",style:{color:d?"var(--cic-cyan)":"var(--cic-coral)"},"aria-hidden":!0,children:"◉"}),!g&&(0,b.jsx)("span",{className:"text-[var(--cic-text-faint)]",children:d?"link.up":"link.down"})]})]})}let Z=a=>({ok:!0,lines:a}),$=a=>({ok:!1,lines:a}),_={recall:{name:"recall",usage:'recall "<query>" [--project <p>]',summary:"search the memory cortex",run:async(a,{args:b,flags:c})=>{let d=b.join(" ").trim();if(!d)return $(['recall: give a query, e.g. recall "auth bug"']);let e="string"==typeof c.project?c.project:void 0,f=await a.recall(d,e);return 0===f.length?Z([`recall "${d}" → no memories`]):Z([`recall "${d}" → ${f.length}`,...f.slice(0,10).map(a=>` #${a.id} ${a.title}`)])}},scan:{name:"scan",usage:"scan <path> [--deep]",summary:"X-Ray a file, folder, or package",run:async(a,{args:b,flags:c})=>{let d=b[0];if(!d)return $(["scan: give a path or package"]);let e=await a.scan(d,!0===c.deep);return Z([`scan ${e.target} → ${e.riskLevel} \xb7 trust ${e.trustScore} \xb7 ${e.filesScanned} files \xb7 ${e.findingsCount} findings`])}},forget:{name:"forget",usage:"forget <id>",summary:"delete a memory by id",run:async(a,{args:b})=>{let c=Number(b[0]);return Number.isInteger(c)?(await a.forget(c),Z([`▸ forgot #${c}`])):$(["forget: give a numeric memory id"])}},consolidate:{name:"consolidate",usage:"consolidate",summary:"run a consolidation pass (STM→LTM, decay, cleanup)",run:async a=>{let b=await a.consolidate();return Z([`▸ consolidated ${b.consolidated} \xb7 decayed ${b.decayed} \xb7 deleted ${b.deleted}`])}},quarantine:{name:"quarantine",usage:"quarantine [approve <id> | reject <id>]",summary:"list pending quarantine, or approve/reject by id",run:async(a,{args:b})=>{let c=b[0]?.toLowerCase();if(!c||"list"===c){let b=await a.quarantineList();return 0===b.length?Z(["quarantine: nothing pending"]):Z([`quarantine pending → ${b.length}`,...b.slice(0,10).map(a=>` #${a.id} ${a.title}`)])}if("approve"===c||"reject"===c){let d=Number(b[1]);return Number.isInteger(d)?(await a.quarantineReview(d,c),Z([`▸ ${"approve"===c?"approved":"rejected"} #${d}`])):$([`quarantine ${c}: give a numeric id`])}return $(["quarantine: use list | approve <id> | reject <id>"])}},irondome:{name:"irondome",usage:"irondome <on|off|status>",summary:"arm/disarm the Iron Dome, or report its state",run:async(a,{args:b})=>{let c=b[0]?.toLowerCase();return"on"!==c&&"off"!==c&&"status"!==c?$(["irondome: use on | off | status"]):Z([await a.ironDome(c)])}},remember:{name:"remember",usage:'remember "<text>"',summary:"store a new memory",run:async(a,{args:b})=>{let c=b.join(" ").trim();if(!c)return $(['remember: give the text to store, e.g. remember "the fix was X"']);let d=await a.remember(c);return Z([`▸ remembered #${d.id}`])}},go:{name:"go",usage:"go <view>",summary:"navigate to a console view",run:(a,{args:b})=>{let c=b[0]?.toLowerCase();if(!c)return $(["go: which view? "+a.routes.map(a=>a.label).join(" · ")]);let d=a.routes.find(a=>a.label.toLowerCase().includes(c)||a.href.toLowerCase().includes(c));return d?(a.navigate(d.href),Z([`▸ ${d.label}`])):$([`go: unknown view '${c}'. options: ${a.routes.map(a=>a.label).join(" · ")}`])}},theme:{name:"theme",usage:"theme <terminal|glass>",summary:"switch the dashboard theme",run:(a,{args:b})=>{let c=b[0]?.toLowerCase();return"terminal"!==c&&"glass"!==c?$(["theme: choose 'terminal' or 'glass'"]):(a.setTheme(c),Z([`▸ theme → ${c}`]))}},help:{name:"help",usage:"help",summary:"list commands",run:()=>Z(["commands:",...Object.values(_).map(a=>` ${a.usage.padEnd(34)} ${a.summary}`)])}};async function aa(a,b){let c=function(a){let b=a.trim();if(!b)return null;let c=function(a){let b,c=[],d=/"([^"]*)"|(\S+)/g;for(;null!==(b=d.exec(a));)c.push(void 0!==b[1]?b[1]:b[2]);return c}(b),d=c[0].toLowerCase(),e=[],f={};for(let a=1;a<c.length;a+=1){let b=c[a];if(b.startsWith("--")){let d=b.slice(2),e=c[a+1];void 0===e||e.startsWith("--")?f[d]=!0:(f[d]=e,a+=1)}else e.push(b)}return{name:d,args:e,flags:f}}(a);if(!c)return $([]);let d=_[c.name];if(!d)return $([`unknown command: ${c.name} — try 'help'`]);try{return await d.run(b,c)}catch(a){return $([`error: ${a instanceof Error?a.message:String(a)}`])}}var ab=a.i(26804);let ac=process.env.NEXT_PUBLIC_API_URL||"http://localhost:3001",ad={in:"text-[var(--cic-text-dim)]",out:"text-[var(--cic-text)]",err:"text-[var(--cic-coral)]"};function ae(){let a=function(){let a=(0,f.useRouter)(),[,b]=(0,d.useTheme)(),e=(0,ab.useXRayScan)(),g=(0,u.useDeleteMemory)(),h=(0,u.useConsolidate)(),i=(0,Q.useApproveQuarantine)(),j=(0,Q.useRejectQuarantine)();return(0,c.useMemo)(()=>({navigate:b=>a.push(b),setTheme:b,recall:async(a,b)=>{let c=new URLSearchParams({mode:"search",query:a,limit:"10"});b&&c.set("project",b);let d=await (0,H.authFetch)(`${ac}/api/memories?${c.toString()}`);if(!d.ok)throw Error(await (0,H.readApiError)(d,"recall failed"));return((await d.json()).memories??[]).map(a=>({id:a.id,title:a.title}))},scan:async(a,b)=>{let{result:c}=await e.mutateAsync({target:a,deep:b});return{target:c.target,riskLevel:c.riskLevel,trustScore:c.trustScore,filesScanned:c.filesScanned,findingsCount:c.findings.length}},forget:async a=>{await g.mutateAsync(a)},consolidate:async()=>{let a=await h.mutateAsync();return{consolidated:a.consolidated,decayed:a.decayed,deleted:a.deleted}},quarantineList:async()=>{let a=await (0,H.authFetch)(`${ac}/api/v1/quarantine?status=pending&limit=20`);if(!a.ok)throw Error(await (0,H.readApiError)(a,"quarantine list failed"));return((await a.json()).items??[]).map(a=>({id:a.id,title:a.original_title??a.title??`item ${a.id}`}))},quarantineReview:async(a,b)=>{"approve"===b?await i.mutateAsync(a):await j.mutateAsync({id:a})},ironDome:async a=>{if("status"===a){let a=await (0,H.authFetch)(`${ac}/api/iron-dome/status`);if(!a.ok)throw Error(await (0,H.readApiError)(a,"iron dome status failed"));let b=await a.json();return`iron dome: ${b.enabled?"ACTIVE":"inactive"}`}let b=await (0,H.authFetch)(`${ac}/api/iron-dome/${"on"===a?"activate":"deactivate"}`,{method:"POST",headers:{"Content-Type":"application/json"},body:"{}"});if(!b.ok)throw Error(await (0,H.readApiError)(b,`iron dome ${a} failed`));return`▸ iron dome ${"on"===a?"ACTIVE":"disabled"}`},remember:async a=>{let b=await (0,H.authFetch)(`${ac}/api/memories`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:a.slice(0,80),content:a})});if(!b.ok)throw Error(await (0,H.readApiError)(b,"remember failed"));return{id:(await b.json()).id??0}},routes:s.map(a=>({label:a.label,href:a.href}))}),[a,b,e,g,h,i,j])}(),[e,g]=(0,c.useState)(""),[h,i]=(0,c.useState)([]),[j,k]=(0,c.useState)([]),[l,m]=(0,c.useState)(-1),[n,o]=(0,c.useState)(!1),p=(0,c.useRef)(null),q=(0,c.useRef)(null);(0,c.useEffect)(()=>{let a=a=>{(a.metaKey||a.ctrlKey)&&"k"===a.key.toLowerCase()&&(a.preventDefault(),p.current?.focus())};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[]),(0,c.useEffect)(()=>{let a=q.current;a&&"function"==typeof a.scrollTo&&a.scrollTo({top:a.scrollHeight})},[h]);let r=(0,c.useCallback)(async()=>{let b=e.trim();if(!b||n)return;i(a=>[...a,{kind:"in",text:b}]),k(a=>[...a,b]),m(-1),g(""),o(!0);let c=await aa(b,a);i(a=>[...a,...c.lines.map(a=>({kind:c.ok?"out":"err",text:a}))]),o(!1)},[e,n,a]);return(0,b.jsxs)("div",{className:"border-t border-[var(--cic-border)] bg-[var(--cic-surface)]/80 font-mono text-sm",children:[h.length>0&&(0,b.jsx)("div",{ref:q,className:"max-h-40 overflow-y-auto px-4 py-2 leading-relaxed",children:h.map((a,c)=>(0,b.jsx)("div",{className:`whitespace-pre-wrap ${ad[a.kind]}`,children:"in"===a.kind?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{className:"text-[var(--cic-cyan)]",children:"sc ▸ "}),a.text]}):a.text},c))}),(0,b.jsxs)("div",{className:"flex items-center gap-2 px-4 py-2.5",children:[(0,b.jsx)("span",{className:"cic-bloom shrink-0 text-[var(--cic-cyan)]",children:"sc ▸"}),(0,b.jsx)("input",{ref:p,value:e,onChange:a=>g(a.target.value),onKeyDown:a=>{if("Enter"===a.key)a.preventDefault(),r();else if("ArrowUp"===a.key){if(a.preventDefault(),0===j.length)return;let b=-1===l?j.length-1:Math.max(0,l-1);m(b),g(j[b])}else if("ArrowDown"===a.key){if(a.preventDefault(),-1===l)return;let b=l+1;b>=j.length?(m(-1),g("")):(m(b),g(j[b]))}},spellCheck:!1,autoComplete:"off","aria-label":"command line",placeholder:"recall · scan · forget · consolidate · go · theme · help",className:"flex-1 bg-transparent text-[var(--cic-text)] outline-none placeholder:text-[var(--cic-text-faint)]"}),!e&&(0,b.jsx)("span",{className:"cli-cursor text-[var(--cic-cyan)]"}),(0,b.jsx)("kbd",{className:"shrink-0 rounded border border-[var(--cic-border)] px-1.5 text-xs text-[var(--cic-text-faint)]",children:"⌘K"})]})]})}let af=process.env.NEXT_PUBLIC_API_URL||"http://localhost:3001",ag=["▁","▂","▃","▄","▅","▆","▇","█"];function ah(a){if(0===a.length)return"";let b=Math.max(...a);return b<=0?ag[0].repeat(a.length):a.map(a=>ag[Math.round(Math.max(0,a)/b*(ag.length-1))]).join("")}function ai(){let{memoryTrend:a,threatTrend:c}=function(){let{data:a}=(0,G.useQuery)({queryKey:["activity-trend"],queryFn:async()=>{let a=await (0,H.authFetch)(`${af}/api/memories/activity`);if(!a.ok)throw Error("Failed to fetch activity");return a.json()},staleTime:3e5,refetchInterval:3e5}),b=new Date;b.setDate(b.getDate()-7);let c=b.toISOString(),{data:d}=(0,G.useQuery)({queryKey:["threat-trend"],queryFn:async()=>{let a=new URLSearchParams({firewallResult:"BLOCK",startTime:c,limit:"500"}),b=await (0,H.authFetch)(`${af}/api/v1/audit?${a}`);if(!b.ok)throw Error("Failed to fetch audit logs");return b.json()},staleTime:3e5,refetchInterval:3e5}),e=[];for(let a=6;a>=0;a--){let b=new Date;b.setDate(b.getDate()-a),e.push(b.toISOString().slice(0,10))}let f=new Map;if(a?.activity)for(let b of a.activity)f.set(b.date,b.count);let g=e.map(a=>f.get(a)??0),h=new Map;if(d?.logs)for(let a of d.logs){let b=a.timestamp.slice(0,10);h.set(b,(h.get(b)??0)+1)}return{memoryTrend:g,threatTrend:e.map(a=>h.get(a)??0)}}();return(0,b.jsxs)("div",{className:"flex items-center gap-6 border-t border-[var(--cic-border)] bg-[var(--cic-surface)]/40 px-4 py-1 font-mono text-[11px] text-[var(--cic-text-faint)]",children:[(0,b.jsxs)("span",{className:"flex items-center gap-2",title:"memories created per day, last 7 days",children:[(0,b.jsx)("span",{children:"MEMORY·7d"}),(0,b.jsx)("span",{className:"cic-bloom tracking-tight text-[var(--cic-cyan)]",children:ah(a)||"·······"})]}),(0,b.jsxs)("span",{className:"flex items-center gap-2",title:"threats blocked per day, last 7 days",children:[(0,b.jsx)("span",{children:"THREAT·7d"}),(0,b.jsx)("span",{className:"cic-bloom tracking-tight text-[var(--cic-coral)]",children:ah(c)||"·······"})]})]})}function aj({children:a}){return(0,b.jsxs)("div",{className:"flex h-dvh w-full flex-col overflow-hidden bg-[var(--cic-void)] text-[var(--cic-text)]",children:[(0,b.jsx)(V,{}),(0,b.jsxs)("div",{className:"flex min-h-0 flex-1",children:[(0,b.jsx)(Y,{}),(0,b.jsx)("main",{className:"min-w-0 flex-1 overflow-auto",children:a})]}),(0,b.jsx)(ai,{}),(0,b.jsx)(ae,{})]})}function ak({children:a}){let[e,f]=(0,c.useState)(!1);(0,c.useEffect)(()=>f(!0),[]);let[g]=(0,d.useTheme)();return"terminal"===(e?g:"terminal")?(0,b.jsx)(aj,{children:a}):(0,b.jsxs)("div",{className:"flex h-dvh w-full overflow-hidden bg-[var(--sc-bg-deep)] text-[var(--sc-text-primary)]",children:[(0,b.jsx)(x,{}),(0,b.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col",children:[(0,b.jsx)(N,{}),(0,b.jsx)(P,{}),(0,b.jsx)("main",{className:"min-w-0 flex-1 overflow-auto",children:a})]})]})}a.s(["ShellSwitch",()=>ak],4999)},81662,a=>{"use strict";var b=a.i(16306),c=a.i(83364),d=a.i(1090);function e(){let[a]=(0,d.useTheme)();return(0,b.jsx)(c.Toaster,{position:"bottom-right",toastOptions:{style:"glass"===a?{background:"var(--sc-bg-surface)",border:"1px solid var(--sc-border)",color:"var(--sc-text-primary)",fontFamily:"system-ui, sans-serif"}:{background:"var(--term-surface)",border:"1px solid var(--term-border)",color:"var(--term-text)",fontFamily:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace",fontSize:"13px",borderRadius:"6px"}},theme:"dark"})}a.s(["ToastProvider",()=>e])},16525,a=>{"use strict";var b=a.i(98419),c=a.i(83364),d=a.i(76614);let e=new Map;function f(){let a=(0,b.useCallback)(a=>{let b;if("defence_event"!==a.type)return;let d=a.data;if(!d||"ALLOW"===d.firewall_result)return;let f="BLOCK"===d.firewall_result,g=d.source_identifier||d.source_type||"unknown source",h=(b=function(a){if(Array.isArray(a))return a.filter(a=>"string"==typeof a);if("string"!=typeof a||!a.trim())return[];try{let b=JSON.parse(a);if(Array.isArray(b))return b.filter(a=>"string"==typeof a)}catch{return[a]}return[]}(d.threat_indicators)).length?b.slice(0,3).map(a=>a.replace(/_/g," ")).join(", "):"",i=d.reason?.trim()||(h?`Threats: ${h}`:"See audit log for details");if(function(a){let b=Date.now(),c=e.get(a);if(c&&b-c<2e3)return!0;if(e.set(a,b),e.size>50){let a=b-2e3;for(let[b,c]of e)c<a&&e.delete(b)}return!1}(`${d.firewall_result}:${g}:${(d.reason||"").slice(0,80)}`))return;let j=f?`\u{1F6E1} Blocked attack from ${g}`:`\u{26A0}\u{FE0F} Quarantined input from ${g}`,k={description:i,duration:f?8e3:5e3};f?c.toast.error(j,k):c.toast.warning(j,k)},[]);return(0,d.useWebSocketEvent)(a),null}a.s(["BlockToastBridge",()=>f])}];
1
+ module.exports=[1090,a=>{"use strict";var b=a.i(98419);let c="terminal";function d(){return"u"<typeof document?c:"glass"===document.documentElement.getAttribute("data-theme")?"glass":"terminal"}function e(a){return()=>{}}function f(){return[(0,b.useSyncExternalStore)(e,d,()=>c),a=>{if("u">typeof document){try{window.localStorage.setItem("sc-theme",a)}catch{}document.documentElement.setAttribute("data-theme",a),window.dispatchEvent(new Event("sc-theme-change"))}}]}a.s(["useTheme",()=>f])},4999,a=>{"use strict";var b=a.i(16306),c=a.i(98419),d=a.i(1090),e=a.i(11160),f=a.i(52181),g=a.i(70694);let h=(0,g.default)("menu",[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]]);var i=a.i(5479);let j=(0,g.default)("pin-off",[["path",{d:"M12 17v5",key:"bb1du9"}],["path",{d:"M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H7.89",key:"znwnzq"}],["path",{d:"m2 2 20 20",key:"1ooewy"}],["path",{d:"M9 9v1.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h11",key:"c9qhm2"}]]);var k=a.i(95480),l=a.i(64565);function m({size:a=24,className:c=""}){return(0,b.jsx)("img",{src:"/shieldcortex-logo.png",alt:"ShieldCortex",width:a,height:a,className:c,style:{width:a,height:a}})}var n=a.i(76625);let o=(0,g.default)("house",[["path",{d:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8",key:"5wwlr5"}],["path",{d:"M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"r6nss1"}]]),p=(0,g.default)("circle-play",[["path",{d:"M9 9.003a1 1 0 0 1 1.517-.859l4.997 2.997a1 1 0 0 1 0 1.718l-4.997 2.997A1 1 0 0 1 9 14.996z",key:"kmsa83"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);var q=a.i(66397),r=a.i(40145),s=a.i(98472);let t=[{href:"/overview",label:"Overview",icon:o},{href:"/memory",label:"Memory",icon:n.Database},{href:"/memory/replay",label:"Replay",icon:p},{href:"/protection",label:"Protection",icon:s.Shield},{href:"/xray",label:"X-Ray",icon:q.ScanSearch},{href:"/settings",label:"Settings",icon:r.Settings}];var u=a.i(68839),v=a.i(67789),w=a.i(76614);function x(){let a=(0,f.usePathname)(),{sidebarPinned:d,toggleSidebarPinned:g}=(0,u.useDashboardStore)(),[n,o]=(0,c.useState)(!1),[p,q]=(0,c.useState)(null),r=p===a,{isConnected:s}=(0,w.useWebSocketStatus)(),{data:x}=(0,v.useVersion)(),y=d||n||r;return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("button",{onClick:()=>q(a),className:"fixed left-3 top-3 z-50 flex h-10 w-10 items-center justify-center rounded-xl bg-[var(--sc-bg-surface)] border border-[var(--sc-border)] text-[var(--sc-text-secondary)] md:hidden","aria-label":"Open navigation",children:(0,b.jsx)(h,{size:18})}),r&&(0,b.jsx)("div",{className:"fixed inset-0 z-40 bg-black/50 backdrop-blur-sm md:hidden",onClick:()=>q(null)}),(0,b.jsxs)("aside",{className:(0,l.cn)("z-50 flex shrink-0 flex-col border-r border-[var(--sc-border)] bg-[var(--sc-bg-deep)] transition-all duration-300","fixed inset-y-0 left-0 md:relative",r?"translate-x-0":"-translate-x-full md:translate-x-0",y?"w-60":"w-16"),onMouseEnter:()=>o(!0),onMouseLeave:()=>o(!1),children:[(0,b.jsxs)("div",{className:"flex h-16 items-center gap-3 border-b border-[var(--sc-border)] px-4",children:[(0,b.jsx)(m,{size:32,className:"shrink-0"}),(0,b.jsxs)("div",{className:(0,l.cn)("overflow-hidden whitespace-nowrap transition-all duration-300",y?"w-auto opacity-100":"w-0 opacity-0"),children:[(0,b.jsx)("div",{className:"text-[11px] font-semibold uppercase tracking-[0.2em] text-[var(--sc-coral)]",children:"ShieldCortex"}),(0,b.jsx)("div",{className:"text-xs text-[var(--sc-text-muted)]",children:"Dashboard"})]}),r&&(0,b.jsx)("button",{onClick:()=>q(null),className:"ml-auto text-[var(--sc-text-muted)] hover:text-[var(--sc-text-secondary)] md:hidden","aria-label":"Close navigation",children:(0,b.jsx)(k.X,{size:18})})]}),(0,b.jsx)("nav",{className:"flex-1 space-y-1 px-2 py-4",role:"navigation","aria-label":"Main navigation",children:t.map(c=>{var d;let f=c.icon,g="/overview"===(d=c.href)?"/overview"===a||"/"===a:a===d||a.startsWith(`${d}/`);return(0,b.jsxs)(e.default,{href:c.href,"aria-current":g?"page":void 0,className:(0,l.cn)("relative flex items-center gap-3 rounded-xl px-3 py-2.5 transition-all duration-200 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--sc-cyan)]",g?"bg-[var(--sc-surface-interactive)] text-[var(--sc-text-primary)]":"text-[var(--sc-text-muted)] hover:bg-[var(--sc-surface-interactive)] hover:text-[var(--sc-text-secondary)]"),children:[g&&(0,b.jsx)("div",{className:"absolute left-0 top-1/2 h-5 w-0.5 -translate-y-1/2 rounded-r bg-[var(--sc-coral)]"}),(0,b.jsx)(f,{size:18,className:(0,l.cn)("shrink-0",g&&"text-[var(--sc-coral)]")}),(0,b.jsx)("span",{className:(0,l.cn)("overflow-hidden whitespace-nowrap text-sm font-medium transition-all duration-300",y?"w-auto opacity-100":"w-0 opacity-0"),children:c.label})]},c.href)})}),(0,b.jsxs)("div",{className:"space-y-2 border-t border-[var(--sc-border)] px-2 py-3",children:[y&&(0,b.jsxs)("button",{onClick:g,className:"hidden w-full items-center gap-3 rounded-xl px-3 py-2 text-[var(--sc-text-muted)] transition-colors hover:bg-[var(--sc-surface-interactive)] hover:text-[var(--sc-text-secondary)] md:flex","aria-label":d?"Unpin sidebar":"Pin sidebar",children:[d?(0,b.jsx)(j,{size:16}):(0,b.jsx)(i.Pin,{size:16}),(0,b.jsx)("span",{className:"text-xs",children:d?"Unpin":"Pin sidebar"})]}),(0,b.jsxs)("div",{className:"flex items-center gap-3 px-3 py-1",children:[(0,b.jsx)("span",{className:(0,l.cn)("h-2 w-2 shrink-0 rounded-full",s?"bg-[var(--sc-cyan)] pulse-cyan":"bg-[var(--sc-coral)] pulse-coral"),"aria-label":s?"Real-time connected":"Real-time disconnected"}),(0,b.jsx)("span",{className:(0,l.cn)("overflow-hidden whitespace-nowrap text-[11px] text-[var(--sc-text-muted)] transition-all duration-300",y?"w-auto opacity-100":"w-0 opacity-0"),children:s?"Connected":"Disconnected"})]}),(0,b.jsxs)("div",{className:(0,l.cn)("overflow-hidden whitespace-nowrap px-3 font-mono text-[10px] text-[var(--sc-text-muted)] transition-all duration-300",y?"opacity-100":"h-0 opacity-0"),children:["v",x?.version??"..."]})]})]})]})}function y(){return(0,b.jsx)(x,{})}var z=a.i(88904);let A=(0,g.default)("arrow-down",[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]]),B=(0,g.default)("arrow-up",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]);var C=a.i(6476);let D=(0,g.default)("minus",[["path",{d:"M5 12h14",key:"1ays0h"}]]);var E=a.i(79155),F=a.i(22524),G=a.i(14126),H=a.i(40458),I=a.i(86044);let J=process.env.NEXT_PUBLIC_API_URL||"http://localhost:3001",K=(0,g.default)("monitor",[["rect",{width:"20",height:"14",x:"2",y:"3",rx:"2",key:"48i651"}],["line",{x1:"8",x2:"16",y1:"21",y2:"21",key:"1svkeh"}],["line",{x1:"12",x2:"12",y1:"17",y2:"21",key:"vw1qmm"}]]);var L=a.i(40543);function M({className:a=""}){let[c,e]=(0,d.useTheme)(),f="terminal"===c?"glass":"terminal";return(0,b.jsxs)("button",{type:"button",onClick:()=>e(f),"aria-label":`Switch to ${f} theme`,title:`Theme: ${c} — click to switch to ${f}`,className:`inline-flex items-center gap-1.5 px-1.5 py-0.5 text-[11px] font-mono text-[var(--sc-text-muted)] hover:text-[var(--sc-text-primary)] transition-colors ${a}`,children:["terminal"===c?(0,b.jsx)(L.Terminal,{size:12}):(0,b.jsx)(K,{size:12}),(0,b.jsx)("span",{children:"terminal"===c?"TERM":"GLASS"})]})}let N=[{id:"24h",label:"24h"},{id:"7d",label:"7d"},{id:"30d",label:"30d"}];function O({value:a}){if(void 0===a)return null;if(0===a)return(0,b.jsxs)("span",{className:"inline-flex items-center gap-0.5 text-[10px] text-[var(--sc-text-muted)]",children:[(0,b.jsx)(D,{size:9})," 0"]});let c=a>0;return(0,b.jsxs)("span",{className:`inline-flex items-center gap-0.5 text-[10px] ${c?"text-[var(--sc-cyan)]":"text-[var(--sc-text-muted)]"}`,children:[(0,b.jsx)(c?B:A,{size:9}),c?"+":"",a]})}function P({icon:a,label:c,value:d,delta:e,tone:f}){let g="coral"===f?"text-[var(--sc-coral)]":"cyan"===f?"text-[var(--sc-cyan)]":"text-[var(--sc-text-primary)]";return(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)("span",{className:g,children:a}),(0,b.jsx)("span",{className:"text-[10px] uppercase tracking-[0.12em] text-[var(--sc-text-muted)]",children:c}),(0,b.jsx)("span",{className:`font-mono text-sm font-semibold ${g}`,children:d.toLocaleString()}),(0,b.jsx)(O,{value:e})]})}function Q({moment:a}){let c="block"===a.kind||"quarantine"===a.kind?E.ShieldAlert:"capture"===a.kind?G.Sparkles:C.Brain,d="block"===a.kind?"text-[var(--sc-coral)]":"quarantine"===a.kind?"text-[var(--sc-amber)]":"capture"===a.kind?"text-[var(--sc-cyan)]":"text-[var(--sc-text-secondary)]";return(0,b.jsxs)("li",{className:"flex items-start gap-2 rounded border border-[var(--sc-border)] bg-[var(--sc-bg-deep)]/40 p-2",children:[(0,b.jsx)(c,{size:14,className:`mt-0.5 ${d}`}),(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsx)("div",{className:"text-xs font-medium text-[var(--sc-text-primary)] truncate",children:a.title}),(0,b.jsx)("div",{className:"mt-0.5 text-[10px] text-[var(--sc-text-muted)] truncate",children:a.detail})]}),(0,b.jsx)("span",{className:"shrink-0 text-[10px] text-[var(--sc-text-muted)]",children:new Date(a.timestamp).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]})}function R(){let[a,d]=(0,c.useState)("24h"),[e,f]=(0,c.useState)(!1),{projectFilter:g}=(0,u.useDashboardStore)(),{data:h,isLoading:i}=function(a="24h",b){return(0,H.useQuery)({queryKey:["digest",a,b??null],queryFn:async()=>{let c=new URLSearchParams({window:a});b&&c.set("project",b);let d=await (0,I.gatedFetch)(`${J}/api/digest?${c.toString()}`);if(!d.ok)throw Error(await (0,I.readApiError)(d,"Failed to load digest"));return d.json()},refetchInterval:6e4,staleTime:3e4})}(a,g);if(i||!h)return(0,b.jsxs)("div",{className:"flex items-center gap-3 border-b border-[var(--sc-border)] bg-[var(--sc-bg-surface)]/30 px-4 py-2 text-[11px] text-[var(--sc-text-muted)]",children:[(0,b.jsx)(z.Activity,{size:12,className:"animate-pulse"})," Loading activity…"]});let j=h.current,k=h.delta,l=0===j.scanned&&0===j.memoriesCaptured&&0===j.memoriesRecalled;return(0,b.jsxs)("div",{className:"border-b border-[var(--term-border)] bg-[var(--term-surface)] font-mono",children:[(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-x-5 gap-y-2 px-4 py-2 cursor-pointer hover:bg-[var(--term-surface-2)] transition-colors",onClick:()=>f(a=>!a),role:"button",tabIndex:0,onKeyDown:a=>{("Enter"===a.key||" "===a.key)&&f(a=>!a)},"aria-expanded":e,"aria-label":`${h.windowLabel} ShieldCortex activity. Click to ${e?"collapse":"expand"} top moments.`,children:[(0,b.jsx)("span",{className:"text-[10px] uppercase tracking-[0.14em] text-[var(--sc-text-muted)]",children:h.windowLabel}),l?(0,b.jsx)("span",{className:"text-xs text-[var(--sc-text-muted)]",children:"No activity yet — ShieldCortex captures and protects in the background."}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(P,{icon:(0,b.jsx)(F.ShieldCheck,{size:13}),label:"Scanned",value:j.scanned,delta:k.scanned}),(0,b.jsx)(P,{icon:(0,b.jsx)(E.ShieldAlert,{size:13}),label:"Blocked",value:j.blocked+j.quarantined,delta:(k.blocked??0)+(k.quarantined??0),tone:"coral"}),(0,b.jsx)(P,{icon:(0,b.jsx)(G.Sparkles,{size:13}),label:"Captured",value:j.memoriesCaptured,delta:k.memoriesCaptured,tone:"cyan"}),(0,b.jsx)(P,{icon:(0,b.jsx)(C.Brain,{size:13}),label:"Recalled",value:j.memoriesRecalled,delta:k.memoriesRecalled})]}),(0,b.jsxs)("div",{className:"ml-auto flex items-center gap-3",children:[(0,b.jsx)("div",{onClick:a=>a.stopPropagation(),children:(0,b.jsx)(M,{})}),(0,b.jsx)("div",{className:"flex items-center gap-1",onClick:a=>a.stopPropagation(),children:N.map(c=>(0,b.jsxs)("button",{type:"button",onClick:a=>{a.stopPropagation(),d(c.id)},className:`px-1.5 py-0.5 text-[11px] font-mono transition-colors theme-glass:rounded theme-glass:uppercase theme-glass:tracking-[0.12em] ${c.id===a?"text-[var(--term-electric-fg)] theme-glass:bg-[var(--sc-cyan)]/20 theme-glass:text-[var(--sc-cyan)]":"text-[var(--term-text-muted)] hover:text-[var(--term-text)] theme-glass:hover:text-[var(--sc-text-primary)]"}`,children:[(0,b.jsxs)("span",{className:"theme-glass:hidden",children:["[",c.label,"]"]}),(0,b.jsx)("span",{className:"hidden theme-glass:inline",children:c.label})]},c.id))})]})]}),e&&!l&&(0,b.jsx)("div",{className:"border-t border-[var(--sc-border)] bg-[var(--sc-bg-deep)]/50 px-4 py-3",children:(0,b.jsxs)("div",{className:"grid gap-3 md:grid-cols-2",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("div",{className:"mb-2 text-[10px] uppercase tracking-[0.14em] text-[var(--sc-text-muted)]",children:"Top moments"}),0===h.topMoments.length?(0,b.jsx)("div",{className:"text-xs text-[var(--sc-text-muted)]",children:"Nothing notable to surface in this window."}):(0,b.jsx)("ul",{className:"space-y-1.5",children:h.topMoments.map((a,c)=>(0,b.jsx)(Q,{moment:a},`${a.kind}-${c}-${a.timestamp}`))})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("div",{className:"mb-2 text-[10px] uppercase tracking-[0.14em] text-[var(--sc-text-muted)]",children:"Top threat patterns"}),0===h.topThreatPatterns.length?(0,b.jsx)("div",{className:"text-xs text-[var(--sc-text-muted)]",children:"No threat patterns triggered."}):(0,b.jsx)("ul",{className:"space-y-1",children:h.topThreatPatterns.map(a=>(0,b.jsxs)("li",{className:"flex items-center justify-between rounded border border-[var(--sc-border)] bg-[var(--sc-bg-surface)]/50 px-2 py-1 text-xs",children:[(0,b.jsx)("span",{className:"font-mono text-[var(--sc-text-primary)] truncate",children:a.pattern}),(0,b.jsxs)("span",{className:"font-mono text-[var(--sc-text-muted)]",children:[a.count,"×"]})]},a.pattern))})]})]})})]})}let S=(0,g.default)("funnel",[["path",{d:"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z",key:"sc7q7i"}]]);function T(){let{data:a}=(0,v.useProjects)(),{projectFilter:c,setProjectFilter:d}=(0,u.useDashboardStore)(),e=Array.isArray(a)?a:Array.isArray(a?.projects)?a.projects:[],f=e.filter(a=>"string"==typeof a.project&&a.project.length>0),g=e.find(a=>null===a.project)?.memory_count??f.reduce((a,b)=>a+(b.memory_count??0),0),h=f.slice().sort((a,b)=>(b.memory_count??0)-(a.memory_count??0)||a.project.localeCompare(b.project));return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{className:"theme-glass:hidden flex items-center gap-3 border-b border-[var(--term-border)] bg-[var(--term-surface)] px-4 py-1.5 font-mono text-xs",children:[(0,b.jsx)("span",{className:"text-[var(--term-text-muted)]",children:"project"}),(0,b.jsx)("span",{className:"text-[var(--term-text-muted)]","aria-hidden":!0,children:"="}),(0,b.jsxs)("select",{id:"project-filter",value:c??"",onChange:a=>d(""===a.target.value?null:a.target.value),className:"rounded-sm border border-[var(--term-border)] bg-[var(--term-surface-2)] px-2 py-0.5 text-xs text-[var(--term-text)] font-mono focus:outline-none focus:border-[var(--term-electric)]","aria-label":"Filter dashboard by project",children:[(0,b.jsxs)("option",{value:"",children:["*",g?` (${g})`:""]}),h.map(a=>(0,b.jsxs)("option",{value:a.project,children:[a.project,"number"==typeof a.memory_count?` (${a.memory_count})`:""]},a.project))]}),c&&(0,b.jsx)("button",{type:"button",onClick:()=>d(null),className:"text-[var(--term-text-muted)] hover:text-[var(--term-text)] underline",children:"clear"})]}),(0,b.jsxs)("div",{className:"hidden theme-glass:flex items-center gap-2 border-b border-[var(--sc-border)] bg-[var(--sc-bg-surface)]/40 px-4 py-2 backdrop-blur-sm",children:[(0,b.jsx)(S,{size:13,className:"text-[var(--sc-text-muted)]"}),(0,b.jsx)("label",{htmlFor:"project-filter-glass",className:"text-xs uppercase tracking-[0.14em] text-[var(--sc-text-muted)]",children:"Project"}),(0,b.jsxs)("select",{id:"project-filter-glass",value:c??"",onChange:a=>d(""===a.target.value?null:a.target.value),className:"rounded-md border border-[var(--sc-border)] bg-[var(--sc-bg-deep)] px-2 py-1 text-xs text-[var(--sc-text-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--sc-cyan)]","aria-label":"Filter dashboard by project (glass)",children:[(0,b.jsxs)("option",{value:"",children:["All projects",g?` (${g})`:""]}),h.map(a=>(0,b.jsxs)("option",{value:a.project,children:[a.project,"number"==typeof a.memory_count?` (${a.memory_count})`:""]},a.project))]}),c&&(0,b.jsx)("button",{type:"button",onClick:()=>d(null),className:"text-[11px] text-[var(--sc-text-muted)] hover:text-[var(--sc-text-primary)] underline",children:"Clear"})]})]})}var U=a.i(38883);function V({sources:a=[],max:c=4}){let d=a.slice(0,c),e=a.length-d.length;return(0,b.jsxs)("div",{className:"flex shrink-0 items-center gap-2",children:[(0,b.jsx)("span",{className:"shrink-0 text-[var(--cic-text-faint)]",children:"ECOSYSTEM ▸"}),0===d.length?(0,b.jsx)("span",{className:"text-[var(--cic-text-faint)]",children:"no signals"}):d.map(a=>(0,b.jsxs)("span",{className:"flex shrink-0 items-center gap-1",title:`${a.source} \xb7 ${a.count} ops`,children:[(0,b.jsx)("span",{className:"cic-bloom text-[var(--cic-cyan)]","aria-hidden":!0,children:"◉"}),(0,b.jsx)("span",{className:"text-[var(--cic-text-dim)]",children:function(a){if(!a)return"unknown";let[b,c]=a.split(":");return"agent"===b&&c?c.replace(/-plugin.*/,""):"cli"===b?c?`cli:${c}`:"cli":"hook"===b?"hook":"api"===b?c?`api:${c}`:"api":"user"===b?"you":b||a}(a.source)})]},a.source)),e>0&&(0,b.jsxs)("span",{className:"shrink-0 text-[var(--cic-text-faint)]",children:["+",e]})]})}let W=["input","pattern","semantic","structural","behaviour","credential"];function X({blocked:a=0}){let c=a>0,d=c?"var(--cic-coral)":"var(--cic-cyan)";return(0,b.jsxs)("div",{className:"flex shrink-0 items-center gap-2",title:`Shield: 6 layers armed \xb7 ${a} blocked`,children:[(0,b.jsx)("span",{className:"text-[var(--cic-text-faint)]",children:"SHIELD"}),(0,b.jsx)("span",{className:"flex gap-0.5",children:W.map(a=>(0,b.jsx)("span",{className:c?"cic-bloom":"",style:{color:d},"aria-hidden":!0,children:"▣"},a))})]})}function Y({label:a,value:c,colour:d}){return(0,b.jsxs)("span",{className:"flex items-center gap-1",title:a,children:[(0,b.jsx)("span",{className:"text-[var(--cic-text-faint)]",children:a}),(0,b.jsx)("span",{className:"cic-bloom tabular-nums",style:{color:d},children:c.toLocaleString()})]})}function Z(){let a=(0,U.useAuditStats)("24h"),d=(0,v.useStats)(),{isConnected:e}=(0,w.useWebSocketStatus)(),[f,g]=(0,c.useState)("");(0,c.useEffect)(()=>{let a=()=>g(new Date().toTimeString().slice(0,8));a();let b=setInterval(a,1e3);return()=>clearInterval(b)},[]);let h=a.data,i=h?.topSources??[];return(0,b.jsxs)("header",{className:"flex items-center gap-5 overflow-x-auto border-b border-[var(--cic-border)] bg-[var(--cic-surface)]/80 px-4 py-2 font-mono text-xs whitespace-nowrap",children:[(0,b.jsxs)("span",{className:"flex shrink-0 items-center gap-2",children:[(0,b.jsx)(m,{size:18,className:"shrink-0"}),(0,b.jsx)("span",{className:"cic-bloom font-semibold tracking-[0.18em] text-[var(--cic-cyan)]",children:"SHIELDCORTEX·CIC"})]}),(0,b.jsx)(V,{sources:i}),(0,b.jsx)(X,{blocked:h?.blockedCount??0}),(0,b.jsxs)("span",{className:"ml-auto flex shrink-0 items-center gap-4",children:[(0,b.jsx)(Y,{label:"SCANNED",value:h?.totalOperations??0,colour:"var(--cic-text-dim)"}),(0,b.jsx)(Y,{label:"BLOCKED",value:h?.blockedCount??0,colour:"var(--cic-coral)"}),(0,b.jsx)(Y,{label:"QUAR",value:h?.quarantinedCount??0,colour:"var(--cic-amber)"}),(0,b.jsx)(Y,{label:"MEMORIES",value:d.data?.total??0,colour:"var(--cic-cyan)"}),(0,b.jsxs)("span",{className:"flex items-center gap-1.5",title:e?"live link up":"link down",children:[(0,b.jsx)("span",{className:e?"pulse-cyan":"pulse-coral",style:{color:e?"var(--cic-cyan)":"var(--cic-coral)"},"aria-hidden":!0,children:"◉"}),(0,b.jsx)("span",{className:"text-[var(--cic-text-faint)]",children:e?"LINK":"DOWN"})]}),(0,b.jsx)("span",{className:"tabular-nums text-[var(--cic-text-muted)]",suppressHydrationWarning:!0,children:f}),(0,b.jsx)(M,{})]})]})}let $={memory:{token:"--cic-cyan",hex:"#00e5cc",glow:"rgba(0, 229, 204, 0.35)",label:"MEMORY",meaning:"vault · recall · the living graph"},defence:{token:"--cic-coral",hex:"#ff4d4d",glow:"rgba(255, 77, 77, 0.35)",label:"DEFENCE",meaning:"shield · interception · the 6 layers"},quarantine:{token:"--cic-amber",hex:"#f5a623",glow:"rgba(245, 166, 35, 0.32)",label:"QUARANTINE",meaning:"isolation hold · pending review"},integrity:{token:"--cic-violet",hex:"#a78bfa",glow:"rgba(167, 139, 250, 0.32)",label:"INTEGRITY",meaning:"consolidation · links · contradictions"}},_={"/overview":"memory","/memory":"memory","/memory/replay":"integrity","/protection":"defence","/xray":"defence","/settings":"integrity"};function aa(){let a=(0,f.usePathname)(),{isConnected:d}=(0,w.useWebSocketStatus)(),[g,h]=(0,c.useState)(!1);return(0,b.jsxs)("aside",{className:`flex shrink-0 flex-col border-r border-[var(--cic-border)] bg-[var(--cic-surface)]/60 font-mono transition-[width] duration-200 ${g?"w-14":"w-56"}`,children:[(0,b.jsxs)("button",{type:"button",onClick:()=>h(a=>!a),className:"flex h-11 items-center gap-2 px-4 text-left text-[var(--cic-text-muted)] hover:text-[var(--cic-text)]","aria-label":g?"expand navigation":"collapse navigation",children:[(0,b.jsx)("span",{className:"cic-bloom text-[var(--cic-cyan)]",children:"$"}),!g&&(0,b.jsx)("span",{className:"text-sm text-[var(--cic-text-dim)]",children:"shieldcortex"})]}),(0,b.jsx)("nav",{className:"flex flex-1 flex-col gap-0.5 px-2 py-2",children:t.map(c=>{let d=a===c.href||"/overview"!==c.href&&a.startsWith(c.href),f=$[_[c.href]??"memory"],h=c.icon;return(0,b.jsxs)(e.default,{href:c.href,title:c.label,className:`flex items-center gap-2 rounded px-2 py-1.5 text-sm transition-colors ${d?"bg-[var(--cic-surface-2)] text-[var(--cic-text)]":"text-[var(--cic-text-muted)] hover:text-[var(--cic-text)]"}`,style:d?{color:`var(${f.token})`}:void 0,children:[(0,b.jsx)("span",{className:"w-2 shrink-0",style:d?{color:`var(${f.token})`}:void 0,children:d?"▸":""}),h?(0,b.jsx)(h,{size:14,className:"shrink-0"}):null,!g&&(0,b.jsx)("span",{className:"truncate",children:c.label})]},c.href)})}),(0,b.jsxs)("div",{className:"flex items-center gap-2 border-t border-[var(--cic-border)] px-4 py-2 text-xs",children:[(0,b.jsx)("span",{className:d?"pulse-cyan":"pulse-coral",style:{color:d?"var(--cic-cyan)":"var(--cic-coral)"},"aria-hidden":!0,children:"◉"}),!g&&(0,b.jsx)("span",{className:"text-[var(--cic-text-faint)]",children:d?"link.up":"link.down"})]})]})}let ab=a=>({ok:!0,lines:a}),ac=a=>({ok:!1,lines:a}),ad={recall:{name:"recall",usage:'recall "<query>" [--project <p>]',summary:"search the memory cortex",run:async(a,{args:b,flags:c})=>{let d=b.join(" ").trim();if(!d)return ac(['recall: give a query, e.g. recall "auth bug"']);let e="string"==typeof c.project?c.project:void 0,f=await a.recall(d,e);return 0===f.length?ab([`recall "${d}" → no memories`]):ab([`recall "${d}" → ${f.length}`,...f.slice(0,10).map(a=>` #${a.id} ${a.title}`)])}},scan:{name:"scan",usage:"scan <path> [--deep]",summary:"X-Ray a file, folder, or package",run:async(a,{args:b,flags:c})=>{let d=b[0];if(!d)return ac(["scan: give a path or package"]);let e=await a.scan(d,!0===c.deep);return ab([`scan ${e.target} → ${e.riskLevel} \xb7 trust ${e.trustScore} \xb7 ${e.filesScanned} files \xb7 ${e.findingsCount} findings`])}},forget:{name:"forget",usage:"forget <id>",summary:"delete a memory by id",run:async(a,{args:b})=>{let c=Number(b[0]);return Number.isInteger(c)?(await a.forget(c),ab([`▸ forgot #${c}`])):ac(["forget: give a numeric memory id"])}},consolidate:{name:"consolidate",usage:"consolidate",summary:"run a consolidation pass (STM→LTM, decay, cleanup)",run:async a=>{let b=await a.consolidate();return ab([`▸ consolidated ${b.consolidated} \xb7 decayed ${b.decayed} \xb7 deleted ${b.deleted}`])}},quarantine:{name:"quarantine",usage:"quarantine [approve <id> | reject <id>]",summary:"list pending quarantine, or approve/reject by id",run:async(a,{args:b})=>{let c=b[0]?.toLowerCase();if(!c||"list"===c){let b=await a.quarantineList();return 0===b.length?ab(["quarantine: nothing pending"]):ab([`quarantine pending → ${b.length}`,...b.slice(0,10).map(a=>` #${a.id} ${a.title}`)])}if("approve"===c||"reject"===c){let d=Number(b[1]);return Number.isInteger(d)?(await a.quarantineReview(d,c),ab([`▸ ${"approve"===c?"approved":"rejected"} #${d}`])):ac([`quarantine ${c}: give a numeric id`])}return ac(["quarantine: use list | approve <id> | reject <id>"])}},irondome:{name:"irondome",usage:"irondome <on|off|status>",summary:"arm/disarm the Iron Dome, or report its state",run:async(a,{args:b})=>{let c=b[0]?.toLowerCase();return"on"!==c&&"off"!==c&&"status"!==c?ac(["irondome: use on | off | status"]):ab([await a.ironDome(c)])}},remember:{name:"remember",usage:'remember "<text>"',summary:"store a new memory",run:async(a,{args:b})=>{let c=b.join(" ").trim();if(!c)return ac(['remember: give the text to store, e.g. remember "the fix was X"']);let d=await a.remember(c);return ab([`▸ remembered #${d.id}`])}},go:{name:"go",usage:"go <view>",summary:"navigate to a console view",run:(a,{args:b})=>{let c=b[0]?.toLowerCase();if(!c)return ac(["go: which view? "+a.routes.map(a=>a.label).join(" · ")]);let d=a.routes.find(a=>a.label.toLowerCase().includes(c)||a.href.toLowerCase().includes(c));return d?(a.navigate(d.href),ab([`▸ ${d.label}`])):ac([`go: unknown view '${c}'. options: ${a.routes.map(a=>a.label).join(" · ")}`])}},theme:{name:"theme",usage:"theme <terminal|glass>",summary:"switch the dashboard theme",run:(a,{args:b})=>{let c=b[0]?.toLowerCase();return"terminal"!==c&&"glass"!==c?ac(["theme: choose 'terminal' or 'glass'"]):(a.setTheme(c),ab([`▸ theme → ${c}`]))}},help:{name:"help",usage:"help",summary:"list commands",run:()=>ab(["commands:",...Object.values(ad).map(a=>` ${a.usage.padEnd(34)} ${a.summary}`)])}};async function ae(a,b){let c=function(a){let b=a.trim();if(!b)return null;let c=function(a){let b,c=[],d=/"([^"]*)"|(\S+)/g;for(;null!==(b=d.exec(a));)c.push(void 0!==b[1]?b[1]:b[2]);return c}(b),d=c[0].toLowerCase(),e=[],f={};for(let a=1;a<c.length;a+=1){let b=c[a];if(b.startsWith("--")){let d=b.slice(2),e=c[a+1];void 0===e||e.startsWith("--")?f[d]=!0:(f[d]=e,a+=1)}else e.push(b)}return{name:d,args:e,flags:f}}(a);if(!c)return ac([]);let d=ad[c.name];if(!d)return ac([`unknown command: ${c.name} — try 'help'`]);try{return await d.run(b,c)}catch(a){return ac([`error: ${a instanceof Error?a.message:String(a)}`])}}var af=a.i(26804);let ag=process.env.NEXT_PUBLIC_API_URL||"http://localhost:3001",ah={in:"text-[var(--cic-text-dim)]",out:"text-[var(--cic-text)]",err:"text-[var(--cic-coral)]"};function ai(){let a=function(){let a=(0,f.useRouter)(),[,b]=(0,d.useTheme)(),e=(0,af.useXRayScan)(),g=(0,v.useDeleteMemory)(),h=(0,v.useConsolidate)(),i=(0,U.useApproveQuarantine)(),j=(0,U.useRejectQuarantine)();return(0,c.useMemo)(()=>({navigate:b=>a.push(b),setTheme:b,recall:async(a,b)=>{let c=new URLSearchParams({mode:"search",query:a,limit:"10"});b&&c.set("project",b);let d=await (0,I.authFetch)(`${ag}/api/memories?${c.toString()}`);if(!d.ok)throw Error(await (0,I.readApiError)(d,"recall failed"));return((await d.json()).memories??[]).map(a=>({id:a.id,title:a.title}))},scan:async(a,b)=>{let{result:c}=await e.mutateAsync({target:a,deep:b});return{target:c.target,riskLevel:c.riskLevel,trustScore:c.trustScore,filesScanned:c.filesScanned,findingsCount:c.findings.length}},forget:async a=>{await g.mutateAsync(a)},consolidate:async()=>{let a=await h.mutateAsync();return{consolidated:a.consolidated,decayed:a.decayed,deleted:a.deleted}},quarantineList:async()=>{let a=await (0,I.authFetch)(`${ag}/api/v1/quarantine?status=pending&limit=20`);if(!a.ok)throw Error(await (0,I.readApiError)(a,"quarantine list failed"));return((await a.json()).items??[]).map(a=>({id:a.id,title:a.original_title??a.title??`item ${a.id}`}))},quarantineReview:async(a,b)=>{"approve"===b?await i.mutateAsync(a):await j.mutateAsync({id:a})},ironDome:async a=>{if("status"===a){let a=await (0,I.authFetch)(`${ag}/api/iron-dome/status`);if(!a.ok)throw Error(await (0,I.readApiError)(a,"iron dome status failed"));let b=await a.json();return`iron dome: ${b.enabled?"ACTIVE":"inactive"}`}let b=await (0,I.authFetch)(`${ag}/api/iron-dome/${"on"===a?"activate":"deactivate"}`,{method:"POST",headers:{"Content-Type":"application/json"},body:"{}"});if(!b.ok)throw Error(await (0,I.readApiError)(b,`iron dome ${a} failed`));return`▸ iron dome ${"on"===a?"ACTIVE":"disabled"}`},remember:async a=>{let b=await (0,I.authFetch)(`${ag}/api/memories`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:a.slice(0,80),content:a})});if(!b.ok)throw Error(await (0,I.readApiError)(b,"remember failed"));return{id:(await b.json()).id??0}},routes:t.map(a=>({label:a.label,href:a.href}))}),[a,b,e,g,h,i,j])}(),[e,g]=(0,c.useState)(""),[h,i]=(0,c.useState)([]),[j,k]=(0,c.useState)([]),[l,m]=(0,c.useState)(-1),[n,o]=(0,c.useState)(!1),p=(0,c.useRef)(null),q=(0,c.useRef)(null);(0,c.useEffect)(()=>{let a=a=>{(a.metaKey||a.ctrlKey)&&"k"===a.key.toLowerCase()&&(a.preventDefault(),p.current?.focus())};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[]),(0,c.useEffect)(()=>{let a=q.current;a&&"function"==typeof a.scrollTo&&a.scrollTo({top:a.scrollHeight})},[h]);let r=(0,c.useCallback)(async()=>{let b=e.trim();if(!b||n)return;i(a=>[...a,{kind:"in",text:b}]),k(a=>[...a,b]),m(-1),g(""),o(!0);let c=await ae(b,a);i(a=>[...a,...c.lines.map(a=>({kind:c.ok?"out":"err",text:a}))]),o(!1)},[e,n,a]);return(0,b.jsxs)("div",{className:"border-t border-[var(--cic-border)] bg-[var(--cic-surface)]/80 font-mono text-sm",children:[h.length>0&&(0,b.jsx)("div",{ref:q,className:"max-h-40 overflow-y-auto px-4 py-2 leading-relaxed",children:h.map((a,c)=>(0,b.jsx)("div",{className:`whitespace-pre-wrap ${ah[a.kind]}`,children:"in"===a.kind?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{className:"text-[var(--cic-cyan)]",children:"sc ▸ "}),a.text]}):a.text},c))}),(0,b.jsxs)("div",{className:"flex items-center gap-2 px-4 py-2.5",children:[(0,b.jsx)("span",{className:"cic-bloom shrink-0 text-[var(--cic-cyan)]",children:"sc ▸"}),(0,b.jsx)("input",{ref:p,value:e,onChange:a=>g(a.target.value),onKeyDown:a=>{if("Enter"===a.key)a.preventDefault(),r();else if("ArrowUp"===a.key){if(a.preventDefault(),0===j.length)return;let b=-1===l?j.length-1:Math.max(0,l-1);m(b),g(j[b])}else if("ArrowDown"===a.key){if(a.preventDefault(),-1===l)return;let b=l+1;b>=j.length?(m(-1),g("")):(m(b),g(j[b]))}},spellCheck:!1,autoComplete:"off","aria-label":"command line",placeholder:"recall · scan · forget · consolidate · go · theme · help",className:"flex-1 bg-transparent text-[var(--cic-text)] outline-none placeholder:text-[var(--cic-text-faint)]"}),!e&&(0,b.jsx)("span",{className:"cli-cursor text-[var(--cic-cyan)]"}),(0,b.jsx)("kbd",{className:"shrink-0 rounded border border-[var(--cic-border)] px-1.5 text-xs text-[var(--cic-text-faint)]",children:"⌘K"})]})]})}let aj=process.env.NEXT_PUBLIC_API_URL||"http://localhost:3001",ak=["▁","▂","▃","▄","▅","▆","▇","█"];function al(a){if(0===a.length)return"";let b=Math.max(...a);return b<=0?ak[0].repeat(a.length):a.map(a=>ak[Math.round(Math.max(0,a)/b*(ak.length-1))]).join("")}function am(){let{memoryTrend:a,threatTrend:c}=function(){let{data:a}=(0,H.useQuery)({queryKey:["activity-trend"],queryFn:async()=>{let a=await (0,I.authFetch)(`${aj}/api/memories/activity`);if(!a.ok)throw Error("Failed to fetch activity");return a.json()},staleTime:3e5,refetchInterval:3e5}),b=new Date;b.setDate(b.getDate()-7);let c=b.toISOString(),{data:d}=(0,H.useQuery)({queryKey:["threat-trend"],queryFn:async()=>{let a=new URLSearchParams({firewallResult:"BLOCK",startTime:c,limit:"500"}),b=await (0,I.authFetch)(`${aj}/api/v1/audit?${a}`);if(!b.ok)throw Error("Failed to fetch audit logs");return b.json()},staleTime:3e5,refetchInterval:3e5}),e=[];for(let a=6;a>=0;a--){let b=new Date;b.setDate(b.getDate()-a),e.push(b.toISOString().slice(0,10))}let f=new Map;if(a?.activity)for(let b of a.activity)f.set(b.date,b.count);let g=e.map(a=>f.get(a)??0),h=new Map;if(d?.logs)for(let a of d.logs){let b=a.timestamp.slice(0,10);h.set(b,(h.get(b)??0)+1)}return{memoryTrend:g,threatTrend:e.map(a=>h.get(a)??0)}}();return(0,b.jsxs)("div",{className:"flex items-center gap-6 border-t border-[var(--cic-border)] bg-[var(--cic-surface)]/40 px-4 py-1 font-mono text-[11px] text-[var(--cic-text-faint)]",children:[(0,b.jsxs)("span",{className:"flex items-center gap-2",title:"memories created per day, last 7 days",children:[(0,b.jsx)("span",{children:"MEMORY·7d"}),(0,b.jsx)("span",{className:"cic-bloom tracking-tight text-[var(--cic-cyan)]",children:al(a)||"·······"})]}),(0,b.jsxs)("span",{className:"flex items-center gap-2",title:"threats blocked per day, last 7 days",children:[(0,b.jsx)("span",{children:"THREAT·7d"}),(0,b.jsx)("span",{className:"cic-bloom tracking-tight text-[var(--cic-coral)]",children:al(c)||"·······"})]})]})}function an({children:a}){return(0,b.jsxs)("div",{className:"flex h-dvh w-full flex-col overflow-hidden bg-[var(--cic-void)] text-[var(--cic-text)]",children:[(0,b.jsx)(Z,{}),(0,b.jsxs)("div",{className:"flex min-h-0 flex-1",children:[(0,b.jsx)(aa,{}),(0,b.jsx)("main",{className:"min-w-0 flex-1 overflow-auto",children:a})]}),(0,b.jsx)(am,{}),(0,b.jsx)(ai,{})]})}function ao({children:a}){let[e,f]=(0,c.useState)(!1);(0,c.useEffect)(()=>f(!0),[]);let[g]=(0,d.useTheme)();return"terminal"===(e?g:"terminal")?(0,b.jsx)(an,{children:a}):(0,b.jsxs)("div",{className:"flex h-dvh w-full overflow-hidden bg-[var(--sc-bg-deep)] text-[var(--sc-text-primary)]",children:[(0,b.jsx)(y,{}),(0,b.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col",children:[(0,b.jsx)(R,{}),(0,b.jsx)(T,{}),(0,b.jsx)("main",{className:"min-w-0 flex-1 overflow-auto",children:a})]})]})}a.s(["ShellSwitch",()=>ao],4999)},81662,a=>{"use strict";var b=a.i(16306),c=a.i(83364),d=a.i(1090);function e(){let[a]=(0,d.useTheme)();return(0,b.jsx)(c.Toaster,{position:"bottom-right",toastOptions:{style:"glass"===a?{background:"var(--sc-bg-surface)",border:"1px solid var(--sc-border)",color:"var(--sc-text-primary)",fontFamily:"system-ui, sans-serif"}:{background:"var(--term-surface)",border:"1px solid var(--term-border)",color:"var(--term-text)",fontFamily:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace",fontSize:"13px",borderRadius:"6px"}},theme:"dark"})}a.s(["ToastProvider",()=>e])},16525,a=>{"use strict";var b=a.i(98419),c=a.i(83364),d=a.i(76614);let e=new Map;function f(){let a=(0,b.useCallback)(a=>{let b;if("defence_event"!==a.type)return;let d=a.data;if(!d||"ALLOW"===d.firewall_result)return;let f="BLOCK"===d.firewall_result,g=d.source_identifier||d.source_type||"unknown source",h=(b=function(a){if(Array.isArray(a))return a.filter(a=>"string"==typeof a);if("string"!=typeof a||!a.trim())return[];try{let b=JSON.parse(a);if(Array.isArray(b))return b.filter(a=>"string"==typeof a)}catch{return[a]}return[]}(d.threat_indicators)).length?b.slice(0,3).map(a=>a.replace(/_/g," ")).join(", "):"",i=d.reason?.trim()||(h?`Threats: ${h}`:"See audit log for details");if(function(a){let b=Date.now(),c=e.get(a);if(c&&b-c<2e3)return!0;if(e.set(a,b),e.size>50){let a=b-2e3;for(let[b,c]of e)c<a&&e.delete(b)}return!1}(`${d.firewall_result}:${g}:${(d.reason||"").slice(0,80)}`))return;let j=f?`\u{1F6E1} Blocked attack from ${g}`:`\u{26A0}\u{FE0F} Quarantined input from ${g}`,k={description:i,duration:f?8e3:5e3};f?c.toast.error(j,k):c.toast.warning(j,k)},[]);return(0,d.useWebSocketEvent)(a),null}a.s(["BlockToastBridge",()=>f])}];
2
2
 
3
3
  //# sourceMappingURL=dashboard_src_48aa48e3._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[33466,a=>{"use strict";var b=a.i(16306),c=a.i(98419),d=a.i(11160),e=a.i(47520),f=a.i(26943),g=a.i(74150),h=a.i(77115),i=a.i(76625),j=a.i(6750),k=a.i(66397),l=a.i(98472),m=a.i(79155),n=a.i(54100),o=a.i(48195),p=a.i(60210),q=a.i(23808),r=a.i(79151),s=a.i(14126);let t=(0,a.i(70694).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);function u({ready:a,memoryCount:c,scanCount:d,blockedCount:e}){return!a||c>0||d>0||e>0?null:(0,b.jsxs)(n.GlassCard,{strong:!0,className:"p-6",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(s.Sparkles,{size:16,className:"text-[var(--sc-cyan)]"}),(0,b.jsx)("h3",{className:"text-lg font-semibold text-[var(--sc-text-primary)]",children:"Welcome to ShieldCortex"})]}),(0,b.jsxs)("p",{className:"mt-2 max-w-2xl text-sm text-[var(--sc-text-secondary)]",children:["Nothing here yet. The dashboard is for ",(0,b.jsx)("strong",{className:"text-[var(--sc-text-primary)]",children:"visual review and bulk decisions"}),"; the ",(0,b.jsx)("code",{className:"font-mono",children:"shieldcortex"})," CLI and the agent hooks are for ",(0,b.jsx)("strong",{className:"text-[var(--sc-text-primary)]",children:"automation"}),". It fills in as your agents capture memories and the defence pipeline runs."]}),(0,b.jsxs)("div",{className:"mt-5 grid gap-3 sm:grid-cols-3",children:[(0,b.jsxs)("div",{className:"rounded-xl border border-[var(--sc-border)] bg-[var(--sc-bg-elevated)] p-4",children:[(0,b.jsx)(i.Database,{size:16,className:"text-[var(--sc-cyan)]"}),(0,b.jsx)("p",{className:"mt-2 text-sm font-medium text-[var(--sc-text-primary)]",children:"Capture memories"}),(0,b.jsxs)("p",{className:"mt-1 text-xs text-[var(--sc-text-muted)]",children:["Captured automatically as you work (Claude Code / OpenClaw hooks), or via the"," ",(0,b.jsx)("code",{className:"font-mono",children:"remember"})," MCP tool."]})]}),(0,b.jsxs)("div",{className:"rounded-xl border border-[var(--sc-border)] bg-[var(--sc-bg-elevated)] p-4",children:[(0,b.jsx)(t,{size:16,className:"text-[var(--sc-cyan)]"}),(0,b.jsx)("p",{className:"mt-2 text-sm font-medium text-[var(--sc-text-primary)]",children:"Generate audit data"}),(0,b.jsxs)("p",{className:"mt-1 text-xs text-[var(--sc-text-muted)]",children:["Run ",(0,b.jsx)("code",{className:"font-mono",children:"shieldcortex scan <file>"})," to push content through the defence pipeline and populate the audit log."]})]}),(0,b.jsxs)("div",{className:"rounded-xl border border-[var(--sc-border)] bg-[var(--sc-bg-elevated)] p-4",children:[(0,b.jsx)(k.ScanSearch,{size:16,className:"text-[var(--sc-cyan)]"}),(0,b.jsx)("p",{className:"mt-2 text-sm font-medium text-[var(--sc-text-primary)]",children:"Scan supply chain"}),(0,b.jsxs)("p",{className:"mt-1 text-xs text-[var(--sc-text-muted)]",children:["Run an X-Ray scan from the X-Ray page, or"," ",(0,b.jsx)("code",{className:"font-mono",children:"shieldcortex xray <path>"})," from the CLI."]})]})]})]})}var v=a.i(67789),w=a.i(38883),x=a.i(35031),y=a.i(26804),z=a.i(79030);function A(){let{data:a}=(0,v.useStats)(),{data:s}=(0,w.useAuditStats)("24h"),{data:t}=(0,w.useQuarantine)("pending",10),{data:A}=(0,w.useQuarantine)("pending",1,void 0,"memory_file"),{data:B}=(0,v.useQuality)(),{data:C}=(0,v.useContradictions)(),{data:D}=(0,x.useLicenseStatus)(),{data:E}=(0,y.useXRayStatus)(),F=a?.total??0,G=a?.decayDistribution?.healthy??0,H=a?.decayDistribution?.fading??0,I=a?.decayDistribution?.critical??0,J=a?.decayDistribution?Math.round(G/Math.max(1,F)*100):0,K=C?.count??C?.contradictions?.length??0,L=t?.total??0,M=A?.total??0,N=Math.max(0,L-M),O=s?.blockedCount??0,P=B?.duplicates?.count??0,Q=B?.stale?.count??0,R=B?.neverAccessed?.count??0,S=E?.summary?.scans??0,T=(0,c.useMemo)(()=>{let a=[];return M>0&&a.push({title:`${M} memory file finding${1===M?"":"s"} need review`,detail:"These are scanned agent memory files, not stored ShieldCortex memories. Review or dismiss them without editing files.",severity:M>10?"critical":"medium",href:"/protection?tab=quarantine",cta:"Review files"}),N>0&&a.push({title:`${N} memory write${1===N?"":"s"} in quarantine`,detail:"Review blocked writes before they become silent operator debt.",severity:N>10?"critical":"medium",href:"/protection?tab=quarantine",cta:"Review writes"}),K>0&&a.push({title:`${K} contradiction${1===K?"":"s"} detected`,detail:"Conflicting facts reduce recall trust.",severity:K>5?"high":"medium",href:"/memory?tab=review",cta:"Resolve"}),O>0&&a.push({title:`${O} blocked operation${1===O?"":"s"} (24h)`,detail:"Defence pipeline blocked suspicious writes.",severity:"high",href:"/protection?tab=audit",cta:"View audit"}),Q+P>0&&a.push({title:"Memory cleanup available",detail:`${Q} stale, ${P} duplicate, ${R} unused memories.`,severity:"low",href:"/memory?tab=review",cta:"Clean up"}),a.slice(0,4)},[M,N,K,O,Q,P,R]),U=M>0&&N>0?`${M} file finding${1===M?"":"s"}, ${N} write${1===N?"":"s"} pending.`:M>0?`${M} memory-file finding${1===M?"":"s"} pending.`:`${L} item${1===L?"":"s"} pending review.`;return(0,b.jsx)("div",{className:"h-full overflow-y-auto",children:(0,b.jsxs)("div",{className:"mx-auto max-w-7xl space-y-6 p-6",children:[(0,b.jsx)(r.PageHeader,{eyebrow:"ShieldCortex",title:"Command Centre",subtitle:"Stored-memory health, memory-file findings, threat pressure, and operational status at a glance."}),(0,b.jsx)(u,{ready:void 0!==a,memoryCount:F,scanCount:S,blockedCount:O}),(0,b.jsx)(n.GlassCard,{title:"SYSTEM STATUS",bodyPadding:!1,children:(0,b.jsxs)("div",{className:"grid grid-cols-2 gap-4 p-4 lg:grid-cols-5",children:[(0,b.jsx)(o.StatCard,{label:"Stored Memories",value:F.toLocaleString(),icon:i.Database,accent:"cyan",trend:J>0?{value:J,label:"healthy"}:void 0}),(0,b.jsx)(o.StatCard,{label:"Memory Files Flagged",value:M.toLocaleString(),icon:j.FileText,accent:M>0?"amber":"muted"}),(0,b.jsx)(o.StatCard,{label:"Threats Blocked",value:O.toLocaleString(),icon:m.ShieldAlert,accent:O>0?"coral":"muted"}),(0,b.jsx)(o.StatCard,{label:"X-Ray Scans",value:S.toLocaleString(),icon:k.ScanSearch,accent:"cyan"}),(0,b.jsx)(o.StatCard,{label:"Health Score",value:`${J}%`,icon:l.Shield,accent:J>=80?"cyan":J>=50?"amber":"coral"})]})}),(0,b.jsxs)("div",{className:"grid grid-cols-1 gap-6 lg:grid-cols-[1fr_1fr]",children:[(0,b.jsxs)(n.GlassCard,{className:"p-6",children:[(0,b.jsx)("h3",{className:"text-lg font-semibold text-[var(--sc-text-primary)]",children:"Stored Memory Health"}),(0,b.jsx)("p",{className:"mt-1 text-sm text-[var(--sc-text-muted)]",children:"Decay distribution across ShieldCortex stored memories."}),(0,b.jsx)("div",{className:"mt-6 flex items-center justify-center",children:(0,b.jsxs)("div",{className:"relative h-40 w-40",children:[(0,b.jsxs)("svg",{viewBox:"0 0 100 100",className:"h-full w-full -rotate-90",children:[(0,b.jsx)("circle",{cx:"50",cy:"50",r:"42",fill:"none",stroke:"var(--sc-bg-elevated)",strokeWidth:"8"}),(0,b.jsx)("circle",{cx:"50",cy:"50",r:"42",fill:"none",stroke:"var(--sc-cyan)",strokeWidth:"8",strokeDasharray:`${2.64*J} 264`,strokeLinecap:"round",className:"transition-all duration-1000"})]}),(0,b.jsxs)("div",{className:"absolute inset-0 flex flex-col items-center justify-center",children:[(0,b.jsxs)("span",{className:"text-3xl font-bold text-[var(--sc-text-primary)]",children:[J,"%"]}),(0,b.jsx)("span",{className:"text-xs text-[var(--sc-text-muted)]",children:"healthy"})]})]})}),(0,b.jsxs)("div",{className:"mt-6 grid grid-cols-3 gap-3 text-center",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("div",{className:"text-lg font-semibold text-[var(--sc-cyan)]",children:G}),(0,b.jsx)("div",{className:"text-xs text-[var(--sc-text-muted)]",children:"Healthy"})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("div",{className:"text-lg font-semibold text-[var(--sc-amber)]",children:H}),(0,b.jsx)("div",{className:"text-xs text-[var(--sc-text-muted)]",children:"Fading"})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("div",{className:"text-lg font-semibold text-[var(--sc-coral)]",children:I}),(0,b.jsx)("div",{className:"text-xs text-[var(--sc-text-muted)]",children:"Critical"})]})]})]}),(0,b.jsxs)(n.GlassCard,{className:"p-6",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsx)("h3",{className:"text-lg font-semibold text-[var(--sc-text-primary)]",children:"Urgent Actions"}),T.length>0&&(0,b.jsxs)(p.Badge,{variant:"coral",dot:!0,pulse:!0,children:[T.length," active"]})]}),(0,b.jsx)("p",{className:"mt-1 text-sm text-[var(--sc-text-muted)]",children:"Quickest wins for trust, safety, and recall quality."}),(0,b.jsx)("div",{className:"mt-4 space-y-3",children:0===T.length?(0,b.jsxs)("div",{className:"flex items-center gap-3 rounded-xl bg-[var(--sc-bg-elevated)] p-4",children:[(0,b.jsx)(g.CheckCircle2,{size:18,className:"shrink-0 text-[var(--sc-cyan)]"}),(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"text-sm font-medium text-[var(--sc-text-primary)]",children:"All clear"}),(0,b.jsx)("p",{className:"text-xs text-[var(--sc-text-muted)]",children:"No urgent issues right now. Memory health looks stable."})]})]}):T.map(a=>(0,b.jsxs)(d.default,{href:a.href,className:"group flex items-start gap-3 rounded-xl bg-[var(--sc-bg-elevated)] p-4 transition-all hover:bg-[var(--sc-surface-interactive-hover)]",children:["critical"===a.severity||"high"===a.severity?(0,b.jsx)(e.AlertTriangle,{size:16,className:"mt-0.5 shrink-0 text-[var(--sc-coral)]"}):"medium"===a.severity?(0,b.jsx)(h.Clock3,{size:16,className:"mt-0.5 shrink-0 text-[var(--sc-amber)]"}):(0,b.jsx)(g.CheckCircle2,{size:16,className:"mt-0.5 shrink-0 text-[var(--sc-cyan)]"}),(0,b.jsxs)("div",{className:"flex-1",children:[(0,b.jsx)("p",{className:"text-sm font-medium text-[var(--sc-text-primary)]",children:a.title}),(0,b.jsx)("p",{className:"mt-0.5 text-xs text-[var(--sc-text-muted)]",children:a.detail})]}),(0,b.jsxs)("span",{className:"flex shrink-0 items-center gap-1 text-xs font-medium text-[var(--sc-cyan)] opacity-0 transition-opacity group-hover:opacity-100",children:[a.cta," ",(0,b.jsx)(f.ArrowRight,{size:12})]})]},a.title))})]})]}),(0,b.jsxs)("div",{className:"grid grid-cols-2 gap-4 lg:grid-cols-4",children:[(0,b.jsx)(d.default,{href:"/xray",children:(0,b.jsxs)(n.GlassCard,{hover:!0,className:"p-5",children:[(0,b.jsx)(k.ScanSearch,{size:20,className:"text-[var(--sc-cyan)]"}),(0,b.jsx)("p",{className:"mt-3 text-sm font-semibold text-[var(--sc-text-primary)]",children:"Run X-Ray Scan"}),(0,b.jsx)("p",{className:"mt-1 text-xs text-[var(--sc-text-muted)]",children:"Inspect packages and files for hidden risk."})]})}),(0,b.jsx)(d.default,{href:"/protection?tab=quarantine",children:(0,b.jsxs)(n.GlassCard,{hover:!0,className:"p-5",children:[(0,b.jsx)(e.AlertTriangle,{size:20,className:"text-[var(--sc-amber)]"}),(0,b.jsx)("p",{className:"mt-3 text-sm font-semibold text-[var(--sc-text-primary)]",children:"Review Quarantine"}),(0,b.jsx)("p",{className:"mt-1 text-xs text-[var(--sc-text-muted)]",children:U})]})}),(0,b.jsx)(d.default,{href:"/memory?tab=recall",children:(0,b.jsxs)(n.GlassCard,{hover:!0,className:"p-5",children:[(0,b.jsx)(i.Database,{size:20,className:"text-[var(--sc-cyan)]"}),(0,b.jsx)("p",{className:"mt-3 text-sm font-semibold text-[var(--sc-text-primary)]",children:"Debug Recall"}),(0,b.jsx)("p",{className:"mt-1 text-xs text-[var(--sc-text-muted)]",children:"Test queries and inspect ranking factors."})]})}),(0,b.jsx)(d.default,{href:"/protection?tab=dome",children:(0,b.jsxs)(n.GlassCard,{hover:!0,className:"p-5",children:[(0,b.jsx)(m.ShieldAlert,{size:20,className:"text-[var(--sc-coral)]"}),(0,b.jsx)("p",{className:"mt-3 text-sm font-semibold text-[var(--sc-text-primary)]",children:"Iron Dome"}),(0,b.jsx)("p",{className:"mt-1 text-xs text-[var(--sc-text-muted)]",children:"Kill switch and behaviour gates."})]})})]}),(0,b.jsxs)(n.GlassCard,{className:"p-6",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("h3",{className:"text-lg font-semibold text-[var(--sc-text-primary)]",children:"Licence"}),(0,b.jsx)("p",{className:"mt-1 text-sm text-[var(--sc-text-muted)]",children:"Current tier and feature access."})]}),(0,b.jsx)(p.Badge,{variant:D?.tier==="pro"?"cyan":D?.tier==="team"?"coral":"muted",children:z.TIER_LABELS[D?.tier??"free"]})]}),D?.tier==="free"&&(0,b.jsxs)("div",{className:"mt-4 flex items-center gap-4 rounded-xl bg-gradient-to-r from-[var(--sc-coral)]/5 to-[var(--sc-cyan)]/5 p-4",children:[(0,b.jsxs)("div",{className:"flex-1",children:[(0,b.jsx)("p",{className:"text-sm font-medium text-[var(--sc-text-primary)]",children:"Unlock deep scanning, custom policies, and audit exports"}),(0,b.jsx)("p",{className:"mt-1 text-xs text-[var(--sc-text-muted)]",children:"Pro starts at £29/mo with 10K cloud scans and 90-day retention."})]}),(0,b.jsx)("a",{href:"https://shieldcortex.ai/pricing",target:"_blank",rel:"noopener noreferrer",children:(0,b.jsx)(q.Button,{variant:"coral",size:"sm",glow:!0,children:"Upgrade"})})]})]})]})})}function B(){return(0,b.jsx)(A,{})}a.s(["default",()=>B],33466)}];
1
+ module.exports=[33466,a=>{"use strict";var b=a.i(16306),c=a.i(98419),d=a.i(11160),e=a.i(47520),f=a.i(26943),g=a.i(74150),h=a.i(77115),i=a.i(76625),j=a.i(6750),k=a.i(66397),l=a.i(98472),m=a.i(79155),n=a.i(54100),o=a.i(48195),p=a.i(60210),q=a.i(23808),r=a.i(79151),s=a.i(14126),t=a.i(40543);function u({ready:a,memoryCount:c,scanCount:d,blockedCount:e}){return!a||c>0||d>0||e>0?null:(0,b.jsxs)(n.GlassCard,{strong:!0,className:"p-6",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(s.Sparkles,{size:16,className:"text-[var(--sc-cyan)]"}),(0,b.jsx)("h3",{className:"text-lg font-semibold text-[var(--sc-text-primary)]",children:"Welcome to ShieldCortex"})]}),(0,b.jsxs)("p",{className:"mt-2 max-w-2xl text-sm text-[var(--sc-text-secondary)]",children:["Nothing here yet. The dashboard is for ",(0,b.jsx)("strong",{className:"text-[var(--sc-text-primary)]",children:"visual review and bulk decisions"}),"; the ",(0,b.jsx)("code",{className:"font-mono",children:"shieldcortex"})," CLI and the agent hooks are for ",(0,b.jsx)("strong",{className:"text-[var(--sc-text-primary)]",children:"automation"}),". It fills in as your agents capture memories and the defence pipeline runs."]}),(0,b.jsxs)("div",{className:"mt-5 grid gap-3 sm:grid-cols-3",children:[(0,b.jsxs)("div",{className:"rounded-xl border border-[var(--sc-border)] bg-[var(--sc-bg-elevated)] p-4",children:[(0,b.jsx)(i.Database,{size:16,className:"text-[var(--sc-cyan)]"}),(0,b.jsx)("p",{className:"mt-2 text-sm font-medium text-[var(--sc-text-primary)]",children:"Capture memories"}),(0,b.jsxs)("p",{className:"mt-1 text-xs text-[var(--sc-text-muted)]",children:["Captured automatically as you work (Claude Code / OpenClaw hooks), or via the"," ",(0,b.jsx)("code",{className:"font-mono",children:"remember"})," MCP tool."]})]}),(0,b.jsxs)("div",{className:"rounded-xl border border-[var(--sc-border)] bg-[var(--sc-bg-elevated)] p-4",children:[(0,b.jsx)(t.Terminal,{size:16,className:"text-[var(--sc-cyan)]"}),(0,b.jsx)("p",{className:"mt-2 text-sm font-medium text-[var(--sc-text-primary)]",children:"Generate audit data"}),(0,b.jsxs)("p",{className:"mt-1 text-xs text-[var(--sc-text-muted)]",children:["Run ",(0,b.jsx)("code",{className:"font-mono",children:"shieldcortex scan <file>"})," to push content through the defence pipeline and populate the audit log."]})]}),(0,b.jsxs)("div",{className:"rounded-xl border border-[var(--sc-border)] bg-[var(--sc-bg-elevated)] p-4",children:[(0,b.jsx)(k.ScanSearch,{size:16,className:"text-[var(--sc-cyan)]"}),(0,b.jsx)("p",{className:"mt-2 text-sm font-medium text-[var(--sc-text-primary)]",children:"Scan supply chain"}),(0,b.jsxs)("p",{className:"mt-1 text-xs text-[var(--sc-text-muted)]",children:["Run an X-Ray scan from the X-Ray page, or"," ",(0,b.jsx)("code",{className:"font-mono",children:"shieldcortex xray <path>"})," from the CLI."]})]})]})]})}var v=a.i(67789),w=a.i(38883),x=a.i(35031),y=a.i(26804),z=a.i(79030);function A(){let{data:a}=(0,v.useStats)(),{data:s}=(0,w.useAuditStats)("24h"),{data:t}=(0,w.useQuarantine)("pending",10),{data:A}=(0,w.useQuarantine)("pending",1,void 0,"memory_file"),{data:B}=(0,v.useQuality)(),{data:C}=(0,v.useContradictions)(),{data:D}=(0,x.useLicenseStatus)(),{data:E}=(0,y.useXRayStatus)(),F=a?.total??0,G=a?.decayDistribution?.healthy??0,H=a?.decayDistribution?.fading??0,I=a?.decayDistribution?.critical??0,J=a?.decayDistribution?Math.round(G/Math.max(1,F)*100):0,K=C?.count??C?.contradictions?.length??0,L=t?.total??0,M=A?.total??0,N=Math.max(0,L-M),O=s?.blockedCount??0,P=B?.duplicates?.count??0,Q=B?.stale?.count??0,R=B?.neverAccessed?.count??0,S=E?.summary?.scans??0,T=(0,c.useMemo)(()=>{let a=[];return M>0&&a.push({title:`${M} memory file finding${1===M?"":"s"} need review`,detail:"These are scanned agent memory files, not stored ShieldCortex memories. Review or dismiss them without editing files.",severity:M>10?"critical":"medium",href:"/protection?tab=quarantine",cta:"Review files"}),N>0&&a.push({title:`${N} memory write${1===N?"":"s"} in quarantine`,detail:"Review blocked writes before they become silent operator debt.",severity:N>10?"critical":"medium",href:"/protection?tab=quarantine",cta:"Review writes"}),K>0&&a.push({title:`${K} contradiction${1===K?"":"s"} detected`,detail:"Conflicting facts reduce recall trust.",severity:K>5?"high":"medium",href:"/memory?tab=review",cta:"Resolve"}),O>0&&a.push({title:`${O} blocked operation${1===O?"":"s"} (24h)`,detail:"Defence pipeline blocked suspicious writes.",severity:"high",href:"/protection?tab=audit",cta:"View audit"}),Q+P>0&&a.push({title:"Memory cleanup available",detail:`${Q} stale, ${P} duplicate, ${R} unused memories.`,severity:"low",href:"/memory?tab=review",cta:"Clean up"}),a.slice(0,4)},[M,N,K,O,Q,P,R]),U=M>0&&N>0?`${M} file finding${1===M?"":"s"}, ${N} write${1===N?"":"s"} pending.`:M>0?`${M} memory-file finding${1===M?"":"s"} pending.`:`${L} item${1===L?"":"s"} pending review.`;return(0,b.jsx)("div",{className:"h-full overflow-y-auto",children:(0,b.jsxs)("div",{className:"mx-auto max-w-7xl space-y-6 p-6",children:[(0,b.jsx)(r.PageHeader,{eyebrow:"ShieldCortex",title:"Command Centre",subtitle:"Stored-memory health, memory-file findings, threat pressure, and operational status at a glance."}),(0,b.jsx)(u,{ready:void 0!==a,memoryCount:F,scanCount:S,blockedCount:O}),(0,b.jsx)(n.GlassCard,{title:"SYSTEM STATUS",bodyPadding:!1,children:(0,b.jsxs)("div",{className:"grid grid-cols-2 gap-4 p-4 lg:grid-cols-5",children:[(0,b.jsx)(o.StatCard,{label:"Stored Memories",value:F.toLocaleString(),icon:i.Database,accent:"cyan",trend:J>0?{value:J,label:"healthy"}:void 0}),(0,b.jsx)(o.StatCard,{label:"Memory Files Flagged",value:M.toLocaleString(),icon:j.FileText,accent:M>0?"amber":"muted"}),(0,b.jsx)(o.StatCard,{label:"Threats Blocked",value:O.toLocaleString(),icon:m.ShieldAlert,accent:O>0?"coral":"muted"}),(0,b.jsx)(o.StatCard,{label:"X-Ray Scans",value:S.toLocaleString(),icon:k.ScanSearch,accent:"cyan"}),(0,b.jsx)(o.StatCard,{label:"Health Score",value:`${J}%`,icon:l.Shield,accent:J>=80?"cyan":J>=50?"amber":"coral"})]})}),(0,b.jsxs)("div",{className:"grid grid-cols-1 gap-6 lg:grid-cols-[1fr_1fr]",children:[(0,b.jsxs)(n.GlassCard,{className:"p-6",children:[(0,b.jsx)("h3",{className:"text-lg font-semibold text-[var(--sc-text-primary)]",children:"Stored Memory Health"}),(0,b.jsx)("p",{className:"mt-1 text-sm text-[var(--sc-text-muted)]",children:"Decay distribution across ShieldCortex stored memories."}),(0,b.jsx)("div",{className:"mt-6 flex items-center justify-center",children:(0,b.jsxs)("div",{className:"relative h-40 w-40",children:[(0,b.jsxs)("svg",{viewBox:"0 0 100 100",className:"h-full w-full -rotate-90",children:[(0,b.jsx)("circle",{cx:"50",cy:"50",r:"42",fill:"none",stroke:"var(--sc-bg-elevated)",strokeWidth:"8"}),(0,b.jsx)("circle",{cx:"50",cy:"50",r:"42",fill:"none",stroke:"var(--sc-cyan)",strokeWidth:"8",strokeDasharray:`${2.64*J} 264`,strokeLinecap:"round",className:"transition-all duration-1000"})]}),(0,b.jsxs)("div",{className:"absolute inset-0 flex flex-col items-center justify-center",children:[(0,b.jsxs)("span",{className:"text-3xl font-bold text-[var(--sc-text-primary)]",children:[J,"%"]}),(0,b.jsx)("span",{className:"text-xs text-[var(--sc-text-muted)]",children:"healthy"})]})]})}),(0,b.jsxs)("div",{className:"mt-6 grid grid-cols-3 gap-3 text-center",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("div",{className:"text-lg font-semibold text-[var(--sc-cyan)]",children:G}),(0,b.jsx)("div",{className:"text-xs text-[var(--sc-text-muted)]",children:"Healthy"})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("div",{className:"text-lg font-semibold text-[var(--sc-amber)]",children:H}),(0,b.jsx)("div",{className:"text-xs text-[var(--sc-text-muted)]",children:"Fading"})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("div",{className:"text-lg font-semibold text-[var(--sc-coral)]",children:I}),(0,b.jsx)("div",{className:"text-xs text-[var(--sc-text-muted)]",children:"Critical"})]})]})]}),(0,b.jsxs)(n.GlassCard,{className:"p-6",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsx)("h3",{className:"text-lg font-semibold text-[var(--sc-text-primary)]",children:"Urgent Actions"}),T.length>0&&(0,b.jsxs)(p.Badge,{variant:"coral",dot:!0,pulse:!0,children:[T.length," active"]})]}),(0,b.jsx)("p",{className:"mt-1 text-sm text-[var(--sc-text-muted)]",children:"Quickest wins for trust, safety, and recall quality."}),(0,b.jsx)("div",{className:"mt-4 space-y-3",children:0===T.length?(0,b.jsxs)("div",{className:"flex items-center gap-3 rounded-xl bg-[var(--sc-bg-elevated)] p-4",children:[(0,b.jsx)(g.CheckCircle2,{size:18,className:"shrink-0 text-[var(--sc-cyan)]"}),(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"text-sm font-medium text-[var(--sc-text-primary)]",children:"All clear"}),(0,b.jsx)("p",{className:"text-xs text-[var(--sc-text-muted)]",children:"No urgent issues right now. Memory health looks stable."})]})]}):T.map(a=>(0,b.jsxs)(d.default,{href:a.href,className:"group flex items-start gap-3 rounded-xl bg-[var(--sc-bg-elevated)] p-4 transition-all hover:bg-[var(--sc-surface-interactive-hover)]",children:["critical"===a.severity||"high"===a.severity?(0,b.jsx)(e.AlertTriangle,{size:16,className:"mt-0.5 shrink-0 text-[var(--sc-coral)]"}):"medium"===a.severity?(0,b.jsx)(h.Clock3,{size:16,className:"mt-0.5 shrink-0 text-[var(--sc-amber)]"}):(0,b.jsx)(g.CheckCircle2,{size:16,className:"mt-0.5 shrink-0 text-[var(--sc-cyan)]"}),(0,b.jsxs)("div",{className:"flex-1",children:[(0,b.jsx)("p",{className:"text-sm font-medium text-[var(--sc-text-primary)]",children:a.title}),(0,b.jsx)("p",{className:"mt-0.5 text-xs text-[var(--sc-text-muted)]",children:a.detail})]}),(0,b.jsxs)("span",{className:"flex shrink-0 items-center gap-1 text-xs font-medium text-[var(--sc-cyan)] opacity-0 transition-opacity group-hover:opacity-100",children:[a.cta," ",(0,b.jsx)(f.ArrowRight,{size:12})]})]},a.title))})]})]}),(0,b.jsxs)("div",{className:"grid grid-cols-2 gap-4 lg:grid-cols-4",children:[(0,b.jsx)(d.default,{href:"/xray",children:(0,b.jsxs)(n.GlassCard,{hover:!0,className:"p-5",children:[(0,b.jsx)(k.ScanSearch,{size:20,className:"text-[var(--sc-cyan)]"}),(0,b.jsx)("p",{className:"mt-3 text-sm font-semibold text-[var(--sc-text-primary)]",children:"Run X-Ray Scan"}),(0,b.jsx)("p",{className:"mt-1 text-xs text-[var(--sc-text-muted)]",children:"Inspect packages and files for hidden risk."})]})}),(0,b.jsx)(d.default,{href:"/protection?tab=quarantine",children:(0,b.jsxs)(n.GlassCard,{hover:!0,className:"p-5",children:[(0,b.jsx)(e.AlertTriangle,{size:20,className:"text-[var(--sc-amber)]"}),(0,b.jsx)("p",{className:"mt-3 text-sm font-semibold text-[var(--sc-text-primary)]",children:"Review Quarantine"}),(0,b.jsx)("p",{className:"mt-1 text-xs text-[var(--sc-text-muted)]",children:U})]})}),(0,b.jsx)(d.default,{href:"/memory?tab=recall",children:(0,b.jsxs)(n.GlassCard,{hover:!0,className:"p-5",children:[(0,b.jsx)(i.Database,{size:20,className:"text-[var(--sc-cyan)]"}),(0,b.jsx)("p",{className:"mt-3 text-sm font-semibold text-[var(--sc-text-primary)]",children:"Debug Recall"}),(0,b.jsx)("p",{className:"mt-1 text-xs text-[var(--sc-text-muted)]",children:"Test queries and inspect ranking factors."})]})}),(0,b.jsx)(d.default,{href:"/protection?tab=dome",children:(0,b.jsxs)(n.GlassCard,{hover:!0,className:"p-5",children:[(0,b.jsx)(m.ShieldAlert,{size:20,className:"text-[var(--sc-coral)]"}),(0,b.jsx)("p",{className:"mt-3 text-sm font-semibold text-[var(--sc-text-primary)]",children:"Iron Dome"}),(0,b.jsx)("p",{className:"mt-1 text-xs text-[var(--sc-text-muted)]",children:"Kill switch and behaviour gates."})]})})]}),(0,b.jsxs)(n.GlassCard,{className:"p-6",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("h3",{className:"text-lg font-semibold text-[var(--sc-text-primary)]",children:"Licence"}),(0,b.jsx)("p",{className:"mt-1 text-sm text-[var(--sc-text-muted)]",children:"Current tier and feature access."})]}),(0,b.jsx)(p.Badge,{variant:D?.tier==="pro"?"cyan":D?.tier==="team"?"coral":"muted",children:z.TIER_LABELS[D?.tier??"free"]})]}),D?.tier==="free"&&(0,b.jsxs)("div",{className:"mt-4 flex items-center gap-4 rounded-xl bg-gradient-to-r from-[var(--sc-coral)]/5 to-[var(--sc-cyan)]/5 p-4",children:[(0,b.jsxs)("div",{className:"flex-1",children:[(0,b.jsx)("p",{className:"text-sm font-medium text-[var(--sc-text-primary)]",children:"Unlock deep scanning, custom policies, and audit exports"}),(0,b.jsx)("p",{className:"mt-1 text-xs text-[var(--sc-text-muted)]",children:"Pro starts at £29/mo with 10K cloud scans and 90-day retention."})]}),(0,b.jsx)("a",{href:"https://shieldcortex.ai/pricing",target:"_blank",rel:"noopener noreferrer",children:(0,b.jsx)(q.Button,{variant:"coral",size:"sm",glow:!0,children:"Upgrade"})})]})]})]})})}function B(){return(0,b.jsx)(A,{})}a.s(["default",()=>B],33466)}];
2
2
 
3
3
  //# sourceMappingURL=dashboard_src_app_%28dashboard%29_overview_page_tsx_8c105626._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[24035,a=>{a.v("/_next/static/media/icon.b3fec833.png")},26471,a=>{"use strict";let b={src:a.i(24035).default,width:64,height:64};a.s(["default",0,b])}];
2
+
3
+ //# sourceMappingURL=dashboard_src_app_98034450._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[1806,a=>{a.v("/_next/static/media/apple-icon.33ede0f2.png")},37354,a=>{"use strict";let b={src:a.i(1806).default,width:180,height:180};a.s(["default",0,b])}];
2
+
3
+ //# sourceMappingURL=dashboard_src_app_c056a62e._.js.map
@@ -1 +1 @@
1
- <!DOCTYPE html><!--4z2JAhKnao1A_q8Eo4wzd--><html lang="en" class="dark" data-theme="terminal"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/chunks/34d933785a17edf3.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/chunks/d25030e49454bb56.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/d878b929b21636c4.js"/><script src="/_next/static/chunks/f70f563804550a9c.js" async=""></script><script src="/_next/static/chunks/43d761df92da7cb6.js" async=""></script><script src="/_next/static/chunks/e281719dbabcca1d.js" async=""></script><script src="/_next/static/chunks/9e56d1f8f4d7adcb.js" async=""></script><script src="/_next/static/chunks/turbopack-768a6a8b9db952e0.js" async=""></script><script src="/_next/static/chunks/699fd12fecbe2007.js" async=""></script><script src="/_next/static/chunks/417032eeb2cd875f.js" async=""></script><script src="/_next/static/chunks/d334b69bff7779be.js" async=""></script><meta name="robots" content="noindex"/><meta name="next-size-adjust" content=""/><title>404: This page could not be found.</title><title>ShieldCortex</title><meta name="description" content="AI Memory Security Dashboard — Defence pipeline, audit logs, quarantine review"/><script>try{var t=localStorage.getItem('sc-theme');document.documentElement.setAttribute('data-theme',t==='glass'?'glass':'terminal');}catch(e){}</script><script src="/_next/static/chunks/a6dad97d9634a72d.js" noModule=""></script></head><body class="geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable antialiased"><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;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/d878b929b21636c4.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[81418,[\"/_next/static/chunks/699fd12fecbe2007.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"CicEffects\"]\n3:I[36111,[\"/_next/static/chunks/699fd12fecbe2007.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"Providers\"]\n4:I[57043,[\"/_next/static/chunks/699fd12fecbe2007.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"default\"]\n5:I[10445,[\"/_next/static/chunks/699fd12fecbe2007.js\",\"/_next/static/chunks/417032eeb2cd875f.js\",\"/_next/static/chunks/d334b69bff7779be.js\"],\"default\"]\n6:I[27657,[\"/_next/static/chunks/699fd12fecbe2007.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"default\"]\n7:I[56978,[\"/_next/static/chunks/699fd12fecbe2007.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"OutletBoundary\"]\n8:\"$Sreact.suspense\"\na:I[56978,[\"/_next/static/chunks/699fd12fecbe2007.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"ViewportBoundary\"]\nc:I[56978,[\"/_next/static/chunks/699fd12fecbe2007.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"MetadataBoundary\"]\ne:I[30687,[\"/_next/static/chunks/699fd12fecbe2007.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"default\"]\n:HL[\"/_next/static/chunks/34d933785a17edf3.css\",\"style\"]\n:HL[\"/_next/static/chunks/d25030e49454bb56.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"4z2JAhKnao1A-q8Eo4wzd\",\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/34d933785a17edf3.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/d25030e49454bb56.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/699fd12fecbe2007.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/417032eeb2cd875f.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"dark\",\"data-theme\":\"terminal\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"script\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"try{var t=localStorage.getItem('sc-theme');document.documentElement.setAttribute('data-theme',t==='glass'?'glass':'terminal');}catch(e){}\"}}]}],[\"$\",\"body\",null,{\"className\":\"geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable antialiased\",\"children\":[[\"$\",\"$L2\",null,{}],[\"$\",\"$L3\",null,{\"children\":[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$5\",\"errorStyles\":[],\"errorScripts\":[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/d334b69bff7779be.js\",\"async\":true}]],\"template\":[\"$\",\"$L6\",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\":[\"$\",\"$L6\",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:1:props:children:1: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:1:props:children:1: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:1:props:children:1: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:1:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L7\",null,{\"children\":[\"$\",\"$8\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@9\"}]}]]}],{},null,false,false]},null,false,false]},null,false,false],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$La\",null,{\"children\":\"$Lb\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Lc\",null,{\"children\":[\"$\",\"$8\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Ld\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$e\",\"$undefined\"],\"S\":true}\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\"}]]\n"])</script><script>self.__next_f.push([1,"9:null\nd:[[\"$\",\"title\",\"0\",{\"children\":\"ShieldCortex\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"AI Memory Security Dashboard — Defence pipeline, audit logs, quarantine review\"}]]\n"])</script></body></html>
1
+ <!DOCTYPE html><!--YOjg_EQ1jjxbhSKQ00cvQ--><html lang="en" class="dark" data-theme="terminal"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/chunks/34d933785a17edf3.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/chunks/bce2cf2eff0722f4.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/d878b929b21636c4.js"/><script src="/_next/static/chunks/f70f563804550a9c.js" async=""></script><script src="/_next/static/chunks/43d761df92da7cb6.js" async=""></script><script src="/_next/static/chunks/e281719dbabcca1d.js" async=""></script><script src="/_next/static/chunks/9e56d1f8f4d7adcb.js" async=""></script><script src="/_next/static/chunks/turbopack-768a6a8b9db952e0.js" async=""></script><script src="/_next/static/chunks/367944cb40d1e6d7.js" async=""></script><script src="/_next/static/chunks/102f894cc892994d.js" async=""></script><script src="/_next/static/chunks/417032eeb2cd875f.js" async=""></script><script src="/_next/static/chunks/d334b69bff7779be.js" async=""></script><meta name="robots" content="noindex"/><meta name="next-size-adjust" content=""/><title>404: This page could not be found.</title><title>ShieldCortex</title><meta name="description" content="AI Memory Security Dashboard — Defence pipeline, audit logs, quarantine review"/><link rel="icon" href="/icon.png?icon.b3fec833.png" sizes="64x64" type="image/png"/><link rel="apple-touch-icon" href="/apple-icon.png?apple-icon.33ede0f2.png" sizes="180x180" type="image/png"/><script>try{var t=localStorage.getItem('sc-theme');document.documentElement.setAttribute('data-theme',t==='glass'?'glass':'terminal');}catch(e){}</script><script src="/_next/static/chunks/a6dad97d9634a72d.js" noModule=""></script></head><body class="geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable antialiased"><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;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/d878b929b21636c4.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[81418,[\"/_next/static/chunks/367944cb40d1e6d7.js\"],\"CicEffects\"]\n3:I[36111,[\"/_next/static/chunks/367944cb40d1e6d7.js\"],\"Providers\"]\n4:I[57043,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"default\"]\n5:I[10445,[\"/_next/static/chunks/367944cb40d1e6d7.js\",\"/_next/static/chunks/d334b69bff7779be.js\"],\"default\"]\n6:I[27657,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"default\"]\n7:I[56978,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"OutletBoundary\"]\n8:\"$Sreact.suspense\"\na:I[56978,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"ViewportBoundary\"]\nc:I[56978,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"MetadataBoundary\"]\ne:I[30687,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"default\"]\n:HL[\"/_next/static/chunks/34d933785a17edf3.css\",\"style\"]\n:HL[\"/_next/static/chunks/bce2cf2eff0722f4.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"YOjg_EQ1jjxbhSKQ00cvQ\",\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/34d933785a17edf3.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/bce2cf2eff0722f4.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/367944cb40d1e6d7.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"dark\",\"data-theme\":\"terminal\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"script\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"try{var t=localStorage.getItem('sc-theme');document.documentElement.setAttribute('data-theme',t==='glass'?'glass':'terminal');}catch(e){}\"}}]}],[\"$\",\"body\",null,{\"className\":\"geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable antialiased\",\"children\":[[\"$\",\"$L2\",null,{}],[\"$\",\"$L3\",null,{\"children\":[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$5\",\"errorStyles\":[],\"errorScripts\":[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/d334b69bff7779be.js\",\"async\":true}]],\"template\":[\"$\",\"$L6\",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\":[\"$\",\"$L6\",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:1:props:children:1: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:1:props:children:1: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:1:props:children:1: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:1:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L7\",null,{\"children\":[\"$\",\"$8\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@9\"}]}]]}],{},null,false,false]},null,false,false]},null,false,false],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$La\",null,{\"children\":\"$Lb\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Lc\",null,{\"children\":[\"$\",\"$8\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Ld\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$e\",\"$undefined\"],\"S\":true}\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\"}]]\n"])</script><script>self.__next_f.push([1,"f:I[71393,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"IconMark\"]\n9:null\nd:[[\"$\",\"title\",\"0\",{\"children\":\"ShieldCortex\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"AI Memory Security Dashboard — Defence pipeline, audit logs, quarantine review\"}],[\"$\",\"link\",\"2\",{\"rel\":\"icon\",\"href\":\"/icon.png?icon.b3fec833.png\",\"sizes\":\"64x64\",\"type\":\"image/png\"}],[\"$\",\"link\",\"3\",{\"rel\":\"apple-touch-icon\",\"href\":\"/apple-icon.png?apple-icon.33ede0f2.png\",\"sizes\":\"180x180\",\"type\":\"image/png\"}],[\"$\",\"$Lf\",\"4\",{}]]\n"])</script></body></html>
@@ -1,2 +1,2 @@
1
- <!DOCTYPE html><!--4z2JAhKnao1A_q8Eo4wzd--><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/d878b929b21636c4.js"/><script src="/_next/static/chunks/f70f563804550a9c.js" async=""></script><script src="/_next/static/chunks/43d761df92da7cb6.js" async=""></script><script src="/_next/static/chunks/e281719dbabcca1d.js" async=""></script><script src="/_next/static/chunks/9e56d1f8f4d7adcb.js" async=""></script><script src="/_next/static/chunks/turbopack-768a6a8b9db952e0.js" async=""></script><script src="/_next/static/chunks/102f894cc892994d.js" async=""></script><script src="/_next/static/chunks/417032eeb2cd875f.js" async=""></script><meta name="next-size-adjust" content=""/><title>500: Internal Server Error.</title><script src="/_next/static/chunks/a6dad97d9634a72d.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;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}
2
- @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-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/d878b929b21636c4.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[57043,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"default\"]\n3:I[27657,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"default\"]\n4:I[56978,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n7:I[56978,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"ViewportBoundary\"]\n9:I[56978,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"MetadataBoundary\"]\nb:I[30687,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"default\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"4z2JAhKnao1A-q8Eo4wzd\",\"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: Internal Server Error.\"}]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"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,{\"style\":{\"lineHeight\":\"48px\"},\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}\\n@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\",\"paddingRight\":23,\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\"},\"children\":\"500\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"28px\"},\"children\":\"Internal Server Error.\"}]}]]}]}]}]]}],[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/102f894cc892994d.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/417032eeb2cd875f.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,false]},null,false,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L7\",null,{\"children\":\"$L8\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L9\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$La\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$b\",\"$undefined\"],\"S\":true}\n"])</script><script>self.__next_f.push([1,"8:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"6:null\na:[]\n"])</script></body></html>
1
+ <!DOCTYPE html><!--YOjg_EQ1jjxbhSKQ00cvQ--><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/d878b929b21636c4.js"/><script src="/_next/static/chunks/f70f563804550a9c.js" async=""></script><script src="/_next/static/chunks/43d761df92da7cb6.js" async=""></script><script src="/_next/static/chunks/e281719dbabcca1d.js" async=""></script><script src="/_next/static/chunks/9e56d1f8f4d7adcb.js" async=""></script><script src="/_next/static/chunks/turbopack-768a6a8b9db952e0.js" async=""></script><script src="/_next/static/chunks/102f894cc892994d.js" async=""></script><script src="/_next/static/chunks/417032eeb2cd875f.js" async=""></script><meta name="next-size-adjust" content=""/><title>500: Internal Server Error.</title><script src="/_next/static/chunks/a6dad97d9634a72d.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;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}
2
+ @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-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/d878b929b21636c4.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[57043,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"default\"]\n3:I[27657,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"default\"]\n4:I[56978,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n7:I[56978,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"ViewportBoundary\"]\n9:I[56978,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"MetadataBoundary\"]\nb:I[30687,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"default\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"YOjg_EQ1jjxbhSKQ00cvQ\",\"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: Internal Server Error.\"}]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"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,{\"style\":{\"lineHeight\":\"48px\"},\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}\\n@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\",\"paddingRight\":23,\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\"},\"children\":\"500\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"28px\"},\"children\":\"Internal Server Error.\"}]}]]}]}]}]]}],[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/102f894cc892994d.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/417032eeb2cd875f.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,false]},null,false,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L7\",null,{\"children\":\"$L8\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L9\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$La\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$b\",\"$undefined\"],\"S\":true}\n"])</script><script>self.__next_f.push([1,"8:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"6:null\na:[]\n"])</script></body></html>
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,24590,e=>{"use strict";var t=e.i(4);let a="terminal";function r(){return"u"<typeof document?a:"glass"===document.documentElement.getAttribute("data-theme")?"glass":"terminal"}function s(e){return window.addEventListener("sc-theme-change",e),window.addEventListener("storage",e),()=>{window.removeEventListener("sc-theme-change",e),window.removeEventListener("storage",e)}}function n(){return[(0,t.useSyncExternalStore)(s,r,()=>a),e=>{if("u">typeof document){try{window.localStorage.setItem("sc-theme",e)}catch{}document.documentElement.setAttribute("data-theme",e),window.dispatchEvent(new Event("sc-theme-change"))}}]}e.s(["useTheme",()=>n])},51195,e=>{"use strict";var t=e.i(27493),a=e.i(4),r=e.i(24590),s=e.i(56640),n=e.i(16871),i=e.i(24929);let l=(0,i.default)("menu",[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]]);var c=e.i(80039);let o=(0,i.default)("pin-off",[["path",{d:"M12 17v5",key:"bb1du9"}],["path",{d:"M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H7.89",key:"znwnzq"}],["path",{d:"m2 2 20 20",key:"1ooewy"}],["path",{d:"M9 9v1.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h11",key:"c9qhm2"}]]);var d=e.i(17278),m=e.i(76490);function u({size:e=24,className:a=""}){return(0,t.jsx)("img",{src:"/shieldcortex-logo.png",alt:"ShieldCortex",width:e,height:e,className:a,style:{width:e,height:e}})}var x=e.i(7571);let p=(0,i.default)("house",[["path",{d:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8",key:"5wwlr5"}],["path",{d:"M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"r6nss1"}]]),h=(0,i.default)("circle-play",[["path",{d:"M9 9.003a1 1 0 0 1 1.517-.859l4.997 2.997a1 1 0 0 1 0 1.718l-4.997 2.997A1 1 0 0 1 9 14.996z",key:"kmsa83"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);var v=e.i(76344),f=e.i(54130),g=e.i(27528);let y=[{href:"/overview",label:"Overview",icon:p},{href:"/memory",label:"Memory",icon:x.Database},{href:"/memory/replay",label:"Replay",icon:h},{href:"/protection",label:"Protection",icon:g.Shield},{href:"/xray",label:"X-Ray",icon:v.ScanSearch},{href:"/settings",label:"Settings",icon:f.Settings}];var b=e.i(42098),j=e.i(88069),w=e.i(35372);function k(){let e=(0,n.usePathname)(),{sidebarPinned:r,toggleSidebarPinned:i}=(0,b.useDashboardStore)(),[x,p]=(0,a.useState)(!1),[h,v]=(0,a.useState)(null),f=h===e,{isConnected:g}=(0,w.useWebSocketStatus)(),{data:k}=(0,j.useVersion)(),N=r||x||f;return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("button",{onClick:()=>v(e),className:"fixed left-3 top-3 z-50 flex h-10 w-10 items-center justify-center rounded-xl bg-[var(--sc-bg-surface)] border border-[var(--sc-border)] text-[var(--sc-text-secondary)] md:hidden","aria-label":"Open navigation",children:(0,t.jsx)(l,{size:18})}),f&&(0,t.jsx)("div",{className:"fixed inset-0 z-40 bg-black/50 backdrop-blur-sm md:hidden",onClick:()=>v(null)}),(0,t.jsxs)("aside",{className:(0,m.cn)("z-50 flex shrink-0 flex-col border-r border-[var(--sc-border)] bg-[var(--sc-bg-deep)] transition-all duration-300","fixed inset-y-0 left-0 md:relative",f?"translate-x-0":"-translate-x-full md:translate-x-0",N?"w-60":"w-16"),onMouseEnter:()=>p(!0),onMouseLeave:()=>p(!1),children:[(0,t.jsxs)("div",{className:"flex h-16 items-center gap-3 border-b border-[var(--sc-border)] px-4",children:[(0,t.jsx)(u,{size:32,className:"shrink-0"}),(0,t.jsxs)("div",{className:(0,m.cn)("overflow-hidden whitespace-nowrap transition-all duration-300",N?"w-auto opacity-100":"w-0 opacity-0"),children:[(0,t.jsx)("div",{className:"text-[11px] font-semibold uppercase tracking-[0.2em] text-[var(--sc-coral)]",children:"ShieldCortex"}),(0,t.jsx)("div",{className:"text-xs text-[var(--sc-text-muted)]",children:"Dashboard"})]}),f&&(0,t.jsx)("button",{onClick:()=>v(null),className:"ml-auto text-[var(--sc-text-muted)] hover:text-[var(--sc-text-secondary)] md:hidden","aria-label":"Close navigation",children:(0,t.jsx)(d.X,{size:18})})]}),(0,t.jsx)("nav",{className:"flex-1 space-y-1 px-2 py-4",role:"navigation","aria-label":"Main navigation",children:y.map(a=>{var r;let n=a.icon,i="/overview"===(r=a.href)?"/overview"===e||"/"===e:e===r||e.startsWith(`${r}/`);return(0,t.jsxs)(s.default,{href:a.href,"aria-current":i?"page":void 0,className:(0,m.cn)("relative flex items-center gap-3 rounded-xl px-3 py-2.5 transition-all duration-200 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--sc-cyan)]",i?"bg-[var(--sc-surface-interactive)] text-[var(--sc-text-primary)]":"text-[var(--sc-text-muted)] hover:bg-[var(--sc-surface-interactive)] hover:text-[var(--sc-text-secondary)]"),children:[i&&(0,t.jsx)("div",{className:"absolute left-0 top-1/2 h-5 w-0.5 -translate-y-1/2 rounded-r bg-[var(--sc-coral)]"}),(0,t.jsx)(n,{size:18,className:(0,m.cn)("shrink-0",i&&"text-[var(--sc-coral)]")}),(0,t.jsx)("span",{className:(0,m.cn)("overflow-hidden whitespace-nowrap text-sm font-medium transition-all duration-300",N?"w-auto opacity-100":"w-0 opacity-0"),children:a.label})]},a.href)})}),(0,t.jsxs)("div",{className:"space-y-2 border-t border-[var(--sc-border)] px-2 py-3",children:[N&&(0,t.jsxs)("button",{onClick:i,className:"hidden w-full items-center gap-3 rounded-xl px-3 py-2 text-[var(--sc-text-muted)] transition-colors hover:bg-[var(--sc-surface-interactive)] hover:text-[var(--sc-text-secondary)] md:flex","aria-label":r?"Unpin sidebar":"Pin sidebar",children:[r?(0,t.jsx)(o,{size:16}):(0,t.jsx)(c.Pin,{size:16}),(0,t.jsx)("span",{className:"text-xs",children:r?"Unpin":"Pin sidebar"})]}),(0,t.jsxs)("div",{className:"flex items-center gap-3 px-3 py-1",children:[(0,t.jsx)("span",{className:(0,m.cn)("h-2 w-2 shrink-0 rounded-full",g?"bg-[var(--sc-cyan)] pulse-cyan":"bg-[var(--sc-coral)] pulse-coral"),"aria-label":g?"Real-time connected":"Real-time disconnected"}),(0,t.jsx)("span",{className:(0,m.cn)("overflow-hidden whitespace-nowrap text-[11px] text-[var(--sc-text-muted)] transition-all duration-300",N?"w-auto opacity-100":"w-0 opacity-0"),children:g?"Connected":"Disconnected"})]}),(0,t.jsxs)("div",{className:(0,m.cn)("overflow-hidden whitespace-nowrap px-3 font-mono text-[10px] text-[var(--sc-text-muted)] transition-all duration-300",N?"opacity-100":"h-0 opacity-0"),children:["v",k?.version??"..."]})]})]})]})}function N(){return(0,t.jsx)(k,{})}var S=e.i(45434);let $=(0,i.default)("arrow-down",[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]]),C=(0,i.default)("arrow-up",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]);var E=e.i(61737);let A=(0,i.default)("minus",[["path",{d:"M5 12h14",key:"1ays0h"}]]);var L=e.i(51069),T=e.i(44758),M=e.i(13808),R=e.i(22534),q=e.i(45688),D=e.i(88969);let z=R.default.env.NEXT_PUBLIC_API_URL||"http://localhost:3001",F=(0,i.default)("monitor",[["rect",{width:"20",height:"14",x:"2",y:"3",rx:"2",key:"48i651"}],["line",{x1:"8",x2:"16",y1:"21",y2:"21",key:"1svkeh"}],["line",{x1:"12",x2:"12",y1:"17",y2:"21",key:"vw1qmm"}]]);var P=e.i(71010);function I({className:e=""}){let[a,s]=(0,r.useTheme)(),n="terminal"===a?"glass":"terminal";return(0,t.jsxs)("button",{type:"button",onClick:()=>s(n),"aria-label":`Switch to ${n} theme`,title:`Theme: ${a} — click to switch to ${n}`,className:`inline-flex items-center gap-1.5 px-1.5 py-0.5 text-[11px] font-mono text-[var(--sc-text-muted)] hover:text-[var(--sc-text-primary)] transition-colors ${e}`,children:["terminal"===a?(0,t.jsx)(P.Terminal,{size:12}):(0,t.jsx)(F,{size:12}),(0,t.jsx)("span",{children:"terminal"===a?"TERM":"GLASS"})]})}let _=[{id:"24h",label:"24h"},{id:"7d",label:"7d"},{id:"30d",label:"30d"}];function O({value:e}){if(void 0===e)return null;if(0===e)return(0,t.jsxs)("span",{className:"inline-flex items-center gap-0.5 text-[10px] text-[var(--sc-text-muted)]",children:[(0,t.jsx)(A,{size:9})," 0"]});let a=e>0;return(0,t.jsxs)("span",{className:`inline-flex items-center gap-0.5 text-[10px] ${a?"text-[var(--sc-cyan)]":"text-[var(--sc-text-muted)]"}`,children:[(0,t.jsx)(a?C:$,{size:9}),a?"+":"",e]})}function U({icon:e,label:a,value:r,delta:s,tone:n}){let i="coral"===n?"text-[var(--sc-coral)]":"cyan"===n?"text-[var(--sc-cyan)]":"text-[var(--sc-text-primary)]";return(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:i,children:e}),(0,t.jsx)("span",{className:"text-[10px] uppercase tracking-[0.12em] text-[var(--sc-text-muted)]",children:a}),(0,t.jsx)("span",{className:`font-mono text-sm font-semibold ${i}`,children:r.toLocaleString()}),(0,t.jsx)(O,{value:s})]})}function B({moment:e}){let a="block"===e.kind||"quarantine"===e.kind?L.ShieldAlert:"capture"===e.kind?M.Sparkles:E.Brain,r="block"===e.kind?"text-[var(--sc-coral)]":"quarantine"===e.kind?"text-[var(--sc-amber)]":"capture"===e.kind?"text-[var(--sc-cyan)]":"text-[var(--sc-text-secondary)]";return(0,t.jsxs)("li",{className:"flex items-start gap-2 rounded border border-[var(--sc-border)] bg-[var(--sc-bg-deep)]/40 p-2",children:[(0,t.jsx)(a,{size:14,className:`mt-0.5 ${r}`}),(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsx)("div",{className:"text-xs font-medium text-[var(--sc-text-primary)] truncate",children:e.title}),(0,t.jsx)("div",{className:"mt-0.5 text-[10px] text-[var(--sc-text-muted)] truncate",children:e.detail})]}),(0,t.jsx)("span",{className:"shrink-0 text-[10px] text-[var(--sc-text-muted)]",children:new Date(e.timestamp).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]})}function K(){let[e,r]=(0,a.useState)("24h"),[s,n]=(0,a.useState)(!1),{projectFilter:i}=(0,b.useDashboardStore)(),{data:l,isLoading:c}=function(e="24h",t){return(0,q.useQuery)({queryKey:["digest",e,t??null],queryFn:async()=>{let a=new URLSearchParams({window:e});t&&a.set("project",t);let r=await (0,D.gatedFetch)(`${z}/api/digest?${a.toString()}`);if(!r.ok)throw Error(await (0,D.readApiError)(r,"Failed to load digest"));return r.json()},refetchInterval:6e4,staleTime:3e4})}(e,i);if(c||!l)return(0,t.jsxs)("div",{className:"flex items-center gap-3 border-b border-[var(--sc-border)] bg-[var(--sc-bg-surface)]/30 px-4 py-2 text-[11px] text-[var(--sc-text-muted)]",children:[(0,t.jsx)(S.Activity,{size:12,className:"animate-pulse"})," Loading activity…"]});let o=l.current,d=l.delta,m=0===o.scanned&&0===o.memoriesCaptured&&0===o.memoriesRecalled;return(0,t.jsxs)("div",{className:"border-b border-[var(--term-border)] bg-[var(--term-surface)] font-mono",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-x-5 gap-y-2 px-4 py-2 cursor-pointer hover:bg-[var(--term-surface-2)] transition-colors",onClick:()=>n(e=>!e),role:"button",tabIndex:0,onKeyDown:e=>{("Enter"===e.key||" "===e.key)&&n(e=>!e)},"aria-expanded":s,"aria-label":`${l.windowLabel} ShieldCortex activity. Click to ${s?"collapse":"expand"} top moments.`,children:[(0,t.jsx)("span",{className:"text-[10px] uppercase tracking-[0.14em] text-[var(--sc-text-muted)]",children:l.windowLabel}),m?(0,t.jsx)("span",{className:"text-xs text-[var(--sc-text-muted)]",children:"No activity yet — ShieldCortex captures and protects in the background."}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(U,{icon:(0,t.jsx)(T.ShieldCheck,{size:13}),label:"Scanned",value:o.scanned,delta:d.scanned}),(0,t.jsx)(U,{icon:(0,t.jsx)(L.ShieldAlert,{size:13}),label:"Blocked",value:o.blocked+o.quarantined,delta:(d.blocked??0)+(d.quarantined??0),tone:"coral"}),(0,t.jsx)(U,{icon:(0,t.jsx)(M.Sparkles,{size:13}),label:"Captured",value:o.memoriesCaptured,delta:d.memoriesCaptured,tone:"cyan"}),(0,t.jsx)(U,{icon:(0,t.jsx)(E.Brain,{size:13}),label:"Recalled",value:o.memoriesRecalled,delta:d.memoriesRecalled})]}),(0,t.jsxs)("div",{className:"ml-auto flex items-center gap-3",children:[(0,t.jsx)("div",{onClick:e=>e.stopPropagation(),children:(0,t.jsx)(I,{})}),(0,t.jsx)("div",{className:"flex items-center gap-1",onClick:e=>e.stopPropagation(),children:_.map(a=>(0,t.jsxs)("button",{type:"button",onClick:e=>{e.stopPropagation(),r(a.id)},className:`px-1.5 py-0.5 text-[11px] font-mono transition-colors theme-glass:rounded theme-glass:uppercase theme-glass:tracking-[0.12em] ${a.id===e?"text-[var(--term-electric-fg)] theme-glass:bg-[var(--sc-cyan)]/20 theme-glass:text-[var(--sc-cyan)]":"text-[var(--term-text-muted)] hover:text-[var(--term-text)] theme-glass:hover:text-[var(--sc-text-primary)]"}`,children:[(0,t.jsxs)("span",{className:"theme-glass:hidden",children:["[",a.label,"]"]}),(0,t.jsx)("span",{className:"hidden theme-glass:inline",children:a.label})]},a.id))})]})]}),s&&!m&&(0,t.jsx)("div",{className:"border-t border-[var(--sc-border)] bg-[var(--sc-bg-deep)]/50 px-4 py-3",children:(0,t.jsxs)("div",{className:"grid gap-3 md:grid-cols-2",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("div",{className:"mb-2 text-[10px] uppercase tracking-[0.14em] text-[var(--sc-text-muted)]",children:"Top moments"}),0===l.topMoments.length?(0,t.jsx)("div",{className:"text-xs text-[var(--sc-text-muted)]",children:"Nothing notable to surface in this window."}):(0,t.jsx)("ul",{className:"space-y-1.5",children:l.topMoments.map((e,a)=>(0,t.jsx)(B,{moment:e},`${e.kind}-${a}-${e.timestamp}`))})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("div",{className:"mb-2 text-[10px] uppercase tracking-[0.14em] text-[var(--sc-text-muted)]",children:"Top threat patterns"}),0===l.topThreatPatterns.length?(0,t.jsx)("div",{className:"text-xs text-[var(--sc-text-muted)]",children:"No threat patterns triggered."}):(0,t.jsx)("ul",{className:"space-y-1",children:l.topThreatPatterns.map(e=>(0,t.jsxs)("li",{className:"flex items-center justify-between rounded border border-[var(--sc-border)] bg-[var(--sc-bg-surface)]/50 px-2 py-1 text-xs",children:[(0,t.jsx)("span",{className:"font-mono text-[var(--sc-text-primary)] truncate",children:e.pattern}),(0,t.jsxs)("span",{className:"font-mono text-[var(--sc-text-muted)]",children:[e.count,"×"]})]},e.pattern))})]})]})})]})}let W=(0,i.default)("funnel",[["path",{d:"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z",key:"sc7q7i"}]]);function X(){let{data:e}=(0,j.useProjects)(),{projectFilter:a,setProjectFilter:r}=(0,b.useDashboardStore)(),s=Array.isArray(e)?e:Array.isArray(e?.projects)?e.projects:[],n=s.filter(e=>"string"==typeof e.project&&e.project.length>0),i=s.find(e=>null===e.project)?.memory_count??n.reduce((e,t)=>e+(t.memory_count??0),0),l=n.slice().sort((e,t)=>(t.memory_count??0)-(e.memory_count??0)||e.project.localeCompare(t.project));return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"theme-glass:hidden flex items-center gap-3 border-b border-[var(--term-border)] bg-[var(--term-surface)] px-4 py-1.5 font-mono text-xs",children:[(0,t.jsx)("span",{className:"text-[var(--term-text-muted)]",children:"project"}),(0,t.jsx)("span",{className:"text-[var(--term-text-muted)]","aria-hidden":!0,children:"="}),(0,t.jsxs)("select",{id:"project-filter",value:a??"",onChange:e=>r(""===e.target.value?null:e.target.value),className:"rounded-sm border border-[var(--term-border)] bg-[var(--term-surface-2)] px-2 py-0.5 text-xs text-[var(--term-text)] font-mono focus:outline-none focus:border-[var(--term-electric)]","aria-label":"Filter dashboard by project",children:[(0,t.jsxs)("option",{value:"",children:["*",i?` (${i})`:""]}),l.map(e=>(0,t.jsxs)("option",{value:e.project,children:[e.project,"number"==typeof e.memory_count?` (${e.memory_count})`:""]},e.project))]}),a&&(0,t.jsx)("button",{type:"button",onClick:()=>r(null),className:"text-[var(--term-text-muted)] hover:text-[var(--term-text)] underline",children:"clear"})]}),(0,t.jsxs)("div",{className:"hidden theme-glass:flex items-center gap-2 border-b border-[var(--sc-border)] bg-[var(--sc-bg-surface)]/40 px-4 py-2 backdrop-blur-sm",children:[(0,t.jsx)(W,{size:13,className:"text-[var(--sc-text-muted)]"}),(0,t.jsx)("label",{htmlFor:"project-filter-glass",className:"text-xs uppercase tracking-[0.14em] text-[var(--sc-text-muted)]",children:"Project"}),(0,t.jsxs)("select",{id:"project-filter-glass",value:a??"",onChange:e=>r(""===e.target.value?null:e.target.value),className:"rounded-md border border-[var(--sc-border)] bg-[var(--sc-bg-deep)] px-2 py-1 text-xs text-[var(--sc-text-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--sc-cyan)]","aria-label":"Filter dashboard by project (glass)",children:[(0,t.jsxs)("option",{value:"",children:["All projects",i?` (${i})`:""]}),l.map(e=>(0,t.jsxs)("option",{value:e.project,children:[e.project,"number"==typeof e.memory_count?` (${e.memory_count})`:""]},e.project))]}),a&&(0,t.jsx)("button",{type:"button",onClick:()=>r(null),className:"text-[11px] text-[var(--sc-text-muted)] hover:text-[var(--sc-text-primary)] underline",children:"Clear"})]})]})}var H=e.i(87353);function Q({sources:e=[],max:a=4}){let r=e.slice(0,a),s=e.length-r.length;return(0,t.jsxs)("div",{className:"flex shrink-0 items-center gap-2",children:[(0,t.jsx)("span",{className:"shrink-0 text-[var(--cic-text-faint)]",children:"ECOSYSTEM ▸"}),0===r.length?(0,t.jsx)("span",{className:"text-[var(--cic-text-faint)]",children:"no signals"}):r.map(e=>(0,t.jsxs)("span",{className:"flex shrink-0 items-center gap-1",title:`${e.source} \xb7 ${e.count} ops`,children:[(0,t.jsx)("span",{className:"cic-bloom text-[var(--cic-cyan)]","aria-hidden":!0,children:"◉"}),(0,t.jsx)("span",{className:"text-[var(--cic-text-dim)]",children:function(e){if(!e)return"unknown";let[t,a]=e.split(":");return"agent"===t&&a?a.replace(/-plugin.*/,""):"cli"===t?a?`cli:${a}`:"cli":"hook"===t?"hook":"api"===t?a?`api:${a}`:"api":"user"===t?"you":t||e}(e.source)})]},e.source)),s>0&&(0,t.jsxs)("span",{className:"shrink-0 text-[var(--cic-text-faint)]",children:["+",s]})]})}let V=["input","pattern","semantic","structural","behaviour","credential"];function G({blocked:e=0}){let a=e>0,r=a?"var(--cic-coral)":"var(--cic-cyan)";return(0,t.jsxs)("div",{className:"flex shrink-0 items-center gap-2",title:`Shield: 6 layers armed \xb7 ${e} blocked`,children:[(0,t.jsx)("span",{className:"text-[var(--cic-text-faint)]",children:"SHIELD"}),(0,t.jsx)("span",{className:"flex gap-0.5",children:V.map(e=>(0,t.jsx)("span",{className:a?"cic-bloom":"",style:{color:r},"aria-hidden":!0,children:"▣"},e))})]})}function J({label:e,value:a,colour:r}){return(0,t.jsxs)("span",{className:"flex items-center gap-1",title:e,children:[(0,t.jsx)("span",{className:"text-[var(--cic-text-faint)]",children:e}),(0,t.jsx)("span",{className:"cic-bloom tabular-nums",style:{color:r},children:a.toLocaleString()})]})}function Y(){let e=(0,H.useAuditStats)("24h"),r=(0,j.useStats)(),{isConnected:s}=(0,w.useWebSocketStatus)(),[n,i]=(0,a.useState)("");(0,a.useEffect)(()=>{let e=()=>i(new Date().toTimeString().slice(0,8));e();let t=setInterval(e,1e3);return()=>clearInterval(t)},[]);let l=e.data,c=l?.topSources??[];return(0,t.jsxs)("header",{className:"flex items-center gap-5 overflow-x-auto border-b border-[var(--cic-border)] bg-[var(--cic-surface)]/80 px-4 py-2 font-mono text-xs whitespace-nowrap",children:[(0,t.jsxs)("span",{className:"flex shrink-0 items-center gap-2",children:[(0,t.jsx)(u,{size:18,className:"shrink-0"}),(0,t.jsx)("span",{className:"cic-bloom font-semibold tracking-[0.18em] text-[var(--cic-cyan)]",children:"SHIELDCORTEX·CIC"})]}),(0,t.jsx)(Q,{sources:c}),(0,t.jsx)(G,{blocked:l?.blockedCount??0}),(0,t.jsxs)("span",{className:"ml-auto flex shrink-0 items-center gap-4",children:[(0,t.jsx)(J,{label:"SCANNED",value:l?.totalOperations??0,colour:"var(--cic-text-dim)"}),(0,t.jsx)(J,{label:"BLOCKED",value:l?.blockedCount??0,colour:"var(--cic-coral)"}),(0,t.jsx)(J,{label:"QUAR",value:l?.quarantinedCount??0,colour:"var(--cic-amber)"}),(0,t.jsx)(J,{label:"MEMORIES",value:r.data?.total??0,colour:"var(--cic-cyan)"}),(0,t.jsxs)("span",{className:"flex items-center gap-1.5",title:s?"live link up":"link down",children:[(0,t.jsx)("span",{className:s?"pulse-cyan":"pulse-coral",style:{color:s?"var(--cic-cyan)":"var(--cic-coral)"},"aria-hidden":!0,children:"◉"}),(0,t.jsx)("span",{className:"text-[var(--cic-text-faint)]",children:s?"LINK":"DOWN"})]}),(0,t.jsx)("span",{className:"tabular-nums text-[var(--cic-text-muted)]",suppressHydrationWarning:!0,children:n}),(0,t.jsx)(I,{})]})]})}var Z=e.i(53655);let ee={"/overview":"memory","/memory":"memory","/memory/replay":"integrity","/protection":"defence","/xray":"defence","/settings":"integrity"};function et(){let e=(0,n.usePathname)(),{isConnected:r}=(0,w.useWebSocketStatus)(),[i,l]=(0,a.useState)(!1);return(0,t.jsxs)("aside",{className:`flex shrink-0 flex-col border-r border-[var(--cic-border)] bg-[var(--cic-surface)]/60 font-mono transition-[width] duration-200 ${i?"w-14":"w-56"}`,children:[(0,t.jsxs)("button",{type:"button",onClick:()=>l(e=>!e),className:"flex h-11 items-center gap-2 px-4 text-left text-[var(--cic-text-muted)] hover:text-[var(--cic-text)]","aria-label":i?"expand navigation":"collapse navigation",children:[(0,t.jsx)("span",{className:"cic-bloom text-[var(--cic-cyan)]",children:"$"}),!i&&(0,t.jsx)("span",{className:"text-sm text-[var(--cic-text-dim)]",children:"shieldcortex"})]}),(0,t.jsx)("nav",{className:"flex flex-1 flex-col gap-0.5 px-2 py-2",children:y.map(a=>{let r=e===a.href||"/overview"!==a.href&&e.startsWith(a.href),n=Z.REGIONS[ee[a.href]??"memory"],l=a.icon;return(0,t.jsxs)(s.default,{href:a.href,title:a.label,className:`flex items-center gap-2 rounded px-2 py-1.5 text-sm transition-colors ${r?"bg-[var(--cic-surface-2)] text-[var(--cic-text)]":"text-[var(--cic-text-muted)] hover:text-[var(--cic-text)]"}`,style:r?{color:`var(${n.token})`}:void 0,children:[(0,t.jsx)("span",{className:"w-2 shrink-0",style:r?{color:`var(${n.token})`}:void 0,children:r?"▸":""}),l?(0,t.jsx)(l,{size:14,className:"shrink-0"}):null,!i&&(0,t.jsx)("span",{className:"truncate",children:a.label})]},a.href)})}),(0,t.jsxs)("div",{className:"flex items-center gap-2 border-t border-[var(--cic-border)] px-4 py-2 text-xs",children:[(0,t.jsx)("span",{className:r?"pulse-cyan":"pulse-coral",style:{color:r?"var(--cic-cyan)":"var(--cic-coral)"},"aria-hidden":!0,children:"◉"}),!i&&(0,t.jsx)("span",{className:"text-[var(--cic-text-faint)]",children:r?"link.up":"link.down"})]})]})}let ea=e=>({ok:!0,lines:e}),er=e=>({ok:!1,lines:e}),es={recall:{name:"recall",usage:'recall "<query>" [--project <p>]',summary:"search the memory cortex",run:async(e,{args:t,flags:a})=>{let r=t.join(" ").trim();if(!r)return er(['recall: give a query, e.g. recall "auth bug"']);let s="string"==typeof a.project?a.project:void 0,n=await e.recall(r,s);return 0===n.length?ea([`recall "${r}" → no memories`]):ea([`recall "${r}" → ${n.length}`,...n.slice(0,10).map(e=>` #${e.id} ${e.title}`)])}},scan:{name:"scan",usage:"scan <path> [--deep]",summary:"X-Ray a file, folder, or package",run:async(e,{args:t,flags:a})=>{let r=t[0];if(!r)return er(["scan: give a path or package"]);let s=await e.scan(r,!0===a.deep);return ea([`scan ${s.target} → ${s.riskLevel} \xb7 trust ${s.trustScore} \xb7 ${s.filesScanned} files \xb7 ${s.findingsCount} findings`])}},forget:{name:"forget",usage:"forget <id>",summary:"delete a memory by id",run:async(e,{args:t})=>{let a=Number(t[0]);return Number.isInteger(a)?(await e.forget(a),ea([`▸ forgot #${a}`])):er(["forget: give a numeric memory id"])}},consolidate:{name:"consolidate",usage:"consolidate",summary:"run a consolidation pass (STM→LTM, decay, cleanup)",run:async e=>{let t=await e.consolidate();return ea([`▸ consolidated ${t.consolidated} \xb7 decayed ${t.decayed} \xb7 deleted ${t.deleted}`])}},quarantine:{name:"quarantine",usage:"quarantine [approve <id> | reject <id>]",summary:"list pending quarantine, or approve/reject by id",run:async(e,{args:t})=>{let a=t[0]?.toLowerCase();if(!a||"list"===a){let t=await e.quarantineList();return 0===t.length?ea(["quarantine: nothing pending"]):ea([`quarantine pending → ${t.length}`,...t.slice(0,10).map(e=>` #${e.id} ${e.title}`)])}if("approve"===a||"reject"===a){let r=Number(t[1]);return Number.isInteger(r)?(await e.quarantineReview(r,a),ea([`▸ ${"approve"===a?"approved":"rejected"} #${r}`])):er([`quarantine ${a}: give a numeric id`])}return er(["quarantine: use list | approve <id> | reject <id>"])}},irondome:{name:"irondome",usage:"irondome <on|off|status>",summary:"arm/disarm the Iron Dome, or report its state",run:async(e,{args:t})=>{let a=t[0]?.toLowerCase();return"on"!==a&&"off"!==a&&"status"!==a?er(["irondome: use on | off | status"]):ea([await e.ironDome(a)])}},remember:{name:"remember",usage:'remember "<text>"',summary:"store a new memory",run:async(e,{args:t})=>{let a=t.join(" ").trim();if(!a)return er(['remember: give the text to store, e.g. remember "the fix was X"']);let r=await e.remember(a);return ea([`▸ remembered #${r.id}`])}},go:{name:"go",usage:"go <view>",summary:"navigate to a console view",run:(e,{args:t})=>{let a=t[0]?.toLowerCase();if(!a)return er(["go: which view? "+e.routes.map(e=>e.label).join(" · ")]);let r=e.routes.find(e=>e.label.toLowerCase().includes(a)||e.href.toLowerCase().includes(a));return r?(e.navigate(r.href),ea([`▸ ${r.label}`])):er([`go: unknown view '${a}'. options: ${e.routes.map(e=>e.label).join(" · ")}`])}},theme:{name:"theme",usage:"theme <terminal|glass>",summary:"switch the dashboard theme",run:(e,{args:t})=>{let a=t[0]?.toLowerCase();return"terminal"!==a&&"glass"!==a?er(["theme: choose 'terminal' or 'glass'"]):(e.setTheme(a),ea([`▸ theme → ${a}`]))}},help:{name:"help",usage:"help",summary:"list commands",run:()=>ea(["commands:",...Object.values(es).map(e=>` ${e.usage.padEnd(34)} ${e.summary}`)])}};async function en(e,t){let a=function(e){let t=e.trim();if(!t)return null;let a=function(e){let t,a=[],r=/"([^"]*)"|(\S+)/g;for(;null!==(t=r.exec(e));)a.push(void 0!==t[1]?t[1]:t[2]);return a}(t),r=a[0].toLowerCase(),s=[],n={};for(let e=1;e<a.length;e+=1){let t=a[e];if(t.startsWith("--")){let r=t.slice(2),s=a[e+1];void 0===s||s.startsWith("--")?n[r]=!0:(n[r]=s,e+=1)}else s.push(t)}return{name:r,args:s,flags:n}}(e);if(!a)return er([]);let r=es[a.name];if(!r)return er([`unknown command: ${a.name} — try 'help'`]);try{return await r.run(t,a)}catch(e){return er([`error: ${e instanceof Error?e.message:String(e)}`])}}var ei=e.i(31309);let el=R.default.env.NEXT_PUBLIC_API_URL||"http://localhost:3001",ec={in:"text-[var(--cic-text-dim)]",out:"text-[var(--cic-text)]",err:"text-[var(--cic-coral)]"};function eo(){let e=function(){let e=(0,n.useRouter)(),[,t]=(0,r.useTheme)(),s=(0,ei.useXRayScan)(),i=(0,j.useDeleteMemory)(),l=(0,j.useConsolidate)(),c=(0,H.useApproveQuarantine)(),o=(0,H.useRejectQuarantine)();return(0,a.useMemo)(()=>({navigate:t=>e.push(t),setTheme:t,recall:async(e,t)=>{let a=new URLSearchParams({mode:"search",query:e,limit:"10"});t&&a.set("project",t);let r=await (0,D.authFetch)(`${el}/api/memories?${a.toString()}`);if(!r.ok)throw Error(await (0,D.readApiError)(r,"recall failed"));return((await r.json()).memories??[]).map(e=>({id:e.id,title:e.title}))},scan:async(e,t)=>{let{result:a}=await s.mutateAsync({target:e,deep:t});return{target:a.target,riskLevel:a.riskLevel,trustScore:a.trustScore,filesScanned:a.filesScanned,findingsCount:a.findings.length}},forget:async e=>{await i.mutateAsync(e)},consolidate:async()=>{let e=await l.mutateAsync();return{consolidated:e.consolidated,decayed:e.decayed,deleted:e.deleted}},quarantineList:async()=>{let e=await (0,D.authFetch)(`${el}/api/v1/quarantine?status=pending&limit=20`);if(!e.ok)throw Error(await (0,D.readApiError)(e,"quarantine list failed"));return((await e.json()).items??[]).map(e=>({id:e.id,title:e.original_title??e.title??`item ${e.id}`}))},quarantineReview:async(e,t)=>{"approve"===t?await c.mutateAsync(e):await o.mutateAsync({id:e})},ironDome:async e=>{if("status"===e){let e=await (0,D.authFetch)(`${el}/api/iron-dome/status`);if(!e.ok)throw Error(await (0,D.readApiError)(e,"iron dome status failed"));let t=await e.json();return`iron dome: ${t.enabled?"ACTIVE":"inactive"}`}let t=await (0,D.authFetch)(`${el}/api/iron-dome/${"on"===e?"activate":"deactivate"}`,{method:"POST",headers:{"Content-Type":"application/json"},body:"{}"});if(!t.ok)throw Error(await (0,D.readApiError)(t,`iron dome ${e} failed`));return`▸ iron dome ${"on"===e?"ACTIVE":"disabled"}`},remember:async e=>{let t=await (0,D.authFetch)(`${el}/api/memories`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:e.slice(0,80),content:e})});if(!t.ok)throw Error(await (0,D.readApiError)(t,"remember failed"));return{id:(await t.json()).id??0}},routes:y.map(e=>({label:e.label,href:e.href}))}),[e,t,s,i,l,c,o])}(),[s,i]=(0,a.useState)(""),[l,c]=(0,a.useState)([]),[o,d]=(0,a.useState)([]),[m,u]=(0,a.useState)(-1),[x,p]=(0,a.useState)(!1),h=(0,a.useRef)(null),v=(0,a.useRef)(null);(0,a.useEffect)(()=>{let e=e=>{(e.metaKey||e.ctrlKey)&&"k"===e.key.toLowerCase()&&(e.preventDefault(),h.current?.focus())};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[]),(0,a.useEffect)(()=>{let e=v.current;e&&"function"==typeof e.scrollTo&&e.scrollTo({top:e.scrollHeight})},[l]);let f=(0,a.useCallback)(async()=>{let t=s.trim();if(!t||x)return;c(e=>[...e,{kind:"in",text:t}]),d(e=>[...e,t]),u(-1),i(""),p(!0);let a=await en(t,e);c(e=>[...e,...a.lines.map(e=>({kind:a.ok?"out":"err",text:e}))]),p(!1)},[s,x,e]);return(0,t.jsxs)("div",{className:"border-t border-[var(--cic-border)] bg-[var(--cic-surface)]/80 font-mono text-sm",children:[l.length>0&&(0,t.jsx)("div",{ref:v,className:"max-h-40 overflow-y-auto px-4 py-2 leading-relaxed",children:l.map((e,a)=>(0,t.jsx)("div",{className:`whitespace-pre-wrap ${ec[e.kind]}`,children:"in"===e.kind?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"text-[var(--cic-cyan)]",children:"sc ▸ "}),e.text]}):e.text},a))}),(0,t.jsxs)("div",{className:"flex items-center gap-2 px-4 py-2.5",children:[(0,t.jsx)("span",{className:"cic-bloom shrink-0 text-[var(--cic-cyan)]",children:"sc ▸"}),(0,t.jsx)("input",{ref:h,value:s,onChange:e=>i(e.target.value),onKeyDown:e=>{if("Enter"===e.key)e.preventDefault(),f();else if("ArrowUp"===e.key){if(e.preventDefault(),0===o.length)return;let t=-1===m?o.length-1:Math.max(0,m-1);u(t),i(o[t])}else if("ArrowDown"===e.key){if(e.preventDefault(),-1===m)return;let t=m+1;t>=o.length?(u(-1),i("")):(u(t),i(o[t]))}},spellCheck:!1,autoComplete:"off","aria-label":"command line",placeholder:"recall · scan · forget · consolidate · go · theme · help",className:"flex-1 bg-transparent text-[var(--cic-text)] outline-none placeholder:text-[var(--cic-text-faint)]"}),!s&&(0,t.jsx)("span",{className:"cli-cursor text-[var(--cic-cyan)]"}),(0,t.jsx)("kbd",{className:"shrink-0 rounded border border-[var(--cic-border)] px-1.5 text-xs text-[var(--cic-text-faint)]",children:"⌘K"})]})]})}let ed=R.default.env.NEXT_PUBLIC_API_URL||"http://localhost:3001",em=["▁","▂","▃","▄","▅","▆","▇","█"];function eu(e){if(0===e.length)return"";let t=Math.max(...e);return t<=0?em[0].repeat(e.length):e.map(e=>em[Math.round(Math.max(0,e)/t*(em.length-1))]).join("")}function ex(){let{memoryTrend:e,threatTrend:a}=function(){let{data:e}=(0,q.useQuery)({queryKey:["activity-trend"],queryFn:async()=>{let e=await (0,D.authFetch)(`${ed}/api/memories/activity`);if(!e.ok)throw Error("Failed to fetch activity");return e.json()},staleTime:3e5,refetchInterval:3e5}),t=new Date;t.setDate(t.getDate()-7);let a=t.toISOString(),{data:r}=(0,q.useQuery)({queryKey:["threat-trend"],queryFn:async()=>{let e=new URLSearchParams({firewallResult:"BLOCK",startTime:a,limit:"500"}),t=await (0,D.authFetch)(`${ed}/api/v1/audit?${e}`);if(!t.ok)throw Error("Failed to fetch audit logs");return t.json()},staleTime:3e5,refetchInterval:3e5}),s=[];for(let e=6;e>=0;e--){let t=new Date;t.setDate(t.getDate()-e),s.push(t.toISOString().slice(0,10))}let n=new Map;if(e?.activity)for(let t of e.activity)n.set(t.date,t.count);let i=s.map(e=>n.get(e)??0),l=new Map;if(r?.logs)for(let e of r.logs){let t=e.timestamp.slice(0,10);l.set(t,(l.get(t)??0)+1)}return{memoryTrend:i,threatTrend:s.map(e=>l.get(e)??0)}}();return(0,t.jsxs)("div",{className:"flex items-center gap-6 border-t border-[var(--cic-border)] bg-[var(--cic-surface)]/40 px-4 py-1 font-mono text-[11px] text-[var(--cic-text-faint)]",children:[(0,t.jsxs)("span",{className:"flex items-center gap-2",title:"memories created per day, last 7 days",children:[(0,t.jsx)("span",{children:"MEMORY·7d"}),(0,t.jsx)("span",{className:"cic-bloom tracking-tight text-[var(--cic-cyan)]",children:eu(e)||"·······"})]}),(0,t.jsxs)("span",{className:"flex items-center gap-2",title:"threats blocked per day, last 7 days",children:[(0,t.jsx)("span",{children:"THREAT·7d"}),(0,t.jsx)("span",{className:"cic-bloom tracking-tight text-[var(--cic-coral)]",children:eu(a)||"·······"})]})]})}function ep({children:e}){return(0,t.jsxs)("div",{className:"flex h-dvh w-full flex-col overflow-hidden bg-[var(--cic-void)] text-[var(--cic-text)]",children:[(0,t.jsx)(Y,{}),(0,t.jsxs)("div",{className:"flex min-h-0 flex-1",children:[(0,t.jsx)(et,{}),(0,t.jsx)("main",{className:"min-w-0 flex-1 overflow-auto",children:e})]}),(0,t.jsx)(ex,{}),(0,t.jsx)(eo,{})]})}function eh({children:e}){let[s,n]=(0,a.useState)(!1);(0,a.useEffect)(()=>n(!0),[]);let[i]=(0,r.useTheme)();return"terminal"===(s?i:"terminal")?(0,t.jsx)(ep,{children:e}):(0,t.jsxs)("div",{className:"flex h-dvh w-full overflow-hidden bg-[var(--sc-bg-deep)] text-[var(--sc-text-primary)]",children:[(0,t.jsx)(N,{}),(0,t.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col",children:[(0,t.jsx)(K,{}),(0,t.jsx)(X,{}),(0,t.jsx)("main",{className:"min-w-0 flex-1 overflow-auto",children:e})]})]})}e.s(["ShellSwitch",()=>eh],51195)},24478,e=>{"use strict";var t=e.i(27493),a=e.i(48615),r=e.i(24590);function s(){let[e]=(0,r.useTheme)();return(0,t.jsx)(a.Toaster,{position:"bottom-right",toastOptions:{style:"glass"===e?{background:"var(--sc-bg-surface)",border:"1px solid var(--sc-border)",color:"var(--sc-text-primary)",fontFamily:"system-ui, sans-serif"}:{background:"var(--term-surface)",border:"1px solid var(--term-border)",color:"var(--term-text)",fontFamily:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace",fontSize:"13px",borderRadius:"6px"}},theme:"dark"})}e.s(["ToastProvider",()=>s])},4167,e=>{"use strict";var t=e.i(4),a=e.i(48615),r=e.i(35372);let s=new Map;function n(){let e=(0,t.useCallback)(e=>{let t;if("defence_event"!==e.type)return;let r=e.data;if(!r||"ALLOW"===r.firewall_result)return;let n="BLOCK"===r.firewall_result,i=r.source_identifier||r.source_type||"unknown source",l=(t=function(e){if(Array.isArray(e))return e.filter(e=>"string"==typeof e);if("string"!=typeof e||!e.trim())return[];try{let t=JSON.parse(e);if(Array.isArray(t))return t.filter(e=>"string"==typeof e)}catch{return[e]}return[]}(r.threat_indicators)).length?t.slice(0,3).map(e=>e.replace(/_/g," ")).join(", "):"",c=r.reason?.trim()||(l?`Threats: ${l}`:"See audit log for details");if(function(e){let t=Date.now(),a=s.get(e);if(a&&t-a<2e3)return!0;if(s.set(e,t),s.size>50){let e=t-2e3;for(let[t,a]of s)a<e&&s.delete(t)}return!1}(`${r.firewall_result}:${i}:${(r.reason||"").slice(0,80)}`))return;let o=n?`\u{1F6E1} Blocked attack from ${i}`:`\u{26A0}\u{FE0F} Quarantined input from ${i}`,d={description:c,duration:n?8e3:5e3};n?a.toast.error(o,d):a.toast.warning(o,d)},[]);return(0,r.useWebSocketEvent)(e),null}e.s(["BlockToastBridge",()=>n])}]);