shieldcortex 4.42.3 → 4.42.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (249) hide show
  1. package/dashboard/.next/standalone/dashboard/.next/BUILD_ID +1 -1
  2. package/dashboard/.next/standalone/dashboard/.next/build-manifest.json +2 -2
  3. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/admin/page_client-reference-manifest.js +1 -1
  4. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/cloud/page_client-reference-manifest.js +1 -1
  5. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/capture/page_client-reference-manifest.js +1 -1
  6. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/graph/page_client-reference-manifest.js +1 -1
  7. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/page_client-reference-manifest.js +1 -1
  8. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/recall/page_client-reference-manifest.js +1 -1
  9. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/replay/page_client-reference-manifest.js +1 -1
  10. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/review/page_client-reference-manifest.js +1 -1
  11. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/memory/timeline/page_client-reference-manifest.js +1 -1
  12. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/overview/page_client-reference-manifest.js +1 -1
  13. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/protection/audit/page_client-reference-manifest.js +1 -1
  14. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/protection/intercepts/page_client-reference-manifest.js +1 -1
  15. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/protection/iron-dome/page_client-reference-manifest.js +1 -1
  16. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/protection/page_client-reference-manifest.js +1 -1
  17. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/protection/policies/page_client-reference-manifest.js +1 -1
  18. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/protection/quarantine/page_client-reference-manifest.js +1 -1
  19. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/settings/page_client-reference-manifest.js +1 -1
  20. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/supply-chain/page_client-reference-manifest.js +1 -1
  21. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/supply-chain/xray/page_client-reference-manifest.js +1 -1
  22. package/dashboard/.next/standalone/dashboard/.next/server/app/(dashboard)/xray/page_client-reference-manifest.js +1 -1
  23. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.html +2 -2
  24. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.rsc +1 -1
  25. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  26. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  27. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  28. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  29. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  30. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.html +1 -1
  31. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.rsc +1 -1
  32. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  33. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  34. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  35. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  36. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  37. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  38. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.html +1 -1
  39. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.rsc +6 -6
  40. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/!KGRhc2hib2FyZCk/admin/__PAGE__.segment.rsc +1 -1
  41. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/!KGRhc2hib2FyZCk/admin.segment.rsc +1 -1
  42. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  43. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/_full.segment.rsc +6 -6
  44. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/_head.segment.rsc +1 -1
  45. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/_index.segment.rsc +1 -1
  46. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/_tree.segment.rsc +1 -1
  47. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.html +1 -1
  48. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.rsc +6 -6
  49. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/!KGRhc2hib2FyZCk/cloud/__PAGE__.segment.rsc +1 -1
  50. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/!KGRhc2hib2FyZCk/cloud.segment.rsc +1 -1
  51. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  52. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/_full.segment.rsc +6 -6
  53. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/_head.segment.rsc +1 -1
  54. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/_index.segment.rsc +1 -1
  55. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/_tree.segment.rsc +1 -1
  56. package/dashboard/.next/standalone/dashboard/.next/server/app/index.html +1 -1
  57. package/dashboard/.next/standalone/dashboard/.next/server/app/index.rsc +1 -1
  58. package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  59. package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_full.segment.rsc +1 -1
  60. package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_head.segment.rsc +1 -1
  61. package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_index.segment.rsc +1 -1
  62. package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  63. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.html +1 -1
  64. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.rsc +6 -6
  65. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/!KGRhc2hib2FyZCk/memory/capture/__PAGE__.segment.rsc +1 -1
  66. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/!KGRhc2hib2FyZCk/memory/capture.segment.rsc +1 -1
  67. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  68. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  69. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/_full.segment.rsc +6 -6
  70. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/_head.segment.rsc +1 -1
  71. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/_index.segment.rsc +1 -1
  72. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/_tree.segment.rsc +1 -1
  73. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.html +1 -1
  74. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.rsc +6 -6
  75. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/!KGRhc2hib2FyZCk/memory/graph/__PAGE__.segment.rsc +1 -1
  76. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/!KGRhc2hib2FyZCk/memory/graph.segment.rsc +1 -1
  77. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  78. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  79. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/_full.segment.rsc +6 -6
  80. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/_head.segment.rsc +1 -1
  81. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/_index.segment.rsc +1 -1
  82. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/_tree.segment.rsc +1 -1
  83. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.html +1 -1
  84. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.rsc +6 -6
  85. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/!KGRhc2hib2FyZCk/memory/recall/__PAGE__.segment.rsc +1 -1
  86. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/!KGRhc2hib2FyZCk/memory/recall.segment.rsc +1 -1
  87. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  88. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  89. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/_full.segment.rsc +6 -6
  90. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/_head.segment.rsc +1 -1
  91. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/_index.segment.rsc +1 -1
  92. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/_tree.segment.rsc +1 -1
  93. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.html +1 -1
  94. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.rsc +7 -7
  95. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.segments/!KGRhc2hib2FyZCk/memory/replay/__PAGE__.segment.rsc +2 -2
  96. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.segments/!KGRhc2hib2FyZCk/memory/replay.segment.rsc +1 -1
  97. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  98. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  99. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.segments/_full.segment.rsc +7 -7
  100. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.segments/_head.segment.rsc +1 -1
  101. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.segments/_index.segment.rsc +1 -1
  102. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.segments/_tree.segment.rsc +1 -1
  103. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.html +1 -1
  104. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.rsc +6 -6
  105. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/!KGRhc2hib2FyZCk/memory/review/__PAGE__.segment.rsc +1 -1
  106. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/!KGRhc2hib2FyZCk/memory/review.segment.rsc +1 -1
  107. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  108. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  109. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/_full.segment.rsc +6 -6
  110. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/_head.segment.rsc +1 -1
  111. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/_index.segment.rsc +1 -1
  112. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/_tree.segment.rsc +1 -1
  113. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.html +1 -1
  114. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.rsc +6 -6
  115. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/!KGRhc2hib2FyZCk/memory/timeline/__PAGE__.segment.rsc +1 -1
  116. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/!KGRhc2hib2FyZCk/memory/timeline.segment.rsc +1 -1
  117. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  118. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  119. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/_full.segment.rsc +6 -6
  120. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/_head.segment.rsc +1 -1
  121. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/_index.segment.rsc +1 -1
  122. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/_tree.segment.rsc +1 -1
  123. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.html +1 -1
  124. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.rsc +7 -7
  125. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/!KGRhc2hib2FyZCk/memory/__PAGE__.segment.rsc +2 -2
  126. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  127. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  128. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/_full.segment.rsc +7 -7
  129. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/_head.segment.rsc +1 -1
  130. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/_index.segment.rsc +1 -1
  131. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/_tree.segment.rsc +1 -1
  132. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.html +1 -1
  133. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.rsc +7 -7
  134. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/!KGRhc2hib2FyZCk/overview/__PAGE__.segment.rsc +2 -2
  135. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/!KGRhc2hib2FyZCk/overview.segment.rsc +1 -1
  136. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  137. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/_full.segment.rsc +7 -7
  138. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/_head.segment.rsc +1 -1
  139. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/_index.segment.rsc +1 -1
  140. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/_tree.segment.rsc +1 -1
  141. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.html +1 -1
  142. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.rsc +6 -6
  143. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/!KGRhc2hib2FyZCk/protection/audit/__PAGE__.segment.rsc +1 -1
  144. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/!KGRhc2hib2FyZCk/protection/audit.segment.rsc +1 -1
  145. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/!KGRhc2hib2FyZCk/protection.segment.rsc +1 -1
  146. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  147. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/_full.segment.rsc +6 -6
  148. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/_head.segment.rsc +1 -1
  149. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/_index.segment.rsc +1 -1
  150. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/_tree.segment.rsc +1 -1
  151. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.html +1 -1
  152. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.rsc +6 -6
  153. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/!KGRhc2hib2FyZCk/protection/intercepts/__PAGE__.segment.rsc +1 -1
  154. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/!KGRhc2hib2FyZCk/protection/intercepts.segment.rsc +1 -1
  155. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/!KGRhc2hib2FyZCk/protection.segment.rsc +1 -1
  156. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  157. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/_full.segment.rsc +6 -6
  158. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/_head.segment.rsc +1 -1
  159. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/_index.segment.rsc +1 -1
  160. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/_tree.segment.rsc +1 -1
  161. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.html +1 -1
  162. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.rsc +6 -6
  163. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/!KGRhc2hib2FyZCk/protection/iron-dome/__PAGE__.segment.rsc +1 -1
  164. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/!KGRhc2hib2FyZCk/protection/iron-dome.segment.rsc +1 -1
  165. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/!KGRhc2hib2FyZCk/protection.segment.rsc +1 -1
  166. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  167. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/_full.segment.rsc +6 -6
  168. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/_head.segment.rsc +1 -1
  169. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/_index.segment.rsc +1 -1
  170. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/_tree.segment.rsc +1 -1
  171. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.html +1 -1
  172. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.rsc +6 -6
  173. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/!KGRhc2hib2FyZCk/protection/policies/__PAGE__.segment.rsc +1 -1
  174. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/!KGRhc2hib2FyZCk/protection/policies.segment.rsc +1 -1
  175. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/!KGRhc2hib2FyZCk/protection.segment.rsc +1 -1
  176. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  177. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/_full.segment.rsc +6 -6
  178. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/_head.segment.rsc +1 -1
  179. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/_index.segment.rsc +1 -1
  180. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/_tree.segment.rsc +1 -1
  181. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.html +1 -1
  182. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.rsc +6 -6
  183. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/!KGRhc2hib2FyZCk/protection/quarantine/__PAGE__.segment.rsc +1 -1
  184. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/!KGRhc2hib2FyZCk/protection/quarantine.segment.rsc +1 -1
  185. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/!KGRhc2hib2FyZCk/protection.segment.rsc +1 -1
  186. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  187. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/_full.segment.rsc +6 -6
  188. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/_head.segment.rsc +1 -1
  189. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/_index.segment.rsc +1 -1
  190. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/_tree.segment.rsc +1 -1
  191. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.html +1 -1
  192. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.rsc +7 -7
  193. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/!KGRhc2hib2FyZCk/protection/__PAGE__.segment.rsc +2 -2
  194. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/!KGRhc2hib2FyZCk/protection.segment.rsc +1 -1
  195. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  196. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/_full.segment.rsc +7 -7
  197. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/_head.segment.rsc +1 -1
  198. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/_index.segment.rsc +1 -1
  199. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/_tree.segment.rsc +1 -1
  200. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.html +1 -1
  201. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.rsc +7 -7
  202. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/!KGRhc2hib2FyZCk/settings/__PAGE__.segment.rsc +2 -2
  203. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/!KGRhc2hib2FyZCk/settings.segment.rsc +1 -1
  204. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  205. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/_full.segment.rsc +7 -7
  206. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  207. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/_index.segment.rsc +1 -1
  208. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/_tree.segment.rsc +1 -1
  209. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.html +1 -1
  210. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.rsc +6 -6
  211. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/!KGRhc2hib2FyZCk/supply-chain/xray/__PAGE__.segment.rsc +1 -1
  212. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/!KGRhc2hib2FyZCk/supply-chain/xray.segment.rsc +1 -1
  213. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/!KGRhc2hib2FyZCk/supply-chain.segment.rsc +1 -1
  214. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  215. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/_full.segment.rsc +6 -6
  216. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/_head.segment.rsc +1 -1
  217. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/_index.segment.rsc +1 -1
  218. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/_tree.segment.rsc +1 -1
  219. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.html +1 -1
  220. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.rsc +6 -6
  221. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/!KGRhc2hib2FyZCk/supply-chain/__PAGE__.segment.rsc +1 -1
  222. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/!KGRhc2hib2FyZCk/supply-chain.segment.rsc +1 -1
  223. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  224. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/_full.segment.rsc +6 -6
  225. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/_head.segment.rsc +1 -1
  226. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/_index.segment.rsc +1 -1
  227. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/_tree.segment.rsc +1 -1
  228. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.html +1 -1
  229. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.rsc +7 -7
  230. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/!KGRhc2hib2FyZCk/xray/__PAGE__.segment.rsc +2 -2
  231. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/!KGRhc2hib2FyZCk/xray.segment.rsc +1 -1
  232. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -6
  233. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/_full.segment.rsc +7 -7
  234. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/_head.segment.rsc +1 -1
  235. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/_index.segment.rsc +1 -1
  236. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/_tree.segment.rsc +1 -1
  237. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_src_48aa48e3._.js +1 -1
  238. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_src_components_settings_SettingsView_tsx_16dc83a7._.js +1 -1
  239. package/dashboard/.next/standalone/dashboard/.next/server/pages/404.html +1 -1
  240. package/dashboard/.next/standalone/dashboard/.next/server/pages/500.html +2 -2
  241. package/dashboard/.next/standalone/dashboard/.next/static/chunks/15bd004834558e9c.js +1 -0
  242. package/dashboard/.next/standalone/dashboard/.next/static/chunks/a1f59c7a0024ffd0.js +1 -0
  243. package/dashboard/.next/standalone/dashboard/public/shieldcortex-mark.png +0 -0
  244. package/package.json +2 -2
  245. package/dashboard/.next/standalone/dashboard/.next/static/chunks/0fc21036dad1e8db.js +0 -1
  246. package/dashboard/.next/standalone/dashboard/.next/static/chunks/c02a69e6a6678ecb.js +0 -1
  247. /package/dashboard/.next/standalone/dashboard/.next/static/{oS9V6UFJZvHfdNq-NKcW4 → gXB4FmSlsR5waRCUJNb4u}/_buildManifest.js +0 -0
  248. /package/dashboard/.next/standalone/dashboard/.next/static/{oS9V6UFJZvHfdNq-NKcW4 → gXB4FmSlsR5waRCUJNb4u}/_clientMiddlewareManifest.json +0 -0
  249. /package/dashboard/.next/standalone/dashboard/.next/static/{oS9V6UFJZvHfdNq-NKcW4 → gXB4FmSlsR5waRCUJNb4u}/_ssgManifest.js +0 -0
@@ -2,4 +2,4 @@
2
2
  :HL["/_next/static/chunks/bce2cf2eff0722f4.css","style"]
3
3
  :HL["/_next/static/media/797e433ab948586e-s.p.29207c2f.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
4
4
  :HL["/_next/static/media/caa3a2e1cccd8315-s.p.3b6cae6d.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
5
- 0:{"buildId":"oS9V6UFJZvHfdNq-NKcW4","tree":{"name":"","paramType":null,"paramKey":"","hasRuntimePrefetch":false,"slots":{"children":{"name":"(dashboard)","paramType":null,"paramKey":"(dashboard)","hasRuntimePrefetch":false,"slots":{"children":{"name":"xray","paramType":null,"paramKey":"xray","hasRuntimePrefetch":false,"slots":{"children":{"name":"__PAGE__","paramType":null,"paramKey":"__PAGE__","hasRuntimePrefetch":false,"slots":null,"isRootLayout":false}},"isRootLayout":false}},"isRootLayout":false}},"isRootLayout":true},"staleTime":300}
5
+ 0:{"buildId":"gXB4FmSlsR5waRCUJNb4u","tree":{"name":"","paramType":null,"paramKey":"","hasRuntimePrefetch":false,"slots":{"children":{"name":"(dashboard)","paramType":null,"paramKey":"(dashboard)","hasRuntimePrefetch":false,"slots":{"children":{"name":"xray","paramType":null,"paramKey":"xray","hasRuntimePrefetch":false,"slots":{"children":{"name":"__PAGE__","paramType":null,"paramKey":"__PAGE__","hasRuntimePrefetch":false,"slots":null,"isRootLayout":false}},"isRootLayout":false}},"isRootLayout":false}},"isRootLayout":true},"staleTime":300}
@@ -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(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])}];
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=28,className:c=""}){return(0,b.jsx)("img",{src:"/shieldcortex-mark.png",alt:"ShieldCortex",height:a,className:c,style:{height:a,width:"auto"}})}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:44,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:36,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